1 |
polynomial-c 10/07/31 23:09:30 |
2 |
|
3 |
Added: 000_flex-configure-LANG.patch |
4 |
001_firefox-1.0-prdtoa.patch |
5 |
002_seamonkey-disable-visibility.patch |
6 |
003_firefox-arm.patch 004_mozilla-hppa.patch |
7 |
005_mozilla-firefox-1.1a2-ia64.patch |
8 |
007_seamonkey-1.0.1-dumpstack.patch |
9 |
008_seamonkey-gentoo-pkgconfig.patch |
10 |
010_visibility-gcc-4.2.patch |
11 |
016_firefox-nss-3.12-asneeded.patch |
12 |
020_firefox-0.7.3-default-plugin-less-annoying.patch |
13 |
021_seamonkey-1.1-include-cairo-libs.patch |
14 |
030_pango-cairo-1.patch |
15 |
031_firefox-1.1-uriloader-1.patch |
16 |
032_firefox-2.0_ppc64-1.patch |
17 |
033_firefox-2.0_ppc_powerpc.patch |
18 |
040_firefox-2.0_arm.patch |
19 |
050_respect-host-variable.patch |
20 |
055_firefox-2.0_gfbsd-pthreads.patch |
21 |
063_mozilla-rpath-3.patch |
22 |
064_mozilla-1.7.10-nsplugins-v2.patch |
23 |
080_gcc-4.4-elif.patch 090_xul-gcc4.3.patch |
24 |
095_glibc_maxpathlen.patch |
25 |
101_thunderbird-0.7.3-gnome-uriloader.patch |
26 |
220_seamonkey-gentoo-homepage.patch |
27 |
301_mozilla-1.7.3-gnome-vfs-default-app.patch |
28 |
303_mozilla-1.7.13-as-needed.patch |
29 |
304_mozilla-1.7.5-g-application-name.patch |
30 |
Log: |
31 |
Added old patches for future reference. |
32 |
|
33 |
Revision Changes Path |
34 |
1.1 src/patchsets/seamonkey/1.1.18/000_flex-configure-LANG.patch |
35 |
|
36 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/000_flex-configure-LANG.patch?rev=1.1&view=markup |
37 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/000_flex-configure-LANG.patch?rev=1.1&content-type=text/plain |
38 |
|
39 |
Index: 000_flex-configure-LANG.patch |
40 |
=================================================================== |
41 |
The LANG vars aren't reset early enough so when sed tries to use [a-zA-Z] in |
42 |
option parsing, it may break. |
43 |
|
44 |
http://bugs.gentoo.org/103483 |
45 |
|
46 |
--- configure |
47 |
+++ configure |
48 |
@@ -54,6 +54,16 @@ |
49 |
infodir='${prefix}/info' |
50 |
mandir='${prefix}/man' |
51 |
|
52 |
+# NLS nuisances. |
53 |
+# Only set these to C if already set. These must not be set unconditionally |
54 |
+# because not all systems understand e.g. LANG=C (notably SCO). |
55 |
+# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'! |
56 |
+# Non-C LC_CTYPE values break the ctype check. |
57 |
+if test "${LANG+set}" = set; then LANG=C; export LANG; fi |
58 |
+if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi |
59 |
+if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi |
60 |
+if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi |
61 |
+ |
62 |
# Initialize some other variables. |
63 |
subdirs= |
64 |
MFLAGS= MAKEFLAGS= |
65 |
@@ -452,16 +463,6 @@ |
66 |
esac |
67 |
done |
68 |
|
69 |
-# NLS nuisances. |
70 |
-# Only set these to C if already set. These must not be set unconditionally |
71 |
-# because not all systems understand e.g. LANG=C (notably SCO). |
72 |
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'! |
73 |
-# Non-C LC_CTYPE values break the ctype check. |
74 |
-if test "${LANG+set}" = set; then LANG=C; export LANG; fi |
75 |
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi |
76 |
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi |
77 |
-if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi |
78 |
- |
79 |
# confdefs.h avoids OS command line length limits that DEFS can exceed. |
80 |
rm -rf conftest* confdefs.h |
81 |
# AIX cpp loses on an empty file, so make sure it contains at least a newline. |
82 |
|
83 |
|
84 |
|
85 |
1.1 src/patchsets/seamonkey/1.1.18/001_firefox-1.0-prdtoa.patch |
86 |
|
87 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/001_firefox-1.0-prdtoa.patch?rev=1.1&view=markup |
88 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/001_firefox-1.0-prdtoa.patch?rev=1.1&content-type=text/plain |
89 |
|
90 |
Index: 001_firefox-1.0-prdtoa.patch |
91 |
=================================================================== |
92 |
Index: nsprpub/pr/src/misc/Makefile.in |
93 |
=================================================================== |
94 |
RCS file: /cvsroot/mozilla/nsprpub/pr/src/misc/Makefile.in,v |
95 |
retrieving revision 1.15.2.2 |
96 |
diff -u -r1.15.2.2 Makefile.in |
97 |
--- nsprpub/pr/src/misc/Makefile.in 6 Jun 2003 03:09:17 -0000 1.15.2.2 |
98 |
+++ nsprpub/pr/src/misc/Makefile.in 19 Nov 2004 00:58:35 -0000 |
99 |
@@ -82,6 +82,15 @@ |
100 |
|
101 |
include $(topsrcdir)/config/rules.mk |
102 |
|
103 |
+ifneq (,$(filter Linuxs390 Linuxs390x,$(OS_ARCH)$(OS_TEST))) |
104 |
+ |
105 |
+NONOPT_CFLAGS=$(filter-out -O%, $(CFLAGS)) |
106 |
+ |
107 |
+$(OBJDIR)/prdtoa.$(OBJ_SUFFIX): prdtoa.c |
108 |
+ @$(MAKE_OBJDIR) |
109 |
+ $(CC) -o $@ -c $(NONOPT_CFLAGS) -ffloat-store $< |
110 |
+endif |
111 |
+ |
112 |
# Prevent floating point errors caused by MSVC 6.0 Processor Pack |
113 |
# optimizations (bug 207421). This disables optimizations that |
114 |
# could change the precision of floating-point calculations for |
115 |
|
116 |
|
117 |
|
118 |
1.1 src/patchsets/seamonkey/1.1.18/002_seamonkey-disable-visibility.patch |
119 |
|
120 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/002_seamonkey-disable-visibility.patch?rev=1.1&view=markup |
121 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/002_seamonkey-disable-visibility.patch?rev=1.1&content-type=text/plain |
122 |
|
123 |
Index: 002_seamonkey-disable-visibility.patch |
124 |
=================================================================== |
125 |
Index: mozilla/configure.in |
126 |
=================================================================== |
127 |
RCS file: /cvsroot/mozilla/configure.in,v |
128 |
retrieving revision 1.1503.2.15.2.3 |
129 |
diff -u -r1.1503.2.15.2.3 configure.in |
130 |
--- mozilla/configure.in 10 Jan 2006 03:11:42 -0000 1.1503.2.15.2.3 |
131 |
+++ mozilla/configure.in 21 Jan 2006 09:00:24 -0000 |
132 |
@@ -2383,7 +2383,7 @@ |
133 |
dnl Check for .hidden assembler directive and visibility attribute. |
134 |
dnl Borrowed from glibc configure.in |
135 |
dnl =============================================================== |
136 |
-if test "$GNU_CC"; then |
137 |
+if /bin/false; then |
138 |
AC_CACHE_CHECK(for visibility(hidden) attribute, |
139 |
ac_cv_visibility_hidden, |
140 |
[cat > conftest.c <<EOF |
141 |
|
142 |
|
143 |
|
144 |
1.1 src/patchsets/seamonkey/1.1.18/003_firefox-arm.patch |
145 |
|
146 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/003_firefox-arm.patch?rev=1.1&view=markup |
147 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/003_firefox-arm.patch?rev=1.1&content-type=text/plain |
148 |
|
149 |
Index: 003_firefox-arm.patch |
150 |
=================================================================== |
151 |
# Upstream https://bugzilla.mozilla.org/show_bug.cgi?id=336183 |
152 |
|
153 |
--- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp 2006-05-17 02:02:51.000000000 -0400 |
154 |
+++ mozilla-16052006/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp 2006-05-17 01:17:16.000000000 -0400 |
155 |
@@ -39,18 +39,31 @@ |
156 |
/* Implement shared vtbl methods. */ |
157 |
|
158 |
#include "xptcprivate.h" |
159 |
|
160 |
#if !defined(LINUX) || !defined(__arm__) |
161 |
#error "This code is for Linux ARM only. Please check if it works for you, too.\nDepends strongly on gcc behaviour." |
162 |
#endif |
163 |
|
164 |
+#if (__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 4)) |
165 |
+/* This tells gcc3.4+ not to optimize away symbols. |
166 |
+ * @see http://gcc.gnu.org/gcc-3.4/changes.html |
167 |
+ */ |
168 |
+#define DONT_DROP_OR_WARN __attribute__((used)) |
169 |
+#else |
170 |
+/* This tells older gccs not to warn about unused vairables. |
171 |
+ * @see http://docs.freebsd.org/info/gcc/gcc.info.Variable_Attributes.html |
172 |
+ */ |
173 |
+#define DONT_DROP_OR_WARN __attribute__((unused)) |
174 |
+#endif |
175 |
+ |
176 |
/* Specify explicitly a symbol for this function, don't try to guess the c++ mangled symbol. */ |
177 |
-static nsresult PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args) asm("_PrepareAndDispatch"); |
178 |
+static nsresult PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args) asm("_PrepareAndDispatch") |
179 |
+DONT_DROP_OR_WARN; |
180 |
|
181 |
static nsresult |
182 |
PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args) |
183 |
{ |
184 |
#define PARAM_BUFFER_COUNT 16 |
185 |
|
186 |
nsXPTCMiniVariant paramBuffer[PARAM_BUFFER_COUNT]; |
187 |
nsXPTCMiniVariant* dispatchParams = NULL; |
188 |
|
189 |
|
190 |
|
191 |
1.1 src/patchsets/seamonkey/1.1.18/004_mozilla-hppa.patch |
192 |
|
193 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/004_mozilla-hppa.patch?rev=1.1&view=markup |
194 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/004_mozilla-hppa.patch?rev=1.1&content-type=text/plain |
195 |
|
196 |
Index: 004_mozilla-hppa.patch |
197 |
=================================================================== |
198 |
# Original patch just cleaned up, Author on original patch was Randolph Chung (tausq@××××××.org) |
199 |
# Upstream https://bugzilla.mozilla.org/show_bug.cgi?id=287150 |
200 |
|
201 |
Index: xpcom/reflect/xptcall/src/md/unix/Makefile.in |
202 |
=================================================================== |
203 |
RCS file: /cvsroot/mozilla/xpcom/reflect/xptcall/src/md/unix/Makefile.in,v |
204 |
retrieving revision 1.92 |
205 |
diff -u -B -u -8 -p -r1.92 Makefile.in |
206 |
--- xpcom/reflect/xptcall/src/md/unix/Makefile.in 14 Dec 2006 19:13:43 -0000 1.92 |
207 |
+++ xpcom/reflect/xptcall/src/md/unix/Makefile.in 3 Jan 2007 18:20:44 -0000 |
208 |
@@ -185,16 +185,29 @@ CPPSRCS := xptcinvoke_ipf32.cpp xptcstu |
209 |
ASFILES := xptcstubs_asm_ipf32.s xptcinvoke_asm_ipf32.s |
210 |
endif |
211 |
|
212 |
# #18875 Building the CPP's (CXX) optimized causes a crash |
213 |
CXXFLAGS := $(filter-out $(MOZ_OPTIMIZE_FLAGS), $(CXXFLAGS)) |
214 |
endif |
215 |
endif |
216 |
|
217 |
+# |
218 |
+# Linux/HPPA/gcc |
219 |
+# |
220 |
+ifeq ($(OS_ARCH),Linux) |
221 |
+ifneq (,$(filter hppa2.0 hppa1.1,$(OS_TEST))) |
222 |
+#ifeq ($(CC),gcc) # Do not check for gcc since there is only this compiler on linux for hppa |
223 |
+CPPSRCS := xptcinvoke_pa32.cpp xptcstubs_pa32.cpp |
224 |
+ASFILES := xptcstubs_asm_parisc_linux.s xptcinvoke_asm_parisc_linux.s |
225 |
+#endif |
226 |
+endif |
227 |
+endif |
228 |
+ |
229 |
+ |
230 |
###################################################################### |
231 |
# M68k |
232 |
###################################################################### |
233 |
# |
234 |
# NetBSD/m68k |
235 |
# |
236 |
ifeq ($(OS_ARCH),NetBSD) |
237 |
ifneq (,$(filter amiga atari hp300 mac68k mvme68k next68k sun3 sun3x x68k,$(OS_TEST))) |
238 |
Index: xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_parisc_linux.s |
239 |
=================================================================== |
240 |
RCS file: xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_parisc_linux.s |
241 |
diff -N xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_parisc_linux.s |
242 |
--- /dev/null 1 Jan 1970 00:00:00 -0000 |
243 |
+++ xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_parisc_linux.s 3 Jan 2007 18:20:44 -0000 |
244 |
@@ -0,0 +1,102 @@ |
245 |
+ |
246 |
+ .LEVEL 1.1 |
247 |
+ .text |
248 |
+ .align 4 |
249 |
+ |
250 |
+framesz: |
251 |
+ .equ 128 |
252 |
+ |
253 |
+.globl XPTC_InvokeByIndex |
254 |
+ .type XPTC_InvokeByIndex, @function |
255 |
+ |
256 |
+ |
257 |
+XPTC_InvokeByIndex: |
258 |
+ .PROC |
259 |
+ .CALLINFO FRAME=72, CALLER,SAVE_RP, SAVE_SP, ENTRY_GR=3 |
260 |
+ .ENTRY |
261 |
+ |
262 |
+ ; frame marker takes 48 bytes, |
263 |
+ ; register spill area takes 8 bytes, |
264 |
+ ; local stack area takes 72 bytes result in 128 bytes total |
265 |
+ |
266 |
+ STW %rp,-20(%sp) |
267 |
+ STW,MA %r3,128(%sp) |
268 |
+ |
269 |
+ LDO -framesz(%r30),%r28 |
270 |
+ STW %r28,-4(%r30) ; save previous sp |
271 |
+ STW %r19,-32(%r30) |
272 |
+ |
273 |
+ STW %r26,-36-framesz(%r30) ; save argument registers in |
274 |
+ STW %r25,-40-framesz(%r30) ; in PREVIOUS frame |
275 |
+ STW %r24,-44-framesz(%r30) ; |
276 |
+ STW %r23,-48-framesz(%r30) ; |
277 |
+ |
278 |
+ .CALL ARGW0=GR,ARGW1=GR,ARGW2=GR ;in=24,25,26;out=28 |
279 |
+ BL invoke_count_bytes,%r31 |
280 |
+ COPY %r31,%r2 |
281 |
+ |
282 |
+ CMPIB,>= 0,%r28, .+76 |
283 |
+ COPY %r30,%r3 ; copy stack ptr to saved stack ptr |
284 |
+ ADD %r30,%r28,%r30 ; extend stack frame |
285 |
+ LDW -4(%r3),%r28 ; move frame |
286 |
+ STW %r28,-4(%r30) |
287 |
+ LDW -8(%r3),%r28 |
288 |
+ STW %r28,-8(%r30) |
289 |
+ LDW -12(%r3),%r28 |
290 |
+ STW %r28,-12(%r30) |
291 |
+ LDW -16(%r3),%r28 |
292 |
+ STW %r28,-16(%r30) |
293 |
+ LDW -20(%r3),%r28 |
294 |
+ STW %r28,-20(%r30) |
295 |
+ LDW -24(%r3),%r28 |
296 |
+ STW %r28,-24(%r30) |
297 |
+ LDW -28(%r3),%r28 |
298 |
+ STW %r28,-28(%r30) |
299 |
+ LDW -32(%r3),%r28 |
300 |
+ STW %r28,-32(%r30) |
301 |
+ |
302 |
+ LDO -40(%r30),%r26 ; load copy address |
303 |
+ LDW -44-framesz(%r3),%r25 ; load rest of 2 arguments |
304 |
+ LDW -48-framesz(%r3),%r24 ; |
305 |
+ |
306 |
+ LDW -32(%r30),%r19 ; shared lib call destroys r19; reload |
307 |
+ .CALL ARGW0=GR,ARGW1=GR,ARGW2=GR ;in=24,25,26 |
308 |
+ BL invoke_copy_to_stack,%r31 |
309 |
+ COPY %r31,%r2 |
310 |
+ |
311 |
+ LDO -48(%r30),%r20 |
312 |
+ EXTRW,U,= %r28,31,1,%r22 |
313 |
+ FLDD 0(%r20),%fr7 ; load double arg 1 |
314 |
+ EXTRW,U,= %r28,30,1,%r22 |
315 |
+ FLDW 8(%r20),%fr5L ; load float arg 1 |
316 |
+ EXTRW,U,= %r28,29,1,%r22 |
317 |
+ FLDW 4(%r20),%fr6L ; load float arg 2 |
318 |
+ EXTRW,U,= %r28,28,1,%r22 |
319 |
+ FLDW 0(%r20),%fr7L ; load float arg 3 |
320 |
+ |
321 |
+ LDW -36-framesz(%r3),%r26 ; load ptr to 'that' |
322 |
+ LDW -40(%r30),%r25 ; load the rest of dispatch argument registers |
323 |
+ LDW -44(%r30),%r24 |
324 |
+ LDW -48(%r30),%r23 |
325 |
+ |
326 |
+ LDW -36-framesz(%r3),%r20 ; load vtable addr |
327 |
+ LDW -40-framesz(%r3),%r28 ; load index |
328 |
+ LDW 0(%r20),%r20 ; follow vtable |
329 |
+ SH2ADDL %r28,%r20,%r28 ; add 4*index to vtable entry |
330 |
+ LDW 0(%r28),%r22 ; load vtable entry |
331 |
+ |
332 |
+ .CALL ARGW0=GR,ARGW1=GR,ARGW2=GR,ARGW3=GR,RTNVAL=GR ;in=22-26;out=28; |
333 |
+ BL $$dyncall,%r31 |
334 |
+ COPY %r31,%r2 |
335 |
+ |
336 |
+ LDW -32(%r30),%r19 |
337 |
+ COPY %r3,%r30 ; restore saved stack ptr |
338 |
+ |
339 |
+ LDW -148(%sp),%rp |
340 |
+ LDWM -128(%sp),%r3 |
341 |
+ BV,N (%rp) |
342 |
+ NOP |
343 |
+ .EXIT |
344 |
+ .PROCEND ;in=23,24,25,26; |
345 |
+ .SIZE XPTC_InvokeByIndex, .-XPTC_InvokeByIndex |
346 |
+ |
347 |
Index: xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_parisc_linux.s |
348 |
=================================================================== |
349 |
RCS file: xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_parisc_linux.s |
350 |
diff -N xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_parisc_linux.s |
351 |
--- /dev/null 1 Jan 1970 00:00:00 -0000 |
352 |
+++ xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_parisc_linux.s 3 Jan 2007 18:20:44 -0000 |
353 |
@@ -0,0 +1,66 @@ |
354 |
+ .LEVEL 1.1 |
355 |
+ .TEXT |
356 |
+ .ALIGN 4 |
357 |
+ |
358 |
+curframesz: |
359 |
+ .EQU 128 |
360 |
+ |
361 |
+ |
362 |
+; SharedStub has stack size of 128 bytes |
363 |
+ |
364 |
+lastframesz: |
365 |
+ .EQU 64 |
366 |
+ |
367 |
+; the StubN C++ function has a small stack size of 64 bytes |
368 |
+ |
369 |
+ |
370 |
+.globl SharedStub |
371 |
+ .type SharedStub, @function |
372 |
+ |
373 |
+SharedStub: |
374 |
+ .PROC |
375 |
+ .CALLINFO CALLER,FRAME=80,SAVE_RP |
376 |
+ |
377 |
+ .ENTRY |
378 |
+ STW %rp,-20(%sp) |
379 |
+ LDO 128(%sp),%sp |
380 |
+ |
381 |
+ STW %r19,-32(%r30) |
382 |
+ STW %r26,-36-curframesz(%r30) ; save arg0 in previous frame |
383 |
+ |
384 |
+ LDO -80(%r30),%r28 |
385 |
+ FSTD,MA %fr5,8(%r28) ; save darg0 |
386 |
+ FSTD,MA %fr7,8(%r28) ; save darg1 |
387 |
+ FSTW,MA %fr4L,4(%r28) ; save farg0 |
388 |
+ FSTW,MA %fr5L,4(%r28) ; save farg1 |
389 |
+ FSTW,MA %fr6L,4(%r28) ; save farg2 |
390 |
+ FSTW,MA %fr7L,4(%r28) ; save farg3 |
391 |
+ |
392 |
+ ; Former value of register 26 is already properly saved by StubN, |
393 |
+ ; but register 25-23 are not because of the arguments mismatch |
394 |
+ STW %r25,-40-curframesz-lastframesz(%r30) ; save r25 |
395 |
+ STW %r24,-44-curframesz-lastframesz(%r30) ; save r24 |
396 |
+ STW %r23,-48-curframesz-lastframesz(%r30) ; save r23 |
397 |
+ COPY %r26,%r25 ; method index is arg1 |
398 |
+ LDW -36-curframesz-lastframesz(%r30),%r26 ; self is arg0 |
399 |
+ LDO -40-curframesz-lastframesz(%r30),%r24 ; normal args is arg2 |
400 |
+ LDO -80(%r30),%r23 ; floating args is arg3 |
401 |
+ |
402 |
+ .CALL ARGW0=GR,ARGW1=GR,ARGW2=GR,ARGW3=GR,RTNVAL=GR ;in=23-26;out=28; |
403 |
+ BL PrepareAndDispatch, %r31 |
404 |
+ COPY %r31,%r2 |
405 |
+ |
406 |
+ LDW -32(%r30),%r19 |
407 |
+ |
408 |
+ LDW -148(%sp),%rp |
409 |
+ LDO -128(%sp),%sp |
410 |
+ |
411 |
+ |
412 |
+ BV,N (%rp) |
413 |
+ NOP |
414 |
+ NOP |
415 |
+ |
416 |
+ .EXIT |
417 |
+ .PROCEND ;in=26;out=28; |
418 |
+ |
419 |
+ .SIZE SharedStub, .-SharedStub |
420 |
|
421 |
|
422 |
|
423 |
1.1 src/patchsets/seamonkey/1.1.18/005_mozilla-firefox-1.1a2-ia64.patch |
424 |
|
425 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/005_mozilla-firefox-1.1a2-ia64.patch?rev=1.1&view=markup |
426 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/005_mozilla-firefox-1.1a2-ia64.patch?rev=1.1&content-type=text/plain |
427 |
|
428 |
Index: 005_mozilla-firefox-1.1a2-ia64.patch |
429 |
=================================================================== |
430 |
--- mozilla.orig/extensions/transformiix/source/base/Double.cpp |
431 |
+++ mozilla/extensions/transformiix/source/base/Double.cpp |
432 |
@@ -75,14 +75,7 @@ |
433 |
#define CPU_IS_ARM |
434 |
#endif |
435 |
|
436 |
-#if (__GNUC__ == 2 && __GNUC_MINOR__ > 95) || __GNUC__ > 2 |
437 |
-/** |
438 |
- * This version of the macros is safe for the alias optimizations |
439 |
- * that gcc does, but uses gcc-specific extensions. |
440 |
- */ |
441 |
- |
442 |
typedef union txdpun { |
443 |
- PRFloat64 d; |
444 |
struct { |
445 |
#if defined(IS_LITTLE_ENDIAN) && !defined(CPU_IS_ARM) |
446 |
PRUint32 lo, hi; |
447 |
@@ -90,8 +83,14 @@ |
448 |
PRUint32 hi, lo; |
449 |
#endif |
450 |
} s; |
451 |
+ PRFloat64 d; |
452 |
} txdpun; |
453 |
|
454 |
+#if (__GNUC__ == 2 && __GNUC_MINOR__ > 95) || __GNUC__ > 2 |
455 |
+/** |
456 |
+ * This version of the macros is safe for the alias optimizations |
457 |
+ * that gcc does, but uses gcc-specific extensions. |
458 |
+ */ |
459 |
#define TX_DOUBLE_HI32(x) (__extension__ ({ txdpun u; u.d = (x); u.s.hi; })) |
460 |
#define TX_DOUBLE_LO32(x) (__extension__ ({ txdpun u; u.d = (x); u.s.lo; })) |
461 |
|
462 |
@@ -117,20 +116,20 @@ |
463 |
|
464 |
//-- Initialize Double related constants |
465 |
#ifdef IS_BIG_ENDIAN |
466 |
-const PRUint32 nanMask[2] = {TX_DOUBLE_HI32_EXPMASK | TX_DOUBLE_HI32_MANTMASK, |
467 |
- 0xffffffff}; |
468 |
-const PRUint32 infMask[2] = {TX_DOUBLE_HI32_EXPMASK, 0}; |
469 |
-const PRUint32 negInfMask[2] = {TX_DOUBLE_HI32_EXPMASK | TX_DOUBLE_HI32_SIGNBIT, 0}; |
470 |
+const txdpun nanMask = {TX_DOUBLE_HI32_EXPMASK | TX_DOUBLE_HI32_MANTMASK, |
471 |
+ 0xffffffff}; |
472 |
+const txdpun infMask = {TX_DOUBLE_HI32_EXPMASK, 0}; |
473 |
+const txdpun negInfMask = {TX_DOUBLE_HI32_EXPMASK | TX_DOUBLE_HI32_SIGNBIT, 0}; |
474 |
#else |
475 |
-const PRUint32 nanMask[2] = {0xffffffff, |
476 |
- TX_DOUBLE_HI32_EXPMASK | TX_DOUBLE_HI32_MANTMASK}; |
477 |
-const PRUint32 infMask[2] = {0, TX_DOUBLE_HI32_EXPMASK}; |
478 |
-const PRUint32 negInfMask[2] = {0, TX_DOUBLE_HI32_EXPMASK | TX_DOUBLE_HI32_SIGNBIT}; |
479 |
+const txdpun nanMask = {0xffffffff, |
480 |
+ TX_DOUBLE_HI32_EXPMASK | TX_DOUBLE_HI32_MANTMASK}; |
481 |
+const txdpun infMask = {0, TX_DOUBLE_HI32_EXPMASK}; |
482 |
+const txdpun negInfMask = {0, TX_DOUBLE_HI32_EXPMASK | TX_DOUBLE_HI32_SIGNBIT}; |
483 |
#endif |
484 |
|
485 |
-const double Double::NaN = *((double*)nanMask); |
486 |
-const double Double::POSITIVE_INFINITY = *((double*)infMask); |
487 |
-const double Double::NEGATIVE_INFINITY = *((double*)negInfMask); |
488 |
+const double Double::NaN = nanMask.d; |
489 |
+const double Double::POSITIVE_INFINITY = infMask.d; |
490 |
+const double Double::NEGATIVE_INFINITY = negInfMask.d; |
491 |
|
492 |
/* |
493 |
* Determines whether the given double represents positive or negative |
494 |
|
495 |
|
496 |
|
497 |
1.1 src/patchsets/seamonkey/1.1.18/007_seamonkey-1.0.1-dumpstack.patch |
498 |
|
499 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/007_seamonkey-1.0.1-dumpstack.patch?rev=1.1&view=markup |
500 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/007_seamonkey-1.0.1-dumpstack.patch?rev=1.1&content-type=text/plain |
501 |
|
502 |
Index: 007_seamonkey-1.0.1-dumpstack.patch |
503 |
=================================================================== |
504 |
--- mozilla/xpcom/base/nsStackFrameUnix.cpp.prestackdisable 2006-04-14 02:30:15.000000000 +0200 |
505 |
+++ mozilla/xpcom/base/nsStackFrameUnix.cpp 2006-04-14 02:31:02.000000000 +0200 |
506 |
@@ -88,6 +88,9 @@ |
507 |
|
508 |
void DumpStackToFile(FILE* aStream) |
509 |
{ |
510 |
+ fprintf(aStream, "Stacktrace disabled for now.\n" |
511 |
+ "See https://bugzilla.mozilla.org/show_bug.cgi?id=323853\n"); |
512 |
+#if 0 |
513 |
// Stack walking code courtesy Kipp's "leaky". |
514 |
|
515 |
// Get the frame pointer |
516 |
@@ -128,6 +131,7 @@ |
517 |
symbol, off, info.dli_fname, foff); |
518 |
} |
519 |
} |
520 |
+#endif |
521 |
} |
522 |
|
523 |
#elif defined(__sun) && (defined(__sparc) || defined(sparc) || defined(__i386) || defined(i386)) |
524 |
|
525 |
|
526 |
|
527 |
1.1 src/patchsets/seamonkey/1.1.18/008_seamonkey-gentoo-pkgconfig.patch |
528 |
|
529 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/008_seamonkey-gentoo-pkgconfig.patch?rev=1.1&view=markup |
530 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/008_seamonkey-gentoo-pkgconfig.patch?rev=1.1&content-type=text/plain |
531 |
|
532 |
Index: 008_seamonkey-gentoo-pkgconfig.patch |
533 |
=================================================================== |
534 |
--- mozilla/config/autoconf.mk.in 2005-08-17 19:17:17.000000000 +0200 |
535 |
+++ mozilla/config/autoconf.mk.in 2005-11-17 14:23:11.000000000 +0100 |
536 |
@@ -54,13 +54,13 @@ |
537 |
prefix = @prefix@ |
538 |
exec_prefix = @exec_prefix@ |
539 |
bindir = @bindir@ |
540 |
-includedir = @includedir@/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) |
541 |
+includedir = $(mozappdir)/include |
542 |
libdir = @libdir@ |
543 |
datadir = @datadir@ |
544 |
mandir = @mandir@ |
545 |
-idldir = @datadir@/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) |
546 |
+idldir = $(mozappdir)/idl |
547 |
|
548 |
-mozappdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) |
549 |
+mozappdir = $(libdir)/$(MOZ_APP_NAME) |
550 |
mredir = $(libdir)/mre/mre-$(MOZ_APP_VERSION) |
551 |
mrelibdir = $(mredir)/lib |
552 |
|
553 |
--- mozilla/build/unix/Makefile.in 2005-07-07 20:24:39.000000000 +0200 |
554 |
+++ mozilla/build/unix/Makefile.in 2005-11-17 21:41:47.000000000 +0100 |
555 |
@@ -61,6 +61,19 @@ |
556 |
NSPR_VERSION=$(shell $(DEPTH)/nsprpub/config/nspr-config --version) |
557 |
endif |
558 |
|
559 |
+# Hack to make sure that mozilla-nss.pc has the proper nss dependencies |
560 |
+ifdef MOZ_NATIVE_NSS |
561 |
+FULL_NSS_CFLAGS=$(shell $(NSS_CONFIG) --cflags) |
562 |
+FULL_NSS_LIBS=$(shell $(NSS_CONFIG) --libs) |
563 |
+NSS_NAME=nss |
564 |
+NSS_VERSION=$(shell $(NSS_CONFIG) --version) |
565 |
+else |
566 |
+FULL_NSS_CFLAGS=-I$(includedir)/nss |
567 |
+FULL_NSS_LIBS=-L$(mozappdir)/nss -lnss3 -lsmime3 -lssl3 -lsoftokn3 |
568 |
+NSS_NAME=$(MOZ_APP_NAME)-nss |
569 |
+NSS_VERSION=$(MOZ_APP_VERSION) |
570 |
+endif |
571 |
+ |
572 |
ifdef MOZ_ENABLE_GTK |
573 |
SUPERWIN_LIBS=-lgtksuperwin |
574 |
endif |
575 |
@@ -82,7 +82,8 @@ |
576 |
-e "s|%MOZILLA_VERSION%|$(MOZ_APP_VERSION)|" \ |
577 |
-e "s|%DEFS%|$(_DEFS)|" \ |
578 |
-e "s|%FULL_NSPR_LIBS%|$(FULL_NSPR_LIBS)|" \ |
579 |
- -e "s|%FULL_NSPR_CFLAGS%|$(FULL_NSPR_CFLAGS)|" > $@ |
580 |
+ -e 's|%FULL_NSPR_CFLAGS%|$(FULL_NSPR_CFLAGS)|' \ |
581 |
+ -e 's|\(echo -L.*\)\($$\)|\1 -Wl,-R$(mozappdir)\2|' > $@ |
582 |
|
583 |
$(MOZ_APP_NAME)-%.pc : mozilla-%.pc.in Makefile.in Makefile $(DEPTH)/config/autoconf.mk |
584 |
cat $< | sed \ |
585 |
@@ -99,7 +112,12 @@ |
586 |
-e "s|%FULL_NSPR_LIBS%|$(FULL_NSPR_LIBS)|" \ |
587 |
-e "s|%FULL_NSPR_CFLAGS%|$(FULL_NSPR_CFLAGS)|" \ |
588 |
-e "s|%NSPR_NAME%|$(NSPR_NAME)|" \ |
589 |
- -e "s|%NSPR_VERSION%|$(NSPR_VERSION)|" > $@ |
590 |
+ -e "s|%NSPR_VERSION%|$(NSPR_VERSION)|" \ |
591 |
+ -e "s|%FULL_NSS_LIBS%|$(FULL_NSS_LIBS)|" \ |
592 |
+ -e "s|%FULL_NSS_CFLAGS%|$(FULL_NSS_CFLAGS)|" \ |
593 |
+ -e "s|%NSS_NAME%|$(NSS_NAME)|" \ |
594 |
+ -e "s|%NSS_VERSION%|$(NSS_VERSION)|" \ |
595 |
+ -e "s|\(^Libs: -L.*\)|\1 -Wl,-R\$$\{libdir}|" > $@ |
596 |
|
597 |
libs:: $(MOZ_APP_NAME)-config |
598 |
chmod 755 $< |
599 |
--- mozilla/build/unix/mozilla-js.pc.in.orig 2005-07-05 23:21:52.000000000 +0000 |
600 |
+++ mozilla/build/unix/mozilla-js.pc.in 2006-01-15 10:03:00.000000000 +0000 |
601 |
@@ -6,6 +6,6 @@ |
602 |
Name: JavaScript |
603 |
Description: The Mozilla JavaScript Library |
604 |
Version: %MOZILLA_VERSION% |
605 |
-Requires: %NSPR_NAME% >= %NSPR_VERSION% |
606 |
+Requires: %MOZ_APP_NAME%-%NSPR_NAME% >= %NSPR_VERSION% |
607 |
Libs: -L${libdir} -lmozjs |
608 |
Cflags: -I${includedir}/js -DXP_UNIX |
609 |
--- mozilla/build/unix/mozilla-nspr.pc.in.orig 2005-07-05 23:21:52.000000000 +0000 |
610 |
+++ mozilla/build/unix/mozilla-nspr.pc.in 2006-01-15 10:01:16.000000000 +0000 |
611 |
@@ -1,12 +1,5 @@ |
612 |
-prefix=%prefix% |
613 |
-exec_prefix=%exec_prefix% |
614 |
-libdir=%libdir% |
615 |
-includedir=%includedir% |
616 |
- |
617 |
Name: NSPR |
618 |
Description: The Netscape Portable Runtime |
619 |
Version: %NSPR_VERSION% |
620 |
-Libs: %FULL_NSPR_LIBS% |
621 |
-Cflags: %FULL_NSPR_CFLAGS% |
622 |
- |
623 |
+Requires: %NSPR_NAME% >= %NSPR_VERSION% |
624 |
|
625 |
--- mozilla/build/unix/mozilla-xpcom.pc.in.orig 2005-07-05 23:21:52.000000000 +0000 |
626 |
+++ mozilla/build/unix/mozilla-xpcom.pc.in 2006-01-15 10:02:34.000000000 +0000 |
627 |
@@ -7,6 +7,6 @@ |
628 |
Name: XPCOM |
629 |
Description: The Mozilla Cross Platform Component Library |
630 |
Version: %MOZILLA_VERSION% |
631 |
-Requires: %NSPR_NAME% >= %NSPR_VERSION% |
632 |
+Requires: %MOZ_APP_NAME%-%NSPR_NAME% >= %NSPR_VERSION% |
633 |
Libs: -L${libdir} -lxpcom |
634 |
Cflags: -I${includedir} -I${includedir}/xpcom -I${includedir}/string |
635 |
--- mozilla/build/unix/mozilla-nss.pc.in.orig 2005-07-05 23:21:52.000000000 +0000 |
636 |
+++ mozilla/build/unix/mozilla-nss.pc.in 2006-01-15 10:26:13.000000000 +0000 |
637 |
@@ -1,11 +1,4 @@ |
638 |
-prefix=%prefix% |
639 |
-exec_prefix=%exec_prefix% |
640 |
-libdir=%libdir% |
641 |
-includedir=%includedir% |
642 |
- |
643 |
Name: NSS |
644 |
Description: Mozilla Network Security Services |
645 |
-Version: %MOZILLA_VERSION% |
646 |
-Requires: %NSPR_NAME% >= %NSPR_VERSION% |
647 |
-Libs: -L${libdir} -lnss3 -lsmime3 -lssl3 -lsoftokn3 |
648 |
-Cflags: -I${includedir}/nss |
649 |
+Version: %NSS_VERSION% |
650 |
+Requires: %NSS_NAME% >= %NSS_VERSION% |
651 |
|
652 |
|
653 |
|
654 |
1.1 src/patchsets/seamonkey/1.1.18/010_visibility-gcc-4.2.patch |
655 |
|
656 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/010_visibility-gcc-4.2.patch?rev=1.1&view=markup |
657 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/010_visibility-gcc-4.2.patch?rev=1.1&content-type=text/plain |
658 |
|
659 |
Index: 010_visibility-gcc-4.2.patch |
660 |
=================================================================== |
661 |
--- configure.in.orig 2007-10-12 20:39:27.000000000 +0200 |
662 |
+++ configure.in 2007-10-12 20:40:49.000000000 +0200 |
663 |
@@ -2657,8 +2657,7 @@ |
664 |
]) |
665 |
if test "$ac_cv_have_visibility_builtin_bug" = "no" -a \ |
666 |
"$ac_cv_have_visibility_class_bug" = "no"; then |
667 |
- VISIBILITY_FLAGS='-I$(DIST)/include/system_wrappers -include $(topsrcdir)/config/gcc_hidden.h' |
668 |
- WRAP_SYSTEM_INCLUDES=1 |
669 |
+ VISIBILITY_FLAGS='-fvisibility=hidden' |
670 |
else |
671 |
VISIBILITY_FLAGS='-fvisibility=hidden' |
672 |
fi # have visibility pragma bug |
673 |
|
674 |
|
675 |
|
676 |
1.1 src/patchsets/seamonkey/1.1.18/016_firefox-nss-3.12-asneeded.patch |
677 |
|
678 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/016_firefox-nss-3.12-asneeded.patch?rev=1.1&view=markup |
679 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/016_firefox-nss-3.12-asneeded.patch?rev=1.1&content-type=text/plain |
680 |
|
681 |
Index: 016_firefox-nss-3.12-asneeded.patch |
682 |
=================================================================== |
683 |
# Fix a FTBFS with system libnss (caused by bad linking order with libcrmf) |
684 |
# by Fabien Tassin <fta@×××××××××.org> |
685 |
|
686 |
Index: seamonkey-1.1.4/configure.in |
687 |
=================================================================== |
688 |
--- seamonkey-1.1.4.orig/configure.in |
689 |
+++ seamonkey-1.1.4/configure.in |
690 |
@@ -3735,17 +3735,17 @@ |
691 |
[ --with-system-nss Use system installed NSS], |
692 |
_USE_SYSTEM_NSS=1 ) |
693 |
|
694 |
if test -n "$_USE_SYSTEM_NSS"; then |
695 |
AM_PATH_NSS(3.0.0, [MOZ_NATIVE_NSS=1], [MOZ_NATIVE_NSS=]) |
696 |
fi |
697 |
|
698 |
if test -n "$MOZ_NATIVE_NSS"; then |
699 |
- NSS_LIBS="$NSS_LIBS -lcrmf" |
700 |
+ NSS_LIBS=" -lcrmf $NSS_LIBS" |
701 |
else |
702 |
NSS_CFLAGS='-I$(DIST)/public/nss' |
703 |
NSS_DEP_LIBS='\\\ |
704 |
$(DIST)/lib/$(LIB_PREFIX)crmf.$(LIB_SUFFIX) \\\ |
705 |
$(DIST)/lib/$(DLL_PREFIX)smime'$NSS_VERSION'$(DLL_SUFFIX) \\\ |
706 |
$(DIST)/lib/$(DLL_PREFIX)ssl'$NSS_VERSION'$(DLL_SUFFIX) \\\ |
707 |
$(DIST)/lib/$(DLL_PREFIX)nss'$NSS_VERSION'$(DLL_SUFFIX) \\\ |
708 |
$(DIST)/lib/$(DLL_PREFIX)softokn'$NSS_VERSION'$(DLL_SUFFIX)' |
709 |
|
710 |
|
711 |
|
712 |
|
713 |
1.1 src/patchsets/seamonkey/1.1.18/020_firefox-0.7.3-default-plugin-less-annoying.patch |
714 |
|
715 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/020_firefox-0.7.3-default-plugin-less-annoying.patch?rev=1.1&view=markup |
716 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/020_firefox-0.7.3-default-plugin-less-annoying.patch?rev=1.1&content-type=text/plain |
717 |
|
718 |
Index: 020_firefox-0.7.3-default-plugin-less-annoying.patch |
719 |
=================================================================== |
720 |
--- mozilla/modules/plugin/samples/default/unix/npshell.c.foo Tue May 7 14:18:45 2002 |
721 |
+++ mozilla/modules/plugin/samples/default/unix/npshell.c Tue May 7 14:49:55 2002 |
722 |
@@ -224,7 +224,7 @@ |
723 |
This->depth = ws_info->depth; |
724 |
This->colormap = ws_info->colormap; |
725 |
makePixmap(This); |
726 |
- makeWidget(This); |
727 |
+ /* makeWidget(This); */ |
728 |
} |
729 |
return NPERR_NO_ERROR; |
730 |
} |
731 |
--- mozilla/modules/plugin/samples/default/unix/nullplugin.c.foo Tue May 7 14:18:45 2002 |
732 |
+++ mozilla/modules/plugin/samples/default/unix/nullplugin.c Tue May 7 14:48:33 2002 |
733 |
@@ -70,6 +70,8 @@ |
734 |
|
735 |
gtk_object_remove_data(GTK_OBJECT(button), DIALOGID); |
736 |
|
737 |
+#if 0 |
738 |
+ |
739 |
if (This->pluginsFileUrl != NULL) |
740 |
{ |
741 |
/* Get the JavaScript command string */ |
742 |
@@ -110,6 +112,7 @@ |
743 |
NPN_MemFree(url); |
744 |
} |
745 |
} |
746 |
+#endif |
747 |
destroyWidget(This); |
748 |
} |
749 |
|
750 |
@@ -265,14 +268,14 @@ |
751 |
GTK_DIALOG(dialogWindow)->action_area); |
752 |
gtk_object_set_data(GTK_OBJECT(okButton), DIALOGID, dialogWindow); |
753 |
|
754 |
- cancelButton= AddWidget(gtk_button_new_with_label (CANCEL_BUTTON), |
755 |
- GTK_DIALOG(dialogWindow)->action_area); |
756 |
+ /* cancelButton= AddWidget(gtk_button_new_with_label (CANCEL_BUTTON), |
757 |
+ GTK_DIALOG(dialogWindow)->action_area); */ |
758 |
|
759 |
gtk_signal_connect (GTK_OBJECT(okButton), "clicked", |
760 |
GTK_SIGNAL_FUNC(DialogOKClicked), This); |
761 |
|
762 |
- gtk_signal_connect (GTK_OBJECT(cancelButton), "clicked", |
763 |
- GTK_SIGNAL_FUNC(DialogCancelClicked), This); |
764 |
+ /* gtk_signal_connect (GTK_OBJECT(cancelButton), "clicked", |
765 |
+ GTK_SIGNAL_FUNC(DialogCancelClicked), This); */ |
766 |
|
767 |
/* hookup to when the dialog is destroyed */ |
768 |
gtk_signal_connect(GTK_OBJECT(dialogWindow), "destroy", |
769 |
--- mozilla/modules/plugin/samples/default/unix/nullplugin.h.foo Tue May 7 14:46:48 2002 |
770 |
+++ mozilla/modules/plugin/samples/default/unix/nullplugin.h Tue May 7 14:47:08 2002 |
771 |
@@ -53,9 +53,7 @@ |
772 |
#define JVM_MINETYPE "application/x-java-vm" |
773 |
#define MESSAGE "\ |
774 |
This page contains information of a type (%s) that can\n\ |
775 |
-only be viewed with the appropriate Plug-in.\n\ |
776 |
-\n\ |
777 |
-Click OK to download Plugin." |
778 |
+only be viewed with the appropriate Plug-in." |
779 |
|
780 |
#define GET 1 |
781 |
#define REFRESH 2 |
782 |
|
783 |
|
784 |
|
785 |
1.1 src/patchsets/seamonkey/1.1.18/021_seamonkey-1.1-include-cairo-libs.patch |
786 |
|
787 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/021_seamonkey-1.1-include-cairo-libs.patch?rev=1.1&view=markup |
788 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/021_seamonkey-1.1-include-cairo-libs.patch?rev=1.1&content-type=text/plain |
789 |
|
790 |
Index: 021_seamonkey-1.1-include-cairo-libs.patch |
791 |
=================================================================== |
792 |
--- mozilla/configure.in.orig 2007-01-11 19:45:06.000000000 +0100 |
793 |
+++ mozilla/configure.in 2007-01-23 21:18:26.905154656 +0100 |
794 |
@@ -6730,7 +6730,7 @@ |
795 |
else |
796 |
PKG_CHECK_MODULES(CAIRO, cairo >= $CAIRO_VERSION) |
797 |
MOZ_CAIRO_CFLAGS=$CAIRO_CFLAGS |
798 |
- MOZ_CAIRO_LIBS=$CAIRO_LIBS |
799 |
+ MOZ_CAIRO_LIBS="$CAIRO_LIBS -lXrender $XLIBS -lfontconfig -lfreetype" |
800 |
fi |
801 |
fi |
802 |
|
803 |
|
804 |
|
805 |
|
806 |
1.1 src/patchsets/seamonkey/1.1.18/030_pango-cairo-1.patch |
807 |
|
808 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/030_pango-cairo-1.patch?rev=1.1&view=markup |
809 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/030_pango-cairo-1.patch?rev=1.1&content-type=text/plain |
810 |
|
811 |
Index: 030_pango-cairo-1.patch |
812 |
=================================================================== |
813 |
--- config/autoconf.mk.in.old 2007-01-20 21:19:33.000000000 +0100 |
814 |
+++ config/autoconf.mk.in 2007-01-20 21:20:16.000000000 +0100 |
815 |
@@ -479,6 +479,7 @@ |
816 |
MOZ_ENABLE_PANGO = @MOZ_ENABLE_PANGO@ |
817 |
MOZ_PANGO_CFLAGS = @MOZ_PANGO_CFLAGS@ |
818 |
MOZ_PANGO_LIBS = @MOZ_PANGO_LIBS@ |
819 |
+MOZ_PANGOCAIRO = @MOZ_PANGOCAIRO@ |
820 |
|
821 |
MOZ_EXTRA_X11CONVERTERS = @MOZ_EXTRA_X11CONVERTERS@ |
822 |
|
823 |
--- gfx/src/gtk/mozilla-decoder.cpp.old 2007-01-20 21:21:30.000000000 +0100 |
824 |
+++ gfx/src/gtk/mozilla-decoder.cpp 2007-01-20 21:24:19.000000000 +0100 |
825 |
@@ -40,6 +40,11 @@ |
826 |
#define PANGO_ENABLE_ENGINE |
827 |
|
828 |
#include "mozilla-decoder.h" |
829 |
+#ifdef MOZ_PANGOCAIRO |
830 |
+#include <pango/pangocairo.h> |
831 |
+#else |
832 |
+#include <pango/pangoxft.h> |
833 |
+#endif |
834 |
#include <pango/pangofc-fontmap.h> |
835 |
#include <pango/pangofc-font.h> |
836 |
#include <gdk/gdkpango.h> |
837 |
@@ -213,8 +218,11 @@ |
838 |
printf("unknown suffix used for mapping\n"); |
839 |
} |
840 |
} |
841 |
- |
842 |
+#ifdef MOZ_PANGOCAIRO |
843 |
+ pango_fc_font_map_add_decoder_find_func(PANGO_FC_FONT_MAP(pango_cairo_font_map_get_default()), |
844 |
+#else |
845 |
pango_fc_font_map_add_decoder_find_func(PANGO_FC_FONT_MAP(fontmap), |
846 |
+#endif |
847 |
mozilla_find_decoder, |
848 |
NULL, |
849 |
NULL); |
850 |
--- configure.in.old 2007-01-20 21:25:20.000000000 +0100 |
851 |
+++ configure.in 2007-01-20 21:32:21.000000000 +0100 |
852 |
@@ -3923,8 +3923,8 @@ |
853 |
MOZ_ENABLE_GTK2=1 |
854 |
MOZ_ENABLE_XREMOTE=1 |
855 |
MOZ_ENABLE_COREXFONTS=${MOZ_ENABLE_COREXFONTS-} |
856 |
- TK_CFLAGS='$(MOZ_GTK2_CFLAGS)' |
857 |
- TK_LIBS='$(MOZ_GTK2_LIBS)' |
858 |
+ TK_CFLAGS='$(MOZ_GTK2_CFLAGS) $(MOZ_PANGO_CFLAGS)' |
859 |
+ TK_LIBS='$(MOZ_GTK2_LIBS) $(MOD_PANGO_LIBS)' |
860 |
AC_DEFINE(MOZ_WIDGET_GTK2) |
861 |
;; |
862 |
|
863 |
@@ -4581,12 +4581,14 @@ |
864 |
then |
865 |
AC_DEFINE(MOZ_ENABLE_XFT) |
866 |
PKG_CHECK_MODULES(MOZ_XFT, xft) |
867 |
- PKG_CHECK_MODULES(_PANGOCHK, pango >= 1.1.0) |
868 |
+ PKG_CHECK_MODULES(MOZ_PANGO, pangoxft >= 1.1.0 pangox) |
869 |
fi |
870 |
|
871 |
AC_SUBST(MOZ_ENABLE_XFT) |
872 |
AC_SUBST(MOZ_XFT_CFLAGS) |
873 |
AC_SUBST(MOZ_XFT_LIBS) |
874 |
+AC_SUBST(MOZ_PANGO_CFLAGS) |
875 |
+AC_SUBST(MOZ_PANGO_LIBS) |
876 |
|
877 |
dnl ======================================================== |
878 |
dnl = pango font rendering |
879 |
@@ -4600,8 +4602,17 @@ |
880 |
then |
881 |
AC_DEFINE(MOZ_ENABLE_PANGO) |
882 |
PKG_CHECK_MODULES(MOZ_PANGO, pango >= 1.6.0 pangoft2 >= 1.6.0) |
883 |
+ PKG_CHECK_MODULES(PANGOCAIRO_CHK, pangocairo >= 1.10.0, |
884 |
+ [ |
885 |
+ MOZ_PANGOCAIRO=1 |
886 |
+ AC_DEFINE(MOZ_PANGOCAIRO) |
887 |
+ MOZ_PANGO_CFLAGS="$PANGOCAIRO_CHK_CFLAGS $MOZ_PANGO_CFLAGS" |
888 |
+ MOZ_PANGO_LIBS="$PANGOCAIRO_CHK_LIBS $MOZ_PANGO_LIBS" |
889 |
+ ], |
890 |
+ [:]) |
891 |
|
892 |
AC_SUBST(MOZ_ENABLE_PANGO) |
893 |
+ AC_SUBST(MOZ_PANGOCAIRO) |
894 |
AC_SUBST(MOZ_PANGO_CFLAGS) |
895 |
AC_SUBST(MOZ_PANGO_LIBS) |
896 |
fi |
897 |
|
898 |
|
899 |
|
900 |
1.1 src/patchsets/seamonkey/1.1.18/031_firefox-1.1-uriloader-1.patch |
901 |
|
902 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/031_firefox-1.1-uriloader-1.patch?rev=1.1&view=markup |
903 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/031_firefox-1.1-uriloader-1.patch?rev=1.1&content-type=text/plain |
904 |
|
905 |
Index: 031_firefox-1.1-uriloader-1.patch |
906 |
=================================================================== |
907 |
Index: uriloader/exthandler/Makefile.in |
908 |
=================================================================== |
909 |
RCS file: /cvsroot/mozilla/uriloader/exthandler/Makefile.in,v |
910 |
retrieving revision 1.60 |
911 |
diff -d -u -p -r1.60 Makefile.in |
912 |
--- uriloader/exthandler/Makefile.in 2 May 2005 16:30:03 -0000 1.60 |
913 |
+++ uriloader/exthandler/Makefile.in 21 Jul 2005 03:07:39 -0000 |
914 |
@@ -102,7 +102,7 @@ endif |
915 |
LOCAL_INCLUDES = -I$(srcdir) |
916 |
|
917 |
ifeq ($(MOZ_WIDGET_TOOLKIT),gtk2) |
918 |
-OSHELPER += nsGNOMERegistry.cpp |
919 |
+OSHELPER += nsMIMEInfoUnix.cpp nsGNOMERegistry.cpp |
920 |
endif |
921 |
|
922 |
ifeq ($(MOZ_WIDGET_TOOLKIT),beos) |
923 |
Index: uriloader/exthandler/unix/nsGNOMERegistry.cpp |
924 |
=================================================================== |
925 |
RCS file: /cvsroot/mozilla/uriloader/exthandler/unix/nsGNOMERegistry.cpp,v |
926 |
retrieving revision 1.10 |
927 |
diff -d -u -p -r1.10 nsGNOMERegistry.cpp |
928 |
--- uriloader/exthandler/unix/nsGNOMERegistry.cpp 16 Oct 2004 13:46:17 -0000 1.10 |
929 |
+++ uriloader/exthandler/unix/nsGNOMERegistry.cpp 21 Jul 2005 03:07:40 -0000 |
930 |
@@ -42,7 +42,7 @@ |
931 |
#include "nsString.h" |
932 |
#include "nsIComponentManager.h" |
933 |
#include "nsILocalFile.h" |
934 |
-#include "nsMIMEInfoImpl.h" |
935 |
+#include "nsMIMEInfoUnix.h" |
936 |
#include "nsAutoPtr.h" |
937 |
|
938 |
#include <glib.h> |
939 |
@@ -56,12 +56,12 @@ typedef struct _GConfClient GConfClient; |
940 |
typedef struct _GnomeProgram GnomeProgram; |
941 |
typedef struct _GnomeModuleInfo GnomeModuleInfo; |
942 |
|
943 |
-typedef struct { |
944 |
+struct GnomeVFSMimeApplication { |
945 |
char *id; |
946 |
char *name; |
947 |
char *command; |
948 |
/* there is more here, but we don't need it */ |
949 |
-} GnomeVFSMimeApplication; |
950 |
+}; |
951 |
|
952 |
typedef GConfClient * (*_gconf_client_get_default_fn)(); |
953 |
typedef gchar * (*_gconf_client_get_string_fn)(GConfClient *, |
954 |
@@ -264,7 +264,7 @@ nsGNOMERegistry::GetAppDescForScheme(con |
955 |
} |
956 |
|
957 |
|
958 |
-/* static */ already_AddRefed<nsMIMEInfoBase> |
959 |
+/* static */ already_AddRefed<nsMIMEInfoUnix> |
960 |
nsGNOMERegistry::GetFromExtension(const char *aFileExt) |
961 |
{ |
962 |
if (!gconfLib) |
963 |
@@ -286,7 +286,7 @@ nsGNOMERegistry::GetFromExtension(const |
964 |
return GetFromType(mimeType); |
965 |
} |
966 |
|
967 |
-/* static */ already_AddRefed<nsMIMEInfoBase> |
968 |
+/* static */ already_AddRefed<nsMIMEInfoUnix> |
969 |
nsGNOMERegistry::GetFromType(const char *aMIMEType) |
970 |
{ |
971 |
if (!gconfLib) |
972 |
@@ -296,9 +296,11 @@ nsGNOMERegistry::GetFromType(const char |
973 |
if (!handlerApp) |
974 |
return nsnull; |
975 |
|
976 |
- nsRefPtr<nsMIMEInfoImpl> mimeInfo = new nsMIMEInfoImpl(aMIMEType); |
977 |
+ nsRefPtr<nsMIMEInfoUnix> mimeInfo = new nsMIMEInfoUnix(aMIMEType); |
978 |
NS_ENSURE_TRUE(mimeInfo, nsnull); |
979 |
|
980 |
+ mimeInfo->SetDefaultGnomeVFSMimeApplication(handlerApp); |
981 |
+ |
982 |
// Get the list of extensions and append then to the mimeInfo. |
983 |
GList *extensions = _gnome_vfs_mime_get_extensions_list(aMIMEType); |
984 |
for (GList *extension = extensions; extension; extension = extension->next) |
985 |
@@ -320,11 +322,21 @@ nsGNOMERegistry::GetFromType(const char |
986 |
return nsnull; |
987 |
} |
988 |
|
989 |
- gchar *commandPath = g_find_program_in_path(nativeCommand); |
990 |
+ gchar **argv; |
991 |
+ gboolean res = g_shell_parse_argv(nativeCommand, NULL, &argv, NULL); |
992 |
+ if (!res) { |
993 |
+ NS_ERROR("Could not convert helper app command to filesystem encoding"); |
994 |
+ _gnome_vfs_mime_application_free(handlerApp); |
995 |
+ return nsnull; |
996 |
+ } |
997 |
+ |
998 |
+ gchar *commandPath = g_find_program_in_path(argv[0]); |
999 |
|
1000 |
g_free(nativeCommand); |
1001 |
+ g_strfreev(argv); |
1002 |
|
1003 |
if (!commandPath) { |
1004 |
+ NS_WARNING("could not find command in path"); |
1005 |
_gnome_vfs_mime_application_free(handlerApp); |
1006 |
return nsnull; |
1007 |
} |
1008 |
@@ -342,7 +354,7 @@ nsGNOMERegistry::GetFromType(const char |
1009 |
|
1010 |
_gnome_vfs_mime_application_free(handlerApp); |
1011 |
|
1012 |
- nsMIMEInfoBase* retval; |
1013 |
+ nsMIMEInfoUnix* retval; |
1014 |
NS_ADDREF((retval = mimeInfo)); |
1015 |
return retval; |
1016 |
} |
1017 |
Index: uriloader/exthandler/unix/nsGNOMERegistry.h |
1018 |
=================================================================== |
1019 |
RCS file: /cvsroot/mozilla/uriloader/exthandler/unix/nsGNOMERegistry.h,v |
1020 |
retrieving revision 1.3 |
1021 |
diff -d -u -p -r1.3 nsGNOMERegistry.h |
1022 |
--- uriloader/exthandler/unix/nsGNOMERegistry.h 16 Oct 2004 13:46:17 -0000 1.3 |
1023 |
+++ uriloader/exthandler/unix/nsGNOMERegistry.h 21 Jul 2005 03:07:40 -0000 |
1024 |
@@ -35,10 +35,13 @@ |
1025 |
* |
1026 |
* ***** END LICENSE BLOCK ***** */ |
1027 |
|
1028 |
+#ifndef nsGNOMERegistry_h__ |
1029 |
+#define nsGNOMERegistry_h__ |
1030 |
+ |
1031 |
#include "nsIURI.h" |
1032 |
#include "nsCOMPtr.h" |
1033 |
|
1034 |
-class nsMIMEInfoBase; |
1035 |
+class nsMIMEInfoUnix; |
1036 |
|
1037 |
class nsGNOMERegistry |
1038 |
{ |
1039 |
@@ -52,7 +55,9 @@ class nsGNOMERegistry |
1040 |
static void GetAppDescForScheme(const nsACString& aScheme, |
1041 |
nsAString& aDesc); |
1042 |
|
1043 |
- static already_AddRefed<nsMIMEInfoBase> GetFromExtension(const char *aFileExt); |
1044 |
+ static already_AddRefed<nsMIMEInfoUnix> GetFromExtension(const char *aFileExt); |
1045 |
|
1046 |
- static already_AddRefed<nsMIMEInfoBase> GetFromType(const char *aMIMEType); |
1047 |
+ static already_AddRefed<nsMIMEInfoUnix> GetFromType(const char *aMIMEType); |
1048 |
}; |
1049 |
+ |
1050 |
+#endif // nsGNOMERegistry_h__ |
1051 |
Index: uriloader/exthandler/unix/nsMIMEInfoUnix.cpp |
1052 |
=================================================================== |
1053 |
RCS file: uriloader/exthandler/unix/nsMIMEInfoUnix.cpp |
1054 |
diff -N uriloader/exthandler/unix/nsMIMEInfoUnix.cpp |
1055 |
--- /dev/null 1 Jan 1970 00:00:00 -0000 |
1056 |
+++ uriloader/exthandler/unix/nsMIMEInfoUnix.cpp 21 Jul 2005 03:07:40 -0000 |
1057 |
@@ -0,0 +1,196 @@ |
1058 |
+/* ***** BEGIN LICENSE BLOCK ***** |
1059 |
+ * Version: MPL 1.1 |
1060 |
+ * |
1061 |
+ * The contents of this file are subject to the Mozilla Public License Version |
1062 |
+ * 1.1 (the "License"); you may not use this file except in compliance with |
1063 |
+ * the License. You may obtain a copy of the License at |
1064 |
+ * http://www.mozilla.org/MPL/ |
1065 |
+ * |
1066 |
+ * Software distributed under the License is distributed on an "AS IS" basis, |
1067 |
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License |
1068 |
+ * for the specific language governing rights and limitations under the |
1069 |
+ * License. |
1070 |
+ * |
1071 |
+ * The Original Code is mozilla.org Code. |
1072 |
+ * |
1073 |
+ * The Initial Developer of the Original Code is |
1074 |
+ * Red Hat, Inc. |
1075 |
+ * Portions created by the Initial Developer are Copyright (C) 2005 |
1076 |
+ * the Initial Developer. All Rights Reserved. |
1077 |
+ * |
1078 |
+ * Contributor(s): |
1079 |
+ * Christopher Aillon <caillon@××××××.com> (Original author) |
1080 |
+ * |
1081 |
+ * |
1082 |
+ * ***** END LICENSE BLOCK ***** */ |
1083 |
+ |
1084 |
+#include "nsMIMEInfoUnix.h" |
1085 |
+#include "prlink.h" |
1086 |
+#include "prmem.h" |
1087 |
+#include <glib.h> |
1088 |
+#include <glib-object.h> |
1089 |
+ |
1090 |
+static PRLibrary *gnomeLib; |
1091 |
+static PRLibrary *vfsLib; |
1092 |
+ |
1093 |
+typedef struct _GnomeProgram GnomeProgram; |
1094 |
+typedef struct _GnomeModuleInfo GnomeModuleInfo; |
1095 |
+ |
1096 |
+typedef enum { |
1097 |
+ GNOME_VFS_OK // there's more but we don't care about them. |
1098 |
+} GnomeVFSResult; |
1099 |
+ |
1100 |
+typedef GnomeVFSResult (*_gnome_vfs_mime_application_launch_fn) |
1101 |
+ (GnomeVFSMimeApplication *app, |
1102 |
+ GList *uris); |
1103 |
+typedef void (*_gnome_vfs_mime_application_free_fn)(GnomeVFSMimeApplication *); |
1104 |
+typedef GnomeVFSMimeApplication * (*_gnome_vfs_mime_application_copy_fn)(GnomeVFSMimeApplication *); |
1105 |
+typedef GnomeProgram * (*_gnome_program_init_fn)(const char *, const char *, |
1106 |
+ const GnomeModuleInfo *, int, |
1107 |
+ char **, const char *, ...); |
1108 |
+typedef const char * (*_gnome_vfs_mime_application_get_name_fn)(GnomeVFSMimeApplication *); |
1109 |
+typedef const GnomeModuleInfo * (*_libgnome_module_info_get_fn)(); |
1110 |
+typedef GnomeProgram * (*_gnome_program_get_fn)(); |
1111 |
+typedef char * (*_gnome_vfs_make_uri_from_input_fn)(const char *); |
1112 |
+ |
1113 |
+#define DECL_FUNC_PTR(func) static _##func##_fn _##func |
1114 |
+ |
1115 |
+DECL_FUNC_PTR(gnome_vfs_mime_application_launch); |
1116 |
+DECL_FUNC_PTR(gnome_vfs_mime_application_free); |
1117 |
+DECL_FUNC_PTR(gnome_vfs_mime_application_copy); |
1118 |
+DECL_FUNC_PTR(gnome_vfs_mime_application_get_name); |
1119 |
+DECL_FUNC_PTR(gnome_program_init); |
1120 |
+DECL_FUNC_PTR(gnome_program_get); |
1121 |
+DECL_FUNC_PTR(libgnome_module_info_get); |
1122 |
+DECL_FUNC_PTR(gnome_vfs_make_uri_from_input); |
1123 |
+ |
1124 |
+static PRLibrary * |
1125 |
+LoadVersionedLibrary(const char* libName, const char* libVersion) |
1126 |
+{ |
1127 |
+ char *platformLibName = PR_GetLibraryName(nsnull, libName); |
1128 |
+ nsCAutoString versionLibName(platformLibName); |
1129 |
+ versionLibName.Append(libVersion); |
1130 |
+ PR_Free(platformLibName); |
1131 |
+ return PR_LoadLibrary(versionLibName.get()); |
1132 |
+} |
1133 |
+ |
1134 |
+static void |
1135 |
+Cleanup() |
1136 |
+{ |
1137 |
+ // Unload all libraries |
1138 |
+ if (gnomeLib) |
1139 |
+ PR_UnloadLibrary(gnomeLib); |
1140 |
+ if (vfsLib) |
1141 |
+ PR_UnloadLibrary(vfsLib); |
1142 |
+ |
1143 |
+ gnomeLib = vfsLib = nsnull; |
1144 |
+} |
1145 |
+ |
1146 |
+static void |
1147 |
+InitGnomeVFS() |
1148 |
+{ |
1149 |
+ static PRBool initialized = PR_FALSE; |
1150 |
+ |
1151 |
+ if (initialized) |
1152 |
+ return; |
1153 |
+ |
1154 |
+ #define ENSURE_LIB(lib) \ |
1155 |
+ PR_BEGIN_MACRO \ |
1156 |
+ if (!lib) { \ |
1157 |
+ Cleanup(); \ |
1158 |
+ return; \ |
1159 |
+ } \ |
1160 |
+ PR_END_MACRO |
1161 |
+ |
1162 |
+ #define GET_LIB_FUNCTION(lib, func, failure) \ |
1163 |
+ PR_BEGIN_MACRO \ |
1164 |
+ _##func = (_##func##_fn) PR_FindFunctionSymbol(lib##Lib, #func); \ |
1165 |
+ if (!_##func) { \ |
1166 |
+ failure; \ |
1167 |
+ } \ |
1168 |
+ PR_END_MACRO |
1169 |
+ |
1170 |
+ // Attempt to open libgnome |
1171 |
+ gnomeLib = LoadVersionedLibrary("gnome-2", ".0"); |
1172 |
+ ENSURE_LIB(gnomeLib); |
1173 |
+ |
1174 |
+ GET_LIB_FUNCTION(gnome, gnome_program_init, return Cleanup()); |
1175 |
+ GET_LIB_FUNCTION(gnome, libgnome_module_info_get, return Cleanup()); |
1176 |
+ GET_LIB_FUNCTION(gnome, gnome_program_get, return Cleanup()); |
1177 |
+ |
1178 |
+ // Attempt to open libgnomevfs |
1179 |
+ vfsLib = LoadVersionedLibrary("gnomevfs-2", ".0"); |
1180 |
+ ENSURE_LIB(vfsLib); |
1181 |
+ |
1182 |
+ GET_LIB_FUNCTION(vfs, gnome_vfs_mime_application_launch, /* do nothing */); |
1183 |
+ GET_LIB_FUNCTION(vfs, gnome_vfs_make_uri_from_input, return Cleanup()); |
1184 |
+ GET_LIB_FUNCTION(vfs, gnome_vfs_mime_application_get_name, return Cleanup()); |
1185 |
+ GET_LIB_FUNCTION(vfs, gnome_vfs_mime_application_free, return Cleanup()); |
1186 |
+ GET_LIB_FUNCTION(vfs, gnome_vfs_mime_application_copy, return Cleanup()); |
1187 |
+ |
1188 |
+ // Initialize GNOME, if it's not already initialized. It's not |
1189 |
+ // necessary to tell GNOME about our actual command line arguments. |
1190 |
+ |
1191 |
+ if (!_gnome_program_get()) { |
1192 |
+ char *argv[1] = { "gecko" }; |
1193 |
+ _gnome_program_init("Gecko", "1.0", _libgnome_module_info_get(), |
1194 |
+ 1, argv, NULL); |
1195 |
+ } |
1196 |
+ |
1197 |
+ // Note: after GNOME has been initialized, do not ever unload these |
1198 |
+ // libraries. They register atexit handlers, so if they are unloaded, we'll |
1199 |
+ // crash on exit. |
1200 |
+} |
1201 |
+ |
1202 |
+void |
1203 |
+nsMIMEInfoUnix::SetDefaultGnomeVFSMimeApplication(GnomeVFSMimeApplication* app) |
1204 |
+{ |
1205 |
+ if (_gnome_vfs_mime_application_copy && _gnome_vfs_mime_application_free) { |
1206 |
+ mDefaultVFSApplication = _gnome_vfs_mime_application_copy(app); |
1207 |
+ |
1208 |
+ mPreferredAction = nsIMIMEInfo::useSystemDefault; |
1209 |
+ |
1210 |
+ const gchar * name = _gnome_vfs_mime_application_get_name(mDefaultVFSApplication); |
1211 |
+ if (name) |
1212 |
+ mDefaultAppDescription = NS_ConvertUTF8toUCS2(name); |
1213 |
+ } |
1214 |
+} |
1215 |
+ |
1216 |
+nsMIMEInfoUnix::~nsMIMEInfoUnix() |
1217 |
+{ |
1218 |
+ if (mDefaultVFSApplication) |
1219 |
+ _gnome_vfs_mime_application_free(mDefaultVFSApplication); |
1220 |
+} |
1221 |
+ |
1222 |
+nsresult |
1223 |
+nsMIMEInfoUnix::LaunchDefaultWithFile(nsIFile* aFile) |
1224 |
+{ |
1225 |
+ NS_ENSURE_ARG_POINTER(aFile); |
1226 |
+ |
1227 |
+ InitGnomeVFS(); |
1228 |
+ |
1229 |
+ if (_gnome_vfs_mime_application_launch && mDefaultVFSApplication) { |
1230 |
+ nsCAutoString nativePath; |
1231 |
+ aFile->GetNativePath(nativePath); |
1232 |
+ |
1233 |
+ gchar *uri = _gnome_vfs_make_uri_from_input(nativePath.get()); |
1234 |
+ |
1235 |
+ GList *uris = NULL; |
1236 |
+ uris = g_list_append(uris, uri); |
1237 |
+ |
1238 |
+ GnomeVFSResult result = _gnome_vfs_mime_application_launch(mDefaultVFSApplication, uris); |
1239 |
+ |
1240 |
+ g_free(uri); |
1241 |
+ g_list_free(uris); |
1242 |
+ |
1243 |
+ if (result != GNOME_VFS_OK) |
1244 |
+ return NS_ERROR_FAILURE; |
1245 |
+ |
1246 |
+ return NS_OK; |
1247 |
+ } |
1248 |
+ |
1249 |
+ if (!mDefaultApplication) |
1250 |
+ return NS_ERROR_FILE_NOT_FOUND; |
1251 |
+ |
1252 |
+ return LaunchWithIProcess(mDefaultApplication, aFile); |
1253 |
+} |
1254 |
Index: uriloader/exthandler/unix/nsMIMEInfoUnix.h |
1255 |
=================================================================== |
1256 |
RCS file: uriloader/exthandler/unix/nsMIMEInfoUnix.h |
1257 |
diff -N uriloader/exthandler/unix/nsMIMEInfoUnix.h |
1258 |
--- /dev/null 1 Jan 1970 00:00:00 -0000 |
1259 |
+++ uriloader/exthandler/unix/nsMIMEInfoUnix.h 21 Jul 2005 03:07:40 -0000 |
1260 |
@@ -0,0 +1,50 @@ |
1261 |
+/* ***** BEGIN LICENSE BLOCK ***** |
1262 |
+ * Version: MPL 1.1 |
1263 |
+ * |
1264 |
+ * The contents of this file are subject to the Mozilla Public License Version |
1265 |
+ * 1.1 (the "License"); you may not use this file except in compliance with |
1266 |
+ * the License. You may obtain a copy of the License at |
1267 |
+ * http://www.mozilla.org/MPL/ |
1268 |
+ * |
1269 |
+ * Software distributed under the License is distributed on an "AS IS" basis, |
1270 |
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License |
1271 |
+ * for the specific language governing rights and limitations under the |
1272 |
+ * License. |
1273 |
+ * |
1274 |
+ * The Original Code is mozilla.org Code. |
1275 |
+ * |
1276 |
+ * The Initial Developer of the Original Code is |
1277 |
+ * Red Hat, Inc. |
1278 |
+ * Portions created by the Initial Developer are Copyright (C) 2005 |
1279 |
+ * the Initial Developer. All Rights Reserved. |
1280 |
+ * |
1281 |
+ * Contributor(s): |
1282 |
+ * Christopher Aillon <caillon@××××××.com> (Original author) |
1283 |
+ * |
1284 |
+ * |
1285 |
+ * ***** END LICENSE BLOCK ***** */ |
1286 |
+ |
1287 |
+#ifndef nsMimeInfoUnix_h__ |
1288 |
+#define nsMimeInfoUnix_h__ |
1289 |
+ |
1290 |
+#include "nsMIMEInfoImpl.h" |
1291 |
+ |
1292 |
+struct GnomeVFSMimeApplication; |
1293 |
+ |
1294 |
+class nsMIMEInfoUnix : public nsMIMEInfoImpl |
1295 |
+{ |
1296 |
+public: |
1297 |
+ nsMIMEInfoUnix(const char* aType = "") : nsMIMEInfoImpl(aType), mDefaultVFSApplication(nsnull) {} |
1298 |
+ nsMIMEInfoUnix(const nsACString& aMIMEType) : nsMIMEInfoImpl(aMIMEType) {}; |
1299 |
+ |
1300 |
+ virtual ~nsMIMEInfoUnix(); |
1301 |
+ |
1302 |
+ void SetDefaultGnomeVFSMimeApplication(GnomeVFSMimeApplication *app); |
1303 |
+ |
1304 |
+protected: |
1305 |
+ virtual NS_HIDDEN_(nsresult) LaunchDefaultWithFile(nsIFile* aFile); |
1306 |
+ |
1307 |
+ GnomeVFSMimeApplication *mDefaultVFSApplication; |
1308 |
+}; |
1309 |
+ |
1310 |
+#endif // nsMimeInfoUnix_h__ |
1311 |
Index: uriloader/exthandler/unix/nsOSHelperAppService.cpp |
1312 |
=================================================================== |
1313 |
RCS file: /cvsroot/mozilla/uriloader/exthandler/unix/nsOSHelperAppService.cpp,v |
1314 |
retrieving revision 1.58 |
1315 |
diff -d -u -p -r1.58 nsOSHelperAppService.cpp |
1316 |
--- uriloader/exthandler/unix/nsOSHelperAppService.cpp 25 Oct 2004 07:46:01 -0000 1.58 |
1317 |
+++ uriloader/exthandler/unix/nsOSHelperAppService.cpp 21 Jul 2005 03:07:40 -0000 |
1318 |
@@ -44,6 +44,7 @@ |
1319 |
#include "nsOSHelperAppService.h" |
1320 |
#ifdef MOZ_WIDGET_GTK2 |
1321 |
#include "nsGNOMERegistry.h" |
1322 |
+#include "nsMIMEInfoUnix.h" |
1323 |
#endif |
1324 |
#include "nsISupports.h" |
1325 |
#include "nsString.h" |
1326 |
|
1327 |
|
1328 |
|
1329 |
1.1 src/patchsets/seamonkey/1.1.18/032_firefox-2.0_ppc64-1.patch |
1330 |
|
1331 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/032_firefox-2.0_ppc64-1.patch?rev=1.1&view=markup |
1332 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/032_firefox-2.0_ppc64-1.patch?rev=1.1&content-type=text/plain |
1333 |
|
1334 |
Index: 032_firefox-2.0_ppc64-1.patch |
1335 |
=================================================================== |
1336 |
# Upstream https://bugzilla.mozilla.org/show_bug.cgi?id=361415 |
1337 |
|
1338 |
unchanged: |
1339 |
--- mozilla.orig/xpcom/reflect/xptcall/src/md/unix/Makefile.in 2006-11-21 17:09:28.000000000 +0000 |
1340 |
+++ mozilla/xpcom/reflect/xptcall/src/md/unix/Makefile.in 2006-11-20 10:13:38.000000000 +0000 |
1341 |
@@ -267,6 +267,11 @@ |
1342 |
ASFILES := xptcinvoke_asm_ppc_linux.s xptcstubs_asm_ppc_linux.s |
1343 |
AS := $(CC) -c -x assembler-with-cpp |
1344 |
endif |
1345 |
+ifeq ($(OS_ARCH)$(OS_TEST),Linuxppc64) |
1346 |
+CPPSRCS := xptcinvoke_ppc64_linux.cpp xptcstubs_ppc64_linux.cpp |
1347 |
+ASFILES := xptcinvoke_asm_ppc64_linux.s xptcstubs_asm_ppc64_linux.s |
1348 |
+AS := $(CC) -c -x assembler-with-cpp |
1349 |
+endif |
1350 |
|
1351 |
# |
1352 |
# NetBSD/PPC |
1353 |
diff -u mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_ppc64_linux.s mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_ppc64_linux.s |
1354 |
--- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_ppc64_linux.s 2006-11-21 14:01:45.000000000 +0000 |
1355 |
+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_ppc64_linux.s 2006-11-22 10:43:26.000000000 +0000 |
1356 |
@@ -0,0 +1,154 @@ |
1357 |
+// -*- Mode: Asm -*- |
1358 |
+// |
1359 |
+// The contents of this file are subject to the Netscape Public |
1360 |
+// License Version 1.1 (the "License"); you may not use this file |
1361 |
+// except in compliance with the License. You may obtain a copy of |
1362 |
+// the License at http://www.mozilla.org/NPL/ |
1363 |
+// |
1364 |
+// Software distributed under the License is distributed on an "AS |
1365 |
+// IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or |
1366 |
+// implied. See the License for the specific language governing |
1367 |
+// rights and limitations under the License. |
1368 |
+// |
1369 |
+// The Original Code is mozilla.org code. |
1370 |
+// |
1371 |
+// The Initial Developer of the Original Code is Netscape |
1372 |
+// Communications Corporation. Portions created by Netscape are |
1373 |
+// Copyright (C) 1999 Netscape Communications Corporation. All |
1374 |
+// Rights Reserved. |
1375 |
+// |
1376 |
+// Contributor(s): |
1377 |
+// dwmw2@×××××××××.org (David Woodhouse) |
1378 |
+// Franz.Sirl-kernel@××××××××××.com (Franz Sirl) |
1379 |
+// beard@××××××××.com (Patrick Beard) |
1380 |
+// waterson@××××××××.com (Chris Waterson) |
1381 |
+// |
1382 |
+ |
1383 |
+.set r0,0; .set r1,1; .set r2,2; .set r3,3; .set r4,4 |
1384 |
+.set r5,5; .set r6,6; .set r7,7; .set r8,8; .set r9,9 |
1385 |
+.set r10,10; .set r11,11; .set r12,12; .set r13,13; .set r14,14 |
1386 |
+.set r15,15; .set r16,16; .set r17,17; .set r18,18; .set r19,19 |
1387 |
+.set r20,20; .set r21,21; .set r22,22; .set r23,23; .set r24,24 |
1388 |
+.set r25,25; .set r26,26; .set r27,27; .set r28,28; .set r29,29 |
1389 |
+.set r30,30; .set r31,31 |
1390 |
+.set f0,0; .set f1,1; .set f2,2; .set f3,3; .set f4,4 |
1391 |
+.set f5,5; .set f6,6; .set f7,7; .set f8,8; .set f9,9 |
1392 |
+.set f10,10; .set f11,11; .set f12,12; .set f13,13; .set f14,14 |
1393 |
+.set f15,15; .set f16,16; .set f17,17; .set f18,18; .set f19,19 |
1394 |
+.set f20,20; .set f21,21; .set f22,22; .set f23,23; .set f24,24 |
1395 |
+.set f25,25; .set f26,26; .set f27,27; .set f28,28; .set f29,29 |
1396 |
+.set f30,30; .set f31,31 |
1397 |
+ |
1398 |
+ |
1399 |
+// |
1400 |
+// XPTC_InvokeByIndex(nsISupports* that, PRUint32 methodIndex, |
1401 |
+// PRUint32 paramCount, nsXPTCVariant* params) |
1402 |
+// |
1403 |
+ |
1404 |
+ .section ".toc","aw" |
1405 |
+ .section ".text" |
1406 |
+ .align 2 |
1407 |
+ .globl XPTC_InvokeByIndex |
1408 |
+ .section ".opd","aw" |
1409 |
+ .align 3 |
1410 |
+XPTC_InvokeByIndex: |
1411 |
+ .quad .XPTC_InvokeByIndex,.TOC.@tocbase |
1412 |
+ .previous |
1413 |
+ .type XPTC_InvokeByIndex,@function |
1414 |
+.XPTC_InvokeByIndex: |
1415 |
+ mflr 0 |
1416 |
+ std 0,16(r1) |
1417 |
+ |
1418 |
+ std r29,-24(r1) |
1419 |
+ std r30,-16(r1) |
1420 |
+ std r31,-8(r1) |
1421 |
+ |
1422 |
+ mr r29,r3 // Save 'that' in r29 |
1423 |
+ mr r30,r4 // Save 'methodIndex' in r30 |
1424 |
+ mr r31,r1 // Save old frame |
1425 |
+ |
1426 |
+ // Allocate stack frame with space for params. Since at least the |
1427 |
+ // first 7 parameters (not including 'that') will be in registers, |
1428 |
+ // we don't actually need stack space for those. We must ensure |
1429 |
+ // that the stack remains 16-byte aligned. |
1430 |
+ // |
1431 |
+ // | ..128-byte stack frame.. | | 7 GP | 13 FP | 3 NV | |
1432 |
+ // | |(params)........| regs | regs | regs | |
1433 |
+ // (r1)...........(+112)....(+128) |
1434 |
+ // (-23*8).(-16*8).(-3*8)..(r31) |
1435 |
+ |
1436 |
+ // +stack frame, -unused stack params, +regs storage, +1 for alignment |
1437 |
+ addi r7,r5,((112/8)-7+7+13+3+1) |
1438 |
+ rldicr r7,r7,3,59 // multiply by 8 and mask with ~15 |
1439 |
+ neg r7,r7 |
1440 |
+ stdux r1,r1,r7 |
1441 |
+ |
1442 |
+ |
1443 |
+ // Call invoke_copy_to_stack(PRUint64* gpregs, double* fpregs, |
1444 |
+ // PRUint32 paramCount, nsXPTCVariant* s, |
1445 |
+ // PRUint64* d)) |
1446 |
+ |
1447 |
+ // r5, r6 are passed through intact (paramCount, params) |
1448 |
+ // r7 (d) has to be r1+112 -- where parameters are passed on the stack. |
1449 |
+ // r3, r4 are above that, easier to address from r31 than from r1 |
1450 |
+ |
1451 |
+ subi r3,r31,(23*8) // r3 --> GPRS |
1452 |
+ subi r4,r31,(16*8) // r4 --> FPRS |
1453 |
+ addi r7,r1,112 // r7 --> params |
1454 |
+ bl invoke_copy_to_stack |
1455 |
+ nop |
1456 |
+ |
1457 |
+ // Set up to invoke function |
1458 |
+ |
1459 |
+ ld r9,0(r29) // vtable (r29 is 'that') |
1460 |
+ mr r3,r29 // self is first arg, obviously |
1461 |
+ |
1462 |
+ sldi r30,r30,3 // Find function descriptor |
1463 |
+ add r9,r9,r30 |
1464 |
+ ld r9,0(r9) |
1465 |
+ |
1466 |
+ ld r0,0(r9) // Actual address from fd. |
1467 |
+ std r2,40(r1) // Save r2 (TOC pointer) |
1468 |
+ |
1469 |
+ mtctr 0 |
1470 |
+ ld r11,16(r9) // Environment pointer from fd. |
1471 |
+ ld r2,8(r9) // TOC pointer from fd. |
1472 |
+ |
1473 |
+ // Load FP and GP registers as required |
1474 |
+ ld r4, -(23*8)(r31) |
1475 |
+ ld r5, -(22*8)(r31) |
1476 |
+ ld r6, -(21*8)(r31) |
1477 |
+ ld r7, -(20*8)(r31) |
1478 |
+ ld r8, -(19*8)(r31) |
1479 |
+ ld r9, -(18*8)(r31) |
1480 |
+ ld r10, -(17*8)(r31) |
1481 |
+ |
1482 |
+ lfd f1, -(16*8)(r31) |
1483 |
+ lfd f2, -(15*8)(r31) |
1484 |
+ lfd f3, -(14*8)(r31) |
1485 |
+ lfd f4, -(13*8)(r31) |
1486 |
+ lfd f5, -(12*8)(r31) |
1487 |
+ lfd f6, -(11*8)(r31) |
1488 |
+ lfd f7, -(10*8)(r31) |
1489 |
+ lfd f8, -(9*8)(r31) |
1490 |
+ lfd f9, -(8*8)(r31) |
1491 |
+ lfd f10, -(7*8)(r31) |
1492 |
+ lfd f11, -(6*8)(r31) |
1493 |
+ lfd f12, -(5*8)(r31) |
1494 |
+ lfd f13, -(4*8)(r31) |
1495 |
+ |
1496 |
+ bctrl // Do it |
1497 |
+ |
1498 |
+ ld r2,40(r1) // Load our own TOC pointer |
1499 |
+ ld r1,0(r1) // Revert stack frame |
1500 |
+ ld 0,16(r1) // Reload lr |
1501 |
+ ld 29,-24(r1) // Restore NVGPRS |
1502 |
+ ld 30,-16(r1) |
1503 |
+ ld 31,-8(r1) |
1504 |
+ mtlr 0 |
1505 |
+ blr |
1506 |
+ |
1507 |
+ .size XPTC_InvokeByIndex,.-.XPTC_InvokeByIndex |
1508 |
+ |
1509 |
+ /* Magic indicating no need for an executable stack */ |
1510 |
+ .section .note.GNU-stack, "", @progbits ; .previous |
1511 |
--- mozilla.orig/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_ppc64_linux.cpp 1970-01-01 01:00:00.000000000 +0100 |
1512 |
+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_ppc64_linux.cpp 2006-11-21 17:00:06.000000000 +0000 |
1513 |
@@ -0,0 +1,127 @@ |
1514 |
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ |
1515 |
+/* ***** BEGIN LICENSE BLOCK ***** |
1516 |
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1 |
1517 |
+ * |
1518 |
+ * The contents of this file are subject to the Mozilla Public License Version |
1519 |
+ * 1.1 (the "License"); you may not use this file except in compliance with |
1520 |
+ * the License. You may obtain a copy of the License at |
1521 |
+ * http://www.mozilla.org/MPL/ |
1522 |
+ * |
1523 |
+ * Software distributed under the License is distributed on an "AS IS" basis, |
1524 |
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License |
1525 |
+ * for the specific language governing rights and limitations under the |
1526 |
+ * License. |
1527 |
+ * |
1528 |
+ * The Original Code is mozilla.org code. |
1529 |
+ * |
1530 |
+ * The Initial Developer of the Original Code is |
1531 |
+ * Netscape Communications Corporation. |
1532 |
+ * Portions created by the Initial Developer are Copyright (C) 1998 |
1533 |
+ * the Initial Developer. All Rights Reserved. |
1534 |
+ * |
1535 |
+ * Contributor(s): |
1536 |
+ * dwmw2@×××××××××.org (David Woodhouse) |
1537 |
+ * Franz.Sirl-kernel@××××××××××.com (Franz Sirl) |
1538 |
+ * beard@××××××××.com (Patrick Beard) |
1539 |
+ * waterson@××××××××.com (Chris Waterson) |
1540 |
+ * |
1541 |
+ * Alternatively, the contents of this file may be used under the terms of |
1542 |
+ * either of the GNU General Public License Version 2 or later (the "GPL"), |
1543 |
+ * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), |
1544 |
+ * in which case the provisions of the GPL or the LGPL are applicable instead |
1545 |
+ * of those above. If you wish to allow use of your version of this file only |
1546 |
+ * under the terms of either the GPL or the LGPL, and not to allow others to |
1547 |
+ * use your version of this file under the terms of the MPL, indicate your |
1548 |
+ * decision by deleting the provisions above and replace them with the notice |
1549 |
+ * and other provisions required by the GPL or the LGPL. If you do not delete |
1550 |
+ * the provisions above, a recipient may use your version of this file under |
1551 |
+ * the terms of any one of the MPL, the GPL or the LGPL. |
1552 |
+ * |
1553 |
+ * ***** END LICENSE BLOCK ***** */ |
1554 |
+ |
1555 |
+// Platform specific code to invoke XPCOM methods on native objects |
1556 |
+ |
1557 |
+// The purpose of XPTC_InvokeByIndex() is to map a platform |
1558 |
+// independent call to the platform ABI. To do that, |
1559 |
+// XPTC_InvokeByIndex() has to determine the method to call via vtable |
1560 |
+// access. The parameters for the method are read from the |
1561 |
+// nsXPTCVariant* and prepared for the native ABI. |
1562 |
+ |
1563 |
+#include <stdio.h> |
1564 |
+#include "xptcprivate.h" |
1565 |
+ |
1566 |
+// 8 integral parameters are passed in registers, not including 'that' |
1567 |
+#define GPR_COUNT 7 |
1568 |
+ |
1569 |
+// 8 floating point parameters are passed in registers, floats are |
1570 |
+// promoted to doubles when passed in registers |
1571 |
+#define FPR_COUNT 13 |
1572 |
+ |
1573 |
+extern "C" PRUint32 |
1574 |
+invoke_count_words(PRUint32 paramCount, nsXPTCVariant* s) |
1575 |
+{ |
1576 |
+ return PRUint32(((paramCount * 2) + 3) & ~3); |
1577 |
+} |
1578 |
+ |
1579 |
+extern "C" void |
1580 |
+invoke_copy_to_stack(PRUint64* gpregs, |
1581 |
+ double* fpregs, |
1582 |
+ PRUint32 paramCount, |
1583 |
+ nsXPTCVariant* s, |
1584 |
+ PRUint64* d) |
1585 |
+{ |
1586 |
+ PRUint64 tempu64; |
1587 |
+ |
1588 |
+ for(uint32 i = 0; i < paramCount; i++, s++) { |
1589 |
+ if(s->IsPtrData()) |
1590 |
+ tempu64 = (PRUint64) s->ptr; |
1591 |
+ else { |
1592 |
+ switch(s->type) { |
1593 |
+ case nsXPTType::T_FLOAT: break; |
1594 |
+ case nsXPTType::T_DOUBLE: break; |
1595 |
+ case nsXPTType::T_I8: tempu64 = s->val.i8; break; |
1596 |
+ case nsXPTType::T_I16: tempu64 = s->val.i16; break; |
1597 |
+ case nsXPTType::T_I32: tempu64 = s->val.i32; break; |
1598 |
+ case nsXPTType::T_I64: tempu64 = s->val.i64; break; |
1599 |
+ case nsXPTType::T_U8: tempu64 = s->val.u8; break; |
1600 |
+ case nsXPTType::T_U16: tempu64 = s->val.u16; break; |
1601 |
+ case nsXPTType::T_U32: tempu64 = s->val.u32; break; |
1602 |
+ case nsXPTType::T_U64: tempu64 = s->val.u64; break; |
1603 |
+ case nsXPTType::T_BOOL: tempu64 = s->val.b; break; |
1604 |
+ case nsXPTType::T_CHAR: tempu64 = s->val.c; break; |
1605 |
+ case nsXPTType::T_WCHAR: tempu64 = s->val.wc; break; |
1606 |
+ default: tempu64 = (PRUint64) s->val.p; break; |
1607 |
+ } |
1608 |
+ } |
1609 |
+ |
1610 |
+ if (!s->IsPtrData() && s->type == nsXPTType::T_DOUBLE) { |
1611 |
+ if (i < FPR_COUNT) |
1612 |
+ fpregs[i] = s->val.d; |
1613 |
+ else |
1614 |
+ *(double *)d = s->val.d; |
1615 |
+ } |
1616 |
+ else if (!s->IsPtrData() && s->type == nsXPTType::T_FLOAT) { |
1617 |
+ if (i < FPR_COUNT) { |
1618 |
+ fpregs[i] = s->val.f; // if passed in registers, floats are promoted to doubles |
1619 |
+ } else { |
1620 |
+ float *p = (float *)d; |
1621 |
+ p++; |
1622 |
+ *p = s->val.f; |
1623 |
+ } |
1624 |
+ } |
1625 |
+ else { |
1626 |
+ if (i < GPR_COUNT) |
1627 |
+ gpregs[i] = tempu64; |
1628 |
+ else |
1629 |
+ *d = tempu64; |
1630 |
+ } |
1631 |
+ if (i >= 7) |
1632 |
+ d++; |
1633 |
+ } |
1634 |
+} |
1635 |
+ |
1636 |
+extern "C" |
1637 |
+XPTC_PUBLIC_API(nsresult) |
1638 |
+XPTC_InvokeByIndex(nsISupports* that, PRUint32 methodIndex, |
1639 |
+ PRUint32 paramCount, nsXPTCVariant* params); |
1640 |
+ |
1641 |
diff -u mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_ppc64_linux.s mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_ppc64_linux.s |
1642 |
--- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_ppc64_linux.s 2006-11-21 16:38:52.000000000 +0000 |
1643 |
+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_ppc64_linux.s 2006-11-22 10:51:14.000000000 +0000 |
1644 |
@@ -0,0 +1,102 @@ |
1645 |
+// -*- Mode: Asm -*- |
1646 |
+// |
1647 |
+// The contents of this file are subject to the Netscape Public |
1648 |
+// License Version 1.1 (the "License"); you may not use this file |
1649 |
+// except in compliance with the License. You may obtain a copy of |
1650 |
+// the License at http://www.mozilla.org/NPL/ |
1651 |
+// |
1652 |
+// Software distributed under the License is distributed on an "AS |
1653 |
+// IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or |
1654 |
+// implied. See the License for the specific language governing |
1655 |
+// rights and limitations under the License. |
1656 |
+// |
1657 |
+// The Original Code is mozilla.org code. |
1658 |
+// |
1659 |
+// The Initial Developer of the Original Code is Netscape |
1660 |
+// Communications Corporation. Portions created by Netscape are |
1661 |
+// Copyright (C) 1999 Netscape Communications Corporation. All |
1662 |
+// Rights Reserved. |
1663 |
+// |
1664 |
+// Contributor(s): |
1665 |
+// dwmw2@×××××××××.org (David Woodhouse) |
1666 |
+// Franz.Sirl-kernel@××××××××××.com (Franz Sirl) |
1667 |
+// beard@××××××××.com (Patrick Beard) |
1668 |
+// waterson@××××××××.com (Chris Waterson) |
1669 |
+// |
1670 |
+ |
1671 |
+.set r0,0; .set r1,1; .set RTOC,2; .set r3,3; .set r4,4 |
1672 |
+.set r5,5; .set r6,6; .set r7,7; .set r8,8; .set r9,9 |
1673 |
+.set r10,10; .set r11,11; .set r12,12; .set r13,13; .set r14,14 |
1674 |
+.set r15,15; .set r16,16; .set r17,17; .set r18,18; .set r19,19 |
1675 |
+.set r20,20; .set r21,21; .set r22,22; .set r23,23; .set r24,24 |
1676 |
+.set r25,25; .set r26,26; .set r27,27; .set r28,28; .set r29,29 |
1677 |
+.set r30,30; .set r31,31 |
1678 |
+.set f0,0; .set f1,1; .set f2,2; .set f3,3; .set f4,4 |
1679 |
+.set f5,5; .set f6,6; .set f7,7; .set f8,8; .set f9,9 |
1680 |
+.set f10,10; .set f11,11; .set f12,12; .set f13,13; .set f14,14 |
1681 |
+.set f15,15; .set f16,16; .set f17,17; .set f18,18; .set f19,19 |
1682 |
+.set f20,20; .set f21,21; .set f22,22; .set f23,23; .set f24,24 |
1683 |
+.set f25,25; .set f26,26; .set f27,27; .set f28,28; .set f29,29 |
1684 |
+.set f30,30; .set f31,31 |
1685 |
+ |
1686 |
+ .section ".text" |
1687 |
+ .align 2 |
1688 |
+ .globl SharedStub |
1689 |
+ .section ".opd","aw" |
1690 |
+ .align 3 |
1691 |
+ |
1692 |
+SharedStub: |
1693 |
+ .quad .SharedStub,.TOC.@tocbase |
1694 |
+ .previous |
1695 |
+ .type SharedStub,@function |
1696 |
+ |
1697 |
+.SharedStub: |
1698 |
+ mflr r0 |
1699 |
+ |
1700 |
+ std r4, -56(r1) // Save all GPRS |
1701 |
+ std r5, -48(r1) |
1702 |
+ std r6, -40(r1) |
1703 |
+ std r7, -32(r1) |
1704 |
+ std r8, -24(r1) |
1705 |
+ std r9, -16(r1) |
1706 |
+ std r10, -8(r1) |
1707 |
+ |
1708 |
+ stfd f13, -64(r1) // ... and FPRS |
1709 |
+ stfd f12, -72(r1) |
1710 |
+ stfd f11, -80(r1) |
1711 |
+ stfd f10, -88(r1) |
1712 |
+ stfd f9, -96(r1) |
1713 |
+ stfd f8, -104(r1) |
1714 |
+ stfd f7, -112(r1) |
1715 |
+ stfd f6, -120(r1) |
1716 |
+ stfd f5, -128(r1) |
1717 |
+ stfd f4, -136(r1) |
1718 |
+ stfd f3, -144(r1) |
1719 |
+ stfd f2, -152(r1) |
1720 |
+ stfd f1, -160(r1) |
1721 |
+ |
1722 |
+ subi r6,r1,56 // r6 --> gprData |
1723 |
+ subi r7,r1,160 // r7 --> fprData |
1724 |
+ addi r5,r1,112 // r5 --> extra stack args |
1725 |
+ |
1726 |
+ std r0, 16(r1) |
1727 |
+ |
1728 |
+ stdu r1,-288(r1) |
1729 |
+ // r3 has the 'self' pointer already |
1730 |
+ |
1731 |
+ mr r4,r11 // r4 is methodIndex selector, passed |
1732 |
+ // via r11 in the nsXPTCStubBase::StubXX() call |
1733 |
+ |
1734 |
+ bl PrepareAndDispatch |
1735 |
+ nop |
1736 |
+ |
1737 |
+ ld 1,0(r1) // restore stack |
1738 |
+ ld r0,16(r1) // restore LR |
1739 |
+ mtlr r0 |
1740 |
+ blr |
1741 |
+ |
1742 |
+ .size SharedStub,.-.SharedStub |
1743 |
+ |
1744 |
+ |
1745 |
+/* Magic indicating no need for an executable stack */ |
1746 |
+.section .note.GNU-stack, "", @progbits ; .previous |
1747 |
unchanged: |
1748 |
--- mozilla.orig/xpcom/reflect/xptcall/src/md/unix/xptcstubs_ppc64_linux.cpp 1970-01-01 01:00:00.000000000 +0100 |
1749 |
+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_ppc64_linux.cpp 2006-11-21 16:59:46.000000000 +0000 |
1750 |
@@ -0,0 +1,247 @@ |
1751 |
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ |
1752 |
+/* ***** BEGIN LICENSE BLOCK ***** |
1753 |
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1 |
1754 |
+ * |
1755 |
+ * The contents of this file are subject to the Mozilla Public License Version |
1756 |
+ * 1.1 (the "License"); you may not use this file except in compliance with |
1757 |
+ * the License. You may obtain a copy of the License at |
1758 |
+ * http://www.mozilla.org/MPL/ |
1759 |
+ * |
1760 |
+ * Software distributed under the License is distributed on an "AS IS" basis, |
1761 |
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License |
1762 |
+ * for the specific language governing rights and limitations under the |
1763 |
+ * License. |
1764 |
+ * |
1765 |
+ * The Original Code is mozilla.org code. |
1766 |
+ * |
1767 |
+ * The Initial Developer of the Original Code is |
1768 |
+ * Netscape Communications Corporation. |
1769 |
+ * Portions created by the Initial Developer are Copyright (C) 1999 |
1770 |
+ * the Initial Developer. All Rights Reserved. |
1771 |
+ * |
1772 |
+ * Contributor(s): |
1773 |
+ * dwmw2@×××××××××.org (David Woodhouse) |
1774 |
+ * Franz.Sirl-kernel@××××××××××.com (Franz Sirl) |
1775 |
+ * beard@××××××××.com (Patrick Beard) |
1776 |
+ * waterson@××××××××.com (Chris Waterson) |
1777 |
+ * |
1778 |
+ * Alternatively, the contents of this file may be used under the terms of |
1779 |
+ * either of the GNU General Public License Version 2 or later (the "GPL"), |
1780 |
+ * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), |
1781 |
+ * in which case the provisions of the GPL or the LGPL are applicable instead |
1782 |
+ * of those above. If you wish to allow use of your version of this file only |
1783 |
+ * under the terms of either the GPL or the LGPL, and not to allow others to |
1784 |
+ * use your version of this file under the terms of the MPL, indicate your |
1785 |
+ * decision by deleting the provisions above and replace them with the notice |
1786 |
+ * and other provisions required by the GPL or the LGPL. If you do not delete |
1787 |
+ * the provisions above, a recipient may use your version of this file under |
1788 |
+ * the terms of any one of the MPL, the GPL or the LGPL. |
1789 |
+ * |
1790 |
+ * ***** END LICENSE BLOCK ***** */ |
1791 |
+ |
1792 |
+// Implement shared vtbl methods. |
1793 |
+ |
1794 |
+#include "xptcprivate.h" |
1795 |
+ |
1796 |
+// The Linux/PPC ABI (aka PPC/SYSV ABI) passes the first 8 integral |
1797 |
+// parameters and the first 13 floating point parameters in registers |
1798 |
+// (r3-r10 and f1-f13), no stack space is allocated for these by the |
1799 |
+// caller. The rest of the parameters are passed in the callers stack |
1800 |
+// area. The stack pointer has to retain 16-byte alignment, longlongs |
1801 |
+// and doubles are aligned on 8-byte boundaries. |
1802 |
+ |
1803 |
+#define PARAM_BUFFER_COUNT 16 |
1804 |
+#define GPR_COUNT 7 |
1805 |
+#define FPR_COUNT 13 |
1806 |
+ |
1807 |
+// PrepareAndDispatch() is called by SharedStub() and calls the actual method. |
1808 |
+// |
1809 |
+// - 'args[]' contains the arguments passed on stack |
1810 |
+// - 'gprData[]' contains the arguments passed in integer registers |
1811 |
+// - 'fprData[]' contains the arguments passed in floating point registers |
1812 |
+// |
1813 |
+// The parameters are mapped into an array of type 'nsXPTCMiniVariant' |
1814 |
+// and then the method gets called. |
1815 |
+#include <stdio.h> |
1816 |
+extern "C" nsresult |
1817 |
+PrepareAndDispatch(nsXPTCStubBase* self, |
1818 |
+ PRUint64 methodIndex, |
1819 |
+ PRUint64* args, |
1820 |
+ PRUint64 *gprData, |
1821 |
+ double *fprData) |
1822 |
+{ |
1823 |
+ nsXPTCMiniVariant paramBuffer[PARAM_BUFFER_COUNT]; |
1824 |
+ nsXPTCMiniVariant* dispatchParams = NULL; |
1825 |
+ nsIInterfaceInfo* iface_info = NULL; |
1826 |
+ const nsXPTMethodInfo* info; |
1827 |
+ PRUint32 paramCount; |
1828 |
+ PRUint32 i; |
1829 |
+ nsresult result = NS_ERROR_FAILURE; |
1830 |
+ |
1831 |
+ NS_ASSERTION(self,"no self"); |
1832 |
+ |
1833 |
+ self->GetInterfaceInfo(&iface_info); |
1834 |
+ NS_ASSERTION(iface_info,"no interface info"); |
1835 |
+ if (! iface_info) |
1836 |
+ return NS_ERROR_UNEXPECTED; |
1837 |
+ |
1838 |
+ iface_info->GetMethodInfo(PRUint16(methodIndex), &info); |
1839 |
+ NS_ASSERTION(info,"no method info"); |
1840 |
+ if (! info) |
1841 |
+ return NS_ERROR_UNEXPECTED; |
1842 |
+ |
1843 |
+ paramCount = info->GetParamCount(); |
1844 |
+ |
1845 |
+ // setup variant array pointer |
1846 |
+ if(paramCount > PARAM_BUFFER_COUNT) |
1847 |
+ dispatchParams = new nsXPTCMiniVariant[paramCount]; |
1848 |
+ else |
1849 |
+ dispatchParams = paramBuffer; |
1850 |
+ |
1851 |
+ NS_ASSERTION(dispatchParams,"no place for params"); |
1852 |
+ if (! dispatchParams) |
1853 |
+ return NS_ERROR_OUT_OF_MEMORY; |
1854 |
+ |
1855 |
+ PRUint64* ap = args; |
1856 |
+ PRUint64 tempu64; |
1857 |
+ |
1858 |
+ for(i = 0; i < paramCount; i++) { |
1859 |
+ const nsXPTParamInfo& param = info->GetParam(i); |
1860 |
+ const nsXPTType& type = param.GetType(); |
1861 |
+ nsXPTCMiniVariant* dp = &dispatchParams[i]; |
1862 |
+ |
1863 |
+ if (!param.IsOut() && type == nsXPTType::T_DOUBLE) { |
1864 |
+ if (i < FPR_COUNT) |
1865 |
+ dp->val.d = fprData[i]; |
1866 |
+ else |
1867 |
+ dp->val.d = *(double*) ap; |
1868 |
+ } else if (!param.IsOut() && type == nsXPTType::T_FLOAT) { |
1869 |
+ if (i < FPR_COUNT) |
1870 |
+ dp->val.f = (float) fprData[i]; // in registers floats are passed as doubles |
1871 |
+ else { |
1872 |
+ float *p = (float *)ap; |
1873 |
+ p++; |
1874 |
+ dp->val.f = *p; |
1875 |
+ } |
1876 |
+ } else { /* integer type or pointer */ |
1877 |
+ if (i < GPR_COUNT) |
1878 |
+ tempu64 = gprData[i]; |
1879 |
+ else |
1880 |
+ tempu64 = *ap; |
1881 |
+ |
1882 |
+ if (param.IsOut() || !type.IsArithmetic()) |
1883 |
+ dp->val.p = (void*) tempu64; |
1884 |
+ else if (type ==nsXPTType::T_I8) |
1885 |
+ dp->val.i8 = (PRInt8) tempu64; |
1886 |
+ else if (type ==nsXPTType::T_I16) |
1887 |
+ dp->val.i16 = (PRInt16) tempu64; |
1888 |
+ else if (type ==nsXPTType::T_I32) |
1889 |
+ dp->val.i32 = (PRInt32) tempu64; |
1890 |
+ else if (type ==nsXPTType::T_I64) |
1891 |
+ dp->val.i64 = (PRInt64) tempu64; |
1892 |
+ else if (type ==nsXPTType::T_U8) |
1893 |
+ dp->val.u8 = (PRUint8) tempu64; |
1894 |
+ else if (type ==nsXPTType::T_U16) |
1895 |
+ dp->val.u16 = (PRUint16) tempu64; |
1896 |
+ else if (type ==nsXPTType::T_U32) |
1897 |
+ dp->val.u32 = (PRUint32) tempu64; |
1898 |
+ else if (type ==nsXPTType::T_U64) |
1899 |
+ dp->val.u64 = (PRUint64) tempu64; |
1900 |
+ else if (type ==nsXPTType::T_BOOL) |
1901 |
+ dp->val.b = (PRBool) tempu64; |
1902 |
+ else if (type ==nsXPTType::T_CHAR) |
1903 |
+ dp->val.c = (char) tempu64; |
1904 |
+ else if (type ==nsXPTType::T_WCHAR) |
1905 |
+ dp->val.wc = (wchar_t) tempu64; |
1906 |
+ else |
1907 |
+ NS_ASSERTION(0, "bad type"); |
1908 |
+ } |
1909 |
+ |
1910 |
+ if (i >= 7) |
1911 |
+ ap++; |
1912 |
+ } |
1913 |
+ |
1914 |
+ result = self->CallMethod((PRUint16) methodIndex, info, dispatchParams); |
1915 |
+ |
1916 |
+ NS_RELEASE(iface_info); |
1917 |
+ |
1918 |
+ if (dispatchParams != paramBuffer) |
1919 |
+ delete [] dispatchParams; |
1920 |
+ |
1921 |
+ return result; |
1922 |
+} |
1923 |
+ |
1924 |
+// Load r11 with the constant 'n' and branch to SharedStub(). |
1925 |
+// |
1926 |
+// XXX Yes, it's ugly that we're relying on gcc's name-mangling here; |
1927 |
+// however, it's quick, dirty, and'll break when the ABI changes on |
1928 |
+// us, which is what we want ;-). |
1929 |
+ |
1930 |
+#if __GXX_ABI_VERSION < 100 |
1931 |
+#error Prehistoric GCC not supported here |
1932 |
+#else |
1933 |
+// gcc-3 version |
1934 |
+// |
1935 |
+// As G++3 ABI contains the length of the functionname in the mangled |
1936 |
+// name, it is difficult to get a generic assembler mechanism like |
1937 |
+// in the G++ 2.95 case. |
1938 |
+// Create names would be like: |
1939 |
+// _ZN14nsXPTCStubBase5Stub1Ev |
1940 |
+// _ZN14nsXPTCStubBase6Stub12Ev |
1941 |
+// _ZN14nsXPTCStubBase7Stub123Ev |
1942 |
+// _ZN14nsXPTCStubBase8Stub1234Ev |
1943 |
+// etc. |
1944 |
+// Use assembler directives to get the names right... |
1945 |
+ |
1946 |
+# define STUB_ENTRY(n) \ |
1947 |
+__asm__ ( \ |
1948 |
+ ".section \".toc\",\"aw\" \n\t" \ |
1949 |
+ ".section \".text\" \n\t" \ |
1950 |
+ ".align 2 \n\t" \ |
1951 |
+ ".if "#n" < 10 \n\t" \ |
1952 |
+ ".globl _ZN14nsXPTCStubBase5Stub"#n"Ev \n\t" \ |
1953 |
+ ".section \".opd\",\"aw\" \n\t" \ |
1954 |
+ ".align 3 \n\t" \ |
1955 |
+"_ZN14nsXPTCStubBase5Stub"#n"Ev: \n\t" \ |
1956 |
+ ".quad ._ZN14nsXPTCStubBase5Stub"#n"Ev,.TOC.@tocbase \n\t" \ |
1957 |
+ ".previous \n\t" \ |
1958 |
+ ".type _ZN14nsXPTCStubBase5Stub"#n"Ev,@function \n\n" \ |
1959 |
+"._ZN14nsXPTCStubBase5Stub"#n"Ev: \n\t" \ |
1960 |
+ \ |
1961 |
+ ".elseif "#n" < 100 \n\t" \ |
1962 |
+ ".globl _ZN14nsXPTCStubBase6Stub"#n"Ev \n\t" \ |
1963 |
+ ".section \".opd\",\"aw\" \n\t" \ |
1964 |
+ ".align 3 \n\t" \ |
1965 |
+"_ZN14nsXPTCStubBase6Stub"#n"Ev: \n\t" \ |
1966 |
+ ".quad ._ZN14nsXPTCStubBase6Stub"#n"Ev,.TOC.@tocbase \n\t" \ |
1967 |
+ ".previous \n\t" \ |
1968 |
+ ".type _ZN14nsXPTCStubBase6Stub"#n"Ev,@function \n\n" \ |
1969 |
+"._ZN14nsXPTCStubBase6Stub"#n"Ev: \n\t" \ |
1970 |
+ \ |
1971 |
+ ".elseif "#n" < 1000 \n\t" \ |
1972 |
+ ".globl _ZN14nsXPTCStubBase7Stub"#n"Ev \n\t" \ |
1973 |
+ ".section \".opd\",\"aw\" \n\t" \ |
1974 |
+ ".align 3 \n\t" \ |
1975 |
+"_ZN14nsXPTCStubBase7Stub"#n"Ev: \n\t" \ |
1976 |
+ ".quad ._ZN14nsXPTCStubBase7Stub"#n"Ev,.TOC.@tocbase \n\t" \ |
1977 |
+ ".previous \n\t" \ |
1978 |
+ ".type _ZN14nsXPTCStubBase7Stub"#n"Ev,@function \n\n" \ |
1979 |
+"._ZN14nsXPTCStubBase7Stub"#n"Ev: \n\t" \ |
1980 |
+ \ |
1981 |
+ ".else \n\t" \ |
1982 |
+ ".err \"stub number "#n" >= 1000 not yet supported\"\n" \ |
1983 |
+ ".endif \n\t" \ |
1984 |
+ \ |
1985 |
+ "li 11,"#n" \n\t" \ |
1986 |
+ "b SharedStub \n" \ |
1987 |
+); |
1988 |
+#endif |
1989 |
+ |
1990 |
+#define SENTINEL_ENTRY(n) \ |
1991 |
+nsresult nsXPTCStubBase::Sentinel##n() \ |
1992 |
+{ \ |
1993 |
+ NS_ASSERTION(0,"nsXPTCStubBase::Sentinel called"); \ |
1994 |
+ return NS_ERROR_NOT_IMPLEMENTED; \ |
1995 |
+} |
1996 |
+ |
1997 |
+#include "xptcstubsdef.inc" |
1998 |
|
1999 |
|
2000 |
|
2001 |
1.1 src/patchsets/seamonkey/1.1.18/033_firefox-2.0_ppc_powerpc.patch |
2002 |
|
2003 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/033_firefox-2.0_ppc_powerpc.patch?rev=1.1&view=markup |
2004 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/033_firefox-2.0_ppc_powerpc.patch?rev=1.1&content-type=text/plain |
2005 |
|
2006 |
Index: 033_firefox-2.0_ppc_powerpc.patch |
2007 |
=================================================================== |
2008 |
--- mozilla/xpcom/reflect/xptcall/src/md/unix/Makefile.in.orig 2007-03-05 13:46:38.000000000 +0100 |
2009 |
+++ mozilla/xpcom/reflect/xptcall/src/md/unix/Makefile.in 2007-03-05 13:47:30.000000000 +0100 |
2010 |
@@ -288,12 +288,12 @@ |
2011 |
# |
2012 |
# Linux/PPC |
2013 |
# |
2014 |
-ifeq ($(OS_ARCH)$(OS_TEST),Linuxppc) |
2015 |
+ifeq ($(OS_ARCH)$(OS_TEST),Linuxpowerpc) |
2016 |
CPPSRCS := xptcinvoke_ppc_linux.cpp xptcstubs_ppc_linux.cpp |
2017 |
ASFILES := xptcinvoke_asm_ppc_linux.s xptcstubs_asm_ppc_linux.s |
2018 |
AS := $(CC) -c -x assembler-with-cpp |
2019 |
endif |
2020 |
-ifeq ($(OS_ARCH)$(OS_TEST),Linuxppc64) |
2021 |
+ifeq ($(OS_ARCH)$(OS_TEST),Linuxpowerpc64) |
2022 |
CPPSRCS := xptcinvoke_ppc64_linux.cpp xptcstubs_ppc64_linux.cpp |
2023 |
ASFILES := xptcinvoke_asm_ppc64_linux.s xptcstubs_asm_ppc64_linux.s |
2024 |
AS := $(CC) -c -x assembler-with-cpp |
2025 |
|
2026 |
|
2027 |
|
2028 |
1.1 src/patchsets/seamonkey/1.1.18/040_firefox-2.0_arm.patch |
2029 |
|
2030 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/040_firefox-2.0_arm.patch?rev=1.1&view=markup |
2031 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/040_firefox-2.0_arm.patch?rev=1.1&content-type=text/plain |
2032 |
|
2033 |
Index: 040_firefox-2.0_arm.patch |
2034 |
=================================================================== |
2035 |
diff -ur mozilla.orig/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_arm.cpp mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_arm.cpp |
2036 |
--- mozilla.orig/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_arm.cpp 2008-09-25 10:58:54.000000000 +0200 |
2037 |
+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_arm.cpp 2008-09-25 11:05:25.000000000 +0200 |
2038 |
@@ -212,7 +212,7 @@ |
2039 |
"add sp, sp, r4 \n\t" /* restore stack pointer */ |
2040 |
"mov %0, r0 \n\t" /* the result... */ |
2041 |
: "=r" (result) |
2042 |
- : "r" (&my_params) |
2043 |
+ : "r" (&my_params), "m" (my_params) |
2044 |
: "r0", "r1", "r2", "r3", "r4", "ip", "lr", "sp" |
2045 |
); |
2046 |
|
2047 |
diff -ur mozilla.orig/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp |
2048 |
--- mozilla.orig/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp 2008-09-25 10:58:54.000000000 +0200 |
2049 |
+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp 2008-09-25 11:04:51.000000000 +0200 |
2050 |
@@ -57,7 +57,8 @@ |
2051 |
#endif |
2052 |
|
2053 |
/* Specify explicitly a symbol for this function, don't try to guess the c++ mangled symbol. */ |
2054 |
-static nsresult PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args) asm("_PrepareAndDispatch") |
2055 |
+static nsresult PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args) asm("_PrepareAndDispatch") |
2056 |
+__attribute__((used)) |
2057 |
DONT_DROP_OR_WARN; |
2058 |
|
2059 |
static nsresult |
2060 |
|
2061 |
|
2062 |
|
2063 |
1.1 src/patchsets/seamonkey/1.1.18/050_respect-host-variable.patch |
2064 |
|
2065 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/050_respect-host-variable.patch?rev=1.1&view=markup |
2066 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/050_respect-host-variable.patch?rev=1.1&content-type=text/plain |
2067 |
|
2068 |
Index: 050_respect-host-variable.patch |
2069 |
=================================================================== |
2070 |
# https://bugs.gentoo.org/show_bug.cgi?id=168893 |
2071 |
|
2072 |
--- mozilla/configure.in.old 2007-03-02 23:28:27.000000000 +0200 |
2073 |
+++ mozilla/configure.in 2007-03-02 23:29:23.000000000 +0200 |
2074 |
@@ -825,7 +825,6 @@ |
2075 |
OS_TARGET="${target_os}" |
2076 |
OS_ARCH=`echo $target_os | sed -e 's|/|_|g'` |
2077 |
OS_RELEASE= |
2078 |
- OS_TEST="${target_cpu}" |
2079 |
case "${target_os}" in |
2080 |
linux*) OS_ARCH=Linux ;; |
2081 |
solaris*) OS_ARCH=SunOS OS_RELEASE=5 ;; |
2082 |
@@ -837,8 +836,10 @@ |
2083 |
OS_TARGET=`uname -s` |
2084 |
OS_ARCH=`uname -s | sed -e 's|/|_|g'` |
2085 |
OS_RELEASE=`uname -r` |
2086 |
- OS_TEST=`uname -m` |
2087 |
fi |
2088 |
+ |
2089 |
+OS_TEST="${target_cpu}" |
2090 |
+ |
2091 |
_COMPILER_PREFIX= |
2092 |
|
2093 |
HOST_OS_ARCH=`echo $host_os | sed -e 's|/|_|g'` |
2094 |
|
2095 |
|
2096 |
|
2097 |
1.1 src/patchsets/seamonkey/1.1.18/055_firefox-2.0_gfbsd-pthreads.patch |
2098 |
|
2099 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/055_firefox-2.0_gfbsd-pthreads.patch?rev=1.1&view=markup |
2100 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/055_firefox-2.0_gfbsd-pthreads.patch?rev=1.1&content-type=text/plain |
2101 |
|
2102 |
Index: 055_firefox-2.0_gfbsd-pthreads.patch |
2103 |
=================================================================== |
2104 |
# https://bugs.gentoo.org/show_bug.cgi?id=169825 |
2105 |
|
2106 |
--- mozilla/config/rules.mk.orig Thu Sep 14 14:07:03 2006 |
2107 |
+++ mozilla/config/rules.mk Wed Oct 18 11:00:09 2006 |
2108 |
@@ -442,9 +442,7 @@ |
2109 |
endif |
2110 |
|
2111 |
ifeq ($(OS_ARCH),FreeBSD) |
2112 |
-ifdef IS_COMPONENT |
2113 |
-EXTRA_DSO_LDOPTS += -Wl,-Bsymbolic |
2114 |
-endif |
2115 |
+EXTRA_DSO_LDOPTS += -Wl,-Bsymbolic -lc |
2116 |
endif |
2117 |
|
2118 |
ifeq ($(OS_ARCH),NetBSD) |
2119 |
--- mozilla/configure.in.orig 2007-02-06 02:37:37 -0300 |
2120 |
+++ mozilla/configure.in 2007-03-07 15:35:41 -0300 |
2121 |
@@ -2667,7 +2667,7 @@ |
2122 |
*-hpux11.*) |
2123 |
;; |
2124 |
*) |
2125 |
- AC_CHECK_LIB(c_r, gethostbyname_r) |
2126 |
+ AC_SEARCH_LIBS([gethostbyname_r], [c_r]) |
2127 |
;; |
2128 |
esac |
2129 |
AC_CHECK_LIB(m, atan) |
2130 |
--- mozilla/configure.in.orig 2007-02-06 02:37:37 -0300 |
2131 |
+++ mozilla/configure.in 2007-03-07 13:59:53 -0300 |
2132 |
@@ -2839,11 +2839,12 @@ |
2133 |
*-*-freebsd*) |
2134 |
AC_DEFINE(_REENTRANT) |
2135 |
AC_DEFINE(_THREAD_SAFE) |
2136 |
- dnl -pthread links in -lc_r, so don't specify it explicitly. |
2137 |
- if test "$ac_cv_have_dash_pthread" = "yes"; then |
2138 |
- _PTHREAD_LDFLAGS="-pthread" |
2139 |
+ dnl use the environment PTHREAD_LIBS |
2140 |
+ if test -n "$PTHREAD_LIBS"; then |
2141 |
+ _PTHREAD_LDFLAGS="$PTHREAD_LIBS" |
2142 |
else |
2143 |
- _PTHREAD_LDFLAGS="-lc_r" |
2144 |
+ _PTHREAD_LDFLAGS="-lpthread" |
2145 |
fi |
2146 |
+ LDFLAGS="${_PTHREAD_LDFLAGS} ${LDFLAGS}" |
2147 |
;; |
2148 |
|
2149 |
|
2150 |
|
2151 |
1.1 src/patchsets/seamonkey/1.1.18/063_mozilla-rpath-3.patch |
2152 |
|
2153 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/063_mozilla-rpath-3.patch?rev=1.1&view=markup |
2154 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/063_mozilla-rpath-3.patch?rev=1.1&content-type=text/plain |
2155 |
|
2156 |
Index: 063_mozilla-rpath-3.patch |
2157 |
=================================================================== |
2158 |
--- config/rules.mk.orig 2005-07-28 01:45:18.000000000 +0000 |
2159 |
+++ config/rules.mk 2005-07-28 01:45:21.000000000 +0000 |
2160 |
@@ -507,5 +507,10 @@ |
2161 |
# |
2162 |
ifeq ($(OS_ARCH),Linux) |
2163 |
ifdef IS_COMPONENT |
2164 |
+DSO_LDOPTS += -Wl,-rpath,'$$ORIGIN:$$ORIGIN/..' |
2165 |
+OS_LDFLAGS += -Wl,-rpath,'$$ORIGIN:$$ORIGIN/..' |
2166 |
EXTRA_DSO_LDOPTS += -Wl,-Bsymbolic |
2167 |
+else |
2168 |
+DSO_LDOPTS += -Wl,-rpath,'$$ORIGIN' |
2169 |
+OS_LDFLAGS += -Wl,-rpath,'$$ORIGIN' |
2170 |
endif |
2171 |
|
2172 |
|
2173 |
|
2174 |
|
2175 |
1.1 src/patchsets/seamonkey/1.1.18/064_mozilla-1.7.10-nsplugins-v2.patch |
2176 |
|
2177 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/064_mozilla-1.7.10-nsplugins-v2.patch?rev=1.1&view=markup |
2178 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/064_mozilla-1.7.10-nsplugins-v2.patch?rev=1.1&content-type=text/plain |
2179 |
|
2180 |
Index: 064_mozilla-1.7.10-nsplugins-v2.patch |
2181 |
=================================================================== |
2182 |
This is the second revision of the nsplugins patch. The first revision did not |
2183 |
work. This one does. |
2184 |
|
2185 |
This patch adds /usr/$(get_libdir)/nsplugins and /usr/$(get_libdir)/nsbrowser/plugins |
2186 |
to the search path for plugins. The point of this patch is to provide a place |
2187 |
to install netscape-compatible plugins which can be used by any of |
2188 |
mozilla/firefox/thunderbird/seamonkey, for example the acroread plugin. This |
2189 |
obviates the code in nsplugins.eclass except for inst_plugin |
2190 |
|
2191 |
Note that mozilla/firefox/thunderbird/seamonkey handle dup plugins like this: |
2192 |
First by mtime order (more recent takes precedence), second by alpha order. |
2193 |
|
2194 |
01 Aug 2005 agriffis |
2195 |
|
2196 |
--- mozilla/xpcom/io/nsAppFileLocationProvider.cpp.agriffis 2005-08-01 15:53:34.000000000 -0400 |
2197 |
+++ mozilla/xpcom/io/nsAppFileLocationProvider.cpp 2005-08-01 22:18:21.766663456 -0400 |
2198 |
@@ -196,6 +196,14 @@ |
2199 |
if (NS_SUCCEEDED(rv)) |
2200 |
rv = localFile->AppendRelativeNativePath(PLUGINS_DIR_NAME); |
2201 |
} |
2202 |
+ else if (nsCRT::strcmp(prop, GENTOO_NSPLUGINS_DIR) == 0) |
2203 |
+ { |
2204 |
+ rv = NS_NewNativeLocalFile(nsDependentCString(GENTOO_NSPLUGINS_DIR), PR_TRUE, getter_AddRefs(localFile)); |
2205 |
+ } |
2206 |
+ else if (nsCRT::strcmp(prop, GENTOO_NSBROWSER_PLUGINS_DIR) == 0) |
2207 |
+ { |
2208 |
+ rv = NS_NewNativeLocalFile(nsDependentCString(GENTOO_NSBROWSER_PLUGINS_DIR), PR_TRUE, getter_AddRefs(localFile)); |
2209 |
+ } |
2210 |
#if defined(XP_MAC) || defined(XP_MACOSX) |
2211 |
else if (nsCRT::strcmp(prop, NS_MACOSX_USER_PLUGIN_DIR) == 0) |
2212 |
{ |
2213 |
@@ -579,7 +587,7 @@ |
2214 |
|
2215 |
*_retval = new nsAppDirectoryEnumerator(this, keys); |
2216 |
#else |
2217 |
- static const char* keys[] = { nsnull, NS_USER_PLUGINS_DIR, NS_APP_PLUGINS_DIR, nsnull }; |
2218 |
+ static const char* keys[] = { nsnull, GENTOO_NSPLUGINS_DIR, GENTOO_NSBROWSER_PLUGINS_DIR, NS_USER_PLUGINS_DIR, NS_APP_PLUGINS_DIR, nsnull }; |
2219 |
if (!keys[0] && !(keys[0] = PR_GetEnv("MOZ_PLUGIN_PATH"))) { |
2220 |
static const char nullstr = 0; |
2221 |
keys[0] = &nullstr; |
2222 |
|
2223 |
|
2224 |
|
2225 |
1.1 src/patchsets/seamonkey/1.1.18/080_gcc-4.4-elif.patch |
2226 |
|
2227 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/080_gcc-4.4-elif.patch?rev=1.1&view=markup |
2228 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/080_gcc-4.4-elif.patch?rev=1.1&content-type=text/plain |
2229 |
|
2230 |
Index: 080_gcc-4.4-elif.patch |
2231 |
=================================================================== |
2232 |
diff -Naurp mozilla-orig/toolkit/xre/nsAppRunner.cpp mozilla/toolkit/xre/nsAppRunner.cpp |
2233 |
--- mozilla-orig/toolkit/xre/nsAppRunner.cpp 2008-11-17 08:36:43.000000000 -0600 |
2234 |
+++ mozilla/toolkit/xre/nsAppRunner.cpp 2009-03-01 20:35:11.000000000 -0600 |
2235 |
@@ -1459,7 +1459,7 @@ XRE_GetBinaryPath(const char* argv0, nsI |
2236 |
if (NS_FAILED(rv)) |
2237 |
return rv; |
2238 |
|
2239 |
-#elif |
2240 |
+#else |
2241 |
#error Oops, you need platform-specific code here |
2242 |
#endif |
2243 |
|
2244 |
|
2245 |
|
2246 |
|
2247 |
1.1 src/patchsets/seamonkey/1.1.18/090_xul-gcc4.3.patch |
2248 |
|
2249 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/090_xul-gcc4.3.patch?rev=1.1&view=markup |
2250 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/090_xul-gcc4.3.patch?rev=1.1&content-type=text/plain |
2251 |
|
2252 |
Index: 090_xul-gcc4.3.patch |
2253 |
=================================================================== |
2254 |
http://lists.opensuse.org/opensuse-commit/2007-11/msg00823.html |
2255 |
|
2256 |
diff -Naur mozilla-orig/modules/libpr0n/encoders/jpeg/nsJPEGEncoder.h mozilla/modules/libpr0n/encoders/jpeg/nsJPEGEncoder.h |
2257 |
--- mozilla-orig/modules/libpr0n/encoders/jpeg/nsJPEGEncoder.h 2006-05-20 11:20:48.000000000 -0600 |
2258 |
+++ mozilla/modules/libpr0n/encoders/jpeg/nsJPEGEncoder.h 2008-01-06 22:13:39.000000000 -0600 |
2259 |
@@ -39,8 +39,10 @@ |
2260 |
#include "imgIEncoder.h" |
2261 |
#ifdef MOZILLA_1_8_BRANCH |
2262 |
#define imgIEncoder imgIEncoder_MOZILLA_1_8_BRANCH |
2263 |
+#ifndef NS_DECL_IMGIENCODER |
2264 |
#define NS_DECL_IMGIENCODER NS_DECL_IMGIENCODER_MOZILLA_1_8_BRANCH |
2265 |
#endif |
2266 |
+#endif |
2267 |
|
2268 |
// needed for JPEG library |
2269 |
#include <stdio.h> |
2270 |
@@ -69,6 +71,14 @@ |
2271 |
|
2272 |
nsJPEGEncoder(); |
2273 |
|
2274 |
+ NS_IMETHOD InitFromData(const PRUint8* aData, |
2275 |
+ PRUint32 aLength, // (unused, req'd by JS) |
2276 |
+ PRUint32 aWidth, |
2277 |
+ PRUint32 aHeight, |
2278 |
+ PRUint32 aStride, |
2279 |
+ PRUint32 aInputFormat, |
2280 |
+ const nsAString& aOutputOptions); |
2281 |
+ |
2282 |
private: |
2283 |
~nsJPEGEncoder(); |
2284 |
|
2285 |
diff -Naur mozilla-orig/modules/libpr0n/encoders/png/nsPNGEncoder.h mozilla/modules/libpr0n/encoders/png/nsPNGEncoder.h |
2286 |
--- mozilla-orig/modules/libpr0n/encoders/png/nsPNGEncoder.h 2006-05-20 11:20:49.000000000 -0600 |
2287 |
+++ mozilla/modules/libpr0n/encoders/png/nsPNGEncoder.h 2008-01-06 22:11:36.000000000 -0600 |
2288 |
@@ -38,8 +38,10 @@ |
2289 |
#include "imgIEncoder.h" |
2290 |
#ifdef MOZILLA_1_8_BRANCH |
2291 |
#define imgIEncoder imgIEncoder_MOZILLA_1_8_BRANCH |
2292 |
+#ifndef NS_DECL_IMGIENCODER |
2293 |
#define NS_DECL_IMGIENCODER NS_DECL_IMGIENCODER_MOZILLA_1_8_BRANCH |
2294 |
#endif |
2295 |
+#endif |
2296 |
|
2297 |
#include <png.h> |
2298 |
|
2299 |
@@ -63,6 +65,14 @@ |
2300 |
|
2301 |
nsPNGEncoder(); |
2302 |
|
2303 |
+ NS_IMETHOD InitFromData(const PRUint8* aData, |
2304 |
+ PRUint32 aLength, // (unused, req'd by JS) |
2305 |
+ PRUint32 aWidth, |
2306 |
+ PRUint32 aHeight, |
2307 |
+ PRUint32 aStride, |
2308 |
+ PRUint32 aInputFormat, |
2309 |
+ const nsAString& aOutputOptions); |
2310 |
+ |
2311 |
private: |
2312 |
~nsPNGEncoder(); |
2313 |
|
2314 |
diff -Naur mozilla-orig/modules/libpr0n/public/imgIEncoder.idl mozilla/modules/libpr0n/public/imgIEncoder.idl |
2315 |
--- mozilla-orig/modules/libpr0n/public/imgIEncoder.idl 2006-05-20 11:20:49.000000000 -0600 |
2316 |
+++ mozilla/modules/libpr0n/public/imgIEncoder.idl 2008-01-06 22:15:40.000000000 -0600 |
2317 |
@@ -96,6 +96,6 @@ |
2318 |
[scriptable, uuid(CCC5B3AD-3E67-4e3d-97E1-B06B2E96FEF8)] |
2319 |
interface imgIEncoder : nsISupports |
2320 |
{ |
2321 |
- void encodeClipboardImage(in nsIClipboardImage aClipboardImage, out nsIFile aImageFile); |
2322 |
+ /* void encodeClipboardImage(in nsIClipboardImage aClipboardImage, out nsIFile aImageFile); */ |
2323 |
}; |
2324 |
|
2325 |
|
2326 |
|
2327 |
|
2328 |
1.1 src/patchsets/seamonkey/1.1.18/095_glibc_maxpathlen.patch |
2329 |
|
2330 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/095_glibc_maxpathlen.patch?rev=1.1&view=markup |
2331 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/095_glibc_maxpathlen.patch?rev=1.1&content-type=text/plain |
2332 |
|
2333 |
Index: 095_glibc_maxpathlen.patch |
2334 |
=================================================================== |
2335 |
--- toolkit/mozapps/update/src/updater/updater.cpp.old Tue Oct 21 16:36:29 2008 +1300 |
2336 |
+++ toolkit/mozapps/update/src/updater/updater.cpp Mon Oct 20 22:55:57 2008 -0500 |
2337 |
@@ -118,7 +118,9 @@ void LaunchChild(int argc, char **argv); |
2338 |
#endif |
2339 |
|
2340 |
#ifndef MAXPATHLEN |
2341 |
-# ifdef MAX_PATH |
2342 |
+# ifdef PATH_MAX |
2343 |
+# define MAXPATHLEN PATH_MAX |
2344 |
+# elif defined(_MAX_PATH) |
2345 |
# define MAXPATHLEN MAX_PATH |
2346 |
# elif defined(_MAX_PATH) |
2347 |
# define MAXPATHLEN _MAX_PATH |
2348 |
--- toolkit/xre/nsAppRunner.h.old Tue Oct 21 16:36:29 2008 +1300 |
2349 |
+++ toolkit/xre/nsAppRunner.h Mon Oct 20 22:55:57 2008 -0500 |
2350 |
@@ -40,10 +40,14 @@ |
2351 |
|
2352 |
#ifdef XP_WIN |
2353 |
#include <windows.h> |
2354 |
+#else |
2355 |
+#include <limits.h> |
2356 |
#endif |
2357 |
|
2358 |
#ifndef MAXPATHLEN |
2359 |
-#ifdef _MAX_PATH |
2360 |
+#ifdef PATH_MAX |
2361 |
+#define MAXPATHLEN PATH_MAX |
2362 |
+#elif defined(_MAX_PATH) |
2363 |
#define MAXPATHLEN _MAX_PATH |
2364 |
#elif defined(CCHMAXPATH) |
2365 |
#define MAXPATHLEN CCHMAXPATH |
2366 |
--- xpcom/build/nsXPCOMPrivate.h.old Tue Oct 21 16:36:29 2008 +1300 |
2367 |
+++ xpcom/build/nsXPCOMPrivate.h Mon Oct 20 22:55:57 2008 -0500 |
2368 |
@@ -231,6 +231,7 @@ NS_GetFrozenFunctions(XPCOMFunctions *en |
2369 |
#define XUL_DLL "libxul"MOZ_DLL_SUFFIX |
2370 |
|
2371 |
#else // Unix |
2372 |
+#include <limits.h> // for PATH_MAX |
2373 |
|
2374 |
#define XPCOM_DLL "libxpcom"MOZ_DLL_SUFFIX |
2375 |
|
2376 |
|
2377 |
|
2378 |
|
2379 |
|
2380 |
1.1 src/patchsets/seamonkey/1.1.18/101_thunderbird-0.7.3-gnome-uriloader.patch |
2381 |
|
2382 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/101_thunderbird-0.7.3-gnome-uriloader.patch?rev=1.1&view=markup |
2383 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/101_thunderbird-0.7.3-gnome-uriloader.patch?rev=1.1&content-type=text/plain |
2384 |
|
2385 |
Index: 101_thunderbird-0.7.3-gnome-uriloader.patch |
2386 |
=================================================================== |
2387 |
--- mozilla/uriloader/exthandler/unix/nsGNOMERegistry.cpp.foo 2004-01-05 18:38:48.000000000 -0500 |
2388 |
+++ mozilla/uriloader/exthandler/unix/nsGNOMERegistry.cpp 2004-01-05 19:14:51.000000000 -0500 |
2389 |
@@ -39,6 +39,7 @@ |
2390 |
#include "nsGNOMERegistry.h" |
2391 |
#include "prlink.h" |
2392 |
#include "prmem.h" |
2393 |
+#include "prenv.h" |
2394 |
#include "nsString.h" |
2395 |
#include "nsIComponentManager.h" |
2396 |
#include "nsILocalFile.h" |
2397 |
@@ -137,6 +138,10 @@ |
2398 |
} \ |
2399 |
PR_END_MACRO |
2400 |
|
2401 |
+ // Don't even use this code if an env var is set |
2402 |
+ if (PR_GetEnv("MOZ_DISABLE_GNOME")) |
2403 |
+ return; |
2404 |
+ |
2405 |
// Attempt to open libgconf |
2406 |
gconfLib = LoadVersionedLibrary("gconf-2", ".4"); |
2407 |
ENSURE_LIB(gconfLib); |
2408 |
|
2409 |
|
2410 |
|
2411 |
1.1 src/patchsets/seamonkey/1.1.18/220_seamonkey-gentoo-homepage.patch |
2412 |
|
2413 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/220_seamonkey-gentoo-homepage.patch?rev=1.1&view=markup |
2414 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/220_seamonkey-gentoo-homepage.patch?rev=1.1&content-type=text/plain |
2415 |
|
2416 |
Index: 220_seamonkey-gentoo-homepage.patch |
2417 |
=================================================================== |
2418 |
--- xpfe/browser/resources/locale/en-US/region.properties.old 2007-01-20 21:11:14.000000000 +0100 |
2419 |
+++ xpfe/browser/resources/locale/en-US/region.properties 2007-01-20 21:12:31.000000000 +0100 |
2420 |
@@ -1,5 +1,5 @@ |
2421 |
# navigator.properties |
2422 |
-homePageDefault=http://www.mozilla.org/ |
2423 |
+homePageDefault=http://www.gentoo.org/ |
2424 |
keywordList=http://home.netscape.com/escapes/keywords |
2425 |
webmailKeyword=http://webmail.netscape.com |
2426 |
fallbackDefaultSearchURL=http://www.google.com/search?q= |
2427 |
@@ -7,7 +7,7 @@ |
2428 |
# |
2429 |
# all.js |
2430 |
# |
2431 |
-browser.startup.homepage=http://www.seamonkey-project.org/start/ |
2432 |
+browser.startup.homepage=http://www.gentoo.org |
2433 |
browser.throbber.url=http://www.seamonkey-project.org/ |
2434 |
browser.search.defaulturl=http://www.google.com/search?q= |
2435 |
general.useragent.contentlocale=US |
2436 |
@@ -17,4 +17,4 @@ |
2437 |
|
2438 |
#config.js |
2439 |
# |
2440 |
-startup.homepage_override_url=http://www.seamonkey-project.org/start/ |
2441 |
+startup.homepage_override_url=http://www.gentoo.org |
2442 |
|
2443 |
|
2444 |
|
2445 |
1.1 src/patchsets/seamonkey/1.1.18/301_mozilla-1.7.3-gnome-vfs-default-app.patch |
2446 |
|
2447 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/301_mozilla-1.7.3-gnome-vfs-default-app.patch?rev=1.1&view=markup |
2448 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/301_mozilla-1.7.3-gnome-vfs-default-app.patch?rev=1.1&content-type=text/plain |
2449 |
|
2450 |
Index: 301_mozilla-1.7.3-gnome-vfs-default-app.patch |
2451 |
=================================================================== |
2452 |
--- mozilla/uriloader/exthandler/unix/nsGNOMERegistry.cpp.foo 2004-03-06 09:41:00.000000000 -0500 |
2453 |
+++ mozilla/uriloader/exthandler/unix/nsGNOMERegistry.cpp 2004-10-18 18:55:55.000000000 -0400 |
2454 |
@@ -283,6 +283,11 @@ |
2455 |
|
2456 |
gchar *nativeCommand = g_filename_from_utf8(handlerApp->command, |
2457 |
-1, NULL, NULL, NULL); |
2458 |
+ |
2459 |
+ // Some versions of the mime stuff will add whitespace to the end or |
2460 |
+ // beginning of the command |
2461 |
+ nativeCommand = g_strstrip(nativeCommand); |
2462 |
+ |
2463 |
if (!nativeCommand) { |
2464 |
NS_ERROR("Could not convert helper app command to filesystem encoding"); |
2465 |
_gnome_vfs_mime_application_free(handlerApp); |
2466 |
|
2467 |
|
2468 |
|
2469 |
1.1 src/patchsets/seamonkey/1.1.18/303_mozilla-1.7.13-as-needed.patch |
2470 |
|
2471 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/303_mozilla-1.7.13-as-needed.patch?rev=1.1&view=markup |
2472 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/303_mozilla-1.7.13-as-needed.patch?rev=1.1&content-type=text/plain |
2473 |
|
2474 |
Index: 303_mozilla-1.7.13-as-needed.patch |
2475 |
=================================================================== |
2476 |
--- embedding/browser/gtk/tests/Makefile.in.orig 2006-04-29 22:56:46.000000000 -0500 |
2477 |
+++ embedding/browser/gtk/tests/Makefile.in 2006-04-29 22:57:17.000000000 -0500 |
2478 |
@@ -58,6 +58,8 @@ |
2479 |
endif |
2480 |
endif |
2481 |
|
2482 |
+OS_LDFLAGS += -Wl,-rpath-link,'$(DEPTH)/dist/bin' |
2483 |
+ |
2484 |
ifdef MOZ_ENABLE_GTK |
2485 |
LIBS += \ |
2486 |
-lgtkembedmoz \ |
2487 |
|
2488 |
|
2489 |
|
2490 |
1.1 src/patchsets/seamonkey/1.1.18/304_mozilla-1.7.5-g-application-name.patch |
2491 |
|
2492 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/304_mozilla-1.7.5-g-application-name.patch?rev=1.1&view=markup |
2493 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/seamonkey/1.1.18/304_mozilla-1.7.5-g-application-name.patch?rev=1.1&content-type=text/plain |
2494 |
|
2495 |
Index: 304_mozilla-1.7.5-g-application-name.patch |
2496 |
=================================================================== |
2497 |
Index: xpfe/bootstrap/nsAppRunner.cpp |
2498 |
=================================================================== |
2499 |
RCS file: /cvsroot/mozilla/xpfe/bootstrap/nsAppRunner.cpp,v |
2500 |
retrieving revision 1.428 |
2501 |
diff -d -u -p -r1.428 nsAppRunner.cpp |
2502 |
--- xpfe/bootstrap/nsAppRunner.cpp 20 Dec 2004 21:53:33 -0000 1.428 |
2503 |
+++ xpfe/bootstrap/nsAppRunner.cpp 5 Mar 2005 08:39:12 -0000 |
2504 |
@@ -1612,6 +1612,11 @@ static PRBool GetWantSplashScreen(int ar |
2505 |
return dosplash; |
2506 |
} |
2507 |
|
2508 |
+#ifdef MOZ_WIDGET_GTK2 |
2509 |
+#include "prlink.h" |
2510 |
+typedef void (*_g_set_application_name_fn)(const gchar *application_name); |
2511 |
+#endif |
2512 |
+ |
2513 |
int main(int argc, char* argv[]) |
2514 |
{ |
2515 |
NS_TIMELINE_MARK("enter main"); |
2516 |
@@ -1712,6 +1717,19 @@ int main(int argc, char* argv[]) |
2517 |
#endif |
2518 |
gtk_init(&argc, &argv); |
2519 |
|
2520 |
+#if defined(MOZ_WIDGET_GTK2) |
2521 |
+ // g_set_application_name () is only defined in glib2.2 and higher. |
2522 |
+ PRLibrary *glib2; |
2523 |
+ _g_set_application_name_fn _g_set_application_name = |
2524 |
+ (_g_set_application_name_fn)PR_FindFunctionSymbolAndLibrary("g_set_application_name", &glib2); |
2525 |
+ if (_g_set_application_name) { |
2526 |
+ _g_set_application_name("seamonkey"); /* MOZ_APP_NAME */ |
2527 |
+ } |
2528 |
+ if (glib2) { |
2529 |
+ PR_UnloadLibrary(glib2); |
2530 |
+ } |
2531 |
+#endif |
2532 |
+ |
2533 |
gtk_widget_set_default_visual(gdk_rgb_get_visual()); |
2534 |
gtk_widget_set_default_colormap(gdk_rgb_get_cmap()); |
2535 |
#endif /* MOZ_WIDGET_GTK || MOZ_WIDGET_GTK2 */ |