diff options
-rw-r--r-- | .SRCINFO | 68 | ||||
-rw-r--r-- | PKGBUILD | 116 | ||||
-rw-r--r-- | enable-x86_64-tracemonkey.patch | 25 | ||||
-rw-r--r-- | file_descriptor_set_posix.patch | 12 | ||||
-rw-r--r-- | file_util.patch | 14 | ||||
-rw-r--r-- | file_util_linux.patch | 12 | ||||
-rw-r--r-- | fix-mozilla-launcher.patch | 23 | ||||
-rw-r--r-- | fixWformat.patch | 50 | ||||
-rw-r--r-- | message_pump_libevent.patch | 19 | ||||
-rw-r--r-- | mozconfig | 52 | ||||
-rw-r--r-- | mozilla-pkgconfig.patch | 60 | ||||
-rw-r--r-- | offsetof.patch | 11 | ||||
-rw-r--r-- | python2.7.patch | 11 | ||||
-rw-r--r-- | scopefixes.patch | 153 | ||||
-rw-r--r-- | time_posix.patch | 12 | ||||
-rw-r--r-- | xulrunner-png14.patch | 11 | ||||
-rw-r--r-- | xulrunner-png15.patch | 83 | ||||
-rw-r--r-- | xulrunner-version.patch | 13 |
18 files changed, 745 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..33455dd1ce20 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,68 @@ +pkgbase = xulrunner192 + pkgdesc = Mozilla Runtime Environment + pkgver = 1.9.2.28 + pkgrel = 4 + url = http://wiki.mozilla.org/XUL:Xul_Runner + arch = i686 + arch = x86_64 + license = MPL + license = GPL + license = LGPL + makedepends = zip + makedepends = pkg-config + makedepends = diffutils + makedepends = libgnomeui + makedepends = python2 + makedepends = wireless_tools + makedepends = autoconf2.13 + depends = gtk2 + depends = gcc-libs + depends = libidl2 + depends = mozilla-common + depends = nss + depends = libxt + depends = hunspell + depends = startup-notification + depends = mime-types + depends = dbus-glib + depends = alsa-lib + depends = libevent + depends = sqlite>=3.7.4 + depends = libnotify>=0.4 + source = ftp://mirrors.kernel.org/slackware/slackware-13.1/patches/source/mozilla-firefox/firefox-3.6.28.source.tar.bz2 + source = mozconfig + source = mozilla-pkgconfig.patch + source = fix-mozilla-launcher.patch + source = xulrunner-version.patch + source = xulrunner-png14.patch + source = xulrunner-png15.patch + source = enable-x86_64-tracemonkey.patch + source = offsetof.patch + source = python2.7.patch + source = file_util.patch + source = message_pump_libevent.patch + source = file_descriptor_set_posix.patch + source = file_util_linux.patch + source = time_posix.patch + source = scopefixes.patch + source = fixWformat.patch + md5sums = 175fea06e1af7c76992e23865e4456eb + md5sums = 3ba733b226dfaa89f193822d1e2abc35 + md5sums = d839d1c4ef736e6d89ccf91b23b965a4 + md5sums = 63eee2d1da3b43c9d604f2253f242f40 + md5sums = 371303c5bdc4fa0d955d14521b93b69d + md5sums = 3bd0566180ad2daa32743b3ce58b2095 + md5sums = 65eaf73452b1d974aa1065022d693132 + md5sums = cbd938cd1fb8210cd8a2c41833489af9 + md5sums = c39773f884c79773db10a1216722441e + md5sums = ab3dc9aecae7f08b9492fb3c00a5fd28 + md5sums = 26be7284706ff5f740deb3e83e6cf29c + md5sums = 187ec32c67744df73bb76fd5057a06a6 + md5sums = 2352dcccac6c0913d5f68c4e6236af50 + md5sums = 642a2fcc49e160385707ff903e17a25a + md5sums = b3c4fc2396635efc38d4c649ca054ed8 + md5sums = 59f00e0e6e7454e788c9e19dd9090c4e + md5sums = 7ba6f9e9421533151bb60ec1caf7a695 + +pkgname = xulrunner192 + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..678a0e20c51c --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,116 @@ +# Maintainer: Matt Parnell/ilikenwf <parwok@gmail.com> +# Thanks to loki for fixes! +# Contributor: Alexander Baldeck <alexander@archlinux.org> +# Contributor: David Roheim <david dot roheim at gmail dot com> +pkgname=xulrunner192 +pkgver=1.9.2.28 +_ffoxver=3.6.28 +pkgrel=4 +pkgdesc="Mozilla Runtime Environment" +arch=('i686' 'x86_64') +license=('MPL' 'GPL' 'LGPL') +depends=('gtk2' 'gcc-libs' 'libidl2' 'mozilla-common' 'nss' 'libxt' 'hunspell' 'startup-notification' 'mime-types' 'dbus-glib' 'alsa-lib' 'libevent' 'sqlite>=3.7.4' 'libnotify>=0.4') +makedepends=('zip' 'pkg-config' 'diffutils' 'libgnomeui' 'python2' 'wireless_tools' 'autoconf2.13') +url="http://wiki.mozilla.org/XUL:Xul_Runner" + +source=(ftp://mirrors.kernel.org/slackware/slackware-13.1/patches/source/mozilla-firefox/firefox-${_ffoxver}.source.tar.bz2 + mozconfig + mozilla-pkgconfig.patch + fix-mozilla-launcher.patch + xulrunner-version.patch + xulrunner-png14.patch + xulrunner-png15.patch + enable-x86_64-tracemonkey.patch + offsetof.patch + python2.7.patch + file_util.patch + message_pump_libevent.patch + file_descriptor_set_posix.patch + file_util_linux.patch + time_posix.patch + scopefixes.patch + fixWformat.patch + ) +md5sums=('175fea06e1af7c76992e23865e4456eb' + '3ba733b226dfaa89f193822d1e2abc35' + 'd839d1c4ef736e6d89ccf91b23b965a4' + '63eee2d1da3b43c9d604f2253f242f40' + '371303c5bdc4fa0d955d14521b93b69d' + '3bd0566180ad2daa32743b3ce58b2095' + '65eaf73452b1d974aa1065022d693132' + 'cbd938cd1fb8210cd8a2c41833489af9' + 'c39773f884c79773db10a1216722441e' + 'ab3dc9aecae7f08b9492fb3c00a5fd28' + '26be7284706ff5f740deb3e83e6cf29c' + '187ec32c67744df73bb76fd5057a06a6' + '2352dcccac6c0913d5f68c4e6236af50' + '642a2fcc49e160385707ff903e17a25a' + 'b3c4fc2396635efc38d4c649ca054ed8' + '59f00e0e6e7454e788c9e19dd9090c4e' + '7ba6f9e9421533151bb60ec1caf7a695' + ) + +prepare() { + cd "${srcdir}/mozilla-1.9.2" + cp "${srcdir}/mozconfig" .mozconfig + + patch -Np1 -i "${srcdir}/offsetof.patch" + + # Fix C++ 4.7 compile errors + patch -Np1 -i "${srcdir}/file_util.patch" + patch -Np1 -i "${srcdir}/message_pump_libevent.patch" + patch -Np1 -i "${srcdir}/file_descriptor_set_posix.patch" + patch -Np1 -i "${srcdir}/file_util_linux.patch" + patch -Np1 -i "${srcdir}/time_posix.patch" + patch -Np0 -i "${srcdir}/scopefixes.patch" + + # fix libdir/sdkdir - fedora + patch -Np1 -i "${srcdir}/mozilla-pkgconfig.patch" + + # Fix stub launcher - archlinux + patch -Np0 -i "${srcdir}/fix-mozilla-launcher.patch" + + # Force installation to the same path for every version + patch -Np1 -i "${srcdir}/xulrunner-version.patch" + + # Fix compile with libpng 1.4 + patch -Np0 -i "${srcdir}/xulrunner-png14.patch" + + # Fix compile with libpng 1.5 + patch -Np0 -i "${srcdir}/xulrunner-png15.patch" + + # Tracemonkey for x86_64 + patch -Np0 -i "${srcdir}/enable-x86_64-tracemonkey.patch" + + # python2.7 + patch -Np0 -i "${srcdir}/python2.7.patch" + + # security warns + patch -Np3 -i "${srcdir}/fixWformat.patch" + + # fix freetype headers + sed -i 's/freetype\///g' config/system-headers + sed -i 's/freetype\///g' gfx/thebes/src/gfxPangoFonts.cpp + + unset CFLAGS + unset CXXFLAGS +} + +build() +{ + cd "${srcdir}/mozilla-1.9.2" + make -j1 -f client.mk build MOZ_MAKE_FLAGS="$MAKEFLAGS" +} + +package() { + cd "${srcdir}/mozilla-1.9.2" + make -j1 DESTDIR="${pkgdir}" install + + # Remove included dictionaries, add symlink to system myspell path. + # Note: this will cause file conflicts when users have installed dictionaries in the old location + rm -rf "${pkgdir}/usr/lib/xulrunner-1.9.2/dictionaries" + ln -sf /usr/share/myspell/dicts "${pkgdir}/usr/lib/xulrunner-1.9.2/dictionaries" + + rm -f "${pkgdir}/usr/bin/xulrunner" + rm -rf "${pkgdir}/usr/lib/pkgconfig" +} diff --git a/enable-x86_64-tracemonkey.patch b/enable-x86_64-tracemonkey.patch new file mode 100644 index 000000000000..b72ad76b450e --- /dev/null +++ b/enable-x86_64-tracemonkey.patch @@ -0,0 +1,25 @@ +--- js/src/configure.in.old 2009-11-08 19:50:54.299642792 -0500 ++++ js/src/configure.in 2009-11-08 19:57:49.235621814 -0500 +@@ -2465,6 +2465,10 @@ + ENABLE_JIT=1 + NANOJIT_ARCH=i386 + ;; ++x86_64*-*) ++ ENABLE_JIT=1 ++ NANOJIT_ARCH=X64 ++ ;; + arm*-*) + ENABLE_JIT=1 + NANOJIT_ARCH=ARM +@@ -2488,7 +2492,10 @@ + i?86-*) + AC_DEFINE(AVMPLUS_IA32) + ;; +- ++x86_64*-*) ++ AC_DEFINE(AVMPLUS_AMD64) ++ AC_DEFINE(AVMPLUS_64BIT) ++ ;; + arm*-*) + AC_DEFINE(AVMPLUS_ARM) + ;; diff --git a/file_descriptor_set_posix.patch b/file_descriptor_set_posix.patch new file mode 100644 index 000000000000..735bef5512de --- /dev/null +++ b/file_descriptor_set_posix.patch @@ -0,0 +1,12 @@ +*** mozilla-1.9.2/ipc/chromium/src/chrome/common/file_descriptor_set_posix.cc 2012-03-06 16:45:29.000000000 +0200 +--- mozilla-1.9.2/ipc/chromium/src/chrome/common/file_descriptor_set_posix.cc 2012-05-03 17:47:27.863199542 +0300 +*************** +*** 2,7 **** +--- 2,8 ---- + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++ #include <unistd.h> + #include "chrome/common/file_descriptor_set_posix.h" + + #include "base/eintr_wrapper.h" diff --git a/file_util.patch b/file_util.patch new file mode 100644 index 000000000000..1e9d1842dd76 --- /dev/null +++ b/file_util.patch @@ -0,0 +1,14 @@ +*** mozilla-1.9.2/ipc/chromium/src/base/file_util.cc 2012-03-06 16:45:29.000000000 +0200 +--- mozilla-1.9.2/ipc/chromium/src/base/file_util.cc 2012-05-02 14:47:02.694747962 +0300 +*************** +*** 9,14 **** +--- 9,17 ---- + #endif + #include <stdio.h> + ++ #if defined(OS_POSIX) ++ #include <unistd.h> ++ #endif + #include <fstream> + + #include "base/file_path.h" diff --git a/file_util_linux.patch b/file_util_linux.patch new file mode 100644 index 000000000000..1b049202f32b --- /dev/null +++ b/file_util_linux.patch @@ -0,0 +1,12 @@ +*** mozilla-1.9.2/ipc/chromium/src/base/file_util_linux.cc 2012-03-06 16:45:29.000000000 +0200 +--- mozilla-1.9.2/ipc/chromium/src/base/file_util_linux.cc 2012-05-03 18:24:36.346333860 +0300 +*************** +*** 4,9 **** +--- 4,10 ---- + + #include "base/file_util.h" + ++ #include <unistd.h> + #include <fcntl.h> + + #include <string> diff --git a/fix-mozilla-launcher.patch b/fix-mozilla-launcher.patch new file mode 100644 index 000000000000..de64e4cee237 --- /dev/null +++ b/fix-mozilla-launcher.patch @@ -0,0 +1,23 @@ +--- xulrunner/stub/nsXULStub.cpp 2008-07-17 21:43:11.000000000 +0200 ++++ xulrunner/stub/nsXULStub.cpp 2008-07-17 21:47:04.000000000 +0200 +@@ -208,8 +208,10 @@ + // 3) give up + + struct stat fileStat; ++ char *testp; + +- if (!realpath(argv[0], iniPath) || stat(iniPath, &fileStat)) { ++ testp = realpath(argv[0], iniPath); ++ if (!(testp != NULL && stat(iniPath, &fileStat) == 0 && S_ISREG(fileStat.st_mode) && fileStat.st_mode & S_IXUSR) || (testp != NULL && stat(iniPath, &fileStat))) { + const char *path = getenv("PATH"); + if (!path) + return 1; +@@ -222,7 +224,7 @@ + char *token = strtok(pathdup, ":"); + while (token) { + sprintf(tmpPath, "%s/%s", token, argv[0]); +- if (realpath(tmpPath, iniPath) && stat(iniPath, &fileStat) == 0) { ++ if (realpath(tmpPath, iniPath) && stat(iniPath, &fileStat) == 0 && S_ISREG(fileStat.st_mode) && fileStat.st_mode & S_IXUSR) { + found = PR_TRUE; + break; + } diff --git a/fixWformat.patch b/fixWformat.patch new file mode 100644 index 000000000000..b7680a7f3045 --- /dev/null +++ b/fixWformat.patch @@ -0,0 +1,50 @@ +From 4f8f9f17dae461aa40d1b3519c1921648df18fd4 Mon Sep 17 00:00:00 2001 +From: darealshinji <djcj@gmx.de> +Date: Tue, 25 Nov 2014 13:03:22 +0100 +Subject: [PATCH] fix some -Wformat-security warnings for gcc + +--- + mozilla-1.9.2/mozilla/js/src/xpconnect/shell/xpcshell.cpp | 2 +- + mozilla-1.9.2/mozilla/toolkit/xre/nsSigHandlers.cpp | 2 +- + mozilla-1.9.2/mozilla/xpcom/base/nsTraceRefcntImpl.cpp | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/mozilla-1.9.2/mozilla/js/src/xpconnect/shell/xpcshell.cpp b/mozilla-1.9.2/mozilla/js/src/xpconnect/shell/xpcshell.cpp +index 99ee4f8..7783448 100644 +--- a/mozilla-1.9.2/mozilla/js/src/xpconnect/shell/xpcshell.cpp ++++ b/mozilla-1.9.2/mozilla/js/src/xpconnect/shell/xpcshell.cpp +@@ -267,7 +267,7 @@ GetLine(JSContext *cx, char *bufp, FILE *file, const char *prompt) { + #endif + { + char line[256]; +- fprintf(gOutFile, prompt); ++ fprintf(gOutFile, "%s", prompt); + fflush(gOutFile); + if (!fgets(line, sizeof line, file)) + return JS_FALSE; +diff --git a/mozilla-1.9.2/mozilla/toolkit/xre/nsSigHandlers.cpp b/mozilla-1.9.2/mozilla/toolkit/xre/nsSigHandlers.cpp +index b928d66..8e85cec 100644 +--- a/mozilla-1.9.2/mozilla/toolkit/xre/nsSigHandlers.cpp ++++ b/mozilla-1.9.2/mozilla/toolkit/xre/nsSigHandlers.cpp +@@ -136,7 +136,7 @@ static void PrintStackFrame(void *aPC, void *aClosure) + + NS_DescribeCodeAddress(aPC, &details); + NS_FormatCodeAddressDetails(aPC, &details, buf, sizeof(buf)); +- fprintf(stdout, buf); ++ fprintf(stdout, "%s", buf); + } + + } +diff --git a/mozilla-1.9.2/mozilla/xpcom/base/nsTraceRefcntImpl.cpp b/mozilla-1.9.2/mozilla/xpcom/base/nsTraceRefcntImpl.cpp +index 032bbff..608ee3f 100644 +--- a/mozilla-1.9.2/mozilla/xpcom/base/nsTraceRefcntImpl.cpp ++++ b/mozilla-1.9.2/mozilla/xpcom/base/nsTraceRefcntImpl.cpp +@@ -872,7 +872,7 @@ static void PrintStackFrame(void *aPC, void *aClosure) + + NS_DescribeCodeAddress(aPC, &details); + NS_FormatCodeAddressDetails(aPC, &details, buf, sizeof(buf)); +- fprintf(stream, buf); ++ fprintf(stream, "%s", buf); + } + + } diff --git a/message_pump_libevent.patch b/message_pump_libevent.patch new file mode 100644 index 000000000000..69a63262b13a --- /dev/null +++ b/message_pump_libevent.patch @@ -0,0 +1,19 @@ +*** mozilla-1.9.2/ipc/chromium/src/base/message_pump_libevent.cc 2012-03-06 16:45:29.000000000 +0200 +--- mozilla-1.9.2/ipc/chromium/src/base/message_pump_libevent.cc 2012-05-03 02:57:20.771136443 +0300 +*************** +*** 3,9 **** + // found in the LICENSE file. + + #include "base/message_pump_libevent.h" +! + #include <errno.h> + #include <fcntl.h> + +--- 3,9 ---- + // found in the LICENSE file. + + #include "base/message_pump_libevent.h" +! #include <unistd.h> + #include <errno.h> + #include <fcntl.h> + diff --git a/mozconfig b/mozconfig new file mode 100644 index 000000000000..fd269dca32fa --- /dev/null +++ b/mozconfig @@ -0,0 +1,52 @@ +ac_add_options --prefix=/usr +ac_add_options --libdir=/usr/lib +ac_add_options --with-system-nspr +ac_add_options --with-system-nss +ac_add_options --with-system-jpeg +ac_add_options --with-system-zlib +ac_add_options --with-system-bz2 +ac_add_options --with-system-png +ac_add_options --with-system-libevent +ac_add_options --enable-system-hunspell +ac_add_options --enable-system-sqlite +#disabled: mozilla is broken with cairo 1.10 +#ac_add_options --enable-system-cairo +ac_add_options --with-pthreads +ac_add_options --enable-strip +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-default-toolkit=cairo-gtk2 +ac_add_options --enable-pango +ac_add_options --enable-svg +ac_add_options --enable-canvas +ac_add_options --disable-javaxpcom +ac_add_options --disable-safe-browsing +ac_add_options --disable-url-classifier +ac_add_options --disable-crashreporter +ac_add_options --enable-safe-browsing +ac_add_options --enable-startup-notification +ac_add_options --enable-extensions=default +ac_add_options --enable-optimize="-O2 -fomit-frame-pointer -pipe" +ac_add_options --disable-crashreporter +ac_add_options --disable-necko-wifi +ac_add_options --enable-update-packaging +ac_add_options --disable-dbus +ac_add_options --enable-jemalloc + +ac_add_options --enable-application=xulrunner +ac_add_options --with-xulrunner-stub-name=xulrunner-stub + +export BUILD_OFFICIAL=1 +export MOZILLA_OFFICIAL=1 +mk_add_options BUILD_OFFICIAL=1 +mk_add_options MOZILLA_OFFICIAL=1 + + +# hardening flags +export CFLAGS="-gstabs+ -fstack-protector --param=ssp-buffer-size=4" +export CXXFLAGS="-gstabs+ -O2 -fomit-frame-pointer -pipe" +export CPPFLAGS="" +export LDFLAGS="-Wl,-z,now -Wl,-z,relro" diff --git a/mozilla-pkgconfig.patch b/mozilla-pkgconfig.patch new file mode 100644 index 000000000000..9331e0489786 --- /dev/null +++ b/mozilla-pkgconfig.patch @@ -0,0 +1,60 @@ +diff -Nur mozilla-1.9.2.orig/xulrunner/installer/libxul-embedding.pc.in mozilla-1.9.2/xulrunner/installer/libxul-embedding.pc.in +--- mozilla-1.9.2.orig/xulrunner/installer/libxul-embedding.pc.in 2010-01-21 05:31:27.000000000 +0200 ++++ mozilla-1.9.2/xulrunner/installer/libxul-embedding.pc.in 2010-01-21 22:27:17.000000000 +0200 +@@ -6,5 +6,6 @@ + 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 + Cflags: -DXPCOM_GLUE -I${includedir} %WCHAR_CFLAGS% +diff -Nur mozilla-1.9.2.orig/xulrunner/installer/libxul.pc.in mozilla-1.9.2/xulrunner/installer/libxul.pc.in +--- mozilla-1.9.2.orig/xulrunner/installer/libxul.pc.in 2010-01-21 05:31:27.000000000 +0200 ++++ mozilla-1.9.2/xulrunner/installer/libxul.pc.in 2010-01-21 22:27:56.000000000 +0200 +@@ -1,5 +1,6 @@ + prefix=%prefix% + sdkdir=%sdkdir% ++libdir=%libdir% + includedir=%includedir% + idldir=%idldir% + +diff -Nur mozilla-1.9.2.orig/xulrunner/installer/Makefile.in mozilla-1.9.2/xulrunner/installer/Makefile.in +--- mozilla-1.9.2.orig/xulrunner/installer/Makefile.in 2010-01-21 05:31:27.000000000 +0200 ++++ mozilla-1.9.2/xulrunner/installer/Makefile.in 2010-01-21 22:25:04.000000000 +0200 +@@ -121,6 +121,7 @@ + -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 -Nur mozilla-1.9.2.orig/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in mozilla-1.9.2/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in +--- mozilla-1.9.2.orig/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in 2010-01-21 05:31:27.000000000 +0200 ++++ mozilla-1.9.2/xulrunner/installer/mozilla-gtkmozembed-embedding.pc.in 2010-01-21 22:28:15.000000000 +0200 +@@ -1,5 +1,6 @@ + prefix=%prefix% + sdkdir=%sdkdir% ++libdir=%libdir% + includedir=%includedir% + + Name: mozilla-gtkembedmoz +diff -Nur mozilla-1.9.2.orig/xulrunner/installer/mozilla-gtkmozembed.pc.in mozilla-1.9.2/xulrunner/installer/mozilla-gtkmozembed.pc.in +--- mozilla-1.9.2.orig/xulrunner/installer/mozilla-gtkmozembed.pc.in 2010-01-21 05:31:27.000000000 +0200 ++++ mozilla-1.9.2/xulrunner/installer/mozilla-gtkmozembed.pc.in 2010-01-21 22:28:27.000000000 +0200 +@@ -1,5 +1,6 @@ + prefix=%prefix% + sdkdir=%sdkdir% ++libdir=%libdir% + includedir=%includedir% + + Name: mozilla-gtkembedmoz +diff -Nur mozilla-1.9.2.orig/xulrunner/installer/mozilla-js.pc.in mozilla-1.9.2/xulrunner/installer/mozilla-js.pc.in +--- mozilla-1.9.2.orig/xulrunner/installer/mozilla-js.pc.in 2010-01-21 05:31:27.000000000 +0200 ++++ mozilla-1.9.2/xulrunner/installer/mozilla-js.pc.in 2010-01-21 22:29:30.000000000 +0200 +@@ -7,4 +7,4 @@ + Version: %MOZILLA_VERSION% + Requires: %NSPR_NAME% >= %NSPR_VERSION% + Libs: -L${sdkdir}/lib -lmozjs +-Cflags: -I${includedir} -DXP_UNIX -DJS_THREADSAFE ++Cflags: -I${includedir} -I${includedir}/js -DXP_UNIX -DJS_THREADSAFE diff --git a/offsetof.patch b/offsetof.patch new file mode 100644 index 000000000000..be6b3002199f --- /dev/null +++ b/offsetof.patch @@ -0,0 +1,11 @@ +--- mozilla-1.9.2/gfx/ots/src/os2.cc.1 2011-10-20 14:32:27.000000000 +0400 ++++ mozilla-1.9.2/gfx/ots/src/os2.cc 2011-10-20 14:29:24.000000000 +0400 +@@ -6,6 +6,8 @@ + + #include "head.h" + ++#include <stddef.h> ++ + // OS/2 - OS/2 and Windows Metrics + // http://www.microsoft.com/opentype/otspec/os2.htm + diff --git a/python2.7.patch b/python2.7.patch new file mode 100644 index 000000000000..05a3e91a051b --- /dev/null +++ b/python2.7.patch @@ -0,0 +1,11 @@ +--- configure.in 2010-10-12 10:44:37.000000000 -0700 ++++ configure.in~ 2010-10-19 09:51:49.660019364 -0700 +@@ -811,7 +811,7 @@ + AC_MSG_RESULT([yes]) + fi + +-MOZ_PATH_PROGS(PYTHON, $PYTHON python2.5 python2.4 python) ++MOZ_PATH_PROGS(PYTHON, $PYTHON python2.7 python2.5 python2.4 python) + if test -z "$PYTHON"; then + AC_MSG_ERROR([python was not found in \$PATH]) + fi diff --git a/scopefixes.patch b/scopefixes.patch new file mode 100644 index 000000000000..49d11b7ff7f5 --- /dev/null +++ b/scopefixes.patch @@ -0,0 +1,153 @@ +--- xpcom/glue/nsTPtrArray.h.orig 2012-12-30 21:20:47.000000000 -0600 ++++ xpcom/glue/nsTPtrArray.h 2012-12-30 21:20:33.000000000 -0600 +@@ -64,7 +64,7 @@ + + // Initialize this array and pre-allocate some number of elements. + explicit nsTPtrArray(size_type capacity) { +- SetCapacity(capacity); ++ this->SetCapacity(capacity); + } + + // The array's copy-constructor performs a 'deep' copy of the given array. + + +--- xpcom/base/nsAutoRef.h.orig 2012-12-30 20:32:30.000000000 -0600 ++++ xpcom/base/nsAutoRef.h 2012-12-30 20:33:39.000000000 -0600 +@@ -323,7 +323,7 @@ + void SafeAddRef() + { + if (this->HaveResource()) +- AddRef(this->get()); ++ this->AddRef(this->get()); + } + }; + +@@ -690,7 +690,7 @@ + void SafeRelease() + { + if (this->HaveResource()) +- Release(this->get()); ++ this->Release(this->get()); + } + }; + + +--- ipc/chromium/src/base/task.h.orig 2012-12-30 20:19:40.000000000 -0600 ++++ ipc/chromium/src/base/task.h 2012-12-30 20:19:47.000000000 -0600 +@@ -296,7 +296,7 @@ + public: + RunnableMethod(T* obj, Method meth, const Params& params) + : obj_(obj), meth_(meth), params_(params) { +- RetainCallee(obj_); ++ this->RetainCallee(obj_); + } + ~RunnableMethod() { + ReleaseCallee(); + +--- xpcom/glue/nsBaseHashtable.h 2005-09-27 12:44:20.000000000 -0300 ++++ xpcom/glue/nsBaseHashtable.h 2012-07-02 07:27:03.872079682 -0300 +@@ -123,7 +123,7 @@ public: + */ + PRBool Get(KeyType aKey, UserDataType* pData) const + { +- EntryType* ent = GetEntry(aKey); ++ EntryType* ent = this->GetEntry(aKey); + + if (!ent) + return PR_FALSE; +@@ -142,7 +142,7 @@ public: + */ + PRBool Put(KeyType aKey, UserDataType aData) + { +- EntryType* ent = PutEntry(aKey); ++ EntryType* ent = this->PutEntry(aKey); + + if (!ent) + return PR_FALSE; +@@ -156,7 +156,7 @@ public: + * remove the data for the associated key + * @param aKey the key to remove from the hashtable + */ +- void Remove(KeyType aKey) { RemoveEntry(aKey); } ++ void Remove(KeyType aKey) { this->RemoveEntry(aKey); } + + /** + * function type provided by the application for enumeration. +--- xpcom/glue/nsClassHashtable.h 2005-08-11 16:42:37.000000000 -0300 ++++ xpcom/glue/nsClassHashtable.h 2012-07-02 07:27:24.649081115 -0300 +@@ -98,7 +98,7 @@ PRBool + nsClassHashtable<KeyClass,T>::Get(KeyType aKey, T** retVal) const + { + typename nsBaseHashtable<KeyClass,nsAutoPtr<T>,T*>::EntryType* ent = +- GetEntry(aKey); ++ this->GetEntry(aKey); + + if (ent) + { +@@ -126,7 +126,7 @@ nsClassHashtableMT<KeyClass,T>::Get(KeyT + PR_Lock(this->mLock); + + typename nsBaseHashtableMT<KeyClass,nsAutoPtr<T>,T*>::EntryType* ent = +- GetEntry(aKey); ++ this->GetEntry(aKey); + + if (ent) + { +--- xpcom/glue/nsInterfaceHashtable.h 2005-08-11 16:42:48.000000000 -0300 ++++ xpcom/glue/nsInterfaceHashtable.h 2012-07-02 07:26:54.023079003 -0300 +@@ -111,7 +111,7 @@ nsInterfaceHashtable<KeyClass,Interface> + (KeyType aKey, UserDataType* pInterface) const + { + typename nsBaseHashtable<KeyClass, nsCOMPtr<Interface>, Interface*>::EntryType* ent = +- GetEntry(aKey); ++ this->GetEntry(aKey); + + if (ent) + { +@@ -139,7 +139,7 @@ nsInterfaceHashtable<KeyClass,Interface> + (KeyType aKey, PRBool* aFound) const + { + typename nsBaseHashtable<KeyClass, nsCOMPtr<Interface>, Interface*>::EntryType* ent = +- GetEntry(aKey); ++ this->GetEntry(aKey); + + if (ent) + { +@@ -167,7 +167,7 @@ nsInterfaceHashtableMT<KeyClass,Interfac + PR_Lock(this->mLock); + + typename nsBaseHashtableMT<KeyClass, nsCOMPtr<Interface>, Interface*>::EntryType* ent = +- GetEntry(aKey); ++ this->GetEntry(aKey); + + if (ent) + { +--- xpcom/glue/nsRefPtrHashtable.h 2005-08-11 16:42:51.000000000 -0300 ++++ xpcom/glue/nsRefPtrHashtable.h 2012-07-02 07:27:04.145079700 -0300 +@@ -112,7 +112,7 @@ nsRefPtrHashtable<KeyClass,RefPtr>::Get + (KeyType aKey, UserDataType* pRefPtr) const + { + typename nsBaseHashtable<KeyClass, nsRefPtr<RefPtr>, RefPtr*>::EntryType* ent = +- GetEntry(aKey); ++ this->GetEntry(aKey); + + if (ent) + { +@@ -140,7 +140,7 @@ nsRefPtrHashtable<KeyClass,RefPtr>::GetW + (KeyType aKey, PRBool* aFound) const + { + typename nsBaseHashtable<KeyClass, nsRefPtr<RefPtr>, RefPtr*>::EntryType* ent = +- GetEntry(aKey); ++ this->GetEntry(aKey); + + if (ent) + { +@@ -168,7 +168,7 @@ nsRefPtrHashtableMT<KeyClass,RefPtr>::Ge + PR_Lock(this->mLock); + + typename nsBaseHashtableMT<KeyClass, nsRefPtr<RefPtr>, RefPtr*>::EntryType* ent = +- GetEntry(aKey); ++ this->GetEntry(aKey); + + if (ent) + { diff --git a/time_posix.patch b/time_posix.patch new file mode 100644 index 000000000000..9d10c70e7630 --- /dev/null +++ b/time_posix.patch @@ -0,0 +1,12 @@ +*** mozilla-1.9.2/ipc/chromium/src/base/time_posix.cc 2012-03-06 16:45:29.000000000 +0200 +--- mozilla-1.9.2/ipc/chromium/src/base/time_posix.cc 2012-05-03 18:32:05.376293760 +0300 +*************** +*** 8,13 **** +--- 8,14 ---- + #include <mach/mach_time.h> + #endif + #include <sys/time.h> ++ #include <unistd.h> + #include <time.h> + + #include <limits> diff --git a/xulrunner-png14.patch b/xulrunner-png14.patch new file mode 100644 index 000000000000..f512416ad951 --- /dev/null +++ b/xulrunner-png14.patch @@ -0,0 +1,11 @@ +--- modules/libpr0n/encoders/png/nsPNGEncoder.cpp.orig 2010-01-17 00:15:53.979744638 +0100 ++++ modules/libpr0n/encoders/png/nsPNGEncoder.cpp 2010-01-17 00:16:07.855993411 +0100 +@@ -135,7 +135,7 @@ + + // initialize + mPNG = png_create_write_struct(PNG_LIBPNG_VER_STRING, +- png_voidp_NULL, ++ NULL, + ErrorCallback, + ErrorCallback); + if (! mPNG) diff --git a/xulrunner-png15.patch b/xulrunner-png15.patch new file mode 100644 index 000000000000..cf3a7454c96b --- /dev/null +++ b/xulrunner-png15.patch @@ -0,0 +1,83 @@ +--- modules/libpr0n/decoders/png/nsPNGDecoder.cpp.orig 2011-03-03 11:42:44.000000000 +0000 ++++ modules/libpr0n/decoders/png/nsPNGDecoder.cpp 2011-04-17 19:22:15.597110133 +0100 +@@ -116,7 +116,7 @@ + nsresult rv = mImage->AppendFrame(x_offset, y_offset, width, height, format, + &mImageData, &imageDataLength); + if (NS_FAILED(rv)) +- longjmp(mPNG->jmpbuf, 5); // NS_ERROR_OUT_OF_MEMORY ++ longjmp(png_jmpbuf(mPNG), 5); // NS_ERROR_OUT_OF_MEMORY + + mFrameRect.x = x_offset; + mFrameRect.y = y_offset; +@@ -371,7 +371,7 @@ + } + + // we need to do the setjmp here otherwise bad things will happen +- if (setjmp(decoder->mPNG->jmpbuf)) { ++ if (setjmp(png_jmpbuf(decoder->mPNG))) { + png_destroy_read_struct(&decoder->mPNG, &decoder->mInfo, NULL); + + decoder->mError = PR_TRUE; +@@ -438,7 +438,8 @@ + // First try to see if iCCP chunk is present + if (png_get_valid(png_ptr, info_ptr, PNG_INFO_iCCP)) { + png_uint_32 profileLen; +- char *profileData, *profileName; ++ png_bytep profileData; ++ png_charp profileName; + int compression; + + png_get_iCCP(png_ptr, info_ptr, &profileName, &compression, +@@ -546,7 +547,7 @@ + /* limit image dimensions (bug #251381) */ + #define MOZ_PNG_MAX_DIMENSION 1000000L + if (width > MOZ_PNG_MAX_DIMENSION || height > MOZ_PNG_MAX_DIMENSION) +- longjmp(decoder->mPNG->jmpbuf, 1); ++ longjmp(png_jmpbuf(decoder->mPNG), 1); + #undef MOZ_PNG_MAX_DIMENSION + + if (color_type == PNG_COLOR_TYPE_PALETTE) +@@ -662,7 +663,7 @@ + // the image hasn't been inited yet + decoder->mImage->Init(width, height, decoder->mObserver); + } else if (containerWidth != PRInt32(width) || containerHeight != PRInt32(height)) { +- longjmp(decoder->mPNG->jmpbuf, 5); // NS_ERROR_UNEXPECTED ++ longjmp(png_jmpbuf(decoder->mPNG), 5); // NS_ERROR_UNEXPECTED + } + + if (decoder->mObserver) +@@ -688,14 +689,14 @@ + decoder->mCMSLine = + (PRUint8 *)nsMemory::Alloc(bpp[channels] * width); + if (!decoder->mCMSLine) +- longjmp(decoder->mPNG->jmpbuf, 5); // NS_ERROR_OUT_OF_MEMORY ++ longjmp(png_jmpbuf(decoder->mPNG), 5); // NS_ERROR_OUT_OF_MEMORY + } + + if (interlace_type == PNG_INTERLACE_ADAM7) { + if (height < PR_INT32_MAX / (width * channels)) + decoder->interlacebuf = (PRUint8 *)nsMemory::Alloc(channels * width * height); + if (!decoder->interlacebuf) { +- longjmp(decoder->mPNG->jmpbuf, 5); // NS_ERROR_OUT_OF_MEMORY ++ longjmp(png_jmpbuf(decoder->mPNG), 5); // NS_ERROR_OUT_OF_MEMORY + } + } + +@@ -717,7 +718,7 @@ + * successfully decoded) before bailing, but it's simpler to just bail + * out with an error message. + */ +- png_set_crc_action(png_ptr, NULL, PNG_CRC_ERROR_QUIT); ++ png_set_crc_action(png_ptr, PNG_CRC_NO_CHANGE, PNG_CRC_ERROR_QUIT); + + return; + } +@@ -915,7 +916,7 @@ + error_callback(png_structp png_ptr, png_const_charp error_msg) + { + PR_LOG(gPNGLog, PR_LOG_ERROR, ("libpng error: %s\n", error_msg)); +- longjmp(png_ptr->jmpbuf, 1); ++ longjmp(png_jmpbuf(png_ptr), 1); + } + + diff --git a/xulrunner-version.patch b/xulrunner-version.patch new file mode 100644 index 000000000000..418b7c75851b --- /dev/null +++ b/xulrunner-version.patch @@ -0,0 +1,13 @@ +diff -up mozilla/toolkit/mozapps/update/src/updater/module.ver mozilla/toolkit/mozapps/update/src/updater/module +diff -up mozilla/xulrunner/installer/Makefile.in.ver mozilla/xulrunner/installer/Makefile.in +--- mozilla/xulrunner/installer/Makefile.in.ver 2007-12-14 09:51:34.000000000 +0100 ++++ mozilla/xulrunner/installer/Makefile.in 2007-12-14 09:52:03.000000000 +0100 +@@ -44,6 +44,8 @@ VPATH = @srcdir@ + + include $(DEPTH)/config/autoconf.mk + ++MOZ_APP_VERSION="1.9.2" ++ + NO_PKG_FILES = \ + xulrunner-config \ + regchrome* \ |