mirror of
https://github.com/cc65/cc65.git
synced 2024-12-25 17:29:50 +00:00
764f07e56b
git-svn-id: svn://svn.cc65.org/cc65/trunk@5517 b7a2c559-68d2-44c3-8de9-860c34a00d81
89 lines
1.8 KiB
Makefile
89 lines
1.8 KiB
Makefile
#
|
|
# makefile for CC65 runtime library
|
|
#
|
|
|
|
.SUFFIXES: .o .s .c
|
|
|
|
#--------------------------------------------------------------------------
|
|
# Programs and flags
|
|
|
|
SYS = geos-apple2
|
|
|
|
AS = ../../src/ca65/ca65
|
|
CC = ../../src/cc65/cc65
|
|
LD = ../../src/ld65/ld65
|
|
|
|
AFLAGS = -t $(SYS) --forget-inc-paths -I. -I../geos-common -I../../asminc
|
|
CFLAGS = -Osir -g -T -t $(SYS) --forget-inc-paths -I . -I ../../include
|
|
|
|
#--------------------------------------------------------------------------
|
|
# Rules
|
|
|
|
%.o: %.c
|
|
@$(CC) -o $(notdir $(*).s) $(CFLAGS) $<
|
|
@$(AS) -o $@ $(AFLAGS) $(*).s
|
|
|
|
%.o: %.s
|
|
@$(AS) -g -o $@ $(AFLAGS) $<
|
|
|
|
%.emd: %.o ../runtime/zeropage.o
|
|
@$(LD) -o $@ -t module $^
|
|
|
|
%.joy: %.o ../runtime/zeropage.o
|
|
@$(LD) -o $@ -t module $^
|
|
|
|
%.mou: %.o ../runtime/zeropage.o
|
|
@$(LD) -o $@ -t module $^
|
|
|
|
%.ser: %.o ../runtime/zeropage.o
|
|
@$(LD) -o $@ -t module $^
|
|
|
|
%.tgi: %.o ../runtime/zeropage.o
|
|
@$(LD) -o $@ -t module $^
|
|
|
|
#--------------------------------------------------------------------------
|
|
# Object files
|
|
|
|
S_OBJS= ctype.o
|
|
|
|
#--------------------------------------------------------------------------
|
|
# Directories
|
|
|
|
DIRS = disk
|
|
|
|
#--------------------------------------------------------------------------
|
|
# Drivers
|
|
|
|
EMDS =
|
|
|
|
JOYS =
|
|
|
|
MOUS =
|
|
|
|
SERS =
|
|
|
|
TGIS =
|
|
|
|
#--------------------------------------------------------------------------
|
|
# Directives
|
|
|
|
include $(addsuffix /Makefile, $(DIRS))
|
|
vpath %.c $(DIRS) ../apple2
|
|
vpath %.s $(DIRS) ../apple2
|
|
|
|
#--------------------------------------------------------------------------
|
|
# Targets
|
|
|
|
.PHONY: all clean zap
|
|
|
|
all: $(C_OBJS) $(S_OBJS) $(EMDS) $(JOYS) $(MOUS) $(SERS) $(TGIS)
|
|
|
|
../runtime/zeropage.o:
|
|
$(MAKE) -C $(dir $@) $(notdir $@)
|
|
|
|
clean:
|
|
@$(RM) $(C_OBJS:.o=.s) $(C_OBJS) $(S_OBJS) $(EMDS:.emd=.o) $(JOYS:.joy=.o) $(MOUS:.mou=.o) $(SERS:.ser=.o) $(TGIS:.tgi=.o)
|
|
|
|
zap: clean
|
|
@$(RM) $(EMDS) $(JOYS) $(MOUS) $(SERS) $(TGIS)
|