The cc65 library build system is designed to call sub-makes in direct sub-directories of 'libsrc' only (meaning that sub-sub-directories are not supported). The GEOSLib source files however are organized in sub-directories of the 'libsrc/geos-cbm'. This mismatch was up to now handled by replicating the cc65 library build system functionality to allow for individal sub-makes in each 'libsrc/geos-cbm' sub-directory. This is unnecessarily hard understand and causes additional maintainance effort.

Now the whole GEOSLib is built in a single make instance running in 'libsrc/geos-cbm' - which is just what the cc65 library build system can handle. The 'libsrc/geos-cbm' sub-directories still contain Makefiles. However those files only define the set of object files to create from their sub-directory and get included into the 'libsrc/geos-cbm' Makefile.

git-svn-id: svn://svn.cc65.org/cc65/trunk@5429 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
ol.sc
2012-01-30 21:19:09 +00:00
parent 0fb3e47b60
commit 0c69d4866c
15 changed files with 315 additions and 285 deletions

View File

@@ -1,21 +1,33 @@
#
# Makefile for GEOS lib
# for cc65
# makefile for CC65 runtime library
#
%.o: %.s
@$(AS) -o $@ $(AFLAGS) $<
#--------------------------------------------------------------------------
# Object files
S_OBJS = get1stdirentry.o getnxtdirentry.o\
openrecordfile.o closerecordfile.o nextrecord.o previousrecord.o pointrecord.o\
deleterecord.o insertrecord.o appendrecord.o readrecord.o writerecord.o\
updaterecordfile.o\
findfile.o followchain.o getfhdrinfo.o readfile.o savefile.o freefile.o\
deletefile.o renamefile.o findftypes.o readbyte.o getfile.o\
sysremove.o sysrename.o
all: $(S_OBJS)
clean:
@$(RM) *.~ $(S_OBJS) core
S_OBJS += get1stdirentry.o \
getnxtdirentry.o \
openrecordfile.o \
closerecordfile.o \
nextrecord.o \
previousrecord.o \
pointrecord.o \
deleterecord.o \
insertrecord.o \
appendrecord.o \
readrecord.o \
writerecord.o \
updaterecordfile.o \
findfile.o \
followchain.o \
getfhdrinfo.o \
readfile.o \
savefile.o \
freefile.o \
deletefile.o \
renamefile.o \
findftypes.o \
readbyte.o \
getfile.o \
sysremove.o \
sysrename.o