[Libreoffice-commits] core.git: configure.ac external/icu solenv/gbuild

Luboš Luňák l.lunak at collabora.com
Wed Jul 4 13:35:49 UTC 2018


 configure.ac                        |    2 +-
 external/icu/ExternalProject_icu.mk |    3 +--
 solenv/gbuild/platform/solaris.mk   |    6 +-----
 solenv/gbuild/platform/unxgcc.mk    |    6 +-----
 4 files changed, 4 insertions(+), 13 deletions(-)

New commits:
commit e73825ea4b12cc62caa95faa902bfc9ebb48f58a
Author: Luboš Luňák <l.lunak at collabora.com>
Date:   Sat Jun 30 03:35:49 2018 +0200

    drop usage of --dynamic-list-cpp-new/typeinfo
    
    First of all, lld doesn't have these options, but there doesn't seem
    to be any point in using them anyway. They are supposed to block
    the effect of -Bsymbolic-functions, but:
    - --dynamic-list-cpp-new matters only if we'd create our own global
      operator new/delete, which we don't
    - --dynamic-list-cpp-typeinfo affects only the typeinfo (_ZTI*)
      and typeinfo name (_ZTS*) symbols, which are not functions, and
      so -Bsymbolic-functions shouldn't do anything with them. According
      to https://sourceware.org/bugzilla/show_bug.cgi?id=3831
      my understanding is that --dynamic-list-cpp-typeinfo actually
      predates -Bsymbolic-functions and it was an attempt to do the same
      from the other direction ('bind locally everything except for this'
      instead of 'bind locally only functions').
    
    Change-Id: Iadad2d78f32a2adfb9c2100fb4eb5abe75725545
    Reviewed-on: https://gerrit.libreoffice.org/56739
    Reviewed-by: Luboš Luňák <l.lunak at collabora.com>
    Tested-by: Luboš Luňák <l.lunak at collabora.com>

diff --git a/configure.ac b/configure.ac
index bf2c8fbf5570..c8d18b18fde8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3151,7 +3151,7 @@ HAVE_LD_BSYMBOLIC_FUNCTIONS=
 if test "$GCC" = "yes"; then
     AC_MSG_CHECKING([for -Bsymbolic-functions linker support])
     bsymbolic_functions_ldflags_save=$LDFLAGS
-    LDFLAGS="$LDFLAGS -Wl,-Bsymbolic-functions -Wl,--dynamic-list-cpp-new -Wl,--dynamic-list-cpp-typeinfo"
+    LDFLAGS="$LDFLAGS -Wl,-Bsymbolic-functions"
     AC_LINK_IFELSE([AC_LANG_PROGRAM([
 #include <stdio.h>
         ],[
diff --git a/external/icu/ExternalProject_icu.mk b/external/icu/ExternalProject_icu.mk
index e1ec30938bf7..1e94eef0fd5e 100644
--- a/external/icu/ExternalProject_icu.mk
+++ b/external/icu/ExternalProject_icu.mk
@@ -54,8 +54,7 @@ icu_LDFLAGS:=" \
 	$(if $(ENABLE_LTO),$(gb_LTOFLAGS)) \
 	$(if $(filter TRUE,$(HAVE_LD_HASH_STYLE)),-Wl$(COMMA)--hash-style=$(WITH_LINKER_HASH_STYLE)) \
     $(if $(SYSBASE),-L../lib -L../../lib -L../stubdata -L../../stubdata -L$(SYSBASE)/usr/lib) \
-    $(if $(filter TRUE,$(HAVE_LD_BSYMBOLIC_FUNCTIONS)),\
-	    -Wl$(COMMA)-Bsymbolic-functions -Wl$(COMMA)--dynamic-list-cpp-new -Wl$(COMMA)--dynamic-list-cpp-typeinfo) \
+    $(if $(filter TRUE,$(HAVE_LD_BSYMBOLIC_FUNCTIONS)), -Wl$(COMMA)-Bsymbolic-functions) \
     $(if $(filter ANDROID,$(OS)),$(gb_STDLIBS))"
 
 # DATASUBDIR=data in cross-compiling case, because --disable-tools completely skips the
diff --git a/solenv/gbuild/platform/solaris.mk b/solenv/gbuild/platform/solaris.mk
index 2210d4f972d1..88fa9413f726 100644
--- a/solenv/gbuild/platform/solaris.mk
+++ b/solenv/gbuild/platform/solaris.mk
@@ -81,11 +81,7 @@ gb_LinkTarget_LDFLAGS += \
 endif
 
 ifneq ($(HAVE_LD_BSYMBOLIC_FUNCTIONS),)
-gb_LinkTarget_LDFLAGS += \
-	-Wl,--dynamic-list-cpp-new \
-	-Wl,--dynamic-list-cpp-typeinfo \
-	-Wl,-Bsymbolic-functions \
-
+gb_LinkTarget_LDFLAGS += -Wl,-Bsymbolic-functions
 endif
 
 # sun ld doesn't understand -O1 optimize flag
diff --git a/solenv/gbuild/platform/unxgcc.mk b/solenv/gbuild/platform/unxgcc.mk
index 8505f9638a19..79144b19763b 100644
--- a/solenv/gbuild/platform/unxgcc.mk
+++ b/solenv/gbuild/platform/unxgcc.mk
@@ -75,11 +75,7 @@ gb_LinkTarget_LDFLAGS += \
 endif
 
 ifneq ($(HAVE_LD_BSYMBOLIC_FUNCTIONS),)
-gb_LinkTarget_LDFLAGS += \
-	-Wl,--dynamic-list-cpp-new \
-	-Wl,--dynamic-list-cpp-typeinfo \
-	-Wl,-Bsymbolic-functions \
-
+gb_LinkTarget_LDFLAGS += -Wl,-Bsymbolic-functions
 endif
 
 ifneq ($(gb_DEBUGLEVEL),0)


More information about the Libreoffice-commits mailing list