summaryrefslogtreecommitdiffstats
path: root/Makefile
blob: 8f46679b0ea936af20a6b74d3634d19763c197b3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
FILES = Makefile README ports.asm chall.asm asm.c asm.h tpu.c tpu.h util.c util.h \
		tis256.c tis256-gui.c tis256-curses.c

all: release/tis256.zip

clean:
	rm -rf release/tis256 release/tis256.zip
	rm -rf src/build

release:
	mkdir -p $@

release/tis256:
	mkdir -p $@

src/build/chall.asm: src/in/* src/*
	make -C src build/chall.asm

release/tis256/ports.asm: tis256/test/ports.asm | release/tis256
	cp $< $@

release/tis256/chall.asm: src/build/chall.asm | release/tis256
	cp $< $@

release/tis256/README: README | release/tis256
	cp $< $@

release/tis256/Makefile: release/Makefile | release/tis256
	cp $< $@

tis256/.git:
	git submodule tis256 update --init --recursive

release/tis256/%.c: tis256/%.c | release/tis256
	cp $< $@

release/tis256/%.h: tis256/%.h | release/tis256
	cp $< $@

release/tis256.zip: $(addprefix release/tis256/, $(FILES)) | release
	rm -f $@
	cd release && zip -r tis256.zip $(addprefix tis256/, $(FILES))

.PHONY: all clean