external/liblangtag/ExternalProject_langtag.mk    |    2 +-
 external/liblangtag/langtag-libtool-rpath.patch.0 |   11 +++++++++++
 2 files changed, 12 insertions(+), 1 deletion(-)

New commits:
commit 3a2818280ad65c3d0aa9e720f62fec571713b2e7
Author: Stephan Bergmann <[email protected]>
Date:   Fri Sep 23 09:03:49 2016 +0200

    external/liblangtag: Tunnel LD_LIBRARY_PATH to where it's actually needed
    
    At least make-4.1-5.fc24.x86_64's /usr/bin/make (indirectly) links against
    libfreebl3.so, so it could erroneously pick up our 
instdir/program/libfreebl3.so
    delivered there from external/nss.  But that's a problem for ASan/UBSan 
builds,
    where that libfreebl3.so is instrumented and expects to find certain symbols
    exported from the executable (and which /usr/bin/make of course doesn't 
have),
    so running make from within external/liblangtag/ExternalProject_langtag.mk
    fails.
    
    Turns out that the only place where LD_LIBRARY_PATH is needed during the 
build
    of external/liblangtag is when running
    workdir/UnpackedTarget/langtag/data/reg2xml.
    
    (This is unrelated to the recent changes to external/liblangtag by the way; 
just
    happend to show up now by accident, when doing an incremental build where
    external/nss had already been built when external/liblangtag got rebuilt.
    external/firebird has a similar problem, but everybody seems to run 
ASan/UBSan
    builds with --disable-firebird-sdbc anyway for now.)
    
    Change-Id: I6e045b6d33a154e350f4640265e6568f96634187
    Reviewed-on: https://gerrit.libreoffice.org/29211
    Reviewed-by: Stephan Bergmann <[email protected]>
    Tested-by: Stephan Bergmann <[email protected]>

diff --git a/external/liblangtag/ExternalProject_langtag.mk 
b/external/liblangtag/ExternalProject_langtag.mk
index 6ac51f3..5be74fb 100644
--- a/external/liblangtag/ExternalProject_langtag.mk
+++ b/external/liblangtag/ExternalProject_langtag.mk
@@ -39,8 +39,8 @@ $(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) \
-                  $(call gb_Helper_extend_ld_path,$(call 
gb_UnpackedTarball_get_dir,langtag)/liblangtag/.libs) \
                   $(MAKE) \
+                LIBO_TUNNEL_LIBRARY_PATH='$(subst ','\'',$(call 
gb_Helper_extend_ld_path,$(call 
gb_UnpackedTarball_get_dir,langtag)/liblangtag/.libs))' \
                $(if $(filter MACOSX,$(OS)),\
                        && $(PERL) 
$(SRCDIR)/solenv/bin/macosx-change-install-names.pl shl OOO \
                                
$(EXTERNAL_WORKDIR)/liblangtag/.libs/liblangtag.1.dylib \
diff --git a/external/liblangtag/langtag-libtool-rpath.patch.0 
b/external/liblangtag/langtag-libtool-rpath.patch.0
index 905516f..368832b 100644
--- a/external/liblangtag/langtag-libtool-rpath.patch.0
+++ b/external/liblangtag/langtag-libtool-rpath.patch.0
@@ -10,3 +10,14 @@ Prevent libtool from adding annoying stuff to RPATH
        ;;
  
      netbsd*)
+--- data/Makefile.in
++++ data/Makefile.in
+@@ -859,7 +859,7 @@
+ @[email protected]: language-subtag-registry 
reg2xml.c Makefile
+ @CROSS_COMPILING_TRUE@        @echo Warning: Unable to rebuild $@ when 
cross-compiling
+ @CROSS_COMPILING_FALSE@@[email protected]: 
language-subtag-registry reg2xml$(EXEEXT) Makefile
+-@CROSS_COMPILING_FALSE@@REBUILD_DATA_TRUE@    $(AM_V_GEN) 
$(builddir)/reg2xml$(EXEEXT) $(srcdir)/language-subtag-registry [email protected] || 
$(builddir)/reg2xml$(EXEEXT) $(builddir)/language-subtag-registry [email protected]; \
++@CROSS_COMPILING_FALSE@@REBUILD_DATA_TRUE@    $(AM_V_GEN) 
$(LIBO_TUNNEL_LIBRARY_PATH) $(builddir)/reg2xml$(EXEEXT) 
$(srcdir)/language-subtag-registry [email protected] || $(LIBO_TUNNEL_LIBRARY_PATH) 
$(builddir)/reg2xml$(EXEEXT) $(builddir)/language-subtag-registry [email protected]; \
+ @CROSS_COMPILING_FALSE@@REBUILD_DATA_TRUE@    head -1 [email protected] | grep -E 
'^<\?xml version'>/dev/null 2>&1 && mv [email protected] $@ || (echo "E: $@ isn't an 
expected result"; rm [email protected])
+ @CROSS_COMPILING_FALSE@@[email protected]:
+ @CROSS_COMPILING_FALSE@@REBUILD_DATA_FALSE@   @echo Warning: the rebuild of 
$@ is explicitly disabled.
_______________________________________________
Libreoffice-commits mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to