]> git.sur5r.net Git - c128-kasse/blobdiff - Makefile
makefile: use 'all' target by default
[c128-kasse] / Makefile
index e0cbcd5c1ac3462f9115e9e14ca8a162fca37d27..cea7061a8957f87db5a4572b3c59419317a0a6dd 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,13 +1,48 @@
-%.o: %.c
-       cc65 -t c128 $<
-       ca65 -t c128 $$(basename $< .c).s
+CC=cc65
+AS=ca65
+LD=cl65
+INCLUDES:=$(wildcard include/*.h)
+GV:=$(shell git describe --tags --always)
 
-all: config.o kasse.o general.o credit_manager.o
-       cl65 -t c128 *.o -o kasse
+CFLAGS += -DGV=\"${GV}\"
 
-test: config.o test.o
-       cl65 -t c128 config.o test.o -o test
+%.o: %.c ${INCLUDES}
+       ${CC} ${CFLAGS} -O -I include -t c128 $< -o /dev/stdout | ${AS} -I include -t c128 /dev/stdin -o $@
+all: kasse itemz
+
+kasse: src/config.o src/kasse.o src/general.o src/credit_manager.o src/c128time.o src/print.o
+       ${LD} -t c128 $^ -o $@
+
+itemz: src/config.o src/itemz.o src/general.o src/credit_manager.o src/c128time.o src/print.o
+       ${LD} -t c128 $^ -o $@
+
+cat: src/general.o src/cat.o
+       ${LD} -t c128 $^ -o $@
+
+package: all
+       cp images/kasse.d64 .
+       c1541 -attach kasse.d64 -delete state || exit 0 
+       c1541 -attach kasse.d64 -delete items || exit 0
+       c1541 -attach kasse.d64 -delete kasse || exit 0
+       c1541 -attach kasse.d64 -delete itemz || exit 0
+       c1541 -attach kasse.d64 -write kasse || exit 0
+       c1541 -attach kasse.d64 -write itemz || exit 0
+#      c1541 -attach kasse.d64 -write state || exit 0 
+#      c1541 -attach kasse.d64 -write items || exit 0
+
+test: src/config.o test/test.o src/general.o
+       cl65 -t c128 src/config.o test/test.o src/general.o -o test
+
+test-package: test
+       c1541 -attach test.d64 -delete state || exit 0 
+       c1541 -attach test.d64 -delete items || exit 0
+       c1541 -attach test.d64 -delete test || exit 0
+       c1541 -attach test.d64 -write test || exit 0
+       c1541 -attach test.d64 -write state || exit 0 
+       c1541 -attach test.d64 -write items || exit 0
 
 clean:
-       rm -rf *.o *.s
+       rm -rf src/*.o src/*.s test/*.o test/*.s
        
+dist-clean: clean
+       rm kasse itemz kasse.d64