Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 116231 | Differences between
and this patch

Collapse All | Expand All

(-)mozilla/configure.in (-31 / +80 lines)
Lines 1036-1044 Link Here
1036
dnl GNU specific defaults
1036
dnl GNU specific defaults
1037
dnl ========================================================
1037
dnl ========================================================
1038
if test "$GNU_CC"; then
1038
if test "$GNU_CC"; then
1039
    MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
1039
    MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-h,$@ -o $@'
1040
    MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
1040
    MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-h,$@ -o $@'
1041
    DSO_LDOPTS='-shared -Wl,-h -Wl,$@'
1041
    DSO_LDOPTS='-shared'
1042
    DSO_CFLAGS=''
1042
    DSO_CFLAGS=''
1043
    DSO_PIC_CFLAGS='-fPIC'
1043
    DSO_PIC_CFLAGS='-fPIC'
1044
    _MOZ_RTTI_FLAGS_ON=${_COMPILER_PREFIX}-frtti
1044
    _MOZ_RTTI_FLAGS_ON=${_COMPILER_PREFIX}-frtti
Lines 1063-1071 Link Here
1063
    _DEFINES_CFLAGS='-include $(DEPTH)/mozilla-config.h -DMOZILLA_CLIENT'
1063
    _DEFINES_CFLAGS='-include $(DEPTH)/mozilla-config.h -DMOZILLA_CLIENT'
1064
    _USE_CPP_INCLUDE_FLAG=1
1064
    _USE_CPP_INCLUDE_FLAG=1
1065
else
1065
else
1066
    MKSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
1066
    MKSHLIB='$(LD) $(DSO_LDOPTS) -h $@ -o $@'
1067
    MKCSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
1067
    MKCSHLIB='$(LD) $(DSO_LDOPTS) -h $@ -o $@'
1068
    DSO_LDOPTS='-shared -h $@'
1068
    DSO_LDOPTS='-shared'
1069
    DSO_CFLAGS=''
1069
    DSO_CFLAGS=''
1070
    DSO_PIC_CFLAGS='-KPIC'
1070
    DSO_PIC_CFLAGS='-KPIC'
1071
    _DEFINES_CFLAGS='$(ACDEFINES) -D_MOZILLA_CONFIG_H_ -DMOZILLA_CLIENT'
1071
    _DEFINES_CFLAGS='$(ACDEFINES) -D_MOZILLA_CONFIG_H_ -DMOZILLA_CLIENT'
Lines 1292-1300 Link Here
1292
1292
1293
*-beos*)
1293
*-beos*)
1294
    no_x=yes
1294
    no_x=yes
1295
    MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -o $@'
1295
    MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -Wl,-h,$@ -o $@'
1296
    _PLATFORM_DEFAULT_TOOLKIT="beos"
1296
    _PLATFORM_DEFAULT_TOOLKIT="beos"
1297
    DSO_LDOPTS='-nostart -Wl,-h -Wl,$@'
1297
    DSO_LDOPTS='-nostart'
1298
    TK_LIBS='-lbe -lroot'
1298
    TK_LIBS='-lbe -lroot'
1299
    LIBS="$LIBS -lbe"
1299
    LIBS="$LIBS -lbe"
1300
    if test "$COMPILE_ENVIRONMENT"; then
1300
    if test "$COMPILE_ENVIRONMENT"; then
Lines 1379-1394 Link Here
1379
*-hpux*)
1379
*-hpux*)
1380
    DLL_SUFFIX=".sl"
1380
    DLL_SUFFIX=".sl"
1381
    if test ! "$GNU_CC"; then
1381
    if test ! "$GNU_CC"; then
1382
    	DSO_LDOPTS='-b -Wl,+s -L$(DIST)/bin'
1382
    	DSO_LDOPTS='-b -Wl,+s'
1383
    	DSO_CFLAGS=""
1383
    	DSO_CFLAGS=""
1384
    	DSO_PIC_CFLAGS="+Z"
1384
    	DSO_PIC_CFLAGS="+Z"
1385
    	MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -o $@'
1385
    	MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -L$(DIST)/bin -o $@'
1386
    	MKCSHLIB='$(LD) -b +s -L$(DIST)/bin -o $@'
1386
    	MKCSHLIB='$(LD) -b +s -L$(DIST)/bin -o $@'
1387
        CXXFLAGS="$CXXFLAGS -Wc,-ansi_for_scope,on"
1387
        CXXFLAGS="$CXXFLAGS -Wc,-ansi_for_scope,on"
1388
    else
1388
    else
1389
    	DSO_LDOPTS='-b -E +s -L$(DIST)/bin -L$(DIST)/lib'
1389
        DSO_LDOPTS='-b -E +s'
1390
    	MKSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
1390
        MKSHLIB='$(LD) $(DSO_LDOPTS) -L$(DIST)/bin -L$(DIST)/lib -o $@'
1391
    	MKCSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
1391
        MKCSHLIB='$(LD) $(DSO_LDOPTS) -L$(DIST)/bin -L$(DIST)/lib -o $@'
1392
    fi
1392
    fi
1393
    MOZ_POST_PROGRAM_COMMAND='chatr +s enable'
1393
    MOZ_POST_PROGRAM_COMMAND='chatr +s enable'
1394
    AC_DEFINE(NSCAP_DISABLE_DEBUG_PTR_TYPES)
1394
    AC_DEFINE(NSCAP_DISABLE_DEBUG_PTR_TYPES)
Lines 1397-1407 Link Here
1397
*-irix5*)
1397
*-irix5*)
1398
    AC_DEFINE(IRIX)
1398
    AC_DEFINE(IRIX)
1399
    DSO_LDOPTS='-elf -shared'
1399
    DSO_LDOPTS='-elf -shared'
1400
1400
    if test "$GNU_CC"; then
1401
    if test "$GNU_CC"; then
1402
       MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
1403
       MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
1401
       MKSHLIB_FORCE_ALL='-Wl,-all'
1404
       MKSHLIB_FORCE_ALL='-Wl,-all'
1402
       MKSHLIB_UNFORCE_ALL='-Wl,-none'
1405
       MKSHLIB_UNFORCE_ALL='-Wl,-none'
1403
       CXXFLAGS="$CXXFLAGS -D_LANGUAGE_C_PLUS_PLUS"
1406
       CXXFLAGS="$CXXFLAGS -D_LANGUAGE_C_PLUS_PLUS"
1404
    else
1407
    else
1408
       MKSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
1409
       MKCSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
1405
       MKSHLIB_FORCE_ALL='-all'
1410
       MKSHLIB_FORCE_ALL='-all'
1406
       MKSHLIB_UNFORCE_ALL='-none'
1411
       MKSHLIB_UNFORCE_ALL='-none'
1407
    fi
1412
    fi
Lines 1755-1761 Link Here
1755
    if $CC -E - -dM </dev/null | grep __ELF__ >/dev/null; then
1760
    if $CC -E - -dM </dev/null | grep __ELF__ >/dev/null; then
1756
        DLL_SUFFIX=".so"
1761
        DLL_SUFFIX=".so"
1757
        DSO_PIC_CFLAGS='-fPIC -DPIC'
1762
        DSO_PIC_CFLAGS='-fPIC -DPIC'
1758
        DSO_LDOPTS='-shared -Wl,-soname,lib$(LIBRARY_NAME)$(DLL_SUFFIX)'
1763
        DSO_LDOPTS='-shared'
1759
	BIN_FLAGS='-Wl,--export-dynamic'
1764
	BIN_FLAGS='-Wl,--export-dynamic'
1760
    else
1765
    else
1761
    	DSO_PIC_CFLAGS='-fPIC -DPIC'
1766
    	DSO_PIC_CFLAGS='-fPIC -DPIC'
Lines 1768-1773 Link Here
1768
    if test "$LIBRUNPATH"; then
1773
    if test "$LIBRUNPATH"; then
1769
	DSO_LDOPTS="-Wl,-R$LIBRUNPATH $DSO_LDOPTS"
1774
	DSO_LDOPTS="-Wl,-R$LIBRUNPATH $DSO_LDOPTS"
1770
    fi
1775
    fi
1776
    MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-soname,lib$(LIBRARY_NAME)$(DLL_SUFFIX) -o $@'
1777
    MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-soname,lib$(LIBRARY_NAME)$(DLL_SUFFIX) -o $@'
1771
    ;;
1778
    ;;
1772
1779
1773
*-nto*) 
1780
*-nto*) 
Lines 1931-1947 Link Here
1931
1938
1932
alpha*-*-osf*)
1939
alpha*-*-osf*)
1933
    if test "$GNU_CC"; then
1940
    if test "$GNU_CC"; then
1934
	DSO_LDOPTS='-shared -Wl,-soname -Wl,$@'
1941
      MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-soname,$@ -o $@'
1942
      MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-soname,$@ -o $@'
1943
1935
    else
1944
    else
1936
	MOZ_DEBUG_FLAGS='-g'
1945
	MOZ_DEBUG_FLAGS='-g'
1937
	ASFLAGS='-I$(topsrcdir)/xpcom/reflect/xptcall/public -g'
1946
	ASFLAGS='-I$(topsrcdir)/xpcom/reflect/xptcall/public -g'
1938
	CFLAGS="$CFLAGS -ieee"
1947
	CFLAGS="$CFLAGS -ieee"
1939
	CXXFLAGS="$CXXFLAGS "'-noexceptions -ieee  -ptr $(DIST)/cxx_repository'
1948
	CXXFLAGS="$CXXFLAGS "'-noexceptions -ieee  -ptr $(DIST)/cxx_repository'
1940
	DSO_LDOPTS='-shared -msym -expect_unresolved \* -soname $@ -update_registry $(DIST)/so_locations'
1949
	DSO_LDOPTS='-shared -msym -expect_unresolved \* -update_registry $(DIST)/so_locations'
1941
	DSO_CFLAGS=
1950
	DSO_CFLAGS=
1942
	DSO_PIC_CFLAGS=
1951
	DSO_PIC_CFLAGS=
1943
	MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
1952
	MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -soname $@ -o $@'
1944
	MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
1953
	MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -soname $@ -o $@'
1945
	MKSHLIB_FORCE_ALL='-all'
1954
	MKSHLIB_FORCE_ALL='-all'
1946
	MKSHLIB_UNFORCE_ALL='-none'
1955
	MKSHLIB_UNFORCE_ALL='-none'
1947
	dnl Might fix the libxpcom.so breakage on this platform as well....
1956
	dnl Might fix the libxpcom.so breakage on this platform as well....
Lines 1973-1979 Link Here
1973
    AC_DEFINE(NSCAP_DISABLE_DEBUG_PTR_TYPES)
1982
    AC_DEFINE(NSCAP_DISABLE_DEBUG_PTR_TYPES)
1974
    CXXFLAGS="$CXXFLAGS -I/usr/include/CC"
1983
    CXXFLAGS="$CXXFLAGS -I/usr/include/CC"
1975
    if test ! "$GNU_CC"; then
1984
    if test ! "$GNU_CC"; then
1976
       DSO_LDOPTS='-G -h $@'
1985
       DSO_LDOPTS='-G'
1977
    fi
1986
    fi
1978
    ;;
1987
    ;;
1979
1988
Lines 1989-1999 Link Here
1989
       CXXFLAGS="$CXXFLAGS -xbuiltin=%all -features=tmplife"
1998
       CXXFLAGS="$CXXFLAGS -xbuiltin=%all -features=tmplife"
1990
       LDFLAGS="-xildoff -zlazyload -zcombreloc $LDFLAGS"
1999
       LDFLAGS="-xildoff -zlazyload -zcombreloc $LDFLAGS"
1991
       MOZ_OPTIMIZE_FLAGS="-xO4"
2000
       MOZ_OPTIMIZE_FLAGS="-xO4"
1992
       MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_FLAGS) $(DSO_LDOPTS) -o $@'
2001
       MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_FLAGS) $(DSO_LDOPTS) -h $@ -o $@'
1993
       MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_FLAGS) -G -Wl,-z -Wl,muldefs -o $@'
2002
       KCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_FLAGS) -G -Wl,-z -Wl,muldefs -h $@ -o $@'
1994
       MKSHLIB_FORCE_ALL='-Qoption ld -z,allextract'
2003
       MKSHLIB_FORCE_ALL='-Qoption ld -z,allextract'
1995
       MKSHLIB_UNFORCE_ALL=''
2004
       MKSHLIB_UNFORCE_ALL=''
1996
       DSO_LDOPTS='-G -Qoption ld -z,muldefs -h $@'
2005
       DSO_LDOPTS='-G -Qoption ld -z,muldefs'
1997
       AR_LIST="$AR t"
2006
       AR_LIST="$AR t"
1998
       AR_EXTRACT="$AR x"
2007
       AR_EXTRACT="$AR x"
1999
       AR_DELETE="$AR d"
2008
       AR_DELETE="$AR d"
Lines 2019-2025 Link Here
2019
        AC_MSG_RESULT([$_res])
2028
        AC_MSG_RESULT([$_res])
2020
    else
2029
    else
2021
       ASFLAGS="$ASFLAGS -fPIC"
2030
       ASFLAGS="$ASFLAGS -fPIC"
2022
       DSO_LDOPTS='-G -h $@'
2031
       DSO_LDOPTS='-G'
2023
       _WARNINGS_CFLAGS=''
2032
       _WARNINGS_CFLAGS=''
2024
       _WARNINGS_CXXFLAGS=''
2033
       _WARNINGS_CXXFLAGS=''
2025
       if test "$OS_RELEASE" = "5.3"; then
2034
       if test "$OS_RELEASE" = "5.3"; then
Lines 2378-2385 Link Here
2378
                  fi
2387
                  fi
2379
                  rm -f conftest.[cs]
2388
                  rm -f conftest.[cs]
2380
                 ])
2389
                 ])
2381
   if test "$ac_cv_visibility_hidden" = "yes"; then
2390
  if test "$ac_cv_visibility_hidden" = "yes"; then
2382
      AC_DEFINE(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE)
2391
    AC_DEFINE(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE)
2392
2393
    AC_CACHE_CHECK(for visibility(default) attribute,
2394
                   ac_cv_visibility_default,
2395
                   [cat > conftest.c <<EOF
2396
                    int foo __attribute__ ((visibility ("default"))) = 1;
2397
EOF
2398
                    ac_cv_visibility_default=no
2399
                    if ${CC-cc} -fvisibility=hidden -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then
2400
                      if ! grep '\.hidden.*foo' conftest.s >/dev/null; then
2401
                        ac_cv_visibility_default=yes
2402
                      fi
2403
                    fi
2404
                    rm -f conftest.[cs]
2405
                   ])
2406
    if test "$ac_cv_visibility_default" = "yes"; then
2407
      AC_DEFINE(HAVE_VISIBILITY_ATTRIBUTE)
2408
2383
      AC_CACHE_CHECK(for visibility pragma support,
2409
      AC_CACHE_CHECK(for visibility pragma support,
2384
                     ac_cv_visibility_pragma,
2410
                     ac_cv_visibility_pragma,
2385
                     [cat > conftest.c <<EOF
2411
                     [cat > conftest.c <<EOF
Lines 2399-2410 Link Here
2399
                      rm -f conftest.[cs]
2425
                      rm -f conftest.[cs]
2400
                    ])
2426
                    ])
2401
      if test "$ac_cv_visibility_pragma" = "yes"; then
2427
      if test "$ac_cv_visibility_pragma" = "yes"; then
2402
        AC_DEFINE(HAVE_VISIBILITY_PRAGMA)
2428
        AC_CACHE_CHECK(For x86_64 gcc visibility bug with builtins (GCC bug 20297),
2403
        VISIBILITY_FLAGS='-I$(DIST)/include/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h'
2429
                       ac_cv_have_visibility_builtin_bug,
2404
        WRAP_SYSTEM_INCLUDES=1
2430
                       [cat > conftest.c <<EOF
2405
      fi
2431
#pragma GCC visibility push(hidden)
2406
   fi
2432
#pragma GCC visibility push(default)
2407
fi     # GNU_CC
2433
#include <string.h>
2434
#pragma GCC visibility pop
2435
2436
__attribute__ ((visibility ("default"))) void Func() {
2437
  char c[[100]];
2438
  memset(c, 0, sizeof(c));
2439
}
2440
EOF
2441
                       ac_cv_have_visibility_builtin_bug=no
2442
                       if ! ${CC-cc} ${DSO_PIC_CFLAGS} ${DSO_LDOPTS} -O2 -o conftest.so conftest.c >/dev/null 2>&1; then
2443
                         ac_cv_have_visibility_builtin_bug=yes
2444
                       fi
2445
                       rm -f conftest.{c,so}
2446
                       ])
2447
        if test "$ac_cv_have_visibility_builtin_bug" = "no"; then
2448
          VISIBILITY_FLAGS='-I$(DIST)/include/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h'
2449
          WRAP_SYSTEM_INCLUDES=1
2450
        else
2451
          VISIBILITY_FLAGS='-fvisibility=hidden -fvisibility-inlines-hidden'
2452
        fi # have visibility pragma bug
2453
      fi   # have visibility pragma
2454
    fi     # have visibility(default) attribute
2455
  fi       # have visibility(hidden) attribute
2456
fi         # GNU_CC
2408
2457
2409
AC_SUBST(WRAP_SYSTEM_INCLUDES)
2458
AC_SUBST(WRAP_SYSTEM_INCLUDES)
2410
AC_SUBST(VISIBILITY_FLAGS)
2459
AC_SUBST(VISIBILITY_FLAGS)
(-)mozilla/js/src/jstypes.h (-1 / +1 lines)
Lines 109-115 Link Here
109
109
110
#else /* Unix */
110
#else /* Unix */
111
111
112
#ifdef HAVE_VISIBILITY_PRAGMA
112
#ifdef HAVE_VISIBILITY_ATTRIBUTE
113
#define JS_EXTERNAL_VIS __attribute__((visibility ("default")))
113
#define JS_EXTERNAL_VIS __attribute__((visibility ("default")))
114
#else
114
#else
115
#define JS_EXTERNAL_VIS
115
#define JS_EXTERNAL_VIS
(-)mozilla/modules/libreg/include/NSReg.h (-1 / +1 lines)
Lines 129-135 Link Here
129
  #endif
129
  #endif
130
#elif defined XP_MAC
130
#elif defined XP_MAC
131
  #define VR_INTERFACE(__x)  __declspec(export) __x
131
  #define VR_INTERFACE(__x)  __declspec(export) __x
132
#elif defined (HAVE_VISIBILITY_PRAGMA)
132
#elif defined (HAVE_VISIBILITY_ATTRIBUTE)
133
  #define VR_INTERFACE(type)     __attribute__ ((visibility ("default"))) type
133
  #define VR_INTERFACE(type)     __attribute__ ((visibility ("default"))) type
134
#else
134
#else
135
  #define VR_INTERFACE(type)     type
135
  #define VR_INTERFACE(type)     type
(-)mozilla/modules/zlib/src/mozzconf.h (-1 / +1 lines)
Lines 41-47 Link Here
41
#undef ZLIB_DLL
41
#undef ZLIB_DLL
42
#endif
42
#endif
43
43
44
#ifdef HAVE_VISIBILITY_PRAGMA
44
#ifdef HAVE_VISIBILITY_ATTRIBUTE
45
#define ZEXTERN __attribute__((visibility ("default"))) extern
45
#define ZEXTERN __attribute__((visibility ("default"))) extern
46
#endif
46
#endif
47
47
(-)mozilla/xpcom/base/nscore.h (-1 / +1 lines)
Lines 105-111 Link Here
105
#define NS_VISIBILITY_HIDDEN
105
#define NS_VISIBILITY_HIDDEN
106
#endif
106
#endif
107
107
108
#if defined(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE) && defined(HAVE_VISIBILITY_PRAGMA)
108
#if defined(HAVE_VISIBILITY_ATTRIBUTE)
109
#define NS_VISIBILITY_DEFAULT __attribute__ ((visibility ("default")))
109
#define NS_VISIBILITY_DEFAULT __attribute__ ((visibility ("default")))
110
#else
110
#else
111
#define NS_VISIBILITY_DEFAULT
111
#define NS_VISIBILITY_DEFAULT

Return to bug 116231