Replaced whole bunch for Makefiles with a single generic Makefile.
- No complex shell logic. - "Source file shadowing" for all targets via vpath. - Dependency handling. - True incremental build. - Don't write into source directories. - Easy cleanup by just removing 'wrk'.
This commit is contained in:
@@ -1,87 +0,0 @@
|
||||
#
|
||||
# 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)
|
||||
1
libsrc/geos-cbm/Makefile.inc
Normal file
1
libsrc/geos-cbm/Makefile.inc
Normal file
@@ -0,0 +1 @@
|
||||
CFLAGS += -Wa -Igeos-cbm,-Igeos-common
|
||||
@@ -1,29 +0,0 @@
|
||||
#
|
||||
# makefile for CC65 runtime library
|
||||
#
|
||||
|
||||
#--------------------------------------------------------------------------
|
||||
# Object files
|
||||
|
||||
S_OBJS += changediskdevice.o \
|
||||
chkdkgeos.o \
|
||||
dio_cts.o \
|
||||
dio_openclose.o \
|
||||
dio_params.o \
|
||||
dio_qcount.o \
|
||||
dio_qsize.o \
|
||||
dio_read.o \
|
||||
dio_stc.o \
|
||||
dio_write.o \
|
||||
dio_writev.o \
|
||||
enterturbo.o \
|
||||
exitturbo.o \
|
||||
findbambit.o \
|
||||
newdisk.o \
|
||||
purgeturbo.o \
|
||||
readblock.o \
|
||||
readbuff.o \
|
||||
setgeosdisk.o \
|
||||
writeblock.o \
|
||||
writebuff.o \
|
||||
verwriteblock.o
|
||||
@@ -1,10 +0,0 @@
|
||||
#
|
||||
# makefile for CC65 runtime library
|
||||
#
|
||||
|
||||
#--------------------------------------------------------------------------
|
||||
# Object files
|
||||
|
||||
S_OBJS += joy_stddrv.o \
|
||||
tgi_colors.o \
|
||||
tgi_stddrv.o
|
||||
@@ -1,15 +0,0 @@
|
||||
;
|
||||
; Name of the standard joystick driver
|
||||
;
|
||||
; Ullrich von Bassewitz, 2002-12-21
|
||||
;
|
||||
; const char joy_stddrv[];
|
||||
;
|
||||
|
||||
.export _joy_stddrv
|
||||
|
||||
.rodata
|
||||
|
||||
_joy_stddrv:
|
||||
.asciiz "geos-stdjoy.joy"
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
;
|
||||
; Target-specific black & white values, for use by the target-shared TGI kernel
|
||||
;
|
||||
|
||||
.include "tgi-kernel.inc"
|
||||
|
||||
tgi_color_black = $00
|
||||
tgi_color_white = $01
|
||||
@@ -1,14 +0,0 @@
|
||||
;
|
||||
; Name of the standard tgi driver
|
||||
;
|
||||
; Oliver Schmidt, 2011-05-02
|
||||
;
|
||||
; const char tgi_stddrv[];
|
||||
;
|
||||
|
||||
.export _tgi_stddrv
|
||||
|
||||
.rodata
|
||||
|
||||
_tgi_stddrv:
|
||||
.asciiz "geos-tgi.tgi"
|
||||
@@ -1,8 +0,0 @@
|
||||
#
|
||||
# makefile for CC65 runtime library
|
||||
#
|
||||
|
||||
#--------------------------------------------------------------------------
|
||||
# Object files
|
||||
|
||||
S_OBJS += followchain.o
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# makefile for CC65 runtime library
|
||||
#
|
||||
|
||||
#--------------------------------------------------------------------------
|
||||
# Object files
|
||||
|
||||
S_OBJS += fetchram.o \
|
||||
reuregs.o \
|
||||
stashram.o \
|
||||
swapram.o \
|
||||
verifyram.o
|
||||
@@ -1,12 +0,0 @@
|
||||
#
|
||||
# makefile for CC65 runtime library
|
||||
#
|
||||
|
||||
#--------------------------------------------------------------------------
|
||||
# Object files
|
||||
|
||||
S_OBJS += get_ostype.o \
|
||||
getserialnumber.o \
|
||||
initdoneio.o \
|
||||
setdevice.o \
|
||||
tobasic.o
|
||||
Reference in New Issue
Block a user