summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Schlemmer <azarah@gentoo.org>2005-09-26 01:01:15 +0000
committerMartin Schlemmer <azarah@gentoo.org>2005-09-26 01:01:15 +0000
commit0de8fa520a3316786549d437e581193adad0c801 (patch)
tree806ff8961e3dd7ee84144b328aa485e2d65d31b6 /net-libs/gecko-sdk
parentSmall cleanup. (diff)
downloadgentoo-2-0de8fa520a3316786549d437e581193adad0c801.tar.gz
gentoo-2-0de8fa520a3316786549d437e581193adad0c801.tar.bz2
gentoo-2-0de8fa520a3316786549d437e581193adad0c801.zip
New release, GLSA105396. Use libart rather than cairo, bug #106713. Update
gtk2 and xft code from upstream to fix various freetype-2.1.9 issues including printing non-latin. Same for the libart renderer code. (Portage version: 2.0.52-r1)
Diffstat (limited to 'net-libs/gecko-sdk')
-rw-r--r--net-libs/gecko-sdk/ChangeLog15
-rw-r--r--net-libs/gecko-sdk/Manifest12
-rw-r--r--net-libs/gecko-sdk/files/digest-gecko-sdk-1.7.127
-rw-r--r--net-libs/gecko-sdk/files/mozilla-1.7.12-gtk2xft-link-pangoxft.patch15
-rw-r--r--net-libs/gecko-sdk/files/mozilla-1.7.12-libart-freetype.patch50
-rw-r--r--net-libs/gecko-sdk/files/mozilla-1.7.6-gcc4.patch46
-rw-r--r--net-libs/gecko-sdk/files/mozilla-1.7.6-ppc64.patch113
-rw-r--r--net-libs/gecko-sdk/files/mozilla-1.7.8-amd64.patch71
-rw-r--r--net-libs/gecko-sdk/files/mozilla-1.7.8-objectframefix.diff21
-rw-r--r--net-libs/gecko-sdk/files/mozilla-hppa.patch232
-rw-r--r--net-libs/gecko-sdk/files/mozilla-stackgrowth.patch37
-rw-r--r--net-libs/gecko-sdk/gecko-sdk-1.7.12.ebuild216
12 files changed, 833 insertions, 2 deletions
diff --git a/net-libs/gecko-sdk/ChangeLog b/net-libs/gecko-sdk/ChangeLog
index b9b8b360a574..20cb813a5a80 100644
--- a/net-libs/gecko-sdk/ChangeLog
+++ b/net-libs/gecko-sdk/ChangeLog
@@ -1,6 +1,19 @@
# ChangeLog for net-libs/gecko-sdk
# Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-libs/gecko-sdk/ChangeLog,v 1.14 2005/07/11 22:02:57 josejx Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-libs/gecko-sdk/ChangeLog,v 1.15 2005/09/26 01:01:15 azarah Exp $
+
+*gecko-sdk-1.7.12 (26 Sep 2005)
+
+ 26 Sep 2005; Martin Schlemmer <azarah@gentoo.org>
+ +files/mozilla-1.7.6-gcc4.patch, +files/mozilla-1.7.6-ppc64.patch,
+ +files/mozilla-1.7.8-amd64.patch,
+ +files/mozilla-1.7.8-objectframefix.diff,
+ +files/mozilla-1.7.12-gtk2xft-link-pangoxft.patch,
+ +files/mozilla-1.7.12-libart-freetype.patch, +files/mozilla-hppa.patch,
+ +files/mozilla-stackgrowth.patch, +gecko-sdk-1.7.12.ebuild:
+ New release, GLSA105396. Use libart rather than cairo, bug #106713. Update
+ gtk2 and xft code from upstream to fix various freetype-2.1.9 issues
+ including printing non-latin. Same for the libart renderer code.
*gecko-sdk-1.7.8 (11 Jul 2005)
diff --git a/net-libs/gecko-sdk/Manifest b/net-libs/gecko-sdk/Manifest
index 70856228c83e..fd5ac356d155 100644
--- a/net-libs/gecko-sdk/Manifest
+++ b/net-libs/gecko-sdk/Manifest
@@ -1,4 +1,14 @@
+MD5 dcf618765c3eada3c19e57355d856258 gecko-sdk-1.7.12.ebuild 8611
+MD5 7297b847a9f0fadad2c55425d8f49f97 gecko-sdk-1.7.8.ebuild 6801
MD5 5a6f53058dc7672f746cb71a89d3ce33 ChangeLog 2291
MD5 66c156160ef60780ee4c80a28873e766 metadata.xml 250
-MD5 7297b847a9f0fadad2c55425d8f49f97 gecko-sdk-1.7.8.ebuild 6801
+MD5 b7c78ba7ca0c519d0f3d2b80ab4cdd74 files/mozilla-1.7.6-ppc64.patch 3651
+MD5 f7930e7f2cba691a9b6654b61ba1217e files/mozilla-1.7.12-libart-freetype.patch 2412
+MD5 5b22d0e1ea93923e3e66787c286ad86f files/mozilla-1.7.8-objectframefix.diff 673
+MD5 8f8d70da6eb8cf07acbbb85fb0f08636 files/mozilla-hppa.patch 7863
+MD5 1f71cb3a30531a90fb7d1d3445588ba6 files/mozilla-1.7.12-gtk2xft-link-pangoxft.patch 465
+MD5 278524216669b594ea5b6468a180ed73 files/mozilla-stackgrowth.patch 931
+MD5 eb21396de389b3ef0277d5f95d59c348 files/mozilla-1.7.8-amd64.patch 4020
+MD5 a3ab6ae2213780c0e20c5b9aa8f018e9 files/mozilla-1.7.6-gcc4.patch 1818
+MD5 8047a3fb75a7615d8c40e82de392468f files/digest-gecko-sdk-1.7.12 504
MD5 5d946445ba7bba30fb129f941bc7e84b files/digest-gecko-sdk-1.7.8 203
diff --git a/net-libs/gecko-sdk/files/digest-gecko-sdk-1.7.12 b/net-libs/gecko-sdk/files/digest-gecko-sdk-1.7.12
new file mode 100644
index 000000000000..93b4ddc41e35
--- /dev/null
+++ b/net-libs/gecko-sdk/files/digest-gecko-sdk-1.7.12
@@ -0,0 +1,7 @@
+MD5 f1ad6adbbc0510eb76d352c94c801fac mozilla-1.7.12-source.tar.bz2 30446836
+MD5 64ba4c6e3b52568468c4f6680ec7e679 ipc-1.1.3.tar.gz 102593
+MD5 50c369ce6d6fcb2d275cd30319a601ff enigmail-0.92.0.tar.gz 377123
+MD5 b4355a5746dde47cf0a7981df1dff998 moz_libart_lgpl-2.3.10p1.tar.bz2 103063
+MD5 7960994910bda4c14a52bc119f9ceefc mozilla-jslibmath-alpha.patch 625
+MD5 855fcb4f3e40bbcc608113ceb11e2ceb mozilla-1.7.12-gtk2xft.patch.bz2 40416
+MD5 a120cd14ade242622387f76875ca9c39 mozilla-1.7.10-nsplugins-v2.patch 1968
diff --git a/net-libs/gecko-sdk/files/mozilla-1.7.12-gtk2xft-link-pangoxft.patch b/net-libs/gecko-sdk/files/mozilla-1.7.12-gtk2xft-link-pangoxft.patch
new file mode 100644
index 000000000000..3b2b58a549cf
--- /dev/null
+++ b/net-libs/gecko-sdk/files/mozilla-1.7.12-gtk2xft-link-pangoxft.patch
@@ -0,0 +1,15 @@
+--- mozilla/configure.in.az 2005-09-26 00:07:40.000000000 +0200
++++ mozilla/configure.in 2005-09-26 00:10:56.000000000 +0200
+@@ -3430,9 +3430,10 @@
+ if test "$MOZ_ENABLE_XFT"
+ then
+ AC_DEFINE(MOZ_ENABLE_XFT)
+- PKG_CHECK_MODULES(MOZ_XFT, xft)
+ if test "$MOZ_ENABLE_GTK2"; then
+- PKG_CHECK_MODULES(_PANGOCHK, pango >= 1.1.0)
++ PKG_CHECK_MODULES(MOZ_XFT, xft pangoxft >= 1.1.0)
++ else
++ PKG_CHECK_MODULES(MOZ_XFT, xft)
+ fi
+ fi
+
diff --git a/net-libs/gecko-sdk/files/mozilla-1.7.12-libart-freetype.patch b/net-libs/gecko-sdk/files/mozilla-1.7.12-libart-freetype.patch
new file mode 100644
index 000000000000..84392bd4acdf
--- /dev/null
+++ b/net-libs/gecko-sdk/files/mozilla-1.7.12-libart-freetype.patch
@@ -0,0 +1,50 @@
+$NetBSD: patch-by,v 1.2 2004/07/05 14:22:42 taya Exp $
+
+diff -ru ../Orig/mozilla/layout/svg/renderer/src/libart/nsSVGLibartGlyphMetricsFT.cpp ./layout/svg/renderer/src/libart/nsSVGLibartGlyphMetricsFT.cpp
+--- ../Orig/mozilla/layout/svg/renderer/src/libart/nsSVGLibartGlyphMetricsFT.cpp 2004-03-19 10:36:16.000000000 +0900
++++ ./layout/svg/renderer/src/libart/nsSVGLibartGlyphMetricsFT.cpp 2004-07-04 22:59:19.000000000 +0900
+@@ -155,15 +155,15 @@
+
+ static NS_NAMED_LITERAL_STRING(arial, "arial");
+ nsSVGLibartGlyphMetricsFT::sFontAliases.Put(NS_LITERAL_STRING("helvetica"),
+- &arial);
++ (nsDependentString *)&arial);
+
+ static NS_NAMED_LITERAL_STRING(courier, "courier new");
+ nsSVGLibartGlyphMetricsFT::sFontAliases.Put(NS_LITERAL_STRING("courier"),
+- &courier);
++ (nsDependentString *)&courier);
+
+ static NS_NAMED_LITERAL_STRING(times, "times new roman");
+ nsSVGLibartGlyphMetricsFT::sFontAliases.Put(NS_LITERAL_STRING("times"),
+- &times);
++ (nsDependentString *)&times);
+ }
+
+ void NS_FreeSVGLibartGlyphMetricsFTGlobals()
+@@ -440,19 +440,19 @@
+ return;
+ }
+
+- FTC_Image_Desc imageDesc;
+- imageDesc.font.face_id=(void*)font_data.font_entry.get(); // XXX do we need to addref?
++ FTC_ImageType imageDesc;
++ imageDesc->face_id = (FTC_FaceID)font_data.font_entry.get(); // XXX do we need to addref?
+ float twipstopixel = GetTwipsToPixels();
+ float scale = GetPixelScale();
+- imageDesc.font.pix_width = (int)((float)(font_data.font.size)*twipstopixel/scale);
+- imageDesc.font.pix_height = (int)((float)(font_data.font.size)*twipstopixel/scale);
+- imageDesc.image_type |= ftc_image_grays;
++ imageDesc->width = (int)((float)(font_data.font.size)*twipstopixel/scale);
++ imageDesc->height = (int)((float)(font_data.font.size)*twipstopixel/scale);
++ imageDesc->flags = 0;
+
+ // get the face
+ nsresult rv;
+ FTC_Manager mgr;
+ nsSVGLibartFreetype::ft2->GetFTCacheManager(&mgr);
+- rv = nsSVGLibartFreetype::ft2->ManagerLookupSize(mgr, &imageDesc.font, &mFace, nsnull);
++ rv = nsSVGLibartFreetype::ft2->ManagerLookupFace(mgr, imageDesc->face_id, &mFace);
+ NS_ASSERTION(mFace, "failed to get face/size");
+ }
+
diff --git a/net-libs/gecko-sdk/files/mozilla-1.7.6-gcc4.patch b/net-libs/gecko-sdk/files/mozilla-1.7.6-gcc4.patch
new file mode 100644
index 000000000000..2d0a04949072
--- /dev/null
+++ b/net-libs/gecko-sdk/files/mozilla-1.7.6-gcc4.patch
@@ -0,0 +1,46 @@
+diff -ur mozilla-orig/security/nss/lib/pki1/oiddata.h mozilla/security/nss/lib/pki1/oiddata.h
+--- mozilla-orig/security/nss/lib/pki1/oiddata.h 2005-03-13 19:12:25.000000000 -0500
++++ mozilla/security/nss/lib/pki1/oiddata.h 2005-03-13 19:15:19.000000000 -0500
+@@ -43,12 +43,6 @@
+ #include "nsspki1t.h"
+ #endif /* NSSPKI1T_H */
+
+-extern const NSSOID nss_builtin_oids[];
+-extern const PRUint32 nss_builtin_oid_count;
+-
+-/*extern const nssAttributeTypeAliasTable nss_attribute_type_aliases[];*/
+-/*extern const PRUint32 nss_attribute_type_alias_count;*/
+-
+ extern const NSSOID *NSS_OID_RFC1274_UID;
+ extern const NSSOID *NSS_OID_RFC1274_EMAIL;
+ extern const NSSOID *NSS_OID_RFC2247_DC;
+diff -ur mozilla-orig/security/nss/lib/pki1/oidgen.perl mozilla/security/nss/lib/pki1/oidgen.perl
+--- mozilla-orig/security/nss/lib/pki1/oidgen.perl 2005-03-13 19:12:25.000000000 -0500
++++ mozilla/security/nss/lib/pki1/oidgen.perl 2005-03-13 19:15:19.000000000 -0500
+@@ -233,12 +233,6 @@
+ #include "nsspki1t.h"
+ #endif /* NSSPKI1T_H */
+
+-extern const NSSOID nss_builtin_oids[];
+-extern const PRUint32 nss_builtin_oid_count;
+-
+-/*extern const nssAttributeTypeAliasTable nss_attribute_type_aliases[];*/
+-/*extern const PRUint32 nss_attribute_type_alias_count;*/
+-
+ EOD
+ ;
+
+diff -ur mozilla-orig/security/nss/lib/pki1/pki1.h mozilla/security/nss/lib/pki1/pki1.h
+--- mozilla-orig/security/nss/lib/pki1/pki1.h 2005-03-13 19:12:25.000000000 -0500
++++ mozilla/security/nss/lib/pki1/pki1.h 2005-03-13 19:15:19.000000000 -0500
+@@ -55,7 +55,9 @@
+
+ PR_BEGIN_EXTERN_C
+
+-/* fgmr 19990505 moved these here from oiddata.h */
++extern const NSSOID nss_builtin_oids[];
++extern const PRUint32 nss_builtin_oid_count;
++
+ extern const nssAttributeTypeAliasTable nss_attribute_type_aliases[];
+ extern const PRUint32 nss_attribute_type_alias_count;
+
diff --git a/net-libs/gecko-sdk/files/mozilla-1.7.6-ppc64.patch b/net-libs/gecko-sdk/files/mozilla-1.7.6-ppc64.patch
new file mode 100644
index 000000000000..a2cb2354f38e
--- /dev/null
+++ b/net-libs/gecko-sdk/files/mozilla-1.7.6-ppc64.patch
@@ -0,0 +1,113 @@
+--- mozilla.orig/security/coreconf/Linux.mk 2004-02-10 20:33:51.000000000 -0600
++++ mozilla/security/coreconf/Linux.mk 2005-04-01 22:41:04.000000000 -0600
+@@ -54,6 +54,10 @@
+ OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
+ CPU_ARCH = m68k
+ else
++ifeq ($(OS_TEST),ppc64)
++ OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
++ CPU_ARCH = ppc64
++else
+ ifeq ($(OS_TEST),ppc)
+ OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
+ CPU_ARCH = ppc
+@@ -117,6 +121,7 @@
+ endif
+ endif
+ endif
++endif
+
+
+ LIBC_TAG = _glibc
+@@ -138,7 +143,7 @@
+ OS_PTHREAD = -lpthread
+ endif
+
+-OS_CFLAGS = $(DSO_CFLAGS) $(OS_REL_CFLAGS) -ansi -Wall -pipe -DLINUX -Dlinux -D_POSIX_SOURCE -D_BSD_SOURCE -DHAVE_STRERROR
++OS_CFLAGS = $(DSO_CFLAGS) $(OS_REL_CFLAGS) -ansi -pipe -DLINUX -Dlinux -D_POSIX_SOURCE -D_BSD_SOURCE -DHAVE_STRERROR
+ OS_LIBS = -L/lib $(OS_PTHREAD) -ldl -lc
+
+ ifdef USE_PTHREADS
+--- mozilla.orig/nsprpub/pr/src/io/prprf.c 2004-03-08 21:18:19.000000000 -0600
++++ mozilla/nsprpub/pr/src/io/prprf.c 2005-04-16 13:18:10.000000000 -0500
+@@ -51,7 +51,8 @@
+ ** Note: on some platforms va_list is defined as an array,
+ ** and requires array notation.
+ */
+-#if (defined(LINUX) && defined(__x86_64__))
++#if (defined(LINUX) && defined(__x86_64__)) || \
++ (defined(LINUX) && defined(__powerpc64__))
+ #define VARARGS_ASSIGN(foo, bar) __va_copy((foo), (bar))
+ #elif (defined(LINUX) && defined(__powerpc__)) || \
+ (defined(LINUX) && defined(__s390__)) || \
+diff -uNr mozilla.orig/nsprpub/pr/include/md/_linux.cfg mozilla/nsprpub/pr/include/md/_linux.cfg
+--- mozilla.orig/nsprpub/pr/include/md/_linux.cfg 2004-03-08 21:18:20.000000000 -0600
++++ mozilla/nsprpub/pr/include/md/_linux.cfg 2005-04-16 13:02:50.000000000 -0500
+@@ -45,7 +45,52 @@
+
+ #define PR_AF_INET6 10 /* same as AF_INET6 */
+
+-#ifdef __powerpc__
++#ifdef __powerpc64__
++
++#undef IS_LITTLE_ENDIAN
++#define IS_BIG_ENDIAN 1
++#define IS_64
++
++#define PR_BYTES_PER_BYTE 1
++#define PR_BYTES_PER_SHORT 2
++#define PR_BYTES_PER_INT 4
++#define PR_BYTES_PER_INT64 8
++#define PR_BYTES_PER_LONG 8
++#define PR_BYTES_PER_FLOAT 4
++#define PR_BYTES_PER_DOUBLE 8
++#define PR_BYTES_PER_WORD 8
++#define PR_BYTES_PER_DWORD 8
++
++#define PR_BITS_PER_BYTE 8
++#define PR_BITS_PER_SHORT 16
++#define PR_BITS_PER_INT 32
++#define PR_BITS_PER_INT64 64
++#define PR_BITS_PER_LONG 64
++#define PR_BITS_PER_FLOAT 32
++#define PR_BITS_PER_DOUBLE 64
++#define PR_BITS_PER_WORD 64
++
++#define PR_BITS_PER_BYTE_LOG2 3
++#define PR_BITS_PER_SHORT_LOG2 4
++#define PR_BITS_PER_INT_LOG2 5
++#define PR_BITS_PER_INT64_LOG2 6
++#define PR_BITS_PER_LONG_LOG2 6
++#define PR_BITS_PER_FLOAT_LOG2 5
++#define PR_BITS_PER_DOUBLE_LOG2 6
++#define PR_BITS_PER_WORD_LOG2 6
++
++#define PR_ALIGN_OF_SHORT 2
++#define PR_ALIGN_OF_INT 4
++#define PR_ALIGN_OF_LONG 8
++#define PR_ALIGN_OF_INT64 8
++#define PR_ALIGN_OF_FLOAT 4
++#define PR_ALIGN_OF_DOUBLE 8
++#define PR_ALIGN_OF_POINTER 8
++#define PR_ALIGN_OF_WORD 8
++#define PR_BYTES_PER_WORD_LOG2 3
++#define PR_BYTES_PER_DWORD_LOG2 3
++
++#elif defined(__powerpc__)
+
+ #undef IS_LITTLE_ENDIAN
+ #define IS_BIG_ENDIAN 1
+diff -uNr mozilla.orig/nsprpub/pr/include/md/_linux.h mozilla/nsprpub/pr/include/md/_linux.h
+--- mozilla.orig/nsprpub/pr/include/md/_linux.h 2004-03-08 21:18:20.000000000 -0600
++++ mozilla/nsprpub/pr/include/md/_linux.h 2005-04-16 13:03:27.000000000 -0500
+@@ -43,7 +43,9 @@
+
+ #define PR_LINKER_ARCH "linux"
+ #define _PR_SI_SYSNAME "LINUX"
+-#ifdef __powerpc__
++#ifdef __powerpc64__
++#define _PR_SI_ARCHITECTURE "ppc64"
++#elif defined(__powerpc__)
+ #define _PR_SI_ARCHITECTURE "ppc"
+ #elif defined(__alpha)
+ #define _PR_SI_ARCHITECTURE "alpha"
diff --git a/net-libs/gecko-sdk/files/mozilla-1.7.8-amd64.patch b/net-libs/gecko-sdk/files/mozilla-1.7.8-amd64.patch
new file mode 100644
index 000000000000..96215fb292d5
--- /dev/null
+++ b/net-libs/gecko-sdk/files/mozilla-1.7.8-amd64.patch
@@ -0,0 +1,71 @@
+--- gfx/src/freetype/nsFreeType.cpp 7 Feb 2004 15:22:30 -0000 1.24
++++ mozilla/gfx/src/freetype/nsFreeType.cpp 4 Mar 2005 19:59:53 -0000
+@@ -96,7 +96,7 @@
+ // Define the FreeType2 functions we resolve at run time.
+ // see the comment near nsFreeType2::DoneFace() for more info
+ //
+-#define NS_FT2_OFFSET(f) (int)&((nsFreeType2*)0)->f
++#define NS_FT2_OFFSET(f) (NS_PTR_TO_INT32(&((nsFreeType2*)0)->f))
+ FtFuncList nsFreeType2::FtFuncs [] = {
+ {"FT_Done_Face", NS_FT2_OFFSET(nsFT_Done_Face), PR_TRUE},
+ {"FT_Done_FreeType", NS_FT2_OFFSET(nsFT_Done_FreeType), PR_TRUE},
+--- netwerk/protocol/http/src/nsHttpConnectionMgr.cpp 1 Sep 2004 23:31:03 -0000 1.7.20.1
++++ mozilla/netwerk/protocol/http/src/nsHttpConnectionMgr.cpp 4 Mar 2005 19:59:57 -0000
+@@ -834,8 +834,8 @@
+ void
+ nsHttpConnectionMgr::OnMsgUpdateParam(nsresult status, void *param)
+ {
+- PRUint16 name = (PRUint32(param) & 0xFFFF0000) >> 16;
+- PRUint16 value = PRUint32(param) & 0x0000FFFF;
++ PRUint16 name = (NS_PTR_TO_INT32(param) & 0xFFFF0000) >> 16;
++ PRUint16 value = NS_PTR_TO_INT32(param) & 0x0000FFFF;
+
+ switch (name) {
+ case MAX_CONNECTIONS:
+--- widget/src/gtk2/nsDragService.cpp 30 Oct 2003 01:48:41 -0000 1.5
++++ mozilla/widget/src/gtk2/nsDragService.cpp 4 Mar 2005 20:00:01 -0000
+@@ -838,7 +838,7 @@
+ (GtkTargetEntry *)g_malloc(sizeof(GtkTargetEntry));
+ listTarget->target = g_strdup(gMimeListType);
+ listTarget->flags = 0;
+- listTarget->info = (guint)listAtom;
++ listTarget->info = (guint)(NS_PTR_TO_INT32(listAtom));
+ PR_LOG(sDragLm, PR_LOG_DEBUG,
+ ("automatically adding target %s with id %ld\n",
+ listTarget->target, listAtom));
+@@ -877,7 +877,7 @@
+ (GtkTargetEntry *)g_malloc(sizeof(GtkTargetEntry));
+ listTarget->target = g_strdup(gTextUriListType);
+ listTarget->flags = 0;
+- listTarget->info = (guint)listAtom;
++ listTarget->info = (guint)NS_PTR_TO_INT32(listAtom);
+ PR_LOG(sDragLm, PR_LOG_DEBUG,
+ ("automatically adding target %s with \
+ id %ld\n", listTarget->target, listAtom));
+@@ -914,7 +914,7 @@
+ (GtkTargetEntry *)g_malloc(sizeof(GtkTargetEntry));
+ target->target = g_strdup(flavorStr);
+ target->flags = 0;
+- target->info = (guint)atom;
++ target->info = (guint)NS_PTR_TO_INT32(atom);
+ PR_LOG(sDragLm, PR_LOG_DEBUG,
+ ("adding target %s with id %ld\n",
+ target->target, atom));
+@@ -931,7 +931,7 @@
+ (GtkTargetEntry *)g_malloc(sizeof(GtkTargetEntry));
+ plainTarget->target = g_strdup(kTextMime);
+ plainTarget->flags = 0;
+- plainTarget->info = (guint)plainAtom;
++ plainTarget->info = (guint)NS_PTR_TO_INT32(plainAtom);
+ PR_LOG(sDragLm, PR_LOG_DEBUG,
+ ("automatically adding target %s with \
+ id %ld\n", plainTarget->target, plainAtom));
+@@ -948,7 +948,7 @@
+ (GtkTargetEntry *)g_malloc(sizeof(GtkTargetEntry));
+ urlTarget->target = g_strdup(gMozUrlType);
+ urlTarget->flags = 0;
+- urlTarget->info = (guint)urlAtom;
++ urlTarget->info = (guint)NS_PTR_TO_INT32(urlAtom);
+ PR_LOG(sDragLm, PR_LOG_DEBUG,
+ ("automatically adding target %s with \
+ id %ld\n", urlTarget->target, urlAtom));
diff --git a/net-libs/gecko-sdk/files/mozilla-1.7.8-objectframefix.diff b/net-libs/gecko-sdk/files/mozilla-1.7.8-objectframefix.diff
new file mode 100644
index 000000000000..b03b855eec47
--- /dev/null
+++ b/net-libs/gecko-sdk/files/mozilla-1.7.8-objectframefix.diff
@@ -0,0 +1,21 @@
+--- layout/html/base/src/nsObjectFrame.cpp.orig 2005-05-15 00:40:19.000000000 +0200
++++ layout/html/base/src/nsObjectFrame.cpp 2005-05-15 00:43:44.000000000 +0200
+@@ -1720,7 +1720,7 @@
+ break;
+
+ nsHTMLContainerFrame::CreateViewForFrame(divFrame, this, PR_FALSE);
+- mFrames.AppendFrame(this, divFrame);
++ // mFrames.AppendFrame(this, divFrame);
+
+ rv = NS_NewImageFrame(shell, &imgFrame);
+ if (NS_FAILED(rv))
+@@ -1756,6 +1756,9 @@
+
+ if (textFrame)
+ textFrame->Destroy(aPresContext);
++ } else {
++ // Creation of all our anonymous content succeeded.
++ mFrames.AppendFrame(this, divFrame);
+ }
+
+ nsCOMPtr<nsISupportsArray> array;
diff --git a/net-libs/gecko-sdk/files/mozilla-hppa.patch b/net-libs/gecko-sdk/files/mozilla-hppa.patch
new file mode 100644
index 000000000000..d874ae1c4d5c
--- /dev/null
+++ b/net-libs/gecko-sdk/files/mozilla-hppa.patch
@@ -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) # Do not check for gcc since there is only this compiler on linux for hppa
++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
diff --git a/net-libs/gecko-sdk/files/mozilla-stackgrowth.patch b/net-libs/gecko-sdk/files/mozilla-stackgrowth.patch
new file mode 100644
index 000000000000..af226b28ed9c
--- /dev/null
+++ b/net-libs/gecko-sdk/files/mozilla-stackgrowth.patch
@@ -0,0 +1,37 @@
+--- js/src/jscpucfg.c 15 Nov 2003 00:10:56 -0000 3.21
++++ js/src/jscpucfg.c 22 Oct 2004 05:45:36 -0000
+@@ -153,19 +153,34 @@ static int Log2(unsigned int n)
+ */
+ static void BitsPerByte(void)
+ {
+ bpb = 8;
+ }
+
++#ifdef __GNUC__
++#if (__GNUC__ > 2)
++__attribute__((noinline))
++#endif
++static int StackGrowthDirection(int *dummy1addr)
++{
++ int *dummy2 = alloca (sizeof (int));
++
++ return (dummy2 < dummy1addr) ? -1 : 1;
++}
++
++#else /* __GNUC__ */
++
+ static int StackGrowthDirection(int *dummy1addr)
+ {
+ int dummy2;
+
+ return (&dummy2 < dummy1addr) ? -1 : 1;
+ }
+
++#endif /* __GNUC__ */
++
+ int main(int argc, char **argv)
+ {
+ int sizeof_char, sizeof_short, sizeof_int, sizeof_int64, sizeof_long,
+ sizeof_float, sizeof_double, sizeof_word, sizeof_dword;
+ int bits_per_int64_log2, align_of_short, align_of_int, align_of_long,
+ align_of_int64, align_of_float, align_of_double, align_of_pointer,
diff --git a/net-libs/gecko-sdk/gecko-sdk-1.7.12.ebuild b/net-libs/gecko-sdk/gecko-sdk-1.7.12.ebuild
new file mode 100644
index 000000000000..736ff5af9790
--- /dev/null
+++ b/net-libs/gecko-sdk/gecko-sdk-1.7.12.ebuild
@@ -0,0 +1,216 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-libs/gecko-sdk/gecko-sdk-1.7.12.ebuild,v 1.1 2005/09/26 01:01:15 azarah Exp $
+
+unset ALLOWED_FLAGS # Stupid extra-functions.sh ... bug 49179
+MOZ_FREETYPE2="no" # Need to disable for newer .. remove here and in mozconfig
+ # when older is removed from tree.
+inherit flag-o-matic toolchain-funcs eutils mozconfig mozilla-launcher makeedit multilib
+
+SVGVER="2.3.10p1"
+
+# handle _rc versions
+MY_PV=${PV/_alpha/a} # handle alpha
+MY_PV=${MY_PV/_beta/b} # handle beta
+MY_PV=${MY_PV/_rc/rc} # handle rc
+
+DESCRIPTION="Mozilla Application Suite - web browser, email, HTML editor, IRC"
+HOMEPAGE="http://www.mozilla.org"
+SRC_URI="http://ftp.mozilla.org/pub/mozilla.org/mozilla/releases/mozilla${MY_PV}/source/mozilla-${MY_PV}-source.tar.bz2
+ mozsvg? (
+ mirror://gentoo/moz_libart_lgpl-${SVGVER}.tar.bz2
+ http://dev.gentoo.org/~azarah/mozilla/moz_libart_lgpl-${SVGVER}.tar.bz2
+ )
+ mirror://gentoo/mozilla-jslibmath-alpha.patch
+ mirror://gentoo/mozilla-1.7.12-gtk2xft.patch.bz2
+ http://dev.gentoo.org/~azarah/mozilla/mozilla-1.7.12-gtk2xft.patch.bz2
+ http://dev.gentoo.org/~agriffis/dist/mozilla-1.7.10-nsplugins-v2.patch"
+
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+SLOT="0"
+LICENSE="MPL-1.1 NPL-1.1"
+IUSE="crypt gnome java ldap mozcalendar mozdevelop moznocompose moznoirc moznomail mozsvg postgres ssl"
+
+# xrender.pc appeared for the first time in xorg-x11-6.7.0-r2
+# and is required to build with support for cairo. #71504
+RDEPEND="java? ( virtual/jre )
+ mozsvg? ( !<x11-base/xorg-x11-6.7.0-r2 )
+ crypt? ( !moznomail? ( >=app-crypt/gnupg-1.2.1 ) )
+ >=www-client/mozilla-launcher-1.42"
+
+DEPEND="${RDEPEND}
+ ~sys-devel/autoconf-2.13
+ java? ( >=dev-java/java-config-0.2.0 )
+ dev-lang/perl
+ postgres? ( >=dev-db/postgresql-7.2.0 )"
+
+S=${WORKDIR}/mozilla
+
+
+src_unpack() {
+ unpack mozilla-${MY_PV}-source.tar.bz2
+ cd ${S} || die
+
+ if use mozsvg; then
+ cd ${S}/other-licenses
+ unpack moz_libart_lgpl-${SVGVER}.tar.bz2
+ fi
+ cd ${S}
+
+ ####################################
+ #
+ # architecture patches
+ #
+ ####################################
+
+ if [[ $(gcc-major-version) -eq 3 ]]; then
+ # ABI Patch for alpha/xpcom for gcc-3.x
+ if [[ ${ARCH} == alpha ]]; then
+ epatch ${FILESDIR}/mozilla-alpha-xpcom-subs-fix.patch
+ fi
+ fi
+
+ # HPPA patches from Ivar <orskaug@stud.ntnu.no>
+ # <gmsoft@gentoo.org> (22 Dec 2004)
+ epatch ${FILESDIR}/mozilla-hppa.patch
+
+ # patch to fix math operations on alpha, makes maps.google.com work!
+ epatch ${DISTDIR}/mozilla-jslibmath-alpha.patch
+
+ # Patch to allow compilation on ppc64 - bug #54843
+ use ppc64 && epatch ${FILESDIR}/mozilla-1.7.6-ppc64.patch
+
+ # Fix building on amd64 with gcc4 (patch from Debian)
+ epatch ${FILESDIR}/mozilla-1.7.8-amd64.patch
+
+ ####################################
+ #
+ # general compilation and run-time fixes
+ #
+ ####################################
+
+ # GCC4 compile fix, bug #87800
+ epatch ${FILESDIR}/mozilla-1.7.6-gcc4.patch
+
+ # Fix stack growth logic
+ epatch ${FILESDIR}/mozilla-stackgrowth.patch
+
+ # Rather use gtk2+xft than freetype for font rendering, and add patch
+ # from mozilla bugzilla to improve printing.
+ # https://bugzilla.mozilla.org/show_bug.cgi?id=215219#c113
+ epatch ${DISTDIR}/mozilla-1.7.12-gtk2xft.patch.bz2
+ # Fix for above
+ epatch ${FILESDIR}/mozilla-1.7.12-gtk2xft-link-pangoxft.patch
+
+ # Fix libart SVG renderer building against newer freetype2
+ epatch ${FILESDIR}/mozilla-1.7.12-libart-freetype.patch
+
+ ####################################
+ #
+ # behavioral fixes
+ #
+ ####################################
+
+ # Mozilla Bug 292257, https://bugzilla.mozilla.org/show_bug.cgi?id=292257
+ # Mozilla crashes under some rare cases when plugin.default_plugin_disabled
+ # is true. This patch fixes that. Backported by hansmi@gentoo.org.
+ epatch ${FILESDIR}/mozilla-1.7.8-objectframefix.diff
+
+ # Fix scripts that call for /usr/local/bin/perl #51916
+ ebegin "Patching smime to call perl from /usr/bin"
+ sed -i -e '1s,usr/local/bin,usr/bin,' security/nss/cmd/smimetools/smime
+ eend $? || die "sed failed"
+
+ # look in /usr/lib/nsplugins for plugins, in addition to the usual places
+ epatch ${DISTDIR}/mozilla-1.7.10-nsplugins-v2.patch
+
+ ####################################
+ #
+ # security fixes
+ #
+ ####################################
+
+ # Needed by some of the patches
+ WANT_AUTOCONF=2.1 autoconf || die "WANT_AUTOCONF failed"
+}
+
+src_compile() {
+
+ ####################################
+ #
+ # mozconfig, CFLAGS and CXXFLAGS setup
+ #
+ ####################################
+
+ mozconfig_init
+
+ # Bug 60668: Galeon doesn't build without oji enabled, so enable it
+ # regardless of java setting.
+ mozconfig_annotate '' --enable-oji --enable-mathml
+
+ # Other moz-specific settings
+ mozconfig_use_enable mozdevelop jsd
+ mozconfig_use_enable mozdevelop xpctools
+ mozconfig_use_extension mozdevelop venkman
+ mozconfig_use_enable gnome gnomevfs
+ mozconfig_use_extension gnome gnomevfs
+ mozconfig_use_extension !moznoirc irc
+ mozconfig_use_extension postgres sql
+ if use postgres ; then
+ export MOZ_ENABLE_PGSQL=1
+ export MOZ_PGSQL_INCLUDES=/usr/include
+ export MOZ_PGSQL_LIBS=/usr/$(get_libdir)
+ fi
+ mozconfig_use_enable mozcalendar calendar
+ mozconfig_use_enable ldap
+ mozconfig_use_enable ldap ldap-experimental
+ mozconfig_use_enable mozsvg svg
+ mozconfig_use_enable mozsvg svg-renderer-libart
+ use mozsvg && export MOZ_INTERNAL_LIBART_LGPL=1
+ mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME}
+ mozconfig_annotate '' --with-user-appdir=.mozilla
+
+ if use moznomail && ! use mozcalendar; then
+ mozconfig_annotate "+moznomail -mozcalendar" --disable-mailnews
+ fi
+ if use moznocompose && use moznomail; then
+ mozconfig_annotate "+moznocompose +moznomail" --disable-composer
+ fi
+
+ # Finalize and report settings
+ mozconfig_final
+
+ # hardened GCC uses -fstack-protector-all by default, which breaks us
+ has_hardened && append-flags -fno-stack-protector-all
+ replace-flags -fstack-protector-all -fstack-protector
+
+ ####################################
+ #
+ # Configure and build
+ #
+ ####################################
+
+ CPPFLAGS="${CPPFLAGS} -DARON_WAS_HERE" \
+ CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
+ econf || die
+
+ # It would be great if we could pass these in via CPPFLAGS or CFLAGS prior
+ # to econf, but the quotes cause configure to fail.
+ sed -i -e \
+ 's|-DARON_WAS_HERE|-DGENTOO_NSPLUGINS_DIR=\\\"/usr/'"$(get_libdir)"'/nsplugins\\\" -DGENTOO_NSBROWSER_PLUGINS_DIR=\\\"/usr/'"$(get_libdir)"'/nsbrowser/plugins\\\"|' \
+ ${S}/config/autoconf.mk \
+ ${S}/nsprpub/config/autoconf.mk \
+ ${S}/xpfe/global/buildconfig.html
+
+ # This removes extraneous CFLAGS from the Makefiles to reduce RAM
+ # requirements while compiling
+ edit_makefiles
+
+ emake || die
+}
+
+src_install() {
+ cd ${S}/dist
+ mkdir -p ${D}/usr/$(get_libdir)
+ cp -RL sdk ${D}/usr/$(get_libdir)/gecko-sdk
+}