# Maintainer (Arch): Sergej Pupykin # Contributor: (Arch) Storm Dragon # Contributor (Arch): Aaron 'venisonslurpee' Laursen # Contributor (Arch): Christopher Rosell # Contributor (Arch): lh # Contributor (Arch): Sebastian Schwarz # Contributor (Arch): Sergej Pupykin # Contributor (Arch): Xilon # Maintainer: Omar Vega Ramos pkgname=xmms2 pkgver=0.8DrO_o.919.gece0baf _commit=ece0baf0f56f705bdf9a3d174ac170d194bfe0b0 pkgrel=4.parabola1 pkgdesc="X-platform Music Multiplexing System 2, without nonfree mac recommendation" arch=(i686 x86_64 armv7h) url="https://xmms2.org/" license=(GPL LGPL) _depends=('alsa-lib: ALSA output' 'avahi: announce xmms2d via bonjour/mDNS/zeroconf' 'boost: C++ bindings' 'curl: play HTTP streams' 'cython: Python bindings' 'faad2: AAC support' 'ffmpeg: WMA, avcodec & avformat support' 'fftw: visualization' 'flac: FLAC support' 'fluidsynth: MIDI support' 'jack: JACK output' 'libao: libao output' 'libcdio-paranoia: CDDA support' 'libdiscid: CDDA support' 'libgme: support for various video game music formats' 'libmad: MP3 support' 'libmms: play MMS streams' 'libmodplug: MOD support' 'libmpcdec: Musepack support' 'libofa: MusicDNS fingerprinting' 'libsamplerate: vocoder support' 'libshout: Icecast output' 'libvorbis: Ogg Vorbis support' 'libxml2: XSPF and podcast support' 'mpg123: alternative MP3 support' 'opusfile: Opus support' 'perl: Perl bindings' 'ruby: Ruby bindings' # 'sidplay2-libs: support for C64 music files' # we do not have sidplay 2 series in repos; also it's # somehow connected with resid i guess(not in repos also) 'smbclient: direct CIFS/SMB access' 'speex: Speex support' 'wavpack: WavPack support') depends=(glib2 readline) makedepends=("${_depends[@]%%:*}" libpulse python2 git) optdepends=("${_depends[@]}" 'oss: OSS output' 'pulseaudio: PulseAudio output') provides=(xmms2) conflicts=(xmms2 xmms2-devel) install=install.sh source=(git://git.xmms2.org/xmms2/xmms2-devel.git#commit=${_commit} tmpfiles.conf system.service user.service) md5sums=('SKIP' 'd3ab09ed8d1cf982468d1ceb141d4a9d' '4b026ab80e853f24b5cf13b310afb83c' 'f773f674882946065c02e36e9548eb00') pkgver() { cd "$srcdir/xmms2-devel" git describe --always | sed 's/-/./g' } prepare() { cd "$srcdir/xmms2-devel" git submodule update --init sed -i '$a#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 /* 1 second of 48kHz 32bit audio */' src/plugins/avcodec/avcodec_compat.h sed -i 's,#include ,#include ,' src/plugins/cdda/cdda.c sed -i 's,libsmbclient.h,samba-4.0/libsmbclient.h,' src/plugins/samba/{samba.c,wscript} sed -i 's|Werror|Wno-error|g' waftools/*.py } build() { cd "$srcdir/xmms2-devel" CXXFLAGS="-Wall" CFLAGS="-Wall" ./waf configure --prefix=/usr --sbindir=/usr/bin --without-ldconfig \ --with-ruby-archdir=`ruby -e 'puts RbConfig::CONFIG["vendorarchdir"]'` \ --with-ruby-libdir=`ruby -e 'puts RbConfig::CONFIG["vendorlibdir"]'` \ --with-perl-archdir=`perl -V:installvendorarch | cut -f2 -d\'` \ --with-optionals=launcher,xmmsclient++,xmmsclient++-glib,perl,ruby,nycli,pixmaps,et,mdns,medialib-updater,sqlite2s4 \ --without-optionals=python ./waf build } package() { cd "$srcdir/xmms2-devel" ./waf --destdir="$pkgdir" install install -d -o46 -g46 "$pkgdir/var/lib/xmms2" install -Dm0644 "$srcdir/tmpfiles.conf" \ "$pkgdir/usr/lib/tmpfiles.d/xmms2.conf" install -Dm0644 "$srcdir/system.service" \ "$pkgdir/usr/lib/systemd/system/xmms2d.service" install -Dm0644 "$srcdir/user.service" \ "$pkgdir/usr/lib/systemd/user/xmms2d.service" [ -d $pkgdir/usr/lib64 ] && \ { mv $pkgdir/usr/lib64/* $pkgdir/usr/lib/; rmdir $pkgdir/usr/lib64; } || \ true # also install python2 bindings #./waf distclean #PYTHON=/usr/bin/python2 ./waf configure --prefix=/usr --with-optionals=python --without-xmms2d #./waf build #./waf --destdir="$pkgdir" install # template start; name=perl-binary-module-dependency; version=1; if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then _perlver_min=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]);') _perlver_max=$(perl -e '$v = $^V->{version}; print $v->[0].".".($v->[1]+1);') depends+=("perl>=$_perlver_min" "perl<$_perlver_max") fi # template end; }