aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrancesco Colista <francesco.colista@gmail.com>2011-03-19 11:30:26 +0000
committerFrancesco Colista <francesco.colista@gmail.com>2011-03-19 11:30:26 +0000
commit372b345f3b0740be075c4fa41c4bf31540132521 (patch)
tree7538c528f86a6c69e0550df9ae8e6e8790304af4
parent07bee295f1067e473190dbdd673f90642d47a97f (diff)
parent3d8a02ea6a3178f1e6c3d85f118bd4c4d43d589e (diff)
downloadaports-372b345f3b0740be075c4fa41c4bf31540132521.tar.bz2
aports-372b345f3b0740be075c4fa41c4bf31540132521.tar.xz
Merge git://dev.alpinelinux.org/aports
-rw-r--r--main/abuild/APKBUILD4
-rw-r--r--main/acf-alpine-baselayout/APKBUILD17
-rw-r--r--main/acf-alpine-baselayout/busybox-1.18-compat.patch27
-rw-r--r--main/acf-lib/APKBUILD6
-rw-r--r--main/acf-skins/APKBUILD6
-rw-r--r--main/asterisk/APKBUILD4
-rw-r--r--main/firefox/APKBUILD32
-rw-r--r--main/firefox/firefox-defaults.patch14
-rw-r--r--main/firefox/firefox-restore-fx3-tab-behaviour-as-default.patch11
-rw-r--r--main/firefox/firefox-restore-status-bar.patch37
-rw-r--r--main/firefox/firefox-version.patch10
-rw-r--r--main/firefox/mozconfig1
-rw-r--r--main/gnutls/APKBUILD4
-rw-r--r--main/hunspell/APKBUILD6
-rw-r--r--main/icu/APKBUILD6
-rw-r--r--main/ipsec-tools/10-cmpsaddr-fix.patch421
-rw-r--r--main/ipsec-tools/APKBUILD11
-rw-r--r--main/libc0.9.32/0001-ldso-limited-support-for-ORIGIN-in-rpath.patch198
-rw-r--r--main/libc0.9.32/0002-stdlib-fix-arc4random-return-type-to-u_int32_t.patch61
-rw-r--r--main/libc0.9.32/0003-ldso-support-RTLD_NOLOAD.patch234
-rw-r--r--main/libc0.9.32/APKBUILD30
-rw-r--r--main/libc0.9.32/arm-nptl-tls.patch69
-rw-r--r--main/libc0.9.32/compat-stack-guard.patch70
-rw-r--r--main/libc0.9.32/config-has-fortify.patch125
-rw-r--r--main/libc0.9.32/pthread.patch81
-rw-r--r--main/libc0.9.32/uclibcconfig.arm6
-rw-r--r--main/libc0.9.32/uclibcconfig.powerpc28
-rw-r--r--main/libc0.9.32/uclibcconfig.x866
-rw-r--r--main/libc0.9.32/uclibcconfig.x86_646
-rw-r--r--main/libdrm/APKBUILD6
-rw-r--r--main/libpri/APKBUILD6
-rw-r--r--main/libxt/APKBUILD4
-rw-r--r--main/midori/APKBUILD4
-rw-r--r--main/sqlite/APKBUILD4
-rw-r--r--main/xulrunner/APKBUILD45
-rw-r--r--main/xulrunner/enable-x86_64-tracemonkey.patch12
-rw-r--r--main/xulrunner/fix-mozilla-portability-cluelessness-libpr0n-edition.patch16
-rw-r--r--main/xulrunner/gecko-c99math.patch11
-rw-r--r--main/xulrunner/ipc-chromium-execinfo.patch25
-rw-r--r--main/xulrunner/mozconfig1
-rw-r--r--main/xulrunner/mozilla-pkgconfig.patch4
-rw-r--r--main/xulrunner/mozjs-c99math.patch24
-rw-r--r--main/xulrunner/xpcom-execinfo.patch23
-rw-r--r--main/xulrunner/xulrunner-mozalloc.patch11
-rw-r--r--main/xulrunner/xulrunner-png14.patch11
-rw-r--r--testing/irrlicht/APKBUILD77
-rw-r--r--testing/libxp/APKBUILD44
-rw-r--r--testing/printproto/APKBUILD24
-rw-r--r--testing/supertuxkart/APKBUILD43
-rw-r--r--testing/txt2man/APKBUILD42
-rw-r--r--testing/txt2man/fixbashism.patch14
-rw-r--r--testing/txt2man/makefile.patch23
52 files changed, 1063 insertions, 942 deletions
diff --git a/main/abuild/APKBUILD b/main/abuild/APKBUILD
index e6efcd2ec4..5dee5b234a 100644
--- a/main/abuild/APKBUILD
+++ b/main/abuild/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgdesc="Script to build Alpine Packages"
pkgname=abuild
-pkgver=2.7.3
+pkgver=2.7.4
pkgrel=0
url=http://git.alpinelinux.org/cgit/abuild/
source="http://git.alpinelinux.org/cgit/abuild.git/snapshot/abuild-$pkgver.tar.bz2
@@ -37,4 +37,4 @@ package() {
install -d -m 775 -g abuild "$pkgdir"/var/cache/distfiles
}
-md5sums="b1e1f1deb38311dbbe94eefaaa731872 abuild-2.7.3.tar.bz2"
+md5sums="b39a68e836b8873307cf6617f1bfeb23 abuild-2.7.4.tar.bz2"
diff --git a/main/acf-alpine-baselayout/APKBUILD b/main/acf-alpine-baselayout/APKBUILD
index 6ba1032a5e..eb02f0fddd 100644
--- a/main/acf-alpine-baselayout/APKBUILD
+++ b/main/acf-alpine-baselayout/APKBUILD
@@ -1,25 +1,18 @@
# Contributor: Ted Trask <ttrask01@yahoo.com>
# Maintainer: Ted Trask <ttrask01@yahoo.com>
pkgname=acf-alpine-baselayout
-pkgver=0.7.3
-pkgrel=5
+pkgver=0.8.1
+pkgrel=0
pkgdesc="A web-based system administration interface for alpine-baselayout"
url="http://git.alpinelinux.org/cgit/acf-alpine-baselayout"
arch="noarch"
license="GPL-2"
-depends="acf-core lua lua-json4 lua-posix procps"
-source="http://git.alpinelinux.org/cgit/$pkgname.git/snapshot/$pkgname-$pkgver.tar.bz2
- busybox-1.18-compat.patch"
-
-prepare() {
- cd "$srcdir/$pkgname-$pkgver"
- patch -p1 < "$srcdir"/busybox-1.18-compat.patch
-}
+depends="acf-core lua lua-json4 lua-posix"
+source="http://git.alpinelinux.org/cgit/$pkgname.git/snapshot/$pkgname-$pkgver.tar.bz2"
package() {
cd "$srcdir/$pkgname-$pkgver"
make DESTDIR="$pkgdir" install
}
-md5sums="b462fa1ff228f3552c2eea2d0a4fed96 acf-alpine-baselayout-0.7.3.tar.bz2
-5445216b479bdd4800cf960aef933a67 busybox-1.18-compat.patch"
+md5sums="b5db0e519b6254c3120efeec4175f0fd acf-alpine-baselayout-0.8.1.tar.bz2"
diff --git a/main/acf-alpine-baselayout/busybox-1.18-compat.patch b/main/acf-alpine-baselayout/busybox-1.18-compat.patch
deleted file mode 100644
index ddeae946bf..0000000000
--- a/main/acf-alpine-baselayout/busybox-1.18-compat.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 96aa7d8650f4de9f1d009e10d45df01d5e7a1331 Mon Sep 17 00:00:00 2001
-From: William Pitcock <nenolod@dereferenced.org>
-Date: Mon, 21 Feb 2011 10:11:48 -0600
-Subject: [PATCH] health model: work with procps and busybox 1.18
-
----
- health-model.lua | 4 ++--
- 1 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/health-model.lua b/health-model.lua
-index 2749e2a..bb70073 100644
---- a/health-model.lua
-+++ b/health-model.lua
-@@ -49,8 +49,8 @@ get_system = function (self)
- system.version = cfe({ value=indexver or fs.read_file("/etc/alpine-release") or "Unknown", label="Version" })
- system.timezone = cfe({ value=date.what_tz(), label="Time Zone" })
- system.uname = cfe({ value=querycmd("uname -a"), label="UName" })
-- system.memory = cfe({ value=querycmd("free"), label="Memory usage" })
-- system.memory.used = getpercentage(querycmd("free"), "Total:", 3, 4)
-+ system.memory = cfe({ value=querycmd("free -o -t"), label="Memory usage" })
-+ system.memory.used = getpercentage(querycmd("free -o -t"), "Total:", 3, 4)
- return cfe({ type="group", value=system })
- end
-
---
-1.7.4.1
-
diff --git a/main/acf-lib/APKBUILD b/main/acf-lib/APKBUILD
index b375f4c480..4ef0415e32 100644
--- a/main/acf-lib/APKBUILD
+++ b/main/acf-lib/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Ted Trask <ttrask01@yahoo.com>
# Maintainer: Ted Trask <ttrask01@yahoo.com>
pkgname=acf-lib
-pkgver=0.2.0
-pkgrel=2
+pkgver=0.2.1
+pkgrel=0
pkgdesc="Lua libraries for ACF"
url="http://git.alpinelinux.org/cgit/acf-lib"
arch="noarch"
@@ -14,4 +14,4 @@ package() {
cd "$srcdir/$pkgname-$pkgver"
make DESTDIR="$pkgdir" install
}
-md5sums="ed6f4d717ecada03e3bc193a0a550d9d acf-lib-0.2.0.tar.bz2"
+md5sums="c120e66d542c67c8d9a06dad310f7ccc acf-lib-0.2.1.tar.bz2"
diff --git a/main/acf-skins/APKBUILD b/main/acf-skins/APKBUILD
index 6b077682ee..af1e3d151d 100644
--- a/main/acf-skins/APKBUILD
+++ b/main/acf-skins/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Ted Trask <ttrask01@yahoo.com>
# Maintainer: Ted Trask <ttrask01@yahoo.com>
pkgname=acf-skins
-pkgver=0.3.0
-pkgrel=2
+pkgver=0.4.0
+pkgrel=0
pkgdesc="Skins for ACF"
url="http://git.alpinelinux.org/cgit/acf-skins"
arch="noarch"
@@ -14,4 +14,4 @@ package() {
cd "$srcdir/$pkgname-$pkgver"
make DESTDIR="$pkgdir" install
}
-md5sums="65e77c8f46cd25d10cbe20e22dab3b9d acf-skins-0.3.0.tar.bz2"
+md5sums="a4f82ab1b428ccd43db3c7f076e53fb4 acf-skins-0.4.0.tar.bz2"
diff --git a/main/asterisk/APKBUILD b/main/asterisk/APKBUILD
index 35e45c5415..1b62f632b5 100644
--- a/main/asterisk/APKBUILD
+++ b/main/asterisk/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Timo Teras <timo.teras@iki.fi>
# Maintainer: Timo Teras <timo.teras@iki.fi>
pkgname=asterisk
-pkgver=1.8.3
+pkgver=1.8.3.2
pkgrel=0
pkgdesc="Asterisk: A Module Open Source PBX System"
url="http://www.asterisk.org/"
@@ -156,7 +156,7 @@ sound_en() {
_move_dir var/lib/asterisk/sounds/en
}
-md5sums="79964868c124a921e71fd568fbc9290f asterisk-1.8.3.tar.gz
+md5sums="0bee03f4498a6081146a579b51130633 asterisk-1.8.3.2.tar.gz
b00c9d98ce2ad445501248a197c6e436 100-uclibc-daemon.patch
6e1129e30c4fd2c25c86c81685a485a9 101-caps-uclibc.patch
79e9634b5054bceb3b8dc246654bb243 400-bug-227.patch
diff --git a/main/firefox/APKBUILD b/main/firefox/APKBUILD
index a4381be0e3..55f9d6b994 100644
--- a/main/firefox/APKBUILD
+++ b/main/firefox/APKBUILD
@@ -1,9 +1,10 @@
# Contributor: William Pitcock <nenolod@dereferenced.org>
# Maintainer: William Pitcock <nenolod@dereferenced.org>
pkgname=firefox
-pkgver=3.6.15
-_xulver=1.9.2.15
-pkgrel=3
+pkgver=4.0_rc2
+_pkgver=4.0rc2
+_xulver=2.0_rc2
+pkgrel=0
pkgdesc="firefox web browser (unofficial branding)"
url="http://www.firefox.com"
arch="all"
@@ -34,21 +35,25 @@ makedepends="xulrunner-dev>=${_xulver}
python
zip
+ yasm
autoconf
automake
libtool"
install=""
subpackages=""
-source="http://releases.mozilla.org/pub/mozilla.org/${pkgname}/releases/${pkgver}/source/${pkgname}-${pkgver}.source.tar.bz2
+source="http://releases.mozilla.org/pub/mozilla.org/${pkgname}/releases/${pkgver}/source/${pkgname}-${_pkgver}.source.tar.bz2
mozconfig
- firefox-agent.patch
+
+ firefox-restore-fx3-tab-behaviour-as-default.patch
+ firefox-restore-status-bar.patch
firefox-defaults.patch
firefox-version.patch
+
firefox.desktop
firefox-safe.desktop"
-_xulrunner_version="${_xulver%.*}"
+_xulrunner_version="2.0"
_builddir="${srcdir}/mozilla-${_xulrunner_version}"
prepare() {
local i
@@ -77,19 +82,20 @@ build() {
package() {
cd "$_builddir"
- make -j1 DESTDIR="$pkgdir" install || return 1
+ make -j1 DESTDIR="$pkgdir" -f client.mk install || return 1
install -m755 -d ${pkgdir}/usr/share/applications
install -m755 -d ${pkgdir}/usr/share/pixmaps
- install -m644 ${srcdir}/mozilla-1.9.2/browser/branding/unofficial/default48.png ${pkgdir}/usr/share/pixmaps/firefox.png
+ install -m644 ${srcdir}/mozilla-2.0/browser/branding/unofficial/default48.png ${pkgdir}/usr/share/pixmaps/firefox.png
install -m644 ${srcdir}/firefox.desktop ${pkgdir}/usr/share/applications/firefox.desktop
install -m644 ${srcdir}/firefox-safe.desktop ${pkgdir}/usr/share/applications/firefox-safe.desktop
}
-md5sums="fcf8042948d91f1f3d9c33599b79cf35 firefox-3.6.15.source.tar.bz2
-7938f0054456f3767d2427dff137ab34 mozconfig
-f437e94acff8f810991271ef4677d859 firefox-agent.patch
-1807651225b021e043154f8bba715a19 firefox-defaults.patch
-92c11c66dd69b03f214002fededd1fc8 firefox-version.patch
+md5sums="060ad2571e781ca72971c4dcdeb79cff firefox-4.0rc2.source.tar.bz2
+d1ec45f9d953a868483094cce2b3eff5 mozconfig
+7cddbb1c76b9038ad1d85311dda81c95 firefox-restore-fx3-tab-behaviour-as-default.patch
+a153133cfe74ce269e1e80925e48544c firefox-restore-status-bar.patch
+475a0870730c88f48158a4d4ca9812d0 firefox-defaults.patch
+0e296aabf8c2b5fd5ef5b3a989bab03a firefox-version.patch
ba96924ece1d77453e462429037a2ce5 firefox.desktop
6f38a5899034b7786cb1f75ad42032b8 firefox-safe.desktop"
diff --git a/main/firefox/firefox-defaults.patch b/main/firefox/firefox-defaults.patch
index d3cdb473a4..cce60cd5de 100644
--- a/main/firefox/firefox-defaults.patch
+++ b/main/firefox/firefox-defaults.patch
@@ -1,11 +1,3 @@
-diff -Nur mozilla-1.9.2.old//browser/branding/unofficial/locales/browserconfig.properties mozilla-1.9.2/browser/branding/unofficial/locales/browserconfig.properties
---- mozilla-1.9.2.old//browser/branding/unofficial/locales/browserconfig.properties 2010-04-14 01:21:35.000000000 +0300
-+++ mozilla-1.9.2/browser/branding/unofficial/locales/browserconfig.properties 2010-04-20 23:55:32.036959438 +0300
-@@ -1,3 +1,3 @@
- # Do NOT localize or otherwise change these values
--browser.startup.homepage=http://www.mozilla.org/projects/namoroka/
-+browser.startup.homepage=http://www.google.com/firefox
-
diff -Nur mozilla-1.9.2.old//browser/branding/unofficial/pref/firefox-branding.js mozilla-1.9.2/browser/branding/unofficial/pref/firefox-branding.js
--- mozilla-1.9.2.old//browser/branding/unofficial/pref/firefox-branding.js 2010-04-14 01:21:35.000000000 +0300
+++ mozilla-1.9.2/browser/branding/unofficial/pref/firefox-branding.js 2010-04-20 23:55:01.290102941 +0300
@@ -14,15 +6,17 @@ diff -Nur mozilla-1.9.2.old//browser/branding/unofficial/pref/firefox-branding.j
-pref("startup.homepage_welcome_url","http://www.mozilla.org/projects/%APP%/%VERSION%/firstrun/");
+pref("startup.homepage_override_url","http://www.mozilla.com/%APP%/%VERSION%/whatsnew/");
+pref("startup.homepage_welcome_url","http://www.mozilla.com/%APP%/%VERSION%/firstrun/");
+ pref("browser.panorama.welcome_url", "http://www.mozilla.com/firefox/panorama/");
// The time interval between checks for a new version (in seconds)
// nightly=8 hours, official=24 hours
- pref("app.update.interval", 28800);
@@ -14,7 +14,7 @@
pref("app.update.url.details", "http://www.mozilla.org/projects/%APP%/");
- // Release notes URL
+ // Release notes and vendor URLs
-pref("app.releaseNotesURL", "http://www.mozilla.org/projects/%APP%/%VERSION%/releasenotes/");
+-pref("app.vendorURL", "http://www.mozilla.org/projects/%APP%/");
+pref("app.releaseNotesURL", "http://www.mozilla.com/%APP%/%VERSION%/releasenotes/");
++pref("app.vendorURL", "http://www.mozilla.com/%APP%/");
// Search codes belong only in builds with official branding
pref("browser.search.param.yahoo-fr", "");
diff --git a/main/firefox/firefox-restore-fx3-tab-behaviour-as-default.patch b/main/firefox/firefox-restore-fx3-tab-behaviour-as-default.patch
new file mode 100644
index 0000000000..a9102a65ba
--- /dev/null
+++ b/main/firefox/firefox-restore-fx3-tab-behaviour-as-default.patch
@@ -0,0 +1,11 @@
+--- mozilla-2.0.orig/browser/base/content/browser.xul
++++ mozilla-2.0/browser/base/content/browser.xul
+@@ -470,7 +470,7 @@
+ #else
+ iconsize="large"
+ #endif
+- tabsontop="true"
++ tabsontop="false"
+ persist="tabsontop">
+ <!-- Menu -->
+ <toolbar type="menubar" id="toolbar-menubar" class="chromeclass-menubar" customizable="true"
diff --git a/main/firefox/firefox-restore-status-bar.patch b/main/firefox/firefox-restore-status-bar.patch
new file mode 100644
index 0000000000..f492abb59d
--- /dev/null
+++ b/main/firefox/firefox-restore-status-bar.patch
@@ -0,0 +1,37 @@
+--- mozilla-2.0.orig/browser/base/content/browser.xul
++++ mozilla-2.0/browser/base/content/browser.xul
+@@ -992,12 +992,18 @@
+ contentcontextmenu="contentAreaContextMenu"
+ autocompletepopup="PopupAutoComplete"
+ onclick="return contentAreaClick(event, false);"/>
+- <statuspanel id="statusbar-display" label=""/>
+ </vbox>
+ <vbox id="browser-border-end" hidden="true" layer="true"/>
+ </hbox>
+
+ <vbox id="browser-bottombox" layer="true">
++ <statusbar id="status-bar" ordinal="1000"
++#ifdef WINCE
++ hidden="true"
++#endif
++ class="chromeclass-status">
++ <statusbarpanel id="statusbar-display" label=""/>
++ </statusbar>
+ <toolbar id="addon-bar"
+ toolbarname="&addonBarCmd.label;" accesskey="&addonBarCmd.accesskey;"
+ collapsed="true"
+@@ -1005,13 +1011,12 @@
+ context="toolbar-context-menu" toolboxid="navigator-toolbox"
+ mode="icons" iconsize="small" defaulticonsize="small"
+ lockiconsize="true"
+- defaultset="addonbar-closebutton,spring,status-bar"
++ defaultset="addonbar-closebutton,spring"
+ customizable="true"
+ key="key_toggleAddonBar">
+ <toolbarbutton id="addonbar-closebutton"
+ tooltiptext="&addonBarCloseButton.tooltip;"
+ oncommand="setToolbarVisibility(this.parentNode, false);"/>
+- <statusbar id="status-bar" ordinal="1000"/>
+ </toolbar>
+ </vbox>
+
diff --git a/main/firefox/firefox-version.patch b/main/firefox/firefox-version.patch
index a7f3740c7b..2b1aeb41d3 100644
--- a/main/firefox/firefox-version.patch
+++ b/main/firefox/firefox-version.patch
@@ -1,11 +1,11 @@
---- mozilla-1.9.1/browser/installer/Makefile.in.ver 2009-07-18 13:32:35.000000000 +0200
-+++ mozilla-1.9.1/browser/installer/Makefile.in 2009-07-18 13:33:12.000000000 +0200
+--- mozilla-2.0.orig/browser/installer/Makefile.in 2009-07-18 13:32:35.000000000 +0200
++++ mozilla-2.0/browser/installer/Makefile.in 2009-07-18 13:33:12.000000000 +0200
@@ -43,6 +43,8 @@
include $(DEPTH)/config/autoconf.mk
+MOZ_APP_VERSION="3.6"
+
- NO_PKG_FILES = \
- $(MOZ_APP_NAME)-config \
- $(MOZ_APP_NAME)-bin.elf \
+ include $(topsrcdir)/config/rules.mk
+
+ MOZ_PKG_REMOVALS = $(srcdir)/removed-files.in
diff --git a/main/firefox/mozconfig b/main/firefox/mozconfig
index e6ec2d1c27..e68be73fac 100644
--- a/main/firefox/mozconfig
+++ b/main/firefox/mozconfig
@@ -25,6 +25,7 @@ ac_add_options --disable-updater
ac_add_options --with-libxul-sdk=/usr/lib/xulrunner-devel-1.9.2
ac_add_options --enable-safe-browsing
ac_add_options --with-branding=browser/branding/unofficial
+ac_add_options --enable-chrome-format=jar
export BUILD_OFFICIAL=1
export MOZILLA_OFFICIAL=1
diff --git a/main/gnutls/APKBUILD b/main/gnutls/APKBUILD
index b3a944b4da..54a0b2b254 100644
--- a/main/gnutls/APKBUILD
+++ b/main/gnutls/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Michael Mason <ms13sp@gmail.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=gnutls
-pkgver=2.10.4
+pkgver=2.10.5
pkgrel=0
pkgdesc="A library which provides a secure connection"
url="http://www.gnu.org/software/gnutls/"
@@ -31,4 +31,4 @@ package() {
make -j1 DESTDIR="$pkgdir" install
}
-md5sums="4e1517084018a8b1fdc96daabea40528 gnutls-2.10.4.tar.bz2"
+md5sums="1b032e07ccd22f71a5df78aa73bd91f2 gnutls-2.10.5.tar.bz2"
diff --git a/main/hunspell/APKBUILD b/main/hunspell/APKBUILD
index e9dbdd7aab..0a1c2acfe3 100644
--- a/main/hunspell/APKBUILD
+++ b/main/hunspell/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=hunspell
-pkgver=1.3.1
-pkgrel=2
+pkgver=1.2.11
+pkgrel=3
pkgdesc="Spell checker and morphological analyzer library and program"
url="http://hunspell.sourceforge.net/"
arch="all"
@@ -24,4 +24,4 @@ package() {
make -j1 DESTDIR="$pkgdir" install || return 1
}
-md5sums="9ed97fce60a9a65852402248a6659492 hunspell-1.3.1.tar.gz"
+md5sums="8f57cdc4db091d69e1f682ed4d8ab282 hunspell-1.2.11.tar.gz"
diff --git a/main/icu/APKBUILD b/main/icu/APKBUILD
index efd23b7b3e..837ff25dab 100644
--- a/main/icu/APKBUILD
+++ b/main/icu/APKBUILD
@@ -1,13 +1,13 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=icu
-pkgver=4.6
+pkgver=4.6.1
# convert x.y.z to x_y_z
_x=${pkgver%%.*}
_ver=${pkgver%.*} # _ver=x.y
_y=${_ver#*.}
_z=${pkgver##*.}
-_ver=${_y}_${_z}
+_ver=${_x}_${_y}_${_z}
pkgrel=0
pkgdesc="International Components for Unicode library"
@@ -57,5 +57,5 @@ package() {
install -Dm644 "$srcdir"/icu/license.html \
"$pkgdir"/usr/share/licenses/icu/license.html
}
-md5sums="43e56b71c407be5154de681eaa646a4a icu4c-4_6-src.tgz
+md5sums="da64675d85f0c2191cef93a8cb5eea88 icu4c-4_6_1-src.tgz
e729eb08687b042e40df572932cbf9ce icu-ccache.patch"
diff --git a/main/ipsec-tools/10-cmpsaddr-fix.patch b/main/ipsec-tools/10-cmpsaddr-fix.patch
deleted file mode 100644
index af73c2e5e1..0000000000
--- a/main/ipsec-tools/10-cmpsaddr-fix.patch
+++ /dev/null
@@ -1,421 +0,0 @@
-Index: ipsec-tools-cvs-HEAD/src/racoon/grabmyaddr.c
-===================================================================
---- ipsec-tools-cvs-HEAD.orig/src/racoon/grabmyaddr.c 2011-03-03 17:54:33.000000000 +0200
-+++ ipsec-tools-cvs-HEAD/src/racoon/grabmyaddr.c 2011-03-03 18:45:24.000000000 +0200
-@@ -100,7 +100,7 @@
- return TRUE;
-
- LIST_FOREACH(cfg, &configured, chain) {
-- if (cmpsaddr(addr, (struct sockaddr *) &cfg->addr) == 0)
-+ if (cmpsaddr(addr, (struct sockaddr *) &cfg->addr) <= CMPSADDR_WILDPORT_MATCH)
- return TRUE;
- }
-
-@@ -116,7 +116,7 @@
-
- /* Already open? */
- LIST_FOREACH(my, &opened, chain) {
-- if (cmpsaddr(addr, (struct sockaddr *) &my->addr) == 0)
-+ if (cmpsaddr(addr, (struct sockaddr *) &my->addr) <= CMPSADDR_WILDPORT_MATCH)
- return TRUE;
- }
-
-@@ -156,7 +156,7 @@
-
- LIST_FOREACH(cfg, &configured, chain) {
- if (addr != NULL &&
-- cmpsaddr(addr, (struct sockaddr *) &cfg->addr) != 0)
-+ cmpsaddr(addr, (struct sockaddr *) &cfg->addr) > CMPSADDR_WILDPORT_MATCH)
- continue;
- if (!myaddr_open((struct sockaddr *) &cfg->addr, cfg->udp_encap))
- return FALSE;
-@@ -262,7 +262,7 @@
- struct myaddr *my;
-
- LIST_FOREACH(my, &opened, chain) {
-- if (cmpsaddr((struct sockaddr *) &my->addr, addr) == 0)
-+ if (cmpsaddr((struct sockaddr *) &my->addr, addr) <= CMPSADDR_WILDPORT_MATCH)
- return my->fd;
- }
-
-@@ -276,7 +276,7 @@
- struct myaddr *my;
-
- LIST_FOREACH(my, &opened, chain) {
-- if (cmpsaddr((struct sockaddr *) &my->addr, addr) == 0)
-+ if (cmpsaddr((struct sockaddr *) &my->addr, addr) <= CMPSADDR_WILDPORT_MATCH)
- return extract_port((struct sockaddr *) &my->addr);
- }
-
-Index: ipsec-tools-cvs-HEAD/src/racoon/handler.c
-===================================================================
---- ipsec-tools-cvs-HEAD.orig/src/racoon/handler.c 2011-03-03 17:54:33.000000000 +0200
-+++ ipsec-tools-cvs-HEAD/src/racoon/handler.c 2011-03-03 18:48:10.000000000 +0200
-@@ -120,11 +120,11 @@
- LIST_FOREACH(p, &ph1tree, chain) {
- if (sel != NULL) {
- if (sel->local != NULL &&
-- cmpsaddr(sel->local, p->local) != 0)
-+ cmpsaddr(sel->local, p->local) > CMPSADDR_WILDPORT_MATCH)
- continue;
-
- if (sel->remote != NULL &&
-- cmpsaddr(sel->remote, p->remote) != 0)
-+ cmpsaddr(sel->remote, p->remote) > CMPSADDR_WILDPORT_MATCH)
- continue;
- }
-
-@@ -300,8 +300,8 @@
- if (p->status < PHASE1ST_DYING)
- continue;
-
-- if (cmpsaddr(iph1->local, p->local) == 0
-- && cmpsaddr(iph1->remote, p->remote) == 0)
-+ if (cmpsaddr(iph1->local, p->local) == CMPSADDR_MATCH
-+ && cmpsaddr(iph1->remote, p->remote) == CMPSADDR_MATCH)
- migrate_ph12(p, iph1);
- }
- }
-@@ -547,11 +547,11 @@
- continue;
-
- if (sel->src != NULL &&
-- cmpsaddr(sel->src, p->src) != 0)
-+ cmpsaddr(sel->src, p->src) != CMPSADDR_MATCH)
- continue;
-
- if (sel->dst != NULL &&
-- cmpsaddr(sel->dst, p->dst) != 0)
-+ cmpsaddr(sel->dst, p->dst) != CMPSADDR_MATCH)
- continue;
- }
-
-@@ -615,8 +615,8 @@
-
- LIST_FOREACH(p, &ph2tree, chain) {
- if (spid == p->spid &&
-- cmpsaddr(src, p->src) == 0 &&
-- cmpsaddr(dst, p->dst) == 0){
-+ cmpsaddr(src, p->src) <= CMPSADDR_WILDPORT_MATCH &&
-+ cmpsaddr(dst, p->dst) <= CMPSADDR_WILDPORT_MATCH){
- /* Sanity check to detect zombie handlers
- * XXX Sould be done "somewhere" more interesting,
- * because we have lots of getph2byxxxx(), but this one
-@@ -643,8 +643,8 @@
- struct ph2handle *p;
-
- LIST_FOREACH(p, &ph2tree, chain) {
-- if (cmpsaddr(src, p->src) == 0 &&
-- cmpsaddr(dst, p->dst) == 0)
-+ if (cmpsaddr(src, p->src) <= CMPSADDR_WILDPORT_MATCH &&
-+ cmpsaddr(dst, p->dst) <= CMPSADDR_WILDPORT_MATCH)
- return p;
- }
-
-@@ -947,7 +947,7 @@
- struct contacted *p;
-
- LIST_FOREACH(p, &ctdtree, chain) {
-- if (cmpsaddr(remote, p->remote) == 0)
-+ if (cmpsaddr(remote, p->remote) <= CMPSADDR_WILDPORT_MATCH)
- return p;
- }
-
-@@ -988,7 +988,7 @@
- struct contacted *p;
-
- LIST_FOREACH(p, &ctdtree, chain) {
-- if (cmpsaddr(remote, p->remote) == 0) {
-+ if (cmpsaddr(remote, p->remote) <= CMPSADDR_WILDPORT_MATCH) {
- LIST_REMOVE(p, chain);
- racoon_free(p->remote);
- racoon_free(p);
-@@ -1042,7 +1042,7 @@
- /*
- * the packet was processed before, but the remote address mismatches.
- */
-- if (cmpsaddr(remote, r->remote) != 0)
-+ if (cmpsaddr(remote, r->remote) != CMPSADDR_MATCH)
- return 2;
-
- /*
-Index: ipsec-tools-cvs-HEAD/src/racoon/isakmp.c
-===================================================================
---- ipsec-tools-cvs-HEAD.orig/src/racoon/isakmp.c 2011-03-03 17:54:33.000000000 +0200
-+++ ipsec-tools-cvs-HEAD/src/racoon/isakmp.c 2011-03-03 18:50:22.000000000 +0200
-@@ -468,8 +468,8 @@
- /* Floating ports for NAT-T */
- if (NATT_AVAILABLE(iph1) &&
- ! (iph1->natt_flags & NAT_PORTS_CHANGED) &&
-- ((cmpsaddr(iph1->remote, remote) != 0) ||
-- (cmpsaddr(iph1->local, local) != 0)))
-+ ((cmpsaddr(iph1->remote, remote) != CMPSADDR_MATCH) ||
-+ (cmpsaddr(iph1->local, local) != CMPSADDR_MATCH)))
- {
- /* prevent memory leak */
- racoon_free(iph1->remote);
-@@ -510,7 +510,7 @@
- #endif
-
- /* must be same addresses in one stream of a phase at least. */
-- if (cmpsaddr(iph1->remote, remote) != 0) {
-+ if (cmpsaddr(iph1->remote, remote) != CMPSADDR_MATCH) {
- char *saddr_db, *saddr_act;
-
- saddr_db = racoon_strdup(saddr2str(iph1->remote));
-@@ -636,7 +636,7 @@
- "exchange received.\n");
- return -1;
- }
-- if (cmpsaddr(iph1->remote, remote) != 0) {
-+ if (cmpsaddr(iph1->remote, remote) != CMPSADDR_MATCH) {
- plog(LLV_WARNING, LOCATION, remote,
- "remote address mismatched. "
- "db=%s\n",
-@@ -3322,10 +3322,10 @@
- * Select only SAs where src == local and dst == remote (outgoing)
- * or src == remote and dst == local (incoming).
- */
-- if ((cmpsaddr(iph1->local, src) ||
-- cmpsaddr(iph1->remote, dst)) &&
-- (cmpsaddr(iph1->local, dst) ||
-- cmpsaddr(iph1->remote, src))) {
-+ if ((cmpsaddr(iph1->local, src) != CMPSADDR_MATCH ||
-+ cmpsaddr(iph1->remote, dst) != CMPSADDR_MATCH) &&
-+ (cmpsaddr(iph1->local, dst) != CMPSADDR_MATCH ||
-+ cmpsaddr(iph1->remote, src) != CMPSADDR_MATCH)) {
- msg = next;
- continue;
- }
-Index: ipsec-tools-cvs-HEAD/src/racoon/isakmp_inf.c
-===================================================================
---- ipsec-tools-cvs-HEAD.orig/src/racoon/isakmp_inf.c 2011-03-03 17:54:34.000000000 +0200
-+++ ipsec-tools-cvs-HEAD/src/racoon/isakmp_inf.c 2011-03-03 18:51:05.000000000 +0200
-@@ -1177,7 +1177,7 @@
-
- /* don't delete inbound SAs at the moment */
- /* XXX should we remove SAs with opposite direction as well? */
-- if (cmpsaddr(dst0, dst)) {
-+ if (cmpsaddr(dst0, dst) != CMPSADDR_MATCH) {
- msg = next;
- continue;
- }
-@@ -1355,10 +1355,10 @@
- * ports. Correct thing to do is delete all entries with
- * same identity. -TT
- */
-- if ((cmpsaddr(iph1->local, src) != 0 ||
-- cmpsaddr(iph1->remote, dst) != 0) &&
-- (cmpsaddr(iph1->local, dst) != 0 ||
-- cmpsaddr(iph1->remote, src) != 0))
-+ if ((cmpsaddr(iph1->local, src) != CMPSADDR_MATCH ||
-+ cmpsaddr(iph1->remote, dst) != CMPSADDR_MATCH) &&
-+ (cmpsaddr(iph1->local, dst) != CMPSADDR_MATCH ||
-+ cmpsaddr(iph1->remote, src) != CMPSADDR_MATCH))
- continue;
-
- /*
-Index: ipsec-tools-cvs-HEAD/src/racoon/isakmp_quick.c
-===================================================================
---- ipsec-tools-cvs-HEAD.orig/src/racoon/isakmp_quick.c 2011-03-03 17:54:34.000000000 +0200
-+++ ipsec-tools-cvs-HEAD/src/racoon/isakmp_quick.c 2011-03-03 18:51:48.000000000 +0200
-@@ -629,7 +629,7 @@
- #endif
-
- if (cmpsaddr((struct sockaddr *) &proposed_addr,
-- (struct sockaddr *) &got_addr) == 0) {
-+ (struct sockaddr *) &got_addr) == CMPSADDR_MATCH) {
- plog(LLV_DEBUG, LOCATION, NULL,
- "IDci matches proposal.\n");
- #ifdef ENABLE_NATT
-@@ -677,13 +677,13 @@
- #endif
-
- if (cmpsaddr((struct sockaddr *) &proposed_addr,
-- (struct sockaddr *) &got_addr) == 0) {
-+ (struct sockaddr *) &got_addr) == CMPSADDR_MATCH) {
- plog(LLV_DEBUG, LOCATION, NULL,
- "IDcr matches proposal.\n");
- #ifdef ENABLE_NATT
- } else if (iph2->natoa_dst != NULL
- && cmpsaddr(iph2->natoa_dst,
-- (struct sockaddr *) &got_addr) == 0) {
-+ (struct sockaddr *) &got_addr) == CMPSADDR_MATCH) {
- plog(LLV_DEBUG, LOCATION, NULL,
- "IDcr matches NAT-OAr.\n");
- #endif
-Index: ipsec-tools-cvs-HEAD/src/racoon/nattraversal.c
-===================================================================
---- ipsec-tools-cvs-HEAD.orig/src/racoon/nattraversal.c 2011-03-03 17:54:34.000000000 +0200
-+++ ipsec-tools-cvs-HEAD/src/racoon/nattraversal.c 2011-03-03 18:52:20.000000000 +0200
-@@ -398,8 +398,8 @@
- struct natt_ka_addrs *ka = NULL, *new_addr;
-
- TAILQ_FOREACH (ka, &ka_tree, chain) {
-- if (cmpsaddr(ka->src, src) == 0 &&
-- cmpsaddr(ka->dst, dst) == 0) {
-+ if (cmpsaddr(ka->src, src) == CMPSADDR_MATCH &&
-+ cmpsaddr(ka->dst, dst) == CMPSADDR_MATCH) {
- ka->in_use++;
- plog (LLV_INFO, LOCATION, NULL, "KA found: %s (in_use=%u)\n",
- saddr2str_fromto("%s->%s", src, dst), ka->in_use);
-@@ -462,8 +462,8 @@
- plog (LLV_DEBUG, LOCATION, NULL, "KA tree dump: %s (in_use=%u)\n",
- saddr2str_fromto("%s->%s", src, dst), ka->in_use);
-
-- if (cmpsaddr(ka->src, src) == 0 &&
-- cmpsaddr(ka->dst, dst) == 0 &&
-+ if (cmpsaddr(ka->src, src) == CMPSADDR_MATCH &&
-+ cmpsaddr(ka->dst, dst) == CMPSADDR_MATCH &&
- -- ka->in_use <= 0) {
-
- plog (LLV_DEBUG, LOCATION, NULL, "KA removing this one...\n");
-Index: ipsec-tools-cvs-HEAD/src/racoon/pfkey.c
-===================================================================
---- ipsec-tools-cvs-HEAD.orig/src/racoon/pfkey.c 2011-03-03 17:54:34.000000000 +0200
-+++ ipsec-tools-cvs-HEAD/src/racoon/pfkey.c 2011-03-03 18:52:50.000000000 +0200
-@@ -2882,8 +2882,8 @@
- u_int16_t port;
-
- /* Already up-to-date? */
-- if (cmpsaddr(iph1->local, ma->local) == 0 &&
-- cmpsaddr(iph1->remote, ma->remote) == 0)
-+ if (cmpsaddr(iph1->local, ma->local) == CMPSADDR_MATCH &&
-+ cmpsaddr(iph1->remote, ma->remote) == CMPSADDR_MATCH)
- return 0;
-
- if (iph1->status < PHASE1ST_ESTABLISHED) {
-@@ -2983,8 +2983,8 @@
- migrate_ph1_ike_addresses(iph2->ph1, arg);
-
- /* Already up-to-date? */
-- if (cmpsaddr(iph2->src, ma->local) == 0 &&
-- cmpsaddr(iph2->dst, ma->remote) == 0)
-+ if (cmpsaddr(iph2->src, ma->local) == CMPSADDR_MATCH &&
-+ cmpsaddr(iph2->dst, ma->remote) == CMPSADDR_MATCH)
- return 0;
-
- /* save src/dst as sa_src/sa_dst before rewriting */
-@@ -3207,8 +3207,8 @@
- "changing address families (%d to %d) for endpoints.\n",
- osaddr->sa_family, nsaddr->sa_family);
-
-- if (cmpsaddr(osaddr, (struct sockaddr *) &saidx->src) ||
-- cmpsaddr(odaddr, (struct sockaddr *) &saidx->dst)) {
-+ if (cmpsaddr(osaddr, (struct sockaddr *) &saidx->src) != CMPSADDR_MATCH ||
-+ cmpsaddr(odaddr, (struct sockaddr *) &saidx->dst) != CMPSADDR_MATCH) {
- plog(LLV_DEBUG, LOCATION, NULL, "SADB_X_MIGRATE: "
- "mismatch of addresses in saidx and xisr.\n");
- return -1;
-Index: ipsec-tools-cvs-HEAD/src/racoon/policy.c
-===================================================================
---- ipsec-tools-cvs-HEAD.orig/src/racoon/policy.c 2011-03-03 17:54:34.000000000 +0200
-+++ ipsec-tools-cvs-HEAD/src/racoon/policy.c 2011-03-03 19:09:42.000000000 +0200
-@@ -142,7 +142,7 @@
- plog(LLV_DEBUG, LOCATION, NULL, "src2: %s\n",
- saddr2str((struct sockaddr *)&spidx->src));
-
-- if (cmpsaddr(iph2->src, (struct sockaddr *) &spidx->src) ||
-+ if (cmpsaddr(iph2->src, (struct sockaddr *) &spidx->src) != CMPSADDR_MATCH ||
- spidx->prefs != prefixlen)
- return NULL;
-
-@@ -151,7 +151,7 @@
- plog(LLV_DEBUG, LOCATION, NULL, "dst2: %s\n",
- saddr2str((struct sockaddr *)&spidx->dst));
-
-- if (cmpsaddr(iph2->dst, (struct sockaddr *) &spidx->dst) ||
-+ if (cmpsaddr(iph2->dst, (struct sockaddr *) &spidx->dst) != CMPSADDR_MATCH ||
- spidx->prefd != prefixlen)
- return NULL;
-
-@@ -201,10 +201,10 @@
- return 1;
-
- if (cmpsaddr((struct sockaddr *) &a->src,
-- (struct sockaddr *) &b->src))
-+ (struct sockaddr *) &b->src) != CMPSADDR_MATCH)
- return 1;
- if (cmpsaddr((struct sockaddr *) &a->dst,
-- (struct sockaddr *) &b->dst))
-+ (struct sockaddr *) &b->dst) != CMPSADDR_MATCH)
- return 1;
-
- #ifdef HAVE_SECCTX
-@@ -261,7 +261,7 @@
- a, b->prefs, saddr2str((struct sockaddr *)&sa1));
- plog(LLV_DEBUG, LOCATION, NULL, "%p masked with /%d: %s\n",
- b, b->prefs, saddr2str((struct sockaddr *)&sa2));
-- if (cmpsaddr((struct sockaddr *)&sa1, (struct sockaddr *)&sa2))
-+ if (cmpsaddr((struct sockaddr *)&sa1, (struct sockaddr *)&sa2) > CMPSADDR_WILDPORT_MATCH)
- return 1;
-
- #ifndef __linux__
-@@ -279,7 +279,7 @@
- a, b->prefd, saddr2str((struct sockaddr *)&sa1));
- plog(LLV_DEBUG, LOCATION, NULL, "%p masked with /%d: %s\n",
- b, b->prefd, saddr2str((struct sockaddr *)&sa2));
-- if (cmpsaddr((struct sockaddr *)&sa1, (struct sockaddr *)&sa2))
-+ if (cmpsaddr((struct sockaddr *)&sa1, (struct sockaddr *)&sa2) > CMPSADDR_WILDPORT_MATCH)
- return 1;
-
- #ifdef HAVE_SECCTX
-Index: ipsec-tools-cvs-HEAD/src/racoon/sockmisc.c
-===================================================================
---- ipsec-tools-cvs-HEAD.orig/src/racoon/sockmisc.c 2011-03-03 17:54:35.000000000 +0200
-+++ ipsec-tools-cvs-HEAD/src/racoon/sockmisc.c 2011-03-03 18:55:01.000000000 +0200
-@@ -132,11 +132,13 @@
- return CMPSADDR_MISMATCH;
- }
-
-- if (port1 == port2 ||
-- port1 == IPSEC_PORT_ANY ||
-- port2 == IPSEC_PORT_ANY)
-+ if (port1 == port2)
- return CMPSADDR_MATCH;
-
-+ if (port1 == IPSEC_PORT_ANY ||
-+ port2 == IPSEC_PORT_ANY)
-+ return CMPSADDR_WILDPORT_MATCH;
-+
- return CMPSADDR_WOP_MATCH;
- }
-
-@@ -934,7 +936,7 @@
- free(a2);
- free(a3);
- }
-- if (cmpsaddr(&sa, &naddr->sa.sa) == 0)
-+ if (cmpsaddr(&sa, &naddr->sa.sa) <= CMPSADDR_WOP_MATCH)
- return naddr->prefix + port_score;
-
- return -1;
-Index: ipsec-tools-cvs-HEAD/src/racoon/sockmisc.h
-===================================================================
---- ipsec-tools-cvs-HEAD.orig/src/racoon/sockmisc.h 2011-03-03 17:54:35.000000000 +0200
-+++ ipsec-tools-cvs-HEAD/src/racoon/sockmisc.h 2011-03-03 18:40:30.000000000 +0200
-@@ -57,8 +57,9 @@
- extern const int niflags;
-
- #define CMPSADDR_MATCH 0
--#define CMPSADDR_WOP_MATCH 1
--#define CMPSADDR_MISMATCH 2
-+#define CMPSADDR_WILDPORT_MATCH 1
-+#define CMPSADDR_WOP_MATCH 2
-+#define CMPSADDR_MISMATCH 3
-
- extern int cmpsaddr __P((const struct sockaddr *, const struct sockaddr *));
-
-Index: ipsec-tools-cvs-HEAD/src/racoon/throttle.c
-===================================================================
---- ipsec-tools-cvs-HEAD.orig/src/racoon/throttle.c 2011-03-03 17:54:35.000000000 +0200
-+++ ipsec-tools-cvs-HEAD/src/racoon/throttle.c 2011-03-03 18:55:31.000000000 +0200
-@@ -104,7 +104,7 @@
- goto restart;
- }
-
-- if (cmpsaddr(addr, (struct sockaddr *) &te->host) == 0) {
-+ if (cmpsaddr(addr, (struct sockaddr *) &te->host) <= CMPSADDR_WOP_MATCH) {
- found = 1;
- break;
- }
diff --git a/main/ipsec-tools/APKBUILD b/main/ipsec-tools/APKBUILD
index 3e9609bb77..6e8341cb87 100644
--- a/main/ipsec-tools/APKBUILD
+++ b/main/ipsec-tools/APKBUILD
@@ -1,7 +1,6 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=ipsec-tools
-pkgver=0.8.0_rc1
-_myver=0.8.0.RC
+pkgver=0.8.0
pkgrel=0
pkgdesc="User-space IPsec tools for various IPsec implementations"
url="http://ipsec-tools.sourceforge.net/"
@@ -10,17 +9,16 @@ license="BSD"
depends=""
makedepends="openssl-dev bison flex"
subpackages="$pkgname-doc $pkgname-dev"
-source="http://downloads.sourceforge.net/$pkgname/$pkgname-$_myver.tar.gz
+source="http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz
racoon.initd
racoon.confd
- 10-cmpsaddr-fix.patch
20-grekey-support.patch
50-reverse-connect.patch
70-defer-isakmp-ident-handling.patch
75-racoonctl-rcvbuf.patch
"
-_builddir="$srcdir"/$pkgname-$_myver
+_builddir="$srcdir"/$pkgname-$pkgver
prepare() {
cd "$_builddir"
for i in ../*.patch; do
@@ -57,10 +55,9 @@ package() {
install -D -m644 ../racoon.confd "$pkgdir"/etc/conf.d/racoon
}
-md5sums="9473d0ce8746f16281fce1b75a9fffa3 ipsec-tools-0.8.0.RC.tar.gz
+md5sums="c9a318cdbc0946f4e51464866d529739 ipsec-tools-0.8.0.tar.gz
74f12ed04ed273a738229c0bfbf829cc racoon.initd
2d00250cf72da7f2f559c91b65a48747 racoon.confd
-e4c9ae678bf80518107690bde97dc14b 10-cmpsaddr-fix.patch
64a859d51f57206a11e52f6ad4830ec5 20-grekey-support.patch
f97205eea3dc68d2437a2ad8720f4520 50-reverse-connect.patch
94773c94233e14cdce0fa02ff780a43e 70-defer-isakmp-ident-handling.patch
diff --git a/main/libc0.9.32/0001-ldso-limited-support-for-ORIGIN-in-rpath.patch b/main/libc0.9.32/0001-ldso-limited-support-for-ORIGIN-in-rpath.patch
new file mode 100644
index 0000000000..73e0fab2bf
--- /dev/null
+++ b/main/libc0.9.32/0001-ldso-limited-support-for-ORIGIN-in-rpath.patch
@@ -0,0 +1,198 @@
+From 0ba7ee452f26088f6b738c37e05c16c7c9eb1caf Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
+Date: Fri, 18 Mar 2011 10:53:56 +0200
+Subject: [PATCH 1/3] ldso: limited support for $ORIGIN in rpath
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Handle it if it's in the beginning of the rpath entry as it
+should be.
+
+Signed-off-by: Timo Teräs <timo.teras@iki.fi>
+---
+ ldso/ldso/dl-elf.c | 80 ++++++++++++++++++++++++++++-----------------------
+ ldso/ldso/ldso.c | 18 ++++++++++--
+ 2 files changed, 59 insertions(+), 39 deletions(-)
+
+diff --git a/ldso/ldso/dl-elf.c b/ldso/ldso/dl-elf.c
+index 505247e..2b2d429 100644
+--- a/ldso/ldso/dl-elf.c
++++ b/ldso/ldso/dl-elf.c
+@@ -133,53 +133,60 @@ _dl_protect_relro (struct elf_resolve *l)
+ * in uClibc/ldso/util/ldd.c */
+ static struct elf_resolve *
+ search_for_named_library(const char *name, int secure, const char *path_list,
+- struct dyn_elf **rpnt)
++ struct dyn_elf **rpnt, const char *origin)
+ {
+- char *path, *path_n, *mylibname;
++ char *mylibname;
++ const char *p, *pn;
+ struct elf_resolve *tpnt;
+- int done;
++ int plen;
+
+ if (path_list==NULL)
+ return NULL;
+
+- /* We need a writable copy of this string, but we don't
+- * need this allocated permanently since we don't want
+- * to leak memory, so use alloca to put path on the stack */
+- done = _dl_strlen(path_list);
+- path = alloca(done + 1);
+-
+ /* another bit of local storage */
+ mylibname = alloca(2050);
+
+- _dl_memcpy(path, path_list, done+1);
+-
+ /* Unlike ldd.c, don't bother to eliminate double //s */
+
+ /* Replace colons with zeros in path_list */
+ /* : at the beginning or end of path maps to CWD */
+ /* :: anywhere maps CWD */
+ /* "" maps to CWD */
+- done = 0;
+- path_n = path;
+- do {
+- if (*path == 0) {
+- *path = ':';
+- done = 1;
+- }
+- if (*path == ':') {
+- *path = 0;
+- if (*path_n)
+- _dl_strcpy(mylibname, path_n);
+- else
+- _dl_strcpy(mylibname, "."); /* Assume current dir if empty path */
+- _dl_strcat(mylibname, "/");
+- _dl_strcat(mylibname, name);
+- if ((tpnt = _dl_load_elf_shared_library(secure, rpnt, mylibname)) != NULL)
+- return tpnt;
+- path_n = path+1;
++ for (p = path_list; p != NULL; p = pn) {
++ pn = _dl_strchr(p + 1, ':');
++ if (pn != NULL) {
++ plen = pn - p;
++ pn++;
++ } else
++ plen = _dl_strlen(p);
++
++ if (plen >= 7 && _dl_memcmp(p, "$ORIGIN", 7) == 0) {
++ int olen;
++ if (secure && plen != 7)
++ continue;
++ if (origin == NULL)
++ continue;
++ for (olen = _dl_strlen(origin) - 1; olen >= 0 && origin[olen] != '/'; olen--)
++ ;
++ if (olen <= 0)
++ continue;
++ _dl_memcpy(&mylibname[0], origin, olen);
++ _dl_memcpy(&mylibname[olen], p + 7, plen - 7);
++ mylibname[olen + plen - 7] = 0;
++ } else if (plen != 0) {
++ _dl_memcpy(mylibname, p, plen);
++ mylibname[plen] = 0;
++ } else {
++ _dl_strcpy(mylibname, ".");
+ }
+- path++;
+- } while (!done);
++ _dl_strcat(mylibname, "/");
++ _dl_strcat(mylibname, name);
++
++ tpnt = _dl_load_elf_shared_library(secure, rpnt, mylibname);
++ if (tpnt != NULL)
++ return tpnt;
++ }
++
+ return NULL;
+ }
+
+@@ -231,7 +238,8 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+ if (pnt) {
+ pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB];
+ _dl_if_debug_dprint("\tsearching RPATH='%s'\n", pnt);
+- if ((tpnt1 = search_for_named_library(libname, secure, pnt, rpnt)) != NULL)
++ if ((tpnt1 = search_for_named_library(libname, secure, pnt, rpnt,
++ tpnt->libname)) != NULL)
+ return tpnt1;
+ }
+ #endif
+@@ -239,7 +247,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+ /* Check in LD_{ELF_}LIBRARY_PATH, if specified and allowed */
+ if (_dl_library_path) {
+ _dl_if_debug_dprint("\tsearching LD_LIBRARY_PATH='%s'\n", _dl_library_path);
+- if ((tpnt1 = search_for_named_library(libname, secure, _dl_library_path, rpnt)) != NULL)
++ if ((tpnt1 = search_for_named_library(libname, secure, _dl_library_path, rpnt, NULL)) != NULL)
+ {
+ return tpnt1;
+ }
+@@ -253,7 +261,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+ if (pnt) {
+ pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB];
+ _dl_if_debug_dprint("\tsearching RUNPATH='%s'\n", pnt);
+- if ((tpnt1 = search_for_named_library(libname, secure, pnt, rpnt)) != NULL)
++ if ((tpnt1 = search_for_named_library(libname, secure, pnt, rpnt, NULL)) != NULL)
+ return tpnt1;
+ }
+ #endif
+@@ -287,7 +295,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+ /* Look for libraries wherever the shared library loader
+ * was installed */
+ _dl_if_debug_dprint("\tsearching ldso dir='%s'\n", _dl_ldsopath);
+- tpnt1 = search_for_named_library(libname, secure, _dl_ldsopath, rpnt);
++ tpnt1 = search_for_named_library(libname, secure, _dl_ldsopath, rpnt, NULL);
+ if (tpnt1 != NULL)
+ return tpnt1;
+
+@@ -300,7 +308,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+ #ifndef __LDSO_CACHE_SUPPORT__
+ ":" UCLIBC_RUNTIME_PREFIX "usr/X11R6/lib"
+ #endif
+- , rpnt);
++ , rpnt, NULL);
+ if (tpnt1 != NULL)
+ return tpnt1;
+
+diff --git a/ldso/ldso/ldso.c b/ldso/ldso/ldso.c
+index 7ee9257..9423670 100644
+--- a/ldso/ldso/ldso.c
++++ b/ldso/ldso/ldso.c
+@@ -272,6 +272,20 @@ static void __attribute__ ((destructor)) __attribute_used__ _dl_fini(void)
+ }
+ }
+
++static void _dl_setup_progname(const char *argv0)
++{
++ char image[PATH_MAX];
++ ssize_t s;
++
++ s = _dl_readlink("/proc/self/exe", image, sizeof(image));
++ if (s > 0 && image[0] == '/') {
++ image[s] = 0;
++ _dl_progname = _dl_strdup(image);
++ } else if (argv0) {
++ _dl_progname = argv0;
++ }
++}
++
+ void _dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr,
+ ElfW(auxv_t) auxvt[AT_EGID + 1], char **envp,
+ char **argv
+@@ -321,9 +335,7 @@ void _dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr,
+ * been fixed up by now. Still no function calls outside of this
+ * library, since the dynamic resolver is not yet ready.
+ */
+- if (argv[0]) {
+- _dl_progname = argv[0];
+- }
++ _dl_setup_progname(argv[0]);
+
+ if (_start == (void *) auxvt[AT_ENTRY].a_un.a_val) {
+ _dl_dprintf(_dl_debug_file, "Standalone execution is not supported yet\n");
+--
+1.7.1
+
diff --git a/main/libc0.9.32/0002-stdlib-fix-arc4random-return-type-to-u_int32_t.patch b/main/libc0.9.32/0002-stdlib-fix-arc4random-return-type-to-u_int32_t.patch
new file mode 100644
index 0000000000..9d924655df
--- /dev/null
+++ b/main/libc0.9.32/0002-stdlib-fix-arc4random-return-type-to-u_int32_t.patch
@@ -0,0 +1,61 @@
+From 70debeff167858502d99e92a221fe14f5428a9b6 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
+Date: Fri, 18 Mar 2011 10:57:31 +0200
+Subject: [PATCH 2/3] stdlib: fix arc4random return type to u_int32_t
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+It's documented to be u_int32_t and not uint32_t:
+ http://www.manpagez.com/man/3/arc4random/
+
+This also fixes a major bug that stdlib.h includes stdint.h. Things
+might go very wrong because stdint.h has conditional defines and
+if stdlib.h is included before #define's for stdint.h we end up
+missing things and breaking builds (e.g. openjdk).
+
+Signed-off-by: Timo Teräs <timo.teras@iki.fi>
+---
+ include/stdlib.h | 4 ++--
+ libc/stdlib/arc4random.c | 3 ++-
+ 2 files changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/include/stdlib.h b/include/stdlib.h
+index e9a8b84..7b35840 100644
+--- a/include/stdlib.h
++++ b/include/stdlib.h
+@@ -902,8 +902,8 @@ extern int getloadavg (double __loadavg[], int __nelem)
+ #endif
+
+ #ifdef __UCLIBC_HAS_ARC4RANDOM__
+-#include <stdint.h>
+-extern uint32_t arc4random(void);
++# include <sys/types.h>
++extern u_int32_t arc4random(void);
+ extern void arc4random_stir(void);
+ extern void arc4random_addrandom(unsigned char *, int);
+ #endif
+diff --git a/libc/stdlib/arc4random.c b/libc/stdlib/arc4random.c
+index c7aed66..7b9b12d 100644
+--- a/libc/stdlib/arc4random.c
++++ b/libc/stdlib/arc4random.c
+@@ -30,6 +30,7 @@
+ #include <fcntl.h>
+ #include <stdlib.h>
+ #include <unistd.h>
++#include <stdint.h>
+ #include <sys/types.h>
+ #include <sys/param.h>
+ #include <sys/time.h>
+@@ -175,7 +176,7 @@ arc4random_addrandom(u_char *dat, int datlen)
+ arc4_addrandom(&rs, dat, datlen);
+ }
+
+-uint32_t
++u_int32_t
+ arc4random(void)
+ {
+ if (!rs_initialized)
+--
+1.7.1
+
diff --git a/main/libc0.9.32/0003-ldso-support-RTLD_NOLOAD.patch b/main/libc0.9.32/0003-ldso-support-RTLD_NOLOAD.patch
new file mode 100644
index 0000000000..f10d6f002d
--- /dev/null
+++ b/main/libc0.9.32/0003-ldso-support-RTLD_NOLOAD.patch
@@ -0,0 +1,234 @@
+From 4bb377585b95cb67c90ff4ffc21a6870a4e78a37 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Timo=20Ter=C3=A4s?= <timo.teras@iki.fi>
+Date: Fri, 18 Mar 2011 11:40:04 +0200
+Subject: [PATCH 3/3] ldso: support RTLD_NOLOAD
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+So application query if specified modile is loaded or not with
+dlopen.
+
+Signed-off-by: Timo Teräs <timo.teras@iki.fi>
+---
+ ldso/include/dl-elf.h | 6 ++++--
+ ldso/ldso/dl-elf.c | 30 +++++++++++++++++-------------
+ ldso/ldso/ldso.c | 4 +++-
+ ldso/libdl/libdl.c | 5 +++--
+ libc/sysdeps/linux/common/bits/dlfcn.h | 4 ++--
+ 5 files changed, 29 insertions(+), 20 deletions(-)
+
+diff --git a/ldso/include/dl-elf.h b/ldso/include/dl-elf.h
+index 7fbb373..7102351 100644
+--- a/ldso/include/dl-elf.h
++++ b/ldso/include/dl-elf.h
+@@ -25,16 +25,18 @@ static __inline__ void _dl_map_cache(void) { }
+ static __inline__ void _dl_unmap_cache(void) { }
+ #endif
+
++#define DL_RESOLVE_SECURE 0x0001
++#define DL_RESOLVE_NOLOAD 0x0002
+
+ /* Function prototypes for non-static stuff in readelflib1.c */
+ extern void _dl_parse_lazy_relocation_information(struct dyn_elf *rpnt,
+ unsigned long rel_addr, unsigned long rel_size);
+ extern int _dl_parse_relocation_information(struct dyn_elf *rpnt,
+ unsigned long rel_addr, unsigned long rel_size);
+-extern struct elf_resolve * _dl_load_shared_library(int secure,
++extern struct elf_resolve * _dl_load_shared_library(int resolve_flags,
+ struct dyn_elf **rpnt, struct elf_resolve *tpnt, char *full_libname,
+ int trace_loaded_objects);
+-extern struct elf_resolve * _dl_load_elf_shared_library(int secure,
++extern struct elf_resolve * _dl_load_elf_shared_library(int resolve_flags,
+ struct dyn_elf **rpnt, char *libname);
+ extern struct elf_resolve *_dl_check_if_named_library_is_loaded(const char *full_libname,
+ int trace_loaded_objects);
+diff --git a/ldso/ldso/dl-elf.c b/ldso/ldso/dl-elf.c
+index 2b2d429..6d35bf2 100644
+--- a/ldso/ldso/dl-elf.c
++++ b/ldso/ldso/dl-elf.c
+@@ -132,7 +132,7 @@ _dl_protect_relro (struct elf_resolve *l)
+ /* This function's behavior must exactly match that
+ * in uClibc/ldso/util/ldd.c */
+ static struct elf_resolve *
+-search_for_named_library(const char *name, int secure, const char *path_list,
++search_for_named_library(const char *name, int resolve_flags, const char *path_list,
+ struct dyn_elf **rpnt, const char *origin)
+ {
+ char *mylibname;
+@@ -162,7 +162,7 @@ search_for_named_library(const char *name, int secure, const char *path_list,
+
+ if (plen >= 7 && _dl_memcmp(p, "$ORIGIN", 7) == 0) {
+ int olen;
+- if (secure && plen != 7)
++ if ((resolve_flags & DL_RESOLVE_SECURE) && plen != 7)
+ continue;
+ if (origin == NULL)
+ continue;
+@@ -182,7 +182,7 @@ search_for_named_library(const char *name, int secure, const char *path_list,
+ _dl_strcat(mylibname, "/");
+ _dl_strcat(mylibname, name);
+
+- tpnt = _dl_load_elf_shared_library(secure, rpnt, mylibname);
++ tpnt = _dl_load_elf_shared_library(resolve_flags, rpnt, mylibname);
+ if (tpnt != NULL)
+ return tpnt;
+ }
+@@ -194,7 +194,7 @@ search_for_named_library(const char *name, int secure, const char *path_list,
+ unsigned long _dl_error_number;
+ unsigned long _dl_internal_error_number;
+
+-struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
++struct elf_resolve *_dl_load_shared_library(int resolve_flags, struct dyn_elf **rpnt,
+ struct elf_resolve *tpnt, char *full_libname, int attribute_unused trace_loaded_objects)
+ {
+ char *pnt;
+@@ -223,7 +223,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+
+ if (libname != full_libname) {
+ _dl_if_debug_dprint("\ttrying file='%s'\n", full_libname);
+- tpnt1 = _dl_load_elf_shared_library(secure, rpnt, full_libname);
++ tpnt1 = _dl_load_elf_shared_library(resolve_flags, rpnt, full_libname);
+ if (tpnt1) {
+ return tpnt1;
+ }
+@@ -238,7 +238,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+ if (pnt) {
+ pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB];
+ _dl_if_debug_dprint("\tsearching RPATH='%s'\n", pnt);
+- if ((tpnt1 = search_for_named_library(libname, secure, pnt, rpnt,
++ if ((tpnt1 = search_for_named_library(libname, resolve_flags, pnt, rpnt,
+ tpnt->libname)) != NULL)
+ return tpnt1;
+ }
+@@ -247,7 +247,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+ /* Check in LD_{ELF_}LIBRARY_PATH, if specified and allowed */
+ if (_dl_library_path) {
+ _dl_if_debug_dprint("\tsearching LD_LIBRARY_PATH='%s'\n", _dl_library_path);
+- if ((tpnt1 = search_for_named_library(libname, secure, _dl_library_path, rpnt, NULL)) != NULL)
++ if ((tpnt1 = search_for_named_library(libname, resolve_flags, _dl_library_path, rpnt, NULL)) != NULL)
+ {
+ return tpnt1;
+ }
+@@ -261,7 +261,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+ if (pnt) {
+ pnt += (unsigned long) tpnt->dynamic_info[DT_STRTAB];
+ _dl_if_debug_dprint("\tsearching RUNPATH='%s'\n", pnt);
+- if ((tpnt1 = search_for_named_library(libname, secure, pnt, rpnt, NULL)) != NULL)
++ if ((tpnt1 = search_for_named_library(libname, resolve_flags, pnt, rpnt, NULL)) != NULL)
+ return tpnt1;
+ }
+ #endif
+@@ -284,7 +284,7 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+ || libent[i].flags == LIB_ELF_LIBC0
+ || libent[i].flags == LIB_ELF_LIBC5)
+ && _dl_strcmp(libname, strs + libent[i].sooffset) == 0
+- && (tpnt1 = _dl_load_elf_shared_library(secure, rpnt, strs + libent[i].liboffset))
++ && (tpnt1 = _dl_load_elf_shared_library(resolve_flags, rpnt, strs + libent[i].liboffset))
+ ) {
+ return tpnt1;
+ }
+@@ -295,14 +295,14 @@ struct elf_resolve *_dl_load_shared_library(int secure, struct dyn_elf **rpnt,
+ /* Look for libraries wherever the shared library loader
+ * was installed */
+ _dl_if_debug_dprint("\tsearching ldso dir='%s'\n", _dl_ldsopath);
+- tpnt1 = search_for_named_library(libname, secure, _dl_ldsopath, rpnt, NULL);
++ tpnt1 = search_for_named_library(libname, resolve_flags, _dl_ldsopath, rpnt, NULL);
+ if (tpnt1 != NULL)
+ return tpnt1;
+
+ /* Lastly, search the standard list of paths for the library.
+ This list must exactly match the list in uClibc/ldso/util/ldd.c */
+ _dl_if_debug_dprint("\tsearching full lib path list\n");
+- tpnt1 = search_for_named_library(libname, secure,
++ tpnt1 = search_for_named_library(libname, resolve_flags,
+ UCLIBC_RUNTIME_PREFIX "lib:"
+ UCLIBC_RUNTIME_PREFIX "usr/lib"
+ #ifndef __LDSO_CACHE_SUPPORT__
+@@ -329,7 +329,7 @@ goof:
+ * are required.
+ */
+
+-struct elf_resolve *_dl_load_elf_shared_library(int secure,
++struct elf_resolve *_dl_load_elf_shared_library(int resolve_flags,
+ struct dyn_elf **rpnt, char *libname)
+ {
+ ElfW(Ehdr) *epnt;
+@@ -368,7 +368,7 @@ struct elf_resolve *_dl_load_elf_shared_library(int secure,
+ }
+ /* If we are in secure mode (i.e. a setu/gid binary using LD_PRELOAD),
+ we don't load the library if it isn't setuid. */
+- if (secure) {
++ if (resolve_flags & DL_RESOLVE_SECURE) {
+ if (!(st.st_mode & S_ISUID)) {
+ _dl_close(infile);
+ return NULL;
+@@ -384,6 +384,10 @@ struct elf_resolve *_dl_load_elf_shared_library(int secure,
+ return tpnt;
+ }
+ }
++ if (resolve_flags & DL_RESOLVE_NOLOAD) {
++ _dl_close(infile);
++ return NULL;
++ }
+ header = _dl_mmap((void *) 0, _dl_pagesize, PROT_READ | PROT_WRITE,
+ MAP_PRIVATE | MAP_ANONYMOUS | MAP_UNINITIALIZE, -1, 0);
+ if (_dl_mmap_check_error(header)) {
+diff --git a/ldso/ldso/ldso.c b/ldso/ldso/ldso.c
+index 9423670..b71af34 100644
+--- a/ldso/ldso/ldso.c
++++ b/ldso/ldso/ldso.c
+@@ -646,7 +646,9 @@ void _dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr,
+ if (!_dl_secure || _dl_strchr(str, '/') == NULL) {
+ _dl_if_debug_dprint("\tfile='%s'; needed by '%s'\n", str, _dl_progname);
+
+- tpnt1 = _dl_load_shared_library(_dl_secure, &rpnt, NULL, str, trace_loaded_objects);
++ tpnt1 = _dl_load_shared_library(
++ _dl_secure ? DL_RESOLVE_SECURE : 0,
++ &rpnt, NULL, str, trace_loaded_objects);
+ if (!tpnt1) {
+ #ifdef __LDSO_LDD_SUPPORT__
+ if (trace_loaded_objects)
+diff --git a/ldso/libdl/libdl.c b/ldso/libdl/libdl.c
+index 68cd579..edf38d2 100644
+--- a/ldso/libdl/libdl.c
++++ b/ldso/libdl/libdl.c
+@@ -288,7 +288,7 @@ void *dlopen(const char *libname, int flag)
+ #endif
+
+ /* A bit of sanity checking... */
+- if (!(flag & (RTLD_LAZY|RTLD_NOW))) {
++ if (!(flag & (RTLD_LAZY|RTLD_NOW|RTLD_NOLOAD))) {
+ _dl_error_number = LD_BAD_HANDLE;
+ return NULL;
+ }
+@@ -358,8 +358,9 @@ void *dlopen(const char *libname, int flag)
+ /* Try to load the specified library */
+ _dl_if_debug_print("Trying to dlopen '%s', RTLD_GLOBAL:%d RTLD_NOW:%d\n",
+ (char*)libname, (flag & RTLD_GLOBAL ? 1:0), (now_flag & RTLD_NOW ? 1:0));
+- tpnt = _dl_load_shared_library(0, &rpnt, tfrom, (char*)libname, 0);
+
++ tpnt = _dl_load_shared_library((flag & RTLD_NOLOAD) ? DL_RESOLVE_NOLOAD : 0,
++ &rpnt, tfrom, (char*)libname, 0);
+ if (tpnt == NULL) {
+ _dl_unmap_cache();
+ return NULL;
+diff --git a/libc/sysdeps/linux/common/bits/dlfcn.h b/libc/sysdeps/linux/common/bits/dlfcn.h
+index 4bfbbff..47b42ad 100644
+--- a/libc/sysdeps/linux/common/bits/dlfcn.h
++++ b/libc/sysdeps/linux/common/bits/dlfcn.h
+@@ -24,9 +24,9 @@
+ /* The MODE argument to `dlopen' contains one of the following: */
+ #define RTLD_LAZY 0x00001 /* Lazy function call binding. */
+ #define RTLD_NOW 0x00002 /* Immediate function call binding. */
+-#if 0 /* uClibc doesnt support these */
+-#define RTLD_BINDING_MASK 0x3 /* Mask of binding time value. */
++#define RTLD_BINDING_MASK 0x3 /* Mask of binding time value. */
+ #define RTLD_NOLOAD 0x00004 /* Do not load the object. */
++#if 0 /* uClibc doesnt support these */
+ #define RTLD_DEEPBIND 0x00008 /* Use deep binding. */
+ #endif
+
+--
+1.7.1
+
diff --git a/main/libc0.9.32/APKBUILD b/main/libc0.9.32/APKBUILD
index 2593caa31b..c63ff2c931 100644
--- a/main/libc0.9.32/APKBUILD
+++ b/main/libc0.9.32/APKBUILD
@@ -2,9 +2,9 @@
_abiver=0.9.32
pkgname=libc$_abiver
_gitver=
-pkgver=0.9.32_rc2
+pkgver=0.9.32_rc3
_ver=${pkgver/_/-}
-pkgrel=3
+pkgrel=0
pkgdesc="C library for developing embedded Linux systems"
url=http://uclibc.org
license="LGPL-2"
@@ -20,10 +20,10 @@ _snapurl="http://git.uclibc.org/uClibc/snapshot/master.tar.bz2"
_snapfile="$pkgname-$pkgver.tar.bz2"
source="http://uclibc.org/downloads/uClibc-${_ver}.tar.bz2
compat-stack-guard.patch
- config-has-fortify.patch
- pthread.patch
0001-libm-x86_64-implement-fesetround.patch
- arm-nptl-tls.patch
+ 0001-ldso-limited-support-for-ORIGIN-in-rpath.patch
+ 0002-stdlib-fix-arc4random-return-type-to-u_int32_t.patch
+ 0003-ldso-support-RTLD_NOLOAD.patch
uclibcconfig.x86
uclibcconfig.x86_64
uclibcconfig.i486
@@ -118,15 +118,15 @@ libthread_db() {
mv "$pkgdir"/lib/libthread_db* "$subpkgdir"/lib/
}
-md5sums="c8d2cd2c4dbcf5218b6db843cf66ac0f uClibc-0.9.32-rc2.tar.bz2
-4d408f72142ce55a0754948cc9cfe447 compat-stack-guard.patch
-fb349592e75c25aa03461740a7929ee5 config-has-fortify.patch
-c92ab246b4f92487c98938a297208829 pthread.patch
+md5sums="e7f420aa2fb28e7021d02c043acba71b uClibc-0.9.32-rc3.tar.bz2
+a9bfb77ea7dc5fb9abf4d4b19201c614 compat-stack-guard.patch
e0c901502602f7e9e002d910d0f32ab9 0001-libm-x86_64-implement-fesetround.patch
-2b4e27207b15e2d4b3e9b853513634f6 arm-nptl-tls.patch
-145aaeb1833159397cfac9902e3877ab uclibcconfig.x86
-cb1bcf2ff83029b6943d4799d926932b uclibcconfig.x86_64
-145aaeb1833159397cfac9902e3877ab uclibcconfig.i486
-e46de2eb20803d93ff08e205b8ed228a uclibcconfig.arm
-2c32eadd57ac4b39a93683f6a07bf901 uclibcconfig.powerpc
+bc164e262c5feab55c800780704fa71c 0001-ldso-limited-support-for-ORIGIN-in-rpath.patch
+b4fb68ad3d0e8331b1b40c30eb21dfdc 0002-stdlib-fix-arc4random-return-type-to-u_int32_t.patch
+6147efd2eee5af5e734896823c2d1a3d 0003-ldso-support-RTLD_NOLOAD.patch
+a06b654d73b8a8726af6b276c4e36fbf uclibcconfig.x86
+fcd976cd03baceb3c3795d92aa186868 uclibcconfig.x86_64
+a06b654d73b8a8726af6b276c4e36fbf uclibcconfig.i486
+2c1e143152b941b5a32319cb318ae2b8 uclibcconfig.arm
+19686636eee494ac609b04b7aae42391 uclibcconfig.powerpc
7bf1af84106de9e05160ed6d4853c54f sha512-crypt.patch"
diff --git a/main/libc0.9.32/arm-nptl-tls.patch b/main/libc0.9.32/arm-nptl-tls.patch
deleted file mode 100644
index 44a038624f..0000000000
--- a/main/libc0.9.32/arm-nptl-tls.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From 565b8d14a1dc2ce1a9c4110232e1abf88f0572ed Mon Sep 17 00:00:00 2001
-From: William Pitcock <nenolod@dereferenced.org>
-Date: Fri, 14 Jan 2011 18:17:24 -0600
-Subject: [PATCH] nptl: fix TLS support on arm
-
-Signed-off-by: William Pitcock <nenolod@dereferenced.org>
----
- libpthread/nptl/sysdeps/arm/Makefile.arch | 2 +
- libpthread/nptl/sysdeps/arm/libc-tls.c | 38 +++++++++++++++++++++++++++++
- 2 files changed, 40 insertions(+), 0 deletions(-)
- create mode 100644 libpthread/nptl/sysdeps/arm/libc-tls.c
-
-diff --git a/libpthread/nptl/sysdeps/arm/Makefile.arch b/libpthread/nptl/sysdeps/arm/Makefile.arch
-index a8bc1aa..d463253 100644
---- a/libpthread/nptl/sysdeps/arm/Makefile.arch
-+++ b/libpthread/nptl/sysdeps/arm/Makefile.arch
-@@ -15,3 +15,5 @@ ASFLAGS-pthread_spin_lock.S = -DNOT_IN_libc -DIS_IN_libpthread
- ASFLAGS-pthread_spin_trylock.S = -DNOT_IN_libc -DIS_IN_libpthread
- ASFLAGS-aeabi_read_tp.S = -DNOT_IN_libc=1
-
-+libc_arch_a_CSRC = libc-tls.c
-+
-diff --git a/libpthread/nptl/sysdeps/arm/libc-tls.c b/libpthread/nptl/sysdeps/arm/libc-tls.c
-new file mode 100644
-index 0000000..a9e6d4f
---- /dev/null
-+++ b/libpthread/nptl/sysdeps/arm/libc-tls.c
-@@ -0,0 +1,38 @@
-+/* Thread-local storage handling in the ELF dynamic linker. MIPS version.
-+ Copyright (C) 2005 Free Software Foundation, Inc.
-+ This file is part of the GNU C Library.
-+
-+ The GNU C Library is free software; you can redistribute it and/or
-+ modify it under the terms of the GNU Lesser General Public
-+ License as published by the Free Software Foundation; either
-+ version 2.1 of the License, or (at your option) any later version.
-+
-+ The GNU C Library is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-+ Lesser General Public License for more details.
-+
-+ You should have received a copy of the GNU Lesser General Public
-+ License along with the GNU C Library; if not, write to the Free
-+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-+ 02111-1307 USA. */
-+
-+#include <sysdeps/generic/libc-tls.c>
-+#include <dl-tls.h>
-+
-+#if USE_TLS
-+
-+/* On ARM, linker optimizations are not required, so __tls_get_addr
-+ can be called even in statically linked binaries. In this case module
-+ must be always 1 and PT_TLS segment exist in the binary, otherwise it
-+ would not link. */
-+
-+void *
-+__tls_get_addr (tls_index *ti)
-+{
-+ dtv_t *dtv = THREAD_DTV ();
-+ return (char *) dtv[1].pointer.val + ti->ti_offset;
-+}
-+
-+#endif
-+
---
-1.7.3.5
-
diff --git a/main/libc0.9.32/compat-stack-guard.patch b/main/libc0.9.32/compat-stack-guard.patch
index 71d78bac5a..c69a9c5350 100644
--- a/main/libc0.9.32/compat-stack-guard.patch
+++ b/main/libc0.9.32/compat-stack-guard.patch
@@ -1,51 +1,55 @@
diff --git a/ldso/ldso/ldso.c b/ldso/ldso/ldso.c
-index 125cf96..bb47952 100644
+index 2857f7e..dce6fd8 100644
--- a/ldso/ldso/ldso.c
+++ b/ldso/ldso/ldso.c
-@@ -101,10 +101,10 @@ extern void _start(void);
+@@ -103,11 +103,7 @@ extern void _start(void);
#ifdef __UCLIBC_HAS_SSP__
# include <dl-osinfo.h>
- uintptr_t stack_chk_guard;
-+uintptr_t __stack_chk_guard attribute_relro;
- # ifndef THREAD_SET_STACK_GUARD
- /* Only exported for architectures that don't store the stack guard canary
- * in local thread area. */
--uintptr_t __stack_chk_guard attribute_relro;
- # ifdef __UCLIBC_HAS_SSP_COMPAT__
- strong_alias(__stack_chk_guard,__guard)
- # endif
-@@ -935,13 +935,12 @@ void _dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr,
- #ifdef __UCLIBC_HAS_SSP__
- /* Set up the stack checker's canary. */
+ static uintptr_t stack_chk_guard;
+-# ifndef THREAD_SET_STACK_GUARD
+-/* Only exported for architectures that don't store the stack guard canary
+- * in local thread area. */
+ uintptr_t __stack_chk_guard attribute_relro;
+-# endif
+ # ifdef __UCLIBC_HAS_SSP_COMPAT__
+ uintptr_t __guard attribute_relro;
+ # endif
+@@ -953,9 +949,8 @@ void _dl_get_ready_to_run(struct elf_resolve *tpnt, DL_LOADADDR_TYPE load_addr,
stack_chk_guard = _dl_setup_stack_chk_guard ();
-+ __stack_chk_guard = stack_chk_guard;
# ifdef THREAD_SET_STACK_GUARD
THREAD_SET_STACK_GUARD (stack_chk_guard);
- # ifdef __UCLIBC_HAS_SSP_COMPAT__
- __guard = stack_chk_guard;
- # endif
-# else
- __stack_chk_guard = stack_chk_guard;
# endif
- #endif
-
++ __stack_chk_guard = stack_chk_guard;
+ # ifdef __UCLIBC_HAS_SSP_COMPAT__
+ __guard = stack_chk_guard;
+ # endif
diff --git a/libc/misc/internals/__uClibc_main.c b/libc/misc/internals/__uClibc_main.c
-index f7e45c6..b527068 100644
+index 315365a..78cd058 100644
--- a/libc/misc/internals/__uClibc_main.c
+++ b/libc/misc/internals/__uClibc_main.c
-@@ -43,13 +43,13 @@ void *__libc_stack_end = NULL;
-
+@@ -46,12 +46,7 @@ void *__libc_stack_end = NULL;
# ifdef __UCLIBC_HAS_SSP__
# include <dl-osinfo.h>
-+/* for gcc-4.1 non-TLS */
-+uintptr_t __stack_chk_guard attribute_relro;
- # ifndef THREAD_SET_STACK_GUARD
- /* Only exported for architectures that don't store the stack guard canary
- * in thread local area. */
- # include <stdint.h>
- uintptr_t stack_chk_guard;
+ static uintptr_t stack_chk_guard;
+-# ifndef THREAD_SET_STACK_GUARD
+-/* Only exported for architectures that don't store the stack guard canary
+- * in thread local area. */
-/* for gcc-4.1 non-TLS */
--uintptr_t __stack_chk_guard attribute_relro;
+ uintptr_t __stack_chk_guard attribute_relro;
+-# endif
/* for gcc-3.x + Etoh ssp */
- # ifdef __UCLIBC_HAS_SSP_COMPAT__
- # ifdef __HAVE_SHARED__
+ # ifdef __UCLIBC_HAS_SSP_COMPAT__
+ uintptr_t __guard attribute_relro;
+@@ -247,9 +242,8 @@ void __uClibc_init(void)
+ stack_chk_guard = _dl_setup_stack_chk_guard();
+ # ifdef THREAD_SET_STACK_GUARD
+ THREAD_SET_STACK_GUARD (stack_chk_guard);
+-# else
+- __stack_chk_guard = stack_chk_guard;
+ # endif
++ __stack_chk_guard = stack_chk_guard;
+ # ifdef __UCLIBC_HAS_SSP_COMPAT__
+ __guard = stack_chk_guard;
+ # endif
diff --git a/main/libc0.9.32/config-has-fortify.patch b/main/libc0.9.32/config-has-fortify.patch
deleted file mode 100644
index 01e26e7e12..0000000000
--- a/main/libc0.9.32/config-has-fortify.patch
+++ /dev/null
@@ -1,125 +0,0 @@
-From 82098ab9b853c33ee8ade61c9510b295cc696de1 Mon Sep 17 00:00:00 2001
-From: Peter S. Mazinger <ps.m@gmx.net>
-Date: Wed, 09 Mar 2011 08:23:48 +0000
-Subject: guard *_chk() related stuff with UCLIBC_HAS_FORTIFY
-
-Guard x86_64 memset_chk/memcpy_chk be guarded by UCLIBC_HAS_FORTIFY.
-Compile ssp.c if one of SSP/FORTIFY is defined.
-Guard __chk_fail() with UCLIBC_HAS_FORTIFY and move its prototype to libc-internal.h.
-Disable _FORTIFY_SOURCE if UCLIBC_HAS_FORTIFY is not set.
-
-The config option itself is omitted on purpose,
-headers need to be reviewed and generic *_chk() functions need to be first provided.
-
-Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
----
-diff --git a/include/features.h b/include/features.h
-index f4d70d7..41e83a9 100644
---- a/include/features.h
-+++ b/include/features.h
-@@ -198,9 +198,12 @@
- # define __OPTIMIZE_SIZE__ 1
-
- /* disable unsupported features */
--# undef _FORTIFY_SOURCE
- # undef __LDBL_COMPAT
-
-+# ifndef __UCLIBC_HAS_FORTIFY__
-+# undef _FORTIFY_SOURCE
-+# endif
-+
- # ifndef __UCLIBC_HAS_THREADS__
- # if defined _REENTRANT || defined _THREAD_SAFE
- # warning requested reentrant code, but thread support was disabled
-diff --git a/include/libc-internal.h b/include/libc-internal.h
-index 443b1fc..3ac0b05 100644
---- a/include/libc-internal.h
-+++ b/include/libc-internal.h
-@@ -65,6 +65,11 @@ libc_hidden_proto(__glibc_strerror_r)
- /* internal access to program name */
- extern const char *__uclibc_progname attribute_hidden;
-
-+# ifdef __UCLIBC_HAS_FORTIFY__
-+extern void __chk_fail(void) attribute_noreturn;
-+libc_hidden_proto(__chk_fail)
-+# endif
-+
- # endif /* IS_IN_libc */
-
- #endif /* __ASSEMBLER__ */
-diff --git a/libc/string/x86_64/memcpy.S b/libc/string/x86_64/memcpy.S
-index 6d941e0..9c8169b 100644
---- a/libc/string/x86_64/memcpy.S
-+++ b/libc/string/x86_64/memcpy.S
-@@ -26,12 +26,10 @@
- #define MEMPCPY_P (defined memcpy)
-
- .text
--#if defined __PIC__ && !defined NOT_IN_libc
-+#if defined __PIC__ && !defined NOT_IN_libc && defined __UCLIBC_HAS_FORTIFY__
- ENTRY (__memcpy_chk)
- cmpq %rdx, %rcx
--#if defined __UCLIBC_HAS_SSP__
- jb HIDDEN_JUMPTARGET (__chk_fail)
--#endif
- END (__memcpy_chk)
- #endif
- ENTRY (BP_SYM (memcpy))
-diff --git a/libc/string/x86_64/memset.S b/libc/string/x86_64/memset.S
-index df265f3..6b758ce 100644
---- a/libc/string/x86_64/memset.S
-+++ b/libc/string/x86_64/memset.S
-@@ -29,12 +29,10 @@
- #define LARGE $120000
-
- .text
--#if defined __PIC__ && !defined NOT_IN_libc
-+#if defined __PIC__ && !defined NOT_IN_libc && defined __UCLIBC_HAS_FORTIFY__
- ENTRY (__memset_chk)
- cmpq %rdx, %rcx
--#if defined __UCLIBC_HAS_SSP__
- jb HIDDEN_JUMPTARGET (__chk_fail)
--#endif
- END (__memset_chk)
- #endif
- ENTRY (memset)
-@@ -144,6 +142,6 @@ END (memset)
- libc_hidden_def(memset)
- #endif
-
--#if !BZERO_P && defined __PIC__ && !defined NOT_IN_libc
-+#if !BZERO_P && defined __PIC__ && !defined NOT_IN_libc && defined __UCLIBC_HAS_FORTIFY__
- strong_alias (__memset_chk, __memset_zero_constant_len_parameter)
- #endif
-diff --git a/libc/sysdeps/linux/common/ssp.c b/libc/sysdeps/linux/common/ssp.c
-index d81c706..df242cc 100644
---- a/libc/sysdeps/linux/common/ssp.c
-+++ b/libc/sysdeps/linux/common/ssp.c
-@@ -87,6 +87,7 @@ void __stack_smash_handler(char func[], int damaged)
- }
- #endif
-
-+#ifdef __UCLIBC_HAS_SSP__
- void __stack_chk_fail(void) attribute_noreturn __cold;
- void __stack_chk_fail(void)
- {
-@@ -101,8 +102,9 @@ void __stack_chk_fail(void)
- while(1)
- terminate();
- }
-+#endif
-
--void __chk_fail(void) attribute_noreturn;
-+#ifdef __UCLIBC_HAS_FORTIFY__
- void __chk_fail(void)
- {
- static const char msg1[] = "buffer overflow detected: ";
-@@ -116,4 +119,6 @@ void __chk_fail(void)
- while(1)
- terminate();
- }
-+libc_hidden_def(__chk_fail)
-+#endif
-
---
-cgit v0.8.2.1
diff --git a/main/libc0.9.32/pthread.patch b/main/libc0.9.32/pthread.patch
deleted file mode 100644
index 47f99b217d..0000000000
--- a/main/libc0.9.32/pthread.patch
+++ /dev/null
@@ -1,81 +0,0 @@
---- uClibc-0.9.32-rc2.orig/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S
-+++ uClibc-0.9.32-rc2/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S
-@@ -163,7 +163,7 @@
- cfi_startproc
- # ifndef __ASSUME_FUTEX_CLOCK_REALTIME
- # ifdef __PIC__
-- cmpl $0, __have_futex_clock_realtime(%rip)
-+ cmpl $0, __have_futex_clock_realtime@GOTOFF(%rip)
- # else
- cmpl $0, __have_futex_clock_realtime
- # endif
---- uClibc-0.9.32-rc2.orig/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevelrobustlock.S
-+++ uClibc-0.9.32-rc2/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevelrobustlock.S
-@@ -118,7 +118,7 @@
- cfi_startproc
- # ifndef __ASSUME_FUTEX_CLOCK_REALTIME
- # ifdef __PIC__
-- cmpl $0, __have_futex_clock_realtime(%rip)
-+ cmpl $0, __have_futex_clock_realtime@GOTOFF(%rip)
- # else
- cmpl $0, __have_futex_clock_realtime
- # endif
---- uClibc-0.9.32-rc2.orig/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
-+++ uClibc-0.9.32-rc2/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
-@@ -98,7 +98,7 @@
- 22:
- #ifndef __ASSUME_FUTEX_CLOCK_REALTIME
- # ifdef __PIC__
-- cmpl $0, __have_futex_clock_realtime(%rip)
-+ cmpl $0, __have_futex_clock_realtime@GOTOFF(%rip)
- # else
- cmpl $0, __have_futex_clock_realtime
- # endif
-@@ -437,14 +437,6 @@
- /* Only clocks 0 and 1 are allowed so far. Both are handled in the
- kernel. */
- leaq 32(%rsp), %rsi
--# ifdef SHARED
-- movq __vdso_clock_gettime@GOTPCREL(%rip), %rax
-- movq (%rax), %rax
-- PTR_DEMANGLE (%rax)
-- jz 26f
-- call *%rax
-- jmp 27f
--# endif
- 26: movl $__NR_clock_gettime, %eax
- syscall
- 27:
---- uClibc-0.9.32-rc2.orig/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedrdlock.S
-+++ uClibc-0.9.32-rc2/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedrdlock.S
-@@ -96,7 +96,7 @@
- 11:
- #ifndef __ASSUME_FUTEX_CLOCK_REALTIME
- # ifdef __PIC__
-- cmpl $0, __have_futex_clock_realtime(%rip)
-+ cmpl $0, __have_futex_clock_realtime@GOTOFF(%rip)
- # else
- cmpl $0, __have_futex_clock_realtime
- # endif
---- uClibc-0.9.32-rc2.orig/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedwrlock.S
-+++ uClibc-0.9.32-rc2/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedwrlock.S
-@@ -93,7 +93,7 @@
- 11:
- #ifndef __ASSUME_FUTEX_CLOCK_REALTIME
- # ifdef __PIC__
-- cmpl $0, __have_futex_clock_realtime(%rip)
-+ cmpl $0, __have_futex_clock_realtime@GOTOFF(%rip)
- # else
- cmpl $0, __have_futex_clock_realtime
- # endif
---- uClibc-0.9.32-rc2.orig/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S
-+++ uClibc-0.9.32-rc2/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S
-@@ -61,7 +61,7 @@
-
- #ifndef __ASSUME_FUTEX_CLOCK_REALTIME
- # ifdef __PIC__
-- cmpl $0, __have_futex_clock_realtime(%rip)
-+ cmpl $0, __have_futex_clock_realtime@GOTOFF(%rip)
- # else
- cmpl $0, __have_futex_clock_realtime
- # endif
diff --git a/main/libc0.9.32/uclibcconfig.arm b/main/libc0.9.32/uclibcconfig.arm
index 6dda6e9dee..fa8a214194 100644
--- a/main/libc0.9.32/uclibcconfig.arm
+++ b/main/libc0.9.32/uclibcconfig.arm
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
-# Version: 0.9.32-rc1
-# Fri Jan 14 18:23:09 2011
+# Version: 0.9.32-rc3
+# Fri Mar 18 13:13:20 2011
#
# TARGET_alpha is not set
TARGET_arm=y
@@ -28,6 +28,7 @@ TARGET_arm=y
# TARGET_vax is not set
# TARGET_x86_64 is not set
# TARGET_xtensa is not set
+# TARGET_c6x is not set
#
# Target Architecture Features and Options
@@ -110,6 +111,7 @@ COMPAT_ATEXIT=y
UCLIBC_SUSV3_LEGACY=y
UCLIBC_SUSV3_LEGACY_MACROS=y
UCLIBC_SUSV4_LEGACY=y
+# UCLIBC_STRICT_HEADERS is not set
# UCLIBC_HAS_STUBS is not set
UCLIBC_HAS_SHADOW=y
UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y
diff --git a/main/libc0.9.32/uclibcconfig.powerpc b/main/libc0.9.32/uclibcconfig.powerpc
index 370078a446..70b5089e43 100644
--- a/main/libc0.9.32/uclibcconfig.powerpc
+++ b/main/libc0.9.32/uclibcconfig.powerpc
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
-# Version: 0.9.32-rc2
-# Wed Feb 9 01:27:16 2011
+# Version: 0.9.32-rc3
+# Fri Mar 18 13:12:53 2011
#
# TARGET_alpha is not set
# TARGET_arm is not set
@@ -28,32 +28,13 @@ TARGET_powerpc=y
# TARGET_vax is not set
# TARGET_x86_64 is not set
# TARGET_xtensa is not set
+# TARGET_c6x is not set
#
# Target Architecture Features and Options
#
TARGET_ARCH="powerpc"
FORCE_OPTIONS_FOR_ARCH=y
-# CONFIG_ARM_OABI is not set
-# CONFIG_ARM_EABI is not set
-# CONFIG_GENERIC_ARM is not set
-# CONFIG_ARM610 is not set
-# CONFIG_ARM710 is not set
-# CONFIG_ARM7TDMI is not set
-# CONFIG_ARM720T is not set
-# CONFIG_ARM920T is not set
-# CONFIG_ARM922T is not set
-# CONFIG_ARM926T is not set
-# CONFIG_ARM10T is not set
-# CONFIG_ARM1136JF_S is not set
-# CONFIG_ARM1176JZ_S is not set
-# CONFIG_ARM1176JZF_S is not set
-# CONFIG_ARM_CORTEX_M3 is not set
-# CONFIG_ARM_CORTEX_M1 is not set
-# CONFIG_ARM_SA110 is not set
-# CONFIG_ARM_SA1100 is not set
-# CONFIG_ARM_XSCALE is not set
-# CONFIG_ARM_IWMMXT is not set
CONFIG_CLASSIC=y
# CONFIG_E500 is not set
TARGET_SUBARCH="classic"
@@ -62,8 +43,6 @@ TARGET_SUBARCH="classic"
# Using ELF file format
#
ARCH_BIG_ENDIAN=y
-# ARCH_WANTS_BIG_ENDIAN is not set
-# ARCH_WANTS_LITTLE_ENDIAN is not set
#
# Using Big Endian
@@ -116,6 +95,7 @@ COMPAT_ATEXIT=y
UCLIBC_SUSV3_LEGACY=y
UCLIBC_SUSV3_LEGACY_MACROS=y
UCLIBC_SUSV4_LEGACY=y
+# UCLIBC_STRICT_HEADERS is not set
# UCLIBC_HAS_STUBS is not set
UCLIBC_HAS_SHADOW=y
UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y
diff --git a/main/libc0.9.32/uclibcconfig.x86 b/main/libc0.9.32/uclibcconfig.x86
index b1d11065c6..2b01b203d9 100644
--- a/main/libc0.9.32/uclibcconfig.x86
+++ b/main/libc0.9.32/uclibcconfig.x86
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
-# Version: 0.9.32-git
-# Sat Oct 23 09:34:52 2010
+# Version: 0.9.32-rc3
+# Fri Mar 18 10:57:30 2011
#
# TARGET_alpha is not set
# TARGET_arm is not set
@@ -28,6 +28,7 @@ TARGET_i386=y
# TARGET_vax is not set
# TARGET_x86_64 is not set
# TARGET_xtensa is not set
+# TARGET_c6x is not set
#
# Target Architecture Features and Options
@@ -109,6 +110,7 @@ COMPAT_ATEXIT=y
UCLIBC_SUSV3_LEGACY=y
UCLIBC_SUSV3_LEGACY_MACROS=y
UCLIBC_SUSV4_LEGACY=y
+# UCLIBC_STRICT_HEADERS is not set
# UCLIBC_HAS_STUBS is not set
UCLIBC_HAS_SHADOW=y
UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y
diff --git a/main/libc0.9.32/uclibcconfig.x86_64 b/main/libc0.9.32/uclibcconfig.x86_64
index a07766c808..817718f380 100644
--- a/main/libc0.9.32/uclibcconfig.x86_64
+++ b/main/libc0.9.32/uclibcconfig.x86_64
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
-# Version: 0.9.32-git
-# Mon Nov 29 12:34:17 2010
+# Version: 0.9.32-rc3
+# Fri Mar 18 13:10:43 2011
#
# TARGET_alpha is not set
# TARGET_arm is not set
@@ -28,6 +28,7 @@
# TARGET_vax is not set
TARGET_x86_64=y
# TARGET_xtensa is not set
+# TARGET_c6x is not set
#
# Target Architecture Features and Options
@@ -92,6 +93,7 @@ COMPAT_ATEXIT=y
UCLIBC_SUSV3_LEGACY=y
UCLIBC_SUSV3_LEGACY_MACROS=y
UCLIBC_SUSV4_LEGACY=y
+# UCLIBC_STRICT_HEADERS is not set
# UCLIBC_HAS_STUBS is not set
UCLIBC_HAS_SHADOW=y
UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y
diff --git a/main/libdrm/APKBUILD b/main/libdrm/APKBUILD
index 51728ec1c4..60580e9299 100644
--- a/main/libdrm/APKBUILD
+++ b/main/libdrm/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=libdrm
-pkgver=2.4.23
-pkgrel=1
+pkgver=2.4.24
+pkgrel=0
pkgdesc="Userspace interface to kernel DRM services"
url="http://dri.freedesktop.org/"
arch="all"
@@ -23,4 +23,4 @@ package() {
make DESTDIR="$pkgdir" install || return 1
}
-md5sums="7577ff36ec364d88fae466d4f7fc5fc6 libdrm-2.4.23.tar.bz2"
+md5sums="8d802bf3b368f9fac0d7d17516a9436f libdrm-2.4.24.tar.bz2"
diff --git a/main/libpri/APKBUILD b/main/libpri/APKBUILD
index 40d3240b6f..aec4f46831 100644
--- a/main/libpri/APKBUILD
+++ b/main/libpri/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Timo Teras <timo.teras@iki.fi>
# Maintainer: Timo Teras <timo.teras@iki.fi>
pkgname=libpri
-pkgver=1.4.12_beta2
-_pkgver=1.4.12-beta2
+pkgver=1.4.12_beta3
+_pkgver=1.4.12-beta3
pkgrel=0
pkgdesc="Primary Rate ISDN (PRI) library"
url="http://www.asterisk.orig"
@@ -30,4 +30,4 @@ package() {
make LDCONFIG="echo" INSTALL_PREFIX="$pkgdir" install
}
-md5sums="bdef64f15e658f109bac072c99be806a libpri-1.4.12-beta2.tar.gz"
+md5sums="9cbbaa009264b76af930529e8aae8cfd libpri-1.4.12-beta3.tar.gz"
diff --git a/main/libxt/APKBUILD b/main/libxt/APKBUILD
index 06ec43b668..1d6af53eb0 100644
--- a/main/libxt/APKBUILD
+++ b/main/libxt/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=libxt
-pkgver=1.0.9
+pkgver=1.1.1
pkgrel=0
pkgdesc="X11 toolkit intrinsics library"
url="http://xorg.freedesktop.org/"
@@ -25,4 +25,4 @@ package() {
cd "$srcdir"/libXt-$pkgver
make -j1 DESTDIR="$pkgdir" install || return 1
}
-md5sums="8a414f8f2327aaa616ca2dcac1f5d8c3 libXt-1.0.9.tar.bz2"
+md5sums="eb22c0a1f172b06b97a3f5ae89768412 libXt-1.1.1.tar.bz2"
diff --git a/main/midori/APKBUILD b/main/midori/APKBUILD
index af450ac103..03bf5159ba 100644
--- a/main/midori/APKBUILD
+++ b/main/midori/APKBUILD
@@ -1,6 +1,6 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=midori
-pkgver=0.3.2
+pkgver=0.3.3
pkgrel=0
pkgdesc="A lightweight web browser based on Gtk WebKit"
url="http://www.twotoasts.de/index.php?/pages/midori_summary.html"
@@ -48,4 +48,4 @@ package() {
# PAX does not like the JIT
paxctl -c -m -p "$pkgdir"/usr/bin/midori
}
-md5sums="99d9f0b936e7052b41c3d1e7a7d7d672 midori-0.3.2.tar.bz2"
+md5sums="e1262cc7cc0c1773c331ab794480f037 midori-0.3.3.tar.bz2"
diff --git a/main/sqlite/APKBUILD b/main/sqlite/APKBUILD
index 861d1ff2fc..f1f5abd76a 100644
--- a/main/sqlite/APKBUILD
+++ b/main/sqlite/APKBUILD
@@ -6,7 +6,7 @@ _y=${pkgver%.*}
_y=${_y#*.}
_z=${pkgver##*.}
_ver=${_x}0${_y}0${_z}00
-pkgrel=0
+pkgrel=1
pkgdesc="A C library that implements an SQL database engine"
url="http://www.sqlite.org/"
arch="all"
@@ -26,7 +26,7 @@ prepare() {
build() {
cd "$_builddir"
export LTLINK_EXTRAS="-ldl"
- export CFLAGS="$CFLAGS -DSQLITE_ENABLE_FTS3=1 -DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_SECURE_DELETE -Iext/fts3"
+ export CFLAGS="$CFLAGS -DSQLITE_ENABLE_FTS3=1 -DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_SECURE_DELETE -DSQLITE_ENABLE_UNLOCK_NOTIFY -Iext/fts3"
./configure --prefix=/usr \
--enable-threadsafe \
--enable-load-extension \
diff --git a/main/xulrunner/APKBUILD b/main/xulrunner/APKBUILD
index 7fbc3889af..def88a3fd7 100644
--- a/main/xulrunner/APKBUILD
+++ b/main/xulrunner/APKBUILD
@@ -1,7 +1,8 @@
# Contributor: William Pitcock <nenolod@dereferenced.org>
# Maintainer: William Pitcock <nenolod@dereferenced.org>
pkgname=xulrunner
-pkgver=1.9.2.15
+pkgver=2.0_rc2
+_ffoxver=4.0rc2
pkgrel=0
pkgdesc="runtime environment for xul-based applications"
url="http://developer.mozilla.org/en/XULRunner"
@@ -26,20 +27,23 @@ depends_dev="nspr-dev
startup-notification-dev
sqlite-dev
libidl-dev
- fts-dev"
+ fts-dev
+ mesa-dev"
makedepends="$depends_dev
autoconf2.13
python
zip
+ yasm
autoconf
automake
libtool"
install=""
subpackages="$pkgname-dev"
-source="http://releases.mozilla.org/pub/mozilla.org/xulrunner/releases/${pkgver}/source/${pkgname}-${pkgver}.source.tar.bz2
+# http://releases.mozilla.org/pub/mozilla.org/xulrunner/releases/${pkgver}/source/${pkgname}-${pkgver}.source.tar.bz2
+source="http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${_ffoxver}/source/firefox-${_ffoxver}.source.tar.bz2
mozconfig
@@ -47,17 +51,20 @@ source="http://releases.mozilla.org/pub/mozilla.org/xulrunner/releases/${pkgver}
fix-xulrunner-launcher.patch
mozilla-pkgconfig.patch
- xulrunner-png14.patch
+ ipc-chromium-execinfo.patch
+
+ xulrunner-mozalloc.patch
xulrunner-version.patch
- mozjs-c99math.patch
+ xpcom-execinfo.patch
- ipc-chromium-execinfo.patch
+ mozjs-c99math.patch
+ gecko-c99math.patch
fix-mozilla-portability-cluelessness-libpr0n-edition.patch"
-_xulrunner_version="${pkgver%.*}"
-_builddir="${srcdir}/mozilla-${_xulrunner_version}"
+_xulrunner_version="1.9.2"
+_builddir="${srcdir}/mozilla-2.0"
prepare() {
local i
@@ -85,12 +92,12 @@ build() {
package() {
cd "$_builddir"
- make -j1 DESTDIR="$pkgdir" install || return 1
+ make -j1 DESTDIR="$pkgdir" -f client.mk install || return 1
msg "Setting up compatibility symlinks..."
ln -sf /usr/lib/xulrunner-${_xulrunner_version}/libxul.so "${pkgdir}"/usr/lib/libxul.so
ln -sf /usr/lib/xulrunner-${_xulrunner_version}/libxpcom.so "${pkgdir}"/usr/lib/libxpcom.so
- ln -sf /usr/lib/xulrunner-${_xulrunner_version}/libmozjs.so "${pkgdir}"/usr/lib/libmozjs.so
+ ln -sf /usr/lib/xulrunner-${_xulrunner_version}/libmozalloc.so "${pkgdir}"/usr/lib/libmozalloc.so
}
dev() {
@@ -102,13 +109,15 @@ dev() {
mv "${pkgdir}"/usr/include "${subpkgdir}"/usr/include
}
-md5sums="09c688b5dabe45f23c653af24d3abfe4 xulrunner-1.9.2.15.source.tar.bz2
-d0908177f4c3879817f5dc7287cbb2b2 mozconfig
-faecc31fd371db93311109117f6bcc40 enable-x86_64-tracemonkey.patch
+md5sums="060ad2571e781ca72971c4dcdeb79cff firefox-4.0rc2.source.tar.bz2
+d7a79ba952885c05cc41789faad30bba mozconfig
+78291eb2cd97553d8fd76306c52d40f1 enable-x86_64-tracemonkey.patch
86d33a17286131d9ef4cdfb35ee56f1f fix-xulrunner-launcher.patch
-d839d1c4ef736e6d89ccf91b23b965a4 mozilla-pkgconfig.patch
-39e3c85c80f7897ac463e7fe7ad9a343 xulrunner-png14.patch
+02c23dc4ebd88e445533314716331818 mozilla-pkgconfig.patch
+60cb07e288889dd5b1b882eecc9f6e86 ipc-chromium-execinfo.patch
+d38ecbb7bb31032d3e1ced8939e26abd xulrunner-mozalloc.patch
371303c5bdc4fa0d955d14521b93b69d xulrunner-version.patch
-03b73ac11442a26a978c53a6c114ef2b mozjs-c99math.patch
-ac1c3725167eb26c89d62b1818810ee4 ipc-chromium-execinfo.patch
-7123ec519e3a4d2c8d07369065a61dc7 fix-mozilla-portability-cluelessness-libpr0n-edition.patch"
+b349739dcac45f3cc0ccaf2943abf6ed xpcom-execinfo.patch
+b187440207e773e9be606594d2c99216 mozjs-c99math.patch
+aacbb29e1448f9af6697e8a885b9bbfa gecko-c99math.patch
+d18eb944a7a5275a1837b2a536689186 fix-mozilla-portability-cluelessness-libpr0n-edition.patch"
diff --git a/main/xulrunner/enable-x86_64-tracemonkey.patch b/main/xulrunner/enable-x86_64-tracemonkey.patch
index f4e1da036c..30cccf2e3b 100644
--- a/main/xulrunner/enable-x86_64-tracemonkey.patch
+++ b/main/xulrunner/enable-x86_64-tracemonkey.patch
@@ -11,15 +11,3 @@
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/main/xulrunner/fix-mozilla-portability-cluelessness-libpr0n-edition.patch b/main/xulrunner/fix-mozilla-portability-cluelessness-libpr0n-edition.patch
index 4fc112a072..33ba8ef6d2 100644
--- a/main/xulrunner/fix-mozilla-portability-cluelessness-libpr0n-edition.patch
+++ b/main/xulrunner/fix-mozilla-portability-cluelessness-libpr0n-edition.patch
@@ -1,14 +1,14 @@
---- mozilla-1.9.2.orig/gfx/qcms/qcmstypes.h
-+++ mozilla-1.9.2/gfx/qcms/qcmstypes.h
-@@ -7,9 +7,9 @@
+--- mozilla-2.0.orig/gfx/qcms/qcmstypes.h
++++ mozilla-2.0/gfx/qcms/qcmstypes.h
+@@ -7,9 +7,8 @@
/* prtypes.h defines IS_LITTLE_ENDIAN and IS_BIG ENDIAN */
-#if defined (__SVR4) && defined (__sun)
-+#if 1
- /* int_types.h gets included somehow, so avoid redefining the types differently */
+-/* int_types.h gets included somehow, so avoid redefining the types differently */
-#include <sys/int_types.h>
++#if 1
+#include <stdint.h>
- #else
- typedef PRInt8 int8_t;
- typedef PRUint8 uint8_t;
+ #elif defined (_AIX)
+ #include <sys/types.h>
+ #elif !defined(ANDROID)
diff --git a/main/xulrunner/gecko-c99math.patch b/main/xulrunner/gecko-c99math.patch
new file mode 100644
index 0000000000..cdb846442b
--- /dev/null
+++ b/main/xulrunner/gecko-c99math.patch
@@ -0,0 +1,11 @@
+--- mozilla-2.0.orig/content/canvas/src/nsCanvasRenderingContext2D.cpp
++++ mozilla-2.0/content/canvas/src/nsCanvasRenderingContext2D.cpp
+@@ -159,7 +159,7 @@
+ // NOTE: '!!' casts an int to bool without spamming MSVC warning C4800.
+ return !!_finite(d);
+ #else
+- return finite(d);
++ return isfinite(d);
+ #endif
+ }
+
diff --git a/main/xulrunner/ipc-chromium-execinfo.patch b/main/xulrunner/ipc-chromium-execinfo.patch
index 48fc1c6a33..4bbc143d81 100644
--- a/main/xulrunner/ipc-chromium-execinfo.patch
+++ b/main/xulrunner/ipc-chromium-execinfo.patch
@@ -1,14 +1,14 @@
---- mozilla-1.9.2.orig/ipc/chromium/src/base/debug_util_posix.cc
-+++ mozilla-1.9.2/ipc/chromium/src/base/debug_util_posix.cc
-@@ -6,7 +6,6 @@
- #include "base/debug_util.h"
-
- #include <errno.h>
+--- mozilla-2.0.orig/ipc/chromium/src/base/debug_util_posix.cc
++++ mozilla-2.0/ipc/chromium/src/base/debug_util_posix.cc
+@@ -12,7 +12,6 @@
+ #include <sys/types.h>
+ #include <unistd.h>
+ #ifndef ANDROID
-#include <execinfo.h>
- #include <fcntl.h>
- #include <stdio.h>
- #include <sys/stat.h>
-@@ -114,6 +113,7 @@
+ #include <sys/sysctl.h>
+ #endif
+
+@@ -116,6 +115,7 @@
}
StackTrace::StackTrace() {
@@ -16,7 +16,7 @@
const int kMaxCallers = 256;
void* callers[kMaxCallers];
-@@ -128,11 +128,14 @@
+@@ -134,12 +134,15 @@
} else {
trace_.resize(0);
}
@@ -26,8 +26,9 @@
void StackTrace::PrintBacktrace() {
+#if 0
fflush(stderr);
+ #ifndef ANDROID
backtrace_symbols_fd(&trace_[0], trace_.size(), STDERR_FILENO);
+#endif
+ #endif
}
- void StackTrace::OutputToStream(std::ostream* os) {
diff --git a/main/xulrunner/mozconfig b/main/xulrunner/mozconfig
index 90b0bea4c2..54786a3038 100644
--- a/main/xulrunner/mozconfig
+++ b/main/xulrunner/mozconfig
@@ -30,6 +30,7 @@ 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-jemalloc
export LIBS="-lfts"
export BUILD_OFFICIAL=1
diff --git a/main/xulrunner/mozilla-pkgconfig.patch b/main/xulrunner/mozilla-pkgconfig.patch
index 9331e04897..5c8bd0fd6e 100644
--- a/main/xulrunner/mozilla-pkgconfig.patch
+++ b/main/xulrunner/mozilla-pkgconfig.patch
@@ -6,7 +6,7 @@ diff -Nur mozilla-1.9.2.orig/xulrunner/installer/libxul-embedding.pc.in mozilla-
Description: Static library for version-independent embedding of the Mozilla runtime
Version: %MOZILLA_VERSION%
+Requires: %NSPR_NAME% >= %NSPR_VERSION%
- Libs: -L${sdkdir}/lib -lxpcomglue
+ Libs: -L${sdkdir}/lib -lxpcomglue -ldl
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
@@ -55,6 +55,6 @@ diff -Nur mozilla-1.9.2.orig/xulrunner/installer/mozilla-js.pc.in mozilla-1.9.2/
@@ -7,4 +7,4 @@
Version: %MOZILLA_VERSION%
Requires: %NSPR_NAME% >= %NSPR_VERSION%
- Libs: -L${sdkdir}/lib -lmozjs
+ Libs: -L${sdkdir}/lib %MOZ_JS_LINK%
-Cflags: -I${includedir} -DXP_UNIX -DJS_THREADSAFE
+Cflags: -I${includedir} -I${includedir}/js -DXP_UNIX -DJS_THREADSAFE
diff --git a/main/xulrunner/mozjs-c99math.patch b/main/xulrunner/mozjs-c99math.patch
index ce05c17965..fdf346e495 100644
--- a/main/xulrunner/mozjs-c99math.patch
+++ b/main/xulrunner/mozjs-c99math.patch
@@ -5,7 +5,29 @@
return _finite(d);
#else
- return finite(d);
-+ return __finite(d);
++ return isfinite(d);
+ #endif
+ }
+
+--- mozilla-2.0.orig/js/src/ctypes/CTypes.cpp
++++ mozilla-2.0/js/src/ctypes/CTypes.cpp
+@@ -464,7 +464,7 @@
+ #ifdef WIN32
+ return _finite(f) != 0;
+ #else
+- return finite(f);
++ return isfinite(f);
+ #endif
+ }
+
+--- mozilla-2.0.orig/content/base/public/nsContentUtils.h
++++ mozilla-2.0/content/base/public/nsContentUtils.h
+@@ -1942,7 +1942,7 @@
+ #ifdef WIN32
+ return _finite(f);
+ #else
+- return finite(f);
++ return isfinite(f);
#endif
}
diff --git a/main/xulrunner/xpcom-execinfo.patch b/main/xulrunner/xpcom-execinfo.patch
new file mode 100644
index 0000000000..1fe3209670
--- /dev/null
+++ b/main/xulrunner/xpcom-execinfo.patch
@@ -0,0 +1,23 @@
+--- mozilla-2.0.orig/xpcom/threads/nsThread.cpp
++++ mozilla-2.0/xpcom/threads/nsThread.cpp
+@@ -54,7 +54,9 @@
+ && defined(_GNU_SOURCE)
+ # define MOZ_CANARY
+ # include <unistd.h>
+-# include <execinfo.h>
++# if !defined(__UCLIBC__)
++# include <execinfo.h>
++# endif
+ # include <signal.h>
+ # include <fcntl.h>
+ # include "nsXULAppAPI.h"
+@@ -562,7 +564,9 @@
+ const char msg[29] = "event took too long to run:\n";
+ // use write to be safe in the signal handler
+ write(Canary::sOutputFD, msg, sizeof(msg));
++#if !defined(__UCLIBC__)
+ backtrace_symbols_fd(array, backtrace(array, 30), Canary::sOutputFD);
++#endif
+ }
+
+ #endif
diff --git a/main/xulrunner/xulrunner-mozalloc.patch b/main/xulrunner/xulrunner-mozalloc.patch
new file mode 100644
index 0000000000..31027a23e8
--- /dev/null
+++ b/main/xulrunner/xulrunner-mozalloc.patch
@@ -0,0 +1,11 @@
+--- mozilla-2.0.orig/memory/mozalloc/mozalloc.cpp
++++ mozilla-2.0/memory/mozalloc/mozalloc.cpp
+@@ -237,7 +237,7 @@
+ return 0;
+
+ #if defined(MOZ_MEMORY)
+- return malloc_usable_size(ptr);
++ return 0;
+ #elif defined(XP_MACOSX)
+ return malloc_size(ptr);
+ #elif defined(XP_WIN)
diff --git a/main/xulrunner/xulrunner-png14.patch b/main/xulrunner/xulrunner-png14.patch
deleted file mode 100644
index be80e30f96..0000000000
--- a/main/xulrunner/xulrunner-png14.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/modules/libpr0n/encoders/png/nsPNGEncoder.cpp.orig 2010-01-17 00:15:53.979744638 +0100
-+++ b/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/testing/irrlicht/APKBUILD b/testing/irrlicht/APKBUILD
new file mode 100644
index 0000000000..6d1405ba2d
--- /dev/null
+++ b/testing/irrlicht/APKBUILD
@@ -0,0 +1,77 @@
+# Maintainer: Jeff Bilyk <jbilyk@alpinelinux.org>
+pkgname=irrlicht
+pkgver=1.7.2
+_pkgmajver=1.7
+pkgrel=0
+pkgdesc="3D graphics engine"
+url="http://irrlicht.sourceforge.net"
+arch="all"
+license="ZLIB"
+depends=
+depends_dev="mesa-dev jpeg-dev bzip2 libpng-dev zlib-dev"
+makedepends="$depends_dev"
+install=""
+source="http://downloads.sourceforge.net/irrlicht/irrlicht-$pkgver.zip"
+
+_builddir="$srcdir"/$pkgname-$pkgver/source/Irrlicht
+prepare() {
+ local i
+ cd "$_builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$_builddir"
+ make sharedlib || return 1
+ make || return 1
+
+ #from arch pkgbuild: example build helper
+ ln -s libIrrlicht.so.$pkgver "$srcdir"/$pkgname-$pkgver/lib/Linux/libIrrlicht.so
+
+ cd ../../examples
+ # Fix examples building
+ sed -i '/define USE_IRRKLANG/s:.*://&:' ./Demo/CDemo.h
+ make || return 1
+}
+
+package() {
+ cd "$_builddir"
+
+ mkdir -p "$pkgdir"/usr/lib
+ mkdir -p "$pkgdir"/usr/share/licenses/$pkgname
+ mkdir -p "$pkgdir"/usr/share/$pkgname/examples/bin
+ mkdir -p "$pkgdir"/usr/share/doc/$pkgname
+ mkdir -p "$pkgdir"/usr/include/$pkgname/include
+
+ make INSTALL_DIR="$pkgdir" install || return 1
+
+ cd ../..
+ install -m644 readme.txt "$pkgdir"/usr/share/licenses/$pkgname
+
+ #from arch pkgbuild: install static library and fix perms
+ install -m644 lib/Linux/libIrrlicht.a "$pkgdir"/usr/lib
+
+ #from arch pkgbuild: install media file examples
+ cp -r media "$pkgdir"/usr/share/$pkgname
+
+ #from arch pkgbuild: install docs
+ cp -r doc/* "$pkgdir"/usr/share/doc/$pkgname
+ rm -f "$pkgdir"/usr/share/doc/$pkgname/*.txt
+
+ cd "$pkgdir"/usr/lib
+ mv ../../libIrrlicht* ./
+ ln -s libIrrlicht.so.$pkgver libIrrlicht.so.1
+ ln -s libIrrlicht.so.$pkgver libIrrlicht.so.$_pkgmajver
+
+ mv "$pkgdir"/../include/* "$pkgdir"/usr/include/$pkgname/include/
+ mv "$pkgdir"/usr/include/$pkgname/include/irrlicht/* "$pkgdir"/usr/include/$pkgname/include/
+ rm -rf "$pkgdir"/../include/
+
+ install -m755 "$srcdir"/$pkgname-$pkgver/bin/Linux/* "$pkgdir"/usr/share/$pkgname/examples/bin/
+}
+
+md5sums="eb627d4c432bf73f12bc6d9ddc700b07 irrlicht-1.7.2.zip"
diff --git a/testing/libxp/APKBUILD b/testing/libxp/APKBUILD
new file mode 100644
index 0000000000..ff2b4cb9b1
--- /dev/null
+++ b/testing/libxp/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=libxp
+pkgver=1.0.1
+pkgrel=0
+pkgdesc="X.Org X11 libXp runtime library"
+url="http://www.x.org"
+arch="all"
+license="MIT"
+depends=
+depends_dev="util-macros libx11-dev libxext-dev libxau-dev printproto"
+makedepends="$depends_dev"
+install=""
+subpackages="$pkgname-dev $pkgname-doc"
+source="http://xorg.freedesktop.org/releases/individual/lib/libXp-$pkgver.tar.bz2"
+
+_builddir="$srcdir"/libXp-$pkgver
+prepare() {
+ local i
+ cd "$_builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$_builddir"
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man \
+ --infodir=/usr/share/info \
+ --localstatedir=/var \
+ || return 1
+ make || return 1
+}
+
+package() {
+ cd "$_builddir"
+ make DESTDIR="$pkgdir" install || return 1
+}
+
+md5sums="7ae1d63748e79086bd51a633da1ff1a9 libXp-1.0.1.tar.bz2"
diff --git a/testing/printproto/APKBUILD b/testing/printproto/APKBUILD
new file mode 100644
index 0000000000..dc1c0b415c
--- /dev/null
+++ b/testing/printproto/APKBUILD
@@ -0,0 +1,24 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=printproto
+pkgver=1.0.5
+pkgrel=0
+pkgdesc="X11 print extension wire protocol"
+url="http://xorg.freedesktop.org/"
+arch="noarch"
+license="custom"
+depends=""
+depends_dev="util-macros"
+makedepends="$depends_dev"
+source="http://xorg.freedesktop.org/releases/individual/proto/$pkgname-$pkgver.tar.bz2"
+
+build() {
+ cd "$srcdir"/$pkgname-$pkgver
+ ./configure --prefix=/usr
+ make || return 1
+}
+
+package() {
+ cd "$srcdir"/$pkgname-$pkgver
+ make DESTDIR="$pkgdir" install || return 1
+}
+md5sums="99d0e25feea2fead7d8325b7000b41c3 printproto-1.0.5.tar.bz2"
diff --git a/testing/supertuxkart/APKBUILD b/testing/supertuxkart/APKBUILD
new file mode 100644
index 0000000000..cc47cc6e3f
--- /dev/null
+++ b/testing/supertuxkart/APKBUILD
@@ -0,0 +1,43 @@
+# Maintainer: Jeff Bilyk <jbilyk@alpinelinux.org>
+pkgname=supertuxkart
+pkgver=0.7
+pkgrel=0
+pkgdesc="Kart racing game"
+url="http://supertuxkart.sourceforge.net"
+arch="x86 x86_64"
+license="GPL"
+depends=
+depends_dev="irrlicht libvorbis-dev libogg-dev openal-soft-dev mesa-dev jpeg-dev gettext-dev"
+makedepends="$depends_dev"
+source="http://downloads.sourceforge.net/project/$pkgname/SuperTuxKart/0.7/$pkgname-$pkgver-src.tar.bz2"
+
+_builddir="$srcdir"/$pkgname-$pkgver
+
+prepare() {
+ local i
+ cd "$_builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$_builddir"
+ ./configure --prefix=/usr \
+ --datadir=/usr/share \
+ --bindir=/usr/bin \
+ --with-irrlicht=/usr/include/irrlicht \
+ || return 1
+ # From arch pkgbuild
+ sed -i "s#/usr/local#/usr#" src/io/file_manager.cpp
+ sed -i "s#/games#/bin#" $(grep -r "/games" *)
+ make || return 1
+}
+
+package() {
+ cd "$_builddir"
+ make DESTDIR="$pkgdir" install || return 1
+}
+md5sums="2806f271e4d37fee5ad8ca166e1ad489 supertuxkart-0.7-src.tar.bz2"
diff --git a/testing/txt2man/APKBUILD b/testing/txt2man/APKBUILD
new file mode 100644
index 0000000000..72079b72f8
--- /dev/null
+++ b/testing/txt2man/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=txt2man
+pkgver=1.5.6
+pkgrel=0
+pkgdesc="Convert flat ASCII text to man page format"
+url="http://mvertes.free.fr/txt2man/"
+arch="noarch"
+license="GPLv2+"
+depends="gawk"
+makedepends=
+install=""
+subpackages="$pkgname-doc"
+source="http://mvertes.free.fr/download/txt2man-$pkgver.tar.gz
+ fixbashism.patch
+ makefile.patch"
+
+_builddir="$srcdir"/txt2man-$pkgver
+prepare() {
+ local i
+ cd "$_builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$_builddir"
+ make
+}
+
+package() {
+ cd "$_builddir"
+ make DESTDIR="$pkgdir" prefix=/usr mandir=/usr/share/man \
+ install || return 1
+}
+
+md5sums="f301b3dc1872fab1b7740f9f69ff281b txt2man-1.5.6.tar.gz
+586f2e01dde9ef07a2734866797f8646 fixbashism.patch
+311fe2373e54b15eda845467ce68cd72 makefile.patch"
diff --git a/testing/txt2man/fixbashism.patch b/testing/txt2man/fixbashism.patch
new file mode 100644
index 0000000000..f31059d880
--- /dev/null
+++ b/testing/txt2man/fixbashism.patch
@@ -0,0 +1,14 @@
+--- ./bookman.orig
++++ ./bookman
+@@ -83,9 +83,9 @@
+ shift $(($OPTIND - 1))
+ date=${date:-$(date +'%d %B %Y')}
+
+-[[ $1 ]] || set -- $(while read; do echo $REPLY; done)
++[ -n "$1" ] || set -- $(while read REPLY; do echo $REPLY; done)
+
+-[[ $outfile ]] && post="$post >$outfile"
++[ -n "$outfile" ] && post="$post >$outfile"
+
+ {
+ # Compute table of content from postscript output.
diff --git a/testing/txt2man/makefile.patch b/testing/txt2man/makefile.patch
new file mode 100644
index 0000000000..617d4b0d2d
--- /dev/null
+++ b/testing/txt2man/makefile.patch
@@ -0,0 +1,23 @@
+--- ./Makefile.orig
++++ ./Makefile
+@@ -1,5 +1,7 @@
+ # Makefile
+ prefix ?= /usr/local
++bindir ?= $(prefix)/bin
++mandir ?= $(prefix)/share/man
+ version = txt2man-1.5.6
+ BIN = src2man bookman txt2man
+ MAN1 = src2man.1 txt2man.1 bookman.1
+@@ -7,9 +9,9 @@
+ all: $(MAN1)
+
+ install: $(MAN1)
+- mkdir -p $(prefix)/bin $(prefix)/man/man1
+- cp $(BIN) $(prefix)/bin/
+- cp $(MAN1) $(prefix)/man/man1
++ mkdir -p $(DESTDIR)$(bindir) $(DESTDIR)$(mandir)/man1
++ cp $(BIN) $(DESTDIR)$(bindir)
++ cp $(MAN1) $(DESTDIR)$(mandir)/man1
+
+ clean:
+ rm -f *.1 *.txt *.ps *.pdf *.html