[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