summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2016-09-22 09:52:41 +0200
committerStephan Bergmann <sbergman@redhat.com>2016-09-22 09:56:53 +0200
commit14863b9a065ddc3332dd1da14c28708919b0101d (patch)
treec170ea934d1e9c133e32871d7264ae5d05e7231b
parenta1720f3a01f4c44364ce8f93e6fc6de225a4a48b (diff)
Make workdir/UnpackedTarball/langtag/data/.libs/lt-reg2xml find its libs
...after ecd5d49dc30d11845ccc1a14e26bf37d73959463 "liblangtag: prevent libtool from adding annoying stuff to RPATH". "Outsmarting" libtool in the way described in 1d028d4783da69c5c0e6e0b59e0f8ac55eb9d2b1 "Fix Linux RPATH of various external modules" only works if there's no utility applications in the outsmarted module, that are run while building the outsmarted module (cf. the redland case in 1d028d4783da69c5c0e6e0b59e0f8ac55eb9d2b1). To work around that, pass in an LD_LIBRARY_PATH (or equivalent) that finds the relevant libs as built in that module. (And gb_Helper_extend_ld_path was until now only available in com_GCC_defs.mk. There, it accepts any number of paths separated by ":". When used in a platform-independend way like it is used here, it will only support a single path.) Change-Id: Ic615e436b19b8b9aa7daa019c8f5287de90c3abc
-rw-r--r--external/liblangtag/ExternalProject_langtag.mk2
-rw-r--r--solenv/gbuild/platform/com_MSC_defs.mk10
2 files changed, 11 insertions, 1 deletions
diff --git a/external/liblangtag/ExternalProject_langtag.mk b/external/liblangtag/ExternalProject_langtag.mk
index cf41f35e04e1..6ac51f31081c 100644
--- a/external/liblangtag/ExternalProject_langtag.mk
+++ b/external/liblangtag/ExternalProject_langtag.mk
@@ -39,7 +39,7 @@ $(call gb_ExternalProject_get_state_target,langtag,build):
REAL_CC="$(shell cygpath -w $(lastword $(filter-out -%,$(CC))))" \
REAL_CC_FLAGS="$(filter -%,$(CC))") \
$(if $(verbose),V=1) \
- $(gb_Helper_set_ld_path) \
+ $(call gb_Helper_extend_ld_path,$(call gb_UnpackedTarball_get_dir,langtag)/liblangtag/.libs) \
$(MAKE) \
$(if $(filter MACOSX,$(OS)),\
&& $(PERL) $(SRCDIR)/solenv/bin/macosx-change-install-names.pl shl OOO \
diff --git a/solenv/gbuild/platform/com_MSC_defs.mk b/solenv/gbuild/platform/com_MSC_defs.mk
index 91a3d4ab18ed..940801b460da 100644
--- a/solenv/gbuild/platform/com_MSC_defs.mk
+++ b/solenv/gbuild/platform/com_MSC_defs.mk
@@ -316,6 +316,11 @@ define gb_Helper_prepend_ld_path
PATH="$(shell cygpath -w $(INSTDIR)/$(LIBO_URE_LIB_FOLDER));$(shell cygpath -w $(INSTDIR)/$(LIBO_BIN_FOLDER));$(1);$$PATH"
endef
+# $(1): one directory pathname to append to the ld path
+define gb_Helper_extend_ld_path
+$(gb_Helper_set_ld_path);$(shell cygpath -w $(1))
+endef
+
else
gb_Helper_set_ld_path := PATH="$(shell cygpath -u $(INSTDIR)/$(LIBO_URE_LIB_FOLDER)):$(shell cygpath -u $(INSTDIR)/$(LIBO_BIN_FOLDER)):$$PATH"
@@ -323,6 +328,11 @@ define gb_Helper_prepend_ld_path
PATH="$(shell cygpath -u $(INSTDIR)/$(LIBO_URE_LIB_FOLDER)):$(shell cygpath -u $(INSTDIR)/$(LIBO_BIN_FOLDER)):$(1):$$PATH"
endef
+# $(1): one directory pathname to append to the ld path
+define gb_Helper_extend_ld_path
+$(gb_Helper_set_ld_path):$(shell cygpath -u $(1))
+endef
+
endif
# vim: set noet sw=4: