summaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorHenry Stiles <henry.stiles@artifex.com>2012-02-09 17:15:41 -0700
committerHenry Stiles <henry.stiles@artifex.com>2012-02-12 15:38:06 -0700
commite2867c6bcb2dc6cf9325e9ac87f980684469dee4 (patch)
treea3f40dee008793f087398a24d02e679c164b84c2 /common
parenta13600f1c241c3e36dbe4973e9d78a8934b16004 (diff)
PCL shared library build for unix.
Diffstat (limited to 'common')
-rw-r--r--common/ugcc_top.mak14
1 files changed, 13 insertions, 1 deletions
diff --git a/common/ugcc_top.mak b/common/ugcc_top.mak
index 4b73d287e..67a4d4c31 100644
--- a/common/ugcc_top.mak
+++ b/common/ugcc_top.mak
@@ -91,6 +91,9 @@ pdl-product: UGCC_TOP_DIR
pdl-product-lib: UGCC_TOP_DIR
$(MAKE) -f $(firstword $(MAKEFILE)) GENOPT='' GCFLAGS='$(GCFLAGS)' CFLAGS='-O2 $(GCFLAGS) $(XCFLAGS)' LDFLAGS='$(XLDFLAGS)' lib
+pdl-product-solib: UGCC_TOP_DIR
+ $(MAKE) -f $(firstword $(MAKEFILE)) GENOPT='' GCFLAGS='$(GCFLAGS)' CFLAGS='-fPIC -O2 $(GCFLAGS) $(XCFLAGS)' LDFLAGS='$(XLDFLAGS) $(LD_FLAGS_SO)' solib
+
pdl-clean:
$(RMN_) $(GENDIR)/*.dev $(GENDIR)/devs*.tr $(GENDIR)/gconfig*.h
$(RMN_) $(GENDIR)/gconfx*.h $(GENDIR)/j*.h
@@ -114,10 +117,19 @@ $(GENDIR)/pconf.h $(GENDIR)/ldconf.tr: $(TARGET_DEVS) $(AUXDIR)/genconf$(XE)
$(TARGET_LIB): $(ld_tr) $(GENDIR)/ldconf.tr $(MAIN_OBJ) $(TOP_OBJ) $(XOBJS) $(GLOBJDIR)/gsromfs$(COMPILE_INITS).$(OBJ)
$(ECHOGS_XE) -w $(GENDIR)/ldall.tr -n - $(AR) $(ARFLAGS) $@
$(ECHOGS_XE) -a $(GENDIR)/ldall.tr -n -s $(TOP_OBJ) $(XOBJS) -s
- cat $(GENDIR)/ldt.tr $(GENDIR)/ldconf.tr | grep ".o" >>$(GENDIR)/ldall.tr
+ cat $(ld_tr) $(GENDIR)/ldconf.tr >>$(GENDIR)/ldall.tr
$(ECHOGS_XE) -a $(GENDIR)/ldall.tr -s - $(GLOBJDIR)/gsromfs$(COMPILE_INITS).$(OBJ) $(MAIN_OBJ)
LD_RUN_PATH=$(XLIBDIR); export LD_RUN_PATH; sh <$(GENDIR)/ldall.tr
+$(TARGET_SOLIB): $(ld_tr) $(GENDIR)/ldconf.tr $(MAIN_OBJ) $(TOP_OBJ) $(XOBJS) $(GLOBJDIR)/gsromfs$(COMPILE_INITS).$(OBJ)
+ $(ECHOGS_XE) -w $(GENDIR)/ldall.tr -n - $(CCLD) $(LDFLAGS) -o $@
+ $(ECHOGS_XE) -a $(GENDIR)/ldall.tr -n -s $(TOP_OBJ) $(XOBJS) -s
+ cat $(ld_tr) $(GENDIR)/ldconf.tr >>$(GENDIR)/ldall.tr
+ $(ECHOGS_XE) -a $(GENDIR)/ldall.tr -s - $(GLOBJDIR)/gsromfs$(COMPILE_INITS).$(OBJ) $(MAIN_OBJ) $(EXTRALIBS) $(STDLIBS)
+ LD_RUN_PATH=$(XLIBDIR); export LD_RUN_PATH; sh <$(GENDIR)/ldall.tr
+ ln -s $(PCL6_SONAME_MAJOR_MINOR) $(GENDIR)/$(PCL6_SONAME_MAJOR)
+ ln -s $(PCL6_SONAME_MAJOR_MINOR) $(GENDIR)/$(PCL6_SONAME)
+
ifeq ($(PSICFLAGS), -DPSI_INCLUDED)
# Link a Unix executable. NB - XOBS is not concatenated to the link
# list here. It seems to have been done earlier on unlike the