X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=Makefile;h=f3d0577ea72e2c2d4d7ab43995f947b4468c5347;hb=296784077e2a958f5bd3f0c3fc51b4b0a6388f15;hp=526c5670bb5cf0451174fc29da469dc5fbb33233;hpb=0b3dc55f7868bb883d09a777f8674c6575cc1ee9;p=c128-kasse diff --git a/Makefile b/Makefile index 526c567..f3d0577 100644 --- a/Makefile +++ b/Makefile @@ -1,49 +1,52 @@ CC=cc65 AS=ca65 LD=cl65 -INCLUDES:=$(wildcard include/*.h) +INCLUDES:=$(wildcard include/*.h) include/version.h GV:=$(shell git describe --tags --always) +CFLAGS= -I include -t c128 -g -CFLAGS += -DGV=\"${GV}\" +.PHONY: include/version.h clean dist-clean format -%.o: %.c ${INCLUDES} - ${CC} ${CFLAGS} -O -I include -t c128 $< -o /dev/stdout | ${AS} -I include -t c128 /dev/stdin -o $@ +all: kasse itemz cat -kasse: src/config.o src/kasse.o src/general.o src/credit_manager.o src/c128time.o src/print.o - ${LD} -t c128 $^ -o $@ +build/%.o: src/%.c ${INCLUDES} + ${CC} ${CFLAGS} -O $< -o build/$(addsuffix .s,$(shell basename $< .c)) + ${AS} ${CFLAGS} build/$(addsuffix .s,$(shell basename $< .c)) -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 $@ +include/version.h: + mkdir -p build + echo "#define GV \"${GV}\"" > $@ -cat: src/general.o src/cat.o - ${LD} -t c128 $^ -o $@ +kasse: build/config.o build/kasse.o build/general.o build/credit_manager.o build/c128time.o build/print.o + ${LD} -Ln $@.lbl -t c128 $^ -o $@ -all: kasse itemz +itemz: build/config.o build/itemz.o build/general.o build/credit_manager.o build/c128time.o build/print.o + ${LD} -Ln $@.lbl -t c128 $^ -o $@ + +cat: build/general.o build/cat.o + ${LD} -Ln $@.lbl -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 + c1541 -format "${GV}",KA d64 kasse.d64 + c1541 -attach kasse.d64 -write kasse + c1541 -attach kasse.d64 -write itemz + [ -e state ] && c1541 -attach kasse.d64 -write state || exit 0 + [ -e items ] && c1541 -attach kasse.d64 -write items || exit 0 + +test: build/config.o test/test.o build/general.o + cl65 -t c128 $^ -o build/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 -format "test",TE d64 test.d64 c1541 -attach test.d64 -write test || exit 0 - c1541 -attach test.d64 -write state || exit 0 + c1541 -attach test.d64 -write state || exit 0 c1541 -attach test.d64 -write items || exit 0 clean: - rm -rf src/*.o src/*.s test/*.o test/*.s - + rm -rf build/*.o build/*.s test/*.o test/*.s + dist-clean: clean - rm kasse itemz kasse.d64 + rm -f kasse kasse.lbl itemz itemz.lbl cat cat.lbl kasse.d64 + +format: + clang-format-3.9 -i **/*.[ch]