2017-12-16 05:35:49 +00:00
|
|
|
|
|
|
|
CC65 = ~/dev/cc65/bin
|
|
|
|
CAFLAGS = --target apple2enh --list-bytes 0
|
2018-01-04 21:02:58 +00:00
|
|
|
CCFLAGS = --config asm.cfg
|
2017-12-16 05:35:49 +00:00
|
|
|
|
2018-02-21 16:04:32 +00:00
|
|
|
OUTDIR = out
|
|
|
|
|
|
|
|
HEADERS = $(wildcard ../*.inc) $(wildcard ../inc/*.inc) $(wildcard *.inc)
|
|
|
|
|
|
|
|
SEGMENTS = loader mgtk desktop invoker \
|
2018-02-24 04:54:37 +00:00
|
|
|
ovl1 ovl1a ovl2 ovl3 ovl5 ovl6 ovl7
|
2018-02-21 16:04:32 +00:00
|
|
|
|
2018-02-22 05:18:46 +00:00
|
|
|
TARGETS = $(patsubst %,$(OUTDIR)/%.built,$(SEGMENTS))
|
2017-12-16 05:35:49 +00:00
|
|
|
|
|
|
|
.PHONY: clean all
|
2018-02-21 16:04:32 +00:00
|
|
|
all: $(OUTDIR) $(TARGETS)
|
2017-12-16 05:35:49 +00:00
|
|
|
|
2018-02-21 16:04:32 +00:00
|
|
|
$(OUTDIR):
|
|
|
|
mkdir -p $(OUTDIR)
|
2017-12-16 05:35:49 +00:00
|
|
|
|
|
|
|
clean:
|
2018-02-21 16:04:32 +00:00
|
|
|
rm -f $(OUTDIR)/*.o
|
2018-02-22 05:18:46 +00:00
|
|
|
rm -f $(OUTDIR)/*.list
|
|
|
|
rm -f $(OUTDIR)/*.built
|
|
|
|
rm -f $(OUTDIR)/*.\$$F1
|
|
|
|
rm -f $(OUTDIR)/*.sys
|
2017-12-16 05:35:49 +00:00
|
|
|
|
2018-02-21 16:04:32 +00:00
|
|
|
$(OUTDIR)/%.o: %.s $(HEADERS)
|
2017-12-16 05:35:49 +00:00
|
|
|
$(CC65)/ca65 $(CAFLAGS) --listing $(basename $@).list -o $@ $<
|
|
|
|
|
2018-02-22 05:18:46 +00:00
|
|
|
# Built DeskTop segments
|
|
|
|
$(OUTDIR)/%.built: $(OUTDIR)/%.o asm.cfg
|
|
|
|
$(CC65)/ld65 $(CCFLAGS) -o '$@' $<
|
|
|
|
|
|
|
|
# Desk Accessories .$F1
|
|
|
|
$(OUTDIR)/%.$$F1: $(OUTDIR)/%.o
|
|
|
|
$(CC65)/ld65 $(CCFLAGS) -o '$@' $<
|
|
|
|
xattr -w prodos.AuxType '@' '$@'
|
|
|
|
|
|
|
|
# System Files .SYS
|
|
|
|
$(OUTDIR)/%.SYS: $(OUTDIR)/%.o
|
|
|
|
$(CC65)/ld65 $(CCFLAGS) -o '$@' $<
|
|
|
|
xattr -wx prodos.AuxType '00 20' $@
|