aboutsummaryrefslogtreecommitdiffstats
path: root/testing
diff options
context:
space:
mode:
authorFrancesco Colista <francesco.colista@gmail.com>2012-02-09 12:30:34 +0000
committerFrancesco Colista <francesco.colista@gmail.com>2012-02-09 12:30:34 +0000
commite115817423b4eb038c449bef018c712f41bf236a (patch)
tree38bc87674629ae9caaa5cccafd40cca28a5f4c9e /testing
parent534b7b4beacc450aa2961dce44e8165ffd18ac2f (diff)
parenta5b3d6fa4510e6fb23f8cc315c94e21bd1f62034 (diff)
downloadaports-e115817423b4eb038c449bef018c712f41bf236a.tar.bz2
aports-e115817423b4eb038c449bef018c712f41bf236a.tar.xz
Merge git://dev.alpinelinux.org/aports
Diffstat (limited to 'testing')
-rw-r--r--testing/dovecot-deleted-to-trash-plugin/APKBUILD38
-rw-r--r--testing/dssi/APKBUILD57
-rw-r--r--testing/firefox/APKBUILD122
-rw-r--r--testing/firefox/firefox-5.0-asciidel.patch15
-rw-r--r--testing/firefox/firefox-safe.desktop11
-rw-r--r--testing/firefox/firefox.desktop81
-rw-r--r--testing/firefox/mozconfig44
-rw-r--r--testing/imake/APKBUILD11
-rw-r--r--testing/ladspa/0001-proper-build.patch111
-rw-r--r--testing/ladspa/0002-plugin-constructor-destructor.patch119
-rw-r--r--testing/ladspa/0003-plugindir.patch42
-rw-r--r--testing/ladspa/APKBUILD44
-rw-r--r--testing/liblo/APKBUILD42
-rw-r--r--testing/liblrdf/APKBUILD69
-rw-r--r--testing/linux-pam/APKBUILD77
-rw-r--r--testing/linux-pam/base-account.pamd3
-rw-r--r--testing/linux-pam/base-auth.pamd5
-rw-r--r--testing/linux-pam/base-password.pamd3
-rw-r--r--testing/linux-pam/base-session-noninteractive.pamd4
-rw-r--r--testing/linux-pam/base-session.pamd4
-rw-r--r--testing/linux-pam/linux-pam-innetgr.patch54
-rw-r--r--testing/linux-pam/other.pamd6
-rw-r--r--testing/makedepend/APKBUILD40
-rw-r--r--testing/nfdump/APKBUILD15
-rw-r--r--testing/nfdump/nfcapd.confd62
-rw-r--r--testing/nfdump/nfcapd.initd63
-rw-r--r--testing/pam-pgsql/APKBUILD42
-rw-r--r--testing/perl-net-async-http/APKBUILD9
-rw-r--r--testing/raptor2/APKBUILD45
-rw-r--r--testing/raptor2/raptor-curl.patch12
-rw-r--r--testing/rosegarden/APKBUILD44
-rw-r--r--testing/rosegarden/nearbyintf.patch13
-rw-r--r--testing/sshguard/APKBUILD10
-rw-r--r--testing/sshguard/parser.patch11
-rw-r--r--testing/varnish/APKBUILD6
-rw-r--r--testing/vlc/APKBUILD11
-rw-r--r--testing/xen/APKBUILD4
-rw-r--r--testing/xen/pygrub_alpine.patch2
-rw-r--r--testing/xulrunner/0002-Use-C99-math-isfinite.patch43
-rw-r--r--testing/xulrunner/0003-xulrunner-jemalloc-aslr.patch67
-rw-r--r--testing/xulrunner/0004-xulrunner-malloc_usable_size.patch34
-rw-r--r--testing/xulrunner/APKBUILD112
-rw-r--r--testing/xulrunner/ff9-aslr-fix.patch40
-rw-r--r--testing/xulrunner/mozconfig38
-rw-r--r--testing/youtube-dl/APKBUILD37
45 files changed, 1541 insertions, 181 deletions
diff --git a/testing/dovecot-deleted-to-trash-plugin/APKBUILD b/testing/dovecot-deleted-to-trash-plugin/APKBUILD
new file mode 100644
index 0000000000..91a8028ef9
--- /dev/null
+++ b/testing/dovecot-deleted-to-trash-plugin/APKBUILD
@@ -0,0 +1,38 @@
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=dovecot-deleted-to-trash-plugin
+pkgver=0.3
+pkgrel=1
+pkgdesc="Copy deleted email to trash for broken IMAP clients (Outlook)"
+url="http://wiki2.dovecot.org/Plugins/deleted-to-trash"
+arch="all"
+license="unknown"
+depends=""
+makedepends="dovecot-dev"
+install=""
+subpackages=""
+source="http://dev.alpinelinux.org/archive/dovecot-deleted-to-trash-plugin/dovecot-deleted-to-trash-plugin-$pkgver.tar.bz2"
+
+_builddir="$srcdir"/dovecot-deleted-to-trash-plugin-$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 install DESTDIR="$pkgdir" \
+ DOVECOT_IMAP_PLUGIN_PATH=/usr/lib/dovecot
+}
+
+md5sums="63bdfa71312abc2dcaae5cfedd1db622 dovecot-deleted-to-trash-plugin-0.3.tar.bz2"
diff --git a/testing/dssi/APKBUILD b/testing/dssi/APKBUILD
new file mode 100644
index 0000000000..20ab9e044c
--- /dev/null
+++ b/testing/dssi/APKBUILD
@@ -0,0 +1,57 @@
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=dssi
+pkgver=1.1.1
+pkgrel=0
+pkgdesc="Disposable Soft Synth Interface"
+url="http://dssi.sourceforge.net/"
+arch="all"
+license="MIT"
+depends=""
+depends_dev="alsa-lib-dev ladspa-dev"
+makedepends="$depends_dev jack-dev libsamplerate-dev libsndfile-dev liblo-dev"
+install=""
+subpackages="$pkgname-dev $pkgname-doc $pkgname-examples"
+source="http://download.sf.net/sourceforge/dssi/dssi-$pkgver.tar.gz"
+
+_builddir="$srcdir"/dssi-$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
+
+ # sanity check
+ make -C tests controller && tests/controller
+}
+
+package() {
+ cd "$_builddir"
+ make DESTDIR="$pkgdir" install || return 1
+ rm -f "$pkgdir"/usr/lib/*.la \
+ "$pkgdir"/usr/lib/dssi/*.la
+}
+
+examples() {
+ pkgdesc="DSSI plugin examples"
+ mkdir -p "$subpkgdir"/usr/lib/dssi/
+ mv "$pkgdir"/usr/lib/dssi/less_trivial* \
+ "$pkgdir"/usr/lib/dssi/trivial_* \
+ "$pkgdir"/usr/lib/dssi/karplong* \
+ "$subpkgdir"/usr/lib/dssi/
+}
+md5sums="619ab73c883b02dc37ddb37001591f8b dssi-1.1.1.tar.gz"
diff --git a/testing/firefox/APKBUILD b/testing/firefox/APKBUILD
new file mode 100644
index 0000000000..757ab6f2cf
--- /dev/null
+++ b/testing/firefox/APKBUILD
@@ -0,0 +1,122 @@
+# Contributor: William Pitcock <nenolod@dereferenced.org>
+# Maintainer: William Pitcock <nenolod@dereferenced.org>
+pkgname=firefox
+pkgver=10.0
+_pkgver=$pkgver
+_xulver=10.0
+pkgrel=3
+pkgdesc="firefox web browser"
+url="http://www.firefox.com"
+arch="all"
+license="GPL LGPL MPL"
+depends="xulrunner>=${_xulver}"
+makedepends="xulrunner-dev>=${_xulver}
+
+ nspr-dev
+ nss-dev
+ gtk+-dev
+ mesa-dev
+ dbus-glib-dev
+ alsa-lib-dev
+ libvorbis-dev
+ libogg-dev
+ libtheora-dev
+ wireless-tools-dev
+ libnotify-dev
+ libevent-dev
+ libvpx-dev
+ libxt-dev
+ jpeg-dev
+ bzip2-dev
+ hunspell-dev
+ startup-notification-dev
+ sqlite-dev
+ libidl-dev
+
+ autoconf2.13
+
+ python
+ zip
+ yasm
+
+ autoconf
+ automake
+ libtool
+
+ paxctl"
+install=""
+subpackages=""
+source="http://releases.mozilla.org/pub/mozilla.org/${pkgname}/releases/${pkgver}/source/${pkgname}-${_pkgver}.source.tar.bz2
+ mozconfig
+ firefox-5.0-asciidel.patch
+ firefox.desktop
+ firefox-safe.desktop"
+
+options="!strip"
+
+_builddir="${srcdir}/mozilla-release"
+_mozappdir=/usr/lib/firefox-$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
+
+ cp "${srcdir}/mozconfig" .mozconfig
+ echo "ac_add_options --with-libxul-sdk=$(pkg-config --variable=sdkdir libxul)" >> .mozconfig
+ echo "ac_add_options --enable-debug-symbols" >> .mozconfig
+ echo "ac_add_options --disable-install-strip" >>.mozconfig
+}
+
+build() {
+ cd "$_builddir"
+
+ # mozilla's buildsystem is on drugs
+ export CFLAGS="$(echo $CFLAGS | sed -e 's/-Wall//' -e 's/-fexceptions/-fno-exceptions/g')"
+ export CXXFLAGS="$CFLAGS"
+
+# export LDFLAGS="-Wl,-rpath,${_mozappdir}"
+ make -j1 -f client.mk build \
+ STRIP="/bin/true" \
+ MOZ_MAKE_FLAGS="$MAKEOPTS" || return 1
+}
+
+package() {
+ cd "$_builddir"
+ 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 "$_builddir"/browser/branding/official/default48.png \
+ ${pkgdir}/usr/share/pixmaps/firefox.png || return 1
+ install -m644 ${srcdir}/firefox.desktop ${pkgdir}/usr/share/applications/firefox.desktop
+ install -m644 ${srcdir}/firefox-safe.desktop ${pkgdir}/usr/share/applications/firefox-safe.desktop
+
+ # firefox currently does not work with mprotect. disable it for now
+ paxctl -c -m "$pkgdir"/$_mozappdir/firefox || return 1
+
+ # xulrunner stub launcher has changed to using a symlink overlay...
+ # go figure
+ ln -sf /usr/lib/xulrunner-${_xulver} ${pkgdir}/$_mozappdir/xulrunner
+
+ # launcher as symlink is broken from firefox-7.0
+ rm "$pkgdir"/usr/bin/firefox || return 1
+ cat > "$pkgdir"/usr/bin/firefox << __EOF__
+#!/bin/sh
+
+exec $_mozappdir/firefox "\$@"
+__EOF__
+ chmod 755 "$pkgdir"/usr/bin/firefox
+}
+
+md5sums="13c61203ccfa583e5a54b4dc22f41233 firefox-10.0.source.tar.bz2
+3ba2cb7cda675e78eb0eeb0652ee3457 mozconfig
+2328df219e042f6aaec361cbf83cf9e9 firefox-5.0-asciidel.patch
+ba96924ece1d77453e462429037a2ce5 firefox.desktop
+6f38a5899034b7786cb1f75ad42032b8 firefox-safe.desktop"
diff --git a/testing/firefox/firefox-5.0-asciidel.patch b/testing/firefox/firefox-5.0-asciidel.patch
new file mode 100644
index 0000000000..1916cb3b8a
--- /dev/null
+++ b/testing/firefox/firefox-5.0-asciidel.patch
@@ -0,0 +1,15 @@
+Patch from: Bill Nottingham <notting@redhat.com>
+
+diff -up mozilla-release/browser/base/Makefile.in.fu mozilla-release/browser/base/Makefile.in
+--- mozilla-release/browser/base/Makefile.in.fu 2011-06-24 16:50:23.802042086 -0400
++++ mozilla-release/browser/base/Makefile.in 2011-06-24 16:50:42.324042096 -0400
+@@ -62,7 +62,7 @@ EXTRA_JS_MODULES = \
+
+ include $(topsrcdir)/config/rules.mk
+
+-PRE_RELEASE_SUFFIX := ""
++PRE_RELEASE_SUFFIX :=
+
+ DEFINES += \
+ -DMOZ_APP_VERSION=$(MOZ_APP_VERSION) \
+
diff --git a/testing/firefox/firefox-safe.desktop b/testing/firefox/firefox-safe.desktop
new file mode 100644
index 0000000000..1538fc6748
--- /dev/null
+++ b/testing/firefox/firefox-safe.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Encoding=UTF-8
+Exec=firefox -safe-mode %u
+Icon=firefox
+Type=Application
+Terminal=false
+MultipleArgs=false
+Name=Firefox - Safe Mode
+GenericName=Web Browser - Safe Mode
+StartupNotify=false
+Categories=Network;WebBrowser;
diff --git a/testing/firefox/firefox.desktop b/testing/firefox/firefox.desktop
new file mode 100644
index 0000000000..d048ce46c3
--- /dev/null
+++ b/testing/firefox/firefox.desktop
@@ -0,0 +1,81 @@
+[Desktop Entry]
+Exec=firefox %u
+Icon=firefox
+Type=Application
+Terminal=false
+Name=Firefox
+Name[bn]=ফায়ারফক্স3
+Name[eo]=Fajrovulpo3
+Name[fi]=Firefox3
+Name[pa]=ਫਾਇਰਫੋਕਸ3
+Name[tg]=Рӯбоҳи оташин3
+GenericName=Web Browser
+GenericName[af]=Web Blaaier
+GenericName[ar]=متصفح ويب
+GenericName[az]=Veb Səyyahı
+GenericName[bg]=Браузър
+GenericName[bn]=ওয়েব ব্রাউজার
+GenericName[br]=Furcher ar Gwiad
+GenericName[bs]=WWW Preglednik
+GenericName[ca]=Fullejador web
+GenericName[cs]=WWW prohlížeč
+GenericName[cy]=Porydd Gwe
+GenericName[da]=Browser
+GenericName[de]=Web-Browser
+GenericName[el]=Περιηγητής Ιστού
+GenericName[eo]=TTT-legilo
+GenericName[es]=Navegador web
+GenericName[et]=Veebilehitseja
+GenericName[eu]=Web arakatzailea
+GenericName[fa]=مرورگر وب
+GenericName[fi]=WWW-selain
+GenericName[fo]=Alnótsfar
+GenericName[fr]=Navigateur web
+GenericName[gl]=Navegador Web
+GenericName[he]=דפדפן אינטרנט
+GenericName[hi]=वेब ब्राउज़र
+GenericName[hr]=Web preglednik
+GenericName[hu]=Webböngésző
+GenericName[is]=Vafri
+GenericName[it]=Browser Web
+GenericName[ja]=ウェブブラウザ
+GenericName[ko]=웹 브라우저
+GenericName[lo]=ເວັບບຣາວເຊີ
+GenericName[lt]=Žiniatinklio naršyklė
+GenericName[lv]=Web Pārlūks
+GenericName[mk]=Прелистувач на Интернет
+GenericName[mn]=Веб-Хөтөч
+GenericName[nb]=Nettleser
+GenericName[nds]=Nettkieker
+GenericName[nl]=Webbrowser
+GenericName[nn]=Nettlesar
+GenericName[nso]=Seinyakisi sa Web
+GenericName[pa]=ਵੈਬ ਝਲਕਾਰਾ
+GenericName[pl]=Przeglądarka WWW
+GenericName[pt]=Navegador Web
+GenericName[pt_BR]=Navegador Web
+GenericName[ro]=Navigator de web
+GenericName[ru]=Веб-браузер
+GenericName[se]=Fierpmádatlogan
+GenericName[sk]=Webový prehliadač
+GenericName[sl]=Spletni brskalnik
+GenericName[sr]=Веб претраживач
+GenericName[sr@Latn]=Veb pretraživač
+GenericName[ss]=Ibrawuza yeWeb
+GenericName[sv]=Webbläsare
+GenericName[ta]=வலை உலாவி
+GenericName[tg]=Тафсиргари вэб
+GenericName[th]=เว็บบราวเซอร์
+GenericName[tr]=Web Tarayıcı
+GenericName[uk]=Навігатор Тенет
+GenericName[uz]=Веб-браузер
+GenericName[ven]=Buronza ya Webu
+GenericName[vi]=Trình duyệt Web
+GenericName[wa]=Betchteu waibe
+GenericName[xh]=Umkhangeli zincwadi we Web
+GenericName[zh_CN]=网页浏览器
+GenericName[zh_TW]=網頁瀏覽器
+GenericName[zu]=Umcingi we-Web
+MimeType=text/html;
+StartupNotify=true
+Categories=Network;WebBrowser;
diff --git a/testing/firefox/mozconfig b/testing/firefox/mozconfig
new file mode 100644
index 0000000000..f1b23fae9a
--- /dev/null
+++ b/testing/firefox/mozconfig
@@ -0,0 +1,44 @@
+. $topsrcdir/browser/config/mozconfig
+
+ac_add_options --prefix=/usr
+ac_add_options --libdir=/usr/lib
+ac_add_options --with-system-nspr
+ac_add_options --with-system-nss
+ac_add_options --with-system-jpeg
+ac_add_options --with-system-zlib
+ac_add_options --with-system-png
+ac_add_options --with-system-libvpx
+ac_add_options --with-pthreads
+ac_add_options --disable-tests
+ac_add_options --disable-debug
+ac_add_options --enable-optimize
+ac_add_options --disable-installer
+ac_add_options --enable-xinerama
+ac_add_options --enable-default-toolkit=cairo-gtk2
+ac_add_options --disable-xprint
+ac_add_options --disable-strip
+ac_add_options --enable-pango
+ac_add_options --enable-svg
+ac_add_options --enable-canvas
+ac_add_options --enable-startup-notification
+ac_add_options --enable-libxul
+ac_add_options --disable-crashreporter
+ac_add_options --disable-updater
+ac_add_options --enable-safe-browsing
+ac_add_options --enable-chrome-format=jar
+ac_add_options --disable-elf-hack
+ac_add_options --enable-libnotify
+ac_add_options --disable-cpp-exceptions
+ac_add_options --enable-url-classifier
+ac_add_options --enable-gio
+ac_add_options --disable-gnomevfs
+ac_add_options --disable-static
+ac_add_options --enable-official-branding
+
+export BUILD_OFFICIAL=1
+export MOZILLA_OFFICIAL=1
+export USE_SHORT_LIBNAME=1
+
+mk_add_options BUILD_OFFICIAL=1
+mk_add_options MOZILLA_OFFICIAL=1
+mk_add_options USE_SHORT_LIBNAME=1
diff --git a/testing/imake/APKBUILD b/testing/imake/APKBUILD
index 64704c637a..cf5117efd5 100644
--- a/testing/imake/APKBUILD
+++ b/testing/imake/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=imake
pkgver=1.0.4
-pkgrel=0
+pkgrel=1
pkgdesc="X Windows make utility"
url="http://www.x.org"
arch="all"
@@ -10,7 +10,7 @@ depends=
depends_dev=
makedepends="xproto util-macros $depends_dev"
install=""
-#subpackages="$pkgname-dev $pkgname-doc"
+subpackages="$pkgname-doc"
source="http://ftp.x.org/pub/individual/util/$pkgname-$pkgver.tar.gz"
_builddir="$srcdir"/$pkgname-$pkgver
@@ -26,14 +26,13 @@ prepare() {
build() {
cd "$_builddir"
- ./configure || make || return 1
+ ./configure --prefix=/usr \
+ || return 1
+ make || return 1
}
package() {
- echo "PACKAGE stage"
- echo "pkgdir = $pkgdir"
cd "$_builddir"
- pwd
make DESTDIR="$pkgdir" install || return 1
}
diff --git a/testing/ladspa/0001-proper-build.patch b/testing/ladspa/0001-proper-build.patch
new file mode 100644
index 0000000000..fa3a6c43ee
--- /dev/null
+++ b/testing/ladspa/0001-proper-build.patch
@@ -0,0 +1,111 @@
+From b87125e3eeb3e3446f80566083e5d66e7a667567 Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Sat, 4 Feb 2012 21:22:13 +0000
+Subject: [PATCH 1/3] proper build
+
+---
+ src/makefile | 50 +++++++++++++++++++++++++++++---------------------
+ 1 files changed, 29 insertions(+), 21 deletions(-)
+
+diff --git a/src/makefile b/src/makefile
+index 886237f..10ce82d 100644
+--- a/src/makefile
++++ b/src/makefile
+@@ -13,10 +13,12 @@ INSTALL_BINARY_DIR = /usr/bin/
+ # GENERAL
+ #
+
++CFLAGS ?= -Wall -Werror -O3
++CXXFLAGS ?= -Wall -Werror -O3
++
+ INCLUDES = -I.
+-LIBRARIES = -ldl -lm
+-CFLAGS = $(INCLUDES) -Wall -Werror -O3 -fPIC
+-CXXFLAGS = $(CFLAGS)
++DYNAMIC_LD_LIBS = -ldl
++LIBRARIES = $(DYNAMIC_LD_LIBS) -lm
+ PLUGINS = ../plugins/amp.so \
+ ../plugins/delay.so \
+ ../plugins/filter.so \
+@@ -25,21 +27,27 @@ PLUGINS = ../plugins/amp.so \
+ PROGRAMS = ../bin/analyseplugin \
+ ../bin/applyplugin \
+ ../bin/listplugins
+-CC = cc
+-CPP = c++
++CC ?= cc
++CXX ?= c++
++MKDIR_P ?= mkdir -p
+
+ ###############################################################################
+ #
+ # RULES TO BUILD PLUGINS FROM C OR C++ CODE
+ #
+
++LDFLAGS_filter = -lm
++
+ ../plugins/%.so: plugins/%.c ladspa.h
+- $(CC) $(CFLAGS) -o plugins/$*.o -c plugins/$*.c
+- $(LD) -o ../plugins/$*.so plugins/$*.o -shared
++ $(CC) $(CFLAGS) $(INCLUDES) -fPIC -o plugins/$*.o -c plugins/$*.c
++ $(CC) $(CFLAGS) $(LDFLAGS) -o ../plugins/$*.so plugins/$*.o -shared $(LDFLAGS_$*)
+
+ ../plugins/%.so: plugins/%.cpp ladspa.h
+- $(CPP) $(CXXFLAGS) -o plugins/$*.o -c plugins/$*.cpp
+- $(CPP) -o ../plugins/$*.so plugins/$*.o -shared
++ $(CXX) $(CXXFLAGS) $(INCLUDES) -fPIC -o plugins/$*.o -c plugins/$*.cpp
++ $(CXX) $(LDFLAGS) -o ../plugins/$*.so plugins/$*.o -shared $(LDFLAGS_$*)
++
++%.o: %.c
++ $(CC) $(CFLAGS) -DPLUGINDIR=\"$(INSTALL_PLUGINS_DIR)\" -c $<
+
+ ###############################################################################
+ #
+@@ -59,12 +67,12 @@ test: /tmp/test.wav ../snd/noise.wav always
+ @echo Test complete.
+
+ install: targets
+- -mkdirhier $(INSTALL_PLUGINS_DIR)
+- -mkdirhier $(INSTALL_INCLUDE_DIR)
+- -mkdirhier $(INSTALL_BINARY_DIR)
+- cp ../plugins/* $(INSTALL_PLUGINS_DIR)
+- cp ladspa.h $(INSTALL_INCLUDE_DIR)
+- cp ../bin/* $(INSTALL_BINARY_DIR)
++ -$(MKDIR_P) $(DESTDIR)$(INSTALL_PLUGINS_DIR)
++ -$(MKDIR_P) $(DESTDIR)$(INSTALL_INCLUDE_DIR)
++ -$(MKDIR_P) $(DESTDIR)$(INSTALL_BINARY_DIR)
++ cp ../plugins/* $(DESTDIR)$(INSTALL_PLUGINS_DIR)
++ cp ladspa.h $(DESTDIR)$(INSTALL_INCLUDE_DIR)
++ cp ../bin/* $(DESTDIR)$(INSTALL_BINARY_DIR)
+
+ /tmp/test.wav: targets ../snd/noise.wav
+ ../bin/listplugins
+@@ -90,19 +98,19 @@ targets: $(PLUGINS) $(PROGRAMS)
+ #
+
+ ../bin/applyplugin: applyplugin.o load.o default.o
+- $(CC) $(CFLAGS) $(LIBRARIES) \
++ $(CC) $(CFLAGS) $(INCLUDES) $(LDFLAGS) \
+ -o ../bin/applyplugin \
+- applyplugin.o load.o default.o
++ applyplugin.o load.o default.o $(LIBRARIES)
+
+ ../bin/analyseplugin: analyseplugin.o load.o default.o
+- $(CC) $(CFLAGS) $(LIBRARIES) \
++ $(CC) $(CFLAGS) $(INCLUDES) $(LDFLAGS) \
+ -o ../bin/analyseplugin \
+- analyseplugin.o load.o default.o
++ analyseplugin.o load.o default.o $(LIBRARIES)
+
+ ../bin/listplugins: listplugins.o search.o
+- $(CC) $(CFLAGS) $(LIBRARIES) \
++ $(CC) $(CFLAGS) $(INCLUDES) $(LDFLAGS) \
+ -o ../bin/listplugins \
+- listplugins.o search.o
++ listplugins.o search.o $(LIBRARIES)
+
+ ###############################################################################
+ #
+--
+1.7.9
+
diff --git a/testing/ladspa/0002-plugin-constructor-destructor.patch b/testing/ladspa/0002-plugin-constructor-destructor.patch
new file mode 100644
index 0000000000..f0061e823d
--- /dev/null
+++ b/testing/ladspa/0002-plugin-constructor-destructor.patch
@@ -0,0 +1,119 @@
+From d281f99e3776027e98f3b9d952fad0d456a75b8a Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Sat, 4 Feb 2012 22:04:33 +0000
+Subject: [PATCH 2/3] plugin constructor destructor
+
+---
+ src/plugins/amp.c | 8 ++++----
+ src/plugins/delay.c | 8 ++++----
+ src/plugins/filter.c | 8 ++++----
+ src/plugins/noise.c | 8 ++++----
+ 4 files changed, 16 insertions(+), 16 deletions(-)
+
+diff --git a/src/plugins/amp.c b/src/plugins/amp.c
+index b6d2345..a447fa1 100644
+--- a/src/plugins/amp.c
++++ b/src/plugins/amp.c
+@@ -152,8 +152,8 @@ LADSPA_Descriptor * g_psStereoDescriptor = NULL;
+
+ /* _init() is called automatically when the plugin library is first
+ loaded. */
+-void
+-_init() {
++void __attribute__ ((constructor))
++my_init() {
+
+ char ** pcPortNames;
+ LADSPA_PortDescriptor * piPortDescriptors;
+@@ -335,8 +335,8 @@ deleteDescriptor(LADSPA_Descriptor * psDescriptor) {
+ /*****************************************************************************/
+
+ /* _fini() is called automatically when the library is unloaded. */
+-void
+-_fini() {
++void __attribute__ ((destructor))
++my_fini() {
+ deleteDescriptor(g_psMonoDescriptor);
+ deleteDescriptor(g_psStereoDescriptor);
+ }
+diff --git a/src/plugins/delay.c b/src/plugins/delay.c
+index 8b03979..22e477b 100644
+--- a/src/plugins/delay.c
++++ b/src/plugins/delay.c
+@@ -228,8 +228,8 @@ LADSPA_Descriptor * g_psDescriptor = NULL;
+
+ /* _init() is called automatically when the plugin library is first
+ loaded. */
+-void
+-_init() {
++void __attribute__ ((constructor))
++my_init() {
+
+ char ** pcPortNames;
+ LADSPA_PortDescriptor * piPortDescriptors;
+@@ -322,8 +322,8 @@ _init() {
+ /*****************************************************************************/
+
+ /* _fini() is called automatically when the library is unloaded. */
+-void
+-_fini() {
++void __attribute__ ((destructor))
++my_fini() {
+ long lIndex;
+ if (g_psDescriptor) {
+ free((char *)g_psDescriptor->Label);
+diff --git a/src/plugins/filter.c b/src/plugins/filter.c
+index 3f50457..06f7bc6 100644
+--- a/src/plugins/filter.c
++++ b/src/plugins/filter.c
+@@ -252,8 +252,8 @@ LADSPA_Descriptor * g_psHPFDescriptor = NULL;
+
+ /* _init() is called automatically when the plugin library is first
+ loaded. */
+-void
+-_init() {
++void __attribute__ ((constructor))
++my_init() {
+
+ char ** pcPortNames;
+ LADSPA_PortDescriptor * piPortDescriptors;
+@@ -431,8 +431,8 @@ deleteDescriptor(LADSPA_Descriptor * psDescriptor) {
+ /*****************************************************************************/
+
+ /* _fini() is called automatically when the library is unloaded. */
+-void
+-_fini() {
++void __attribute__ ((destructor))
++my_fini() {
+ deleteDescriptor(g_psLPFDescriptor);
+ deleteDescriptor(g_psHPFDescriptor);
+ }
+diff --git a/src/plugins/noise.c b/src/plugins/noise.c
+index 0fdd938..de6fc81 100644
+--- a/src/plugins/noise.c
++++ b/src/plugins/noise.c
+@@ -142,8 +142,8 @@ LADSPA_Descriptor * g_psDescriptor;
+
+ /* _init() is called automatically when the plugin library is first
+ loaded. */
+-void
+-_init() {
++void __attribute__ ((constructor))
++my_init() {
+
+ char ** pcPortNames;
+ LADSPA_PortDescriptor * piPortDescriptors;
+@@ -219,8 +219,8 @@ _init() {
+ /*****************************************************************************/
+
+ /* _fini() is called automatically when the library is unloaded. */
+-void
+-_fini() {
++void __attribute__ ((destructor))
++my_fini() {
+ long lIndex;
+ if (g_psDescriptor) {
+ free((char *)g_psDescriptor->Label);
+--
+1.7.9
+
diff --git a/testing/ladspa/0003-plugindir.patch b/testing/ladspa/0003-plugindir.patch
new file mode 100644
index 0000000000..bd78ee51fc
--- /dev/null
+++ b/testing/ladspa/0003-plugindir.patch
@@ -0,0 +1,42 @@
+From 8e18df685c5fe747c6d250460d265a402f7900b1 Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Sat, 4 Feb 2012 22:05:24 +0000
+Subject: [PATCH 3/3] plugindir
+
+---
+ src/load.c | 2 ++
+ src/search.c | 5 +----
+ 2 files changed, 3 insertions(+), 4 deletions(-)
+
+diff --git a/src/load.c b/src/load.c
+index c2a5aa7..e221c10 100644
+--- a/src/load.c
++++ b/src/load.c
+@@ -54,6 +54,8 @@ dlopenLADSPA(const char * pcFilename, int iFlag) {
+ to search. */
+
+ pcLADSPAPath = getenv("LADSPA_PATH");
++ if (! pcLADSPAPath)
++ pcLADSPAPath = PLUGINDIR;
+
+ if (pcLADSPAPath) {
+
+diff --git a/src/search.c b/src/search.c
+index 0006712..a6b2e78 100644
+--- a/src/search.c
++++ b/src/search.c
+@@ -99,10 +99,7 @@ LADSPAPluginSearch(LADSPAPluginSearchCallbackFunction fCallbackFunction) {
+
+ pcLADSPAPath = getenv("LADSPA_PATH");
+ if (!pcLADSPAPath) {
+- fprintf(stderr,
+- "Warning: You do not have a LADSPA_PATH "
+- "environment variable set.\n");
+- return;
++ pcLADSPAPath = PLUGINDIR;
+ }
+
+ pcStart = pcLADSPAPath;
+--
+1.7.9
+
diff --git a/testing/ladspa/APKBUILD b/testing/ladspa/APKBUILD
new file mode 100644
index 0000000000..573bccf9fd
--- /dev/null
+++ b/testing/ladspa/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=ladspa
+pkgver=1.13
+pkgrel=0
+pkgdesc="Linux Audio Developer's Simple Plug-in API, examples and tools"
+url="http://www.ladspa.org/"
+arch="all"
+license="LGPLv2+"
+depends=""
+makedepends=""
+install=""
+subpackages="$pkgname-dev"
+source="http://www.ladspa.org/download/ladspa_sdk_$pkgver.tgz
+ 0001-proper-build.patch
+ 0002-plugin-constructor-destructor.patch
+ 0003-plugindir.patch
+ "
+
+_builddir="$srcdir"/ladspa_sdk
+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 -C src targets || return 1
+}
+
+package() {
+ cd "$_builddir"
+ make -C src install DESTDIR="$pkgdir" || return 1
+}
+
+md5sums="671be3e1021d0722cadc7fb27054628e ladspa_sdk_1.13.tgz
+0e834af5f341081b772848ed3a753d5d 0001-proper-build.patch
+4b5c8831519e7485f2dacc5663375872 0002-plugin-constructor-destructor.patch
+95943ab38a96051ff4a6caf33182634c 0003-plugindir.patch"
diff --git a/testing/liblo/APKBUILD b/testing/liblo/APKBUILD
new file mode 100644
index 0000000000..a7c9c18722
--- /dev/null
+++ b/testing/liblo/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=liblo
+pkgver=0.26
+pkgrel=0
+pkgdesc="Open Sound Control library"
+url="http://liblo.sourceforge.net"
+arch="all"
+license="LGPLv2+"
+depends=""
+makedepends=""
+install=""
+subpackages="$pkgname-dev"
+source="http://download.sf.net/sourceforge/liblo/liblo-$pkgver.tar.gz"
+
+_builddir="$srcdir"/liblo-$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 \
+ --enable-ipv6 \
+ --disable-static \
+ || return 1
+ make || return 1
+}
+
+package() {
+ cd "$_builddir"
+ make DESTDIR="$pkgdir" install || return 1
+ rm -f "$pkgdir"/usr/lib/*.la
+}
+
+md5sums="5351de14262560e15e7f23865293b16f liblo-0.26.tar.gz"
diff --git a/testing/liblrdf/APKBUILD b/testing/liblrdf/APKBUILD
new file mode 100644
index 0000000000..2f8fa96894
--- /dev/null
+++ b/testing/liblrdf/APKBUILD
@@ -0,0 +1,69 @@
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=liblrdf
+pkgver=0.5.0
+pkgrel=0
+pkgdesc="Library for manipulating RDF files describing LADSPA plugins"
+url="https://github.com/swh/LRDF"
+arch="all"
+license="GPLv2+"
+depends=""
+depends_dev="raptor2-dev openssl-dev"
+makedepends="$depends_dev autoconf automake libtool"
+install=""
+subpackages="$pkgname-dev"
+source="http://dev.alpinelinux.org/archive/liblrdf/liblrdf-$pkgver.tar.gz"
+
+_builddir="$srcdir"/liblrdf-$pkgver
+
+# How to create archive from git:
+#
+# abuild snapshot
+#
+
+_gitrepo=LRDF.git
+_giturl="git://github.com/swh/$_gitrepo"
+_gittag=$pkgver
+
+snapshot() {
+ local _tarball=$pkgname-$pkgver.tar.gz
+ msg "Creating $_tarball.."
+ mkdir -p "$srcdir"
+ cd "${SRCDEST:-$srcdir}"
+ if ! [ -d "$_gitrepo" ]; then
+ git clone --bare $_giturl || return 1
+ else
+ git --git-dir=$_gitrepo fetch || return 1
+ fi
+
+ git --git-dir=$_gitrepo archive --prefix=$pkgname-$pkgver/ \
+ -o "$SRCDEST"/$_tarball $_gittag || return 1
+
+ msg "Uploading $_tarball"
+ scp "$SRCDEST"/$_tarball dev.alpinelinux.org:/archive/$pkgname/
+}
+
+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"
+ ./autogen.sh --prefix=/usr \
+ || return 1
+ make || return 1
+}
+
+package() {
+ cd "$_builddir"
+ make install DESTDIR="$pkgdir" || return 1
+ rm -f "$pkgdir"/usr/lib/*.la
+}
+
+md5sums="9acf9143da25f2e0c46d24758371ff4b liblrdf-0.5.0.tar.gz"
diff --git a/testing/linux-pam/APKBUILD b/testing/linux-pam/APKBUILD
deleted file mode 100644
index dbfb97f19f..0000000000
--- a/testing/linux-pam/APKBUILD
+++ /dev/null
@@ -1,77 +0,0 @@
-# Contributor: William Pitcock <nenolod@dereferenced.org>
-# Maintainer: William Pitcock <nenolod@dereferenced.org>
-pkgname=linux-pam
-pkgver=1.1.3
-pkgrel=4
-pkgdesc="pluggable authentication modules for linux"
-url="http://www.kernel.org/pub/linux/libs/pam"
-arch="all"
-license="BSD"
-depends=
-depends_dev="gettext-dev"
-makedepends="$depends_dev bison flex"
-install=""
-subpackages="$pkgname-dev $pkgname-doc"
-source="http://www.kernel.org/pub/linux/libs/pam/library/Linux-PAM-$pkgver.tar.bz2
- linux-pam-innetgr.patch
- base-auth.pamd
- base-account.pamd
- base-password.pamd
- base-session.pamd
- base-session-noninteractive.pamd
- other.pamd"
-
-_builddir="$srcdir"/Linux-PAM-$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 \
- --libdir=/lib \
- --sysconfdir=/etc \
- --mandir=/usr/share/man \
- --infodir=/usr/share/info \
- --localstatedir=/var \
- --disable-nls \
- || return 1
- make || return 1
-}
-
-package() {
- cd "$_builddir"
- make DESTDIR="$pkgdir" install || return 1
-
- # do not install pam.d files bundled with the source, they could be broken
- rm -rf "$pkgdir"/etc/pam.d
-
- # install our pam.d files
- mkdir "$pkgdir"/etc/pam.d
- for i in $source; do
- case $i in
- *.pamd)
- basename=$(echo $i | cut -d. -f1)
- cp "$srcdir"/$i "$pkgdir"/etc/pam.d/"$basename"
- ;;
- esac
- done
-
- # delete pointless libtool archives.
- find "$pkgdir" -name *.la -print | xargs rm
-}
-
-md5sums="6db7fcb5db6253350e3a4648ceac40e7 Linux-PAM-1.1.3.tar.bz2
-c309401e103cc86e8b25557ff3eb0b53 linux-pam-innetgr.patch
-aa5bb7c9d8e4687aea1ae69b7447254a base-auth.pamd
-fafcf29cb9bab788cb4933106be31883 base-account.pamd
-117535e4938f478efced1398b408cf96 base-password.pamd
-baec6808544bf6cebc59e07467f8c213 base-session.pamd
-afbdd8eb4db5c31dfd8e8da35c698b90 base-session-noninteractive.pamd
-b8e839ece64df173f16d28520eb8d66c other.pamd"
diff --git a/testing/linux-pam/base-account.pamd b/testing/linux-pam/base-account.pamd
deleted file mode 100644
index 591092944d..0000000000
--- a/testing/linux-pam/base-account.pamd
+++ /dev/null
@@ -1,3 +0,0 @@
-# basic PAM configuration for Alpine.
-
-account required pam_unix.so
diff --git a/testing/linux-pam/base-auth.pamd b/testing/linux-pam/base-auth.pamd
deleted file mode 100644
index 012445aa3a..0000000000
--- a/testing/linux-pam/base-auth.pamd
+++ /dev/null
@@ -1,5 +0,0 @@
-# basic PAM configuration for Alpine.
-
-auth required pam_env.so
-auth required pam_unix.so nullok_secure
-auth required pam_nologin.so successok
diff --git a/testing/linux-pam/base-password.pamd b/testing/linux-pam/base-password.pamd
deleted file mode 100644
index a146a93fe5..0000000000
--- a/testing/linux-pam/base-password.pamd
+++ /dev/null
@@ -1,3 +0,0 @@
-# basic PAM configuration for Alpine.
-
-password required pam_unix.so nullok obscure md5 sha512
diff --git a/testing/linux-pam/base-session-noninteractive.pamd b/testing/linux-pam/base-session-noninteractive.pamd
deleted file mode 100644
index 85e07d5943..0000000000
--- a/testing/linux-pam/base-session-noninteractive.pamd
+++ /dev/null
@@ -1,4 +0,0 @@
-# basic PAM configuration for Alpine.
-
-session required pam_limits.so
-session required pam_unix.so
diff --git a/testing/linux-pam/base-session.pamd b/testing/linux-pam/base-session.pamd
deleted file mode 100644
index bf5bcb7344..0000000000
--- a/testing/linux-pam/base-session.pamd
+++ /dev/null
@@ -1,4 +0,0 @@
-# basic PAM configuration for Alpine.
-
-session include base-session-noninteractive
-session required pam_motd.so
diff --git a/testing/linux-pam/linux-pam-innetgr.patch b/testing/linux-pam/linux-pam-innetgr.patch
deleted file mode 100644
index a94fa3dae5..0000000000
--- a/testing/linux-pam/linux-pam-innetgr.patch
+++ /dev/null
@@ -1,54 +0,0 @@
---- Linux-PAM-1.1.3.orig/modules/pam_group/pam_group.c
-+++ Linux-PAM-1.1.3/modules/pam_group/pam_group.c
-@@ -658,10 +658,13 @@
- continue;
- }
- /* If buffer starts with @, we are using netgroups */
-+#ifdef HAVE_INNETGR
- if (buffer[0] == '@')
- good &= innetgr (&buffer[1], NULL, user, NULL);
- /* otherwise, if the buffer starts with %, it's a UNIX group */
-- else if (buffer[0] == '%')
-+ else
-+#endif
-+ if (buffer[0] == '%')
- good &= pam_modutil_user_in_group_nam_nam(pamh, user, &buffer[1]);
- else
- good &= logic_field(pamh,user, buffer, count, is_same);
---- Linux-PAM-1.1.3.orig/modules/pam_succeed_if/pam_succeed_if.c
-+++ Linux-PAM-1.1.3/modules/pam_succeed_if/pam_succeed_if.c
-@@ -233,16 +233,20 @@
- static int
- evaluate_innetgr(const char *host, const char *user, const char *group)
- {
-+#ifdef HAVE_INNETGR
- if (innetgr(group, host, user, NULL) == 1)
- return PAM_SUCCESS;
-+#endif
- return PAM_AUTH_ERR;
- }
- /* Return PAM_SUCCESS if the (host,user) is NOT in the netgroup. */
- static int
- evaluate_notinnetgr(const char *host, const char *user, const char *group)
- {
-+#ifdef HAVE_INNETGR
- if (innetgr(group, host, user, NULL) == 0)
- return PAM_SUCCESS;
-+#endif
- return PAM_AUTH_ERR;
- }
-
---- Linux-PAM-1.1.3.orig/modules/pam_time/pam_time.c
-+++ Linux-PAM-1.1.3/modules/pam_time/pam_time.c
-@@ -554,9 +554,11 @@
- continue;
- }
- /* If buffer starts with @, we are using netgroups */
-+#ifdef HAVE_INNETGR
- if (buffer[0] == '@')
- good &= innetgr (&buffer[1], NULL, user, NULL);
- else
-+#endif
- good &= logic_field(pamh, user, buffer, count, is_same);
- D(("with user: %s", good ? "passes":"fails" ));
-
diff --git a/testing/linux-pam/other.pamd b/testing/linux-pam/other.pamd
deleted file mode 100644
index 8c9797e718..0000000000
--- a/testing/linux-pam/other.pamd
+++ /dev/null
@@ -1,6 +0,0 @@
-# basic PAM configuration for Alpine.
-
-auth include base-auth
-account include base-account
-password include base-password
-session include base-session-noninteractive
diff --git a/testing/makedepend/APKBUILD b/testing/makedepend/APKBUILD
new file mode 100644
index 0000000000..60252123ac
--- /dev/null
+++ b/testing/makedepend/APKBUILD
@@ -0,0 +1,40 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=makedepend
+pkgver=1.0.3
+pkgrel=0
+pkgdesc="create dependencies in makefiles"
+url="http://www.x.org"
+arch="all"
+license="MIT"
+depends=""
+depends_dev=""
+makedepends="$depends_dev xproto"
+install=""
+subpackages="$pkgname-doc"
+source="http://ftp.x.org/pub/individual/util/makedepend-$pkgver.tar.bz2"
+
+_builddir="$srcdir"/makedepend-$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 \
+ || return 1
+ make || return 1
+}
+
+package() {
+ cd "$_builddir"
+ make DESTDIR="$pkgdir" install || return 1
+ rm -f "$pkgdir"/usr/lib/*.la
+}
+
+md5sums="4e6cb97bbecfbb34f3f644a75e513093 makedepend-1.0.3.tar.bz2"
diff --git a/testing/nfdump/APKBUILD b/testing/nfdump/APKBUILD
index 9299be6af0..55083c8fcf 100644
--- a/testing/nfdump/APKBUILD
+++ b/testing/nfdump/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=nfdump
pkgver=1.6.4
-pkgrel=0
+pkgrel=2
pkgdesc="The nfdump tools collect and process netflow data on the command line."
url="http://nfdump.sourceforge.net/"
arch="all"
@@ -12,7 +12,9 @@ depends_dev=""
makedepends="bison flex $depends_dev"
install=""
subpackages="$pkgname-doc"
-source="http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz"
+source="http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz\
+ nfcapd.confd\
+ nfcapd.initd"
_builddir="$srcdir"/$pkgname-$pkgver
prepare() {
@@ -35,6 +37,13 @@ build() {
package() {
cd "$_builddir"
make DESTDIR="$pkgdir" install || return 1
+ install -D -m755 "$srcdir"/nfcapd.initd \
+ "$pkgdir"/etc/init.d/nfcapd
+
+ install -D -m644 "$srcdir"/nfcapd.confd \
+ "$pkgdir"/etc/conf.d/nfcapd
}
-md5sums="a5ab5657da78f0f57ac7d29f31883949 nfdump-1.6.4.tar.gz"
+md5sums="a5ab5657da78f0f57ac7d29f31883949 nfdump-1.6.4.tar.gz
+d525c691a62a5746c581f5e9776ed866 nfcapd.confd
+d2b60619e18120af68771f3b866177e8 nfcapd.initd"
diff --git a/testing/nfdump/nfcapd.confd b/testing/nfdump/nfcapd.confd
new file mode 100644
index 0000000000..fb9afb6e32
--- /dev/null
+++ b/testing/nfdump/nfcapd.confd
@@ -0,0 +1,62 @@
+# Config file for /etc/init.d/nfcapd
+
+# Port we listen on
+PORT=2205
+
+# Hostname/address we bind on - default is any available
+BINDHOST=127.0.0.1
+
+# IPv4 only
+#IPV4=no
+
+# IPv6 only
+#IPV6=no
+
+# Join a specific Multicast group
+#MULTICASTGROUP=
+
+# Become a packet repeater
+#REPEAT=desthost/port
+
+
+# Ident string, specify the name of the router
+#IDENT=
+
+# Base Directory for output files
+BASEDIR="/var/log/nfcapd"
+
+# Source is one or more sources: Ident,IP,base_directory
+# If you specificy SOURCE, do not specifiy IDENT or BASEDIR
+#SOURCE="Foo,192.168.1.1,/var/log/nfcapd/foo Bar,192.168.1.2,/var/log/nfcapd/bar"
+
+# Sample Rate - defaults to source
+#SAMPLERATE=
+
+# additional directory sub hierarchy (default none)
+#SUBDIR="%Y/%m/%d"
+
+
+# Extensions to be stored in the netflow data
+#EXTENSIONS="all"
+
+# How often to rotate the files (in seconds)
+#INTERVAL=300
+
+# Do we align rotation with next even interval
+#ALIGN=no
+
+# Run a command at the end of every interval
+#ROTATECMD=""
+
+# Auto expire old files (yes/no)
+#AUTOEXPIRE=no
+
+# User / Group
+UID=nobody
+GID=nobody
+
+# Buffer length in bytes (to reduce lost packets)
+BUFFLEN=1024000
+
+# Compress the flows with LZO (yes/no)
+COMPRESS=yes
diff --git a/testing/nfdump/nfcapd.initd b/testing/nfdump/nfcapd.initd
new file mode 100644
index 0000000000..5f8506812d
--- /dev/null
+++ b/testing/nfdump/nfcapd.initd
@@ -0,0 +1,63 @@
+#!/sbin/runscript
+# Copyright 2012 N Angelacos - Based on Gentoo Foundation fprobe script
+# Distributed under the terms of the GNU General Public License v2
+
+depend() {
+ need net
+ after firewall
+}
+
+
+BIN=/usr/bin/nfcapd
+PIDFILE_EXTRA=${SVCNAME#*.}
+if [ -n "${PIDFILE_EXTRA}" ] && [ ${SVCNAME} != "nfcapd" ]; then
+ PIDFILE="/var/run/nfcapd.${PIDFILE_EXTRA}.pid"
+else
+ PIDFILE="/var/run/nfcapd.pid"
+fi
+
+start() {
+ ebegin "Starting nfcapd"
+ local OPTS=""
+
+ [ -n "${SOURCE}" ] && SOURCE=`echo -n "${SOURCE}" | sed 's/ / -n /g'`
+ [ "${IPV4}" == "yes" ] && OPTS="${OPTS} -4"
+ [ "${IPV6}" == "yes" ] && OPTS="${OPTS} -6"
+ [ "${ALIGN}" == "yes" ] && OPTS="${OPTS} -w"
+ [ "${AUTOEXPIRE}" == "yes" ] && OPTS="${OPTS} -e"
+ [ "${COMPRESS}" == "yes" ] && OPTS="${OPTS} -z"
+ for optname in p:PORT b:BINDHOST j:MULTICASTGROUP i:IFACE R:REPEAT \
+ I:IDENT l:BASEDIR n:SOURCE s:SAMPLERATE S:SUBDIR \
+ T:EXTENSIONS t:INTERVAL x:ROTATECMD u:UID g:GID \
+ B:BUFFLEN ; do
+ opt="${optname/:*}" optvar="${optname/*:}"
+ eval optvalue="\$$optvar"
+ [ -n "$optvalue" ] && OPTS="${OPTS} -${opt} ${optvalue}"
+ done
+ OPTS="${OPTS}"
+
+ # Attempt to make the basedir if specified
+ if [ -n "${BASEDIR}" ]; then
+ mkdir -p "${BASEDIR}"
+ chown "${UID}":"${GID}" "${BASEDIR}"
+ fi
+
+
+ start-stop-daemon --start -b --exec $BIN \
+ --pidfile ${PIDFILE} --make-pidfile \
+ -- ${OPTS}
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping nfcapd"
+ start-stop-daemon --stop --quiet --exec $BIN \
+ --pidfile ${PIDFILE}
+ eend $?
+}
+
+
+
+
+
+
diff --git a/testing/pam-pgsql/APKBUILD b/testing/pam-pgsql/APKBUILD
new file mode 100644
index 0000000000..d52b2fca99
--- /dev/null
+++ b/testing/pam-pgsql/APKBUILD
@@ -0,0 +1,42 @@
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=pam-pgsql
+pkgver=0.7.3.1
+pkgrel=0
+pkgdesc="PAM module to authenticate using a PostgreSQL database"
+url="http://sourceforge.net/projects/pam-pgsql/"
+arch="all"
+license="GPL"
+depends=""
+depends_dev=""
+makedepends="$depends_dev linux-pam-dev postgresql-dev libgcrypt-dev"
+install=""
+subpackages="$pkgname-doc"
+source="http://downloads.sourceforge.net/project/pam-pgsql/pam-pgsql/0.7/pam-pgsql-$pkgver.tar.gz"
+
+_builddir="$srcdir"/pam-pgsql-$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 \
+ || return 1
+ make || return 1
+}
+
+package() {
+ cd "$_builddir"
+ make DESTDIR="$pkgdir" install || return 1
+ rm -f "$pkgdir"/usr/lib/*.la "$pkgdir"/usr/lib/security/*.la \
+ || return 1
+}
+
+md5sums="16cb40a16ee1f286906a0d5a90254731 pam-pgsql-0.7.3.1.tar.gz"
diff --git a/testing/perl-net-async-http/APKBUILD b/testing/perl-net-async-http/APKBUILD
index d4f3961aa3..0b4c79fac1 100644
--- a/testing/perl-net-async-http/APKBUILD
+++ b/testing/perl-net-async-http/APKBUILD
@@ -3,14 +3,14 @@
# Maintainer: Kiyoshi Aman <kiyoshi.aman@gmail.com>
pkgname=perl-net-async-http
_pkgreal=Net-Async-HTTP
-pkgver=0.13
+pkgver=0.15
pkgrel=0
pkgdesc="use HTTP with C<IO::Async>"
url="http://search.cpan.org/dist/Net-Async-HTTP/"
arch="noarch"
license="GPL PerlArtistic"
cpandepends="perl-uri perl-http-message perl-io-async"
-cpanmakedepends="perl-http-cookies perl-test-identity perl-io-async"
+cpanmakedepends="perl-http-cookies perl-test-identity perl-io-async "
depends="$cpandepends"
makedepends="perl-dev $cpanmakedepends"
subpackages="$pkgname-doc"
@@ -20,12 +20,13 @@ _builddir="$srcdir/$_pkgreal-$pkgver"
prepare() {
cd "$_builddir"
+ export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
perl Build.PL installdirs=vendor || return 1
}
build() {
cd "$_builddir"
- export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
+ export CFLAGS=`perl -MConfig -E 'say $Config{ccflags}'`
./Build && ./Build test
}
@@ -35,4 +36,4 @@ package() {
find "$pkgdir" \( -name perllocal.pod -o -name .packlist \) -delete
}
-md5sums="a624b88a7545cda911e7a983e180e32a Net-Async-HTTP-0.13.tar.gz"
+md5sums="b0298e8ecf8d74a69281c57d17631225 Net-Async-HTTP-0.15.tar.gz"
diff --git a/testing/raptor2/APKBUILD b/testing/raptor2/APKBUILD
new file mode 100644
index 0000000000..0ce17bd92d
--- /dev/null
+++ b/testing/raptor2/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: William Pitcock <nenolod@dereferenced.org>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=raptor2
+pkgver=2.0.6
+pkgrel=0
+pkgdesc="RDF parser toolkit for Redland"
+url="http://www.librdf.org/raptor"
+arch="all"
+license="GPL"
+depends=
+depends_dev="curl-dev libxml2-dev libxslt-dev yajl-dev"
+makedepends="$depends_dev"
+install=""
+subpackages="$pkgname-dev $pkgname-doc"
+source="http://download.librdf.org/source/raptor2-$pkgver.tar.gz"
+
+_builddir="$srcdir"/raptor2-$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
+ rm "$pkgdir"/usr/lib/*.la
+}
+
+md5sums="1f07af81cbe3cf1bf0d1d250b18d9f93 raptor2-2.0.6.tar.gz"
diff --git a/testing/raptor2/raptor-curl.patch b/testing/raptor2/raptor-curl.patch
new file mode 100644
index 0000000000..e47a496c4c
--- /dev/null
+++ b/testing/raptor2/raptor-curl.patch
@@ -0,0 +1,12 @@
+diff --git a/src/raptor_internal.h b/src/raptor_internal.h
+index f7944db..d9c2068 100644
+--- a/src/raptor_internal.h
++++ b/src/raptor_internal.h
+@@ -852,7 +852,6 @@ int raptor_utf8_is_nfc(const unsigned char *input, size_t length);
+
+ #ifdef RAPTOR_WWW_LIBCURL
+ #include <curl/curl.h>
+-#include <curl/types.h>
+ #include <curl/easy.h>
+ #endif
+
diff --git a/testing/rosegarden/APKBUILD b/testing/rosegarden/APKBUILD
new file mode 100644
index 0000000000..4d82fb1195
--- /dev/null
+++ b/testing/rosegarden/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=rosegarden
+pkgver=11.11.42
+pkgrel=0
+pkgdesc="MIDI, audio and notation editor"
+url="http://www.rosegardenmusic.com/"
+arch="all"
+license="GPLv2+"
+depends=""
+depends_dev=""
+makedepends="alsa-lib-dev qt-dev libsamplerate-dev libsndfile-dev ladspa-dev
+ jack-dev liblo-dev dssi-dev liblrdf-dev fftw-dev makedepend"
+install=""
+subpackages=""
+source="http://downloads.sourceforge.net/project/rosegarden/rosegarden/11.11/rosegarden-$pkgver.tar.bz2
+ nearbyintf.patch"
+
+_builddir="$srcdir"/rosegarden-$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 \
+ || return 1
+ make || return 1
+}
+
+package() {
+ cd "$_builddir"
+ make DESTDIR="$pkgdir" install || return 1
+ rm -f "$pkgdir"/usr/lib/*.la
+}
+
+md5sums="552a1cad6dd60077573332bc6c650db0 rosegarden-11.11.42.tar.bz2
+622bfa38a28010bbffcaa2a64c8ade92 nearbyintf.patch"
diff --git a/testing/rosegarden/nearbyintf.patch b/testing/rosegarden/nearbyintf.patch
new file mode 100644
index 0000000000..d8d2a706e2
--- /dev/null
+++ b/testing/rosegarden/nearbyintf.patch
@@ -0,0 +1,13 @@
+uclibc does not have nearbyintf
+
+--- ./src/gui/widgets/Fader.cpp.orig
++++ ./src/gui/widgets/Fader.cpp
+@@ -222,7 +222,7 @@
+ if (m_integral) {
+ float sliderLength = float(m_sliderMax) - float(m_sliderMin);
+ position =
+- int(nearbyintf(sliderLength * (value - float(m_min)) / float(m_max - m_min) + 0.1));
++ int(nearbyint(sliderLength * (value - float(m_min)) / float(m_max - m_min) + 0.1));
+ } else {
+ position =
+ AudioLevel::dB_to_fader
diff --git a/testing/sshguard/APKBUILD b/testing/sshguard/APKBUILD
index 089c5874cd..a337bbfc63 100644
--- a/testing/sshguard/APKBUILD
+++ b/testing/sshguard/APKBUILD
@@ -2,19 +2,20 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=sshguard
pkgver=1.5
-pkgrel=0
+pkgrel=1
pkgdesc="Log monitor that blocks with iptables on bad behaviour"
url="http://www.sshguard.net/"
arch="all"
license="BSD"
depends="iptables"
depends_dev=""
-makedepends="$depends_dev"
+makedepends="$depends_dev flex bison"
install=""
subpackages="$pkgname-doc"
source="http://downloads.sourceforge.net/project/sshguard/sshguard/sshguard-$pkgver/sshguard-$pkgver.tar.bz2
sshguard.initd
- sshguard.confd"
+ sshguard.confd
+ parser.patch"
_builddir="$srcdir"/sshguard-$pkgver
prepare() {
@@ -46,4 +47,5 @@ package() {
md5sums="11b9f47f9051e25bdfe84a365c961ec1 sshguard-1.5.tar.bz2
13eb7c7e7a91cc347dbd6ff111d662c4 sshguard.initd
-02dc914d310ea759a66ebb136f495e4e sshguard.confd"
+02dc914d310ea759a66ebb136f495e4e sshguard.confd
+84ff8858abb8d5a673037cf592bb6794 parser.patch"
diff --git a/testing/sshguard/parser.patch b/testing/sshguard/parser.patch
new file mode 100644
index 0000000000..51f9915e18
--- /dev/null
+++ b/testing/sshguard/parser.patch
@@ -0,0 +1,11 @@
+--- sshguard-1.5/src/parser/attack_scanner.l
++++ sshguard-1.5-mod/src/parser/attack_scanner.l
+@@ -107,7 +107,7 @@
+ */
+
+ /* handle entries with PID and without PID from processes other than sshguard */
+-{TIMESTAMP_SYSLOG}[ ]+([a-zA-Z0-9]|{WORD}|{HOSTADDR})[ ]+{PROCESSNAME}"["{NUMBER}"]: "{SOLARIS_MSGID_TAG}? {
++{TIMESTAMP_SYSLOG}[ ]+([a-zA-Z0-9]|{WORD}|{HOSTADDR})[ ]+([a-zA-Z0-9]|{WORD}|{HOSTADDR})[ ]+{PROCESSNAME}"["{NUMBER}"]: "{SOLARIS_MSGID_TAG}? {
+ /* extract PID */
+ yylval.num = getsyslogpid(yytext, yyleng);
+ return SYSLOG_BANNER_PID;
diff --git a/testing/varnish/APKBUILD b/testing/varnish/APKBUILD
index cc7285b0c4..97e1cfcb69 100644
--- a/testing/varnish/APKBUILD
+++ b/testing/varnish/APKBUILD
@@ -1,8 +1,8 @@
# Contributor: Natanael Copa <ncopa@alpinelinux.org>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=varnish
-pkgver=3.0.0
-pkgrel=2
+pkgver=3.0.2
+pkgrel=0
pkgdesc="High-performance HTTP accelerator"
url="http://www.varnish-cache.org/"
arch="all"
@@ -58,7 +58,7 @@ libs() {
mv "$pkgdir"/usr/lib/*.so.* "$subpkgdir"/usr/lib/
}
-md5sums="38387bf31a1574f5cd8dec4f0b7caf20 varnish-3.0.0.tar.gz
+md5sums="c8eae0aabbe66b6daabdf3a1f58cd47a varnish-3.0.2.tar.gz
a86ece4df03e2643d4d659fb841e1ea6 varnishd.initd
78bc033e92dc6153656408f44b1d1df8 varnishd.confd
a6cb8a43c9465699cf956dc992998225 varnishd.logrotate"
diff --git a/testing/vlc/APKBUILD b/testing/vlc/APKBUILD
index 964879eb5e..50e6d67972 100644
--- a/testing/vlc/APKBUILD
+++ b/testing/vlc/APKBUILD
@@ -3,7 +3,7 @@
pkgname=vlc
pkgver=2.0.0_rc1
_pkgver=${pkgver/_/-}
-pkgrel=3
+pkgrel=4
pkgdesc="A multi-platform MPEG, VCD/DVD, and DivX player"
pkgusers="vlc"
pkggroups="vlc"
@@ -97,7 +97,10 @@ build ()
cd "$_builddir"
sed -i -e 's:/usr/share/fonts/truetype/freefont/FreeSerifBold.ttf:/usr/share/fonts/TTF/DejaVuSerif-Bold.ttf:' modules/misc/freetype.c
+ # -fpermissive is needed due to zlib 1.2.6 changing
+ # void* to gzFile on gz*() functions
export CFLAGS="$CFLAGS -D_GNU_SOURCE"
+ export CXXFLAGS="$CXXFLAGS -fpermissive"
./configure --prefix=/usr \
--disable-mmx \
@@ -169,7 +172,7 @@ _mv() {
xorg() {
pkgdesc="Video LAN X.org support"
- depends="xdg-utils vlc>=2.0.0_rc1-r0"
+ depends="xdg-utils vlc>=2.0.0_rc1-r4"
# scan for elf files that directly or indirectly depends on
# libX* libraries
@@ -180,6 +183,10 @@ xorg() {
fi
done
+ mkdir -p "$subpkgdir"/usr/bin
+ mv "$pkgdir"/usr/bin/[qs]vlc \
+ "$subpkgdir"/usr/bin
+
mkdir -p "$subpkgdir"/usr/share/vlc
mv "$pkgdir"/usr/share/applications \
"$pkgdir"/usr/share/icons \
diff --git a/testing/xen/APKBUILD b/testing/xen/APKBUILD
index d92bebf7c1..c6c120168e 100644
--- a/testing/xen/APKBUILD
+++ b/testing/xen/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer:
pkgname=xen
pkgver=4.1.2
-pkgrel=1
+pkgrel=2
pkgdesc="Xen hypervisor"
url="http://www.xen.org"
arch="x86 x86_64"
@@ -87,7 +87,7 @@ ed3283697cb1ddff066f4087eabf68c6 detect_libiconv.patch
b973dc1ffcc6872e222b36f3b7b4836b fix_bswap_blktap2.patch
10dcf0b6a05691e9f88afc01bd414480 fix_ipxe_no_pie_default.patch
0bb8a435020a5a49b38b1a447fb69977 define_fsimage_dir.patch
-f64405982218db306c2b5cf3167ff944 pygrub_alpine.patch
+a7500c42804abdf68e051dc667e65f93 pygrub_alpine.patch
fa06495a175571f4aa3b6cb88937953e librt.patch
1bea3543ddc712330527b62fd9ff6520 busybox-sed.patch
4cf88b53f8ca8d99ad52bae419b620a7 xencommons.initd
diff --git a/testing/xen/pygrub_alpine.patch b/testing/xen/pygrub_alpine.patch
index 9d6ee577a8..98d0822c71 100644
--- a/testing/xen/pygrub_alpine.patch
+++ b/testing/xen/pygrub_alpine.patch
@@ -38,7 +38,7 @@ diff -r 3e02aa9670b3 tools/pygrub/src/ExtLinuxConf.py
# Bypass regular self.commands handling
com = None
-+ elif arg.find("initrd="):
++ elif "initrd=" in arg:
+ # find initrd image in append line
+ args = arg.strip().split(" ")
+ for a in args:
diff --git a/testing/xulrunner/0002-Use-C99-math-isfinite.patch b/testing/xulrunner/0002-Use-C99-math-isfinite.patch
new file mode 100644
index 0000000000..3d85a69288
--- /dev/null
+++ b/testing/xulrunner/0002-Use-C99-math-isfinite.patch
@@ -0,0 +1,43 @@
+From cdb9db4c1c593dbe22db4f389a62fce034f31f2d Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Fri, 25 Nov 2011 08:30:51 +0000
+Subject: [PATCH 2/4] Use C99 math isfinite
+
+---
+ js/src/ctypes/CTypes.cpp | 2 +-
+ xpcom/ds/nsMathUtils.h | 6 +++++-
+ 2 files changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/js/src/ctypes/CTypes.cpp b/js/src/ctypes/CTypes.cpp
+index 5c0f886..a3b1ae6 100644
+--- a/js/src/ctypes/CTypes.cpp
++++ b/js/src/ctypes/CTypes.cpp
+@@ -467,7 +467,7 @@ static inline bool FloatIsFinite(jsdouble f) {
+ #ifdef WIN32
+ return _finite(f) != 0;
+ #else
+- return finite(f);
++ return isfinite(f);
+ #endif
+ }
+
+diff --git a/xpcom/ds/nsMathUtils.h b/xpcom/ds/nsMathUtils.h
+index 21ffbec..2e80476 100644
+--- a/xpcom/ds/nsMathUtils.h
++++ b/xpcom/ds/nsMathUtils.h
+@@ -131,7 +131,11 @@ inline NS_HIDDEN_(bool) NS_finite(double d)
+ // NOTE: '!!' casts an int to bool without spamming MSVC warning C4800.
+ return !!_finite(d);
+ #else
+- return finite(d);
++#ifdef _GLIBCXX_CMATH
++ return std::isfinite(d);
++#else
++ return isfinite(d);
++#endif
+ #endif
+ }
+
+--
+1.7.7.4
+
diff --git a/testing/xulrunner/0003-xulrunner-jemalloc-aslr.patch b/testing/xulrunner/0003-xulrunner-jemalloc-aslr.patch
new file mode 100644
index 0000000000..6784b13e74
--- /dev/null
+++ b/testing/xulrunner/0003-xulrunner-jemalloc-aslr.patch
@@ -0,0 +1,67 @@
+From 88bb9f90ec1e4b43fb78596c8ff7577c92592eb4 Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Fri, 25 Nov 2011 08:36:52 +0000
+Subject: [PATCH 3/4] xulrunner: jemalloc aslr
+
+---
+ memory/jemalloc/jemalloc.c | 33 ++++++++++++++++++++++-----------
+ 1 files changed, 22 insertions(+), 11 deletions(-)
+
+diff --git a/memory/jemalloc/jemalloc.c b/memory/jemalloc/jemalloc.c
+index ad7c450..91de92c 100644
+--- a/memory/jemalloc/jemalloc.c
++++ b/memory/jemalloc/jemalloc.c
+@@ -410,7 +410,7 @@ void *_mmap(void *addr, size_t length, int prot, int flags,
+ static const bool __isthreaded = true;
+ #endif
+
+-#if defined(MOZ_MEMORY_SOLARIS) && defined(MAP_ALIGN) && !defined(JEMALLOC_NEVER_USES_MAP_ALIGN)
++#if defined(MOZ_MEMORY_SOLARIS) || defined(MOZ_MEMORY_LINUX) || defined(MOZ_MEMORY_BSD)
+ #define JEMALLOC_USES_MAP_ALIGN /* Required on Solaris 10. Might improve performance elsewhere. */
+ #endif
+
+@@ -2181,20 +2181,31 @@ pages_map_align(size_t size, int pfd, size_t alignment)
+ * We don't use MAP_FIXED here, because it can cause the *replacement*
+ * of existing mappings, and we only want to create new mappings.
+ */
+-#ifdef MALLOC_PAGEFILE
+- if (pfd != -1) {
+- ret = mmap((void *)alignment, size, PROT_READ | PROT_WRITE, MAP_PRIVATE |
+- MAP_NOSYNC | MAP_ALIGN, pfd, 0);
+- } else
+-#endif
+- {
+- ret = mmap((void *)alignment, size, PROT_READ | PROT_WRITE, MAP_PRIVATE |
+- MAP_NOSYNC | MAP_ALIGN | MAP_ANON, -1, 0);
+- }
++ ret = mmap(NULL, size + alignment, PROT_READ | PROT_WRITE, MAP_PRIVATE |
++ MAP_NOSYNC| MAP_ANON, -1, 0);
+ assert(ret != NULL);
+
+ if (ret == MAP_FAILED)
+ ret = NULL;
++ else {
++ uintptr_t aligned_ret;
++ size_t extra_size;
++
++ aligned_ret = (uintptr_t)ret + alignment - 1;
++ aligned_ret &= ~(alignment - 1);
++ extra_size = aligned_ret - (uintptr_t)ret;
++ munmap(ret, extra_size);
++ munmap(ret + extra_size + size, alignment - extra_size);
++ ret = (void *)aligned_ret;
++#ifdef MALLOC_PAGEFILE
++ if (pfd != -1) {
++ ret = mmap(ret, size, PROT_READ | PROT_WRITE, MAP_PRIVATE |
++ MAP_NOSYNC | MAP_FIXED, pfd, 0);
++ }
++ if (ret == MAP_FAILED)
++ ret = NULL;
++#endif
++ }
+ return (ret);
+ }
+ #endif
+--
+1.7.7.4
+
diff --git a/testing/xulrunner/0004-xulrunner-malloc_usable_size.patch b/testing/xulrunner/0004-xulrunner-malloc_usable_size.patch
new file mode 100644
index 0000000000..986b183ece
--- /dev/null
+++ b/testing/xulrunner/0004-xulrunner-malloc_usable_size.patch
@@ -0,0 +1,34 @@
+From: Timo Teräs <timo.teras@iki.fi>
+
+malloc_usable_size is not defined on uclibc, so workaround
+that in jemalloc. Fix mozalloc linking.
+
+--- mozilla-release-old/memory/jemalloc/jemalloc.h
++++ mozilla-release/memory/jemalloc/jemalloc.h
+@@ -75,8 +75,12 @@
+ /* Linux has memalign and malloc_usable_size */
+ #if !defined(MOZ_MEMORY_LINUX)
+ void *memalign(size_t alignment, size_t size);
+-size_t malloc_usable_size(const void *ptr);
+ #endif /* MOZ_MEMORY_LINUX */
++
++#include <features.h>
++#if defined(__UCLIBC__) || !defined(MOZ_MEMORY_LINUX)
++size_t malloc_usable_size(const void *ptr);
++#endif
+
+ void jemalloc_stats(jemalloc_stats_t *stats);
+
+--- mozilla-release-old/memory/mozalloc/Makefile.in
++++ mozilla-release/memory/mozalloc/Makefile.in
+@@ -43,6 +43,10 @@
+
+ include $(DEPTH)/config/autoconf.mk
+
++ifdef MOZ_MEMORY
++SHARED_LIBRARY_LIBS = $(call EXPAND_LIBNAME_PATH,jemalloc,../jemalloc)
++endif
++
+ VISIBILITY_FLAGS=
+ STL_FLAGS =
+ ifdef _MSC_VER
diff --git a/testing/xulrunner/APKBUILD b/testing/xulrunner/APKBUILD
new file mode 100644
index 0000000000..e5954846f6
--- /dev/null
+++ b/testing/xulrunner/APKBUILD
@@ -0,0 +1,112 @@
+# Contributor: William Pitcock <nenolod@dereferenced.org>
+# Maintainer: William Pitcock <nenolod@dereferenced.org>
+pkgname=xulrunner
+pkgver=10.0
+_ffoxver=10.0
+pkgrel=4
+pkgdesc="runtime environment for xul-based applications"
+url="http://developer.mozilla.org/en/XULRunner"
+arch="all"
+license="GPL LGPL MPL"
+depends=
+depends_dev="nspr-dev
+ nss-dev
+ gtk+-dev
+ dbus-glib-dev
+ alsa-lib-dev
+ libvorbis-dev
+ libogg-dev
+ libtheora-dev
+ wireless-tools-dev
+ libnotify-dev
+ libevent-dev
+ libxt-dev
+ jpeg-dev
+ bzip2-dev
+ hunspell-dev
+ startup-notification-dev
+ sqlite-dev
+ libidl-dev
+ mesa-dev"
+makedepends="$depends_dev
+
+ autoconf2.13
+
+ python
+ zip
+ yasm
+
+ autoconf
+ automake
+ libtool"
+install=""
+options=""
+subpackages="$pkgname-dev"
+# 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
+ 0002-Use-C99-math-isfinite.patch
+ 0003-xulrunner-jemalloc-aslr.patch
+ 0004-xulrunner-malloc_usable_size.patch
+ ff9-aslr-fix.patch
+ "
+
+_builddir="${srcdir}/mozilla-release"
+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
+
+ cp "${srcdir}/mozconfig" .mozconfig
+}
+
+build() {
+ cd "$_builddir"
+
+ # mozilla's buildsystem is on drugs, so we just kill our CFLAGS and hope
+ # for the best. --nenolod
+ unset CFLAGS
+ unset CXXFLAGS
+
+ make -j1 -f client.mk build \
+ MOZ_MAKE_FLAGS="$MAKEFLAGS" || return 1
+}
+
+package() {
+ cd "$_builddir"
+ make -j1 DESTDIR="$pkgdir" -f client.mk install || return 1
+
+ # make install does not install xpt.py but its needed by firefox
+ mkdir -p "$pkgdir"/usr/lib/xulrunner-devel-$pkgver/sdk/bin
+ cp xpcom/typelib/xpt/tools/xpt.py \
+ "$pkgdir"/usr/lib/xulrunner-devel-$pkgver/sdk/bin/
+
+ msg "Setting up compatibility symlinks..."
+ ln -sf /usr/lib/xulrunner-${pkgver}/libxul.so "${pkgdir}"/usr/lib/libxul.so
+ ln -sf /usr/lib/xulrunner-${pkgver}/libxpcom.so "${pkgdir}"/usr/lib/libxpcom.so
+ ln -sf /usr/lib/xulrunner-${pkgver}/libmozalloc.so "${pkgdir}"/usr/lib/libmozalloc.so
+}
+
+dev() {
+ replaces="xulrunner"
+ depends="xulrunner"
+
+ mkdir -p "${subpkgdir}"/usr/lib
+ mv "${pkgdir}"/usr/lib/xulrunner-devel-${pkgver} "${subpkgdir}"/usr/lib
+ mv "${pkgdir}"/usr/lib/pkgconfig "${subpkgdir}"/usr/lib
+ mv "${pkgdir}"/usr/include "${subpkgdir}"/usr/include
+}
+
+md5sums="13c61203ccfa583e5a54b4dc22f41233 firefox-10.0.source.tar.bz2
+b0f7d491bc800b69ec718667a4b08acb mozconfig
+1867db217d10722675c88b655db8c2d7 0002-Use-C99-math-isfinite.patch
+7faa279d64c9ec2e7abc7c0497c7e07e 0003-xulrunner-jemalloc-aslr.patch
+d12e0636e1f9877ef2d1df45d5834c87 0004-xulrunner-malloc_usable_size.patch
+96b40acd003a0a586e408bf09ae5af1d ff9-aslr-fix.patch"
diff --git a/testing/xulrunner/ff9-aslr-fix.patch b/testing/xulrunner/ff9-aslr-fix.patch
new file mode 100644
index 0000000000..4e4297d0ed
--- /dev/null
+++ b/testing/xulrunner/ff9-aslr-fix.patch
@@ -0,0 +1,40 @@
+--- ./js/src/jsgcchunk.cpp 2011-12-22 17:13:21.000000000 +0000
++++ ./js/src/jsgcchunk.cpp 2011-12-22 17:18:31.000000000 +0000
+@@ -213,7 +213,7 @@
+ #elif defined(XP_UNIX)
+
+ /* Required on Solaris 10. Might improve performance elsewhere. */
+-# if defined(SOLARIS) && defined(MAP_ALIGN)
++# if (defined(SOLARIS) && defined(MAP_ALIGN)) || defined(MOZ_MEMORY_LINUX)
+ # define JS_GC_HAS_MAP_ALIGN
+
+ static void *
+--- ./js/src/jsgcchunk.cpp 2011-12-22 17:55:24.000000000 +0000
++++ ./js/src/jsgcchunk.cpp 2011-12-22 18:02:24.000000000 +0000
+@@ -226,12 +226,24 @@
+ #ifdef SOLARIS
+ void *p = mmap((caddr_t) alignment, size, PROT_READ | PROT_WRITE,
+ MAP_PRIVATE | MAP_NOSYNC | MAP_ALIGN | MAP_ANON, -1, 0);
++ if (p == MAP_FAILED)
++ return NULL;
+ #else
+- void *p = mmap((void *) alignment, size, PROT_READ | PROT_WRITE,
+- MAP_PRIVATE | MAP_NOSYNC | MAP_ALIGN | MAP_ANON, -1, 0);
+-#endif
++ void *p = mmap(NULL, size + alignment, PROT_READ | PROT_WRITE,
++ MAP_PRIVATE | MAP_NOSYNC | MAP_ANON, -1, 0);
+ if (p == MAP_FAILED)
+ return NULL;
++ uintptr_t aligned_ret;
++ size_t extra_size;
++
++ aligned_ret = (uintptr_t)p + alignment - 1;
++ aligned_ret &= ~(alignment - 1);
++ extra_size = aligned_ret - (uintptr_t)p;
++ munmap(p, extra_size);
++ munmap(p + extra_size + size, alignment - extra_size);
++ p = (void *)aligned_ret;
++#endif
++
+ return p;
+ }
diff --git a/testing/xulrunner/mozconfig b/testing/xulrunner/mozconfig
new file mode 100644
index 0000000000..2cbb45b7ae
--- /dev/null
+++ b/testing/xulrunner/mozconfig
@@ -0,0 +1,38 @@
+. $topsrcdir/xulrunner/config/mozconfig
+
+ac_add_options --prefix=/usr
+ac_add_options --libdir=/usr/lib
+ac_add_options --with-system-nspr
+ac_add_options --with-system-nss
+ac_add_options --with-system-jpeg
+ac_add_options --with-system-zlib
+ac_add_options --with-system-bz2
+ac_add_options --with-system-libevent
+ac_add_options --enable-system-hunspell
+ac_add_options --enable-system-sqlite
+ac_add_options --enable-system-cairo
+ac_add_options --with-pthreads
+ac_add_options --enable-strip
+ac_add_options --disable-tests
+ac_add_options --disable-mochitest
+ac_add_options --disable-installer
+ac_add_options --disable-debug
+ac_add_options --enable-optimize
+ac_add_options --enable-default-toolkit=cairo-gtk2
+ac_add_options --enable-pango
+ac_add_options --enable-svg
+ac_add_options --enable-canvas
+ac_add_options --disable-javaxpcom
+ac_add_options --disable-crashreporter
+ac_add_options --enable-safe-browsing
+ac_add_options --enable-startup-notification
+ac_add_options --enable-extensions=default
+ac_add_options --enable-jemalloc
+ac_add_options --disable-elf-hack
+
+# export LIBS="-lubacktrace"
+export BUILD_OFFICIAL=1
+export MOZILLA_OFFICIAL=1
+
+mk_add_options BUILD_OFFICIAL=1
+mk_add_options MOZILLA_OFFICIAL=1
diff --git a/testing/youtube-dl/APKBUILD b/testing/youtube-dl/APKBUILD
new file mode 100644
index 0000000000..29516f83e1
--- /dev/null
+++ b/testing/youtube-dl/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Timo Teräs <timo.teras@iki.fi>
+# Maintainer: Timo Teräs <timo.teras@iki.fi>
+pkgname=youtube-dl
+pkgver=2012.01.08b
+pkgrel=0
+pkgdesc="a small command-line program for downloading videos from YouTube.com"
+url="http://rg3.github.com/youtube-dl/"
+arch="noarch"
+license="Public Domain"
+depends="python>=2.5"
+makedepends="wget"
+install=""
+subpackages=""
+source="https://raw.github.com/rg3/$pkgname/$pkgver/youtube-dl"
+
+_builddir=
+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"
+}
+
+package() {
+ cd "$srcdir"
+ mkdir -p "$pkgdir"/usr/bin
+ install -m 0555 youtube-dl "$pkgdir"/usr/bin
+}
+
+md5sums="a445420376d975a21f0292df5ff6e5b9 youtube-dl"