mirror of
https://github.com/cc65/cc65.git
synced 2024-08-18 10:29:06 +00:00
However now I understand that CBM GEOS does _not_ use PETSCII so the CBM character specification table doesn't make sense at all. After all this is very plausible because GEOS wants to enable the user to share his files across GEOS variants - so we can share the character specification table too. git-svn-id: svn://svn.cc65.org/cc65/trunk@5527 b7a2c559-68d2-44c3-8de9-860c34a00d81
88 lines
1.8 KiB
Makefile
88 lines
1.8 KiB
Makefile
#
|
|
# makefile for CC65 runtime library
|
|
#
|
|
|
|
.SUFFIXES: .o .s .c
|
|
|
|
#--------------------------------------------------------------------------
|
|
# Programs and flags
|
|
|
|
SYS = geos-cbm
|
|
|
|
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 $^
|
|
|
|
#--------------------------------------------------------------------------
|
|
# Directories
|
|
|
|
DIRS = disk \
|
|
drivers \
|
|
file \
|
|
memory \
|
|
system
|
|
|
|
#--------------------------------------------------------------------------
|
|
# Drivers
|
|
|
|
EMDS = geos-vdc.emd
|
|
|
|
JOYS = geos-stdjoy.joy
|
|
|
|
MOUS =
|
|
|
|
SERS =
|
|
|
|
TGIS = geos-tgi.tgi
|
|
|
|
#--------------------------------------------------------------------------
|
|
# Directives
|
|
|
|
include $(addsuffix /Makefile, $(DIRS))
|
|
vpath %.c $(DIRS)
|
|
vpath %.s $(DIRS)
|
|
|
|
#--------------------------------------------------------------------------
|
|
# 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)
|