-
ifneq ($(shell echo),)
CMD_EXE = 1
endif
GEOS = geos-apple \
geos-cbm
-TARGETS = apple2 \
- apple2enh \
- atari \
- atarixl \
- atari5200 \
- atmos \
- $(CBMS) \
- $(GEOS) \
- gamate \
- lynx \
- nes \
- osic1p \
- pce \
- sim6502 \
- sim65c02 \
- supervision
+TARGETS = apple2 \
+ apple2enh \
+ atari \
+ atarixl \
+ atari2600 \
+ atari5200 \
+ atmos \
+ creativision \
+ $(CBMS) \
+ $(GEOS) \
+ gamate \
+ lynx \
+ nes \
+ none \
+ osic1p \
+ pce \
+ sim6502 \
+ sim65c02 \
+ supervision \
+ telestrat
DRVTYPES = emd \
joy \
ser \
tgi
-OUTPUTDIRS := lib \
- asminc \
- cfg \
- include \
- $(subst ../,,$(filter-out $(wildcard ../include/*.*),$(wildcard ../include/*)))\
- $(subst ../,,$(wildcard ../target/*/drv/*))\
- $(subst ../,,$(wildcard ../target/*/util))\
+OUTPUTDIRS := lib \
+ asminc \
+ cfg \
+ include \
+ $(subst ../,,$(filter-out $(wildcard ../include/*.*),$(wildcard ../include/*))) \
+ $(subst ../,,$(wildcard ../target/*/drv/*)) \
+ $(subst ../,,$(wildcard ../target/*/util))
.PHONY: all mostlyclean clean install zip lib $(TARGETS)
ifndef TARGET
-datadir = $(prefix)/share/cc65
+datadir = $(PREFIX)/share/cc65
all lib: $(TARGETS)
define INSTALL_recipe
-$(if $(prefix),,$(error variable `prefix' must be set))
+$(if $(PREFIX),,$(error variable `PREFIX' must be set))
$(INSTALL) -d $(DESTDIR)$(datadir)/$(dir)
$(INSTALL) -m0644 ../$(dir)/*.* $(DESTDIR)$(datadir)/$(dir)
EXTRA_SRCPAT = $(SRCDIR)/extra/%.s
EXTRA_OBJPAT = ../lib/$(TARGET)-%.o
EXTRA_OBJS := $(patsubst $(EXTRA_SRCPAT),$(EXTRA_OBJPAT),$(wildcard $(SRCDIR)/extra/*.s))
+DEPS += $(EXTRA_OBJS:../lib/%.o=../libwrk/$(TARGET)/%.d)
ZPOBJ = ../libwrk/$(TARGET)/zeropage.o
ifeq ($(TARGET),$(filter $(TARGET),$(EXTZP)))
../libwrk/$(TARGET)/%.o: %.c | ../libwrk/$(TARGET)
$(COMPILE_recipe)
-$(EXTRA_OBJPAT): $(EXTRA_SRCPAT) | ../lib
+$(EXTRA_OBJPAT): $(EXTRA_SRCPAT) | ../libwrk/$(TARGET) ../lib
@echo $(TARGET) - $(<F)
- @$(CA65) -t $(TARGET) $(CA65FLAGS) -o $@ $<
+ @$(CA65) -t $(TARGET) $(CA65FLAGS) --create-dep $(@:../lib/%.o=../libwrk/$(TARGET)/%.d) -o $@ $<
../lib/$(TARGET).lib: $(OBJS) | ../lib
$(AR65) a $@ $?