summaryrefslogtreecommitdiff
path: root/solenv
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2011-12-16 11:09:23 +0100
committerMichael Stahl <mstahl@redhat.com>2011-12-16 11:30:46 +0100
commit3eba78e14142060164b288805b0bef7cf415f406 (patch)
treee55ef1ebc591d4d3e4d9ad02ed59a95f1e1856ac /solenv
parent75d215d47331f816c5d41a34b63badf6e1636ac8 (diff)
gbuild: fix gb_Library_set_soversion_script
so it does nothing on platforms where soversions are not used
Diffstat (limited to 'solenv')
-rw-r--r--solenv/gbuild/Library.mk12
-rw-r--r--solenv/gbuild/platform/macosx.mk2
-rw-r--r--solenv/gbuild/platform/unxgcc.mk2
3 files changed, 13 insertions, 3 deletions
diff --git a/solenv/gbuild/Library.mk b/solenv/gbuild/Library.mk
index d491dd240c09..48d2d6aa05a8 100644
--- a/solenv/gbuild/Library.mk
+++ b/solenv/gbuild/Library.mk
@@ -77,9 +77,7 @@ $(call gb_Deliver_add_deliverable,$(call gb_Library_get_target,$(1)),$(call gb_L
endef
-define gb_Library_set_soversion_script
-$(if $(2),,$(call gb_Output_error,gb_Library_set_soversion_script: no version))
-$(if $(3),,$(call gb_Output_error,gb_Library_set_soversion_script: no script))
+define gb_Library__set_soversion_script
$(call gb_LinkTarget_get_target,$(call gb_Library_get_linktargetname,$(1))) : \
$(3)
$(call gb_Library_get_target,$(1)) : SOVERSION := $(2)
@@ -91,6 +89,14 @@ $(call gb_LinkTarget_set_auxtargets,$(call gb_Library_get_linktargetname,$(1)),\
$(call gb_LinkTarget_get_target,$(call gb_Library_get_linktargetname,$(1))).$(2))
endef
+# for libraries that maintain stable ABI: set SOVERSION and version script
+# $(call gb_Library_set_soversion_script,soversion,versionscript)
+define gb_Library_set_soversion_script
+$(if $(2),,$(call gb_Output_error,gb_Library_set_soversion_script: no version))
+$(if $(3),,$(call gb_Output_error,gb_Library_set_soversion_script: no script))
+$(call gb_Library__set_soversion_script_platform,$(1),$(2),$(3))
+endef
+
define gb_Library_set_componentfile
$(call gb_ComponentTarget_ComponentTarget,$(2),$(call gb_Library__get_componentprefix,$(1)),\
$(call gb_Library_get_runtime_filename,$(if $(MERGELIBS),$(if $(filter $(gb_MERGED_LIBS),$(1)),merged,$(1)),$(1))))
diff --git a/solenv/gbuild/platform/macosx.mk b/solenv/gbuild/platform/macosx.mk
index 2b0d167770ad..3c8329b7bdb1 100644
--- a/solenv/gbuild/platform/macosx.mk
+++ b/solenv/gbuild/platform/macosx.mk
@@ -299,6 +299,8 @@ $(call gb_LinkTarget_get_target,$(2)) : LAYER := $(call gb_Library_get_layer,$(1
endef
+gb_Library__set_soversion_script_platform = $(gb_Library__set_soversion_script)
+
# StaticLibrary class
diff --git a/solenv/gbuild/platform/unxgcc.mk b/solenv/gbuild/platform/unxgcc.mk
index d08deb962726..a22d23410496 100644
--- a/solenv/gbuild/platform/unxgcc.mk
+++ b/solenv/gbuild/platform/unxgcc.mk
@@ -313,6 +313,8 @@ $(call gb_LinkTarget_get_target,$(2)) : RPATH := $(call gb_Library_get_rpath,$(1
endef
+gb_Library__set_soversion_script_platform = $(gb_Library__set_soversion_script)
+
# StaticLibrary class