diff options
author | Francesco Colista <francesco.colista@gmail.com> | 2011-03-19 11:30:26 +0000 |
---|---|---|
committer | Francesco Colista <francesco.colista@gmail.com> | 2011-03-19 11:30:26 +0000 |
commit | 372b345f3b0740be075c4fa41c4bf31540132521 (patch) | |
tree | 7538c528f86a6c69e0550df9ae8e6e8790304af4 | |
parent | 07bee295f1067e473190dbdd673f90642d47a97f (diff) | |
parent | 3d8a02ea6a3178f1e6c3d85f118bd4c4d43d589e (diff) | |
download | aports-372b345f3b0740be075c4fa41c4bf31540132521.tar.bz2 aports-372b345f3b0740be075c4fa41c4bf31540132521.tar.xz |
Merge git://dev.alpinelinux.org/aports
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 |