summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xffxpi2
-rw-r--r--firefox-dev.spec88
-rw-r--r--firefox4-build-del.patch11
-rw-r--r--firefox4-build-sbrk.patch24
-rw-r--r--firefox4-build-throw.patch12
-rw-r--r--firefox4-build.patch12
-rw-r--r--firefox4-default.patch91
-rw-r--r--firefox4-jemalloc.patch16
-rw-r--r--mozilla-193-pkgconfig.patch73
-rw-r--r--mozilla-build-s390.patch11
-rw-r--r--mozilla-build-sbrk.patch18
-rw-r--r--mozilla-libjpeg-turbo.patch54
-rw-r--r--mozilla-malloc.patch12
13 files changed, 312 insertions, 112 deletions
diff --git a/ffxpi b/ffxpi
index fd60a30..0de2600 100755
--- a/ffxpi
+++ b/ffxpi
@@ -19,6 +19,8 @@ getxpi() {
[ -f $i.xpi ] && echo "already downloaded"
[ -f $i.xpi ] || wget -nv $URL/$i.xpi
done
+ echo -n "Number of XPI found: "
+ ls *.xpi | wc -l
fi
}
diff --git a/firefox-dev.spec b/firefox-dev.spec
index d890b04..c7130a4 100644
--- a/firefox-dev.spec
+++ b/firefox-dev.spec
@@ -25,12 +25,12 @@
%global relcan b5
%global firefox firefox
-%global mycomment Beta 5 (Build 1)
+%global mycomment Beta 5
Summary: Mozilla Firefox Web browser
Name: firefox4
Version: 4.0
-Release: 0.7.beta5.build1%{?dist}
+Release: 0.8.beta5%{?dist}
URL: http://www.mozilla.org/projects/firefox/
License: MPLv1.1 or GPLv2+ or LGPLv2+
Group: Applications/Internet
@@ -43,7 +43,7 @@ Group: Applications/Internet
%endif
Source0: %{tarball}
%if %{build_langpacks}
-Source2: firefox-langpacks-%{version}%{?relcan}-20100902.tar.bz2
+Source2: firefox-langpacks-%{version}%{?relcan}-20100908.tar.bz2
%endif
Source12: firefox-redhat-default-prefs.js
# firefox3.destop without translation to allow change name
@@ -55,25 +55,33 @@ Source100: find-external-requires
Source200: firefox-bookmarks.html
# build patches from xulrunner
-Patch0: firefox4-version.patch
+#Patch0: xulrunner-version.patch => firefox / firefox4-version.patch
+#Patch1: mozilla-build.patch
Patch1: firefox4-build.patch
Patch3: firefox4-jemalloc.patch
Patch4: mozilla-about-firefox-version.patch
-Patch7: firefox4-build-del.patch
+Patch7: xulrunner-1.9.2.1-build.patch
Patch8: mozilla-plugin.patch
-Patch9: firefox4-build-sbrk.patch
-Patch10: firefox4-build-throw.patch
+Patch9: mozilla-build-sbrk.patch
+Patch10: mozilla-build-s390.patch
+Patch11: mozilla-malloc.patch
+
+# Fedora specific patches
+Patch20: mozilla-193-pkgconfig.patch
+Patch21: mozilla-libjpeg-turbo.patch
# build patches from firefox
+Patch0: firefox4-version.patch
+#Patch1: firefox4-jemalloc.patch = xulrunner / firefox4-jemalloc.patch
+#Patch2: firefox4-build-throw.patch = xulrunner / mozilla-malloc.patch
+
Patch30: firefox-disable-checkupdates.patch
-Patch31: firefox-default.patch
+Patch31: firefox4-default.patch
# Fedora specific patches
-Patch20: mozilla-192-pkgconfig.patch
# Upstream patches
-Patch100: mozilla-ps-pdf-simplify-operators.patch
# Remi specific patches
@@ -109,7 +117,7 @@ BuildRequires: wireless-tools-devel
%endif
# BR from Xulrunner
-%if %{fedora} >= 99
+%if %{fedora} >= 15
BuildRequires: sqlite-devel >= %{sqlite_version}
BuildRequires: nspr-devel >= %{nspr_version}
BuildRequires: nss-devel >= %{nss_version}
@@ -175,31 +183,37 @@ sed -e 's/__RPM_VERSION_INTERNAL__/%{internal_version}/' %{P:%%PATCH0} \
> version.patch
%{__patch} -p1 -b --suffix .version --fuzz=0 < version.patch
-%patch1 -p1 -b .build
+# Build Patches
+%patch1 -p2 -b .build
%patch3 -p1 -b .jemalloc
%patch4 -p1 -b .about-firefox-version
-%patch7 -p1 -b .del
+%patch7 -p2 -b .del
#patch8 -p1 -b .plugin
-%patch9 -p1 -b .sbrk
-%patch10 -p1 -b .throw
+%patch9 -p2 -b .sbrk
+%ifarch s390
+%patch10 -p1 -b .s390
+%endif
+%patch11 -p2 -b .malloc
-#patch20 -p1 -b .pk
+%patch20 -p2 -b .pk
+%if %{fedora} >= 14
+%patch21 -p2 -b .jpeg-turbo
+%endif
%patch30 -p1 -b .checkupdates
-#patch31 -p2 -b .default
-
-#patch100 -p1 -b .ps-pdf-simplify-operators
+%patch31 -p2 -b .default
%{__rm} -f .mozconfig
cat <<EOF_MOZCONFIG | tee .mozconfig
. \$topsrcdir/browser/config/mozconfig
+mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir-%{name}/
# --with-system-png is disabled because Mozilla requires APNG support in libpng
#ac_add_options --with-system-png
ac_add_options --prefix="\$PREFIX"
ac_add_options --libdir="\$LIBDIR"
-%if %{fedora} >= 99
+%if %{fedora} >= 15
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
ac_add_options --enable-system-sqlite
@@ -234,7 +248,7 @@ ac_add_options --disable-tests
ac_add_options --disable-mochitest
ac_add_options --disable-installer
ac_add_options --disable-debug
-ac_add_options --enable-optimize
+ac_add_options --enable-optimize="\$MOZ_OPT_FLAGS"
ac_add_options --enable-xinerama
ac_add_options --enable-default-toolkit=cairo-gtk2
ac_add_options --disable-xprint
@@ -265,7 +279,7 @@ cd %{tarballdir}
# Mozilla builds with -Wall with exception of a few warnings which show up
# everywhere in the code; so, don't override that.
-MOZ_OPT_FLAGS=$(echo $RPM_OPT_FLAGS | %{__sed} -e 's/-Wall//' -e 's/-fexceptions/-fno-exceptions/')
+export MOZ_OPT_FLAGS=$(echo $RPM_OPT_FLAGS | %{__sed} -e 's/-Wall//' -e 's/-fexceptions/-fno-exceptions/')
export CFLAGS=$MOZ_OPT_FLAGS
export CXXFLAGS=$MOZ_OPT_FLAGS
@@ -291,7 +305,7 @@ make -f client.mk build STRIP="/bin/true" MOZ_MAKE_FLAGS="$MOZ_SMP_FLAGS"
%{__rm} -rf $RPM_BUILD_ROOT
cd %{tarballdir}
-pushd obj*gnu
+pushd objdir-%{name}
DESTDIR=$RPM_BUILD_ROOT make install
popd
@@ -386,21 +400,6 @@ for langpack in `ls firefox-langpacks/*.xpi`; do
unzip -q $langpack -d $extensiondir
find $extensiondir -type f | xargs chmod 644
- #tmpdir=`mktemp -d %{name}.XXXXXXXX`
- #langtmp=$tmpdir/%{name}/langpack-$language
- #%{__mkdir_p} $langtmp
- #jarfile=$extensiondir/chrome/$language.jar
- #unzip $jarfile -d $langtmp
-
- #sed -i -e "s|browser.startup.homepage.*$|browser.startup.homepage=%{homepage}|g;" \
- # $langtmp/locale/browser-region/region.properties
-
- #find $langtmp -type f | xargs chmod 644
- #%{__rm} -rf $jarfile
- #cd $langtmp
- #zip -r -D $jarfile locale
- #cd -
- #%{__rm} -rf $tmpdir
sed -i -e 's@^\(browser\.startup\.homepage\(\|_reset\)\)=.*$@\1=%{homepage}@g;' \
$extensiondir/chrome/$language/locale/branding/browserconfig.properties
cat $extensiondir/chrome/$language/locale/branding/browserconfig.properties
@@ -491,7 +490,7 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%dir %{mozappdir}
%doc %{mozappdir}/LICENSE
%doc %{mozappdir}/README.txt
-%{mozappdir}/*.properties
+#%{mozappdir}/*.properties
%{mozappdir}/chrome
%dir %{mozappdir}/components
%ghost %{mozappdir}/components/compreg.dat
@@ -529,9 +528,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%{mozappdir}/application.ini
#%{mozappdir}/.autoreg
%exclude %{mozappdir}/removed-files
-%exclude %{_includedir}/firefox-%{internal_version}
-%exclude %{_libdir}/firefox-devel-%{internal_version}
-%exclude %{_datadir}/idl/firefox-%{internal_version}
+%exclude %{_includedir}/firefox-sdk-%{internal_version}
+%exclude %{_libdir}/firefox-sdk-%{internal_version}
+%exclude %{_datadir}/idl/firefox-sdk-%{internal_version}
%{_datadir}/icons/hicolor/16x16/apps/%{name}.png
%{_datadir}/icons/hicolor/22x22/apps/%{name}.png
%{_datadir}/icons/hicolor/24x24/apps/%{name}.png
@@ -542,6 +541,11 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
#---------------------------------------------------------------------
%changelog
+* Wed Sep 08 2010 Remi Collet <rpms@famillecollet.com> - 4.0-0.8.beta5
+- update to 4.0b5
+- sync patches with rawhide
+- set MOZ_OBJDIR
+
* Thu Sep 02 2010 Remi Collet <rpms@famillecollet.com> - 4.0-0.7.beta5.build1
- update to 4.0b5 build1
diff --git a/firefox4-build-del.patch b/firefox4-build-del.patch
deleted file mode 100644
index 4659d48..0000000
--- a/firefox4-build-del.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- mozilla-central/layout/generic/nsFrame.h.del 2010-07-28 08:52:27.638525808 +0200
-+++ mozilla-central/layout/generic/nsFrame.h 2010-07-28 08:52:33.404150969 +0200
-@@ -151,7 +151,7 @@
- // Left undefined; nsFrame objects are never allocated from the heap.
- void* operator new(size_t sz) CPP_THROW_NEW;
-
--protected:
-+public:
- // Overridden to prevent the global delete from being called, since
- // the memory came out of an arena instead of the heap.
- //
diff --git a/firefox4-build-sbrk.patch b/firefox4-build-sbrk.patch
deleted file mode 100644
index 7f7698e..0000000
--- a/firefox4-build-sbrk.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -up mozilla-central/js/src/shell/js.cpp.sbrk mozilla-central/js/src/shell/js.cpp
---- mozilla-central/js/src/shell/js.cpp.sbrk 2010-07-21 02:52:15.000000000 +0200
-+++ mozilla-central/js/src/shell/js.cpp 2010-07-28 08:57:39.423150378 +0200
-@@ -1118,7 +1118,7 @@ GC(JSContext *cx, uintN argc, jsval *vp)
- char buf[256];
- JS_snprintf(buf, sizeof(buf), "before %lu, after %lu, break %08lx\n",
- (unsigned long)preBytes, (unsigned long)cx->runtime->gcBytes,
--#ifdef HAVE_SBRK
-+#if 0
- (unsigned long)sbrk(0)
- #else
- 0
-diff -up mozilla-central/js/src/xpconnect/shell/xpcshell.cpp.sbrk mozilla-central/js/src/xpconnect/shell/xpcshell.cpp
---- mozilla-central/js/src/xpconnect/shell/xpcshell.cpp.sbrk 2010-07-21 02:52:20.000000000 +0200
-+++ mozilla-central/js/src/xpconnect/shell/xpcshell.cpp 2010-07-28 08:55:56.761535989 +0200
-@@ -540,7 +540,7 @@ GC(JSContext *cx, JSObject *obj, uintN a
- JS_GC(cx);
- fprintf(gOutFile, "before %lu, after %lu, break %08lx\n",
- (unsigned long)preBytes, (unsigned long)rt->gcBytes,
--#if defined(XP_UNIX) && !defined(__SYMBIAN32__)
-+#if 0 //defined(XP_UNIX) && !defined(__SYMBIAN32__)
- (unsigned long)sbrk(0)
- #else
- 0
diff --git a/firefox4-build-throw.patch b/firefox4-build-throw.patch
deleted file mode 100644
index a25f7ef..0000000
--- a/firefox4-build-throw.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up mozilla-central/memory/mozalloc/mozalloc.h.throw mozilla-central/memory/mozalloc/mozalloc.h
---- mozilla-central/memory/mozalloc/mozalloc.h.throw 2010-07-28 09:25:12.596150733 +0200
-+++ mozilla-central/memory/mozalloc/mozalloc.h 2010-07-28 09:25:28.325150319 +0200
-@@ -214,7 +214,7 @@ MOZALLOC_EXPORT void* moz_valloc(size_t
- #define MOZALLOC_THROW_IF_HAS_EXCEPTIONS throw()
- #endif
-
--#ifdef MOZ_CPP_EXCEPTIONS
-+#if 1
- #define MOZALLOC_THROW_BAD_ALLOC throw(std::bad_alloc)
- #else
- #define MOZALLOC_THROW_BAD_ALLOC MOZALLOC_THROW_IF_HAS_EXCEPTIONS
diff --git a/firefox4-build.patch b/firefox4-build.patch
index 92d28a4..065ca9f 100644
--- a/firefox4-build.patch
+++ b/firefox4-build.patch
@@ -1,6 +1,6 @@
-diff -up mozilla-central/security/manager/Makefile.in.build mozilla-central/security/manager/Makefile.in
---- mozilla-central/security/manager/Makefile.in.build 2010-07-21 02:52:39.000000000 +0200
-+++ mozilla-central/security/manager/Makefile.in 2010-07-28 08:43:37.494150702 +0200
+diff -up xulrunner-1.9.3.0/mozilla-central/security/manager/Makefile.in.build xulrunner-1.9.3.0/mozilla-central/security/manager/Makefile.in
+--- xulrunner-1.9.3.0/mozilla-central/security/manager/Makefile.in.build 2010-08-06 03:09:27.000000000 +0200
++++ xulrunner-1.9.3.0/mozilla-central/security/manager/Makefile.in 2010-08-16 10:49:10.000000000 +0200
@@ -181,7 +181,6 @@ DEFAULT_GMAKE_FLAGS += NSPR_INCLUDE_DIR=
DEFAULT_GMAKE_FLAGS += NSPR_LIB_DIR=$(NSPR_LIB_DIR)
DEFAULT_GMAKE_FLAGS += MOZILLA_CLIENT=1
@@ -9,9 +9,9 @@ diff -up mozilla-central/security/manager/Makefile.in.build mozilla-central/secu
DEFAULT_GMAKE_FLAGS += NSINSTALL="$(NSINSTALL)"
ifndef MOZ_NATIVE_SQLITE
DEFAULT_GMAKE_FLAGS += SQLITE_LIB_NAME=mozsqlite3
-diff -up mozilla-central/security/manager/ssl/src/Makefile.in.build mozilla-central/security/manager/ssl/src/Makefile.in
---- mozilla-central/security/manager/ssl/src/Makefile.in.build 2010-07-21 02:52:39.000000000 +0200
-+++ mozilla-central/security/manager/ssl/src/Makefile.in 2010-07-28 08:36:19.128540997 +0200
+diff -up xulrunner-1.9.3.0/mozilla-central/security/manager/ssl/src/Makefile.in.build xulrunner-1.9.3.0/mozilla-central/security/manager/ssl/src/Makefile.in
+--- xulrunner-1.9.3.0/mozilla-central/security/manager/ssl/src/Makefile.in.build 2010-08-06 03:09:17.000000000 +0200
++++ xulrunner-1.9.3.0/mozilla-central/security/manager/ssl/src/Makefile.in 2010-08-16 10:46:22.000000000 +0200
@@ -113,8 +113,6 @@ CSRCS += md4.c
EXTRA_DEPS = $(NSS_DEP_LIBS)
diff --git a/firefox4-default.patch b/firefox4-default.patch
new file mode 100644
index 0000000..a6c61f1
--- /dev/null
+++ b/firefox4-default.patch
@@ -0,0 +1,91 @@
+diff -up firefox-4.0/mozilla-central/browser/components/preferences/advanced.xul.default firefox-4.0/mozilla-central/browser/components/preferences/advanced.xul
+--- firefox-4.0/mozilla-central/browser/components/preferences/advanced.xul.default 2010-08-06 03:08:58.000000000 +0200
++++ firefox-4.0/mozilla-central/browser/components/preferences/advanced.xul 2010-08-30 16:35:21.000000000 +0200
+@@ -183,10 +183,11 @@
+ </groupbox>
+
+ #ifdef HAVE_SHELL_SERVICE
++#ifdef MOZ_CRASHREPORTER
+ <!-- System Defaults -->
+ <groupbox id="systemDefaultsGroup" orient="vertical">
+ <caption label="&systemDefaults.label;"/>
+-
++#ifdef 0
+ <hbox id="checkDefaultBox" align="center" flex="1">
+ <checkbox id="alwaysCheckDefault" preference="browser.shell.checkDefaultBrowser"
+ label="&alwaysCheckDefault.label;" accesskey="&alwaysCheckDefault.accesskey;"
+@@ -196,6 +197,7 @@
+ oncommand="gAdvancedPane.checkNow()"
+ preference="pref.general.disable_button.default_browser"/>
+ </hbox>
++#endif
+ #ifdef MOZ_CRASHREPORTER
+ <checkbox id="submitCrashesBox" flex="1"
+ oncommand="gAdvancedPane.updateSubmitCrashes();"
+@@ -203,6 +205,7 @@
+ #endif
+ </groupbox>
+ #endif
++#endif
+ </tabpanel>
+
+ <!-- Network -->
+diff -up firefox-4.0/mozilla-central/browser/components/shell/src/nsGNOMEShellService.cpp.default firefox-4.0/mozilla-central/browser/components/shell/src/nsGNOMEShellService.cpp
+--- firefox-4.0/mozilla-central/browser/components/shell/src/nsGNOMEShellService.cpp.default 2010-08-06 03:08:59.000000000 +0200
++++ firefox-4.0/mozilla-central/browser/components/shell/src/nsGNOMEShellService.cpp 2010-08-30 16:37:41.000000000 +0200
+@@ -140,27 +140,21 @@ NS_IMPL_ISUPPORTS1(nsGNOMEShellService,
+ PRBool
+ nsGNOMEShellService::KeyMatchesAppName(const char *aKeyValue) const
+ {
++ nsCAutoString appName;
+
+- gchar *commandPath;
+ if (mUseLocaleFilenames) {
+ gchar *nativePath = g_filename_from_utf8(aKeyValue, -1, NULL, NULL, NULL);
+ if (!nativePath) {
+ NS_ERROR("Error converting path to filesystem encoding");
+ return PR_FALSE;
+ }
+-
+- commandPath = g_find_program_in_path(nativePath);
++ appName.Assign(nativePath);
+ g_free(nativePath);
+ } else {
+- commandPath = g_find_program_in_path(aKeyValue);
++ appName.Assign(aKeyValue);
+ }
+-
+- if (!commandPath)
+- return PR_FALSE;
+-
+- PRBool matches = mAppPath.Equals(commandPath);
+- g_free(commandPath);
+- return matches;
++ // Compare default browser command retrieved from gconf with MOZ_APP_NAME
++ return appName.EqualsLiteral(MOZ_APP_NAME);
+ }
+
+ NS_IMETHODIMP
+@@ -215,8 +209,8 @@ nsGNOMEShellService::SetDefaultBrowser(P
+
+ nsCOMPtr<nsIGConfService> gconf = do_GetService(NS_GCONFSERVICE_CONTRACTID);
+
+- nsCAutoString appKeyValue(mAppPath);
+- appKeyValue.Append(" \"%s\"");
++ nsCAutoString appKeyValue(MOZ_APP_NAME);
++ appKeyValue.Append(" %s");
+ unsigned int i;
+
+ for (i = 0; i < NS_ARRAY_LENGTH(appProtocols); ++i) {
+diff -up firefox-4.0/mozilla-central/browser/components/shell/src/nsGNOMEShellService.h.default firefox-4.0/mozilla-central/browser/components/shell/src/nsGNOMEShellService.h
+--- firefox-4.0/mozilla-central/browser/components/shell/src/nsGNOMEShellService.h.default 2010-08-06 03:08:59.000000000 +0200
++++ firefox-4.0/mozilla-central/browser/components/shell/src/nsGNOMEShellService.h 2010-08-30 16:35:22.000000000 +0200
+@@ -43,7 +43,7 @@
+ class nsGNOMEShellService : public nsIShellService
+ {
+ public:
+- nsGNOMEShellService() : mCheckedThisSession(PR_FALSE) { }
++ nsGNOMEShellService() : mCheckedThisSession(PR_TRUE) { }
+
+ NS_DECL_ISUPPORTS
+ NS_DECL_NSISHELLSERVICE
diff --git a/firefox4-jemalloc.patch b/firefox4-jemalloc.patch
index f11da2b..982483f 100644
--- a/firefox4-jemalloc.patch
+++ b/firefox4-jemalloc.patch
@@ -1,6 +1,6 @@
diff -up mozilla-central/memory/jemalloc/jemalloc.h.jemalloc mozilla-central/memory/jemalloc/jemalloc.h
---- mozilla-central/memory/jemalloc/jemalloc.h.jemalloc 2010-07-21 02:52:33.000000000 +0200
-+++ mozilla-central/memory/jemalloc/jemalloc.h 2010-07-28 09:10:06.569525680 +0200
+--- mozilla-central/memory/jemalloc/jemalloc.h.jemalloc 2010-08-18 15:21:10.000000000 -0400
++++ mozilla-central/memory/jemalloc/jemalloc.h 2010-09-01 16:50:38.615946834 -0400
@@ -42,12 +42,12 @@ extern const char *_malloc_options;
/* Darwin and Linux already have memory allocation functions */
@@ -11,12 +11,12 @@ diff -up mozilla-central/memory/jemalloc/jemalloc.h.jemalloc mozilla-central/mem
-void *realloc(void *ptr, size_t size);
-void free(void *ptr);
-int posix_memalign(void **memptr, size_t alignment, size_t size);
-+void *malloc(size_t size) __THROW __attribute_malloc__ __wur;
-+void *valloc(size_t size) __THROW __attribute_malloc__ __wur;
-+void *calloc(size_t num, size_t size) __THROW __attribute_malloc__ __wur;
-+void *realloc(void *ptr, size_t size) __THROW __attribute_malloc__ __wur;
-+void free(void *ptr) __THROW __attribute_malloc__ __wur;
-+int posix_memalign(void **memptr, size_t alignment, size_t size) __THROW __attribute_malloc__ __wur;
++void *malloc(size_t size) __THROW __attribute_malloc__ __wur;
++void *valloc(size_t size) __THROW __attribute_malloc__ __wur;
++void *calloc(size_t num, size_t size) __THROW __attribute_malloc__ __wur;
++void *realloc(void *ptr, size_t size) __THROW __attribute_malloc__ __wur;
++void free(void *ptr) __THROW __attribute_malloc__ __wur;
++int posix_memalign(void **memptr, size_t alignment, size_t size) __THROW __attribute_malloc__ __wur;
#endif /* MOZ_MEMORY_DARWIN, MOZ_MEMORY_LINUX */
#if defined(MOZ_MEMORY_ANDROID) || defined(WRAP_MALLOC)
diff --git a/mozilla-193-pkgconfig.patch b/mozilla-193-pkgconfig.patch
new file mode 100644
index 0000000..c17c89b
--- /dev/null
+++ b/mozilla-193-pkgconfig.patch
@@ -0,0 +1,73 @@
+diff -up xulrunner-1.9.3.0/mozilla-central/config/autoconf.mk.in.pk xulrunner-1.9.3.0/mozilla-central/config/autoconf.mk.in
+--- xulrunner-1.9.3.0/mozilla-central/config/autoconf.mk.in.pk 2010-08-06 03:09:27.000000000 +0200
++++ xulrunner-1.9.3.0/mozilla-central/config/autoconf.mk.in 2010-08-16 11:07:52.000000000 +0200
+@@ -58,14 +58,14 @@ MOZ_PKG_SPECIAL = @MOZ_PKG_SPECIAL@
+ prefix = @prefix@
+ exec_prefix = @exec_prefix@
+ bindir = @bindir@
+-includedir = @includedir@/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
++includedir = @includedir@/$(MOZ_APP_NAME)-sdk-$(MOZ_APP_VERSION)
+ libdir = @libdir@
+ datadir = @datadir@
+ mandir = @mandir@
+-idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
++idldir = $(datadir)/idl/$(MOZ_APP_NAME)-sdk-$(MOZ_APP_VERSION)
+
+ installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
+-sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION)
++sdkdir = $(libdir)/$(MOZ_APP_NAME)-sdk-$(MOZ_APP_VERSION)
+
+ DIST = $(DEPTH)/dist
+ LIBXUL_SDK = @LIBXUL_SDK@
+diff -up xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/libxul-embedding.pc.in.pk xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/libxul-embedding.pc.in
+--- xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/libxul-embedding.pc.in.pk 2010-08-06 03:09:24.000000000 +0200
++++ xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/libxul-embedding.pc.in 2010-08-16 11:12:32.000000000 +0200
+@@ -6,5 +6,6 @@ idldir=%idldir%
+ Name: libxul-embedding
+ Description: Static library for version-independent embedding of the Mozilla runtime
+ Version: %MOZILLA_VERSION%
++Requires: %NSPR_NAME% >= %NSPR_VERSION%
+ Libs: -L${sdkdir}/lib -lxpcomglue -ldl
+ Cflags: -DXPCOM_GLUE -I${includedir} %WCHAR_CFLAGS%
+diff -up xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/libxul.pc.in.pk xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/libxul.pc.in
+--- xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/libxul.pc.in.pk 2010-08-06 03:09:24.000000000 +0200
++++ xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/libxul.pc.in 2010-08-16 11:07:52.000000000 +0200
+@@ -2,6 +2,7 @@ prefix=%prefix%
+ sdkdir=%sdkdir%
+ includedir=%includedir%
+ idldir=%idldir%
++libdir=%libdir%
+
+ Name: libxul
+ Description: The Mozilla Runtime and Embedding Engine
+diff -up xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/Makefile.in.pk xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/Makefile.in
+--- xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/Makefile.in.pk 2010-08-16 11:07:52.000000000 +0200
++++ xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/Makefile.in 2010-08-16 11:07:52.000000000 +0200
+@@ -116,6 +116,7 @@ endif
+ -e "s|%includedir%|$(includedir)|" \
+ -e "s|%idldir%|$(idldir)|" \
+ -e "s|%sdkdir%|$(sdkdir)|" \
++ -e "s|%libdir%|$(installdir)|" \
+ -e "s|%MOZ_APP_NAME%|$(MOZ_APP_NAME)|" \
+ -e "s|%MOZILLA_VERSION%|$(MOZ_APP_VERSION)|" \
+ -e "s|%WCHAR_CFLAGS%|$(WCHAR_CFLAGS)|" \
+diff -up xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in.pk xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in
+--- xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in.pk 2010-08-06 03:09:24.000000000 +0200
++++ xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in 2010-08-16 11:07:52.000000000 +0200
+@@ -1,5 +1,6 @@
+ prefix=%prefix%
+ sdkdir=%sdkdir%
++libdir=%libdir%
+ includedir=%includedir%
+
+ Name: mozilla-gtkembedmoz
+diff -up xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/mozilla-gtkmozembed.pc.in.pk xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/mozilla-gtkmozembed.pc.in
+--- xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/mozilla-gtkmozembed.pc.in.pk 2010-08-06 03:09:24.000000000 +0200
++++ xulrunner-1.9.3.0/mozilla-central/xulrunner/installer/mozilla-gtkmozembed.pc.in 2010-08-16 11:07:52.000000000 +0200
+@@ -1,5 +1,6 @@
+ prefix=%prefix%
+ sdkdir=%sdkdir%
++libdir=%libdir%
+ includedir=%includedir%
+
+ Name: mozilla-gtkembedmoz
diff --git a/mozilla-build-s390.patch b/mozilla-build-s390.patch
new file mode 100644
index 0000000..92f5cbb
--- /dev/null
+++ b/mozilla-build-s390.patch
@@ -0,0 +1,11 @@
+diff -up mozilla-1.9.2/js/src/jstl.h.old mozilla-1.9.2/js/src/jstl.h
+--- mozilla-1.9.2/js/src/jstl.h.old 2010-03-10 10:01:51.000000000 +0100
++++ mozilla-1.9.2/js/src/jstl.h 2010-03-10 12:24:55.000000000 +0100
+@@ -195,7 +195,6 @@ class ReentrancyGuard
+ static JS_ALWAYS_INLINE size_t
+ RoundUpPow2(size_t x)
+ {
+- typedef tl::StaticAssert<tl::IsSameType<size_t,JSUword>::result>::result _;
+ size_t log2 = JS_CEILING_LOG2W(x);
+ JS_ASSERT(log2 < tl::BitSize<size_t>::result);
+ size_t result = size_t(1) << log2;
diff --git a/mozilla-build-sbrk.patch b/mozilla-build-sbrk.patch
index e7e8773..7e8f8c9 100644
--- a/mozilla-build-sbrk.patch
+++ b/mozilla-build-sbrk.patch
@@ -1,19 +1,19 @@
-diff -up xulrunner-1.9.2.1/mozilla-1.9.2/js/src/shell/js.cpp.sbrk xulrunner-1.9.2.1/mozilla-1.9.2/js/src/shell/js.cpp
---- xulrunner-1.9.2.1/mozilla-1.9.2/js/src/shell/js.cpp.sbrk 2010-01-06 04:35:17.000000000 +0100
-+++ xulrunner-1.9.2.1/mozilla-1.9.2/js/src/shell/js.cpp 2010-01-13 21:49:33.000000000 +0100
-@@ -1119,7 +1119,7 @@ GC(JSContext *cx, uintN argc, jsval *vp)
+diff -up xulrunner2-2.0/mozilla-central/js/src/shell/js.cpp.sbrk xulrunner2-2.0/mozilla-central/js/src/shell/js.cpp
+--- xulrunner2-2.0/mozilla-central/js/src/shell/js.cpp.sbrk 2010-07-20 20:52:15.000000000 -0400
++++ xulrunner2-2.0/mozilla-central/js/src/shell/js.cpp 2010-07-28 10:21:51.905606001 -0400
+@@ -1118,7 +1118,7 @@ GC(JSContext *cx, uintN argc, jsval *vp)
char buf[256];
JS_snprintf(buf, sizeof(buf), "before %lu, after %lu, break %08lx\n",
- (unsigned long)preBytes, (unsigned long)rt->gcBytes,
+ (unsigned long)preBytes, (unsigned long)cx->runtime->gcBytes,
-#ifdef HAVE_SBRK
+#if 0
(unsigned long)sbrk(0)
#else
0
-diff -up xulrunner-1.9.2.1/mozilla-1.9.2/js/src/xpconnect/shell/xpcshell.cpp.sbrk xulrunner-1.9.2.1/mozilla-1.9.2/js/src/xpconnect/shell/xpcshell.cpp
---- xulrunner-1.9.2.1/mozilla-1.9.2/js/src/xpconnect/shell/xpcshell.cpp.sbrk 2010-01-06 04:35:19.000000000 +0100
-+++ xulrunner-1.9.2.1/mozilla-1.9.2/js/src/xpconnect/shell/xpcshell.cpp 2010-01-13 22:32:46.000000000 +0100
-@@ -543,7 +543,7 @@ GC(JSContext *cx, JSObject *obj, uintN a
+diff -up xulrunner2-2.0/mozilla-central/js/src/xpconnect/shell/xpcshell.cpp.sbrk xulrunner2-2.0/mozilla-central/js/src/xpconnect/shell/xpcshell.cpp
+--- xulrunner2-2.0/mozilla-central/js/src/xpconnect/shell/xpcshell.cpp.sbrk 2010-07-20 20:52:20.000000000 -0400
++++ xulrunner2-2.0/mozilla-central/js/src/xpconnect/shell/xpcshell.cpp 2010-07-28 10:20:36.878606001 -0400
+@@ -540,7 +540,7 @@ GC(JSContext *cx, JSObject *obj, uintN a
JS_GC(cx);
fprintf(gOutFile, "before %lu, after %lu, break %08lx\n",
(unsigned long)preBytes, (unsigned long)rt->gcBytes,
diff --git a/mozilla-libjpeg-turbo.patch b/mozilla-libjpeg-turbo.patch
new file mode 100644
index 0000000..9abd0e9
--- /dev/null
+++ b/mozilla-libjpeg-turbo.patch
@@ -0,0 +1,54 @@
+diff -up xulrunner-1.9.3.0/mozilla-central/modules/libpr0n/decoders/jpeg/nsJPEGDecoder.cpp.jpeg-turbo xulrunner-1.9.3.0/mozilla-central/modules/libpr0n/decoders/jpeg/nsJPEGDecoder.cpp
+--- xulrunner-1.9.3.0/mozilla-central/modules/libpr0n/decoders/jpeg/nsJPEGDecoder.cpp.jpeg-turbo 2010-08-06 03:09:15.000000000 +0200
++++ xulrunner-1.9.3.0/mozilla-central/modules/libpr0n/decoders/jpeg/nsJPEGDecoder.cpp 2010-08-16 11:19:17.000000000 +0200
+@@ -58,19 +58,6 @@
+
+ extern "C" {
+ #include "iccjpeg.h"
+-
+-/* Colorspace conversion (copied from jpegint.h) */
+-struct jpeg_color_deconverter {
+- JMETHOD(void, start_pass, (j_decompress_ptr cinfo));
+- JMETHOD(void, color_convert, (j_decompress_ptr cinfo,
+- JSAMPIMAGE input_buf, JDIMENSION input_row,
+- JSAMPARRAY output_buf, int num_rows));
+-};
+-
+-METHODDEF(void)
+-ycc_rgb_convert_argb (j_decompress_ptr cinfo,
+- JSAMPIMAGE input_buf, JDIMENSION input_row,
+- JSAMPARRAY output_buf, int num_rows);
+ }
+
+ NS_IMPL_ISUPPORTS1(nsJPEGDecoder, imgIDecoder)
+@@ -443,14 +430,6 @@ nsresult nsJPEGDecoder::Write(const char
+ return NS_OK; /* I/O suspension */
+ }
+
+- /* Force to use our YCbCr to Packed RGB converter when possible */
+- if (!mTransform && (gfxPlatform::GetCMSMode() != eCMSMode_All) &&
+- mInfo.jpeg_color_space == JCS_YCbCr && mInfo.out_color_space == JCS_RGB) {
+- /* Special case for the most common case: transform from YCbCr direct into packed ARGB */
+- mInfo.out_color_components = 4; /* Packed ARGB pixels are always 4 bytes...*/
+- mInfo.cconvert->color_convert = ycc_rgb_convert_argb;
+- }
+-
+ /* If this is a progressive JPEG ... */
+ mState = mInfo.buffered_image ? JPEG_DECOMPRESS_PROGRESSIVE : JPEG_DECOMPRESS_SEQUENTIAL;
+ }
+@@ -616,15 +595,6 @@ nsJPEGDecoder::OutputScanlines(PRBool* s
+ PRUint32 *imageRow = ((PRUint32*)mImageData) +
+ (mInfo.output_scanline * mInfo.output_width);
+
+- if (mInfo.cconvert->color_convert == ycc_rgb_convert_argb) {
+- /* Special case: scanline will be directly converted into packed ARGB */
+- if (jpeg_read_scanlines(&mInfo, (JSAMPARRAY)&imageRow, 1) != 1) {
+- *suspend = PR_TRUE; /* suspend */
+- break;
+- }
+- continue; /* all done for this row! */
+- }
+-
+ JSAMPROW sampleRow = (JSAMPROW)imageRow;
+ if (mInfo.output_components == 3) {
+ /* Put the pixels at end of row to enable in-place expansion */
diff --git a/mozilla-malloc.patch b/mozilla-malloc.patch
new file mode 100644
index 0000000..ffb4e53
--- /dev/null
+++ b/mozilla-malloc.patch
@@ -0,0 +1,12 @@
+diff -up xulrunner-1.9.3.0/mozilla-central/memory/mozalloc/mozalloc.h.old xulrunner-1.9.3.0/mozilla-central/memory/mozalloc/mozalloc.h
+--- xulrunner-1.9.3.0/mozilla-central/memory/mozalloc/mozalloc.h.old 2010-08-06 03:09:14.000000000 +0200
++++ xulrunner-1.9.3.0/mozilla-central/memory/mozalloc/mozalloc.h 2010-08-17 11:15:40.000000000 +0200
+@@ -214,7 +214,7 @@ MOZALLOC_EXPORT void* moz_valloc(size_t
+ #define MOZALLOC_THROW_IF_HAS_EXCEPTIONS throw()
+ #endif
+
+-#ifdef MOZ_CPP_EXCEPTIONS
++#if 1
+ #define MOZALLOC_THROW_BAD_ALLOC throw(std::bad_alloc)
+ #else
+ #define MOZALLOC_THROW_BAD_ALLOC MOZALLOC_THROW_IF_HAS_EXCEPTIONS