aboutsummaryrefslogtreecommitdiffstats
path: root/main
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2013-04-17 09:39:36 +0200
committerNatanael Copa <ncopa@alpinelinux.org>2013-04-17 09:39:36 +0200
commit1a7dbb7e0122b85b44db53e5039327d8a3fe887a (patch)
tree3b592f93e0eb161edfb0b1ec3b1ff9da67414cff /main
parent2b77aeb2ad71d9e8693124ace48735998b39f75a (diff)
downloadaports-1a7dbb7e0122b85b44db53e5039327d8a3fe887a.tar.bz2
aports-1a7dbb7e0122b85b44db53e5039327d8a3fe887a.tar.xz
main/xulrunner: fix JS FFI to find the correct libc and stat/lstat/fstat
Fixes issues with addressbar not working in firefox-20 and probably also the firefox-19 issues: https://bugzilla.mozilla.org/show_bug.cgi?id=843564 https://bugzilla.mozilla.org/show_bug.cgi?id=843513
Diffstat (limited to 'main')
-rw-r--r--main/xulrunner/APKBUILD19
-rw-r--r--main/xulrunner/alpine-libc.patch10
-rw-r--r--main/xulrunner/stat.patch25
3 files changed, 48 insertions, 6 deletions
diff --git a/main/xulrunner/APKBUILD b/main/xulrunner/APKBUILD
index ba470e9474..ee85d1d8d7 100644
--- a/main/xulrunner/APKBUILD
+++ b/main/xulrunner/APKBUILD
@@ -3,7 +3,7 @@
pkgname=xulrunner
pkgver=20.0.1
_ffoxver=$pkgver
-pkgrel=0
+pkgrel=1
pkgdesc="runtime environment for xul-based applications"
url="http://developer.mozilla.org/en/XULRunner"
arch="all"
@@ -31,8 +31,7 @@ depends_dev="nspr-dev
sqlite-dev
libidl-dev
mesa-dev"
-makedepends="$depends_dev
-
+makedepends="$depends_dev
autoconf2.13
python
@@ -55,6 +54,8 @@ source="ftp://ftp.mozilla.org/pub/firefox/releases/$pkgver/source/firefox-$pkgve
getchar.patch
sysconf.patch
ns_min.patch
+ stat.patch
+ alpine-libc.patch
"
# help our shared-object scanner to find the libs
ldpath="/usr/lib/xulrunner-$pkgver"
@@ -123,7 +124,9 @@ d3d1e831185da3a3e9ddf56c33449c70 uclibc-malloc_usable_size.patch
6a3942d96c7ce3c63251761cc12c8349 cairo.patch
a7b33d8b75306f225e3a8d1a8a403736 getchar.patch
090ea4daeedfff2915da62a738c7e81d sysconf.patch
-73605938f0609256ce922ee44d86bb3b ns_min.patch"
+73605938f0609256ce922ee44d86bb3b ns_min.patch
+623cd16618c57f037ab4132dfe8694b0 stat.patch
+692099e5c2da4dffb56d979d5dabe545 alpine-libc.patch"
sha256sums="03fe28c82d6577e9af8659f2ee44d5f05950353732d47a0ade562855ba564cf4 firefox-20.0.1.source.tar.bz2
ccb0e3841188952b6f9a3e1766b31eec49534080e656ade029be97df6a8c9674 mozconfig
2f319883300f2aef180bfb80221151fcbb29344a5a0a086d6ad1d80005daf039 0002-Use-C99-math-isfinite.patch
@@ -132,7 +135,9 @@ ccb0e3841188952b6f9a3e1766b31eec49534080e656ade029be97df6a8c9674 mozconfig
519be436124cf9716d3df732e633f5d73c5c9da79bb48447e1d9724baf9b430f cairo.patch
f30846e4b4c86dc1f7308e5e2a76951f51e2932d70b08ed8fe3129c53bb527d3 getchar.patch
15fa203c6a253b9e0229ff5bd0d1c88a4ab4ee2aef34ae88fdf7fe06ba7962f8 sysconf.patch
-5a615e72ef529319c2ee0a90549b0c8cfbce065b2963b8495ad007e326dd6d0f ns_min.patch"
+5a615e72ef529319c2ee0a90549b0c8cfbce065b2963b8495ad007e326dd6d0f ns_min.patch
+41d55a1d807c84e624da8c258410e8689559d108a4dc56118c6c4755dee514df stat.patch
+04333975eeb771c8ffd0db5d7fb7117fb2b508b06db72e9fa9f42e9ccf3bc606 alpine-libc.patch"
sha512sums="07b280de2f48ae994e74945011da45d4737a9e17b4d4377725f6968598d992e6dd6c6929690815bf4bb554499a3e4fe17bfef652c3d762caa2e8af100a5d0359 firefox-20.0.1.source.tar.bz2
914e0dfc9a531f6fbff07a9e250e1146371cbffb5eed7fffaa2c5643f8e7759d62d314b3c2dbc5cf9031b66001bbf05892c9ae5aa2b9e77ffe704837a2938f12 mozconfig
9a6666a3b637549411ea562c9d0d6d617ed48327d0f9e4e64d27f43774c218e6c5cf5fa99d4b339a5a0f89b854a18079392eba0dafc3419adbd4cdd5d71d3f26 0002-Use-C99-math-isfinite.patch
@@ -141,4 +146,6 @@ sha512sums="07b280de2f48ae994e74945011da45d4737a9e17b4d4377725f6968598d992e6dd6c
66c6cb290153e4333ffda0407230a7801149864a69eac6adc130653e7cff28b1fbfd9f20cf0cfd4ee35ae3eb8b2dc6357a48024a8e7005218b44d58efbdcf483 cairo.patch
a4692b9a8b5239523486cf10bf0debd54e8d2da6f994775a3e46dc6da71591b7ed698ceea30cd9f4bb30ca1e9b93b3eb18b8055bba5c5f6171e019a5b5cc29f8 getchar.patch
b47db40d6b54fa3bdb650d680e1468dc16f323c3cf48e4f867373bcdfde82d2dbb85910262503285ba3bde8a5757d74a17c1ae6db31116bc8a42e05ab2bb20d6 sysconf.patch
-c54a0353163b61aceb1e8706d2d2786c22560a015c17ab9c5374ba564dda83985a491c2ae997448d0c9a7401400796f919adf932fa82ff2570101e2fb5607df5 ns_min.patch"
+c54a0353163b61aceb1e8706d2d2786c22560a015c17ab9c5374ba564dda83985a491c2ae997448d0c9a7401400796f919adf932fa82ff2570101e2fb5607df5 ns_min.patch
+e975bc5a0f77e29a2afb848cd0c164f9c0edabf0d96472d6b23e2b08fa2bbe3b51ee63c16c986e7fc9bc243c666b23c37d0b939cbf4c258b9dce5c3ee77d6f55 stat.patch
+f36b40a969bae6791be1c26aeeb235be66bb3b8fbf41322cabf0395e4050b72c189cf15ed56ba854b98c62169386e15052fef7f4c4f195a39c72b3f3a979a4bc alpine-libc.patch"
diff --git a/main/xulrunner/alpine-libc.patch b/main/xulrunner/alpine-libc.patch
new file mode 100644
index 0000000000..e29e8afb55
--- /dev/null
+++ b/main/xulrunner/alpine-libc.patch
@@ -0,0 +1,10 @@
+--- ./toolkit/components/osfile/osfile_unix_allthreads.jsm.orig 2013-04-16 19:26:16.544461383 +0000
++++ ./toolkit/components/osfile/osfile_unix_allthreads.jsm 2013-04-16 19:31:21.717350121 +0000
+@@ -40,6 +40,7 @@
+ // Open libc
+ let libc;
+ let libc_candidates = [ "libSystem.B.dylib",
++ "libc.so.0.9.32",
+ "libc.so.6",
+ "libc.so" ];
+ for (let i = 0; i < libc_candidates.length; ++i) {
diff --git a/main/xulrunner/stat.patch b/main/xulrunner/stat.patch
new file mode 100644
index 0000000000..d92588e159
--- /dev/null
+++ b/main/xulrunner/stat.patch
@@ -0,0 +1,25 @@
+--- ./dom/system/OSFileConstants.cpp.orig 2013-04-17 06:17:29.798371189 +0000
++++ ./dom/system/OSFileConstants.cpp 2013-04-17 06:30:30.032285977 +0000
+@@ -509,6 +509,11 @@
+ INT_CONSTANT(_STAT_VER),
+ #endif // defined(_STAT_VER)
+
++ // glibc's stat/lstat/fstat are macros while uclibc's are not
++#if defined(__GLIBC__) && !defined(__UCLIBC__)
++ { "OSFILE_STAT_MACROS", INT_TO_JSVAL(1) },
++#endif // defined(stat)
++
+ PROP_END
+ };
+
+--- ./toolkit/components/osfile/osfile_unix_back.jsm.orig 2013-04-16 19:24:04.196535897 +0000
++++ ./toolkit/components/osfile/osfile_unix_back.jsm 2013-04-17 06:49:08.869379007 +0000
+@@ -502,7 +502,7 @@
+ /*path*/ Types.fd,
+ /*buf*/ Types.stat.out_ptr
+ );
+- } else if (OS.Constants.libc._STAT_VER != undefined) {
++ } else if (OS.Constants.libc.OSFILE_STAT_MACROS != undefined) {
+ const ver = OS.Constants.libc._STAT_VER;
+ // Linux, all widths
+ let xstat =