44 lines
1.8 KiB
Makefile
44 lines
1.8 KiB
Makefile
# Equi reference implementation build project
|
|
|
|
PROJNAME=equi
|
|
CFILES=equi.c
|
|
PBTDIR=platform-build-tools
|
|
PERSFILE=PERS.DAT
|
|
# Apple II target configuration
|
|
A2FLAGS=-DSTACK_SIZE=256 -DLIT_STACK_SIZE=32 -DGPD_AREA_SIZE=3072 -DCMD_BUF_SIZE=20000 -DCLT_ENTRIES_MAX=512 -DEQUI_TASKS_MAX=8
|
|
# POSIX desktop target configuration
|
|
PDFLAGS=-DSTACK_SIZE=256 -DLIT_STACK_SIZE=32 -DGPD_AREA_SIZE=3072 -DCMD_BUF_SIZE=20000 -DCLT_ENTRIES_MAX=512 -DEQUI_TASKS_MAX=8
|
|
# Common flags
|
|
DFLAGS=-DPERSIST_FILE="\"$(PERSFILE)\""
|
|
|
|
desktopcc: perscopy
|
|
cc -std=c89 -Os -o $(PROJNAME) $(CFILES) $(PDFLAGS) $(DFLAGS)
|
|
# strip $(PROJNAME)
|
|
|
|
tcc: perscopy
|
|
tcc -std=c89 -o $(PROJNAME) $(CFILES) $(PDFLAGS) $(DFLAGS)
|
|
|
|
apple2-build:
|
|
cl65 --standard c89 -O -Os -t apple2 -C apple2-system.cfg -o $(PROJNAME).apple2 $(CFILES) $(A2FLAGS) $(DFLAGS)
|
|
|
|
apple2: apple2-build
|
|
cp $(PBTDIR)/apple2/tpl.dsk $(PROJNAME).dsk
|
|
java -jar $(PBTDIR)/apple2/ac.jar -p $(PROJNAME).dsk $(PROJNAME).system sys < $$(cl65 --print-target-path)/apple2/util/loader.system
|
|
java -jar $(PBTDIR)/apple2/ac.jar -as $(PROJNAME).dsk $(PROJNAME) bin < $(PROJNAME).apple2
|
|
java -jar $(PBTDIR)/apple2/ac.jar -dos $(PROJNAME).dsk $(PERSFILE) bin < $(PBTDIR)/$(PERSFILE)
|
|
|
|
apple2enh-build:
|
|
cl65 --standard c89 -O -Os -t apple2enh -C apple2enh-system.cfg -o $(PROJNAME).a2enh $(CFILES) $(A2FLAGS) $(DFLAGS)
|
|
|
|
apple2enh: apple2enh-build
|
|
cp $(PBTDIR)/apple2/tpl.dsk $(PROJNAME)-enh.dsk
|
|
java -jar $(PBTDIR)/apple2/ac.jar -p $(PROJNAME)-enh.dsk $(PROJNAME).system sys < $$(cl65 --print-target-path)/apple2enh/util/loader.system
|
|
java -jar $(PBTDIR)/apple2/ac.jar -as $(PROJNAME)-enh.dsk $(PROJNAME) bin < $(PROJNAME).a2enh
|
|
java -jar $(PBTDIR)/apple2/ac.jar -dos $(PROJNAME)-enh.dsk $(PERSFILE) bin < $(PBTDIR)/$(PERSFILE)
|
|
|
|
perscopy:
|
|
cp $(PBTDIR)/$(PERSFILE) $(PERSFILE)
|
|
|
|
clean:
|
|
rm -f ./$(PROJNAME) $(PERSFILE) *.dsk *.o *.apple2 *.a2enh
|