# Contributor: Leonardo Arena # Maintainer: Natanael Copa pkgname=vlc pkgver=2.1.2 _pkgver=${pkgver/_/-} _ver=${_pkgver%[a-z]} pkgrel=2 pkgdesc="A multi-platform MPEG, VCD/DVD, and DivX player" pkgusers="vlc" pkggroups="vlc" url="http://www.videolan.org/vlc/" arch="all" license="GPL2+" triggers="$pkgname.trigger=/usr/lib/vlc/plugins" subpackages="$pkgname-dev $pkgname-doc $pkgname-qt $pkgname-xorg $pkgname-daemon" depends="ttf-dejavu" makedepends=" a52dec-dev alsa-lib-dev automake autoconf avahi-dev libtool dbus-dev faad2-dev ffmpeg-dev flac-dev freetype-dev fribidi-dev gtk+-dev libbluray-dev>=0.2.1 libbluray-dev<20100000 libavc1394-dev libcddb-dev libdc1394-dev>=2.1.0 libdvbpsi-dev libdvdnav-dev libdvdread-dev libgcrypt-dev libice-dev libiconv-dev libmad-dev libmatroska-dev libmpeg2-dev libnotify-dev libogg-dev libraw1394-dev>=2.0.1 libshout-dev libsm-dev libtheora-dev libva-dev libvdpau-dev libvorbis-dev libx11-dev libxext-dev libxinerama-dev libxml2-dev libxpm-dev libxv-dev live-media-dev>=2012.01.26 lua5.2-dev ncurses-dev mesa-dev pkgconfig qt-dev sdl-dev speex-dev sysfsutils-dev taglib-dev udev-dev v4l-utils-dev x264-dev xcb-util-renderutil-dev xcb-util-keysyms-dev xdg-utils " source="http://download.videolan.org/pub/videolan/$pkgname/${_ver}/$pkgname-$_pkgver.tar.xz raspberrypi-mpeg4.patch fix-waitpid-usage.patch uclibc-define-fminf.patch dbus-fmaxf.patch uclibc-fix-idn.patch vlc.trigger" _builddir="$srcdir"/$pkgname-$_ver prepare() { cd "$_builddir" for i in $source; do case $i in *.patch) msg "Applying $i" patch -p1 -i "$srcdir"/$i || return 1 ;; esac; done sed -i -e "/^libxscreensaver_plugin_la_SOURCES/s/^/#/" modules/misc/Modules.am ./bootstrap } build() { local _arch_opts= cd "$_builddir" sed -e 's:/usr/share/fonts/truetype/freefont/FreeSerifBold.ttf:/usr/share/fonts/TTF/DejaVuSerif-Bold.ttf:' \ -i modules/text_renderer/freetype.c # -fpermissive is needed due to zlib 1.2.6 changing # void* to gzFile on gz*() functions export CFLAGS="$CFLAGS -D_GNU_SOURCE" export CXXFLAGS="$CXXFLAGS -fpermissive" case "$CARCH" in arm*) _arch_opts="--enable-omxil --enable-omxil-vout --enable-rpi-omxil" ;; esac LUA=lua5.2 \ LUAC=luac5.2 \ ./configure \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ --disable-mmx \ --disable-sse \ --disable-nls \ --disable-optimizations \ --disable-rpath \ --enable-a52 \ --enable-avcodec \ --enable-avformat \ --enable-bluray \ --enable-dbus \ --enable-dc1394 \ --enable-dvbpsi \ --enable-dvdread \ --enable-dvdnav \ --enable-faad \ --enable-flac \ --enable-httpd \ --enable-libcddb \ --enable-libva \ --enable-live555 \ --enable-merge-ffmpeg \ --enable-ncurses \ --enable-realrtsp \ --enable-sdl \ --enable-shout \ --enable-skins2 \ --enable-speex \ --enable-sout \ --enable-taglib \ --enable-theora \ --enable-v4l2 \ --enable-vdpau \ --enable-vlm \ --enable-vorbis \ --enable-wma-fixed \ --enable-x264 \ --enable-xvideo \ $_arch_opts \ || return 1 make || return 1 } package() { cd "$_builddir" make DESTDIR="$pkgdir" install || return 1 # for res in 16 32 48 128; do # install -D -m644 share/vlc${res}x${res}.png \ # "$pkgdir"/usr/share/icons/hicolor/${res}x${res}/apps/vlc.png || return 1 # done # delete cache as it's autocreated by trigger rm -rf "$pkgdir"/usr/lib/vlc/plugins/plugins.dat # delete unneeded mozilla and kde support files rm -rf "$pkgdir"/usr/lib/mozilla rm -rf "$pkgdir"/usr/share/kde4 find "$pkgdir" -name '*.la' -delete } _mv() { local dir=${1%/*} mkdir -p "$subpkgdir"/$dir mv "$1" "$subpkgdir"/$dir/ } qt() { pkgdesc="Qt frontend for VLC" depends="vlc-xorg=$pkgver-r$pkgrel" cd "$pkgdir" # scan for elf files that directly or indirectly depends on # libQt* libraries cd "$pkgdir" for i in $(find . -type f ); do if ldd $i 2>/dev/null | grep -q "libQt"; then _mv "$i" || return 1 fi done mkdir -p "$subpkgdir"/usr/bin mv "$pkgdir"/usr/bin/qvlc \ "$subpkgdir"/usr/bin/ } xorg() { pkgdesc="Video LAN X.org support" depends="xdg-utils vlc=$pkgver-r$pkgrel" # scan for elf files that directly or indirectly depends on # libX* libraries cd "$pkgdir" for i in $(find -type f ); do if ldd $i 2>/dev/null | grep -E -q "libX|x11|libxcb|libGL"; then echo $i | grep libavcodec_plugin.so || _mv "$i" || return 1 fi done mkdir -p "$subpkgdir"/usr/bin mv "$pkgdir"/usr/bin/svlc \ "$subpkgdir"/usr/bin mkdir -p "$subpkgdir"/usr/share/vlc mv "$pkgdir"/usr/share/applications \ "$pkgdir"/usr/share/icons \ "$subpkgdir"/usr/share/ mv "$pkgdir"/usr/share/vlc/skins2 \ "$subpkgdir"/usr/share/vlc } daemon() { pkgdesc="Support for running VLC as a daemon" install="vlc-daemon.pre-install" arch="noarch" depends="vlc=$pkgver-r$pkgrel" mkdir -p "$subpkgdir" cd "$pkgdir" install -D -m755 ../../vlc.initd $subpkgdir/etc/init.d/vlc install -D -m664 ../../vlc.confd $subpkgdir/etc/conf.d/vlc install -d -o vlc -g vlc "$subpkgdir"/var/log/vlc } md5sums="fb6787ad749aadcfaeab3471939b3426 vlc-2.1.2.tar.xz 8de1e959ef80806cf9f0c3918d8ba9b3 raspberrypi-mpeg4.patch 7b1a482e521b9d6dcdb6710aff51894f fix-waitpid-usage.patch 34bacc70c150bdbe19476d84a76f2849 uclibc-define-fminf.patch 0f373eaee7e74def94d0dab2be9d0c01 dbus-fmaxf.patch a57ecdeb28b93c2ac0ade2adff2da2b4 uclibc-fix-idn.patch 350b30698eb784def7d19446eb1d6c81 vlc.trigger" sha256sums="219b812be1bc2eba40faa86419d0aa2c479a7380af8af216e8bfa22eb6fc8ec4 vlc-2.1.2.tar.xz cde16969d902df62756aa412841a894451fb22333d9cd365cca8cfd2aded7a80 raspberrypi-mpeg4.patch 0c802698c215dd2d2ad9a4889b1d46dfd5d6c304d4cd1b34bacb2bacc35dd3c9 fix-waitpid-usage.patch b16801cca70c0f13830a27146025cc55b947897744d9da1ab713c5f5ce0460a0 uclibc-define-fminf.patch 3ebb0577b1ef9780eba27cd829c9839b2ddf7729c5a2a81019d08b2c0a7e5b79 dbus-fmaxf.patch 8e15a1c29fed29eeafef4dd37c73cc0da578b40d9d94713ac12a69c101040901 uclibc-fix-idn.patch 0639c022dc844fad95eb0246b1d24557641939bbda91af0c700374378d8f054a vlc.trigger" sha512sums="24ea51befb30ec2e4f796866bf086d36e809cb97bf04203a4637518c91a3035fa38a8e778aaf6fb3481db49d19236ae88bcbf31e1e4f7ae79b9d7bcc3cf037af vlc-2.1.2.tar.xz 1f988588f7d7699e36d371e2ed2df918d476697737fab8c29a5833858e428651200939339a6f31fe6b608cc4387f53dbc6b2581bc453746c1d178c2af943ec60 raspberrypi-mpeg4.patch 3c6ff4f25b7e1f0041bc47872a2b59b6c4f8bc1747d6830e9f2d9c35ee75cd2581558a12225070dede37d6a2287b0fc5c089c8f4f8ae26784aa6aded7177bed0 fix-waitpid-usage.patch 0d9310afef1afbf15a19bcc8aa1835416830666d79a5461b45df900afde5b115ec7c18d4bc15d36efe45b912ebb51ceb91cc20ebd0be0ecc4ff3fd0e06dd4a55 uclibc-define-fminf.patch b51041adcb16234289c928444a8c03db549640af28cc8dc75f732863bea519141dc36a44f353d2e42d8afde1fd8052faff0b2b661bf04a10c64f1f18f120e87b dbus-fmaxf.patch 24d7ae347a81e05aa2273c180ed76dfb0c8140ef1e4f877a88326fdf37acec0ac8bf1bde98845e40cd57c93fe6e5c186623a6f6f66ed6fe94386826260d88738 uclibc-fix-idn.patch a081dd93248b63724ffb65cde0a00db0e1f3b9a1d47074800d898e39dc71c074b3dd3fa18e5fbc45fa90376e7df6d7ef8689c4253c1d9405868a3f8bbd76adcc vlc.trigger"