config_host.mk.in | 2 configure.ac | 104 +++++++----------- cppuhelper/test/testcmp/TestComponent.hxx | 2 desktop/source/lib/init.cxx | 4 external/clew/source/include/clew/clew.h | 4 external/openssl/ExternalProject_openssl.mk | 5 helpcompiler/source/LuceneHelper.hxx | 4 include/sal/types.h | 2 odk/settings/settings.mk | 8 - onlineupdate/source/update/updater/updater.cxx | 2 solenv/gbuild/platform/com_GCC_defs.mk | 10 - ure/source/uretest/Makefile.pln | 9 - xmlhelp/source/cxxhelp/provider/resultsetforquery.cxx | 4 13 files changed, 67 insertions(+), 93 deletions(-)
New commits: commit 1ea987f23a4514bcae5a6bd98014ade1af4a0107 Author: Stephan Bergmann <sberg...@redhat.com> Date: Tue Sep 20 08:16:52 2016 +0200 Remove HAVE_GCC_VISIBILITY_BROKEN, never true The check for broken -fvisiblity-inlines-hidden doesn't mention a specific bug. Its roots date back to 072e89cf68dcf9b6713945e402dd7a9fe5cea48d "INTEGRATION: CWS newportstl" of the --with(out)-stlport area. Lets assume whatever failure is long since fixed. Make this a fatal configure error for now. The check should be removed completely after LO 5.3 branch-off. Change-Id: I7c64c2e8b9bd342beec9b84ff71f5712a6155b7d Reviewed-on: https://gerrit.libreoffice.org/29075 Reviewed-by: Stephan Bergmann <sberg...@redhat.com> Tested-by: Stephan Bergmann <sberg...@redhat.com> diff --git a/config_host.mk.in b/config_host.mk.in index 29a6430..25b9609 100644 --- a/config_host.mk.in +++ b/config_host.mk.in @@ -250,7 +250,6 @@ export HAVE_GCC_FNO_INLINE=@HAVE_GCC_FNO_INLINE@ export HAVE_GCC_FNO_SIZED_DEALLOCATION=@HAVE_GCC_FNO_SIZED_DEALLOCATION@ export HAVE_GCC_GGDB2=@HAVE_GCC_GGDB2@ export HAVE_GCC_PRAGMA_OPERATOR=@HAVE_GCC_PRAGMA_OPERATOR@ -export HAVE_GCC_VISIBILITY_BROKEN=@HAVE_GCC_VISIBILITY_BROKEN@ export HAVE_GNUMAKE_FILE_FUNC=@HAVE_GNUMAKE_FILE_FUNC@ export HAVE_LD_BSYMBOLIC_FUNCTIONS=@HAVE_LD_BSYMBOLIC_FUNCTIONS@ export HAVE_LD_HASH_STYLE=@HAVE_LD_HASH_STYLE@ diff --git a/configure.ac b/configure.ac index e9366b1..4afb8d1 100644 --- a/configure.ac +++ b/configure.ac @@ -6476,7 +6476,6 @@ AC_SUBST([HAVE_GCC_FNO_SIZED_DEALLOCATION]) dnl =================================================================== dnl system stl sanity tests dnl =================================================================== -HAVE_GCC_VISIBILITY_BROKEN= if test \( "$_os" != "WINNT" -o "$WITH_MINGW" = "yes" \); then AC_LANG_PUSH([C++]) @@ -6518,16 +6517,14 @@ istringstream strm( "test" ); return 0; ]) AC_MSG_RESULT([$gccvisok]) if test "$gccvisok" = "no"; then - AC_MSG_WARN([Your gcc is not -fvisibility-inlines-hidden safe, disabling that.]) - add_warning "Your gcc is not -fvisibility-inlines-hidden safe, disabling that." - HAVE_GCC_VISIBILITY_BROKEN="TRUE" + AC_MSG_ERROR([Your gcc is not -fvisibility-inlines-hidden safe. This is no longer supported.]) fi LDFLAGS=$sharedlink_ldflags_save # As the below test checks things when linking self-compiled dynamic libraries, it presumably is irrelevant # when we don't make any dynamic libraries? - if test "$DISABLE_DYNLOADING" = "" -a "$HAVE_GCC_VISIBILITY_BROKEN" != "TRUE"; then + if test "$DISABLE_DYNLOADING" = ""; then AC_MSG_CHECKING([if gcc is -fvisibility-inlines-hidden safe (Clang bug 11250)]) cat > conftestlib1.cc <<_ACEOF template<typename T> struct S1 { virtual ~S1() {} virtual void f() {} }; @@ -6611,8 +6608,6 @@ _ACEOF AC_LANG_POP([C++]) fi -AC_SUBST(HAVE_GCC_VISIBILITY_BROKEN) - dnl =================================================================== dnl Clang++ tests dnl =================================================================== diff --git a/solenv/gbuild/platform/com_GCC_defs.mk b/solenv/gbuild/platform/com_GCC_defs.mk index 45b077f..2d6dc73 100644 --- a/solenv/gbuild/platform/com_GCC_defs.mk +++ b/solenv/gbuild/platform/com_GCC_defs.mk @@ -110,9 +110,7 @@ gb_VISIBILITY_FLAGS := -fvisibility-ms-compat endif endif endif -ifneq ($(HAVE_GCC_VISIBILITY_BROKEN),TRUE) gb_VISIBILITY_FLAGS_CXX := -fvisibility-inlines-hidden -endif gb_CXXFLAGS_COMMON += $(gb_VISIBILITY_FLAGS_CXX) ifeq ($(HAVE_GCC_STACK_PROTECTOR_STRONG),TRUE) commit 6a00d6e074287d112575b3eba6e575504bd9f069 Author: Stephan Bergmann <sberg...@redhat.com> Date: Tue Sep 20 08:13:53 2016 +0200 Remove obsolete HAVE_GCC_VISIBILITY_BROKEN check <https://llvm.org/bugs/show_bug.cgi?id=12255> "with -fvisibility-inlines-hidden needed copy not emitted for virtual inline function" (which covers the relevant part of the Clang bug 11250 mentioned in the check) is reportedly fixed ever since at last Clang 3.2. Make this a fatal configure error for now. The check should be removed completely after LO 5.3 branch-off. Change-Id: I47edf92968f32735a509ef649e0e85b891baab4b Reviewed-on: https://gerrit.libreoffice.org/29074 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Stephan Bergmann <sberg...@redhat.com> diff --git a/configure.ac b/configure.ac index 52997f7..e9366b1 100644 --- a/configure.ac +++ b/configure.ac @@ -6565,9 +6565,7 @@ _ACEOF rm -fr libconftest* AC_MSG_RESULT([$gccvisinlineshiddenok]) if test "$gccvisinlineshiddenok" = "no"; then - AC_MSG_WARN([Your gcc/clang is not -fvisibility-inlines-hidden safe, disabling that.]) - add_warning "Your gcc/clang is not -fvisibility-inlines-hidden safe, disabling that." - HAVE_GCC_VISIBILITY_BROKEN="TRUE" + AC_MSG_ERROR([Your gcc/clang is not -fvisibility-inlines-hidden safe. This is no longer supported.]) fi fi commit f255c3e96e25a43a4724d80287554d892d7ffd70 Author: Stephan Bergmann <sberg...@redhat.com> Date: Tue Sep 20 08:11:58 2016 +0200 [API CHANGE] Remove HAVE_GCC_VISIBILITY_FEATURE, always true * GCC documents -fvisibility at least as far back as the GCC 4.0 online documentation at <https://gcc.gnu.org/onlinedocs/gcc-4.0.4/gcc/Code-Gen-Options.html>. * For external code, odk/settings/settings.mk unconditionally set HAVE_GCC_VISIBILITY_FEATURE for all platforms other than Windows. Make this a fatal configure error for now. The check should be removed completely after LO 5.3 branch-off. Change-Id: I1de415b6ed1591e0a7b6640ece861b6f0ef74112 Reviewed-on: https://gerrit.libreoffice.org/29073 Reviewed-by: Stephan Bergmann <sberg...@redhat.com> Tested-by: Stephan Bergmann <sberg...@redhat.com> diff --git a/config_host.mk.in b/config_host.mk.in index 1e4baeb..29a6430 100644 --- a/config_host.mk.in +++ b/config_host.mk.in @@ -251,7 +251,6 @@ export HAVE_GCC_FNO_SIZED_DEALLOCATION=@HAVE_GCC_FNO_SIZED_DEALLOCATION@ export HAVE_GCC_GGDB2=@HAVE_GCC_GGDB2@ export HAVE_GCC_PRAGMA_OPERATOR=@HAVE_GCC_PRAGMA_OPERATOR@ export HAVE_GCC_VISIBILITY_BROKEN=@HAVE_GCC_VISIBILITY_BROKEN@ -export HAVE_GCC_VISIBILITY_FEATURE=@HAVE_GCC_VISIBILITY_FEATURE@ export HAVE_GNUMAKE_FILE_FUNC=@HAVE_GNUMAKE_FILE_FUNC@ export HAVE_LD_BSYMBOLIC_FUNCTIONS=@HAVE_LD_BSYMBOLIC_FUNCTIONS@ export HAVE_LD_HASH_STYLE=@HAVE_LD_HASH_STYLE@ diff --git a/configure.ac b/configure.ac index ae9e83b..52997f7 100644 --- a/configure.ac +++ b/configure.ac @@ -5946,7 +5946,7 @@ if test "$GCC" = "yes" -o "$COM_IS_CLANG" = TRUE; then if test "$HAVE_GCC_VISIBILITY_FEATURE" = "TRUE"; then AC_MSG_RESULT([yes]) else - AC_MSG_RESULT([no]) + AC_MSG_ERROR([no This is no longer supported.]) fi AC_MSG_CHECKING([whether $CC supports -mno-avx]) @@ -6488,7 +6488,7 @@ if test \( "$_os" != "WINNT" -o "$WITH_MINGW" = "yes" \); then # Assume visibility is not broken with libc++. The below test is very much designed for libstdc++ # only. - if test "$HAVE_GCC_VISIBILITY_FEATURE" = "TRUE" -a "$CPP_LIBRARY" = GLIBCXX; then + if test "$CPP_LIBRARY" = GLIBCXX; then dnl gcc#19664, gcc#22482, rhbz#162935 AC_MSG_CHECKING([if STL headers are visibility safe (GCC bug 22482)]) AC_EGREP_HEADER(visibility push, string, stlvisok=yes, stlvisok=no) @@ -6498,38 +6498,36 @@ if test \( "$_os" != "WINNT" -o "$WITH_MINGW" = "yes" \); then fi fi - if test "$HAVE_GCC_VISIBILITY_FEATURE" = "TRUE"; then - sharedlink_ldflags_save=$LDFLAGS - LDFLAGS="$LDFLAGS -fvisibility-inlines-hidden $PICSWITCH $LINKFLAGSSHL" + sharedlink_ldflags_save=$LDFLAGS + LDFLAGS="$LDFLAGS -fvisibility-inlines-hidden $PICSWITCH $LINKFLAGSSHL" - AC_MSG_CHECKING([if gcc is -fvisibility-inlines-hidden safe with STL headers]) - AC_LINK_IFELSE([AC_LANG_PROGRAM([[ + AC_MSG_CHECKING([if gcc is -fvisibility-inlines-hidden safe with STL headers]) + AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #include <sstream> using namespace std; - ]], [[ + ]], [[ istringstream strm( "test" ); return 0; - ]])], - # Ugh, surely bad to assume an error message will contain - # the word "unresolvable", a problem with - # -fvisibility-inlines-hidden and STL headers might cause - # some more obscure message on some platform, and anway, - # the error message could be localised. - [$EGREP -q unresolvable conftest.err; - if test $? -eq 0; then gccvisok=no; else gccvisok=yes; fi],[gccvisok=no - ]) - AC_MSG_RESULT([$gccvisok]) - if test "$gccvisok" = "no"; then - AC_MSG_WARN([Your gcc is not -fvisibility-inlines-hidden safe, disabling that.]) - add_warning "Your gcc is not -fvisibility-inlines-hidden safe, disabling that." - HAVE_GCC_VISIBILITY_BROKEN="TRUE" - fi - - LDFLAGS=$sharedlink_ldflags_save + ]])], + # Ugh, surely bad to assume an error message will contain + # the word "unresolvable", a problem with + # -fvisibility-inlines-hidden and STL headers might cause + # some more obscure message on some platform, and anway, + # the error message could be localised. + [$EGREP -q unresolvable conftest.err; + if test $? -eq 0; then gccvisok=no; else gccvisok=yes; fi],[gccvisok=no + ]) + AC_MSG_RESULT([$gccvisok]) + if test "$gccvisok" = "no"; then + AC_MSG_WARN([Your gcc is not -fvisibility-inlines-hidden safe, disabling that.]) + add_warning "Your gcc is not -fvisibility-inlines-hidden safe, disabling that." + HAVE_GCC_VISIBILITY_BROKEN="TRUE" fi + LDFLAGS=$sharedlink_ldflags_save + # As the below test checks things when linking self-compiled dynamic libraries, it presumably is irrelevant # when we don't make any dynamic libraries? - if test "$DISABLE_DYNLOADING" = "" -a "$HAVE_GCC_VISIBILITY_FEATURE" = "TRUE" -a "$HAVE_GCC_VISIBILITY_BROKEN" != "TRUE"; then + if test "$DISABLE_DYNLOADING" = "" -a "$HAVE_GCC_VISIBILITY_BROKEN" != "TRUE"; then AC_MSG_CHECKING([if gcc is -fvisibility-inlines-hidden safe (Clang bug 11250)]) cat > conftestlib1.cc <<_ACEOF template<typename T> struct S1 { virtual ~S1() {} virtual void f() {} }; @@ -6573,9 +6571,8 @@ _ACEOF fi fi - if test "$HAVE_GCC_VISIBILITY_FEATURE" = "TRUE"; then - AC_MSG_CHECKING([if gcc has a visibility bug with class-level attributes (GCC bug 26905)]) - cat >visibility.cxx <<_ACEOF + AC_MSG_CHECKING([if gcc has a visibility bug with class-level attributes (GCC bug 26905)]) + cat >visibility.cxx <<_ACEOF #pragma GCC visibility push(hidden) struct __attribute__ ((visibility ("default"))) TestStruct { static void Init(); @@ -6584,32 +6581,31 @@ __attribute__ ((visibility ("default"))) void TestFunc() { TestStruct::Init(); } _ACEOF - if ! $CXX $CXXFLAGS $CPPFLAGS -fpic -S visibility.cxx; then - gccvisbroken=yes - else - case "$host_cpu" in - i?86|x86_64) - if test "$_os" = "Darwin" -o "$WITH_MINGW" = "yes"; then + if ! $CXX $CXXFLAGS $CPPFLAGS -fpic -S visibility.cxx; then + gccvisbroken=yes + else + case "$host_cpu" in + i?86|x86_64) + if test "$_os" = "Darwin" -o "$WITH_MINGW" = "yes"; then + gccvisbroken=no + else + if $EGREP -q '@PLT|@GOT' visibility.s || test "$ENABLE_LTO" = "TRUE"; then gccvisbroken=no else - if $EGREP -q '@PLT|@GOT' visibility.s || test "$ENABLE_LTO" = "TRUE"; then - gccvisbroken=no - else - gccvisbroken=yes - fi + gccvisbroken=yes fi - ;; - *) - gccvisbroken=no - ;; - esac - fi - rm -f visibility.s visibility.cxx + fi + ;; + *) + gccvisbroken=no + ;; + esac + fi + rm -f visibility.s visibility.cxx - AC_MSG_RESULT([$gccvisbroken]) - if test "$gccvisbroken" = "yes"; then - AC_MSG_ERROR([Your gcc is not -fvisibility=hidden safe. This is no longer supported.]) - fi + AC_MSG_RESULT([$gccvisbroken]) + if test "$gccvisbroken" = "yes"; then + AC_MSG_ERROR([Your gcc is not -fvisibility=hidden safe. This is no longer supported.]) fi CPPFLAGS="$save_CPPFLAGS" @@ -6617,7 +6613,6 @@ _ACEOF AC_LANG_POP([C++]) fi -AC_SUBST(HAVE_GCC_VISIBILITY_FEATURE) AC_SUBST(HAVE_GCC_VISIBILITY_BROKEN) dnl =================================================================== diff --git a/cppuhelper/test/testcmp/TestComponent.hxx b/cppuhelper/test/testcmp/TestComponent.hxx index 4ce1d93..66979bf 100644 --- a/cppuhelper/test/testcmp/TestComponent.hxx +++ b/cppuhelper/test/testcmp/TestComponent.hxx @@ -29,7 +29,7 @@ #elif defined(CPPUHELPER_TEST_COMPONENT_LIB) # define CPPUHELPER_TEST_COMPONENT_EXPORT extern -#elif defined(__GNUC__) && defined(HAVE_GCC_VISIBILITY_FEATURE) +#elif defined(__GNUC__) # define CPPUHELPER_TEST_COMPONENT_EXPORT extern __attribute__ ((weak)) #else diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx index 47a5ca7..d9b763a 100644 --- a/desktop/source/lib/init.cxx +++ b/desktop/source/lib/init.cxx @@ -2721,7 +2721,7 @@ static int lo_initialize(LibreOfficeKit* pThis, const char* pAppPath, const char // libreofficekit_hook must be exported for dlsym() to find it, // though, at least on iOS. -#if defined(__GNUC__) && defined(HAVE_GCC_VISIBILITY_FEATURE) && defined(DISABLE_DYNLOADING) +#if defined(__GNUC__) && defined(DISABLE_DYNLOADING) __attribute__ ((visibility("default"))) #else SAL_DLLPUBLIC_EXPORT @@ -2741,7 +2741,7 @@ LibreOfficeKit *libreofficekit_hook_2(const char* install_path, const char* user return static_cast<LibreOfficeKit*>(gImpl); } -#if defined(__GNUC__) && defined(HAVE_GCC_VISIBILITY_FEATURE) && defined(DISABLE_DYNLOADING) +#if defined(__GNUC__) && defined(DISABLE_DYNLOADING) __attribute__ ((visibility("default"))) #else SAL_DLLPUBLIC_EXPORT diff --git a/external/clew/source/include/clew/clew.h b/external/clew/source/include/clew/clew.h index b23dc60..7b325d1 100644 --- a/external/clew/source/include/clew/clew.h +++ b/external/clew/source/include/clew/clew.h @@ -1015,10 +1015,8 @@ typedef CL_API_ENTRY void * (CL_API_CALL * PFNCLGETEXTENSIONFUNCTIONADDRESS)(con # ifdef CLEW_BUILD # if defined(_WIN32) # define CLEWAPI extern __declspec(dllexport) -# elif defined(HAVE_GCC_VISIBILITY_FEATURE) -# define CLEWAPI extern __attribute__ ((visibility("default"))) # else -# define CLEWAPI extern +# define CLEWAPI extern __attribute__ ((visibility("default"))) # endif # else # if defined(_WIN32) diff --git a/external/openssl/ExternalProject_openssl.mk b/external/openssl/ExternalProject_openssl.mk index 9ae7a13..aa25c3a 100644 --- a/external/openssl/ExternalProject_openssl.mk +++ b/external/openssl/ExternalProject_openssl.mk @@ -86,9 +86,8 @@ $(call gb_ExternalProject_get_state_target,openssl,build): $(if $(SYSBASE),-I$(SYSBASE)/usr/include -L$(SYSBASE)/usr/lib)) \ $(if $(filter MACOSX,$(OS)),--prefix=/@.__________________________________________________OOO) \ && $(MAKE) build_libs \ - CC="$(CC) -fPIC $(if $(filter-out WNT MACOSX,$(OS)),\ - $(if $(filter TRUE,$(HAVE_GCC_VISIBILITY_FEATURE)),\ - -fvisibility=hidden))" \ + CC="$(CC) -fPIC \ + $(if $(filter-out WNT MACOSX,$(OS)),-fvisibility=hidden)" \ ) endif diff --git a/helpcompiler/source/LuceneHelper.hxx b/helpcompiler/source/LuceneHelper.hxx index 3d7ad35..de7501e 100644 --- a/helpcompiler/source/LuceneHelper.hxx +++ b/helpcompiler/source/LuceneHelper.hxx @@ -15,14 +15,14 @@ #pragma warning(disable : 4068 4263 4264 4266) #endif -#if defined(__GNUC__) && defined(HAVE_GCC_VISIBILITY_FEATURE) +#if defined(__GNUC__) # pragma GCC visibility push (default) #endif #include <CLucene.h> #include <CLucene/analysis/LanguageBasedAnalyzer.h> -#if defined(__GNUC__) && defined(HAVE_GCC_VISIBILITY_FEATURE) +#if defined(__GNUC__) # pragma GCC visibility pop #endif diff --git a/include/sal/types.h b/include/sal/types.h index d72e9ee..3fc2be3 100644 --- a/include/sal/types.h +++ b/include/sal/types.h @@ -255,7 +255,7 @@ typedef void * sal_Handle; # define SAL_CALL __cdecl # define SAL_CALL_ELLIPSE __cdecl #elif defined SAL_UNX -# if defined(__GNUC__) && defined(HAVE_GCC_VISIBILITY_FEATURE) +# if defined(__GNUC__) # if defined(DISABLE_DYNLOADING) # define SAL_DLLPUBLIC_EXPORT __attribute__ ((visibility("hidden"))) # define SAL_JNI_EXPORT __attribute__ ((visibility("default"))) diff --git a/odk/settings/settings.mk b/odk/settings/settings.mk index 1d6ad05..74bd791 100644 --- a/odk/settings/settings.mk +++ b/odk/settings/settings.mk @@ -221,7 +221,7 @@ SDK_JAVA_INCLUDES = -I"$(OO_SDK_JAVA_HOME)/include" -I"$(OO_SDK_JAVA_HOME)/inclu # define for used compiler necessary for UNO CC_DEFINES_JNI=-DUNX -DSOLARIS -DCPPU_ENV=$(CPPU_ENV) -DGCC -CC_DEFINES=-DUNX -DSOLARIS -DSPARC -DCPPU_ENV=$(CPPU_ENV) -DHAVE_GCC_VISIBILITY_FEATURE -DGCC +CC_DEFINES=-DUNX -DSOLARIS -DSPARC -DCPPU_ENV=$(CPPU_ENV) -DGCC CC_OUTPUT_SWITCH=-o LIBO_SDK_LDFLAGS_STDLIBS = @@ -339,7 +339,7 @@ endif SDK_JAVA_INCLUDES = -I"$(OO_SDK_JAVA_HOME)/include" -I"$(OO_SDK_JAVA_HOME)/include/linux" CC_INCLUDES=-I. -I$(OUT)/inc -I$(OUT)/inc/examples -I$(PRJ)/include CC_DEFINES_JNI=-DUNX -DGCC -DLINUX -DCPPU_ENV=$(CPPU_ENV) -CC_DEFINES=-DUNX -DGCC -DLINUX -DCPPU_ENV=$(CPPU_ENV) -DHAVE_GCC_VISIBILITY_FEATURE +CC_DEFINES=-DUNX -DGCC -DLINUX -DCPPU_ENV=$(CPPU_ENV) CC_OUTPUT_SWITCH=-o @@ -425,7 +425,7 @@ CC_FLAGS=-c -fPIC -fno-common $(GCC_ARCH_OPTION) -fvisibility=hidden $(OPT_FLAGS SDK_JAVA_INCLUDES = -I/System/Library/Frameworks/JavaVM.framework/Versions/Current/Headers -I/System/Library/Frameworks/JavaVM.framework/Headers CC_INCLUDES=-I. -I$(OUT)/inc -I$(OUT)/inc/examples -I$(PRJ)/include CC_DEFINES_JNI=-DUNX -DGCC -DMACOSX -DCPPU_ENV=$(CPPU_ENV) -CC_DEFINES=-DUNX -DGCC -DMACOSX -DCPPU_ENV=$(CPPU_ENV) -DHAVE_GCC_VISIBILITY_FEATURE +CC_DEFINES=-DUNX -DGCC -DMACOSX -DCPPU_ENV=$(CPPU_ENV) CC_OUTPUT_SWITCH=-o @@ -531,7 +531,7 @@ CC_FLAGS=-c -g -fPIC -DPIC $(PTHREAD_CFLAGS) -fvisibility=hidden $(OPT_FLAGS) SDK_JAVA_INCLUDES = -I"$(OO_SDK_JAVA_HOME)/include" -I"$(OO_SDK_JAVA_HOME)/include/freebsd" CC_INCLUDES=-I. -I$(OUT)/inc -I$(OUT)/inc/examples -I$(PRJ)/include CC_DEFINES_JNI=-DUNX -DGCC -DFREEBSD -DCPPU_ENV=$(CPPU_ENV) -CC_DEFINES=-DUNX -DGCC -DFREEBSD -DCPPU_ENV=$(CPPU_ENV) -DHAVE_GCC_VISIBILITY_FEATURE +CC_DEFINES=-DUNX -DGCC -DFREEBSD -DCPPU_ENV=$(CPPU_ENV) CC_OUTPUT_SWITCH=-o diff --git a/onlineupdate/source/update/updater/updater.cxx b/onlineupdate/source/update/updater/updater.cxx index 136f060..bb2dc35 100644 --- a/onlineupdate/source/update/updater/updater.cxx +++ b/onlineupdate/source/update/updater/updater.cxx @@ -147,7 +147,7 @@ static bool sUseHardLinks = true; // This variable lives in libbz2. It's declared in bzlib_private.h, so we just // declare it here to avoid including that entire header file. -#if defined(HAVE_GCC_VISIBILITY_FEATURE) +#if defined __GNUC__ extern "C" __attribute__((visibility("default"))) unsigned int BZ2_crc32Table[256]; #elif defined(__SUNPRO_C) || defined(__SUNPRO_CC) extern "C" __global unsigned int BZ2_crc32Table[256]; diff --git a/solenv/gbuild/platform/com_GCC_defs.mk b/solenv/gbuild/platform/com_GCC_defs.mk index 5f00cf4..45b077f 100644 --- a/solenv/gbuild/platform/com_GCC_defs.mk +++ b/solenv/gbuild/platform/com_GCC_defs.mk @@ -101,22 +101,18 @@ gb_CXXFLAGS_COMMON += -Wimplicit-fallthrough endif -ifeq ($(HAVE_GCC_VISIBILITY_FEATURE),TRUE) -gb_VISIBILITY_FLAGS := -DHAVE_GCC_VISIBILITY_FEATURE # If CC or CXX already include -fvisibility=hidden, don't duplicate it ifeq (,$(filter -fvisibility=hidden,$(CC))) -gb__visibility_hidden := -fvisibility=hidden +gb_VISIBILITY_FLAGS := -fvisibility=hidden ifeq ($(COM_IS_CLANG),TRUE) ifneq ($(filter -fsanitize=%,$(CC)),) -gb__visibility_hidden := -fvisibility-ms-compat +gb_VISIBILITY_FLAGS := -fvisibility-ms-compat endif endif -gb_VISIBILITY_FLAGS += $(gb__visibility_hidden) endif ifneq ($(HAVE_GCC_VISIBILITY_BROKEN),TRUE) gb_VISIBILITY_FLAGS_CXX := -fvisibility-inlines-hidden endif -endif gb_CXXFLAGS_COMMON += $(gb_VISIBILITY_FLAGS_CXX) ifeq ($(HAVE_GCC_STACK_PROTECTOR_STRONG),TRUE) diff --git a/ure/source/uretest/Makefile.pln b/ure/source/uretest/Makefile.pln index ad0d42d..e4879c3 100644 --- a/ure/source/uretest/Makefile.pln +++ b/ure/source/uretest/Makefile.pln @@ -88,8 +88,7 @@ out.pln/cppmain.o: cppmain.cc out.pln/cpputypes.cppumaker.flag \ out.pln/types.cppumaker.flag | out.pln g++ -c -o $@ -fpic -fvisibility=hidden -Wall -Wno-ctor-dtor-privacy \ -I $(SDK_HOME)/include -I out.pln/include/cpputypes \ - -I out.pln/include/types -DCPPU_ENV=gcc3 \ - -DHAVE_GCC_VISIBILITY_FEATURE -DLINUX -DUNX $< + -I out.pln/include/types -DCPPU_ENV=gcc3 -DLINUX -DUNX $< out.pln/cpptest.uno.so: out.pln/cpptest.o | out.pln out.pln/lib/libuno_cppu.so \ @@ -101,8 +100,7 @@ out.pln/cpptest.o: cpptest.cc out.pln/cpputypes.cppumaker.flag \ out.pln/types.cppumaker.flag | out.pln g++ -c -o $@ -fpic -fvisibility=hidden -Wall -Wno-ctor-dtor-privacy \ -I $(SDK_HOME)/include -I out.pln/include/cpputypes \ - -I out.pln/include/types -DCPPU_ENV=gcc3 \ - -DHAVE_GCC_VISIBILITY_FEATURE -DLINUX -DUNX $< + -I out.pln/include/types -DCPPU_ENV=gcc3 -DLINUX -DUNX $< out.pln/cppserver.uno.so: out.pln/cppserver.o | out.pln \ @@ -115,8 +113,7 @@ out.pln/cppserver.o: cppserver.cc out.pln/cpputypes.cppumaker.flag \ out.pln/types.cppumaker.flag | out.pln g++ -c -o $@ -fpic -fvisibility=hidden -Wall -Wno-ctor-dtor-privacy \ -I $(SDK_HOME)/include -I out.pln/include/cpputypes \ - -I out.pln/include/types -DCPPU_ENV=gcc3 \ - -DHAVE_GCC_VISIBILITY_FEATURE -DLINUX -DUNX $< + -I out.pln/include/types -DCPPU_ENV=gcc3 -DLINUX -DUNX $< out.pln/cpputypes.cppumaker.flag: | out.pln diff --git a/xmlhelp/source/cxxhelp/provider/resultsetforquery.cxx b/xmlhelp/source/cxxhelp/provider/resultsetforquery.cxx index 74fd3c9..a3feb45 100644 --- a/xmlhelp/source/cxxhelp/provider/resultsetforquery.cxx +++ b/xmlhelp/source/cxxhelp/provider/resultsetforquery.cxx @@ -34,11 +34,11 @@ #pragma warning(disable : 4068 4263 4264 4266) #endif -#if defined(__GNUC__) && defined(HAVE_GCC_VISIBILITY_FEATURE) +#if defined(__GNUC__) # pragma GCC visibility push (default) #endif #include <CLucene.h> -#if defined(__GNUC__) && defined(HAVE_GCC_VISIBILITY_FEATURE) +#if defined(__GNUC__) # pragma GCC visibility pop #endif _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits