[gs-cvs] rev 6890 - trunk/gs/src
giles at ghostscript.com
giles at ghostscript.com
Tue Jul 4 16:13:14 PDT 2006
Author: giles
Date: 2006-07-04 16:13:13 -0700 (Tue, 04 Jul 2006)
New Revision: 6890
Modified:
trunk/gs/src/unix-dll.mak
Log:
Modularize the soname and link flags for the unix shared library build
to facilitate use on different platforms.
Modified: trunk/gs/src/unix-dll.mak
===================================================================
--- trunk/gs/src/unix-dll.mak 2006-07-04 21:31:43 UTC (rev 6889)
+++ trunk/gs/src/unix-dll.mak 2006-07-04 23:13:13 UTC (rev 6890)
@@ -11,7 +11,7 @@
# San Rafael, CA 94903, U.S.A., +1(415)492-9861, for further information.
#
# $Id$
-# Partial makefile for Unix shared object target
+# Partial makefile for Unix shared library target
# Useful make commands:
# make so make ghostscript as a shared object
@@ -42,12 +42,26 @@
GSSOX=$(BINDIR)/$(SOBINRELDIR)/$(GSSOX_XENAME)
# shared library
-GS_SONAME=lib$(GS).so
+GS_SONAME_BASE=lib$(GS)
+
+# GNU/Linux
+GS_SOEXT=so
+GS_SONAME=$(GS_SONAME_BASE).$(GS_SOEXT)
GS_SONAME_MAJOR=$(GS_SONAME).$(GS_VERSION_MAJOR)
-GS_SONAME_MAJOR_MINOR= $(GS_SONAME).$(GS_VERSION_MAJOR).$(GS_VERSION_MINOR)
+GS_SONAME_MAJOR_MINOR=$(GS_SONAME).$(GS_VERSION_MAJOR).$(GS_VERSION_MINOR)
+LDFLAGS_SO=-shared -Wl,-soname=$(GS_SONAME_MAJOR)
+
+# MacOS X
+#GS_SOEXT=dylib
+#GS_SONAME=$(GS_SONAME_BASE).$(GS_SOEXT)
+#GS_SONAME_MAJOR=$(GS_SONAME_BASE).$(GS_VERSION_MAJOR).$(GS_SOEXT)
+#GS_SONAME_MAJOR_MINOR=$(GS_SONAME_BASE).$(GS_VERSION_MAJOR).$(GS_VERSION_MINOR).$(GS_SOEXT)
+#LDFLAGS_SO=-dynamiclib -flat-namespace
+#LDFLAGS_SO=-dynamiclib -install-name $(GS_SONAME_MAJOR_MINOR)
+
GS_SO=$(BINDIR)/$(GS_SONAME)
-GS_SO_MAJOR=$(GS_SO).$(GS_VERSION_MAJOR)
-GS_SO_MAJOR_MINOR=$(GS_SO_MAJOR).$(GS_VERSION_MINOR)
+GS_SO_MAJOR=$(BINDIR)/$(GS_SONAME_MAJOR)
+GS_SO_MAJOR_MINOR=$(BINDIR)/$(GS_SONAME_MAJOR_MINOR)
# Shared object is built by redefining GS_XE in a recursive make.
@@ -63,15 +77,16 @@
# Build the small Ghostscript loaders, with Gtk+ and without
-$(GSSOX_XE): $(GS_SO) $(GLSRC)dxmain.c
- $(GLCC) -g `pkg-config gtk+-2.0 --cflags` -o $(GSSOX_XE) $(GLSRC)dxmain.c -L$(BINDIR) -l$(GS) `pkg-config gtk+-2.0 --libs`
-
$(GSSOC_XE): $(GS_SO) $(GLSRC)dxmainc.c
$(GLCC) -g -o $(GSSOC_XE) $(GLSRC)dxmainc.c -L$(BINDIR) -l$(GS)
+$(GSSOX_XE): $(GS_SO) $(GLSRC)dxmain.c
+ $(GLCC) -g `pkg-config --cflags gtk+-2.0` -o $(GSSOX_XE) $(GLSRC)dxmain.c -L$(BINDIR) -l$(GS) `pkg-config --libs gtk+-2.0`
+
+
# ------------------------- Recursive make targets ------------------------- #
-SODEFS=LDFLAGS='$(LDFLAGS) $(CFLAGS_SO) -shared -Wl,-soname=$(GS_SONAME_MAJOR)'\
+SODEFS=LDFLAGS='$(LDFLAGS) $(LDFLAGS_SO)'\
GS_XE=$(BINDIR)/$(SOBINRELDIR)/$(GS_SONAME_MAJOR_MINOR)\
STDIO_IMPLEMENTATION=c\
DISPLAY_DEV=$(DD)$(SOOBJRELDIR)/display.dev\
More information about the gs-cvs
mailing list