summaryrefslogtreecommitdiff
path: root/testing
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-07-08 00:04:04 +0000
committerroot <root@rshg054.dnsready.net>2012-07-08 00:04:04 +0000
commita522a5f63f3b5726081698bf742801fb1d242817 (patch)
treeee7d4e7261e7387e755d2a08389250575a4e2552 /testing
parentd0fe8a4769150cf26265e3457c234c45c53e693b (diff)
Sun Jul 8 00:04:04 UTC 2012
Diffstat (limited to 'testing')
-rw-r--r--testing/alsa-plugins/PKGBUILD42
-rw-r--r--testing/alsa-plugins/alsa-plugins-1.0.25-ffmpeg-0.11-obsolete-avcodec_init.patch11
-rw-r--r--testing/alsa-plugins/alsa-plugins-1.0.25-ffmpeg-0.11-renamed-CH_LAYOUT-defs-v2.patch29
-rw-r--r--testing/amarok/PKGBUILD54
-rw-r--r--testing/amarok/amarok-2.5.0-ffmpeg-fixes.patch19
-rw-r--r--testing/amarok/amarok.install12
-rw-r--r--testing/amarok/contextviewfix.patch14
-rw-r--r--testing/amarok/toolbarfix.patch61
-rw-r--r--testing/avidemux/PKGBUILD116
-rw-r--r--testing/avidemux/avidemux.install11
-rw-r--r--testing/dialog/PKGBUILD6
-rw-r--r--testing/ekiga/PKGBUILD39
-rw-r--r--testing/ekiga/ekiga.install22
-rw-r--r--testing/ekiga/gcc47.patch99
-rw-r--r--testing/ffmpeg/PKGBUILD59
-rw-r--r--testing/ffmpegthumbnailer/PKGBUILD39
-rw-r--r--testing/ffmpegthumbnailer/ffmpegapi_fix_r241.patch56
-rw-r--r--testing/ffmpegthumbnailer/ffmpegthumbnailer.desktop4
-rw-r--r--testing/gegl/PKGBUILD36
-rw-r--r--testing/gstreamer0.10-ugly/PKGBUILD51
-rw-r--r--testing/gstreamer0.10-ugly/opencore-amr.patch35
-rw-r--r--testing/k3b/PKGBUILD43
-rw-r--r--testing/k3b/k3b-2.0.2-ffmpeg.patch96
-rw-r--r--testing/k3b/k3b-2.0.2-libavformat54.patch22
-rw-r--r--testing/k3b/k3b.install13
-rw-r--r--testing/kdemultimedia/PKGBUILD111
-rw-r--r--testing/kdemultimedia/ffmpeg0.11.patch29
-rw-r--r--testing/kdemultimedia/kdemultimedia-dragonplayer.install12
-rw-r--r--testing/kdemultimedia/kdemultimedia.install11
-rw-r--r--testing/kdemultimedia/mplayerthumbs.config2
-rw-r--r--testing/kradio/PKGBUILD32
-rw-r--r--testing/kradio/kradio.install11
-rw-r--r--testing/mediastreamer/PKGBUILD33
-rw-r--r--testing/mediastreamer/mediastreamer-ffmpeg.patch205
-rw-r--r--testing/miro/PKGBUILD49
-rw-r--r--testing/miro/ffmpeg.patch63
-rw-r--r--testing/miro/miro.install17
-rw-r--r--testing/moc/PKGBUILD56
-rw-r--r--testing/mpd/PKGBUILD65
-rw-r--r--testing/mpd/install11
-rwxr-xr-xtesting/mpd/rc.d25
-rw-r--r--testing/mpd/tmpfiles.d1
-rw-r--r--testing/opal/PKGBUILD30
-rw-r--r--testing/opal/opal-ffmpeg.patch194
-rw-r--r--testing/postfix/PKGBUILD66
-rw-r--r--testing/postfix/aliases.patch18
-rw-r--r--testing/postfix/install33
-rwxr-xr-xtesting/postfix/rc.d36
-rw-r--r--testing/sox/PKGBUILD45
-rw-r--r--testing/sox/sox-ffmpeg0.11.patch130
-rw-r--r--testing/sox/sox_default_audio_driver_fallback.patch51
-rw-r--r--testing/tinycdb/PKGBUILD26
-rw-r--r--testing/transcode/PKGBUILD61
-rw-r--r--testing/transcode/ffmpeg-0.11.patch130
-rw-r--r--testing/transcode/subtitleripper-0.3.4-linkingorder.patch28
-rw-r--r--testing/transcode/subtitleripper-0.3.4-respect-ldflags.patch28
-rw-r--r--testing/vlc/PKGBUILD89
-rw-r--r--testing/vlc/vlc.install18
-rw-r--r--testing/x264/PKGBUILD35
-rw-r--r--testing/xine-lib/PKGBUILD45
60 files changed, 2782 insertions, 3 deletions
diff --git a/testing/alsa-plugins/PKGBUILD b/testing/alsa-plugins/PKGBUILD
new file mode 100644
index 000000000..7f27f3f21
--- /dev/null
+++ b/testing/alsa-plugins/PKGBUILD
@@ -0,0 +1,42 @@
+# $Id: PKGBUILD 163052 2012-07-06 15:20:44Z ibiru $
+# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Daniel Ehlers <danielehlers@mindeye.net>
+
+pkgname=alsa-plugins
+pkgver=1.0.25
+pkgrel=2
+pkgdesc="Extra alsa plugins"
+arch=(i686 x86_64)
+url="http://www.alsa-project.org"
+license=(GPL)
+depends=(alsa-lib)
+makedepends=(libpulse jack ffmpeg)
+optdepends=('libpulse: PulseAudio plugin'
+ 'jack: Jack plugin'
+ 'ffmpeg: libavcodec resampling plugin'
+ 'libsamplerate: libsamplerate resampling plugin'
+ 'speex: libspeexdsp resampling plugin')
+options=('!libtool')
+source=("ftp://ftp.alsa-project.org/pub/plugins/$pkgname-$pkgver.tar.bz2"
+ alsa-plugins-1.0.25-ffmpeg-0.11-renamed-CH_LAYOUT-defs-v2.patch
+ alsa-plugins-1.0.25-ffmpeg-0.11-obsolete-avcodec_init.patch)
+md5sums=('038c023eaa51171f018fbf7141255185'
+ '50d9adcda20756d063e676a563c201d9'
+ '697c6275f678d86ded2e5092d8a154c9')
+
+build() {
+ cd $pkgname-$pkgver
+ patch -Np1 -i ../alsa-plugins-1.0.25-ffmpeg-0.11-renamed-CH_LAYOUT-defs-v2.patch
+ patch -Np1 -i ../alsa-plugins-1.0.25-ffmpeg-0.11-obsolete-avcodec_init.patch
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd $pkgname-$pkgver
+ make DESTDIR="$pkgdir" install
+
+ install -d "$pkgdir/usr/share/doc/$pkgname"
+ install -m644 doc/README* doc/*.txt "$pkgdir/usr/share/doc/$pkgname/"
+}
diff --git a/testing/alsa-plugins/alsa-plugins-1.0.25-ffmpeg-0.11-obsolete-avcodec_init.patch b/testing/alsa-plugins/alsa-plugins-1.0.25-ffmpeg-0.11-obsolete-avcodec_init.patch
new file mode 100644
index 000000000..cce4f7e7e
--- /dev/null
+++ b/testing/alsa-plugins/alsa-plugins-1.0.25-ffmpeg-0.11-obsolete-avcodec_init.patch
@@ -0,0 +1,11 @@
+diff -u -r alsa-plugins-1.0.25/a52/pcm_a52.c alsa-plugins-1.0.25-ffmpeg/a52/pcm_a52.c
+--- alsa-plugins-1.0.25/a52/pcm_a52.c 2012-01-25 08:57:07.000000000 +0100
++++ alsa-plugins-1.0.25-ffmpeg/a52/pcm_a52.c 2012-06-09 00:42:52.177219012 +0200
+@@ -702,7 +702,6 @@
+ rec->channels = channels;
+ rec->format = format;
+
+- avcodec_init();
+ avcodec_register_all();
+
+ rec->codec = avcodec_find_encoder_by_name("ac3_fixed");
diff --git a/testing/alsa-plugins/alsa-plugins-1.0.25-ffmpeg-0.11-renamed-CH_LAYOUT-defs-v2.patch b/testing/alsa-plugins/alsa-plugins-1.0.25-ffmpeg-0.11-renamed-CH_LAYOUT-defs-v2.patch
new file mode 100644
index 000000000..f4ebbf466
--- /dev/null
+++ b/testing/alsa-plugins/alsa-plugins-1.0.25-ffmpeg-0.11-renamed-CH_LAYOUT-defs-v2.patch
@@ -0,0 +1,29 @@
+Ffmpeg 0.11 (LIBAVCODEC_VERSION_MAJOR = 54) removed the CH_LAYOUT_* aliases for
+the AV_CH_LAYOUT_* defines.
+
+diff -pru alsa-plugins-1.0.25-original/a52/pcm_a52.c alsa-plugins-1.0.25-for-ffmpeg-0.11/a52/pcm_a52.c
+--- alsa-plugins-1.0.25-original/a52/pcm_a52.c 2012-01-25 08:57:07.000000000 +0100
++++ alsa-plugins-1.0.25-for-ffmpeg-0.11/a52/pcm_a52.c 2012-06-01 14:59:47.096671464 +0200
+@@ -441,7 +441,21 @@ static int a52_prepare(snd_pcm_ioplug_t
+ #else
+ rec->avctx->sample_fmt = SAMPLE_FMT_S16;
+ #endif
+-#if LIBAVCODEC_VERSION_MAJOR > 52 || (LIBAVCODEC_VERSION_MAJOR == 52 && LIBAVCODEC_VERSION_MINOR >= 3)
++#if (LIBAVCODEC_VERSION_MAJOR >= 54)
++ switch (io->channels) {
++ case 2:
++ rec->avctx->channel_layout = AV_CH_LAYOUT_STEREO;
++ break;
++ case 4:
++ rec->avctx->channel_layout = AV_CH_LAYOUT_QUAD;
++ break;
++ case 6:
++ rec->avctx->channel_layout = AV_CH_LAYOUT_5POINT1;
++ break;
++ default:
++ break;
++ }
++#elif (LIBAVCODEC_VERSION_MAJOR > 52 && LIBAVCODEC_VERSION_MAJOR < 54) || (LIBAVCODEC_VERSION_MAJOR == 52 && LIBAVCODEC_VERSION_MINOR >= 3)
+ switch (io->channels) {
+ case 2:
+ rec->avctx->channel_layout = CH_LAYOUT_STEREO;
diff --git a/testing/amarok/PKGBUILD b/testing/amarok/PKGBUILD
new file mode 100644
index 000000000..214f7f200
--- /dev/null
+++ b/testing/amarok/PKGBUILD
@@ -0,0 +1,54 @@
+# $Id: PKGBUILD 163053 2012-07-06 15:20:55Z ibiru $
+# Maintainer: Ronald van Haren <ronald@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+# Contributor: damir <damir@archlinux.org>
+
+pkgname=amarok
+replaces=('amarok-base' 'amarok-engine-xine' 'amarok-base-mysqlfree')
+pkgver=2.5.0
+pkgrel=5
+pkgdesc="The powerful music player for KDE"
+arch=("i686" "x86_64")
+url="http://amarok.kde.org"
+license=('GPL2' 'LGPL2.1' 'FDL')
+depends=('kdebase-runtime' 'mysql' 'qtscriptgenerator' 'taglib-extras'
+ 'liblastfm' 'ffmpeg' 'libofa' 'qjson')
+makedepends=('pkgconfig' 'automoc4' 'cmake' 'libgpod' 'libmtp' 'loudmouth'
+ 'libmygpo-qt')
+optdepends=("libgpod: support for Apple iPod audio devices"
+ "libmtp: support for portable media devices"
+ "loudmouth: backend needed by mp3tunes for syncing"
+ "ifuse: support for Apple iPod Touch and iPhone"
+ "libmygpo-qt: gpodder.net Internet Service")
+install="${pkgname}.install"
+source=("http://download.kde.org/stable/${pkgname}/${pkgver}/src/${pkgname}-${pkgver}.tar.bz2"
+ "toolbarfix.patch"
+ "amarok-2.5.0-ffmpeg-fixes.patch"
+ "contextviewfix.patch")
+sha1sums=('9849900d20225e703c43d242650a8fa211cf15f2'
+ 'd22bc6a36a33ea12035ebbb8959d1fdfbb39275f'
+ '61193ccc48e9f99b4856eef27fe7a4aaf465feec'
+ 'a95e3bfb177adacc268552ae479dd88b70f5f9e1')
+
+build() {
+ cd "${srcdir}"
+
+ patch -Np0 -i "${srcdir}"/toolbarfix.patch
+ patch -Np0 -i "${srcdir}"/amarok-2.5.0-ffmpeg-fixes.patch
+
+ pushd ${pkgname}-${pkgver}
+ patch -Np1 -i "${srcdir}"/contextviewfix.patch # FS#30448
+ popd
+
+ mkdir build
+ cd build
+ cmake ../${pkgname}-${pkgver} \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ make
+}
+
+package(){
+ cd "${srcdir}"/build
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/testing/amarok/amarok-2.5.0-ffmpeg-fixes.patch b/testing/amarok/amarok-2.5.0-ffmpeg-fixes.patch
new file mode 100644
index 000000000..602fe47f5
--- /dev/null
+++ b/testing/amarok/amarok-2.5.0-ffmpeg-fixes.patch
@@ -0,0 +1,19 @@
+diff -upr amarok-2.5.0.orig/src/musicbrainz/MusicDNSAudioDecoder.cpp amarok-2.5.0/src/musicbrainz/MusicDNSAudioDecoder.cpp
+--- amarok-2.5.0.orig/src/musicbrainz/MusicDNSAudioDecoder.cpp 2012-06-07 16:12:22.000000000 +0300
++++ amarok-2.5.0/src/musicbrainz/MusicDNSAudioDecoder.cpp 2012-06-07 16:14:56.000000000 +0300
+@@ -136,7 +136,7 @@ MusicDNSAudioDecoder::run()
+ foreach( Meta::TrackPtr track, m_tracks )
+ {
+ //TODO replace with "avformat_open_input" since av_open_input_file is deprecated
+- if( av_open_input_file( &pFormatCtx, ( const char * )track->playableUrl().toLocalFile().toAscii(), NULL, 0, NULL ) )
++ if( avformat_open_input( &pFormatCtx, ( const char * )track->playableUrl().toLocalFile().toAscii(), NULL, NULL ) )
+ {
+ warning() << QLatin1String( "Unable to open input file: " ) + track->playableUrl().toLocalFile();
+ continue;
+@@ -259,4 +259,4 @@ MusicDNSAudioDecoder::run()
+ }
+
+
+-#include "MusicDNSAudioDecoder.moc"
+\ No newline at end of file
++#include "MusicDNSAudioDecoder.moc"
diff --git a/testing/amarok/amarok.install b/testing/amarok/amarok.install
new file mode 100644
index 000000000..81ce5c4b0
--- /dev/null
+++ b/testing/amarok/amarok.install
@@ -0,0 +1,12 @@
+post_install() {
+ xdg-icon-resource forceupdate --theme hicolor &> /dev/null
+ update-desktop-database -q
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/testing/amarok/contextviewfix.patch b/testing/amarok/contextviewfix.patch
new file mode 100644
index 000000000..2363b623c
--- /dev/null
+++ b/testing/amarok/contextviewfix.patch
@@ -0,0 +1,14 @@
+diff --git a/src/context/containments/verticallayout/VerticalToolbarContainment.cpp b/src/context/containments/verticallayout/VerticalToolbarContainment.cpp
+index a23305f..8fa6f9b 100644
+--- a/src/context/containments/verticallayout/VerticalToolbarContainment.cpp
++++ b/src/context/containments/verticallayout/VerticalToolbarContainment.cpp
+@@ -129,7 +129,8 @@ Context::VerticalToolbarContainment::updateGeometry()
+ if(!view())
+ return;
+
+- QRectF rect = view()->sceneRect();
++ // mimic ContextView::resizeEvent(), nothing else seems to work, bug 292895
++ QRectF rect( view()->pos(), view()->maximumViewportSize() );
+ setGeometry( rect );
+ m_applets->setGeometry( rect );
+ m_applets->refresh(); \ No newline at end of file
diff --git a/testing/amarok/toolbarfix.patch b/testing/amarok/toolbarfix.patch
new file mode 100644
index 000000000..ec012ca74
--- /dev/null
+++ b/testing/amarok/toolbarfix.patch
@@ -0,0 +1,61 @@
+diff -rup amarok-2.5.0/src/context/toolbar/AppletToolbar.cpp amarok-2.5.0.new/src/context/toolbar/AppletToolbar.cpp
+--- amarok-2.5.0/src/context/toolbar/AppletToolbar.cpp 2011-12-15 08:36:48.000000000 +0100
++++ amarok-2.5.0.new/src/context/toolbar/AppletToolbar.cpp 2012-01-29 20:20:01.901360205 +0100
+@@ -108,6 +108,17 @@ Context::AppletToolbar::appletRemoved( P
+ }
+ }
+
++void Context::AppletToolbar::setContainment( Containment * containment )
++{
++ m_cont = containment;
++}
++
++Context::Containment *
++Context::AppletToolbar::containment() const
++{
++ return m_cont;
++}
++
+ QSizeF
+ Context::AppletToolbar::sizeHint( Qt::SizeHint which, const QSizeF &constraint ) const
+ {
+Only in amarok-2.5.0.new/src/context/toolbar: AppletToolbar.cpp.orig
+Only in amarok-2.5.0.new/src/context/toolbar: AppletToolbar.cpp.rej
+diff -rup amarok-2.5.0/src/context/toolbar/AppletToolbar.h amarok-2.5.0.new/src/context/toolbar/AppletToolbar.h
+--- amarok-2.5.0/src/context/toolbar/AppletToolbar.h 2011-12-15 08:36:48.000000000 +0100
++++ amarok-2.5.0.new/src/context/toolbar/AppletToolbar.h 2012-01-29 20:17:52.414686784 +0100
+@@ -55,6 +55,9 @@ class AppletToolbar : public QGraphicsWi
+
+ void appletRemoved( Plasma::Applet* applet );
+
++ void setContainment( Containment * containment );
++ Containment* containment() const;
++
+ signals:
+ void showApplet( Plasma::Applet* );
+ void appletAddedToToolbar( Plasma::Applet* applet, int loc );
+Only in amarok-2.5.0.new/src/context/toolbar: AppletToolbar.h.orig
+diff -rup amarok-2.5.0/src/context/ToolbarView.cpp amarok-2.5.0.new/src/context/ToolbarView.cpp
+--- amarok-2.5.0/src/context/ToolbarView.cpp 2011-12-15 08:36:48.000000000 +0100
++++ amarok-2.5.0.new/src/context/ToolbarView.cpp 2012-01-29 20:17:52.394686782 +0100
+@@ -74,7 +74,9 @@ Context::ToolbarView::ToolbarView( Plasm
+ setVerticalScrollBarPolicy( Qt::ScrollBarAlwaysOff );
+
+ // now we create the toolbar
+- m_toolbar = new AppletToolbar( containment );
++ m_toolbar = new AppletToolbar(0);
++ scene->addItem(m_toolbar.data());
++ m_toolbar.data()->setContainment( qobject_cast<Context::Containment *>(containment) );
+ m_toolbar.data()->setZValue( m_toolbar.data()->zValue() + 1000 );
+ m_toolbar.data()->setPos( TOOLBAR_X_OFFSET, 0 );
+
+@@ -96,7 +98,7 @@ Context::ToolbarView::ToolbarView( Plasm
+
+ Context::ToolbarView::~ToolbarView()
+ {
+-
++ delete m_toolbar.data();
+ }
+
+ void
+Only in amarok-2.5.0.new/src/context: ToolbarView.cpp.orig
diff --git a/testing/avidemux/PKGBUILD b/testing/avidemux/PKGBUILD
new file mode 100644
index 000000000..4f540d839
--- /dev/null
+++ b/testing/avidemux/PKGBUILD
@@ -0,0 +1,116 @@
+# $Id: PKGBUILD 163075 2012-07-06 16:17:06Z ibiru $
+# Maintainer: Eric Bélanger <eric@archlinux.org>
+
+pkgbase=avidemux
+pkgname=('avidemux-cli' 'avidemux-gtk' 'avidemux-qt')
+pkgver=2.5.6
+pkgrel=3
+arch=('i686' 'x86_64')
+license=('GPL')
+url="http://fixounet.free.fr/avidemux/"
+makedepends=('cmake' 'libxslt' 'gtk2' 'qt' 'jack' 'libvorbis' 'sdl' 'libxv' \
+ 'alsa-lib' 'lame' 'xvidcore' 'faad2' 'faac' 'x264' 'libsamplerate' \
+ 'opencore-amr' 'yasm' 'mesa' 'libvpx' 'libpulse' 'libva')
+options=('!makeflags')
+source=(http://downloads.sourceforge.net/avidemux/avidemux_${pkgver}.tar.gz)
+sha1sums=('47205c236bf6a4435b9d4dd944493c7b7e2752f5')
+
+build() {
+ cd "${srcdir}/${pkgbase}_${pkgver}"
+ mkdir build
+ cd build
+ cmake -D CMAKE_INSTALL_PREFIX=/usr -D CMAKE_BUILD_TYPE=Release -D CMAKE_SKIP_RPATH=ON -D GTK=1 -D QT4=1 ..
+ make
+
+# plugin build expects libraries to be already installed; we fake a prefix
+# in build/ by symlinking all libraries to build/lib/
+ mkdir -p lib
+ cd lib
+ find ../avidemux -name '*.so*' | xargs ln -sft .
+ cd ../../plugins
+ mkdir build
+ cd build
+ cmake -D CMAKE_INSTALL_PREFIX=/usr -D AVIDEMUX_SOURCE_DIR="${srcdir}/avidemux_${pkgver}" \
+ -D AVIDEMUX_CORECONFIG_DIR="${srcdir}/avidemux_${pkgver}/build/config" \
+ -D AVIDEMUX_INSTALL_PREFIX="${srcdir}/avidemux_${pkgver}/build" \
+ -D CMAKE_BUILD_TYPE=Release -D CMAKE_SKIP_RPATH=ON ..
+ make
+}
+
+package_avidemux-cli() {
+ pkgdesc="A graphical tool to edit video (filter/re-encode/split)"
+ depends=('libxml2' 'sdl' 'fontconfig' 'libvpx' 'libva')
+ optdepends=('lame: for the corresponding audio encoder plugin'
+ 'faac: for the corresponding audio encoder plugin'
+ 'faad2: for the corresponding audio decoder plugin'
+ 'opencore-amr: for the corresponding audio decoder plugin'
+ 'jack: for the corresponding audio device plugin'
+ 'libpulse: for the corresponding audio device plugin'
+ 'sdl: for the corresponding audio device plugin'
+ 'x264: for the corresponding video encoder plugin'
+ 'xvidcore: for the corresponding video encoder plugin')
+ provides=('avidemux')
+ conflicts=('avidemux')
+ replaces=('avidemux')
+
+ cd "${srcdir}/${pkgbase}_${pkgver}/build"
+ make DESTDIR="${pkgdir}" install
+
+ cd "${srcdir}/${pkgbase}_${pkgver}/plugins/build"
+ make DESTDIR="${pkgdir}" install
+ rm -r "${pkgdir}"/usr/share/avidemux
+ rm "${pkgdir}"/usr/bin/avidemux2_{gtk,qt4}
+ rm "${pkgdir}"/usr/lib/*{_gtk,_qt4,Gtk,QT4}.so
+ rm "${pkgdir}"/usr/lib/ADM_plugins/videoEncoder/x264/*{Gtk,Qt}.so
+ rm "${pkgdir}"/usr/lib/ADM_plugins/videoEncoder/xvid/*{Gtk,Qt}.so
+ rm "${pkgdir}"/usr/lib/ADM_plugins/videoFilter/*{_gtk,_qt4}.so
+
+ ln -s /usr/lib/ADM_plugins/videoEncoder/libADM_vidEnc_xvid.so "${pkgdir}/usr/lib/libADM_vidEnc_xvid.so"
+ ln -s /usr/lib/ADM_plugins/videoEncoder/libADM_vidEnc_x264.so "${pkgdir}/usr/lib/libADM_vidEnc_x264.so"
+
+ install -D -m644 ../../avidemux_icon.png "${pkgdir}/usr/share/pixmaps/avidemux.png"
+ install -D -m644 ../../man/avidemux.1 "${pkgdir}/usr/share/man/man1/avidemux.1"
+}
+
+package_avidemux-gtk() {
+ pkgdesc="A graphical tool to edit video (filter/re-encode/split) - GTK GUI"
+ depends=("avidemux-cli=${pkgver}" 'gtk2' 'libxv' 'desktop-file-utils')
+ install=avidemux.install
+
+ cd "${srcdir}/${pkgbase}_${pkgver}"
+ install -D -m755 build/avidemux/avidemux2_gtk "${pkgdir}/usr/bin/avidemux2_gtk"
+
+ install -d "${pkgdir}"/usr/lib/ADM_plugins/videoEncoder/{x264,xvid}
+ install -d "${pkgdir}"/usr/lib/ADM_plugins/videoFilter
+
+ install -D -m755 build/lib/*{_gtk,Gtk}.so "${pkgdir}/usr/lib"
+ install -D -m755 plugins/build/ADM_videoEncoder/ADM_vidEnc_x264/gtk/*Gtk.so "${pkgdir}/usr/lib/ADM_plugins/videoEncoder/x264"
+ install -D -m755 plugins/build/ADM_videoEncoder/ADM_vidEnc_xvid/gtk/*Gtk.so "${pkgdir}/usr/lib/ADM_plugins/videoEncoder/xvid"
+ install -D -m755 plugins/build/ADM_videoFilters/*/*_gtk.so "${pkgdir}/usr/lib/ADM_plugins/videoFilter"
+
+ install -D -m644 avidemux2-gtk.desktop "${pkgdir}/usr/share/applications/avidemux-gtk.desktop"
+ sed -i "s|\[\$e\]||" "${pkgdir}/usr/share/applications/avidemux-gtk.desktop"
+}
+
+package_avidemux-qt() {
+ pkgdesc="A graphical tool to edit video (filter/re-encode/split) - QT GUI"
+ depends=("avidemux-cli=${pkgver}" 'qt')
+ install=avidemux.install
+
+ cd "${srcdir}/${pkgbase}_${pkgver}"
+ install -D -m755 build/avidemux/avidemux2_qt4 "${pkgdir}/usr/bin/avidemux2_qt4"
+ install -d "${pkgdir}"/usr/lib/ADM_plugins/videoEncoder/{x264,xvid}
+ install -d "${pkgdir}"/usr/lib/ADM_plugins/videoFilter
+
+ install -D -m755 build/lib/*{_qt4,QT4}.so "${pkgdir}/usr/lib"
+ install -D -m755 plugins/build/ADM_videoEncoder/ADM_vidEnc_x264/qt4/*Qt.so "${pkgdir}/usr/lib/ADM_plugins/videoEncoder/x264"
+ install -D -m755 plugins/build/ADM_videoEncoder/ADM_vidEnc_xvid/qt4/*Qt.so "${pkgdir}/usr/lib/ADM_plugins/videoEncoder/xvid"
+ install -D -m755 plugins/build/ADM_videoFilters/*/*_qt4.so "${pkgdir}/usr/lib/ADM_plugins/videoFilter"
+
+ install -d "${pkgdir}/usr/share/avidemux/i18n"
+ install -D -m644 build/po/*.qm "${pkgdir}/usr/share/avidemux/i18n"
+
+ install -D -m644 avidemux2.desktop "${pkgdir}/usr/share/applications/avidemux-qt.desktop"
+ sed -i 's/Name=avidemux2/Name=avidemux (QT)/' "${pkgdir}/usr/share/applications/avidemux-qt.desktop"
+ sed -i 's/avidemux2_gtk/avidemux2_qt4/' "${pkgdir}/usr/share/applications/avidemux-qt.desktop"
+}
diff --git a/testing/avidemux/avidemux.install b/testing/avidemux/avidemux.install
new file mode 100644
index 000000000..e111ef946
--- /dev/null
+++ b/testing/avidemux/avidemux.install
@@ -0,0 +1,11 @@
+post_install() {
+ update-desktop-database -q
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/testing/dialog/PKGBUILD b/testing/dialog/PKGBUILD
index e23467ea3..f324a31f4 100644
--- a/testing/dialog/PKGBUILD
+++ b/testing/dialog/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 163021 2012-07-05 20:52:01Z stephane $
+# $Id: PKGBUILD 163091 2012-07-06 20:37:15Z stephane $
# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: Andreas Radke <andyrtr@archlinux.org>
pkgname=dialog
-pkgver=1.1_20120703
+pkgver=1.1_20120706
pkgrel=1
pkgdesc="A tool to display dialog boxes from shell scripts"
arch=('i686' 'x86_64')
@@ -12,7 +12,7 @@ url="http://invisible-island.net/dialog/"
license=('LGPL2.1')
depends=('ncurses')
source=(ftp://invisible-island.net/${pkgname}/${pkgname}-${pkgver/_/-}.tgz)
-sha1sums=('f9949cef2c95d9bd8f2b9d6793dc640bcaa7ff40')
+sha1sums=('fa033f0fb166da86e29d70e68159a92a9b9cdb84')
build() {
cd "${srcdir}/$pkgname-${pkgver/_/-}"
diff --git a/testing/ekiga/PKGBUILD b/testing/ekiga/PKGBUILD
new file mode 100644
index 000000000..607051ba4
--- /dev/null
+++ b/testing/ekiga/PKGBUILD
@@ -0,0 +1,39 @@
+# $Id: PKGBUILD 163076 2012-07-06 16:17:13Z ibiru $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+# Contributor: Tom K <tomk@runbox.com>
+
+pkgname=ekiga
+pkgver=3.3.2
+pkgrel=5
+pkgdesc="VOIP/Videoconferencing app with full SIP and H.323 support (GnomeMeeting expanded and renamed)"
+url="http://www.ekiga.org"
+license=(GPL)
+arch=(i686 x86_64)
+depends=('opal' 'boost-libs' 'libxv' 'libnotify' 'hicolor-icon-theme' 'avahi' 'gtk2' 'gconf')
+makedepends=('intltool' 'gnome-doc-utils' 'evolution-data-server' 'boost')
+optdepends=('evolution-data-server: Evolution integration')
+options=(!emptydirs)
+groups=('gnome-extra')
+install=ekiga.install
+source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz
+ gcc47.patch)
+sha256sums=('d4dd47a47696c53e6f3839eef6e0e896dd3d07babb2e68ff8fe994d67ba8807a'
+ '9e3000016e1174be5d6cc60c89abeaeb61a98eb163a38abf11f4af4f2d6363ec')
+
+build() {
+ cd "$pkgname-$pkgver"
+ patch -Np1 -i "$srcdir/gcc47.patch"
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --localstatedir=/var --disable-schemas-install \
+ --disable-scrollkeeper --enable-dbus
+ make
+}
+
+package() {
+ cd "$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 install
+
+ install -m755 -d "$pkgdir/usr/share/gconf/schemas"
+ gconf-merge-schema "$pkgdir/usr/share/gconf/schemas/$pkgname.schemas" --domain ekiga "$pkgdir"/etc/gconf/schemas/*.schemas
+ rm -f "$pkgdir"/etc/gconf/schemas/*.schemas
+}
diff --git a/testing/ekiga/ekiga.install b/testing/ekiga/ekiga.install
new file mode 100644
index 000000000..91f3a57a0
--- /dev/null
+++ b/testing/ekiga/ekiga.install
@@ -0,0 +1,22 @@
+pkgname=ekiga
+
+post_install() {
+ gconfpkg --install $pkgname
+ gtk-update-icon-cache -q -t -f /usr/share/icons/hicolor
+}
+
+pre_upgrade() {
+ pre_remove $1
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ gconfpkg --uninstall $pkgname
+}
+
+post_remove() {
+ gtk-update-icon-cache -q -t -f /usr/share/icons/hicolor
+}
diff --git a/testing/ekiga/gcc47.patch b/testing/ekiga/gcc47.patch
new file mode 100644
index 000000000..f12c37524
--- /dev/null
+++ b/testing/ekiga/gcc47.patch
@@ -0,0 +1,99 @@
+From f81a43f2c4ed5e5083e3a850bc7164d11a910358 Mon Sep 17 00:00:00 2001
+From: Eugen Dedu <Eugen.Dedu@pu-pm.univ-fcomte.fr>
+Date: Sat, 24 Mar 2012 09:17:40 +0000
+Subject: Fix compile error with gcc 4.7
+
+---
+diff --git a/lib/engine/account/bank-impl.h b/lib/engine/account/bank-impl.h
+index e16848e..b0a8775 100644
+--- a/lib/engine/account/bank-impl.h
++++ b/lib/engine/account/bank-impl.h
+@@ -203,7 +203,7 @@ template<typename AccountType>
+ void
+ Ekiga::BankImpl<AccountType>::add_account (boost::shared_ptr<AccountType> account)
+ {
+- add_object (account);
++ this->add_object (account);
+
+ account->questions.connect (boost::ref (questions));
+ }
+@@ -213,7 +213,7 @@ template<typename AccountType>
+ void
+ Ekiga::BankImpl<AccountType>::remove_account (boost::shared_ptr<AccountType> account)
+ {
+- remove_object (account);
++ this->remove_object (account);
+ }
+
+ #endif
+diff --git a/lib/engine/addressbook/book-impl.h b/lib/engine/addressbook/book-impl.h
+index 711d8d9..4fea7d5 100644
+--- a/lib/engine/addressbook/book-impl.h
++++ b/lib/engine/addressbook/book-impl.h
+@@ -204,7 +204,7 @@ void
+ Ekiga::BookImpl<ContactType>::add_contact (boost::shared_ptr<ContactType> contact)
+ {
+ contact->questions.connect (boost::ref (questions));
+- add_object (contact);
++ this->add_object (contact);
+ }
+
+
+@@ -212,7 +212,7 @@ template<typename ContactType>
+ void
+ Ekiga::BookImpl<ContactType>::remove_contact (boost::shared_ptr<ContactType> contact)
+ {
+- remove_object (contact);
++ this->remove_object (contact);
+ }
+
+ #endif
+diff --git a/lib/engine/addressbook/source-impl.h b/lib/engine/addressbook/source-impl.h
+index a30cd03..630236f 100644
+--- a/lib/engine/addressbook/source-impl.h
++++ b/lib/engine/addressbook/source-impl.h
+@@ -206,7 +206,7 @@ template<typename BookType>
+ void
+ Ekiga::SourceImpl<BookType>::add_book (boost::shared_ptr<BookType> book)
+ {
+- add_object (book);
++ this->add_object (book);
+
+ add_connection (book, book->contact_added.connect (boost::bind (boost::ref (contact_added), book, _1)));
+
+diff --git a/lib/engine/presence/cluster-impl.h b/lib/engine/presence/cluster-impl.h
+index 245a7c6..92074a8 100644
+--- a/lib/engine/presence/cluster-impl.h
++++ b/lib/engine/presence/cluster-impl.h
+@@ -147,7 +147,7 @@ Ekiga::ClusterImpl<HeapType>::add_heap (boost::shared_ptr<HeapType> heap)
+
+ add_connection (heap, heap->questions.connect (boost::ref (questions)));
+
+- add_object (heap);
++ this->add_object (heap);
+ }
+
+ template<typename HeapType>
+diff --git a/lib/engine/presence/heap-impl.h b/lib/engine/presence/heap-impl.h
+index d63c491..15fe86f 100644
+--- a/lib/engine/presence/heap-impl.h
++++ b/lib/engine/presence/heap-impl.h
+@@ -160,14 +160,14 @@ Ekiga::HeapImpl<PresentityType>::add_presentity (boost::shared_ptr<PresentityTyp
+ {
+ presentity->questions.connect (boost::ref (questions));
+
+- add_object (presentity);
++ this->add_object (presentity);
+ }
+
+ template<typename PresentityType>
+ void
+ Ekiga::HeapImpl<PresentityType>::remove_presentity (boost::shared_ptr<PresentityType> presentity)
+ {
+- remove_object (presentity);
++ this->remove_object (presentity);
+ }
+
+ #endif
+--
+cgit v0.9.0.2
diff --git a/testing/ffmpeg/PKGBUILD b/testing/ffmpeg/PKGBUILD
new file mode 100644
index 000000000..265d45050
--- /dev/null
+++ b/testing/ffmpeg/PKGBUILD
@@ -0,0 +1,59 @@
+# $Id: PKGBUILD 163055 2012-07-06 15:21:01Z ibiru $
+# Maintainer : Ionut Biru <ibiru@archlinux.org>
+# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
+# Contributor: Paul Mattal <paul@archlinux.org>
+
+pkgname=ffmpeg
+pkgver=0.11.1
+pkgrel=1
+epoch=1
+pkgdesc="Complete and free Internet live audio and video broadcasting solution for Linux/Unix"
+arch=('i686' 'x86_64')
+url="http://ffmpeg.org/"
+license=('GPL')
+depends=(alsa-lib bzip2 gsm lame libpulse libtheora libva libvorbis libvpx opencore-amr openjpeg rtmpdump schroedinger sdl speex v4l-utils x264 xvidcore zlib)
+makedepends=('yasm' 'git' 'libvdpau')
+source=(http://ffmpeg.org/releases/$pkgname-$pkgver.tar.bz2)
+md5sums=('ff8cb914f657e164dd60ea1008b555a8')
+
+build() {
+ cd $pkgname-$pkgver
+
+ ./configure \
+ --prefix=/usr \
+ --enable-libmp3lame \
+ --enable-libvorbis \
+ --enable-libxvid \
+ --enable-libx264 \
+ --enable-libvpx \
+ --enable-libtheora \
+ --enable-libgsm \
+ --enable-libspeex \
+ --enable-postproc \
+ --enable-shared \
+ --enable-x11grab \
+ --enable-libopencore_amrnb \
+ --enable-libopencore_amrwb \
+ --enable-libschroedinger \
+ --enable-libopenjpeg \
+ --enable-librtmp \
+ --enable-libpulse \
+ --enable-libv4l2 \
+ --enable-gpl \
+ --enable-version3 \
+ --enable-runtime-cpudetect \
+ --disable-debug \
+ --disable-static
+
+ make
+ make tools/qt-faststart
+ make doc/ff{mpeg,play,server}.1
+}
+
+package() {
+ cd $pkgname-$pkgver
+ make DESTDIR="$pkgdir" install install-man
+ install -D -m755 tools/qt-faststart "$pkgdir/usr/bin/qt-faststart"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/testing/ffmpegthumbnailer/PKGBUILD b/testing/ffmpegthumbnailer/PKGBUILD
new file mode 100644
index 000000000..f9afaf39a
--- /dev/null
+++ b/testing/ffmpegthumbnailer/PKGBUILD
@@ -0,0 +1,39 @@
+# $Id: PKGBUILD 23110 2010-08-06 11:01:51Z rvanharen $
+# Maintainer: Ronald van Haren <ronald.archlinux.org>
+# Contributor: boromil@gmail.com
+
+pkgname=ffmpegthumbnailer
+pkgver=2.0.7
+pkgrel=5
+pkgdesc="Lightweight video thumbnailer that can be used by file managers."
+url="http://code.google.com/p/ffmpegthumbnailer/"
+license=('GPL2')
+arch=('i686' 'x86_64')
+depends=('ffmpeg' 'libjpeg' 'libpng')
+optdepends=('gvfs: support for gio uris')
+source=("http://ffmpegthumbnailer.googlecode.com/files/$pkgname-$pkgver.tar.gz"
+ 'ffmpegthumbnailer.desktop' 'ffmpegapi_fix_r241.patch')
+options=('!libtool')
+sha1sums=('b8f5371aa995fefd1fb75e306e8cd76e8c9f3a73'
+ 'bdd3ae35a5c6f0e1f4b0c7926f72b3429b2eaa53'
+ '4e1a6a0f06ae3ae322ea44046599ebf3ab693cb6')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ # Don't use deprecated (removed?) ffmpeg api
+ patch -Np0 -i "${srcdir}/ffmpegapi_fix_r241.patch"
+
+ ./configure --prefix=/usr --enable-gio
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+
+ # FS#24105: Generate thumbnails in nautilus
+ # FS#26540: Rename to .thumbnailer for nautilus
+ install -Dm644 "${srcdir}/ffmpegthumbnailer.desktop" \
+ "${pkgdir}/usr/share/thumbnailers/ffmpegthumbnailer.thumbnailer"
+}
diff --git a/testing/ffmpegthumbnailer/ffmpegapi_fix_r241.patch b/testing/ffmpegthumbnailer/ffmpegapi_fix_r241.patch
new file mode 100644
index 000000000..37e65b059
--- /dev/null
+++ b/testing/ffmpegthumbnailer/ffmpegapi_fix_r241.patch
@@ -0,0 +1,56 @@
+--- libffmpegthumbnailer/moviedecoder.cpp.old 2012-05-20 11:57:04.503450287 +0200
++++ libffmpegthumbnailer/moviedecoder.cpp 2012-05-20 11:57:14.633450566 +0200
+@@ -58,19 +58,26 @@
+ void MovieDecoder::initialize(const string& filename)
+ {
+ av_register_all();
+- avcodec_init();
+ avcodec_register_all();
+
+ string inputFile = filename == "-" ? "pipe:" : filename;
+ m_AllowSeek = (filename != "-") && (filename.find("rtsp://") != 0);
+-
++
++#if LIBAVCODEC_VERSION_MAJOR < 53
+ if ((!m_FormatContextWasGiven) && av_open_input_file(&m_pFormatContext, inputFile.c_str(), NULL, 0, NULL) != 0)
++#else
++ if ((!m_FormatContextWasGiven) && avformat_open_input(&m_pFormatContext, inputFile.c_str(), NULL, NULL) != 0)
++#endif
+ {
+ destroy();
+ throw logic_error(string("Could not open input file: ") + filename);
+ }
+
++#if LIBAVCODEC_VERSION_MAJOR < 53
+ if (av_find_stream_info(m_pFormatContext) < 0)
++#else
++ if (avformat_find_stream_info(m_pFormatContext, NULL) < 0)
++#endif
+ {
+ destroy();
+ throw logic_error(string("Could not find stream information"));
+@@ -90,8 +97,12 @@
+
+ if ((!m_FormatContextWasGiven) && m_pFormatContext)
+ {
++#if LIBAVCODEC_VERSION_MAJOR < 53
+ av_close_input_file(m_pFormatContext);
+ m_pFormatContext = NULL;
++#else
++ avformat_close_input(&m_pFormatContext);
++#endif
+ }
+
+ if (m_pPacket)
+@@ -159,7 +170,11 @@
+
+ m_pVideoCodecContext->workaround_bugs = 1;
+
++#if LIBAVCODEC_VERSION_MAJOR < 53
+ if (avcodec_open(m_pVideoCodecContext, m_pVideoCodec) < 0)
++#else
++ if (avcodec_open2(m_pVideoCodecContext, m_pVideoCodec, NULL) < 0)
++#endif
+ {
+ throw logic_error("Could not open video codec");
+ }
diff --git a/testing/ffmpegthumbnailer/ffmpegthumbnailer.desktop b/testing/ffmpegthumbnailer/ffmpegthumbnailer.desktop
new file mode 100644
index 000000000..79203e5bc
--- /dev/null
+++ b/testing/ffmpegthumbnailer/ffmpegthumbnailer.desktop
@@ -0,0 +1,4 @@
+[Thumbnailer Entry]
+TryExec=ffmpegthumbnailer
+Exec=ffmpegthumbnailer -s %s -i %u -o %o -c png -f -t 10
+MimeType=video/flv;video/webm;video/mkv;video/mp4;video/mpeg;video/avi;video/ogg;video/quicktime;video/x-avi;video/x-flv;video/x-mp4;video/x-mpeg;video/x-webm;video/x-mkv;application/x-extension-webm;video/x-matroska;video/x-ms-wmv;video/x-msvideo;video/x-msvideo/avi;video/x-theora/ogg;video/x-theora/ogv;video/x-ms-asf;video/x-m4v;
diff --git a/testing/gegl/PKGBUILD b/testing/gegl/PKGBUILD
new file mode 100644
index 000000000..af0262d65
--- /dev/null
+++ b/testing/gegl/PKGBUILD
@@ -0,0 +1,36 @@
+# $Id: PKGBUILD 163057 2012-07-06 15:21:11Z ibiru $
+# Maintainer: Daniel Isenmann <daniel@archlinux.org>
+
+pkgname=gegl
+pkgver=0.2.0
+pkgrel=2
+pkgdesc="Graph based image processing framework"
+arch=('i686' 'x86_64')
+url="http://www.gegl.org/"
+license=('GPL3' 'LGPL3')
+depends=('babl' 'gtk2')
+makedepends=('intltool' 'ruby' 'lua' 'openexr' 'ffmpeg' 'librsvg' 'jasper' 'exiv2')
+optdepends=('openexr: for using the openexr plugin' \
+ 'ffmpeg: for using the ffmpeg plugin' \
+ 'librsvg: for using the svg plugin' \
+ 'jasper: for using the jasper plugin')
+options=('!libtool')
+source=(ftp://ftp.gimp.org/pub/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha1sums=('764cc66cb3c7b261b8fc18a6268a0e264a91d573')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure --prefix=/usr --with-sdl --with-openexr --with-librsvg \
+ --with-libavformat --with-jasper --disable-docs
+ make
+}
+
+check() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make check
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/testing/gstreamer0.10-ugly/PKGBUILD b/testing/gstreamer0.10-ugly/PKGBUILD
new file mode 100644
index 000000000..fd4ee2dec
--- /dev/null
+++ b/testing/gstreamer0.10-ugly/PKGBUILD
@@ -0,0 +1,51 @@
+# $Id: PKGBUILD 163077 2012-07-06 16:17:18Z ibiru $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+
+pkgbase=gstreamer0.10-ugly
+pkgname=('gstreamer0.10-ugly' 'gstreamer0.10-ugly-plugins')
+pkgver=0.10.19
+pkgrel=2
+arch=('i686' 'x86_64')
+license=('LGPL')
+makedepends=('pkgconfig' 'gstreamer0.10-base>=0.10.34' 'libdvdread' 'lame' 'libmpeg2' 'a52dec' 'libmad' 'libsidplay' 'libcdio' 'x264' 'opencore-amr')
+url="http://gstreamer.freedesktop.org/"
+options=(!libtool)
+source=(${url}/src/gst-plugins-ugly/gst-plugins-ugly-${pkgver}.tar.xz
+ opencore-amr.patch)
+md5sums=('ba26045c8c8c91f0d48d327ccf53ac0c'
+ 'd8feb6c99bfaff8be6b2c48ea4e98e47')
+
+build() {
+ cd "${srcdir}/gst-plugins-ugly-${pkgver}"
+ patch -Np0 -i "${srcdir}/opencore-amr.patch"
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
+ --disable-static --enable-experimental \
+ --with-package-name="GStreamer Ugly Plugins (Archlinux)" \
+ --with-package-origin="http://www.archlinux.org/"
+ make
+ sed -e 's/gst-libs gst ext/gst-libs gst/' -i Makefile
+}
+
+check() {
+ cd "${srcdir}/gst-plugins-ugly-${pkgver}"
+ make check
+}
+
+package_gstreamer0.10-ugly() {
+ pkgdesc="GStreamer Multimedia Framework Ugly plugin libraries"
+ depends=('gstreamer0.10-base>=0.10.34')
+
+ cd "${srcdir}/gst-plugins-ugly-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
+
+package_gstreamer0.10-ugly-plugins() {
+ pkgdesc="GStreamer Multimedia Framework Ugly Plugins (gst-plugins-ugly)"
+ depends=("gstreamer0.10-ugly=${pkgver}" 'libdvdread' 'lame' 'libmpeg2' 'a52dec' 'libmad' 'libsidplay' 'libcdio' 'x264' 'opencore-amr')
+ groups=('gstreamer0.10-plugins')
+ replaces=('gstreamer0.10-dvdread' 'gstreamer0.10-mpeg2dec' 'gstreamer0.10-mad' 'gstreamer0.10-lame' 'gstreamer0.10-sidplay' 'gstreamer0.10-a52dec')
+ conflicts=('gstreamer0.10-dvdread' 'gstreamer0.10-mpeg2dec' 'gstreamer0.10-mad' 'gstreamer0.10-lame' 'gstreamer0.10-sidplay' 'gstreamer0.10-a52dec')
+
+ cd "${srcdir}/gst-plugins-ugly-${pkgver}"
+ make -C ext DESTDIR="${pkgdir}" install
+}
diff --git a/testing/gstreamer0.10-ugly/opencore-amr.patch b/testing/gstreamer0.10-ugly/opencore-amr.patch
new file mode 100644
index 000000000..0a350dc46
--- /dev/null
+++ b/testing/gstreamer0.10-ugly/opencore-amr.patch
@@ -0,0 +1,35 @@
+--- ext/amrnb/amrnbdec.h.orig 2012-03-12 16:49:14.417405139 +0000
++++ ext/amrnb/amrnbdec.h 2012-03-12 16:49:35.393899419 +0000
+@@ -22,7 +22,7 @@
+
+ #include <gst/gst.h>
+ #include <gst/audio/gstaudiodecoder.h>
+-#include <interf_dec.h>
++#include <opencore-amrnb/interf_dec.h>
+
+ G_BEGIN_DECLS
+
+--- ext/amrnb/amrnbenc.h.orig 2012-03-12 16:49:23.833996062 +0000
++++ ext/amrnb/amrnbenc.h 2012-03-12 16:49:46.597141876 +0000
+@@ -21,7 +21,7 @@
+ #define __GST_AMRNBENC_H__
+
+ #include <gst/gst.h>
+-#include <interf_enc.h>
++#include <opencore-amrnb/interf_enc.h>
+ #include <gst/audio/gstaudioencoder.h>
+
+ G_BEGIN_DECLS
+--- ext/amrwbdec/amrwbdec.h.orig 2012-03-12 16:47:48.658100992 +0000
++++ ext/amrwbdec/amrwbdec.h 2012-03-12 16:48:12.177910733 +0000
+@@ -22,8 +22,8 @@
+
+ #include <gst/gst.h>
+ #include <gst/audio/gstaudiodecoder.h>
+-#include <dec_if.h>
+-#include <if_rom.h>
++#include <opencore-amrwb/dec_if.h>
++#include <opencore-amrwb/if_rom.h>
+
+ G_BEGIN_DECLS
+
diff --git a/testing/k3b/PKGBUILD b/testing/k3b/PKGBUILD
new file mode 100644
index 000000000..3e5611155
--- /dev/null
+++ b/testing/k3b/PKGBUILD
@@ -0,0 +1,43 @@
+# $Id: PKGBUILD 163058 2012-07-06 15:21:20Z ibiru $
+# Maintainer: Eric Bélanger <eric@archlinux.org>
+
+pkgname=k3b
+pkgver=2.0.2
+pkgrel=5
+pkgdesc="Feature-rich and easy to handle CD burning application"
+arch=('i686' 'x86_64')
+url="http://k3b.org/"
+license=('GPL')
+depends=('kdebase-runtime' 'kdemultimedia-kioslave' 'libsamplerate' 'libmad'
+ 'ffmpeg' 'taglib' 'libmpcdec' 'libdvdread' 'cdrkit' 'libxft')
+makedepends=('cmake' 'automoc4' 'docbook-xml')
+optdepends=('dvd+rw-tools: for dvd burning support'
+ 'vcdimager: for vcd burning support'
+ 'transcode: for advanced mpeg conversion support'
+ 'emovix: for bootable multimedia cd/dvd support'
+ 'cdrdao: for disk-at-once (DAO) mode support')
+options=('!libtool')
+install=k3b.install
+source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2 \
+ k3b-2.0.2-ffmpeg.patch k3b-2.0.2-libavformat54.patch)
+sha1sums=('8b30a4d07942e82559b01bc07dea6bcf2defd532'
+ '8120c0e22e6c41ea285ca6060be13723ed91c52b'
+ '5b35bff3f7670686a32bd71afea2deaca4331631')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -p1 -i "${srcdir}/k3b-2.0.2-ffmpeg.patch"
+ patch -p1 -i "${srcdir}/k3b-2.0.2-libavformat54.patch"
+ cd ..
+ mkdir build
+ cd build
+ cmake ../${pkgname}-${pkgver} \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release
+ make
+}
+
+package() {
+ cd "${srcdir}/build"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/testing/k3b/k3b-2.0.2-ffmpeg.patch b/testing/k3b/k3b-2.0.2-ffmpeg.patch
new file mode 100644
index 000000000..2878b1edc
--- /dev/null
+++ b/testing/k3b/k3b-2.0.2-ffmpeg.patch
@@ -0,0 +1,96 @@
+commit 61ca30beb978f68e72257408777c6433f33129bd
+Author: Michal Malek <michalm@jabster.pl>
+Date: Sun Aug 28 20:18:53 2011 +0200
+
+ Fixed compilation with new FFMPEG
+
+ BUG: 274817
+ FIXED-IN: 2.0.3
+
+diff --git a/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp b/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
+index 0ad59fc..0c5f366 100644
+--- a/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
++++ b/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
+@@ -109,7 +109,13 @@ bool K3bFFMpegFile::open()
+ #else
+ ::AVCodecContext* codecContext = d->formatContext->streams[0]->codec;
+ #endif
+- if( codecContext->codec_type != CODEC_TYPE_AUDIO ) {
++ if( codecContext->codec_type !=
++#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(52, 64, 0)
++ AVMEDIA_TYPE_AUDIO)
++#else
++ CODEC_TYPE_AUDIO)
++#endif
++ {
+ kDebug() << "(K3bFFMpegFile) not a simple audio stream: " << m_filename;
+ return false;
+ }
+@@ -225,8 +231,11 @@ QString K3bFFMpegFile::typeComment() const
+ QString K3bFFMpegFile::title() const
+ {
+ // FIXME: is this UTF8 or something??
+- if( d->formatContext->title[0] != '\0' )
+- return QString::fromLocal8Bit( d->formatContext->title );
++ AVDictionaryEntry *ade = av_dict_get( d->formatContext->metadata, "TITLE", NULL, 0 );
++ if( ade == NULL )
++ return QString();
++ if( ade->value != '\0' )
++ return QString::fromLocal8Bit( ade->value );
+ else
+ return QString();
+ }
+@@ -235,8 +244,11 @@ QString K3bFFMpegFile::title() const
+ QString K3bFFMpegFile::author() const
+ {
+ // FIXME: is this UTF8 or something??
+- if( d->formatContext->author[0] != '\0' )
+- return QString::fromLocal8Bit( d->formatContext->author );
++ AVDictionaryEntry *ade = av_dict_get( d->formatContext->metadata, "ARTIST", NULL, 0 );
++ if( ade == NULL )
++ return QString();
++ if( ade->value != '\0' )
++ return QString::fromLocal8Bit( ade->value );
+ else
+ return QString();
+ }
+@@ -245,8 +257,11 @@ QString K3bFFMpegFile::author() const
+ QString K3bFFMpegFile::comment() const
+ {
+ // FIXME: is this UTF8 or something??
+- if( d->formatContext->comment[0] != '\0' )
+- return QString::fromLocal8Bit( d->formatContext->comment );
++ AVDictionaryEntry *ade = av_dict_get( d->formatContext->metadata, "COMMENT", NULL, 0 );
++ if( ade == NULL )
++ return QString();
++ if( ade->value != '\0' )
++ return QString::fromLocal8Bit( ade->value );
+ else
+ return QString();
+ }
+@@ -309,8 +324,13 @@ int K3bFFMpegFile::fillOutputBuffer()
+ #if LIBAVCODEC_VERSION_MAJOR < 52
+ int len = ::avcodec_decode_audio(
+ #else
++ #if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(52, 64, 0)
++ int len = ::avcodec_decode_audio3(
++ #else
+ int len = ::avcodec_decode_audio2(
++ #endif
+ #endif
++
+ #ifdef FFMPEG_BUILD_PRE_4629
+ &d->formatContext->streams[0]->codec,
+ #else
+@@ -318,7 +338,11 @@ int K3bFFMpegFile::fillOutputBuffer()
+ #endif
+ (short*)d->alignedOutputBuffer,
+ &d->outputBufferSize,
++#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(52, 64, 0)
++ &d->packet );
++#else
+ d->packetData, d->packetSize );
++#endif
+
+ if( d->packetSize <= 0 || len < 0 )
+ ::av_free_packet( &d->packet );
diff --git a/testing/k3b/k3b-2.0.2-libavformat54.patch b/testing/k3b/k3b-2.0.2-libavformat54.patch
new file mode 100644
index 000000000..174a776b8
--- /dev/null
+++ b/testing/k3b/k3b-2.0.2-libavformat54.patch
@@ -0,0 +1,22 @@
+Index: k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
+===================================================================
+--- k3b-2.0.2.orig/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
++++ k3b-2.0.2/plugins/decoder/ffmpeg/k3bffmpegwrapper.cpp
+@@ -88,7 +88,7 @@ bool K3bFFMpegFile::open()
+ close();
+
+ // open the file
+- int err = ::av_open_input_file( &d->formatContext, m_filename.toLocal8Bit(), 0, 0, 0 );
++ int err = ::avformat_open_input( &d->formatContext, m_filename.toLocal8Bit(), 0, NULL);
+ if( err < 0 ) {
+ kDebug() << "(K3bFFMpegFile) unable to open " << m_filename << " with error " << err;
+ return false;
+@@ -143,7 +143,7 @@ bool K3bFFMpegFile::open()
+ }
+
+ // dump some debugging info
+- ::dump_format( d->formatContext, 0, m_filename.toLocal8Bit(), 0 );
++ ::av_dump_format( d->formatContext, 0, m_filename.toLocal8Bit(), 0 );
+
+ return true;
+ }
diff --git a/testing/k3b/k3b.install b/testing/k3b/k3b.install
new file mode 100644
index 000000000..413ad60f7
--- /dev/null
+++ b/testing/k3b/k3b.install
@@ -0,0 +1,13 @@
+post_install() {
+ xdg-icon-resource forceupdate --theme hicolor &> /dev/null
+ update-mime-database usr/share/mime &> /dev/null
+ update-desktop-database -q
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/testing/kdemultimedia/PKGBUILD b/testing/kdemultimedia/PKGBUILD
new file mode 100644
index 000000000..72962105c
--- /dev/null
+++ b/testing/kdemultimedia/PKGBUILD
@@ -0,0 +1,111 @@
+# $Id: PKGBUILD 163059 2012-07-06 15:21:31Z ibiru $
+# Maintainer: Andrea Scarpino <andrea@archlinux.org>
+# Contributor: Pierre Schmitz <pierre@archlinux.de>
+
+pkgbase=kdemultimedia
+pkgname=('kdemultimedia-dragonplayer'
+ 'kdemultimedia-ffmpegthumbs'
+ 'kdemultimedia-juk'
+ 'kdemultimedia-kioslave'
+ 'kdemultimedia-kmix'
+ 'kdemultimedia-kscd'
+ 'kdemultimedia-mplayerthumbs')
+pkgver=4.8.4
+pkgrel=2
+arch=('i686' 'x86_64')
+url='http://www.kde.org'
+license=('GPL' 'LGPL' 'FDL')
+groups=('kde' 'kdemultimedia')
+makedepends=('cmake' 'automoc4' 'kdelibs' 'ffmpeg' 'mplayer' 'libpulse'
+ 'libmusicbrainz3' 'taglib' 'libcanberra')
+source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.xz"
+ 'mplayerthumbs.config'
+ 'ffmpeg0.11.patch')
+sha1sums=('dac721e82308a6347d578361e25da7c466a26ba7'
+ 'ba016fa2563c14ffcba852c62506b66bfc6ee683'
+ '48331f7e2dab760c20708b81fe6c4d47c83a63e7')
+
+build() {
+ cd ${srcdir}/${pkgbase}-${pkgver}/ffmpegthumbs
+ patch -p1 -i ${srcdir}/ffmpeg0.11.patch
+
+ cd ${srcdir}
+ mkdir build
+ cd build
+ cmake ../${pkgbase}-${pkgver} \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DWITH_TunePimp=OFF
+ make
+}
+
+package_kdemultimedia-dragonplayer() {
+ pkgdesc='Video Player'
+ depends=('kdebase-runtime')
+ url="http://kde.org/applications/multimedia/dragonplayer/"
+ install='kdemultimedia-dragonplayer.install'
+ cd $srcdir/build/dragonplayer
+ make DESTDIR=$pkgdir install
+ cd $srcdir/build/dragonplayer/doc
+ make DESTDIR=$pkgdir install
+}
+
+package_kdemultimedia-ffmpegthumbs() {
+ pkgdesc='Video Files (ffmpegthumbs)'
+ depends=('kdebase-runtime' 'ffmpeg')
+ install='kdemultimedia.install'
+ cd $srcdir/build/ffmpegthumbs
+ make DESTDIR=$pkgdir install
+}
+
+package_kdemultimedia-juk() {
+ pkgdesc='Music Player'
+ depends=('kdebase-runtime' 'taglib')
+ url="http://kde.org/applications/multimedia/juk"
+ install='kdemultimedia.install'
+ cd $srcdir/build/juk
+ make DESTDIR=$pkgdir install
+ cd $srcdir/build/juk/doc
+ make DESTDIR=$pkgdir install
+}
+
+package_kdemultimedia-kioslave() {
+ pkgdesc='Audio CD Browser'
+ depends=('kdelibs' 'libmusicbrainz3' 'cdparanoia')
+ conflicts=('kdemultimedia-libkcddb' 'kdemultimedia-libkcompactdisc')
+ replaces=('kdemultimedia-libkcddb' 'kdemultimedia-libkcompactdisc')
+ for i in kioslave libkcddb libkcompactdisc; do
+ cd $srcdir/build/${i}
+ make DESTDIR=$pkgdir install
+ done
+}
+
+package_kdemultimedia-kmix() {
+ pkgdesc='Sound Mixer'
+ depends=('kdebase-runtime')
+ url="http://kde.org/applications/multimedia/kmix"
+ install='kdemultimedia.install'
+ cd $srcdir/build/kmix
+ make DESTDIR=$pkgdir install
+ cd $srcdir/build/kmix/doc
+ make DESTDIR=$pkgdir install
+}
+
+package_kdemultimedia-kscd() {
+ pkgdesc='CD Player'
+ depends=('kdebase-runtime' 'libmusicbrainz3')
+ url="http://kde.org/applications/multimedia/kscd"
+ install='kdemultimedia.install'
+ cd $srcdir/build/kscd
+ make DESTDIR=$pkgdir install
+}
+
+package_kdemultimedia-mplayerthumbs() {
+ pkgdesc='Video Files (MPlayerThumbs)'
+ depends=('kdebase-runtime' 'mplayer')
+ replaces=('mplayerthumbs')
+ conflicts=('mplayerthumbs')
+ cd $srcdir/build/mplayerthumbs
+ make DESTDIR=$pkgdir install
+ install -D -m644 $srcdir/mplayerthumbs.config $pkgdir/usr/share/config/mplayerthumbs
+}
diff --git a/testing/kdemultimedia/ffmpeg0.11.patch b/testing/kdemultimedia/ffmpeg0.11.patch
new file mode 100644
index 000000000..527ac3992
--- /dev/null
+++ b/testing/kdemultimedia/ffmpeg0.11.patch
@@ -0,0 +1,29 @@
+From: Christoph Feck <christoph@maxiom.de>
+Date: Tue, 29 May 2012 13:53:18 +0000
+Subject: Two deprecated calls have been removed from ffmpeg 0.11.
+X-Git-Tag: v4.8.80
+X-Git-Url: http://quickgit.kde.org/?p=ffmpegthumbs.git&amp;a=commitdiff&amp;h=4f03b20614c122e3e14473d42a000c0bffdce39c
+---
+Two deprecated calls have been removed from ffmpeg 0.11.
+
+BUG:300732
+---
+
+
+--- a/ffmpegthumbnailer/moviedecoder.cpp
++++ b/ffmpegthumbnailer/moviedecoder.cpp
+@@ -52,12 +52,11 @@ MovieDecoder::~MovieDecoder()
+ void MovieDecoder::initialize(const QString& filename)
+ {
+ av_register_all();
+- avcodec_init();
+ avcodec_register_all();
+
+ QFileInfo fileInfo(filename);
+
+- if ((!m_FormatContextWasGiven) && av_open_input_file(&m_pFormatContext, fileInfo.absoluteFilePath().toUtf8().data(), NULL, 0, NULL) != 0) {
++ if ((!m_FormatContextWasGiven) && avformat_open_input(&m_pFormatContext, fileInfo.absoluteFilePath().toLocal8Bit().data(), NULL, NULL) != 0) {
+ kDebug() << "Could not open input file: " << fileInfo.absoluteFilePath();
+ return;
+ }
+
diff --git a/testing/kdemultimedia/kdemultimedia-dragonplayer.install b/testing/kdemultimedia/kdemultimedia-dragonplayer.install
new file mode 100644
index 000000000..5495fb1b5
--- /dev/null
+++ b/testing/kdemultimedia/kdemultimedia-dragonplayer.install
@@ -0,0 +1,12 @@
+post_install() {
+ xdg-icon-resource forceupdate --theme hicolor &> /dev/null
+ update-desktop-database -q
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/testing/kdemultimedia/kdemultimedia.install b/testing/kdemultimedia/kdemultimedia.install
new file mode 100644
index 000000000..e70c054ec
--- /dev/null
+++ b/testing/kdemultimedia/kdemultimedia.install
@@ -0,0 +1,11 @@
+post_install() {
+ xdg-icon-resource forceupdate --theme hicolor &> /dev/null
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/testing/kdemultimedia/mplayerthumbs.config b/testing/kdemultimedia/mplayerthumbs.config
new file mode 100644
index 000000000..761a17953
--- /dev/null
+++ b/testing/kdemultimedia/mplayerthumbs.config
@@ -0,0 +1,2 @@
+[MPlayerThumbsCfg]
+backend=0
diff --git a/testing/kradio/PKGBUILD b/testing/kradio/PKGBUILD
new file mode 100644
index 000000000..e06525a04
--- /dev/null
+++ b/testing/kradio/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id: PKGBUILD 163060 2012-07-06 15:21:36Z ibiru $
+# Maintainer:
+# Contributor: Tobias Powalowski <tpowa@archlinux.org>
+
+pkgname=kradio
+pkgver=4.0.4
+pkgrel=2
+arch=('i686' 'x86_64')
+license=('GPL2')
+pkgdesc="A comfortable KDE internet and AM/FM radio application"
+url="http://kradio.sourceforge.net/"
+depends=('kdebase-runtime' 'lirc-utils' 'libmms' 'ffmpeg')
+makedepends=('automoc4' 'cmake')
+install=$pkgname.install
+source=("http://downloads.sourceforge.net/$pkgname/kradio4-$pkgver.tar.bz2"{,.asc})
+md5sums=('4b5495a4f1dda21f7201bc8db0d4f95e'
+ '51c6d4ec0047d2df595b458bde285012')
+
+build() {
+ cd "$srcdir"
+ mkdir build
+ cd build
+ cmake ../${pkgname}4-$pkgver \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release
+ make
+}
+
+package() {
+ cd "$srcdir/build"
+ make DESTDIR="$pkgdir" install
+}
diff --git a/testing/kradio/kradio.install b/testing/kradio/kradio.install
new file mode 100644
index 000000000..460e85d7f
--- /dev/null
+++ b/testing/kradio/kradio.install
@@ -0,0 +1,11 @@
+post_install() {
+ xdg-icon-resource forceupdate --theme hicolor 2> /dev/null
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/testing/mediastreamer/PKGBUILD b/testing/mediastreamer/PKGBUILD
new file mode 100644
index 000000000..602e9f631
--- /dev/null
+++ b/testing/mediastreamer/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id: PKGBUILD 163061 2012-07-06 15:21:41Z ibiru $
+# Maintainer:
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Adrià Arrufat <swiftscythe@gmail.com>
+
+pkgname=mediastreamer
+pkgver=2.8.2
+pkgrel=2
+pkgdesc="A library written in C that allows you to create and run audio and video streams"
+arch=('i686' 'x86_64')
+url="http://www.linphone.org/"
+license=('GPL')
+depends=('ortp' 'speex' 'ffmpeg' 'v4l-utils' 'libxv' 'libpulse')
+makedepends=('intltool')
+options=('!libtool')
+source=("http://download-mirror.savannah.gnu.org/releases/linphone/${pkgname}/${pkgname}-${pkgver}.tar.gz"{,.sig}
+ mediastreamer-ffmpeg.patch)
+md5sums=('e51ea9d5fce1396b374d10473dfbadec'
+ '805da7def98f367e621363fa0c951fe8'
+ 'f147546489a973f148ce3dd2dba36834')
+
+build() {
+ cd "${srcdir}"/$pkgname-$pkgver
+ patch -p1 -i "${srcdir}"/mediastreamer-ffmpeg.patch
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd "${srcdir}"/$pkgname-$pkgver
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/testing/mediastreamer/mediastreamer-ffmpeg.patch b/testing/mediastreamer/mediastreamer-ffmpeg.patch
new file mode 100644
index 000000000..944d4b833
--- /dev/null
+++ b/testing/mediastreamer/mediastreamer-ffmpeg.patch
@@ -0,0 +1,205 @@
+diff --git a/include/mediastreamer2/msvideo.h b/include/mediastreamer2/msvideo.h
+index 5ae8a63..86edf86 100644
+--- mediastreamer2/include/mediastreamer2/msvideo.h
++++ mediastreamer2/include/mediastreamer2/msvideo.h
+@@ -21,6 +21,12 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ #define msvideo_h
+
+ #include <mediastreamer2/msfilter.h>
++#ifndef INT64_C
++#define INT64_C(c) (c ## LL)
++#define UINT64_C(c) (c ## ULL)
++#endif
++#include <libavutil/avutil.h>
++#include <libavcodec/version.h>
+
+ /* some global constants for video MSFilter(s) */
+ #define MS_VIDEO_SIZE_SQCIF_W 128
+@@ -206,7 +212,9 @@ extern "C"{
+ MS2_PUBLIC int ms_pix_fmt_to_ffmpeg(MSPixFmt fmt);
+ MS2_PUBLIC MSPixFmt ffmpeg_pix_fmt_to_ms(int fmt);
+ MS2_PUBLIC MSPixFmt ms_fourcc_to_pix_fmt(uint32_t fourcc);
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100)
+ MS2_PUBLIC void ms_ffmpeg_check_init(void);
++#endif
+ MS2_PUBLIC int ms_yuv_buf_init_from_mblk(MSPicture *buf, mblk_t *m);
+ MS2_PUBLIC int ms_yuv_buf_init_from_mblk_with_size(MSPicture *buf, mblk_t *m, int w, int h);
+ MS2_PUBLIC int ms_picture_init_from_mblk_with_size(MSPicture *buf, mblk_t *m, MSPixFmt fmt, int w, int h);
+diff --git a/src/h264dec.c b/src/h264dec.c
+index 223de3d..8c40a7c 100644
+--- mediastreamer2/src/h264dec.c
++++ mediastreamer2/src/h264dec.c
+@@ -44,7 +44,9 @@ typedef struct _DecData{
+ static void ffmpeg_init(){
+ static bool_t done=FALSE;
+ if (!done){
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100)
+ avcodec_init();
++#endif
+ avcodec_register_all();
+ done=TRUE;
+ }
+diff --git a/src/mscommon.c b/src/mscommon.c
+index 2cab005..bebb946 100644
+--- mediastreamer2/src/mscommon.c
++++ mediastreamer2/src/mscommon.c
+@@ -33,9 +33,17 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ #include "mediastreamer2/mscodecutils.h"
+ #include "mediastreamer2/msfilter.h"
+ #include <ortp/ortp_srtp.h>
++#ifndef INT64_C
++#define INT64_C(c) (c ## LL)
++#define UINT64_C(c) (c ## ULL)
++#endif
++#include <libavutil/avutil.h>
++#include <libavcodec/version.h>
+
+ extern void __register_ffmpeg_encoders_if_possible(void);
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100)
+ extern void ms_ffmpeg_check_init();
++#endif
+ extern bool_t libmsandroiddisplay_init(void);
+ extern void libmsandroiddisplaybad_init(void);
+ extern void libmsandroidopengldisplay_init(void);
+@@ -645,7 +653,9 @@ void ms_init(){
+ }
+ }
+ #if !defined(NO_FFMPEG)
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100)
+ ms_ffmpeg_check_init();
++#endif
+ __register_ffmpeg_encoders_if_possible();
+ #endif
+ #endif
+diff --git a/src/videodec.c b/src/videodec.c
+index c04e1e9..a455075 100644
+--- mediastreamer2/src/videodec.c
++++ mediastreamer2/src/videodec.c
+@@ -27,9 +27,16 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ #include "mediastreamer2/msvideo.h"
+ #include "mediastreamer2/msticker.h"
+ #include "rfc2429.h"
++#ifndef INT64_C
++#define INT64_C(c) (c ## LL)
++#define UINT64_C(c) (c ## ULL)
++#endif
++#include <libavutil/avutil.h>
++#include <libavcodec/version.h>
+
+-
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100)
+ extern void ms_ffmpeg_check_init();
++#endif
+
+
+ typedef struct DecState{
+@@ -50,7 +57,9 @@ typedef struct DecState{
+
+ static void dec_init(MSFilter *f, enum CodecID cid){
+ DecState *s=(DecState *)ms_new0(DecState,1);
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100)
+ ms_ffmpeg_check_init();
++#endif
+
+ avcodec_get_context_defaults(&s->av_context);
+ s->av_codec=NULL;
+diff --git a/src/videoenc.c b/src/videoenc.c
+index 21d016f..520f06a 100644
+--- mediastreamer2/src/videoenc.c
++++ mediastreamer2/src/videoenc.c
+@@ -37,7 +37,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+ #define RATE_CONTROL_MARGIN 15000 /*bits/second*/
+
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100)
+ static bool_t avcodec_initialized=FALSE;
++#endif
+
+ #ifdef ENABLE_LOG_FFMPEG
+
+@@ -51,6 +53,7 @@ void ms_ffmpeg_log_callback(void* ptr, int level, const char* fmt, va_list vl)
+
+ #endif
+
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100)
+ void ms_ffmpeg_check_init(){
+ if(!avcodec_initialized){
+ avcodec_init();
+@@ -62,6 +65,7 @@ void ms_ffmpeg_check_init(){
+ #endif
+ }
+ }
++#endif
+
+ /* the goal of this small object is to tell when to send I frames at startup:
+ at 2 and 4 seconds*/
+@@ -201,7 +205,9 @@ static void enc_init(MSFilter *f, enum CodecID codec)
+ {
+ EncState *s=(EncState *)ms_new(EncState,1);
+ f->data=s;
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100)
+ ms_ffmpeg_check_init();
++#endif
+ s->profile=0;/*always default to profile 0*/
+ s->comp_buf=NULL;
+ s->fps=15;
+@@ -300,9 +306,13 @@ static void prepare_h263(EncState *s){
+ if (s->profile==0){
+ s->codec=CODEC_ID_H263;
+ }else{
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100)
+ c->flags|=CODEC_FLAG_H263P_UMV;
++#endif
+ c->flags|=CODEC_FLAG_AC_PRED;
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100)
+ c->flags|=CODEC_FLAG_H263P_SLICE_STRUCT;
++#endif
+ /*
+ c->flags|=CODEC_FLAG_OBMC;
+ c->flags|=CODEC_FLAG_AC_PRED;
+@@ -372,7 +382,11 @@ static void add_rfc2190_header(mblk_t **packet, AVCodecContext *context){
+ // assume video size is CIF or QCIF
+ if (context->width == 352 && context->height == 288) header->b_wptr[1] = 0x60;
+ else header->b_wptr[1] = 0x40;
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100)
+ if (context->coded_frame->pict_type != FF_I_TYPE) header->b_wptr[1] |= 0x10;
++#else
++ if (context->coded_frame->pict_type != AV_PICTURE_TYPE_I) header->b_wptr[1] |= 0x10;
++#endif
+ header->b_wptr += 4;
+ header->b_cont = *packet;
+ *packet = header;
+@@ -779,7 +793,11 @@ static void process_frame(MSFilter *f, mblk_t *inm){
+ s->req_vfu=TRUE;
+ }
+ if (s->req_vfu){
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100)
+ pict.pict_type=FF_I_TYPE;
++#else
++ pict.pict_type=AV_PICTURE_TYPE_I;
++#endif
+ s->req_vfu=FALSE;
+ }
+ comp_buf->b_rptr=comp_buf->b_wptr=comp_buf->b_datap->db_base;
+@@ -799,7 +817,11 @@ static void process_frame(MSFilter *f, mblk_t *inm){
+ if (s->framenum==1){
+ video_starter_first_frame (&s->starter,f->ticker->time);
+ }
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100)
+ if (c->coded_frame->pict_type==FF_I_TYPE){
++#else
++ if (c->coded_frame->pict_type==AV_PICTURE_TYPE_I){
++#endif
+ ms_message("Emitting I-frame");
+ }
+ comp_buf->b_wptr+=error;
+@@ -1067,7 +1089,9 @@ MSFilterDesc ms_mjpeg_enc_desc={
+ #endif
+
+ void __register_ffmpeg_encoders_if_possible(void){
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100)
+ ms_ffmpeg_check_init();
++#endif
+ if (avcodec_find_encoder(CODEC_ID_MPEG4))
+ ms_filter_register(&ms_mpeg4_enc_desc);
+ if (avcodec_find_encoder(CODEC_ID_H263)){
diff --git a/testing/miro/PKGBUILD b/testing/miro/PKGBUILD
new file mode 100644
index 000000000..7302846be
--- /dev/null
+++ b/testing/miro/PKGBUILD
@@ -0,0 +1,49 @@
+# $Id: PKGBUILD 163062 2012-07-06 15:21:48Z ibiru $
+# Maintainer: Ronald van Haren <ronald.archlinux.org>
+
+pkgname=miro
+pkgver=5.0.1
+pkgrel=2
+pkgdesc="The free and open source internet TV platform"
+arch=('i686' 'x86_64')
+url="http://www.getmiro.com"
+license=('GPL2')
+depends=('dbus-python' 'pyrex' 'pygtk' 'gstreamer0.10' 'python2-gconf'
+ 'python-pysqlite' 'pywebkitgtk' 'shared-mime-info'
+ 'desktop-file-utils' 'gstreamer0.10' 'hicolor-icon-theme'
+ 'gstreamer0.10-python' 'python-notify' 'libtorrent-rasterbar'
+ 'gstreamer0.10-base-plugins' 'gstreamer0.10-good-plugins' 'python-pycurl'
+ 'gstreamer0.10-ffmpeg' 'ffmpeg' 'mutagen' 'xdg-utils')
+makedepends=('pkg-config' 'boost')
+install=miro.install
+source=("http://ftp.osuosl.org/pub/pculture.org/${pkgname}/src/${pkgname}-${pkgver}.tar.gz"
+ 'ffmpeg.patch')
+sha1sums=('d8e08c691958c250c990b45f2c8448c478d0f0fa'
+ 'ce0f42be2a0a3ac99f07b5abfabf0975928c841c')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ cd linux
+ patch -p2 -i "${srcdir}"/ffmpeg.patch
+
+ python2 setup.py install --root="${pkgdir}"
+
+ # fix miro startup script so --debug works with python2
+ sed -i "s|which python|which python2|" "${pkgdir}/usr/bin/miro"
+ sed -i "s|./miro.real|/usr/bin/miro.real|" "${pkgdir}/usr/bin/miro"
+
+ # fix python scripts for python2
+ sed -i "s|/usr/bin/env python|/usr/bin/env python2|" ${pkgdir}/usr/share/miro/resources/searchengines/update-icons.py
+ for i in usr/share/miro/resources/testdata/echonest-replies/generate.py usr/share/miro/resources/searchengines/update-icons.py \
+ usr/share/miro/resources/testdata/7digital-replies/generate.py; do
+ sed -i "s|/usr/bin/python|/usr/bin/python2|" ${pkgdir}/${i}
+ done
+
+ # Fakeroot segfaults on these; remove
+ if [ ${arch} == "i686" ]; then
+ rm -f ${pkgdir}/usr/bin/codegen.Linux-x86_64 || true
+ else
+ rm -f ${pkgdir}/usr/bin/codegen.Linux-i686 || true
+ fi
+}
diff --git a/testing/miro/ffmpeg.patch b/testing/miro/ffmpeg.patch
new file mode 100644
index 000000000..99c14107d
--- /dev/null
+++ b/testing/miro/ffmpeg.patch
@@ -0,0 +1,63 @@
+--- miro-5.0.1/linux/miro-segmenter.c~ 2012-07-06 14:33:24.618082171 +0000
++++ miro-5.0.1/linux/miro-segmenter.c 2012-07-06 15:10:19.564146117 +0000
+@@ -156,7 +156,7 @@
+ exit(1);
+ }
+
+- ret = av_open_input_file(&ic, input, ifmt, 0, NULL);
++ ret = avformat_open_input(&ic, input, ifmt, 0);
+ if (ret != 0) {
+ fprintf(stderr, "Could not open input file, make sure it is an mpegts file: %d\n", ret);
+ exit(1);
+@@ -215,12 +215,7 @@
+ }
+ }
+
+- if (av_set_parameters(oc, NULL) < 0) {
+- fprintf(stderr, "Invalid output format parameters\n");
+- exit(1);
+- }
+-
+- dump_format(oc, 0, input, 1);
++ av_dump_format(oc, 0, input, 1);
+
+ if (video_st) {
+ codec = avcodec_find_decoder(video_st->codec->codec_id);
+@@ -233,12 +228,12 @@
+ }
+ }
+
+- if (url_fopen(&oc->pb, output_filename, URL_WRONLY) < 0) {
++ if (avio_open(&oc->pb, output_filename, AVIO_FLAG_WRITE) < 0) {
+ fprintf(stderr, "Could not open '%s'\n", output_filename);
+ exit(1);
+ }
+
+- if (av_write_header(oc)) {
++ if (avformat_write_header(oc, NULL)) {
+ fprintf(stderr, "Could not write mpegts header to first output file\n");
+
+ exit(1);
+@@ -274,10 +269,10 @@
+ }
+
+ if (segment_time - prev_segment_time >= segment_duration) {
+- put_flush_packet(oc->pb);
+- url_fclose(oc->pb);
++ avio_flush(oc->pb);
++ avio_close(oc->pb);
+
+- if (url_fopen(&oc->pb, output_filename, URL_WRONLY) < 0) {
++ if (avio_open(&oc->pb, output_filename, AVIO_FLAG_WRITE) < 0) {
+ fprintf(stderr, "Could not open '%s'\n", output_filename);
+ break;
+ }
+@@ -307,7 +302,7 @@
+ av_freep(&oc->streams[i]);
+ }
+
+- url_fclose(oc->pb);
++ avio_close(oc->pb);
+ av_free(oc);
+
+ /* End-of-transcode marker. */
diff --git a/testing/miro/miro.install b/testing/miro/miro.install
new file mode 100644
index 000000000..a5ee228aa
--- /dev/null
+++ b/testing/miro/miro.install
@@ -0,0 +1,17 @@
+post_install() {
+ update-desktop-database -q
+ xdg-icon-resource forceupdate --theme hicolor
+ update-mime-database usr/share/mime > /dev/null
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+post_remove() {
+ update-desktop-database -q
+ xdg-icon-resource forceupdate --theme hicolor
+ update-mime-database usr/share/mime > /dev/null
+}
+
+
diff --git a/testing/moc/PKGBUILD b/testing/moc/PKGBUILD
new file mode 100644
index 000000000..13d711cc9
--- /dev/null
+++ b/testing/moc/PKGBUILD
@@ -0,0 +1,56 @@
+# $Id: PKGBUILD 163063 2012-07-06 15:21:51Z ibiru $
+# Maintainer: Eric Bélanger <eric@archlinux.org>
+
+pkgname=moc
+pkgver=20120224
+pkgrel=2
+pkgdesc="An ncurses console audio player with support for the mp3, ogg, and wave formats"
+arch=('i686' 'x86_64')
+url="http://moc.daper.net/"
+license=('GPL')
+depends=('libmad' 'libid3tag' 'jack' 'curl' 'libltdl' 'file')
+makedepends=('speex' 'ffmpeg' 'taglib' 'libmpcdec' 'wavpack' 'libmodplug')
+optdepends=('speex: for using the speex plugin'
+ 'ffmpeg: for using the ffmpeg plugin'
+ 'taglib: for using the musepack plugin'
+ 'libmpcdec: for using the musepack plugin'
+ 'wavpack: for using the wavpack plugin'
+ 'libmodplug: for using the modplug plugin')
+options=('!libtool')
+source=(ftp://ftp.archlinux.org/other/moc/${pkgname}-${pkgver}.tar.xz{,.sig})
+sha1sums=('8ad3521d99fe6f2514907088c70e50c84ec09b46'
+ 'e8b2396d99692b0c4f85971d3fa6f5aecb1eb9d3')
+
+# source PKGBUILD && mksource
+mksource() {
+ [[ -x /usr/bin/svn ]] || (echo "svn not found. Install subversion." && return 1)
+ _svnver=2412
+ _svntrunk="svn://daper.net/moc/trunk"
+ _svnmod="${pkgname}-${pkgver}"
+ mkdir ${pkgname}-${pkgver}
+ pushd ${pkgname}-${pkgver}
+ svn co ${_svntrunk} --config-dir ./ -r ${_svnver} ${_svnmod}
+ find . -depth -type d -name .svn -exec rm -rf {} \;
+ tar -cJf ../${pkgname}-${pkgver}.tar.xz ${pkgname}-${pkgver}/*
+ popd
+ rm -r ${pkgname}-${pkgver}
+ gpg --detach-sign --use-agent -u ${GPGKEY} ${pkgname}-${pkgver}.tar.xz
+}
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+# Disabling aac to use the external ffmpeg to play them (FS#13164)
+ autoreconf -i
+ ./configure --prefix=/usr --without-rcc --without-aac \
+ --with-oss --with-alsa --with-jack --with-mp3 \
+ --with-musepack --with-vorbis --with-flac --with-wavpack \
+ --with-sndfile --with-modplug --with-ffmpeg --with-speex \
+ --with-samplerate --with-curl --disable-debug
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/testing/mpd/PKGBUILD b/testing/mpd/PKGBUILD
new file mode 100644
index 000000000..0d0222580
--- /dev/null
+++ b/testing/mpd/PKGBUILD
@@ -0,0 +1,65 @@
+# $Id: PKGBUILD 163064 2012-07-06 15:22:01Z ibiru $
+# Maintainer: Gaetan Bisson <bisson@archlinux.org>
+# Contributor: Angel Velasquez <angvp@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+# Contributor: Damir Perisa <damir.perisa@bluewin.ch>
+# Contributor: Ben <ben@benmazer.net>
+
+pkgname=mpd
+pkgver=0.17
+pkgrel=2
+pkgdesc='Flexible, powerful, server-side application for playing music'
+url='http://mpd.wikia.com/wiki/Music_Player_Daemon_Wiki'
+license=('GPL')
+arch=('i686' 'x86_64')
+depends=('libao' 'ffmpeg' 'libmodplug' 'audiofile' 'libshout' 'libmad' 'curl' 'faad2'
+ 'sqlite' 'jack' 'libmms' 'wavpack' 'libmpcdec' 'avahi' 'libid3tag'
+ 'libpulse')
+makedepends=('doxygen')
+source=("http://downloads.sourceforge.net/musicpd/${pkgname}-${pkgver}.tar.bz2"
+ 'tmpfiles.d'
+ 'rc.d')
+sha1sums=('36201f32ca5729b62b0e6cbddb19ade20ee3f7d7'
+ 'f4d5922abb69abb739542d8e93f4dfd748acdad7'
+ '3470d489565f0ed479f1665dd2876f66acb5a585')
+
+backup=('etc/mpd.conf')
+install=install
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --enable-lastfm \
+ --enable-jack \
+ --enable-pulse \
+ --enable-documentation \
+ --disable-libwrap \
+ --disable-cue \
+ --disable-sidplay \
+ --disable-documentation \
+ --with-systemdsystemunitdir=/usr/lib/systemd/system
+
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ make DESTDIR="${pkgdir}" install
+
+ sed \
+ -e '/^#playlist_directory/c playlist_directory "/var/lib/mpd/playlists"' \
+ -e '/^#db_file/c db_file "/var/lib/mpd/mpd.db"' \
+ -e '/^#pid_file/c pid_file "/run/mpd/mpd.pid"' \
+ -e '/^#state_file/c state_file "/var/lib/mpd/mpdstate"' \
+ -e '/^#user/c user "mpd"' \
+ -i doc/mpdconf.example
+
+ install -Dm755 ../rc.d "${pkgdir}"/etc/rc.d/mpd
+ install -d -g 45 -o 45 "${pkgdir}"/var/lib/mpd/playlists
+ install -Dm644 doc/mpdconf.example "${pkgdir}"/etc/mpd.conf
+ install -Dm644 ../tmpfiles.d "${pkgdir}"/usr/lib/tmpfiles.d/mpd.conf
+}
diff --git a/testing/mpd/install b/testing/mpd/install
new file mode 100644
index 000000000..261b8fd0d
--- /dev/null
+++ b/testing/mpd/install
@@ -0,0 +1,11 @@
+post_install() {
+ getent group mpd &>/dev/null || groupadd -r -g 45 mpd >/dev/null
+ getent passwd mpd &>/dev/null || useradd -r -u 45 -g mpd -d /var/lib/mpd -s /bin/false -G audio mpd >/dev/null
+ true
+}
+
+post_remove() {
+ getent passwd mpd &>/dev/null && userdel mpd >/dev/null
+ getent group mpd &>/dev/null && groupdel mpd >/dev/null
+ true
+}
diff --git a/testing/mpd/rc.d b/testing/mpd/rc.d
new file mode 100755
index 000000000..f00e16067
--- /dev/null
+++ b/testing/mpd/rc.d
@@ -0,0 +1,25 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+case "$1" in
+ start)
+ stat_busy 'Starting Music Player Daemon'
+ /usr/bin/mpd /etc/mpd.conf &> /dev/null &&
+ { add_daemon mpd; stat_done; } || stat_fail
+ ;;
+ stop)
+ stat_busy 'Stopping Music Player Daemon'
+ /usr/bin/mpd --kill /etc/mpd.conf &> /dev/null &&
+ { rm_daemon mpd; stat_done; } || stat_fail
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/testing/mpd/tmpfiles.d b/testing/mpd/tmpfiles.d
new file mode 100644
index 000000000..41c4e743a
--- /dev/null
+++ b/testing/mpd/tmpfiles.d
@@ -0,0 +1 @@
+d /run/mpd 0755 mpd mpd
diff --git a/testing/opal/PKGBUILD b/testing/opal/PKGBUILD
new file mode 100644
index 000000000..555d21baf
--- /dev/null
+++ b/testing/opal/PKGBUILD
@@ -0,0 +1,30 @@
+# $Id: PKGBUILD 163079 2012-07-06 16:17:32Z ibiru $
+# Maintainer: Jan de Groot <jan@archlinux.org>
+# Contributor: Tom K <tomk@runbox.com>
+pkgname=opal
+pkgver=3.10.5
+pkgrel=1
+pkgdesc="Open Phone Abstraction Library"
+arch=(i686 x86_64)
+url="http://www.opalvoip.org"
+license=('GPL')
+depends=('ptlib' 'libtheora' 'x264' 'speex' 'gsm')
+makedepends=('ffmpeg')
+options=(!makeflags)
+source=(http://downloads.sourceforge.net/sourceforge/opalvoip/$pkgname-$pkgver.tar.bz2
+ opal-ffmpeg.patch)
+md5sums=('22b0d716ed1cbc935245539e0bbab38f' '53bb06a376fb57a306522bfa6a573217')
+
+build() {
+ cd "${srcdir}/opal-${pkgver}"
+ patch -Np1 -i "${srcdir}/opal-ffmpeg.patch"
+ CXXFLAGS="$CXXFLAGS -fpermissive" \
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
+ make
+}
+
+package() {
+ cd "${srcdir}/opal-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+ chmod 644 "${pkgdir}/usr/lib/libopal_s.a"
+}
diff --git a/testing/opal/opal-ffmpeg.patch b/testing/opal/opal-ffmpeg.patch
new file mode 100644
index 000000000..ebfd1f037
--- /dev/null
+++ b/testing/opal/opal-ffmpeg.patch
@@ -0,0 +1,194 @@
+diff -ru opal-3.10.5/plugins/video/H.263-1998/h263-1998.cxx opal-3.10.5.patched/plugins/video/H.263-1998/h263-1998.cxx
+--- opal-3.10.5/plugins/video/H.263-1998/h263-1998.cxx 2012-04-26 06:56:01.000000000 +0200
++++ opal-3.10.5.patched/plugins/video/H.263-1998/h263-1998.cxx 2012-06-10 16:39:35.447021150 +0200
+@@ -51,6 +51,7 @@
+ #endif
+
+ #include "h263-1998.h"
++#include <libavutil/opt.h>
+ #include <limits>
+ #include <iomanip>
+ #include <stdio.h>
+@@ -324,9 +325,9 @@
+ // Level 2+
+ // works with eyeBeam, signaled via non-standard "D"
+ if (atoi(value) == 1)
+- m_context->flags |= CODEC_FLAG_H263P_UMV;
++ av_opt_set_int(m_context->priv_data, "umv", 1, 0);
+ else
+- m_context->flags &= ~CODEC_FLAG_H263P_UMV;
++ av_opt_set_int(m_context->priv_data, "umv", 0, 0);
+ return;
+ }
+
+@@ -335,9 +336,9 @@
+ // Annex F: Advanced Prediction Mode
+ // does not work with eyeBeam
+ if (atoi(value) == 1)
+- m_context->flags |= CODEC_FLAG_OBMC;
++ av_opt_set_int(m_context->priv_data, "obmc", 1, 0);
+ else
+- m_context->flags &= ~CODEC_FLAG_OBMC;
++ av_opt_set_int(m_context->priv_data, "obmc", 0, 0);
+ return;
+ }
+ #endif
+@@ -367,9 +368,9 @@
+ // Annex K: Slice Structure
+ // does not work with eyeBeam
+ if (atoi(value) != 0)
+- m_context->flags |= CODEC_FLAG_H263P_SLICE_STRUCT;
++ av_opt_set_int(m_context->priv_data, "structured_slices", 1, 0);
+ else
+- m_context->flags &= ~CODEC_FLAG_H263P_SLICE_STRUCT;
++ av_opt_set_int(m_context->priv_data, "structured_slices", 0, 0);
+ return;
+ }
+
+@@ -377,9 +378,9 @@
+ // Annex S: Alternative INTER VLC mode
+ // does not work with eyeBeam
+ if (atoi(value) == 1)
+- m_context->flags |= CODEC_FLAG_H263P_AIV;
++ av_opt_set_int(m_context->priv_data, "aiv", 1, 0);
+ else
+- m_context->flags &= ~CODEC_FLAG_H263P_AIV;
++ av_opt_set_int(m_context->priv_data, "aiv", 0, 0);
+ return;
+ }
+ }
+@@ -445,15 +446,6 @@
+ PTRACE(5, m_prefix, "qmax set to " << m_context->qmax);
+ PTRACE(5, m_prefix, "payload size set to " << m_context->rtp_payload_size);
+
+- #define CODEC_TRACER_FLAG(tracer, flag) \
+- PTRACE(4, m_prefix, #flag " is " << ((m_context->flags & flag) ? "enabled" : "disabled"));
+- CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_UMV);
+- CODEC_TRACER_FLAG(tracer, CODEC_FLAG_OBMC);
+- CODEC_TRACER_FLAG(tracer, CODEC_FLAG_AC_PRED);
+- CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_SLICE_STRUCT)
+- CODEC_TRACER_FLAG(tracer, CODEC_FLAG_LOOP_FILTER);
+- CODEC_TRACER_FLAG(tracer, CODEC_FLAG_H263P_AIV);
+-
+ return FFMPEGLibraryInstance.AvcodecOpen(m_context, m_codec) == 0;
+ }
+
+@@ -516,7 +508,7 @@
+
+ // Need to copy to local buffer to guarantee 16 byte alignment
+ memcpy(m_inputFrame->data[0], OPAL_VIDEO_FRAME_DATA_PTR(header), header->width*header->height*3/2);
+- m_inputFrame->pict_type = (flags & PluginCodec_CoderForceIFrame) ? FF_I_TYPE : AV_PICTURE_TYPE_NONE;
++ m_inputFrame->pict_type = (flags & PluginCodec_CoderForceIFrame) ? AV_PICTURE_TYPE_I : AV_PICTURE_TYPE_NONE;
+
+ /*
+ m_inputFrame->pts = (int64_t)srcRTP.GetTimestamp()*m_context->time_base.den/m_context->time_base.num/VIDEO_CLOCKRATE;
+@@ -598,13 +590,13 @@
+ m_context->rtp_callback = &H263_RFC2190_EncoderContext::RTPCallBack;
+ m_context->opaque = this; // used to separate out packets from different encode threads
+
+- m_context->flags &= ~CODEC_FLAG_H263P_UMV;
++ av_opt_set_int(m_context->priv_data, "umv", 0, 0);
+ m_context->flags &= ~CODEC_FLAG_4MV;
+ #if LIBAVCODEC_RTP_MODE
+ m_context->flags &= ~CODEC_FLAG_H263P_AIC;
+ #endif
+- m_context->flags &= ~CODEC_FLAG_H263P_AIV;
+- m_context->flags &= ~CODEC_FLAG_H263P_SLICE_STRUCT;
++ av_opt_set_int(m_context->priv_data, "aiv", 0, 0);
++ av_opt_set_int(m_context->priv_data, "structured_slices", 0, 0);
+
+ return true;
+ }
+diff -ru opal-3.10.5/plugins/video/H.264/gpl/h264_helper.cxx opal-3.10.5.patched/plugins/video/H.264/gpl/h264_helper.cxx
+--- opal-3.10.5/plugins/video/H.264/gpl/h264_helper.cxx 2012-04-26 06:56:00.000000000 +0200
++++ opal-3.10.5.patched/plugins/video/H.264/gpl/h264_helper.cxx 2012-06-10 16:49:11.210568639 +0200
+@@ -25,6 +25,7 @@
+ #include <fstream>
+ #include <stdlib.h>
+ #include <sys/stat.h>
++#include <unistd.h>
+
+
+ #ifndef PLUGINCODEC_TRACING
+diff -ru opal-3.10.5/plugins/video/H.264/h264-x264.cxx opal-3.10.5.patched/plugins/video/H.264/h264-x264.cxx
+--- opal-3.10.5/plugins/video/H.264/h264-x264.cxx 2012-04-26 06:56:00.000000000 +0200
++++ opal-3.10.5.patched/plugins/video/H.264/h264-x264.cxx 2012-06-10 17:04:19.695646950 +0200
+@@ -1035,13 +1035,10 @@
+ return false;
+
+ m_context->workaround_bugs = FF_BUG_AUTODETECT;
+- m_context->error_recognition = FF_ER_AGGRESSIVE;
+ m_context->idct_algo = FF_IDCT_H264;
+ m_context->error_concealment = FF_EC_GUESS_MVS | FF_EC_DEBLOCK;
+ m_context->flags = CODEC_FLAG_INPUT_PRESERVED | CODEC_FLAG_EMU_EDGE;
+- m_context->flags2 = CODEC_FLAG2_BRDO |
+- CODEC_FLAG2_MEMC_ONLY |
+- CODEC_FLAG2_DROP_FRAME_TIMECODE |
++ m_context->flags2 = CODEC_FLAG2_DROP_FRAME_TIMECODE |
+ CODEC_FLAG2_SKIP_RD |
+ CODEC_FLAG2_CHUNKS;
+
+diff -ru opal-3.10.5/plugins/video/H.264/shared/x264wrap.cxx opal-3.10.5.patched/plugins/video/H.264/shared/x264wrap.cxx
+--- opal-3.10.5/plugins/video/H.264/shared/x264wrap.cxx 2012-04-26 06:56:00.000000000 +0200
++++ opal-3.10.5.patched/plugins/video/H.264/shared/x264wrap.cxx 2012-06-10 17:04:46.012171051 +0200
+@@ -33,6 +33,7 @@
+
+ #include <codec/opalplugin.hpp>
+ #include <stdio.h>
++#include <unistd.h>
+
+
+ #if defined(X264_LICENSED) || defined(GPL_HELPER_APP)
+diff -ru opal-3.10.5/plugins/video/MPEG4-ffmpeg/mpeg4.cxx opal-3.10.5.patched/plugins/video/MPEG4-ffmpeg/mpeg4.cxx
+--- opal-3.10.5/plugins/video/MPEG4-ffmpeg/mpeg4.cxx 2012-04-26 06:56:02.000000000 +0200
++++ opal-3.10.5.patched/plugins/video/MPEG4-ffmpeg/mpeg4.cxx 2012-06-10 16:46:33.498089705 +0200
+@@ -101,8 +101,10 @@
+ #include <libavutil/bswap.h>
+ #include <libavcodec/mpegvideo.h>
+
++
+ #else /* LIBAVCODEC_HAVE_SOURCE_DIR */
+ #include LIBAVCODEC_HEADER
++#include <libavutil/opt.h>
+ #endif /* LIBAVCODEC_HAVE_SOURCE_DIR */
+ }
+
+@@ -589,17 +591,17 @@
+ m_avpicture->quality = m_videoQMin;
+
+ #ifdef USE_ORIG
+- m_avcontext->flags |= CODEC_FLAG_PART; // data partitioning
++ av_opt_set_int(m_avcontext->priv_data, "data_partitionin", 1, 0);
+ m_avcontext->flags |= CODEC_FLAG_4MV; // 4 motion vectors
+ #else
+ m_avcontext->max_b_frames=0; /*don't use b frames*/
+ m_avcontext->flags|=CODEC_FLAG_AC_PRED;
+- m_avcontext->flags|=CODEC_FLAG_H263P_UMV;
++ av_opt_set_int(m_avcontext->priv_data, "umv", 1, 0);
+ /*c->flags|=CODEC_FLAG_QPEL;*/ /*don't enable this one: this forces profile_level to advanced simple profile */
+ m_avcontext->flags|=CODEC_FLAG_4MV;
+ m_avcontext->flags|=CODEC_FLAG_GMC;
+ m_avcontext->flags|=CODEC_FLAG_LOOP_FILTER;
+- m_avcontext->flags|=CODEC_FLAG_H263P_SLICE_STRUCT;
++ av_opt_set_int(m_avcontext->priv_data, "structured_slices", 1, 0);
+ #endif
+ m_avcontext->opaque = this; // for use in RTP callback
+ }
+@@ -804,7 +806,7 @@
+ // Should the next frame be an I-Frame?
+ if ((flags & PluginCodec_CoderForceIFrame) || (m_frameNum == 0))
+ {
+- m_avpicture->pict_type = FF_I_TYPE;
++ m_avpicture->pict_type = AV_PICTURE_TYPE_I;
+ }
+ else // No IFrame requested, let avcodec decide what to do
+ {
+@@ -1325,7 +1327,7 @@
+
+ void MPEG4DecoderContext::SetStaticDecodingParams() {
+ m_avcontext->flags |= CODEC_FLAG_4MV;
+- m_avcontext->flags |= CODEC_FLAG_PART;
++ av_opt_set_int(m_avcontext->priv_data, "data_partitionin", 1, 0);
+ m_avcontext->workaround_bugs = 0; // no workaround for buggy implementations
+ }
+
diff --git a/testing/postfix/PKGBUILD b/testing/postfix/PKGBUILD
new file mode 100644
index 000000000..2a2e80e52
--- /dev/null
+++ b/testing/postfix/PKGBUILD
@@ -0,0 +1,66 @@
+# $Id: PKGBUILD 163102 2012-07-07 03:16:44Z bisson $
+# Contributor: Jeff Brodnax <tullyarcher@bellsouth.net>
+# Contributor: Paul Mattal <paul@archlinux.org>
+# Maintainer: Gaetan Bisson <bisson@archlinux.org>
+
+pkgname=postfix
+pkgver=2.9.3
+pkgrel=2
+pkgdesc='Fast, easy to administer, secure mail server'
+url='http://www.postfix.org/'
+license=('custom')
+arch=('i686' 'x86_64')
+depends=('pcre' 'libsasl' 'libldap' 'db'
+ 'libmysqlclient' 'postgresql-libs' 'sqlite' 'tinycdb')
+backup=('etc/postfix/'{access,aliases,canonical,generic,header_checks,main.cf,master.cf,relocated,transport,virtual})
+source=("ftp://ftp.porcupine.org/mirrors/postfix-release/official/${pkgname}-${pkgver}.tar.gz" \
+ 'aliases.patch' \
+ 'rc.d')
+sha1sums=('fd6c1ba3bbceb1a29b95655a742a2c547e11ca1d'
+ '5fc3de6c7df1e5851a0a379e825148868808318b'
+ '40c6be2eb55e6437a402f43775cdb3d22ea87a66')
+
+provides=('smtp-server' 'smtp-forwarder')
+conflicts=('smtp-server' 'smtp-forwarder')
+
+install=install
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ make makefiles DEBUG='' CCARGS=' \
+ -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl \
+ -DHAS_LDAP \
+ -DUSE_TLS \
+ -DHAS_MYSQL -I/usr/include/mysql \
+ -DHAS_PGSQL -I/usr/include/postgresql \
+ -DHAS_SQLITE \
+ -DHAS_CDB \
+ ' AUXLIBS=' \
+ -lsasl2 \
+ -lldap -llber \
+ -lssl -lcrypto \
+ -lmysqlclient -lz -lm \
+ -lpq \
+ -lsqlite3 -lpthread \
+ -lcdb \
+ ' OPT="${CFLAGS} ${LDFLAGS}"
+
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ sh postfix-install -non-interactive \
+ install_root="${pkgdir}" \
+ daemon_directory="/usr/lib/${pkgname}" \
+ sample_directory="/etc/${pkgname}/sample" \
+ manpage_directory="/usr/share/man" \
+ readme_directory="/usr/share/doc/${pkgname}" \
+
+ install -D -m755 ../rc.d "${pkgdir}/etc/rc.d/${pkgname}"
+ install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ sed 's/^\(\$manpage[^:]*\):/\1.gz:/' -i "${pkgdir}/usr/lib/${pkgname}/postfix-files"
+ cd "${pkgdir}"; patch -p0 -i "${srcdir}"/aliases.patch
+}
diff --git a/testing/postfix/aliases.patch b/testing/postfix/aliases.patch
new file mode 100644
index 000000000..6767870b7
--- /dev/null
+++ b/testing/postfix/aliases.patch
@@ -0,0 +1,18 @@
+--- etc/postfix/main.cf.orig 2010-12-13 20:18:22.000000000 +0100
++++ etc/postfix/main.cf 2010-12-13 20:18:24.000000000 +0100
+@@ -382,6 +382,7 @@
+ #alias_maps = hash:/etc/aliases
+ #alias_maps = hash:/etc/aliases, nis:mail.aliases
+ #alias_maps = netinfo:/aliases
++alias_maps = hash:/etc/postfix/aliases
+
+ # The alias_database parameter specifies the alias database(s) that
+ # are built with "newaliases" or "sendmail -bi". This is a separate
+@@ -392,6 +393,7 @@
+ #alias_database = dbm:/etc/mail/aliases
+ #alias_database = hash:/etc/aliases
+ #alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
++alias_database = $alias_maps
+
+ # ADDRESS EXTENSIONS (e.g., user+foo)
+ #
diff --git a/testing/postfix/install b/testing/postfix/install
new file mode 100644
index 000000000..cb97e2e6c
--- /dev/null
+++ b/testing/postfix/install
@@ -0,0 +1,33 @@
+post_install() {
+ getent group postdrop &>/dev/null || groupadd -g 75 postdrop >/dev/null
+ getent group postfix &>/dev/null || groupadd -g 73 postfix >/dev/null
+ getent passwd postfix &>/dev/null || useradd -u 73 -d /var/spool/postfix -g postfix -s /bin/false postfix >/dev/null
+
+ cd var/spool/postfix
+ chown postfix active bounce corrupt defer deferred flush hold incoming private public maildrop trace saved
+ chgrp postdrop public maildrop
+ cd ../../../usr/sbin
+ chgrp postdrop postqueue postdrop
+ chmod g+s postqueue postdrop
+ cd ../..
+ chown postfix var/lib/postfix
+
+ newaliases
+}
+
+post_upgrade() {
+ post_install
+
+ if [ `vercmp $2 2.9.0` = -1 ]; then cat <<EOF
+
+==> You must now run "postfix reload" due to inter-daemon protocol change.
+
+EOF
+ fi
+}
+
+pre_remove() {
+ getent passwd postfix &>/dev/null && userdel postfix >/dev/null
+ getent group postfix &>/dev/null && groupdel postfix >/dev/null
+ getent group postdrop &>/dev/null && groupdel postdrop >/dev/null
+}
diff --git a/testing/postfix/rc.d b/testing/postfix/rc.d
new file mode 100755
index 000000000..fa314bb84
--- /dev/null
+++ b/testing/postfix/rc.d
@@ -0,0 +1,36 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+name=postfix
+
+case "$1" in
+start)
+ stat_busy "Starting $name daemon"
+ /usr/sbin/postfix start &>/dev/null \
+ && { add_daemon $name; stat_done; } \
+ || { stat_fail; exit 1; }
+ ;;
+stop)
+ stat_busy "Stopping $name daemon"
+ /usr/sbin/postfix stop &>/dev/null \
+ && { rm_daemon $name; stat_done; } \
+ || { stat_fail; exit 1; }
+ ;;
+reload)
+ stat_busy "Reloading $name daemon"
+ /usr/sbin/postfix reload &>/dev/null \
+ && { stat_done; } \
+ || { stat_fail; exit 1; }
+ ;;
+restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+*)
+ echo "usage: $0 {start|stop|restart|reload}"
+ ;;
+esac
+exit 0
diff --git a/testing/sox/PKGBUILD b/testing/sox/PKGBUILD
new file mode 100644
index 000000000..8613aa777
--- /dev/null
+++ b/testing/sox/PKGBUILD
@@ -0,0 +1,45 @@
+# $Id: PKGBUILD 163066 2012-07-06 15:22:11Z ibiru $
+# Maintainer: Eric Bélanger <eric@archlinux.org>
+
+pkgname=sox
+pkgver=14.4.0
+pkgrel=3
+pkgdesc="The Swiss Army knife of sound processing tools"
+arch=('i686' 'x86_64')
+url="http://sox.sourceforge.net/"
+license=('GPL' 'LGPL')
+depends=('libltdl' 'file' 'libsndfile' 'libpng' 'lame' 'opencore-amr' 'gsm')
+makedepends=('ffmpeg' 'libao' 'libmad' 'libid3tag' 'wavpack' 'libpulse')
+checkdepends=('time')
+optdepends=('libao: for ao plugin'
+ 'ffmpeg: for ffmpeg plugin'
+ 'libmad: for mp3 plugin'
+ 'libid3tag: for mp3 plugin'
+ 'wavpack: for wavpack plugin'
+ 'libpulse: for pulse plugin')
+options=('!libtool')
+source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2
+ sox_default_audio_driver_fallback.patch sox-ffmpeg0.11.patch)
+sha1sums=('12dfc57e503ed4e18cedcac292cdae7982281978'
+ 'ab304f1fc17269262dbc4977aa9b7e97ec805ae4'
+ '2f92bcaebcaf300782396f106cdd27c72048a851')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -p0 -i "${srcdir}/sox_default_audio_driver_fallback.patch"
+ patch -p1 -i "${srcdir}/sox-ffmpeg0.11.patch"
+ sed -i 's|man1/sox.1 soxeffect.7|man1/sox.1.gz soxeffect.7.gz|' Makefile.in
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --with-dyn-default --with-distro="Arch Linux"
+ make
+}
+
+check() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make bindir=. installcheck
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/testing/sox/sox-ffmpeg0.11.patch b/testing/sox/sox-ffmpeg0.11.patch
new file mode 100644
index 000000000..901c81582
--- /dev/null
+++ b/testing/sox/sox-ffmpeg0.11.patch
@@ -0,0 +1,130 @@
+diff -Naur sox-14.4.0-orig/configure sox-14.4.0/configure
+--- sox-14.4.0-orig/configure 2012-06-12 00:35:53.462360803 -0400
++++ sox-14.4.0/configure 2012-06-12 00:36:08.572361294 -0400
+@@ -15781,9 +15781,9 @@
+ cat >>confdefs.h <<_ACEOF
+ #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+ _ACEOF
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for av_open_input_file in -lavformat" >&5
+-$as_echo_n "checking for av_open_input_file in -lavformat... " >&6; }
+-if ${ac_cv_lib_avformat_av_open_input_file+:} false; then :
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for avformat_open_input in -lavformat" >&5
++$as_echo_n "checking for avformat_open_input in -lavformat... " >&6; }
++if ${ac_cv_lib_avformat_avformat_open_input+:} false; then :
+ $as_echo_n "(cached) " >&6
+ else
+ ac_check_lib_save_LIBS=$LIBS
+@@ -15797,27 +15797,27 @@
+ #ifdef __cplusplus
+ extern "C"
+ #endif
+-char av_open_input_file ();
++char avformat_open_input ();
+ int
+ main ()
+ {
+-return av_open_input_file ();
++return avformat_open_input ();
+ ;
+ return 0;
+ }
+ _ACEOF
+ if ac_fn_c_try_link "$LINENO"; then :
+- ac_cv_lib_avformat_av_open_input_file=yes
++ ac_cv_lib_avformat_avformat_open_input=yes
+ else
+- ac_cv_lib_avformat_av_open_input_file=no
++ ac_cv_lib_avformat_avformat_open_input=no
+ fi
+ rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ LIBS=$ac_check_lib_save_LIBS
+ fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_avformat_av_open_input_file" >&5
+-$as_echo "$ac_cv_lib_avformat_av_open_input_file" >&6; }
+-if test "x$ac_cv_lib_avformat_av_open_input_file" = xyes; then :
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_avformat_avformat_open_input" >&5
++$as_echo "$ac_cv_lib_avformat_avformat_open_input" >&6; }
++if test "x$ac_cv_lib_avformat_avformat_open_input" = xyes; then :
+ for ac_header in libavcodec/avcodec.h ffmpeg/avcodec.h
+ do :
+ as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+diff -Naur sox-14.4.0-orig/src/ffmpeg.c sox-14.4.0/src/ffmpeg.c
+--- sox-14.4.0-orig/src/ffmpeg.c 2012-06-12 00:35:53.459027469 -0400
++++ sox-14.4.0/src/ffmpeg.c 2012-06-12 00:36:26.539028545 -0400
+@@ -93,7 +93,7 @@
+ #if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
+ enc->error_resilience = 1;
+ #else
+- enc->error_recognition = 1;
++ enc->err_recognition = 1;
+ #endif
+
+ if (!codec || avcodec_open(enc, codec) < 0)
+@@ -157,7 +157,7 @@
+ static int startread(sox_format_t * ft)
+ {
+ priv_t * ffmpeg = (priv_t *)ft->priv;
+- AVFormatParameters params;
++ AVDictionary *params;
+ int ret;
+ int i;
+
+@@ -172,7 +172,7 @@
+
+ /* Open file and get format */
+ memset(&params, 0, sizeof(params));
+- if ((ret = av_open_input_file(&ffmpeg->ctxt, ft->filename, NULL, 0, &params)) < 0) {
++ if ((ret = avformat_open_input(&ffmpeg->ctxt, ft->filename, NULL, &params)) < 0) {
+ lsx_fail("ffmpeg cannot open file for reading: %s (code %d)", ft->filename, ret);
+ return SOX_EOF;
+ }
+@@ -231,7 +231,7 @@
+ /* If input buffer empty, read more data */
+ if (ffmpeg->audio_buf_index * 2 >= ffmpeg->audio_buf_size) {
+ if ((ret = av_read_frame(ffmpeg->ctxt, pkt)) < 0 &&
+- (ret == AVERROR_EOF || url_ferror(ffmpeg->ctxt->pb)))
++ (ret == AVERROR_EOF || ffmpeg->ctxt->pb->error))
+ break;
+ ffmpeg->audio_buf_size = audio_decode_frame(ffmpeg, ffmpeg->audio_buf_aligned, AVCODEC_MAX_AUDIO_FRAME_SIZE);
+ ffmpeg->audio_buf_index = 0;
+@@ -373,13 +373,6 @@
+ return SOX_EOF;
+ }
+
+- /* set the output parameters (must be done even if no
+- parameters). */
+- if (av_set_parameters(ffmpeg->ctxt, NULL) < 0) {
+- lsx_fail("ffmpeg invalid output format parameters");
+- return SOX_EOF;
+- }
+-
+ /* Next line for debugging */
+ /* dump_format(ffmpeg->ctxt, 0, ft->filename, 1); */
+
+@@ -391,14 +384,14 @@
+
+ /* open the output file, if needed */
+ if (!(ffmpeg->fmt->flags & AVFMT_NOFILE)) {
+- if (url_fopen(&ffmpeg->ctxt->pb, ft->filename, URL_WRONLY) < 0) {
++ if (avio_open(&ffmpeg->ctxt->pb, ft->filename, AVIO_FLAG_WRITE) < 0) {
+ lsx_fail("ffmpeg could not open `%s'", ft->filename);
+ return SOX_EOF;
+ }
+ }
+
+ /* write the stream header, if any */
+- av_write_header(ffmpeg->ctxt);
++ avformat_write_header(ffmpeg->ctxt, NULL);
+
+ return SOX_SUCCESS;
+ }
+@@ -478,7 +471,7 @@
+ #if (LIBAVFORMAT_VERSION_INT < 0x340000)
+ url_fclose(&ffmpeg->ctxt->pb);
+ #else
+- url_fclose(ffmpeg->ctxt->pb);
++ avio_close(ffmpeg->ctxt->pb);
+ #endif
+ }
+
diff --git a/testing/sox/sox_default_audio_driver_fallback.patch b/testing/sox/sox_default_audio_driver_fallback.patch
new file mode 100644
index 000000000..9f9060e17
--- /dev/null
+++ b/testing/sox/sox_default_audio_driver_fallback.patch
@@ -0,0 +1,51 @@
+--- src/sox.c.old 2012-05-06 22:45:45.380564154 -0400
++++ src/sox.c 2012-05-06 22:47:11.948248987 -0400
+@@ -2538,20 +2538,38 @@
+ return name? from_env? from_env : name : NULL;
+ }
+
++static char const * try_device(char const * name)
++{
++ sox_format_handler_t const * handler = sox_find_format(name, sox_false);
++ if (handler) {
++ sox_format_t format, * ft = &format;
++ memset(ft, 0, sizeof(*ft));
++ ft->filename = (char *)device_name(name);
++ ft->priv = lsx_calloc(1, handler->priv_size);
++ if (handler->startwrite(ft) == SOX_SUCCESS) {
++ handler->stopwrite(ft);
++ free(ft->priv);
++ return name;
++ }
++ free(ft->priv);
++ }
++ return NULL;
++}
++
+ static char const * set_default_device(file_t * f)
+ {
+ /* Default audio driver type in order of preference: */
+ if (!f->filetype) f->filetype = getenv("AUDIODRIVER");
+- if (!f->filetype && sox_find_format("coreaudio", sox_false)) f->filetype = "coreaudio";
+- if (!f->filetype && sox_find_format("pulseaudio" , sox_false)) f->filetype = "pulseaudio";
+- if (!f->filetype && sox_find_format("alsa", sox_false)) f->filetype = "alsa";
+- if (!f->filetype && sox_find_format("waveaudio" , sox_false)) f->filetype = "waveaudio";
+- if (!f->filetype && sox_find_format("sndio", sox_false)) f->filetype = "sndio";
+- if (!f->filetype && sox_find_format("oss" , sox_false)) f->filetype = "oss";
+- if (!f->filetype && sox_find_format("sunau",sox_false)) f->filetype = "sunau";
+- if (!f->filetype && sox_find_format("ao" , sox_false) && file_count) /*!rec*/
+- f->filetype = "ao";
+-
++ if (!f->filetype) f->filetype = try_device("coreaudio");
++ if (!f->filetype) f->filetype = try_device("pulseaudio");
++ if (!f->filetype) f->filetype = try_device("alsa");
++ if (!f->filetype) f->filetype = try_device("waveaudio");
++ if (!f->filetype) f->filetype = try_device("sndio");
++ if (!f->filetype) f->filetype = try_device("oss");
++ if (!f->filetype) f->filetype = try_device("sunau");
++ if (!f->filetype && file_count) /*!rec*/
++ f->filetype = try_device("ao");
++
+ if (!f->filetype) {
+ lsx_fail("Sorry, there is no default audio device configured");
+ exit(1);
diff --git a/testing/tinycdb/PKGBUILD b/testing/tinycdb/PKGBUILD
new file mode 100644
index 000000000..69c665528
--- /dev/null
+++ b/testing/tinycdb/PKGBUILD
@@ -0,0 +1,26 @@
+# $Id: PKGBUILD 163100 2012-07-07 03:15:00Z bisson $
+# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Gaetan Bisson <bisson@archlinux.org>
+
+pkgname=tinycdb
+pkgver=0.78
+pkgrel=1
+pkgdesc='Very fast and simple package for creating and reading constant data bases'
+url='http://www.corpit.ru/mjt/tinycdb.html'
+license=('custom')
+arch=('i686' 'x86_64')
+source=("http://www.corpit.ru/mjt/tinycdb/${pkgname}-${pkgver}.tar.gz")
+sha1sums=('ade42ee1e7c56f66a63cb933206c089b9983adba')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ sed -e 's/all: static/all: shared/' -e '/libcdb.a/d' -i Makefile
+ make CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}"
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" prefix=/usr mandir=/usr/share/man \
+ INSTALLPROG=cdb-shared install-{all,sharedlib}
+ install -Dm644 debian/copyright "${pkgdir}"/usr/share/licenses/tinycdb/copyright
+}
diff --git a/testing/transcode/PKGBUILD b/testing/transcode/PKGBUILD
new file mode 100644
index 000000000..f8c6bb74d
--- /dev/null
+++ b/testing/transcode/PKGBUILD
@@ -0,0 +1,61 @@
+# $Id: PKGBUILD 163067 2012-07-06 15:22:20Z ibiru $
+# Maintainer:
+# Contributor: Sarah Hay <sarahhay@mb.sympatico.ca>
+# Contributor: roberto <roberto@archlinux.org>
+
+pkgname=transcode
+_sripver=0.3-4
+pkgver=1.1.7
+pkgrel=5
+pkgdesc="A video/DVD ripper and encoder for the terminal/console"
+arch=('i686' 'x86_64')
+url="http://tcforge.berlios.de/"
+license=('GPL')
+depends=('gawk' 'imagemagick' 'lzo2' 'libdvdread' 'ffmpeg' 'mjpegtools'
+ 'libmpeg2' 'libxaw' 'libxml2' 'libxv' 'a52dec')
+makedepends=('nasm')
+options=('!libtool')
+source=(https://bitbucket.org/france/transcode-tcforge/downloads/${pkgname}-${pkgver}.tar.bz2
+ http://downloads.sourceforge.net/sourceforge/subtitleripper/subtitleripper-${_sripver}.tgz
+ subtitleripper-0.3.4-linkingorder.patch subtitleripper-0.3.4-respect-ldflags.patch
+ ffmpeg-0.11.patch)
+sha1sums=('e35df68b960eb56ef0a59a4cdbed1491be56aee6'
+ 'd93ff3578dd5f722c8f4ef16bc0903eec5781a0d'
+ 'fa05aa1770d9350d90b7cf315aa7c4a1fd921ac7'
+ '591943a33235342a66c3df0625a164a1479c09ae'
+ '765dacce5ee463adf5c124556d68bb873ef436c6')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ patch -Np1 -i "${srcdir}/ffmpeg-0.11.patch"
+ ./configure --prefix=/usr \
+ --disable-sse --disable-sse2 --disable-altivec --enable-mmx \
+ --enable-lame --enable-ogg --enable-vorbis --enable-theora \
+ --enable-libdv --enable-libxml2 --enable-v4l \
+ --enable-imagemagick --enable-libjpeg --enable-lzo --enable-mjpegtools \
+ --enable-sdl --enable-freetype2 --enable-a52 --enable-libpostproc \
+ --enable-xvid --enable-x264 --enable-alsa --enable-libmpeg2 --enable-libmpeg2convert
+ make
+
+ cd "${srcdir}/subtitleripper"
+ patch -p1 -i "${srcdir}/subtitleripper-0.3.4-linkingorder.patch"
+ patch -p1 -i "${srcdir}/subtitleripper-0.3.4-respect-ldflags.patch"
+ sed -e 's|^\(.*lppm.*\)$|#\1|' \
+ -e 's|^\(.*D_HAVE_LIB_PPM.*\)$|#\1|' \
+ -e 's/DEFINES :=/DEFINES = -DHAVE_GETLINE/' \
+ -i Makefile
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+
+ cd "${srcdir}/subtitleripper"
+ install -m 755 pgm2txt "${pkgdir}/usr/bin/"
+ install -m 755 srttool "${pkgdir}/usr/bin/"
+ install -m 755 subtitle2pgm "${pkgdir}/usr/bin/"
+ install -m 755 subtitle2vobsub "${pkgdir}/usr/bin/"
+ install -m 755 vobsub2pgm "${pkgdir}/usr/bin/"
+}
diff --git a/testing/transcode/ffmpeg-0.11.patch b/testing/transcode/ffmpeg-0.11.patch
new file mode 100644
index 000000000..24beb1069
--- /dev/null
+++ b/testing/transcode/ffmpeg-0.11.patch
@@ -0,0 +1,130 @@
+diff -Naur transcode-1.1.7/export/export_ffmpeg.c fixed-tc/export/export_ffmpeg.c
+--- transcode-1.1.7/export/export_ffmpeg.c 2011-11-19 11:50:27.000000000 -0500
++++ fixed-tc/export/export_ffmpeg.c 2012-07-05 16:22:41.095346080 -0400
+@@ -180,7 +180,7 @@
+
+
+ /* START: COPIED FROM ffmpeg-0.5_p22846(ffmpeg.c, cmdutils.c) */
+-#include <libavcodec/opt.h>
++#include <libavutil/opt.h>
+ #include <libavutil/avstring.h>
+ #include <libswscale/swscale.h>
+
+@@ -470,7 +470,6 @@
+ }
+
+ TC_LOCK_LIBAVCODEC;
+- avcodec_init();
+ avcodec_register_all();
+ TC_UNLOCK_LIBAVCODEC;
+
+@@ -634,7 +633,6 @@
+ lavc_param_rc_max_rate = 2516;
+ lavc_param_rc_buffer_size = 224 * 8;
+ lavc_param_rc_buffer_aggressivity = 99;
+- lavc_param_scan_offset = CODEC_FLAG_SVCD_SCAN_OFFSET;
+
+ break;
+
+@@ -674,7 +673,6 @@
+
+ lavc_param_rc_buffer_size = 224 * 8;
+ lavc_param_rc_buffer_aggressivity = 99;
+- lavc_param_scan_offset = CODEC_FLAG_SVCD_SCAN_OFFSET;
+
+ break;
+
+diff -Naur transcode-1.1.7/export/ffmpeg_cfg.c fixed-tc/export/ffmpeg_cfg.c
+--- transcode-1.1.7/export/ffmpeg_cfg.c 2011-11-19 11:50:27.000000000 -0500
++++ fixed-tc/export/ffmpeg_cfg.c 2012-07-05 15:26:29.112103273 -0400
+@@ -160,9 +160,7 @@
+ {"vcelim", &lavc_param_chroma_elim_threshold, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -99, 99},
+ {"vpsize", &lavc_param_packet_size, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 100000000},
+ {"vstrict", &lavc_param_strict, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -99, 99},
+- {"vdpart", &lavc_param_data_partitioning, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_PART},
+ // {"keyint", &lavc_param_keyint, TCCONF_TYPE_INT, 0, 0, 0},
+- {"gray", &lavc_param_gray, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_PART},
+ {"mpeg_quant", &lavc_param_mpeg_quant, TCCONF_TYPE_FLAG, 0, 0, 1},
+ {"vi_qfactor", &lavc_param_vi_qfactor, TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, -31.0, 31.0},
+ {"vi_qoffset", &lavc_param_vi_qoffset, TCCONF_TYPE_FLOAT, TCCONF_FLAG_RANGE, 0.0, 31.0},
+@@ -211,7 +211,6 @@
+ #else
+ {"aic", &lavc_param_aic, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_AC_PRED},
+ #endif
+- {"umv", &lavc_param_umv, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_H263P_UMV},
+ {"ibias", &lavc_param_ibias, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -512, 512},
+ {"pbias", &lavc_param_pbias, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -512, 512},
+ {"coder", &lavc_param_coder, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 10},
+@@ -223,9 +223,6 @@
+ {"nr", &lavc_param_noise_reduction, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 0, 1000000},
+ {"qprd", &lavc_param_qp_rd, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_QP_RD},
+ {"threads", &lavc_param_threads, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, 1, 16},
+- {"ss", &lavc_param_ss, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_H263P_SLICE_STRUCT},
+- {"svcd_sof", &lavc_param_scan_offset, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_SVCD_SCAN_OFFSET},
+- {"alt", &lavc_param_alt, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_ALT_SCAN},
+ {"ilme", &lavc_param_ilme, TCCONF_TYPE_FLAG, 0, 0, CODEC_FLAG_INTERLACED_ME},
+ {"inter_threshold", &lavc_param_inter_threshold, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -1000000, 1000000},
+ {"sc_threshold", &lavc_param_sc_threshold, TCCONF_TYPE_INT, TCCONF_FLAG_RANGE, -1000000, 1000000},
+diff -Naur transcode-1.1.7/filter/filter_pp.c fixed-tc/filter/filter_pp.c
+--- transcode-1.1.7/filter/filter_pp.c 2011-11-19 11:50:27.000000000 -0500
++++ fixed-tc/filter/filter_pp.c 2012-07-05 15:26:28.945436613 -0400
+@@ -38,8 +38,8 @@
+
+ /* FIXME: these use the filter ID as an index--the ID can grow
+ * arbitrarily large, so this needs to be fixed */
+-static pp_mode_t *mode[100];
+-static pp_context_t *context[100];
++static pp_mode *mode[100];
++static pp_context *context[100];
+ static int width[100], height[100];
+ static int pre[100];
+
+diff -Naur transcode-1.1.7/import/decode_lavc.c fixed-tc/import/decode_lavc.c
+--- transcode-1.1.7/import/decode_lavc.c 2011-11-19 11:50:27.000000000 -0500
++++ fixed-tc/import/decode_lavc.c 2012-07-05 15:26:28.842103278 -0400
+@@ -181,7 +181,7 @@
+ #if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
+ lavc_dec_context->error_resilience = 2;
+ #else
+- lavc_dec_context->error_recognition = 2;
++ lavc_dec_context->err_recognition = 2;
+ #endif
+ lavc_dec_context->error_concealment = 3;
+ lavc_dec_context->workaround_bugs = FF_BUG_AUTODETECT;
+diff -Naur transcode-1.1.7/import/import_ffmpeg.c fixed-tc/import/import_ffmpeg.c
+--- transcode-1.1.7/import/import_ffmpeg.c 2011-11-19 11:50:27.000000000 -0500
++++ fixed-tc/import/import_ffmpeg.c 2012-07-05 15:26:28.848769946 -0400
+@@ -314,7 +314,7 @@
+ #if LIBAVCODEC_VERSION_INT < ((52<<16)+(0<<8)+0)
+ lavc_dec_context->error_resilience = 2;
+ #else
+- lavc_dec_context->error_recognition = 2;
++ lavc_dec_context->err_recognition = 2;
+ #endif
+ lavc_dec_context->error_concealment = 3;
+ lavc_dec_context->workaround_bugs = FF_BUG_AUTODETECT;
+diff -Naur transcode-1.1.7/import/probe_ffmpeg.c fixed-tc/import/probe_ffmpeg.c
+--- transcode-1.1.7/import/probe_ffmpeg.c 2011-11-19 11:50:27.000000000 -0500
++++ fixed-tc/import/probe_ffmpeg.c 2012-07-05 15:26:28.838769947 -0400
+@@ -99,8 +99,8 @@
+
+ TC_INIT_LIBAVCODEC;
+
+- ret = av_open_input_file(&lavf_dmx_context, ipipe->name,
+- NULL, 0, NULL);
++ ret = avformat_open_input(&lavf_dmx_context, ipipe->name,
++ NULL, NULL);
+ if (ret != 0) {
+ tc_log_error(__FILE__, "unable to open '%s'"
+ " (libavformat failure)",
+diff -Naur transcode-1.1.7/libtc/tcavcodec.h fixed-tc/libtc/tcavcodec.h
+--- transcode-1.1.7/libtc/tcavcodec.h 2011-11-19 11:50:27.000000000 -0500
++++ fixed-tc/libtc/tcavcodec.h 2012-07-05 15:26:28.828769951 -0400
+@@ -53,7 +53,6 @@
+
+ #define TC_INIT_LIBAVCODEC do { \
+ TC_LOCK_LIBAVCODEC; \
+- avcodec_init(); \
+ avcodec_register_all(); \
+ TC_UNLOCK_LIBAVCODEC; \
+ } while (0)
diff --git a/testing/transcode/subtitleripper-0.3.4-linkingorder.patch b/testing/transcode/subtitleripper-0.3.4-linkingorder.patch
new file mode 100644
index 000000000..7efe22346
--- /dev/null
+++ b/testing/transcode/subtitleripper-0.3.4-linkingorder.patch
@@ -0,0 +1,28 @@
+Index: subtitleripper/Makefile
+===================================================================
+--- subtitleripper.orig/Makefile
++++ subtitleripper/Makefile
+@@ -70,19 +70,19 @@ vobsub2pgm.o: vobsub2pgm.c vobsub.h spud
+ # Target
+ subtitle2pgm: subtitle2pgm.o spudec.o
+ @echo "Linking $@"
+- @$(CC) $(LIBS) $^ -o $@
++ @$(CC) $^ -o $@ $(LIBS)
+
+ subtitle2vobsub: subtitle2vobsub.o vobsub.o
+ @echo "Linking $@"
+- @$(CC) $(LIBS) $^ -o $@
++ @$(CC) $^ -o $@ $(LIBS)
+
+ srttool: srttool.o
+ @echo "Linking $@"
+- @$(CC) $(LIBS) -g $^ -o $@
++ @$(CC) -g $^ -o $@ $(LIBS)
+
+ vobsub2pgm: vobsub2pgm.o vobsub.o spudec.o
+ @echo "Linking $@"
+- @$(CC) $(LIBS) -g $^ -o $@
++ @$(CC) -g $^ -o $@ $(LIBS)
+
+ .PHONY: clean dist rpm
+ clean:
diff --git a/testing/transcode/subtitleripper-0.3.4-respect-ldflags.patch b/testing/transcode/subtitleripper-0.3.4-respect-ldflags.patch
new file mode 100644
index 000000000..2af11d257
--- /dev/null
+++ b/testing/transcode/subtitleripper-0.3.4-respect-ldflags.patch
@@ -0,0 +1,28 @@
+Index: subtitleripper/Makefile
+===================================================================
+--- subtitleripper.orig/Makefile
++++ subtitleripper/Makefile
+@@ -70,19 +70,19 @@ vobsub2pgm.o: vobsub2pgm.c vobsub.h spud
+ # Target
+ subtitle2pgm: subtitle2pgm.o spudec.o
+ @echo "Linking $@"
+- @$(CC) $^ -o $@ $(LIBS)
++ @$(CC) $(LDFLAGS) $^ -o $@ $(LIBS)
+
+ subtitle2vobsub: subtitle2vobsub.o vobsub.o
+ @echo "Linking $@"
+- @$(CC) $^ -o $@ $(LIBS)
++ @$(CC) $(LDFLAGS) $^ -o $@ $(LIBS)
+
+ srttool: srttool.o
+ @echo "Linking $@"
+- @$(CC) -g $^ -o $@ $(LIBS)
++ @$(CC) $(LDFLAGS) $^ -o $@ $(LIBS)
+
+ vobsub2pgm: vobsub2pgm.o vobsub.o spudec.o
+ @echo "Linking $@"
+- @$(CC) -g $^ -o $@ $(LIBS)
++ @$(CC) $(LDFLAGS) $^ -o $@ $(LIBS)
+
+ .PHONY: clean dist rpm
+ clean:
diff --git a/testing/vlc/PKGBUILD b/testing/vlc/PKGBUILD
new file mode 100644
index 000000000..6b303a952
--- /dev/null
+++ b/testing/vlc/PKGBUILD
@@ -0,0 +1,89 @@
+# $Id: PKGBUILD 163068 2012-07-06 15:22:25Z ibiru $
+# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
+# Contributor: Sarah Hay <sarahhay@mb.sympatico.ca>
+# Contributor: Martin Sandsmark <martin.sandsmark@kde.org>
+
+pkgname=vlc
+pkgver=2.0.2
+pkgrel=2
+pkgdesc="A multi-platform MPEG, VCD/DVD, and DivX player"
+arch=('i686' 'x86_64')
+url="http://www.videolan.org/vlc/"
+license=('LGPL2.1' 'GPL2')
+depends=('a52dec' 'libdvbpsi' 'libxpm' 'libdca' 'qt' 'libproxy'
+ 'sdl_image' 'libdvdnav' 'libtiger' 'lua' 'libmatroska'
+ 'zvbi' 'taglib' 'libmpcdec' 'ffmpeg' 'faad2' 'libupnp'
+ 'libshout' 'libmad' 'libmpeg2' 'libmodplug' 'libass'
+ 'xcb-util-keysyms' 'ttf-freefont')
+makedepends=('live-media' 'libnotify' 'libbluray' 'flac' 'kdelibs'
+ 'fluidsynth' 'libdc1394' 'libavc1394' 'lirc-utils'
+ 'libcaca' 'librsvg' 'portaudio' 'oss' 'libgme' 'xosd'
+ 'projectm' 'twolame' 'aalib' 'libmtp' 'libdvdcss'
+ 'gnome-vfs' 'libgoom2' 'libtar' 'vcdimager')
+optdepends=('avahi: for service discovery using bonjour protocol'
+ 'libnotify: for notification plugin'
+ 'ncurses: for ncurses interface support'
+ 'libdvdcss: for decoding encrypted DVDs'
+ 'lirc-utils: for lirc plugin'
+ 'libavc1394: for devices using the 1394ta AV/C'
+ 'libdc1394: for IEEE 1394 plugin'
+ 'kdelibs: KDE Solid hardware integration'
+ 'vdpau-video: vdpau back-end for nvidia'
+ 'libva-driver-intel: back-end for intel cards'
+ 'libbluray: for Blu-Ray support'
+ 'flac: for Free Lossless Audio Codec plugin'
+ 'oss: for OSS audio support'
+ 'portaudio: for portaudio support'
+ 'twolame: for TwoLAME mpeg2 encoder plugin'
+ 'projectm: for ProjectM visualisation plugin'
+ 'libcaca: for colored ASCII art video output'
+ 'libgme: for libgme plugin'
+ 'librsvg: for SVG plugin'
+ 'gnome-vfs: for GNOME Virtual File System support'
+ 'libgoom2: for libgoom plugin'
+ 'vcdimager: navigate VCD with libvcdinfo'
+ 'xosd: for xosd support'
+ 'aalib: for ASCII art plugin'
+ 'libmtp: for MTP devices support'
+ 'fluidsynth: for synthesizer MIDI FluidSynth'
+ 'smbclient: for SMB access plugin'
+ 'libcdio: for audio CD playback support')
+conflicts=('vlc-plugin')
+replaces=('vlc-plugin')
+backup=('usr/share/vlc/lua/http/.hosts'
+ 'usr/share/vlc/lua/http/dialogs/.hosts')
+options=('!libtool' '!emptydirs')
+install=vlc.install
+source=("http://download.videolan.org/pub/videolan/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.xz")
+md5sums=('93e729cc970a4535b3213dbef0e69528')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ sed -i -e 's:truetype/freefont:TTF:g' modules/text_renderer/freetype.c
+
+ ./configure --prefix=/usr \
+ --disable-rpath \
+ --enable-oss \
+ --enable-faad \
+ --enable-nls \
+ --enable-lirc \
+ --enable-pvr \
+ --enable-ncurses \
+ --enable-realrtsp \
+ --enable-xosd \
+ --enable-aa \
+ --enable-vcdx
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ make DESTDIR="${pkgdir}" install
+
+ for res in 16 32 48 128; do
+ install -D -m644 "${srcdir}/vlc-${pkgver}/share/icons/${res}x${res}/vlc.png" \
+ "${pkgdir}/usr/share/icons/hicolor/${res}x${res}/apps/vlc.png"
+ done
+}
diff --git a/testing/vlc/vlc.install b/testing/vlc/vlc.install
new file mode 100644
index 000000000..dc4961cae
--- /dev/null
+++ b/testing/vlc/vlc.install
@@ -0,0 +1,18 @@
+post_install() {
+ xdg-icon-resource forceupdate --theme hicolor &> /dev/null
+ usr/lib/vlc/vlc-cache-gen -f /usr/lib/vlc/plugins
+ update-desktop-database -q
+}
+
+post_upgrade() {
+ post_install
+}
+
+pre_remove() {
+ rm -f usr/lib/vlc/plugins/plugins-*.dat
+}
+
+post_remove() {
+ xdg-icon-resource forceupdate --theme hicolor &> /dev/null
+ update-desktop-database -q
+}
diff --git a/testing/x264/PKGBUILD b/testing/x264/PKGBUILD
new file mode 100644
index 000000000..7fb20c2ac
--- /dev/null
+++ b/testing/x264/PKGBUILD
@@ -0,0 +1,35 @@
+# $Id: PKGBUILD 163081 2012-07-06 16:26:37Z ibiru $
+# Maintainer : Ionut Biru <ibiru@archlinux.org>
+# Contributor: damir <damir@archlinux.org>
+# Contributor: Paul Mattal <paul@archlinux.org>
+
+pkgname=x264
+pkgver=20120705
+pkgrel=1
+pkgdesc="free library for encoding H264/AVC video streams"
+arch=('i686' 'x86_64')
+url="http://www.videolan.org/developers/x264.html"
+license=('GPL')
+depends=('glibc')
+makedepends=('yasm')
+source=(ftp://ftp.videolan.org/pub/videolan/x264/snapshots/x264-snapshot-$pkgver-2245-stable.tar.bz2)
+md5sums=('81e5bec5d5774a4a3f567f14bd94289c')
+
+build() {
+ cd "$pkgname-snapshot-$pkgver-2245-stable"
+
+ ./configure --enable-shared
+
+ make
+}
+package() {
+ cd "$pkgname-snapshot-$pkgver-2245-stable"
+
+ make DESTDIR="$pkgdir" \
+ bindir=/usr/bin \
+ libdir=/usr/lib \
+ includedir=/usr/include \
+ install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/testing/xine-lib/PKGBUILD b/testing/xine-lib/PKGBUILD
new file mode 100644
index 000000000..98355362b
--- /dev/null
+++ b/testing/xine-lib/PKGBUILD
@@ -0,0 +1,45 @@
+# $Id: PKGBUILD 163069 2012-07-06 15:22:28Z ibiru $
+# Maintainer: Eric Bélanger <eric@archlinux.org>
+
+pkgname=xine-lib
+pkgver=1.2.2
+pkgrel=1
+pkgdesc="A multimedia playback engine"
+arch=('i686' 'x86_64')
+url="http://www.xine-project.org"
+license=('LGPL' 'GPL')
+depends=('libxvmc' 'ffmpeg' 'libxinerama')
+makedepends=('wavpack' 'faad2' 'libmng' 'imagemagick' 'mesa' 'libmodplug'
+ 'vcdimager' 'jack' 'aalib' 'libdca' 'a52dec' 'libmad'
+ 'libmpcdec' 'libcaca' 'libbluray' 'gnome-vfs' 'libvdpau')
+optdepends=('imagemagick: for using the imagemagick plugin' \
+ 'jack: for using the jack plugin' \
+ 'vcdimager: for using the vcd plugin' \
+ 'mesa: for using the opengl plugin' \
+ 'wavpack: for using the wavpack plugin' \
+ 'faad2: for using the faad plugin' \
+ 'libmng: for using the mng plugin' \
+ 'aalib: for using the aalib plugin' \
+ 'libmodplug: for using the modplug plugin' \
+ 'libdca: for using the dca plugin' \
+ 'a52dec: for using the a52 plugin' \
+ 'libmad: for using the mp3 plugin' \
+ 'libmpcdec: for using the musepack plugin' \
+ 'libcaca: for using the caca plugin' \
+ 'libbluray: for using the bluray plugin' \
+ 'gnome-vfs: for using the gnome-vfs plugin' \
+ 'libvdpau: for using the VDPAU plugin')
+options=('!libtool')
+source=(http://downloads.sourceforge.net/sourceforge/xine/${pkgname}-${pkgver}.tar.xz)
+sha1sums=('a349cbb0b72256bb262377796a022dcf63829b4c')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure --prefix=/usr --with-wavpack --enable-vdpau --disable-optimizations
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}