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: