Magellan Linux

Annotation of /trunk/mozilla-thunderbird/patches/mozilla-firefox-1.5.0.4-visibility-pragma.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 153 - (hide annotations) (download)
Tue May 8 20:52:56 2007 UTC (17 years, 1 month ago) by niro
File size: 10955 byte(s)
-import

1 niro 153 diff -Nur mozilla/configure.in mozilla.bug307168/configure.in
2     --- mozilla/configure.in 2005-10-04 05:53:49.000000000 +0000
3     +++ mozilla.bug307168/configure.in 2005-12-06 16:42:46.000000000 +0000
4     @@ -1036,9 +1036,9 @@
5     dnl GNU specific defaults
6     dnl ========================================================
7     if test "$GNU_CC"; then
8     - MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
9     - MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
10     - DSO_LDOPTS='-shared -Wl,-h -Wl,$@'
11     + MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-h,$@ -o $@'
12     + MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-h,$@ -o $@'
13     + DSO_LDOPTS='-shared'
14     DSO_CFLAGS=''
15     DSO_PIC_CFLAGS='-fPIC'
16     _MOZ_RTTI_FLAGS_ON=${_COMPILER_PREFIX}-frtti
17     @@ -1063,9 +1063,9 @@
18     _DEFINES_CFLAGS='-include $(DEPTH)/mozilla-config.h -DMOZILLA_CLIENT'
19     _USE_CPP_INCLUDE_FLAG=1
20     else
21     - MKSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
22     - MKCSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
23     - DSO_LDOPTS='-shared -h $@'
24     + MKSHLIB='$(LD) $(DSO_LDOPTS) -h $@ -o $@'
25     + MKCSHLIB='$(LD) $(DSO_LDOPTS) -h $@ -o $@'
26     + DSO_LDOPTS='-shared'
27     DSO_CFLAGS=''
28     DSO_PIC_CFLAGS='-KPIC'
29     _DEFINES_CFLAGS='$(ACDEFINES) -D_MOZILLA_CONFIG_H_ -DMOZILLA_CLIENT'
30     @@ -1292,9 +1292,9 @@
31    
32     *-beos*)
33     no_x=yes
34     - MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -o $@'
35     + MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -Wl,-h,$@ -o $@'
36     _PLATFORM_DEFAULT_TOOLKIT="beos"
37     - DSO_LDOPTS='-nostart -Wl,-h -Wl,$@'
38     + DSO_LDOPTS='-nostart'
39     TK_LIBS='-lbe -lroot'
40     LIBS="$LIBS -lbe"
41     if test "$COMPILE_ENVIRONMENT"; then
42     @@ -1379,16 +1379,16 @@
43     *-hpux*)
44     DLL_SUFFIX=".sl"
45     if test ! "$GNU_CC"; then
46     - DSO_LDOPTS='-b -Wl,+s -L$(DIST)/bin'
47     + DSO_LDOPTS='-b -Wl,+s'
48     DSO_CFLAGS=""
49     DSO_PIC_CFLAGS="+Z"
50     - MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -o $@'
51     + MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -L$(DIST)/bin -o $@'
52     MKCSHLIB='$(LD) -b +s -L$(DIST)/bin -o $@'
53     CXXFLAGS="$CXXFLAGS -Wc,-ansi_for_scope,on"
54     else
55     - DSO_LDOPTS='-b -E +s -L$(DIST)/bin -L$(DIST)/lib'
56     - MKSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
57     - MKCSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
58     + DSO_LDOPTS='-b -E +s'
59     + MKSHLIB='$(LD) $(DSO_LDOPTS) -L$(DIST)/bin -L$(DIST)/lib -o $@'
60     + MKCSHLIB='$(LD) $(DSO_LDOPTS) -L$(DIST)/bin -L$(DIST)/lib -o $@'
61     fi
62     MOZ_POST_PROGRAM_COMMAND='chatr +s enable'
63     AC_DEFINE(NSCAP_DISABLE_DEBUG_PTR_TYPES)
64     @@ -1397,11 +1397,16 @@
65     *-irix5*)
66     AC_DEFINE(IRIX)
67     DSO_LDOPTS='-elf -shared'
68     +
69     if test "$GNU_CC"; then
70     + MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
71     + MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
72     MKSHLIB_FORCE_ALL='-Wl,-all'
73     MKSHLIB_UNFORCE_ALL='-Wl,-none'
74     CXXFLAGS="$CXXFLAGS -D_LANGUAGE_C_PLUS_PLUS"
75     else
76     + MKSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
77     + MKCSHLIB='$(LD) $(DSO_LDOPTS) -o $@'
78     MKSHLIB_FORCE_ALL='-all'
79     MKSHLIB_UNFORCE_ALL='-none'
80     fi
81     @@ -1755,7 +1760,7 @@
82     if $CC -E - -dM </dev/null | grep __ELF__ >/dev/null; then
83     DLL_SUFFIX=".so"
84     DSO_PIC_CFLAGS='-fPIC -DPIC'
85     - DSO_LDOPTS='-shared -Wl,-soname,lib$(LIBRARY_NAME)$(DLL_SUFFIX)'
86     + DSO_LDOPTS='-shared'
87     BIN_FLAGS='-Wl,--export-dynamic'
88     else
89     DSO_PIC_CFLAGS='-fPIC -DPIC'
90     @@ -1768,6 +1773,8 @@
91     if test "$LIBRUNPATH"; then
92     DSO_LDOPTS="-Wl,-R$LIBRUNPATH $DSO_LDOPTS"
93     fi
94     + MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-soname,lib$(LIBRARY_NAME)$(DLL_SUFFIX) -o $@'
95     + MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-soname,lib$(LIBRARY_NAME)$(DLL_SUFFIX) -o $@'
96     ;;
97    
98     *-nto*)
99     @@ -1931,17 +1938,19 @@
100    
101     alpha*-*-osf*)
102     if test "$GNU_CC"; then
103     - DSO_LDOPTS='-shared -Wl,-soname -Wl,$@'
104     + MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-soname,$@ -o $@'
105     + MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -Wl,-soname,$@ -o $@'
106     +
107     else
108     MOZ_DEBUG_FLAGS='-g'
109     ASFLAGS='-I$(topsrcdir)/xpcom/reflect/xptcall/public -g'
110     CFLAGS="$CFLAGS -ieee"
111     CXXFLAGS="$CXXFLAGS "'-noexceptions -ieee -ptr $(DIST)/cxx_repository'
112     - DSO_LDOPTS='-shared -msym -expect_unresolved \* -soname $@ -update_registry $(DIST)/so_locations'
113     + DSO_LDOPTS='-shared -msym -expect_unresolved \* -update_registry $(DIST)/so_locations'
114     DSO_CFLAGS=
115     DSO_PIC_CFLAGS=
116     - MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
117     - MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
118     + MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -soname $@ -o $@'
119     + MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -soname $@ -o $@'
120     MKSHLIB_FORCE_ALL='-all'
121     MKSHLIB_UNFORCE_ALL='-none'
122     dnl Might fix the libxpcom.so breakage on this platform as well....
123     @@ -1973,7 +1982,7 @@
124     AC_DEFINE(NSCAP_DISABLE_DEBUG_PTR_TYPES)
125     CXXFLAGS="$CXXFLAGS -I/usr/include/CC"
126     if test ! "$GNU_CC"; then
127     - DSO_LDOPTS='-G -h $@'
128     + DSO_LDOPTS='-G'
129     fi
130     ;;
131    
132     @@ -1989,11 +1998,11 @@
133     CXXFLAGS="$CXXFLAGS -xbuiltin=%all -features=tmplife"
134     LDFLAGS="-xildoff -zlazyload -zcombreloc $LDFLAGS"
135     MOZ_OPTIMIZE_FLAGS="-xO4"
136     - MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_FLAGS) $(DSO_LDOPTS) -o $@'
137     - MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_FLAGS) -G -Wl,-z -Wl,muldefs -o $@'
138     + MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_FLAGS) $(DSO_LDOPTS) -h $@ -o $@'
139     + KCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_FLAGS) -G -Wl,-z -Wl,muldefs -h $@ -o $@'
140     MKSHLIB_FORCE_ALL='-Qoption ld -z,allextract'
141     MKSHLIB_UNFORCE_ALL=''
142     - DSO_LDOPTS='-G -Qoption ld -z,muldefs -h $@'
143     + DSO_LDOPTS='-G -Qoption ld -z,muldefs'
144     AR_LIST="$AR t"
145     AR_EXTRACT="$AR x"
146     AR_DELETE="$AR d"
147     @@ -2019,7 +2028,7 @@
148     AC_MSG_RESULT([$_res])
149     else
150     ASFLAGS="$ASFLAGS -fPIC"
151     - DSO_LDOPTS='-G -h $@'
152     + DSO_LDOPTS='-G'
153     _WARNINGS_CFLAGS=''
154     _WARNINGS_CXXFLAGS=''
155     if test "$OS_RELEASE" = "5.3"; then
156     @@ -2378,8 +2387,25 @@
157     fi
158     rm -f conftest.[cs]
159     ])
160     - if test "$ac_cv_visibility_hidden" = "yes"; then
161     - AC_DEFINE(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE)
162     + if test "$ac_cv_visibility_hidden" = "yes"; then
163     + AC_DEFINE(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE)
164     +
165     + AC_CACHE_CHECK(for visibility(default) attribute,
166     + ac_cv_visibility_default,
167     + [cat > conftest.c <<EOF
168     + int foo __attribute__ ((visibility ("default"))) = 1;
169     +EOF
170     + ac_cv_visibility_default=no
171     + if ${CC-cc} -fvisibility=hidden -Werror -S conftest.c -o conftest.s >/dev/null 2>&1; then
172     + if ! grep '\.hidden.*foo' conftest.s >/dev/null; then
173     + ac_cv_visibility_default=yes
174     + fi
175     + fi
176     + rm -f conftest.[cs]
177     + ])
178     + if test "$ac_cv_visibility_default" = "yes"; then
179     + AC_DEFINE(HAVE_VISIBILITY_ATTRIBUTE)
180     +
181     AC_CACHE_CHECK(for visibility pragma support,
182     ac_cv_visibility_pragma,
183     [cat > conftest.c <<EOF
184     @@ -2399,12 +2425,35 @@
185     rm -f conftest.[cs]
186     ])
187     if test "$ac_cv_visibility_pragma" = "yes"; then
188     - AC_DEFINE(HAVE_VISIBILITY_PRAGMA)
189     - VISIBILITY_FLAGS='-I$(DIST)/include/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h'
190     - WRAP_SYSTEM_INCLUDES=1
191     - fi
192     - fi
193     -fi # GNU_CC
194     + AC_CACHE_CHECK(For x86_64 gcc visibility bug with builtins (GCC bug 20297),
195     + ac_cv_have_visibility_builtin_bug,
196     + [cat > conftest.c <<EOF
197     +#pragma GCC visibility push(hidden)
198     +#pragma GCC visibility push(default)
199     +#include <string.h>
200     +#pragma GCC visibility pop
201     +
202     +__attribute__ ((visibility ("default"))) void Func() {
203     + char c[[100]];
204     + memset(c, 0, sizeof(c));
205     +}
206     +EOF
207     + ac_cv_have_visibility_builtin_bug=no
208     + if ! ${CC-cc} ${DSO_PIC_CFLAGS} ${DSO_LDOPTS} -O2 -o conftest.so conftest.c >/dev/null 2>&1; then
209     + ac_cv_have_visibility_builtin_bug=yes
210     + fi
211     + rm -f conftest.{c,so}
212     + ])
213     + if test "$ac_cv_have_visibility_builtin_bug" = "no"; then
214     + VISIBILITY_FLAGS='-I$(DIST)/include/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h'
215     + WRAP_SYSTEM_INCLUDES=1
216     + else
217     + VISIBILITY_FLAGS='-fvisibility=hidden -fvisibility-inlines-hidden'
218     + fi # have visibility pragma bug
219     + fi # have visibility pragma
220     + fi # have visibility(default) attribute
221     + fi # have visibility(hidden) attribute
222     +fi # GNU_CC
223    
224     AC_SUBST(WRAP_SYSTEM_INCLUDES)
225     AC_SUBST(VISIBILITY_FLAGS)
226     diff -Nur mozilla/js/src/jstypes.h mozilla.bug307168/js/src/jstypes.h
227     --- mozilla/js/src/jstypes.h 2005-09-18 04:35:05.000000000 +0000
228     +++ mozilla.bug307168/js/src/jstypes.h 2005-12-06 16:35:57.000000000 +0000
229     @@ -109,7 +109,7 @@
230    
231     #else /* Unix */
232    
233     -#ifdef HAVE_VISIBILITY_PRAGMA
234     +#ifdef HAVE_VISIBILITY_ATTRIBUTE
235     #define JS_EXTERNAL_VIS __attribute__((visibility ("default")))
236     #else
237     #define JS_EXTERNAL_VIS
238     diff -Nur mozilla/modules/libreg/include/NSReg.h mozilla.bug307168/modules/libreg/include/NSReg.h
239     --- mozilla/modules/libreg/include/NSReg.h 2004-12-15 05:52:38.000000000 +0000
240     +++ mozilla.bug307168/modules/libreg/include/NSReg.h 2005-12-06 16:35:57.000000000 +0000
241     @@ -129,7 +129,7 @@
242     #endif
243     #elif defined XP_MAC
244     #define VR_INTERFACE(__x) __declspec(export) __x
245     -#elif defined (HAVE_VISIBILITY_PRAGMA)
246     +#elif defined (HAVE_VISIBILITY_ATTRIBUTE)
247     #define VR_INTERFACE(type) __attribute__ ((visibility ("default"))) type
248     #else
249     #define VR_INTERFACE(type) type
250     diff -Nur mozilla/modules/zlib/src/mozzconf.h mozilla.bug307168/modules/zlib/src/mozzconf.h
251     --- mozilla/modules/zlib/src/mozzconf.h 2005-08-04 19:14:14.000000000 +0000
252     +++ mozilla.bug307168/modules/zlib/src/mozzconf.h 2005-12-06 16:35:57.000000000 +0000
253     @@ -41,7 +41,7 @@
254     #undef ZLIB_DLL
255     #endif
256    
257     -#ifdef HAVE_VISIBILITY_PRAGMA
258     +#ifdef HAVE_VISIBILITY_ATTRIBUTE
259     #define ZEXTERN __attribute__((visibility ("default"))) extern
260     #endif
261    
262     diff -Nur mozilla/xpcom/base/nscore.h mozilla.bug307168/xpcom/base/nscore.h
263     --- mozilla/xpcom/base/nscore.h 2005-07-21 22:15:00.000000000 +0000
264     +++ mozilla.bug307168/xpcom/base/nscore.h 2005-12-06 16:35:57.000000000 +0000
265     @@ -105,7 +105,7 @@
266     #define NS_VISIBILITY_HIDDEN
267     #endif
268    
269     -#if defined(HAVE_VISIBILITY_HIDDEN_ATTRIBUTE) && defined(HAVE_VISIBILITY_PRAGMA)
270     +#if defined(HAVE_VISIBILITY_ATTRIBUTE)
271     #define NS_VISIBILITY_DEFAULT __attribute__ ((visibility ("default")))
272     #else
273     #define NS_VISIBILITY_DEFAULT