cc65/samples/disasm/Makefile

60 lines
1.2 KiB
Makefile

# Sample makefile using a preprocessor against info files
# and the --sync-lines option
# Just the usual way to find out if we're
# using cmd.exe to execute make rules.
ifneq ($(shell echo),)
CMD_EXE = 1
endif
ifdef CMD_EXE
NULLDEV = nul:
DEL = -del /f
RMDIR = rmdir /s /q
else
NULLDEV = /dev/null
DEL = $(RM)
RMDIR = $(RM) -r
endif
ifdef CC65_HOME
AS = $(CC65_HOME)/bin/ca65
CC = $(CC65_HOME)/bin/cc65
CL = $(CC65_HOME)/bin/cl65
LD = $(CC65_HOME)/bin/ld65
DA = $(CC65_HOME)/bin/da65
else
AS := $(if $(wildcard ../../bin/ca65*),../../bin/ca65,ca65)
CC := $(if $(wildcard ../../bin/cc65*),../../bin/cc65,cc65)
CL := $(if $(wildcard ../../bin/cl65*),../../bin/cl65,cl65)
LD := $(if $(wildcard ../../bin/ld65*),../../bin/ld65,ld65)
DA := $(if $(wildcard ../../bin/da65*),../../bin/da65,da65)
endif
CPP = cpp
#CPPFLAGS = -DTEST_ERROR
ASMS = fixed.s bank0.s bank1.s
DAIS = fixed.dai bank0.dai bank1.dai
.SUFFIXES: .da .dai .s
samples: image.bin $(ASMS)
$(DAIS): fixed.da
.da.dai:
$(CPP) -o $@ $(CPPFLAGS) $<
.dai.s:
$(DA) --sync-lines -o $@ -i $< image.bin
image.bin: image.s image.cfg
$(CL) -t none -C image.cfg -o image.bin image.s
clean:
@$(DEL) $(ASMS) 2>$(NULLDEV)
@$(DEL) $(DAIS) 2>$(NULLDEV)
@$(DEL) image.bin 2>$(NULLDEV)