Added hppa support.
authorGuy Martin <gmsoft@gentoo.org>
Wed, 22 Dec 2004 11:25:31 +0000 (11:25 +0000)
committerGuy Martin <gmsoft@gentoo.org>
Wed, 22 Dec 2004 11:25:31 +0000 (11:25 +0000)
net-www/mozilla-firefox/ChangeLog
net-www/mozilla-firefox/Manifest
net-www/mozilla-firefox/files/mozilla-hppa.patch [new file with mode: 0644]
net-www/mozilla-firefox/mozilla-firefox-1.0-r3.ebuild

index 684d26dd4c501c66581586e9da946a73696d0bd6..6d127cffa6d89c20677731e7fe2d607228cf2eb6 100644 (file)
@@ -1,6 +1,10 @@
 # ChangeLog for net-www/mozilla-firefox
 # Copyright 2000-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-www/mozilla-firefox/ChangeLog,v 1.89 2004/12/21 11:54:01 kloeri Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-www/mozilla-firefox/ChangeLog,v 1.90 2004/12/22 11:25:31 gmsoft Exp $
+
+  22 Dec 2004; Guy Martin <gmsoft@gentoo.org> +files/mozilla-hppa.patch,
+  mozilla-firefox-1.0-r3.ebuild:
+  Added hppa support.
 
   21 Dec 2004; Bryan Ã˜stergaard <kloeri@gentoo.org>
   mozilla-firefox-1.0.ebuild:
index df7c051a7010b228de48bc7cea2ef674f2014276..272ffdc9bc3fa97eb994e9360a6c53fdd6adef1b 100644 (file)
@@ -1,38 +1,29 @@
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
-MD5 6c89295fc5264c6798ee06f9e2f5c936 mozilla-firefox-1.0_rc2.ebuild 5066
-MD5 809453352ef124b51ec8e4c96fd23e69 mozilla-firefox-1.0_rc1.ebuild 5147
-MD5 675d71d19cfffe142cf6bf879e5feaa7 ChangeLog 14433
-MD5 e45f5d0ad760a810a0057f18df4e9566 mozilla-firefox-1.0.ebuild 5058
-MD5 656615b525c61520895b16516c12de26 mozilla-firefox-1.0-r3.ebuild 5820
-MD5 4bcd75902aafdef30244f66f6d835a52 mozilla-firefox-1.0-r2.ebuild 5479
+MD5 5917f1f649142a189ad64ad956a33927 ChangeLog 14562
 MD5 ce23390351fe8020387d93ee29e09a3d metadata.xml 160
-MD5 faaa52e819364f34c1b174f0c47a6d86 mozilla-firefox-1.0_pre-r2.ebuild 5073
 MD5 c543ce361b2035afbb9db4010f9f776e mozilla-firefox-0.9.3.ebuild 8425
-MD5 88371b8f812caf799a1ede2b1b07c079 files/mozilla-firefox-mousebuttons.patch 17099
-MD5 b16efe0e4066720b718d67348aeee757 files/mozilla-firefox-1.0-4ft2.patch 22294
-MD5 c6308c086c87ed2e1e4f3d136efdd770 files/firefox-0.9-nsFormHistory-crash-fix.patch 1755
-MD5 fa885b490a3c76594784843a1c06ee3a files/digest-mozilla-firefox-1.0_rc1 76
-MD5 f0e9adeb0454377ce019e8969e644efb files/mozilla-firebird-amd64.patch 35052
-MD5 3961b39c763ff8f98b56098ac0cdbecc files/mozilla-firefox-1.0-kp_separator.patch 444
-MD5 47c899122e30bc898b5a899ed0e10129 files/digest-mozilla-firefox-1.0-r2 73
+MD5 4bcd75902aafdef30244f66f6d835a52 mozilla-firefox-1.0-r2.ebuild 5479
+MD5 32f7735e062664ec0f3a66dd59288329 mozilla-firefox-1.0-r3.ebuild 6147
+MD5 e45f5d0ad760a810a0057f18df4e9566 mozilla-firefox-1.0.ebuild 5058
+MD5 faaa52e819364f34c1b174f0c47a6d86 mozilla-firefox-1.0_pre-r2.ebuild 5073
+MD5 809453352ef124b51ec8e4c96fd23e69 mozilla-firefox-1.0_rc1.ebuild 5147
+MD5 6c89295fc5264c6798ee06f9e2f5c936 mozilla-firefox-1.0_rc2.ebuild 5066
 MD5 606e82226379fd5ae6cd1d0d1faff7ff files/10MozillaFirefox 31
 MD5 bef773177860190ef5d6cce7ec70c613 files/digest-mozilla-firefox-1.0_pre-r2 77
-MD5 23d1fbd03cc6dd346a4e4ce8f2d88ebf files/mozilla-1.3-alpha-stubs.patch 4646
-MD5 48baf2f328e6478812c24e59037ff99c files/firefox-0.9-init.tar.bz2 3322
-MD5 0c7804fd13815f9a0e7a1ef0eab6a871 files/digest-mozilla-firefox-0.9.3 75
+MD5 fa885b490a3c76594784843a1c06ee3a files/digest-mozilla-firefox-1.0_rc1 76
+MD5 47c899122e30bc898b5a899ed0e10129 files/digest-mozilla-firefox-1.0 73
 MD5 e5cc0a5838a73f3fdaf38f4e3c368c26 files/digest-mozilla-firefox-1.0_rc2 76
+MD5 47c899122e30bc898b5a899ed0e10129 files/digest-mozilla-firefox-1.0-r2 73
+MD5 0c7804fd13815f9a0e7a1ef0eab6a871 files/digest-mozilla-firefox-0.9.3 75
 MD5 47c899122e30bc898b5a899ed0e10129 files/digest-mozilla-firefox-1.0-r3 73
-MD5 3ad7410bd680964096c84eee3fa21abf files/firefox-0.8-gcc-3.4.patch 460
+MD5 b16efe0e4066720b718d67348aeee757 files/mozilla-firefox-1.0-4ft2.patch 22294
 MD5 bd50631b47d20becbb5af21b605dfb5d files/firefox 4218
-MD5 47c899122e30bc898b5a899ed0e10129 files/digest-mozilla-firefox-1.0 73
-MD5 2cdd03eb2752bc01ba07ad837e926f39 files/icon/mozillafirefox.desktop 168
+MD5 3ad7410bd680964096c84eee3fa21abf files/firefox-0.8-gcc-3.4.patch 460
+MD5 48baf2f328e6478812c24e59037ff99c files/firefox-0.9-init.tar.bz2 3322
+MD5 c6308c086c87ed2e1e4f3d136efdd770 files/firefox-0.9-nsFormHistory-crash-fix.patch 1755
+MD5 23d1fbd03cc6dd346a4e4ce8f2d88ebf files/mozilla-1.3-alpha-stubs.patch 4646
+MD5 f0e9adeb0454377ce019e8969e644efb files/mozilla-firebird-amd64.patch 35052
+MD5 88371b8f812caf799a1ede2b1b07c079 files/mozilla-firefox-mousebuttons.patch 17099
+MD5 3961b39c763ff8f98b56098ac0cdbecc files/mozilla-firefox-1.0-kp_separator.patch 444
+MD5 5496222980a6faf8261066f43cd4c6a5 files/mozilla-hppa.patch 7785
 MD5 bff260036c5dcca45da3218517fb33d8 files/icon/firefox-icon.png 3979
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.2.6 (GNU/Linux)
-
-iD8DBQFByA70ugEuf3OQ0akRAk/BAJsH8Cm4rKd1+Al/O5zS8DRtX3mCFwCdFmew
-pK1jnIGRsWEp4B/yvUn1lHo=
-=Wo3y
------END PGP SIGNATURE-----
+MD5 2cdd03eb2752bc01ba07ad837e926f39 files/icon/mozillafirefox.desktop 168
diff --git a/net-www/mozilla-firefox/files/mozilla-hppa.patch b/net-www/mozilla-firefox/files/mozilla-hppa.patch
new file mode 100644 (file)
index 0000000..f6171cf
--- /dev/null
@@ -0,0 +1,232 @@
+diff -uNr mozilla.orig/xpcom/reflect/xptcall/src/md/unix/Makefile.in mozilla/xpcom/reflect/xptcall/src/md/unix/Makefile.in
+--- mozilla.orig/xpcom/reflect/xptcall/src/md/unix/Makefile.in 2004-12-21 13:37:00.503842544 +0000
++++ mozilla/xpcom/reflect/xptcall/src/md/unix/Makefile.in      2004-12-21 13:41:49.439917584 +0000
+@@ -167,6 +167,19 @@
+ endif
+ endif
+ 
++#
++# Linux/HPPA/gcc
++#
++ifeq ($(OS_ARCH),Linux)
++ifneq (,$(filter parisc parisc64,$(OS_TEST)))
++ifeq ($(CC),gcc)
++CPPSRCS               := xptcinvoke_pa32.cpp xptcstubs_pa32.cpp
++ASFILES               := xptcstubs_asm_parisc_linux.s xptcinvoke_asm_parisc_linux.s
++endif
++endif
++endif
++
++
+ ######################################################################
+ # M68k
+ ######################################################################
+diff -uNr mozilla.orig/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_parisc_linux.s mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_parisc_linux.s
+--- mozilla.orig/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_parisc_linux.s       1970-01-01 00:00:00.000000000 +0000
++++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_parisc_linux.s    2004-12-21 13:39:03.390160984 +0000
+@@ -0,0 +1,128 @@
++
++      .LEVEL 1.1
++      .text
++      .align 4
++
++framesz:
++      .equ 128
++
++; XPTC_InvokeByIndex(nsISuppots* that, PRUint32 methodIndex,
++;   PRUint32 paramCount, nsXPTCVariant* params);
++
++.globl XPTC_InvokeByIndex
++      .type XPTC_InvokeByIndex, @function
++
++
++XPTC_InvokeByIndex:
++      .PROC
++      .CALLINFO FRAME=72, CALLER,SAVE_RP, SAVE_SP, ENTRY_GR=3
++      .ENTRY
++
++ ; frame marker takes 48 bytes,
++ ; register spill area takes 8 bytes,
++ ; local stack area takes 72 bytes result in 128 bytes total
++
++        STW          %rp,-20(%sp)
++        STW,MA       %r3,128(%sp)
++
++        LDO     -framesz(%r30),%r28
++        STW     %r28,-4(%r30)       ; save previous sp
++        STW     %r19,-32(%r30)
++
++        STW     %r26,-36-framesz(%r30)  ; save argument registers in
++        STW     %r25,-40-framesz(%r30)  ; in PREVIOUS frame
++        STW     %r24,-44-framesz(%r30)  ;
++        STW     %r23,-48-framesz(%r30)  ;
++
++;     B,L     .+8,%r2
++;     ADDIL   L'invoke_count_bytes-$PIC_pcrel$1+4,%r2,%r1
++;    ;    LDO     R'invoke_count_bytes-$PIC_pcrel$2+8(%r1),%r1
++;$PIC_pcrel$1
++;        LDSID   (%r1),%r31
++;$PIC_pcrel$2
++;        MTSP    %r31,%sr0
++
++      .CALL   ARGW0=GR,ARGW1=GR,ARGW2=GR ;in=24,25,26;out=28
++        BL    invoke_count_bytes,%r31
++        COPY    %r31,%r2
++
++        CMPIB,>=        0,%r28, .+76
++        COPY    %r30,%r3            ; copy stack ptr to saved stack ptr
++        ADD     %r30,%r28,%r30      ; extend stack frame
++        LDW     -4(%r3),%r28        ; move frame
++        STW     %r28,-4(%r30)
++        LDW     -8(%r3),%r28
++        STW     %r28,-8(%r30)
++        LDW     -12(%r3),%r28
++        STW     %r28,-12(%r30)
++        LDW     -16(%r3),%r28
++        STW     %r28,-16(%r30)
++        LDW     -20(%r3),%r28
++        STW     %r28,-20(%r30)
++        LDW     -24(%r3),%r28
++        STW     %r28,-24(%r30)
++        LDW     -28(%r3),%r28
++        STW     %r28,-28(%r30)
++        LDW     -32(%r3),%r28
++        STW     %r28,-32(%r30)
++
++        LDO     -40(%r30),%r26         ; load copy address
++        LDW     -44-framesz(%r3),%r25  ; load rest of 2 arguments
++        LDW     -48-framesz(%r3),%r24  ;
++
++        LDW     -32(%r30),%r19 ; shared lib call destroys r19; reload
++;        B,L     .+8,%r2
++;        ADDIL   L'invoke_copy_to_stack-$PIC_pcrel$3+4,%r2,%r1
++;        LDO     R'invoke_copy_to_stack-$PIC_pcrel$4+8(%r1),%r1
++;$PIC_pcrel$3
++;        LDSID   (%r1),%r31
++;$PIC_pcrel$4
++;        MTSP    %r31,%sr0
++        .CALL   ARGW0=GR,ARGW1=GR,ARGW2=GR ;in=24,25,26
++        BL    invoke_copy_to_stack,%r31
++        COPY    %r31,%r2
++
++        LDO     -48(%r30),%r20
++        EXTRW,U,= %r28,31,1,%r22
++        FLDD    0(%r20),%fr7  ; load double arg 1
++        EXTRW,U,= %r28,30,1,%r22
++        FLDW    8(%r20),%fr5L ; load float arg 1
++        EXTRW,U,= %r28,29,1,%r22
++        FLDW    4(%r20),%fr6L ; load float arg 2
++        EXTRW,U,= %r28,28,1,%r22
++        FLDW    0(%r20),%fr7L ; load float arg 3
++
++        LDW     -36-framesz(%r3),%r26  ; load ptr to 'that'
++        LDW     -40(%r30),%r25  ; load the rest of dispatch argument registers
++        LDW     -44(%r30),%r24
++        LDW     -48(%r30),%r23
++
++        LDW     -36-framesz(%r3),%r20  ; load vtable addr
++        LDW     -40-framesz(%r3),%r28  ; load index
++        LDW     0(%r20),%r20    ; follow vtable
++;        LDO     0(%r20),%r20   ; offset vtable by 16 bytes (g++: 8, aCC: 16)
++        SH2ADDL %r28,%r20,%r28  ; add 4*index to vtable entry
++        LDW     0(%r28),%r22    ; load vtable entry
++
++;        B,L     .+8,%r2
++;        ADDIL   L'$$dyncall_external-$PIC_pcrel$5+4,%r2,%r1
++;        LDO     R'$$dyncall_external-$PIC_pcrel$6+8(%r1),%r1
++;$PIC_pcrel$5
++;        LDSID   (%r1),%r31
++;$PIC_pcrel$6
++;        MTSP    %r31,%sr0
++        .CALL ARGW0=GR,ARGW1=GR,ARGW2=GR,ARGW3=GR,RTNVAL=GR ;in=22-26;out=28;
++        BL    $$dyncall,%r31
++        COPY    %r31,%r2
++
++        LDW     -32(%r30),%r19
++        COPY    %r3,%r30              ; restore saved stack ptr
++
++        LDW          -148(%sp),%rp
++        LDWM       -128(%sp),%r3
++      BV,N             (%rp)
++      NOP
++   .EXIT
++  .PROCEND  ;in=23,24,25,26;
++  .SIZE XPTC_InvokeByIndex, .-XPTC_InvokeByIndex
++
+diff -uNr mozilla.orig/xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_parisc_linux.s mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_parisc_linux.s
+--- mozilla.orig/xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_parisc_linux.s        1970-01-01 00:00:00.000000000 +0000
++++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_parisc_linux.s     2004-12-21 13:39:03.392160680 +0000
+@@ -0,0 +1,73 @@
++        .LEVEL  1.1
++      .TEXT
++      .ALIGN 4
++
++curframesz:
++      .EQU 128
++
++
++; SharedStub has stack size of 128 bytes
++
++lastframesz:
++      .EQU 64
++
++; the StubN C++ function has a small stack size of 64 bytes
++
++
++.globl SharedStub
++      .type SharedStub, @function
++
++SharedStub:
++        .PROC
++        .CALLINFO CALLER,FRAME=80,SAVE_RP
++
++  .ENTRY
++        STW     %rp,-20(%sp)
++        LDO     128(%sp),%sp
++
++        STW     %r19,-32(%r30)
++        STW     %r26,-36-curframesz(%r30) ; save arg0 in previous frame
++
++        LDO     -80(%r30),%r28
++        FSTD,MA %fr5,8(%r28)   ; save darg0
++        FSTD,MA %fr7,8(%r28)   ; save darg1
++        FSTW,MA %fr4L,4(%r28)  ; save farg0
++        FSTW,MA %fr5L,4(%r28)  ; save farg1
++        FSTW,MA %fr6L,4(%r28)  ; save farg2
++        FSTW,MA %fr7L,4(%r28)  ; save farg3
++
++        ; Former value of register 26 is already properly saved by StubN,
++        ; but register 25-23 are not because of the arguments mismatch
++        STW     %r25,-40-curframesz-lastframesz(%r30) ; save r25
++        STW     %r24,-44-curframesz-lastframesz(%r30) ; save r24
++        STW     %r23,-48-curframesz-lastframesz(%r30) ; save r23
++        COPY    %r26,%r25                             ; method index is arg1
++        LDW     -36-curframesz-lastframesz(%r30),%r26 ; self is arg0
++        LDO     -40-curframesz-lastframesz(%r30),%r24 ; normal args is arg2
++        LDO     -80(%r30),%r23                        ; floating args is arg3
++
++;       BL      .+8,%r2
++;       ADDIL   L'PrepareAndDispatch-$PIC_pcrel$0+4,%r2
++;        LDO     R'PrepareAndDispatch-$PIC_pcrel$1+8(%r1),%r1
++;$PIC_pcrel$0
++;        LDSID   (%r1),%r31
++;$PIC_pcrel$1
++;        MTSP    %r31,%sr0
++        .CALL   ARGW0=GR,ARGW1=GR,ARGW2=GR,ARGW3=GR,RTNVAL=GR ;in=23-26;out=28;
++        BL     PrepareAndDispatch, %r31
++        COPY    %r31,%r2
++
++        LDW     -32(%r30),%r19
++
++        LDW     -148(%sp),%rp
++        LDO     -128(%sp),%sp
++
++
++      BV,N     (%rp)
++      NOP
++      NOP
++
++      .EXIT
++        .PROCEND        ;in=26;out=28;
++
++      .SIZE SharedStub, .-SharedStub
index ce418f2670cef71be56f94601e86c790695d9b77..2e10b0546dc0db5e9a64cd2957333c3a4dc4381c 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2004 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-www/mozilla-firefox/mozilla-firefox-1.0-r3.ebuild,v 1.7 2004/12/03 17:10:37 agriffis Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-www/mozilla-firefox/mozilla-firefox-1.0-r3.ebuild,v 1.8 2004/12/22 11:25:31 gmsoft Exp $
 
 inherit makeedit flag-o-matic gcc nsplugins eutils mozconfig mozilla-launcher
 
@@ -13,7 +13,7 @@ SRC_URI="http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${MY_PV}/source
 
 LICENSE="MPL-1.1 NPL-1.1"
 SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~sparc ~x86 ~hppa"
 IUSE="java mozsvg"
 
 # xrender.pc appeared for the first time in xorg-x11-6.7.0-r2
@@ -41,6 +41,10 @@ src_unpack() {
        # <taviso@gentoo.org> (26 Jun 2003)
        use alpha && epatch ${FILESDIR}/mozilla-1.3-alpha-stubs.patch
 
+       # hppa patches from Ivar <orskaug@stud.ntnu.no>
+       # <gmsoft@gentoo.org> (22 Dec 2004)
+       use hppa && epatch ${FILESDIR}/mozilla-hppa.patch
+
        # patch out ft caching code since the API changed between releases of
        # freetype; this enables freetype-2.1.8+ compat.
        # https://bugzilla.mozilla.org/show_bug.cgi?id=234035#c65
@@ -81,6 +85,14 @@ src_compile() {
        has_hardened && append-flags -fno-stack-protector-all
        replace-flags -fstack-protector-all -fstack-protector
 
+       # hppa have problems with high level of optimisation
+       # forcing -O0 <gmsoft@gentoo.org> (22 Dec 2004)
+       if use hppa
+       then
+               export CFLAGS="-O0 -pipe"
+               export CXXFLAGS="-O0 -pipe"
+       fi
+
        ####################################
        #
        #  Configure and build Firefox