X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=Makefile;h=bf11dd85cc130a6a4234aa4aacffd2f56aefbd14;hb=14234f8d4e52ad1c33b1bc804d9d08c8abbce30d;hp=cea7061a8957f87db5a4572b3c59419317a0a6dd;hpb=82c83c4fc13017a3896c104c4da75cd70d5a38bc;p=c128-kasse diff --git a/Makefile b/Makefile index cea7061..bf11dd8 100644 --- a/Makefile +++ b/Makefile @@ -1,48 +1,71 @@ CC=cc65 AS=ca65 LD=cl65 -INCLUDES:=$(wildcard include/*.h) +INCLUDES:=$(wildcard include/*.h) include/version.h include/charset_umlauts.h GV:=$(shell git describe --tags --always) +CFLAGS= -I include -t c128 -g -CFLAGS += -DGV=\"${GV}\" +.PHONY: include/version.h include/charset_umlauts.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 +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 $@ +build/%.o: src/%.s + ${AS} ${CFLAGS} $< -o $@ -cat: src/general.o src/cat.o - ${LD} -t c128 $^ -o $@ +build/%.o: test/%.c ${INCLUDES} + ${CC} ${CFLAGS} -O $< -o build/$(addsuffix .s,$(shell basename $< .c)) + ${AS} ${CFLAGS} build/$(addsuffix .s,$(shell basename $< .c)) -o $@ + +build/%.o: test/%.s + ${AS} ${CFLAGS} $< -o $@ + +include/version.h: + mkdir -p build + echo "#define GV \"${GV}\"" > $@ + +include/charset_umlauts.h: + ./util/mkfont assets/umlauts.pbm chars_umlauts > $@ + +kasse: build/config.o build/kasse.o build/general.o build/credit_manager.o build/c128time.o build/print.o build/vdc_patch_charset.o build/vdc_util.o build/globals.o + ${LD} -Ln $@.lbl -t c128 $^ -o $@ + +itemz: build/config.o build/itemz.o build/general.o build/credit_manager.o build/c128time.o build/print.o build/globals.o + ${LD} -Ln $@.lbl -t c128 $^ -o $@ + +cat: build/general.o build/cat.o build/config.o build/print.o build/globals.o + ${LD} -Ln $@.lbl -t c128 $^ -o $@ + +charmap: build/print_charmap.o build/vdc_util.o build/vdc_patch_charset.o + ${LD} -Ln $@.lbl -t c128 $^ -o $@ + +ascii: build/print_ascii.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 d71 kasse.d71 + c1541 -attach kasse.d71 -write kasse + c1541 -attach kasse.d71 -write itemz + [ -e state ] && c1541 -attach kasse.d71 -write state || exit 0 + [ -e items ] && c1541 -attach kasse.d71 -write items || exit 0 + +test: build/config.o build/test.o build/general.o build/print.o build/globals.o + ${LD} -Ln $@.lbl -t c128 $^ -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 + c1541 -format "test",TE d71 test.d71 + c1541 -attach test.d71 -write test/test || exit 0 + c1541 -attach test.d71 -write state || exit 0 + c1541 -attach test.d71 -write items || exit 0 clean: - rm -rf src/*.o src/*.s test/*.o test/*.s - + rm -rf build/*.o build/*.s test/test + dist-clean: clean - rm kasse itemz kasse.d64 + rm -f kasse kasse.lbl itemz itemz.lbl cat cat.lbl kasse.d71 + +format: + clang-format-3.9 -i **/*.[ch]