Here is update to Linux and X11 makefiles.
I used different suffixes for object files, so both Linux and X11 builds in src directory can be done without overwritting object files. Diffs are generated from files I really used so some extra .CHR files related stuff is inside
Andris
--- grx241/src/makefile.lnx~2 Thu Apr 26 00:33:28 2001 +++ grx241/src/makefile.lnx Tue May 29 16:53:10 2001 @@ -5,6 +5,8 @@
include ../makedefs.gnu
+.SUFFIXES: .o .lo .lso .c .S + INCDIR= -I. -I./include -I../include CCOPT += -DLFB_BY_NEAR_POINTER -pipe
@@ -18,10 +20,6 @@
GRX20ST = ../lib/$(GRX_LIB_SUBDIR)/libgrx20.a
-ifdef SHARED -CCOPT += -fPIC -D__SHARED__ -endif - OX=.o OP=
@@ -32,7 +30,7 @@ $(STD_9) $(STD_10) $(STD_11) $(STD_12)
BGI_O= $(BGI_1) $(BGI_2) $(BGI_3) $(BGI_4) \ - $(BGI_5) $(BGI_6) + $(BGI_5) $(BGI_6) $(CHR_1)
ADDON_O= ifdef DEBUG @@ -76,38 +74,22 @@ misc/lnxmisc.o \ vdrivers/svgalib.o
-ifdef SHARED -# ------------------------ SHARED -all: $(GRX20SHna) +OBJS_SHARED = $(subst .o,.lso,$(O)) +OBJS_STATIC = $(subst .o,.lo,$(O))
-$(GRX20SHna): $(LINUX_i386_SVGALIB_SHARED) $(O) - -rm -f $(GRX20SHna) - $(CC) -shared -Wl,-soname,$(notdir $(GRX20SHli)) -o $(GRX20SHna) $(O) +all: $(GRX20SHna) $(GRX20ST)
-$(O): $(LINUX_i386_SVGALIB_SHARED) - -else -# ------------------------- STATIC -all: $(GRX20ST) +$(GRX20SHna): $(OBJS_SHARED) + -rm -f $(GRX20SHna) + $(CC) -shared -Wl,-soname,$(notdir $(GRX20SHli)) -o $(GRX20SHna) $(OBJS_SHARED)
-$(GRX20ST): $(LINUX_i386_SVGALIB_STATIC) $(O) +$(GRX20ST): $(OBJS_STATIC) -rm -f $(GRX20ST) - $(AR) -rv $(GRX20ST) $(O) + $(AR) -rv $(GRX20ST) $(OBJS_STATIC) $(RANLIB) $(GRX20ST)
-$(O): $(LINUX_i386_SVGALIB_STATIC) -endif - -$(LINUX_i386_SVGALIB_STATIC): - if [ ! -e $(LINUX_i386_SVGALIB_STATIC) ]; then rm -f $(SYSTEM_TAG_PREFIX).* $(O); fi - touch $(LINUX_i386_SVGALIB_STATIC) - -$(LINUX_i386_SVGALIB_SHARED): - if [ ! -e $(LINUX_i386_SVGALIB_SHARED) ]; then rm -f $(SYSTEM_TAG_PREFIX).* $(O); fi - touch $(LINUX_i386_SVGALIB_SHARED) - clean: - rm -f $(O) $(O:.o=.s) $(LINUX_i386_SVGALIB_STATIC) $(LINUX_i386_SVGALIB_SHARED) + rm -f $(OBJS_SHARED) $(OBJS_STATIC) $(subst .o,.c,$(CHR_1)) $(O:.o=.s)
cleanall: clean rm -f $(GRX20SHna) $(GRX20SHli) $(GRX20ST) @@ -124,8 +106,17 @@ .c.s: $(CC) -S $(CCOPT) $(INCDIR) $*.c -o $*.s
-.c.o: - $(CC) -c $(CCOPT) $(INCDIR) $*.c -o $*.o +.c.lo: + $(CC) -c $(CCOPT) $(INCDIR) $*.c -o $*.lo + +.c.lso: + $(CC) -c -fPIC -D__SHARED__ $(CCOPT) $(INCDIR) $*.c -o $*.lso + +$(subst .o,.c,$(CHR_1)) : ../bin/bin2c + ../bin/bin2c $*.chr _$(shell basename $*)_font $*.c + +../bin/bin2c: + $(CC) -O2 bgi/bin2c.c -o ../bin/bin2c
include depend.lnx
--- grx241/src/makefile.x11~2 Thu Apr 26 00:28:08 2001 +++ grx241/src/makefile.x11 Tue May 29 16:53:03 2001 @@ -8,6 +8,8 @@ MAKEDEFS_DIR = .. include $(MAKEDEFS_DIR)/makedefs.x11
+.SUFFIXES: .o .xo .xso .c .S + INCDIR= -I. -I./include -I../include $(X11INCS)
GRX20SH = ../lib/$(GRX_LIB_SUBDIR)/libgrx20X.so @@ -20,10 +22,6 @@ CCOPT += -DGRX_DEFAULT_FONT_PATH=$(GRX_DEFAULT_FONT_PATH) endif
-ifdef SHARED -CCOPT += -fPIC -D__SHARED__ -endif - OX=.o OP= include ./stdobjs.mak @@ -33,7 +31,7 @@ $(STD_9) $(STD_10) $(STD_11) $(STD_12)\
BGI_O= $(BGI_1) $(BGI_2) $(BGI_3) $(BGI_4) \ - $(BGI_5) $(BGI_6) + $(BGI_5) $(BGI_6) $(CHR_1)
ADDON_O= ifdef DEBUG @@ -75,39 +73,23 @@ misc/x11misc.o \ vdrivers/vd_xwin.o
-ifdef SHARED -# ------------------------ SHARED -all: $(GRX20SHna) +OBJS_SHARED = $(subst .o,.xso,$(O)) +OBJS_STATIC = $(subst .o,.xo,$(O))
-$(GRX20SHna): $(LINUX_i386_X11_SHARED) $(O) - -rm -f $(GRX20SHna) - $(CC) -shared -Wl,-soname,$(notdir $(GRX20SHli)) -o $(GRX20SHna) $(O) +all: $(GRX20SHna) $(GRX20ST)
-$(O): $(LINUX_i386_X11_SHARED) - -else -# ------------------------- STATIC -all: $(GRX20ST) +$(GRX20SHna): $(OBJS_SHARED) + -rm -f $(GRX20SHna) + $(CC) -shared -Wl,-soname,$(notdir $(GRX20SHli)) -o $(GRX20SHna) $(OBJS_SHARED)
-$(GRX20ST): $(LINUX_i386_X11_STATIC) $(O) +$(GRX20ST): $(OBJS_STATIC) -rm -f $(GRX20ST) - $(AR) -rv $(GRX20ST) $(O) + $(AR) -rv $(GRX20ST) $(OBJS_STATIC) $(RANLIB) $(GRX20ST)
-$(O): $(LINUX_i386_X11_STATIC) -endif - - -$(LINUX_i386_X11_STATIC): - -if [ ! -e $(LINUX_i386_X11_STATIC) ]; then rm -f $(SYSTEM_TAG_PREFIX).* $(O); fi - touch $(LINUX_i386_X11_STATIC) - -$(LINUX_i386_X11_SHARED): - -if [ ! -e $(LINUX_i386_X11_SHARED) ]; then rm -f $(SYSTEM_TAG_PREFIX).* $(O); fi - touch $(LINUX_i386_X11_SHARED)
clean: - rm -f $(O) $(LINUX_i386_X11_STATIC) $(LINUX_i386_X11_SHARED) + rm -f $(OBJS_STATIC) $(OBJS_SHARED) $(subst .o,.c,$(CHR_1))
cleanall: clean rm -f $(GRX20SHna) $(GRX20SHli) $(GRX20ST) @@ -118,7 +100,16 @@ .c.s: $(CC) -S $(CCOPT) -D__XWIN__ $(INCDIR) $*.c -o $*.s
-$(O) : %.o : %.c - $(CC) -c $(CCOPT) -D__XWIN__ $(INCDIR) $*.c -o $*.o +$(OBJS_STATIC) : %.xo : %.c + $(CC) -c $(CCOPT) -D__XWIN__ $(INCDIR) $*.c -o $*.xo + +$(OBJS_SHARED) : %.xso : %.c + $(CC) -c $(CCOPT) -D__XWIN__ -fPIC -D__SHARED__ $(INCDIR) $*.c -o $*.xso + +$(subst .o,.c,$(CHR_1)) : ../bin/bin2c + ../bin/bin2c $*.chr _$(shell basename $*)_font $*.c + +../bin/bin2c: + $(CC) -O2 bgi/bin2c.c -o ../bin/bin2c
include depend.x11 --- grx241/src/stdobjs.mak~2 Tue May 29 14:38:05 2001 +++ grx241/src/stdobjs.mak Tue May 29 15:58:07 2001 @@ -326,3 +326,4 @@ $(OP)bgi/bgiprint$(OX)
CHR_1 = $(subst .chr,.o,$(wildcard chr/*.chr)) + --- grx241/makefile.x11~2 Tue May 29 14:46:11 2001 +++ grx241/makefile.x11 Tue May 29 15:33:09 2001 @@ -11,15 +11,10 @@
all: libs test bgitest
-libs: static_libs shared_libs +libs: + $(MAKE) -C src -f makefile.x11
-static_libs: - $(MAKE) -C src STATIC=1 -f makefile.x11 - -shared_libs: - $(MAKE) -C src SHARED=1 -f makefile.x11 - -test: static_libs +test: libs $(MAKE) -C test -f makefile.x11 ifeq ($(INCLUDE_GPC_SUPPORT),y) $(MAKE) -C pascal -f makefile.x11 @@ -27,7 +22,7 @@ $(MAKE) -C pascal/bgi/test -f makefile.x11 endif
-bgitest: static_libs +bgitest: libs $(MAKE) -C test/bgi -f makefile.x11
clean: --- grx241/makefile.lnx~2 Tue Feb 6 22:33:14 2001 +++ grx241/makefile.lnx Tue May 29 16:47:44 2001 @@ -6,15 +6,10 @@
all: libs test bgitest
-libs: static_libs shared_libs +libs: + $(MAKE) -C src -f makefile.lnx
-static_libs: - $(MAKE) -C src STATIC=1 -f makefile.lnx - -shared_libs: - $(MAKE) -C src SHARED=1 -f makefile.lnx - -test: static_libs +test: libs $(MAKE) -C test -f makefile.lnx ifeq ($(INCLUDE_GPC_SUPPORT),y) $(MAKE) -C pascal -f makefile.lnx @@ -22,7 +17,7 @@ $(MAKE) -C pascal/bgi/test -f makefile.lnx endif
-bgitest: static_libs +bgitest: libs $(MAKE) -C test/bgi -f makefile.lnx
clean: