diff options
Diffstat (limited to 'extra/xulrunner')
-rw-r--r-- | extra/xulrunner/PKGBUILD | 30 | ||||
-rw-r--r-- | extra/xulrunner/mips.patch | 114 | ||||
-rw-r--r-- | extra/xulrunner/xulrunner-omnijar.patch | 33 |
3 files changed, 144 insertions, 33 deletions
diff --git a/extra/xulrunner/PKGBUILD b/extra/xulrunner/PKGBUILD index 0656c37d7..e4f0c9fb0 100644 --- a/extra/xulrunner/PKGBUILD +++ b/extra/xulrunner/PKGBUILD @@ -6,26 +6,22 @@ pkgver=2.0.1 _ffoxver=4.0.1 pkgrel=1 pkgdesc="Mozilla Runtime Environment" -arch=('i686' 'x86_64') +arch=('i686' 'x86_64' 'mips64el') license=('MPL' 'GPL' 'LGPL') depends=('gtk2' 'gcc-libs' 'libidl2' 'mozilla-common' 'nss' 'libxt' 'libxrender' 'hunspell' 'startup-notification' 'mime-types' 'dbus-glib' 'alsa-lib' 'libevent' 'sqlite3>=3.7.4' 'libnotify') makedepends=('zip' 'pkg-config' 'diffutils' 'python2' 'wireless_tools' 'yasm' 'mesa') url="http://wiki.mozilla.org/XUL:Xul_Runner" -source=(http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${_ffoxver}/source/firefox-${_ffoxver}.source.tar.bz2 +source=(http://ftp.gnu.org/gnu/gnuzilla/${_ffoxver}/icecat-${_ffoxver}.tar.xz mozconfig mozilla-pkgconfig.patch xulrunner-version.patch xulrunner-omnijar.patch - port_gnomevfs_to_gio.patch) + port_gnomevfs_to_gio.patch + mips.patch) options=('!emptydirs') -md5sums=('9abda7d23151e97913c8555a64c13f34' - '2358a2ddd35bcdd62ff42442dfe548d9' - '639ea80e823543dd415b90c0ee804186' - 'a0236f6c3e55f60b7888d8cf137ff209' - '0bf82bc6677e3ce57fd20a147fe8d7b1' - '42f83468b296452fb754a81a4317ca64') + build() { - cd "${srcdir}/mozilla-2.0" + cd "${srcdir}/icecat-${_ffoxver}/" cp "${srcdir}/mozconfig" .mozconfig #fix libdir/sdkdir - fedora @@ -40,6 +36,11 @@ build() { #https://bugzilla.mozilla.org/show_bug.cgi?id=494163 patch -Np1 -i "${srcdir}/port_gnomevfs_to_gio.patch" + [[ "$CARCH" == "mips64el" ]] && { + echo "ac_add_options --disable-ipc" >> .mozconfig + patch -Np0 -i "${srcdir}/mips.patch" + } + unset CFLAGS unset CXXFLAGS @@ -49,7 +50,7 @@ build() { } package() { - cd "${srcdir}/mozilla-2.0" + cd "${srcdir}/icecat-${_ffoxver}/" make -j1 -f client.mk DESTDIR="${pkgdir}" install #Remove included dictionaries, add symlink to system myspell path. @@ -61,3 +62,10 @@ package() { install -d ${pkgdir}/etc/ld.so.conf.d echo "/usr/lib/xulrunner-2.0" > ${pkgdir}/etc/ld.so.conf.d/xulrunner.conf } +md5sums=('1b4d44ee5badc28fd332cba564ecde0a' + '2358a2ddd35bcdd62ff42442dfe548d9' + '639ea80e823543dd415b90c0ee804186' + 'a0236f6c3e55f60b7888d8cf137ff209' + 'f8b64cf798636a9c1e4e10c08de0b859' + '42f83468b296452fb754a81a4317ca64' + '0e970ff5600246e953f527813883e744') diff --git a/extra/xulrunner/mips.patch b/extra/xulrunner/mips.patch new file mode 100644 index 000000000..f9de910b2 --- /dev/null +++ b/extra/xulrunner/mips.patch @@ -0,0 +1,114 @@ +--- ../../tmp.ne6Bz1oy72/xulrunner/src/mozilla-2.0/js/src/assembler/jit/ExecutableAllocator.h 2011-03-18 20:33:47.000000000 -0300 ++++ js/src/assembler/jit/ExecutableAllocator.h 2011-03-30 15:45:07.537247142 -0300 +@@ -44,9 +44,7 @@ + #include <e32std.h> + #endif + +-#if WTF_CPU_MIPS && WTF_PLATFORM_LINUX + #include <sys/cachectl.h> +-#endif + + #if WTF_PLATFORM_WINCE + // From pkfuncs.h (private header file from the Platform Builder) +@@ -311,89 +309,10 @@ + #endif + + +-#if WTF_CPU_X86 || WTF_CPU_X86_64 +- static void cacheFlush(void*, size_t) +- { +- } +-#elif WTF_CPU_MIPS + static void cacheFlush(void* code, size_t size) + { +-#if WTF_COMPILER_GCC && (GCC_VERSION >= 40300) +-#if WTF_MIPS_ISA_REV(2) && (GCC_VERSION < 40403) +- int lineSize; +- asm("rdhwr %0, $1" : "=r" (lineSize)); +- // +- // Modify "start" and "end" to avoid GCC 4.3.0-4.4.2 bug in +- // mips_expand_synci_loop that may execute synci one more time. +- // "start" points to the fisrt byte of the cache line. +- // "end" points to the last byte of the line before the last cache line. +- // Because size is always a multiple of 4, this is safe to set +- // "end" to the last byte. +- // +- intptr_t start = reinterpret_cast<intptr_t>(code) & (-lineSize); +- intptr_t end = ((reinterpret_cast<intptr_t>(code) + size - 1) & (-lineSize)) - 1; +- __builtin___clear_cache(reinterpret_cast<char*>(start), reinterpret_cast<char*>(end)); +-#else +- intptr_t end = reinterpret_cast<intptr_t>(code) + size; +- __builtin___clear_cache(reinterpret_cast<char*>(code), reinterpret_cast<char*>(end)); +-#endif +-#else + _flush_cache(reinterpret_cast<char*>(code), size, BCACHE); +-#endif +- } +-#elif WTF_CPU_ARM_THUMB2 && WTF_PLATFORM_IPHONE +- static void cacheFlush(void* code, size_t size) +- { +- sys_dcache_flush(code, size); +- sys_icache_invalidate(code, size); +- } +-#elif WTF_CPU_ARM_THUMB2 && WTF_PLATFORM_LINUX +- static void cacheFlush(void* code, size_t size) +- { +- asm volatile ( +- "push {r7}\n" +- "mov r0, %0\n" +- "mov r1, %1\n" +- "movw r7, #0x2\n" +- "movt r7, #0xf\n" +- "movs r2, #0x0\n" +- "svc 0x0\n" +- "pop {r7}\n" +- : +- : "r" (code), "r" (reinterpret_cast<char*>(code) + size) +- : "r0", "r1", "r2"); +- } +-#elif WTF_PLATFORM_SYMBIAN +- static void cacheFlush(void* code, size_t size) +- { +- User::IMB_Range(code, static_cast<char*>(code) + size); +- } +-#elif WTF_CPU_ARM_TRADITIONAL && WTF_PLATFORM_LINUX && WTF_COMPILER_RVCT +- static __asm void cacheFlush(void* code, size_t size); +-#elif WTF_CPU_ARM_TRADITIONAL && (WTF_PLATFORM_LINUX || WTF_PLATFORM_ANDROID) && WTF_COMPILER_GCC +- static void cacheFlush(void* code, size_t size) +- { +- asm volatile ( +- "push {r7}\n" +- "mov r0, %0\n" +- "mov r1, %1\n" +- "mov r7, #0xf0000\n" +- "add r7, r7, #0x2\n" +- "mov r2, #0x0\n" +- "svc 0x0\n" +- "pop {r7}\n" +- : +- : "r" (code), "r" (reinterpret_cast<char*>(code) + size) +- : "r0", "r1", "r2"); +- } +-#elif WTF_PLATFORM_WINCE +- static void cacheFlush(void* code, size_t size) +- { +- CacheRangeFlush(code, size, CACHE_SYNC_ALL); + } +-#else +- #error "The cacheFlush support is missing on this platform." +-#endif + + private: + +--- js/src/Makefile.in.orig 2011-03-30 22:02:39.725318514 -0300 ++++ js/src/Makefile.in 2011-03-30 22:02:51.689347820 -0300 +@@ -914,7 +914,7 @@ + # Needed to "configure" it correctly. Unfortunately these + # flags wind up being applied to all code in js/src, not just + # the code in js/src/assembler. +-CXXFLAGS += -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1 ++CXXFLAGS += -DUSE_SYSTEM_MALLOC=1 -DENABLE_JIT=1 + + INCLUDES += -I$(srcdir)/assembler -I$(srcdir)/yarr + + diff --git a/extra/xulrunner/xulrunner-omnijar.patch b/extra/xulrunner/xulrunner-omnijar.patch index 66ec5206c..2cfab6b33 100644 --- a/extra/xulrunner/xulrunner-omnijar.patch +++ b/extra/xulrunner/xulrunner-omnijar.patch @@ -93,28 +93,6 @@ diff --git a/netwerk/protocol/res/nsResProtocolHandler.cpp b/netwerk/protocol/re # Parent 3038cccba1a071d6b418e15442d0f2d9f3dcb11d Bug 620931 part 2 - When building --with-libxul-sdk, use the right preferences directory -diff --git a/browser/locales/Makefile.in b/browser/locales/Makefile.in ---- a/browser/locales/Makefile.in -+++ b/browser/locales/Makefile.in -@@ -183,17 +183,17 @@ install:: $(addsuffix .xml,$(SEARCH_PLUG - $(SYSINSTALL) $(IFLAGS1) $^ $(DESTDIR)$(mozappdir)/searchplugins - - - libs-%: - $(NSINSTALL) -D $(DIST)/install - @$(MAKE) -C ../../toolkit/locales libs-$* BOTH_MANIFESTS=1 - @$(MAKE) -C ../../services/sync/locales AB_CD=$* XPI_NAME=locale-$* BOTH_MANIFESTS=1 - @$(MAKE) -C ../../extensions/spellcheck/locales AB_CD=$* XPI_NAME=locale-$* BOTH_MANIFESTS=1 -- @$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=defaults/pref BOTH_MANIFESTS=1 -+ @$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=$(PREF_DIR) BOTH_MANIFESTS=1 - @$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales AB_CD=$* XPI_NAME=locale-$* BOTH_MANIFESTS=1 - - - repackage-win32-installer: WIN32_INSTALLER_OUT="$(_ABS_DIST)/$(PKG_INST_PATH)$(PKG_INST_BASENAME).exe" - repackage-win32-installer: $(WIN32_INSTALLER_IN) $(SUBMAKEFILES) - @echo "Repackaging $(WIN32_INSTALLER_IN) into $(WIN32_INSTALLER_OUT)." - $(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY) export - $(MAKE) -C ../installer/windows CONFIG_DIR=l10ngen l10ngen/setup.exe l10ngen/7zSD.sfx diff --git a/toolkit/mozapps/installer/packager.mk b/toolkit/mozapps/installer/packager.mk --- a/toolkit/mozapps/installer/packager.mk +++ b/toolkit/mozapps/installer/packager.mk @@ -1735,3 +1713,14 @@ diff --git a/xulrunner/confvars.sh b/xulrunner/confvars.sh fi MOZ_EXTENSIONS_DEFAULT=" gnomevfs" MOZ_URL_CLASSIFIER=1 +--- a/browser/locales/Makefile.in.orig 2011-06-02 14:05:23.166534416 -0300 ++++ b/browser/locales/Makefile.in 2011-06-02 14:05:35.948920125 -0300 +@@ -194,7 +194,7 @@ libs-%: + @$(MAKE) -C ../../toolkit/locales libs-$* BOTH_MANIFESTS=1 + @$(MAKE) -C ../../extensions/reporter/locales libs AB_CD=$* XPI_NAME=locale-$* BOTH_MANIFESTS=1 + @$(MAKE) -C ../../extensions/spellcheck/locales AB_CD=$* XPI_NAME=locale-$* BOTH_MANIFESTS=1 +- @$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=defaults/pref BOTH_MANIFESTS=1 ++ @$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=$(PREF_DIR) BOTH_MANIFESTS=1 + ifdef MOZ_BRANDING_DIRECTORY + @$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales AB_CD=$* XPI_NAME=locale-$* BOTH_MANIFESTS=1 + endif |