Mercurial > gub
view patches/ghostscript-9.00-make.patch @ 6512:ccc20ae889ca default tip guix
mingw::guile-2.0.7 builds.
author | Jan Nieuwenhuizen <janneke@gnu.org> |
---|---|
date | Thu, 24 Mar 2016 08:03:39 +0100 |
parents | 1b032dd75db2 |
children |
line wrap: on
line source
diff --git a/base/unix-dll.mak b/base/unix-dll.mak index 8625f99..0d238ba 100644 --- a/base/unix-dll.mak +++ b/base/unix-dll.mak @@ -31,6 +31,11 @@ SOBINRELDIR=../sobin # Shared object names +ifeq ($(TARGET),mingw) +GS=gs +XE=.exe +endif + # simple loader (no support for display device) GSSOC_XENAME=$(GS)c$(XE) GSSOC_XE=$(BINDIR)/$(GSSOC_XENAME) @@ -51,14 +51,27 @@ GS_SONAME_MAJOR=$(GS_SONAME).$(GS_VERSION_MAJOR) GS_SONAME_MAJOR_MINOR=$(GS_SONAME).$(GS_VERSION_MAJOR).$(GS_VERSION_MINOR) LDFLAGS_SO=-shared -Wl,-soname=$(GS_SONAME_MAJOR) +ifeq ($(TARGET),darwin) # 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) +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) #LDFLAGS_SO=-dynamiclib -install_name $(FRAMEWORK_NAME) +LDFLAGS_SO=-dynamiclib +endif + +ifeq ($(TARGET),mingw) +# Mingw +GS_SONAME_BASE=gs +GS_SOEXT=dll +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=-shared -Wl,-soname=$(GS_SONAME_MAJOR_MINOR) +endif GS_SO=$(BINDIR)/$(GS_SONAME) GS_SO_MAJOR=$(BINDIR)/$(GS_SONAME_MAJOR) @@ -87,6 +100,8 @@ $(GSSOX_XE): $(GS_SO) $(PSSRC)$(SOC_LOADER) # ------------------------- Recursive make targets ------------------------- # +# Help -rpath $ORIGIN survive the $(MAKE) command line expansion +MAKE_LDFLAGS=$(subst $$,\$$$$,$(LDFLAGS)) SODEFS=\ GS_XE=$(BINDIR)/$(SOBINRELDIR)/$(GS_SONAME_MAJOR_MINOR)\ STDIO_IMPLEMENTATION=c\ @@ -103,11 +118,11 @@ so: SODIRS @if test -z "$(MAKE)" -o -z "`$(MAKE) --version 2>&1 | grep GNU`";\ then echo "Warning: this target requires gmake";\ fi - $(MAKE) $(SODEFS) LDFLAGS='$(LDFLAGS)' CFLAGS='$(CFLAGS_STANDARD) $(GCFLAGS) $(XCFLAGS)' prefix=$(prefix) \ + $(MAKE) $(SODEFS) LDFLAGS='$(MAKE_LDFLAGS)' CFLAGS='$(CFLAGS_STANDARD) $(GCFLAGS) $(XCFLAGS)' prefix=$(prefix) \ $(GLOBJDIR)/$(SOOBJRELDIR)/echogs$(XEAUX) $(GLOBJDIR)/$(SOOBJRELDIR)/genarch$(XEAUX) - $(MAKE) $(SODEFS) LDFLAGS='$(LDFLAGS) $(LDFLAGS_SO)' CFLAGS='$(CFLAGS_STANDARD) $(CFLAGS_SO) $(GCFLAGS) $(XCFLAGS)' \ + $(MAKE) $(SODEFS) LDFLAGS='$(MAKE_LDFLAGS) $(LDFLAGS_SO)' CFLAGS='$(CFLAGS_STANDARD) $(CFLAGS_SO) $(GCFLAGS) $(XCFLAGS)' \ prefix=$(prefix) - $(MAKE) $(SODEFS) LDFLAGS='$(LDFLAGS)' CFLAGS='$(CFLAGS_STANDARD) $(GCFLAGS) $(XCFLAGS)' prefix=$(prefix) $(GSSOC) $(GSSOX) + $(MAKE) $(SODEFS) LDFLAGS='$(MAKE_LDFLAGS)' CFLAGS='$(CFLAGS_STANDARD) $(GCFLAGS) $(XCFLAGS)' prefix=$(prefix) $(GSSOC) $(GSSOX) # Debug shared object # Note that this is in the same directory as the normal shared @@ -116,11 +131,11 @@ sodebug: SODIRS @if test -z "$(MAKE)" -o -z "`$(MAKE) --version 2>&1 | grep GNU`";\ then echo "Warning: this target requires gmake";\ fi - $(MAKE) $(SODEFS) GENOPT='-DDEBUG' LDFLAGS='$(LDFLAGS)' CFLAGS='$(CFLAGS_STANDARD) $(GCFLAGS) $(XCFLAGS)' prefix=$(prefix) \ + $(MAKE) $(SODEFS) GENOPT='-DDEBUG' LDFLAGS='$(MAKE_LDFLAGS)' CFLAGS='$(CFLAGS_STANDARD) $(GCFLAGS) $(XCFLAGS)' prefix=$(prefix) \ $(GLOBJDIR)/$(SOOBJRELDIR)/echogs$(XEAUX) $(GLOBJDIR)/$(SOOBJRELDIR)/genarch$(XEAUX) - $(MAKE) $(SODEFS) GENOPT='-DDEBUG' LDFLAGS='$(LDFLAGS) $(LDFLAGS_SO)' CFLAGS='$(CFLAGS_STANDARD) $(CFLAGS_SO) $(GCFLAGS) $(XCFLAGS)' \ + $(MAKE) $(SODEFS) GENOPT='-DDEBUG' LDFLAGS='$(MAKE_LDFLAGS) $(LDFLAGS_SO)' CFLAGS='$(CFLAGS_STANDARD) $(CFLAGS_SO) $(GCFLAGS) $(XCFLAGS)' \ prefix=$(prefix) - $(MAKE) $(SODEFS) GENOPT='-DDEBUG' LDFLAGS='$(LDFLAGS)' CFLAGS='$(CFLAGS_STANDARD) $(GCFLAGS) $(XCFLAGS)' prefix=$(prefix) $(GSSOC) $(GSSOX) + $(MAKE) $(SODEFS) GENOPT='-DDEBUG' LDFLAGS='$(MAKE_LDFLAGS)' CFLAGS='$(CFLAGS_STANDARD) $(GCFLAGS) $(XCFLAGS)' prefix=$(prefix) $(GSSOC) $(GSSOX) # $(MAKE) $(SODEFS) GENOPT='-DDEBUG' CFLAGS='$(CFLAGS_DEBUG) $(CFLAGS_SO) $(GCFLAGS) $(XCFLAGS)' $(GSSOC) $(GSSOX) diff --git a/base/unixlink.mak b/base/unixlink.mak index e268c7d..7479afd 100644 --- a/base/unixlink.mak +++ b/base/unixlink.mak @@ -44,13 +44,16 @@ $(GS_A): $(obj_tr) $(ECHOGS_XE) $(INT_ARCHIVE_ALL) $(INT_ALL) $(DEVS_ALL) $(SH) <$(liar_tr) $(RANLIB) $(GS_A) +# Help -rpath $ORIGIN survive the ECHOGS_XE sh command line expansion +SHELL_LDFLAGS=$(subst $$,\$$,$(LDFLAGS)) + # Here is the final link step. The stuff with LD_RUN_PATH is for SVR4 # systems with dynamic library loading; I believe it's harmless elsewhere. # The resetting of the environment variables to empty strings is for SCO Unix, # which has limited environment space. ldt_tr=$(PSOBJ)ldt.tr $(GS_XE): $(ld_tr) $(ECHOGS_XE) $(XE_ALL) $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ) - $(ECHOGS_XE) -w $(ldt_tr) -n - $(CCLD) $(LDFLAGS) -o $(GS_XE) + $(ECHOGS_XE) -w $(ldt_tr) -n - $(CCLD) $(SHELL_LDFLAGS) -o $(GS_XE) $(ECHOGS_XE) -a $(ldt_tr) -n -s $(PSOBJ)gsromfs$(COMPILE_INITS).$(OBJ) $(PSOBJ)gs.$(OBJ) -s cat $(ld_tr) >>$(ldt_tr) $(ECHOGS_XE) -a $(ldt_tr) -s - $(EXTRALIBS) $(STDLIBS)