summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZhang Le <r0bertz@gentoo.org>2009-05-04 15:36:48 +0800
committerZhang Le <r0bertz@gentoo.org>2009-05-04 15:36:48 +0800
commitd6c16c71ecbc77223b8e2ea900a996d4b27dd38c (patch)
tree072bfbb360a38d627d6b0af54294c80fd7a53c20 /net-libs/xulrunner
parentxulrunner: make it work on N32, without kernel support for unaligned access (diff)
downloadloongson-d6c16c71ecbc77223b8e2ea900a996d4b27dd38c.tar.gz
loongson-d6c16c71ecbc77223b8e2ea900a996d4b27dd38c.tar.bz2
loongson-d6c16c71ecbc77223b8e2ea900a996d4b27dd38c.zip
xulrunner: added xulrunner-1.9.1_beta4-r1
Signed-off-by: Zhang Le <r0bertz@gentoo.org>
Diffstat (limited to 'net-libs/xulrunner')
-rw-r--r--net-libs/xulrunner/Manifest16
-rw-r--r--net-libs/xulrunner/files/1.9.1_beta4/001-xul_gentoo_install_dirs.patch22
-rw-r--r--net-libs/xulrunner/files/1.9.1_beta4/064_firefox-nsplugins-v3.patch28
-rw-r--r--net-libs/xulrunner/files/1.9.1_beta4/102-dont_install_so_in_dev.patch28
-rw-r--r--net-libs/xulrunner/files/1.9.1_beta4/104-protect_tests_by_ifdefs.patch94
-rw-r--r--net-libs/xulrunner/files/1.9.1_beta4/106-bzXXX_pc_honour_system_nspr_nss.patch101
-rw-r--r--net-libs/xulrunner/files/1.9.1_beta4/108-bzXXX_no_zlib_export_if_native.patch27
-rw-r--r--net-libs/xulrunner/files/1.9.1_beta4/112-bz466923_att350251_password_prompt_branding_fallback.patch64
-rw-r--r--net-libs/xulrunner/files/1.9.1_beta4/118-bz467766_att351173-dont-reset-user-prefs-on-upgrade.patch102
-rw-r--r--net-libs/xulrunner/files/1.9.1_beta4/136-fix_ftbfs_with_cairo_fb.patch61
-rw-r--r--net-libs/xulrunner/files/xulrunner-1.9.1-gcc4.4.patch36
-rw-r--r--net-libs/xulrunner/files/xulrunner-mips-n32.patch2
-rw-r--r--net-libs/xulrunner/files/xulrunner-mips-o32.patch2
-rw-r--r--net-libs/xulrunner/xulrunner-1.9.1_beta4-r1.ebuild185
14 files changed, 764 insertions, 4 deletions
diff --git a/net-libs/xulrunner/Manifest b/net-libs/xulrunner/Manifest
index f1081e3..3a1010e 100644
--- a/net-libs/xulrunner/Manifest
+++ b/net-libs/xulrunner/Manifest
@@ -1,10 +1,22 @@
+AUX 1.9.1_beta4/001-xul_gentoo_install_dirs.patch 887 RMD160 c242ef3297f0f8ae196e61a56a125e8347e8341b SHA1 bd093b64c1afacc0e5bdc28bf7860fc9de958612 SHA256 914b5d4c3083e7405371eba8e0e4f2c8ac9ee787ebf2b1898e6c4067453e8c9d
+AUX 1.9.1_beta4/064_firefox-nsplugins-v3.patch 1378 RMD160 69f3387949b50c4996f76a7b7820152faa668b32 SHA1 bcb6f20c554ea1a68857dbf4856eb34fe0adf211 SHA256 701c3d5a3e5b5ea79a2910b2c2747c9d9eaeffb19215f2c9b4ef58fd04cf1463
+AUX 1.9.1_beta4/102-dont_install_so_in_dev.patch 1590 RMD160 5cf19bda002e19136b5ab6e547abf17ee77617bd SHA1 85741b60140be272a5ba7fe0896f6525efe954ea SHA256 7ece1e778c229a294dab3aa6490c15097a257d362c774476cea6f3681825ff2f
+AUX 1.9.1_beta4/104-protect_tests_by_ifdefs.patch 2256 RMD160 bab8557ea609ac0e847eae06af6f1346b41fa3d9 SHA1 1e946f53f402232499a054645426bc7d4630800d SHA256 a45e11892b75cc5594bcdcb45c8d539219597cc5db43d37fa894e62473929293
+AUX 1.9.1_beta4/106-bzXXX_pc_honour_system_nspr_nss.patch 3911 RMD160 bd95b494664f8cac1f35421022b568040da7c063 SHA1 29f0523de3e9fb56077c6dcafdc216d35f9038e8 SHA256 cb28c327fada71f84ff2767e79a4836a4c5734e485aa1f4d54a17271aa04a293
+AUX 1.9.1_beta4/108-bzXXX_no_zlib_export_if_native.patch 749 RMD160 379133a53aa2805cf1f9a5395803452141ce0742 SHA1 c8d019d1fc734df496cd219875c5562366d08983 SHA256 07aaa3a6bbe51db84e957adb2d4226aeb4099ab5adab98a3d86d75645d4fbb4d
+AUX 1.9.1_beta4/112-bz466923_att350251_password_prompt_branding_fallback.patch 3057 RMD160 6b291596412063904e11b32da71b62b2eb4e7b99 SHA1 d01585b46e3c11c29d1fcc53b0c863402cddc1bc SHA256 54f99a2b1152eb022b4be51857bac93746d561d1e3ccda31ff1b9213bb8bb26f
+AUX 1.9.1_beta4/118-bz467766_att351173-dont-reset-user-prefs-on-upgrade.patch 4005 RMD160 5e00618d970cfb8a054f6080efe360e31eb0bd62 SHA1 5da508e128b69805fc8bb2133df7f12948f80629 SHA256 caaaea617cdc596140ee638e9acd9723ebaa470de266a699cd062faa28c2c042
+AUX 1.9.1_beta4/136-fix_ftbfs_with_cairo_fb.patch 1557 RMD160 6fa42619246c9b23a0f52276b5a368eb98674684 SHA1 d80d8432ba3078c148813013b7113a814ed84160 SHA256 de46c9b133555b6727238cda161a917cc4dca26c3600c1ea5ceb98e0f9e49ffd
AUX xulrunner-1.9.0.5-gcc4.4.patch 1893 RMD160 8510bc33a55a1d3580439ed510e4705c3e217e57 SHA1 fcc5577e290e20bfa6bfa052a343dc5fad774250 SHA256 c21cc87796f0f1c3ec0f82e2e907b5a12c800a77d3a909f0d293879df1a23f05
+AUX xulrunner-1.9.1-gcc4.4.patch 1410 RMD160 41b9efd9b98f2ef0b9e3e7c0e35114f1eec59afe SHA1 941bba748899f314733e0b10d2e92f9f201fb820 SHA256 7f0d34435c7e73a206455002391edc5b6c4cea0fa6205e0836ae8f8532d02385
AUX xulrunner-mips-bus-error.patch 1412 RMD160 2194194a38a1631450d199784b80c7f6d344ba16 SHA1 c6e3348db92811224529e119ff483d5d7883c850 SHA256 50afd8bf604c22a4a4f9862618a788b1288e834572955d42a4142a0f578263b5
-AUX xulrunner-mips-n32.patch 24738 RMD160 f00e1e41e8095e802d04aa30c3317b73f9a7f161 SHA1 aca45cffe563b36a2aa0447c1260b900a59d7de0 SHA256 caf7e7eceb00fb99f6c5b55b397540c4039cd3cd744e0cd6d7fa2d5dbc71624e
-AUX xulrunner-mips-o32.patch 17604 RMD160 5f1b38ccf24cf449b277a831e1284df7bd298fe9 SHA1 03391ff70005f480d616ab020f952f9a8f5f698c SHA256 13b1b3e8762040d648d8f9149ec76439d37b7e7e33bb95ba069788155ce98d41
+AUX xulrunner-mips-n32.patch 24732 RMD160 d5020c88801e6647131c6c2d780a90ccc0717c7a SHA1 37be69001a75f62d51e84b8b22f1946c27e8baa1 SHA256 5cce08d42a0cf629717b34ec0310b86080640ff6fe5bc14988d1b046562e7254
+AUX xulrunner-mips-o32.patch 17598 RMD160 997add4cc1c0aa96c2484e860bb51441d5adb7e1 SHA1 e32d33007446db694ca5e61c853620970fe9d22e SHA256 9ce5a23a4d2582e48ae43a4cb414a7ce690e1cf029e24d0d5d93b8e301b41bc5
AUX xulrunner.conf 113 RMD160 8be48cf5040eb5753c8eb35c048cc6b2c1a8a057 SHA1 62cce7ee5b1e51343c3dbc388894011da913d9d4 SHA256 9ac56b42cfb48854d23c299330ad327af5f0815140dcb7fdee905b660cd9a8a3
+DIST firefox-3.5b4-source.tar.bz2 45782023 RMD160 d28d545f533f0f3b6b7e6e09813768b2996b3d76 SHA1 33bb5b254c3a772d9195c5128a2c569a9cbb8ccd SHA256 b653f2fa8dfdd0a54a6b8c576769719cf9014ca6b09f8e9d351721a51766d95d
DIST xulrunner-1.9.0.10-patches-0.1.tar.bz2 7077 RMD160 73612f1b619fef5d02e8c8f8318afe192e435e42 SHA1 8a48e53951216c330d4908def93a5c0201f5a890 SHA256 bc0c0d26258bc17ffa5cd513089fe94395ff8f6c17023cd363fac30cdd675410
DIST xulrunner-1.9.0.10.tar.bz2 34167778 RMD160 96ca5c569bbee78924c6e9cb5fea660870a8c096 SHA1 926d9042557e2d767db91b1d183327713fb090d3 SHA256 fe4091f4de50278567b4e26effea66a998dd41f455077e1e37cff8b3417a8f34
EBUILD xulrunner-1.9.0.10.ebuild 4924 RMD160 812e4fb1216d76dd84c1041365001bb9291cb448 SHA1 1843a099e8dbf0475cc37ebd41c6e477165579db SHA256 d0fc674b97a2cf9d2a499ec5d7b915c570ca4e88873882c7cc4157500415d59e
+EBUILD xulrunner-1.9.1_beta4-r1.ebuild 5333 RMD160 82ade14458dc501a7de47b19e3912dc06a5623ed SHA1 8958289f6554ffd04e35c15236fc7f2a153e6678 SHA256 9c5efbb1ab332b619be79ba4a457300869a8e8c2bb49df00488b16a5476ccc9d
MISC ChangeLog 20231 RMD160 53d013acdc632eee5a57c68cc91590a9d97d322b SHA1 50a8a72f61cdf952923a6c40d3ddbdafa10682fc SHA256 4dc8981ad9cda5b06ff6f5e7b826a01d32082c6a306879ee1e3923a8aa93a449
MISC metadata.xml 263 RMD160 9ed9d79d17d0a991e88c31ae6342996519ffef5b SHA1 0de183203298ce0f1c2ecc3fc8149842c4a0ec60 SHA256 64bfc93c4ab02ef2fe9b61b8157eb722d6cca5d552eecc18eaaf8e95980d2550
diff --git a/net-libs/xulrunner/files/1.9.1_beta4/001-xul_gentoo_install_dirs.patch b/net-libs/xulrunner/files/1.9.1_beta4/001-xul_gentoo_install_dirs.patch
new file mode 100644
index 0000000..f630d51
--- /dev/null
+++ b/net-libs/xulrunner/files/1.9.1_beta4/001-xul_gentoo_install_dirs.patch
@@ -0,0 +1,22 @@
+diff -Naur mozilla-1.9.1.orig/config/autoconf.mk.in mozilla-1.9.1/config/autoconf.mk.in
+--- mozilla-1.9.1.orig/config/autoconf.mk.in 2009-03-06 03:01:44.000000000 +0530
++++ mozilla-1.9.1/config/autoconf.mk.in 2009-04-26 18:59:19.992997721 +0530
+@@ -57,14 +57,14 @@
+ prefix = @prefix@
+ exec_prefix = @exec_prefix@
+ bindir = @bindir@
+-includedir = @includedir@/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
++includedir = @includedir@/$(MOZ_APP_NAME)-@PV@
+ libdir = @libdir@
+ datadir = @datadir@
+ mandir = @mandir@
+-idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
++idldir = $(datadir)/idl/$(MOZ_APP_NAME)-@PV@
+
+-installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
+-sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION)
++installdir = $(libdir)/$(MOZ_APP_NAME)-@PV@
++sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-@PV@
+
+ DIST = $(DEPTH)/dist
+ LIBXUL_SDK = @LIBXUL_SDK@
diff --git a/net-libs/xulrunner/files/1.9.1_beta4/064_firefox-nsplugins-v3.patch b/net-libs/xulrunner/files/1.9.1_beta4/064_firefox-nsplugins-v3.patch
new file mode 100644
index 0000000..0813405
--- /dev/null
+++ b/net-libs/xulrunner/files/1.9.1_beta4/064_firefox-nsplugins-v3.patch
@@ -0,0 +1,28 @@
+# Gentoo's Add a search path for plugins. by agriffis
+
+--- xpcom/io/nsAppFileLocationProvider.cpp.original 2007-02-14 00:59:21.000000000 +0100
++++ xpcom/io/nsAppFileLocationProvider.cpp 2007-02-14 01:17:35.000000000 +0100
+@@ -205,6 +205,14 @@
+ if (NS_SUCCEEDED(rv))
+ rv = localFile->AppendRelativeNativePath(PLUGINS_DIR_NAME);
+ }
++ else if (nsCRT::strcmp(prop, GENTOO_NSPLUGINS_DIR) == 0)
++ {
++ rv = NS_NewNativeLocalFile(nsDependentCString(GENTOO_NSPLUGINS_DIR), PR_TRUE, getter_AddRefs(localFile));
++ }
++ else if (nsCRT::strcmp(prop, GENTOO_NSBROWSER_PLUGINS_DIR) == 0)
++ {
++ rv = NS_NewNativeLocalFile(nsDependentCString(GENTOO_NSBROWSER_PLUGINS_DIR), PR_TRUE, getter_AddRefs(localFile));
++ }
+ #ifdef XP_MACOSX
+ else if (nsCRT::strcmp(prop, NS_MACOSX_USER_PLUGIN_DIR) == 0)
+ {
+@@ -595,7 +595,7 @@
+ #ifdef XP_UNIX
+ static const char* keys[] = { nsnull, NS_USER_PLUGINS_DIR, NS_APP_PLUGINS_DIR, NS_SYSTEM_PLUGINS_DIR, nsnull };
+ #else
+- static const char* keys[] = { nsnull, NS_USER_PLUGINS_DIR, NS_APP_PLUGINS_DIR, nsnull };
++ static const char* keys[] = { nsnull, GENTOO_NSPLUGINS_DIR, GENTOO_NSBROWSER_PLUGINS_DIR, NS_USER_PLUGINS_DIR, NS_APP_PLUGINS_DIR, nsnull };
+ #endif
+ if (!keys[0] && !(keys[0] = PR_GetEnv("MOZ_PLUGIN_PATH"))) {
+ static const char nullstr = 0;
diff --git a/net-libs/xulrunner/files/1.9.1_beta4/102-dont_install_so_in_dev.patch b/net-libs/xulrunner/files/1.9.1_beta4/102-dont_install_so_in_dev.patch
new file mode 100644
index 0000000..87017c3
--- /dev/null
+++ b/net-libs/xulrunner/files/1.9.1_beta4/102-dont_install_so_in_dev.patch
@@ -0,0 +1,28 @@
+---
+ toolkit/mozapps/installer/packager.mk | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+Index: mozilla/toolkit/mozapps/installer/packager.mk
+===================================================================
+--- mozilla.orig/toolkit/mozapps/installer/packager.mk
++++ mozilla/toolkit/mozapps/installer/packager.mk
+@@ -419,17 +419,18 @@
+ (cd $(DESTDIR)$(idldir)/stable && tar -xf -)
+ (cd $(DIST)/idl && tar $(TAR_CREATE_FLAGS) - .) | \
+ (cd $(DESTDIR)$(idldir)/unstable && tar -xf -)
+ # SDK directory is the libs + a bunch of symlinks
+ $(NSINSTALL) -D $(DESTDIR)$(sdkdir)/sdk/lib
+ if test -f $(DIST)/sdk/include/xpcom-config.h; then \
+ $(SYSINSTALL) $(IFLAGS1) $(DIST)/sdk/include/xpcom-config.h $(DESTDIR)$(sdkdir); \
+ fi
+- (cd $(DIST)/sdk/lib && tar $(TAR_CREATE_FLAGS) - .) | (cd $(DESTDIR)$(sdkdir)/sdk/lib && tar -xf -)
++ (cd $(DIST)/sdk/lib && tar --exclude='*.so' $(TAR_CREATE_FLAGS) - .) | (cd $(DESTDIR)$(sdkdir)/sdk/lib && tar -xf -)
++ ln -s $(addprefix $(installdir)/,$(notdir $(wildcard $(DIST)/sdk/lib/*.so))) $(DESTDIR)$(sdkdir)/sdk/lib
+ $(RM) -f $(DESTDIR)$(sdkdir)/lib $(DESTDIR)$(sdkdir)/bin $(DESTDIR)$(sdkdir)/sdk/include $(DESTDIR)$(sdkdir)/include $(DESTDIR)$(sdkdir)/sdk/idl $(DESTDIR)$(sdkdir)/idl
+ ln -s $(sdkdir)/sdk/lib $(DESTDIR)$(sdkdir)/lib
+ ln -s $(installdir) $(DESTDIR)$(sdkdir)/bin
+ ln -s $(includedir)/stable $(DESTDIR)$(sdkdir)/sdk/include
+ ln -s $(includedir)/unstable $(DESTDIR)$(sdkdir)/include
+ ln -s $(idldir)/stable $(DESTDIR)$(sdkdir)/sdk/idl
+ ln -s $(idldir)/unstable $(DESTDIR)$(sdkdir)/idl
+ endif # INSTALL_SDK
diff --git a/net-libs/xulrunner/files/1.9.1_beta4/104-protect_tests_by_ifdefs.patch b/net-libs/xulrunner/files/1.9.1_beta4/104-protect_tests_by_ifdefs.patch
new file mode 100644
index 0000000..00cbffb
--- /dev/null
+++ b/net-libs/xulrunner/files/1.9.1_beta4/104-protect_tests_by_ifdefs.patch
@@ -0,0 +1,94 @@
+---
+ content/xul/content/Makefile.in | 6 +++++-
+ dom/Makefile.in | 6 +++++-
+ toolkit/components/commandlines/Makefile.in | 5 ++++-
+ toolkit/components/downloads/Makefile.in | 6 +++++-
+ 4 files changed, 19 insertions(+), 4 deletions(-)
+
+Index: mozilla/content/xul/content/Makefile.in
+===================================================================
+--- mozilla.orig/content/xul/content/Makefile.in
++++ mozilla/content/xul/content/Makefile.in
+@@ -38,12 +38,16 @@
+ DEPTH = ../../..
+ topsrcdir = @top_srcdir@
+ srcdir = @srcdir@
+ VPATH = @srcdir@
+
+ include $(DEPTH)/config/autoconf.mk
+
+ MODULE = xul
+-PARALLEL_DIRS = src test
++PARALLEL_DIRS = src
++
++ifdef ENABLE_TESTS
++PARALLEL_DIRS += test
++endif
+
+ include $(topsrcdir)/config/rules.mk
+
+Index: mozilla/toolkit/components/downloads/Makefile.in
+===================================================================
+--- mozilla.orig/toolkit/components/downloads/Makefile.in
++++ mozilla/toolkit/components/downloads/Makefile.in
+@@ -37,12 +37,16 @@
+
+ DEPTH = ../../..
+ topsrcdir = @top_srcdir@
+ srcdir = @srcdir@
+ VPATH = @srcdir@
+
+ include $(DEPTH)/config/autoconf.mk
+
+-DIRS = public src test
++DIRS = public src
++
++ifdef ENABLE_TESTS
++DIRS += test
++endif
+
+ include $(topsrcdir)/config/rules.mk
+
+Index: mozilla/toolkit/components/commandlines/Makefile.in
+===================================================================
+--- mozilla.orig/toolkit/components/commandlines/Makefile.in
++++ mozilla/toolkit/components/commandlines/Makefile.in
+@@ -40,12 +40,15 @@
+ srcdir = @srcdir@
+ VPATH = @srcdir@
+
+ include $(DEPTH)/config/autoconf.mk
+
+ DIRS = \
+ public \
+ src \
+- test \
+ $(NULL)
+
++ifdef ENABLE_TESTS
++DIRS += test
++endif
++
+ include $(topsrcdir)/config/rules.mk
+Index: mozilla/dom/Makefile.in
+===================================================================
+--- mozilla.orig/dom/Makefile.in
++++ mozilla/dom/Makefile.in
+@@ -38,12 +38,16 @@
+ DEPTH = ..
+ topsrcdir = @top_srcdir@
+ srcdir = @srcdir@
+ VPATH = @srcdir@
+
+ include $(DEPTH)/config/autoconf.mk
+
+ MODULE = dom
+-DIRS = public src locales tests
++DIRS = public src locales
++
++ifdef ENABLE_TESTS
++DIRS += tests
++endif
+
+ include $(topsrcdir)/config/rules.mk
+
diff --git a/net-libs/xulrunner/files/1.9.1_beta4/106-bzXXX_pc_honour_system_nspr_nss.patch b/net-libs/xulrunner/files/1.9.1_beta4/106-bzXXX_pc_honour_system_nspr_nss.patch
new file mode 100644
index 0000000..f961dd7
--- /dev/null
+++ b/net-libs/xulrunner/files/1.9.1_beta4/106-bzXXX_pc_honour_system_nspr_nss.patch
@@ -0,0 +1,101 @@
+---
+ xulrunner/installer/Makefile.in | 15 ++++++++++++---
+ xulrunner/installer/libxul-embedding-unstable.pc.in | 2 +-
+ xulrunner/installer/libxul-embedding.pc.in | 2 +-
+ xulrunner/installer/mozilla-nss.pc.in | 6 +++---
+ 4 files changed, 17 insertions(+), 8 deletions(-)
+
+Index: mozilla/xulrunner/installer/Makefile.in
+===================================================================
+--- mozilla.orig/xulrunner/installer/Makefile.in
++++ mozilla/xulrunner/installer/Makefile.in
+@@ -91,29 +91,38 @@
+ mozilla-plugin.pc \
+ mozilla-gtkmozembed.pc \
+ mozilla-gtkmozembed-embedding.pc \
+ $(NULL)
+
+ ifdef MOZ_NATIVE_NSPR
+ NSPR_NAME=nspr
+ NSPR_VERSION=$(shell $(NSPR_CONFIG) --version)
++FULL_NSPR_CFLAGS=$(shell $(NSPR_CONFIG) --cflags)
++FULL_NSPR_LIBS=$(shell $(NSPR_CONFIG) --libs)
+ else
+-pkg_config_files += mozilla-nspr.pc
+ NSPR_NAME=mozilla-nspr
+ FULL_NSPR_CFLAGS=-I\$${includedir}/stable
+ FULL_NSPR_LIBS=$(subst $(prefix),\$${sdkdir},$(shell $(DEPTH)/nsprpub/config/nspr-config --libs))
+ NSPR_VERSION=$(shell $(DEPTH)/nsprpub/config/nspr-config --version)
+ endif
++pkg_config_files += mozilla-nspr.pc
+
+ $(warning FULL_NSPR_CFLAGS=$(FULL_NSPR_CFLAGS))
+
+-ifndef MOZ_NATIVE_NSS
+-pkg_config_files += mozilla-nss.pc
++ifdef MOZ_NATIVE_NSS
++NSPR_VERSION=$(shell $(NSS_CONFIG) --version)
++FULL_NSS_CFLAGS=$(shell $(NSS_CONFIG) --cflags)
++FULL_NSS_LIBS=$(shell $(NSS_CONFIG) --libs)
++else
++NSS_VERSION=$(shell $(DEPTH)/nsprpub/config/nss-config --version)
++FULL_NSS_CFLAGS=-I\$${includedir}/stable
++FULL_NSS_LIBS=$(subst $(prefix),\$${sdkdir},$(shell $(DEPTH)/nsprpub/config/nss-config --libs))
+ endif
++pkg_config_files += mozilla-nss.pc
+
+ ifdef MOZ_OJI
+ OJIDEF=-DOJI
+ else
+ OJIDEF=
+ endif
+
+ %.pc: $(srcdir)/%.pc.in $(GLOBAL_DEPS)
+Index: mozilla/xulrunner/installer/libxul-embedding-unstable.pc.in
+===================================================================
+--- mozilla.orig/xulrunner/installer/libxul-embedding-unstable.pc.in
++++ mozilla/xulrunner/installer/libxul-embedding-unstable.pc.in
+@@ -3,9 +3,9 @@
+ includedir=%includedir%
+ idldir=%idldir%
+ includetype=unstable
+
+ Name: libxul-embedding-unstable
+ Description: Static library for version-independent embedding of the Mozilla runtime (unstable API)
+ Version: %MOZILLA_VERSION%
+ Libs: -L${sdkdir}/lib -lxpcomglue
+-Cflags: -DXPCOM_GLUE -I${includedir}/${includetype} %WCHAR_CFLAGS%
++Cflags: -DXPCOM_GLUE -I${includedir}/${includetype} %WCHAR_CFLAGS% %FULL_NSPR_CFLAGS%
+Index: mozilla/xulrunner/installer/libxul-embedding.pc.in
+===================================================================
+--- mozilla.orig/xulrunner/installer/libxul-embedding.pc.in
++++ mozilla/xulrunner/installer/libxul-embedding.pc.in
+@@ -7,9 +7,9 @@
+ # Note: the default pkg-config cflags will only list include directories
+ # that contain stable (frozen or safe for linking) header files. To include
+ # nonfrozen headers, run pkg-config with --define-variable=includetype=unstable
+
+ Name: libxul-embedding
+ Description: Static library for version-independent embedding of the Mozilla runtime
+ Version: %MOZILLA_VERSION%
+ Libs: -L${sdkdir}/lib -lxpcomglue
+-Cflags: -DXPCOM_GLUE -I${includedir}/${includetype} %WCHAR_CFLAGS%
++Cflags: -DXPCOM_GLUE -I${includedir}/${includetype} %WCHAR_CFLAGS% %FULL_NSPR_CFLAGS%
+Index: mozilla/xulrunner/installer/mozilla-nss.pc.in
+===================================================================
+--- mozilla.orig/xulrunner/installer/mozilla-nss.pc.in
++++ mozilla/xulrunner/installer/mozilla-nss.pc.in
+@@ -1,10 +1,10 @@
+ prefix=%prefix%
+ sdkdir=%sdkdir%
+ includedir=%includedir%
+
+ Name: NSS
+ Description: Mozilla Network Security Services
+-Version: %MOZILLA_VERSION%
++Version: %NSS_VERSION%
+ Requires: %NSPR_NAME% >= %NSPR_VERSION%
+-Libs: -L${sdkdir}/lib -lnss3 -lnssutil3 -lsmime3 -lssl3 -lsoftokn3
+-Cflags: -I${includedir}/stable
++Libs: %FULL_NSS_LIBS%
++Cflags: %FULL_NSS_CFLAGS%
diff --git a/net-libs/xulrunner/files/1.9.1_beta4/108-bzXXX_no_zlib_export_if_native.patch b/net-libs/xulrunner/files/1.9.1_beta4/108-bzXXX_no_zlib_export_if_native.patch
new file mode 100644
index 0000000..cc7fe93
--- /dev/null
+++ b/net-libs/xulrunner/files/1.9.1_beta4/108-bzXXX_no_zlib_export_if_native.patch
@@ -0,0 +1,27 @@
+Index: modules/zlib/standalone/Makefile.in
+===================================================================
+RCS file: /cvsroot/mozilla/modules/zlib/standalone/Makefile.in,v
+retrieving revision 1.20
+diff -u -p -8 -r1.20 Makefile.in
+--- mozilla/modules/zlib/standalone/Makefile.in 31 Dec 2005 16:02:07 -0000 1.20
++++ mozilla/modules/zlib/standalone/Makefile.in 1 Jan 2008 23:27:42 -0000
+@@ -43,17 +43,19 @@ VPATH = @srcdir@
+
+ include $(DEPTH)/config/autoconf.mk
+ include $(srcdir)/../src/objs.mk
+
+ MODULE = zlib
+ LIBRARY_NAME = mozz_s
+
+ CSRCS = $(MODULES_ZLIB_SRC_LCSRCS)
++ifndef MOZ_NATIVE_ZLIB
+ EXPORTS = $(MODULES_ZLIB_SRC_EXPORTS)
++endif
+
+ FORCE_STATIC_LIB = 1
+ SRCS_IN_OBJDIR = 1
+
+ ifeq ($(OS_ARCH),WINNT)
+ USE_STATIC_LIBS=1
+ endif
+
diff --git a/net-libs/xulrunner/files/1.9.1_beta4/112-bz466923_att350251_password_prompt_branding_fallback.patch b/net-libs/xulrunner/files/1.9.1_beta4/112-bz466923_att350251_password_prompt_branding_fallback.patch
new file mode 100644
index 0000000..daa6376
--- /dev/null
+++ b/net-libs/xulrunner/files/1.9.1_beta4/112-bz466923_att350251_password_prompt_branding_fallback.patch
@@ -0,0 +1,64 @@
+---
+ toolkit/components/passwordmgr/src/nsLoginManagerPrompter.js | 21 ++++++++---
+ 1 file changed, 16 insertions(+), 5 deletions(-)
+
+Index: mozilla/toolkit/components/passwordmgr/src/nsLoginManagerPrompter.js
+===================================================================
+--- mozilla.orig/toolkit/components/passwordmgr/src/nsLoginManagerPrompter.js
++++ mozilla/toolkit/components/passwordmgr/src/nsLoginManagerPrompter.js
+@@ -649,18 +649,24 @@
+ this._getLocalizedString("notifyBarRememberButtonText");
+ var rememberButtonAccessKey =
+ this._getLocalizedString("notifyBarRememberButtonAccessKey");
+ var notNowButtonText =
+ this._getLocalizedString("notifyBarNotNowButtonText");
+ var notNowButtonAccessKey =
+ this._getLocalizedString("notifyBarNotNowButtonAccessKey");
+
+- var brandShortName =
+- this._brandBundle.GetStringFromName("brandShortName");
++ var brandShortName = "toolkit@mozilla.org";
++ try {
++ brandShortName =
++ this._brandBundle.GetStringFromName("brandShortName");
++ } catch (e) {
++ this.log ("no brandShortName available for prompting - most likely incomplete embedding.");
++ }
++
+ var displayHost = this._getShortDisplayHost(aLogin.hostname);
+ var notificationText;
+ if (aLogin.username) {
+ var displayUser = this._sanitizeUsername(aLogin.username);
+ notificationText = this._getLocalizedString(
+ "saveLoginText",
+ [brandShortName, displayUser, displayHost]);
+ } else {
+@@ -737,20 +743,25 @@
+ *
+ */
+ _showSaveLoginDialog : function (aLogin) {
+ const buttonFlags = Ci.nsIPrompt.BUTTON_POS_1_DEFAULT +
+ (Ci.nsIPrompt.BUTTON_TITLE_IS_STRING * Ci.nsIPrompt.BUTTON_POS_0) +
+ (Ci.nsIPrompt.BUTTON_TITLE_IS_STRING * Ci.nsIPrompt.BUTTON_POS_1) +
+ (Ci.nsIPrompt.BUTTON_TITLE_IS_STRING * Ci.nsIPrompt.BUTTON_POS_2);
+
+- var brandShortName =
+- this._brandBundle.GetStringFromName("brandShortName");
+- var displayHost = this._getShortDisplayHost(aLogin.hostname);
++ var brandShortName = "toolkit@mozilla.org";
++ try {
++ brandShortName =
++ this._brandBundle.GetStringFromName("brandShortName");
++ } catch (e) {
++ this.log ("no brandShortName available for prompting - most likely incomplete embedding.");
++ }
+
++ var displayHost = this._getShortDisplayHost(aLogin.hostname);
+ var dialogText;
+ if (aLogin.username) {
+ var displayUser = this._sanitizeUsername(aLogin.username);
+ dialogText = this._getLocalizedString(
+ "saveLoginText",
+ [brandShortName, displayUser, displayHost]);
+ } else {
+ dialogText = this._getLocalizedString(
diff --git a/net-libs/xulrunner/files/1.9.1_beta4/118-bz467766_att351173-dont-reset-user-prefs-on-upgrade.patch b/net-libs/xulrunner/files/1.9.1_beta4/118-bz467766_att351173-dont-reset-user-prefs-on-upgrade.patch
new file mode 100644
index 0000000..0a6856e
--- /dev/null
+++ b/net-libs/xulrunner/files/1.9.1_beta4/118-bz467766_att351173-dont-reset-user-prefs-on-upgrade.patch
@@ -0,0 +1,102 @@
+
+This bug is due to the fact, applications are restarted before extension
+defaults are loaded.
+
+To reproduce, choose any preference and set the values like:
+system default:
+ pref("prefkey",systemvalue);
+extension default:
+ pref("prefkey", extensiondefault);
+user pref:
+ user_pref("prefkey", systemvalue);
+
+Next, trigger application behaviour similar to upgrade by removing compreg.dat
+from profile and start the application.
+
+Result:
+User sees extensiondefault after upgrade, because the user_pref has been
+eliminated ... which is definitly not what the user expects because he explicitly
+had *systemvalue* set before the upgrade.
+
+Evaluation:
+The bug happens because restart is performed *before* extension defaults have been
+loaded and the prefapi.cpp always eliminate user preference if the user preference
+is equal to the actual default (which happens to be extensiondefault normally - so
+no reset, but is systemvalue during restart).
+
+Fix:
+1. savePrefs should not try to be smart ... this patch removes the heuristic that guesses
+whether a setting can be eliminated or not; it should be sufficient to only eliminate
+prefs in hashPrefs.
+
+2. This patch prevents hashPrefs from eliminating the user pref in case we are in
+*startup* ... unfortunately no such state info exists, which lets us guess that
+we are in startup for the previously not dealt case: !set_default &&
+!pref_ValueChanged(pref->defaultPref, value, type) && !PREF_HAS_USER_VALUE(pref).
+
+If is the case we explicitly remember that this setting is a user-pref ...
+even though it might be temporarily equal to the default pref.
+
+---
+ modules/libpref/src/prefapi.cpp | 20 ++++++++++++++------
+ 1 file changed, 14 insertions(+), 6 deletions(-)
+
+Index: mozilla/modules/libpref/src/prefapi.cpp
+===================================================================
+--- mozilla.orig/modules/libpref/src/prefapi.cpp
++++ mozilla/modules/libpref/src/prefapi.cpp
+@@ -324,23 +324,20 @@
+ if (!pref)
+ return PL_DHASH_NEXT;
+
+ nsCAutoString prefValue;
+
+ // where we're getting our pref from
+ PrefValue* sourcePref;
+
+- if (PREF_HAS_USER_VALUE(pref) &&
+- pref_ValueChanged(pref->defaultPref,
+- pref->userPref,
+- (PrefType) PREF_TYPE(pref)))
+- sourcePref = &pref->userPref;
+- else if (PREF_IS_LOCKED(pref))
++ if (PREF_IS_LOCKED(pref))
+ sourcePref = &pref->defaultPref;
++ else if (PREF_HAS_USER_VALUE(pref))
++ sourcePref = &pref->userPref;
+ else
+ // do not save default prefs that haven't changed
+ return PL_DHASH_NEXT;
+
+ // strings are in quotes!
+ if (pref->flags & PREF_STRING) {
+ prefValue = '\"';
+ str_escape(sourcePref->stringVal, prefValue);
+@@ -742,16 +739,27 @@
+ Otherwise, set the user value only if it has changed */
+ if ( !pref_ValueChanged(pref->defaultPref, value, type) )
+ {
+ if (PREF_HAS_USER_VALUE(pref))
+ {
+ pref->flags &= ~PREF_USERSET;
+ if (!PREF_IS_LOCKED(pref))
+ valueChanged = PR_TRUE;
++ } else {
++ // this is tricky: we have !set_default ...
++ // thus we are setting a user pref; however the user
++ // pref set is same as *current default*; this normally
++ // means to un-set ... however since we have
++ // !PREF_HAS_USER_VALUE(pref) this can only be during
++ // startup
++ pref_SetValue(&pref->userPref, value, type);
++ pref->flags |= PREF_USERSET;
++ if (!PREF_IS_LOCKED(pref))
++ valueChanged = PR_TRUE;
+ }
+ }
+ else if ( !PREF_HAS_USER_VALUE(pref) ||
+ pref_ValueChanged(pref->userPref, value, type) )
+ {
+ pref_SetValue(&pref->userPref, value, type);
+ pref->flags |= PREF_USERSET;
+ if (!PREF_IS_LOCKED(pref))
diff --git a/net-libs/xulrunner/files/1.9.1_beta4/136-fix_ftbfs_with_cairo_fb.patch b/net-libs/xulrunner/files/1.9.1_beta4/136-fix_ftbfs_with_cairo_fb.patch
new file mode 100644
index 0000000..a0e0c87
--- /dev/null
+++ b/net-libs/xulrunner/files/1.9.1_beta4/136-fix_ftbfs_with_cairo_fb.patch
@@ -0,0 +1,61 @@
+#
+# Ubuntu: none
+# Upstream: none
+# Description: fix FTBFS with cairo 1.8.4 that is built with directfb,
+# triggering some new code, even when directfb was not wanted/detected
+# in configure
+#
+---
+ gfx/thebes/src/gfxASurface.cpp | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+Index: mozilla/gfx/thebes/src/gfxASurface.cpp
+===================================================================
+--- mozilla.orig/gfx/thebes/src/gfxASurface.cpp
++++ mozilla/gfx/thebes/src/gfxASurface.cpp
+@@ -50,19 +50,21 @@
+ #include "gfxXlibSurface.h"
+ #endif
+
+ #ifdef CAIRO_HAS_QUARTZ_SURFACE
+ #include "gfxQuartzSurface.h"
+ #include "gfxQuartzImageSurface.h"
+ #endif
+
++#ifdef MOZ_DFB
+ #ifdef CAIRO_HAS_DIRECTFB_SURFACE
+ #include "gfxDirectFBSurface.h"
+ #endif
++#endif
+
+ #ifdef CAIRO_HAS_QPAINTER_SURFACE
+ #include "gfxQPainterSurface.h"
+ #endif
+
+ #include <stdio.h>
+ #include <limits.h>
+
+@@ -166,21 +168,23 @@
+ #ifdef CAIRO_HAS_QUARTZ_SURFACE
+ else if (stype == CAIRO_SURFACE_TYPE_QUARTZ) {
+ result = new gfxQuartzSurface(csurf);
+ }
+ else if (stype == CAIRO_SURFACE_TYPE_QUARTZ_IMAGE) {
+ result = new gfxQuartzImageSurface(csurf);
+ }
+ #endif
++#ifdef MOZ_DFB
+ #ifdef CAIRO_HAS_DIRECTFB_SURFACE
+ else if (stype == CAIRO_SURFACE_TYPE_DIRECTFB) {
+ result = new gfxDirectFBSurface(csurf);
+ }
+ #endif
++#endif
+ #ifdef CAIRO_HAS_QPAINTER_SURFACE
+ else if (stype == CAIRO_SURFACE_TYPE_QPAINTER) {
+ result = new gfxQPainterSurface(csurf);
+ }
+ #endif
+ else {
+ result = new gfxUnknownSurface(csurf);
+ }
diff --git a/net-libs/xulrunner/files/xulrunner-1.9.1-gcc4.4.patch b/net-libs/xulrunner/files/xulrunner-1.9.1-gcc4.4.patch
new file mode 100644
index 0000000..0ec2866
--- /dev/null
+++ b/net-libs/xulrunner/files/xulrunner-1.9.1-gcc4.4.patch
@@ -0,0 +1,36 @@
+--- ./netwerk/socket/base/nsUDPSocketProvider.h.orig 2009-01-08 16:23:30.000000000 +0800
++++ ./netwerk/socket/base/nsUDPSocketProvider.h 2009-01-08 16:23:35.000000000 +0800
+@@ -45,7 +45,6 @@
+ NS_DECL_ISUPPORTS
+ NS_DECL_NSISOCKETPROVIDER
+
+-private:
+ ~nsUDPSocketProvider();
+
+ };
+--- ./widget/src/gtk2/nsImageToPixbuf.h.orig 2009-01-08 18:09:05.000000000 +0800
++++ ./widget/src/gtk2/nsImageToPixbuf.h 2009-01-08 18:13:20.000000000 +0800
+@@ -56,10 +56,10 @@
+ PRInt32 aWidth, PRInt32 aHeight);
+ static GdkPixbuf* PatternToPixbuf(gfxPattern* aPattern,
+ PRInt32 aWidth, PRInt32 aHeight);
++ ~nsImageToPixbuf() {}
+ private:
+ static GdkPixbuf* ImgSurfaceToPixbuf(gfxImageSurface* aImgSurface,
+ PRInt32 aWidth, PRInt32 aHeight);
+- ~nsImageToPixbuf() {}
+ };
+
+
+--- ./widget/src/gtk2/nsNativeKeyBindings.h.orig 2009-01-08 18:13:33.000000000 +0800
++++ ./widget/src/gtk2/nsNativeKeyBindings.h 2009-01-08 18:13:59.000000000 +0800
+@@ -90,8 +90,8 @@
+ DoCommandCallback aCallback,
+ void *aCallbackData);
+
+-private:
+ ~nsNativeKeyBindings() NS_HIDDEN;
++private:
+
+ PRBool KeyPressInternal(const nsNativeKeyEvent& aEvent,
+ DoCommandCallback aCallback,
diff --git a/net-libs/xulrunner/files/xulrunner-mips-n32.patch b/net-libs/xulrunner/files/xulrunner-mips-n32.patch
index 82c1086..da43909 100644
--- a/net-libs/xulrunner/files/xulrunner-mips-n32.patch
+++ b/net-libs/xulrunner/files/xulrunner-mips-n32.patch
@@ -31,7 +31,7 @@ index 524174e..63586cf 100644
CPPSRCS := xptcinvoke_mips.cpp xptcstubs_mips.cpp
ASFILES := xptcinvoke_asm_mips.s xptcstubs_asm_mips.s
+endif
- ASFLAGS += -I$(PUBLIC) -x assembler-with-cpp -fPIC
+ ASFLAGS += -I$(PUBLIC) -x assembler-with-cpp
endif
endif
diff --git a/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_mips64.s b/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_mips64.s
diff --git a/net-libs/xulrunner/files/xulrunner-mips-o32.patch b/net-libs/xulrunner/files/xulrunner-mips-o32.patch
index 9352b21..a514dee 100644
--- a/net-libs/xulrunner/files/xulrunner-mips-o32.patch
+++ b/net-libs/xulrunner/files/xulrunner-mips-o32.patch
@@ -26,7 +26,7 @@ index 559fd96..524174e 100644
-ifdef GNU_CC
-ASFLAGS += $(INCLUDES) -x assembler-with-cpp -D__GNUC__
-endif
-+ASFLAGS += -I$(PUBLIC) -x assembler-with-cpp -fPIC
++ASFLAGS += -I$(PUBLIC) -x assembler-with-cpp
endif
endif
diff --git a/net-libs/xulrunner/xulrunner-1.9.1_beta4-r1.ebuild b/net-libs/xulrunner/xulrunner-1.9.1_beta4-r1.ebuild
new file mode 100644
index 0000000..6b0acfc
--- /dev/null
+++ b/net-libs/xulrunner/xulrunner-1.9.1_beta4-r1.ebuild
@@ -0,0 +1,185 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-libs/xulrunner/xulrunner-1.9.0.1.ebuild,v 1.4 2008/07/30 10:42:58 armin76 Exp $
+EAPI="2"
+WANT_AUTOCONF="2.1"
+
+inherit flag-o-matic toolchain-funcs eutils mozconfig-3 makeedit multilib java-pkg-opt-2 python autotools
+PATCH="${P}-patches-0.1"
+MY_PV="${PV/_beta/b}"
+MY_PV="${MY_PV/1.9.1/3.5}"
+MAJ_PV="${PV/_*/}"
+
+DESCRIPTION="Mozilla runtime package that can be used to bootstrap XUL+XPCOM applications"
+HOMEPAGE="http://developer.mozilla.org/en/docs/XULRunner"
+SRC_URI="http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${MY_PV}/source/firefox-${MY_PV}-source.tar.bz2"
+# mirror://gentoo/${PATCH}.tar.bz2"
+
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+SLOT="1.9"
+LICENSE="|| ( MPL-1.1 GPL-2 LGPL-2.1 )"
+IUSE="python"
+
+RDEPEND="java? ( >=virtual/jre-1.4 )
+ python? ( >=dev-lang/python-2.3 )
+ >=sys-devel/binutils-2.16.1
+ >=dev-libs/nss-3.12.3
+ >=dev-libs/nspr-4.7.4
+ media-libs/alsa-lib
+ >=dev-db/sqlite-3.6.7
+ >=app-text/hunspell-1.2
+ >=media-libs/lcms-1.17
+ x11-libs/cairo[X]
+ x11-libs/pango[X]"
+
+DEPEND="java? ( >=virtual/jdk-1.4 )
+ ${RDEPEND}
+ dev-util/pkgconfig"
+
+S="${WORKDIR}/mozilla-${MAJ_PV}"
+
+# Needed by src_compile() and src_install().
+# Would do in pkg_setup but that loses the export attribute, they
+# become pure shell variables.
+export BUILD_OFFICIAL=1
+export MOZILLA_OFFICIAL=1
+
+pkg_setup(){
+ java-pkg-opt-2_pkg_setup
+}
+
+src_prepare() {
+ # Apply our patches
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ epatch "${FILESDIR}/${PV}"
+ epatch "${FILESDIR}"/${PN}-1.9.1-gcc4.4.patch
+ if use mips; then
+ epatch "${FILESDIR}"/${PN}-mips-n32.patch
+ epatch "${FILESDIR}"/${PN}-mips-bus-error.patch
+ fi
+
+ # Same as in config/autoconf.mk.in
+ INSTALLDIR="/usr/$(get_libdir)/${PN}-${MAJ_PV}"
+ SDKDIR="/usr/$(get_libdir)/${PN}-devel-${MAJ_PV}/sdk"
+ # Gentoo install dirs
+ sed -e "s/@PV@/${MAJ_PV}/" -i "${S}/config/autoconf.mk.in" \
+ || die "\${MAJ_PV} sed failed!"
+
+ eautoreconf
+
+ cd js/src
+ eautoreconf
+
+
+ # We need to re-patch this because autoreconf overwrites it
+# epatch "${FILESDIR}"/patch/000_flex-configure-LANG.patch
+}
+
+src_configure() {
+ ####################################
+ #
+ # mozconfig, CFLAGS and CXXFLAGS setup
+ #
+ ####################################
+
+ mozconfig_init
+ mozconfig_config
+
+ MEXTENSIONS="default"
+ if use python; then
+ MEXTENSIONS="${MEXTENSIONS},python/xpcom"
+ fi
+
+ # It doesn't compile on alpha without this LDFLAGS
+ use alpha && append-ldflags "-Wl,--no-relax"
+
+ mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
+ mozconfig_annotate '' --enable-application=xulrunner
+ mozconfig_annotate '' --disable-mailnews
+ mozconfig_annotate 'broken' --disable-mochitest
+ mozconfig_annotate 'broken' --disable-crashreporter
+ mozconfig_annotate '' --enable-system-hunspell
+ # mozconfig_annotate '' --enable-system-sqlite
+ mozconfig_annotate '' --enable-image-encoder=all
+ mozconfig_annotate '' --enable-canvas
+ #mozconfig_annotate '' --enable-js-binary
+ mozconfig_annotate '' --enable-embedding-tests
+ mozconfig_annotate '' --with-system-nspr
+ mozconfig_annotate '' --with-system-nss
+ mozconfig_annotate '' --enable-system-lcms
+ mozconfig_annotate '' --with-system-bz2
+ # Bug 60668: Galeon doesn't build without oji enabled, so enable it
+ # regardless of java setting.
+ mozconfig_annotate '' --enable-oji --enable-mathml
+ mozconfig_annotate 'places' --enable-storage --enable-places --enable-places_bookmarks
+ mozconfig_annotate '' --enable-safe-browsing
+ mozconfig_annotate '' --disable-installer
+
+ # Other ff-specific settings
+ mozconfig_annotate '' --enable-jsd
+ mozconfig_annotate '' --enable-xpctools
+ mozconfig_annotate '' --with-default-mozilla-five-home="${INSTALLDIR}"
+
+ #disable java
+ if ! use java ; then
+ mozconfig_annotate '-java' --disable-javaxpcom
+ fi
+
+ # Finalize and report settings
+ mozconfig_final
+
+ if [[ $(gcc-major-version) -lt 4 ]]; then
+ append-cxxflags -fno-stack-protector
+ fi
+
+
+ ####################################
+ #
+ # 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}"/toolkit/content/buildconfig.html
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+
+ rm "${D}"/usr/bin/xulrunner
+
+ dodir /usr/bin
+ dosym "${INSTALLDIR}/xulrunner" "${ROOT}/usr/bin/xulrunner-${MAJ_PV}"
+
+ # Add vendor
+ echo "pref(\"general.useragent.vendor\",\"Gentoo\");" \
+ >> "${D}/${INSTALLDIR}/defaults/pref/vendor.js"
+
+ if use java ; then
+ java-pkg_regjar "${D}/${INSTALLDIR}/javaxpcom.jar"
+ java-pkg_regjar "${D}/${SDKDIR}/lib/MozillaGlue.jar"
+ java-pkg_regjar "${D}/${SDKDIR}/lib/MozillaInterfaces.jar"
+ fi
+}
+
+pkg_postinst() {
+ if use python; then
+ python_need_rebuild
+ python_mod_optimize "${INSTALLDIR}/python"
+ fi
+}
+
+pkg_postrm() {
+ if use python; then
+ python_mod_cleanup "${INSTALLDIR}/python"
+ fi
+}