[Libreoffice-commits] core.git: solenv/gbuild

Michael Stahl mstahl at redhat.com
Mon Jul 1 04:31:52 PDT 2013


 solenv/gbuild/platform/solaris.mk |   15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

New commits:
commit 99a4baf89c470d1e73b4e87fe9adf37a09230a2c
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon Jul 1 13:27:54 2013 +0200

    gbuild: sync solaris.mk linker invocation with unxgcc.mk
    
    Change-Id: Ib7ef6fe87673c601ad3c24f3ed3f382c039551f4

diff --git a/solenv/gbuild/platform/solaris.mk b/solenv/gbuild/platform/solaris.mk
index 20fc2a9..240204c 100644
--- a/solenv/gbuild/platform/solaris.mk
+++ b/solenv/gbuild/platform/solaris.mk
@@ -171,7 +171,9 @@ $(call gb_Helper_abbreviate_dirs,\
 	mkdir -p $(dir $(1)) && \
 	$(if $(CXXOBJECTS)$(GENCXXOBJECTS)$(EXTRAOBJECTLISTS),$(gb_CXX),$(gb_CC)) \
 		$(if $(filter Library CppunitTest,$(TARGETTYPE)),$(gb_Library_TARGETTYPEFLAGS)) \
-		$(if $(filter Library,$(TARGETTYPE)),$(gb_Library_LTOFLAGS)) \
+		$(if $(filter-out $(foreach lib,frm scfilt wpftdraw,$(call gb_Library_get_linktargetname,$(lib))),$*),$(gb_LTOFLAGS)) \
+		$(if $(SOVERSION),-Wl$(COMMA)--soname=$(notdir $(1)).$(SOVERSION)) \
+		$(if $(SOVERSIONSCRIPT),-Wl$(COMMA)--version-script=$(SOVERSIONSCRIPT))\
 		$(subst \d,$$,$(RPATH)) \
 		$(T_LDFLAGS) \
 		$(foreach object,$(COBJECTS),$(call gb_CObject_get_target,$(object))) \
@@ -181,13 +183,16 @@ $(call gb_Helper_abbreviate_dirs,\
 		$(foreach object,$(GENCXXOBJECTS),$(call gb_GenCxxObject_get_target,$(object))) \
 		$(foreach extraobjectlist,$(EXTRAOBJECTLISTS),`cat $(extraobjectlist)`) \
 		-Wl$(COMMA)--start-group $(foreach lib,$(LINKED_STATIC_LIBS),$(call gb_StaticLibrary_get_target,$(lib))) -Wl$(COMMA)--end-group \
+		-Wl$(COMMA)--no-as-needed \
 		$(LIBS) \
 		$(patsubst lib%.a,-l%,$(patsubst lib%.so,-l%,$(foreach lib,$(LINKED_LIBS),$(call gb_Library_get_filename,$(lib))))) \
-		-o $(1))
+		-o $(if $(SOVERSION),$(1).$(SOVERSION),$(1)))
+	$(if $(SOVERSION),ln -sf $(notdir $(1)).$(SOVERSION) $(1))
 	$(if $(filter Library,$(TARGETTYPE)),\
-		$(NM) --extern-only --dynamic --format=posix $(1) \
-			| cut -d' ' -f1-2 | grep -v U$$ \
-			> $(1).exports.tmp && \
+		readelf -d $(1) | grep SONAME > $(1).exports.tmp ; \
+		$(NM) --dynamic --extern-only --defined-only --format=posix $(1) \
+			| cut -d' ' -f1-2 \
+			>> $(1).exports.tmp && \
 		if cmp -s $(1).exports.tmp $(1).exports; \
 			then rm $(1).exports.tmp; \
 			else mv $(1).exports.tmp $(1).exports; touch -r $(1) $(1).exports; \


More information about the Libreoffice-commits mailing list