diff options
Diffstat (limited to 'libre/gst-plugins-bad/PKGBUILD')
-rw-r--r-- | libre/gst-plugins-bad/PKGBUILD | 127 |
1 files changed, 85 insertions, 42 deletions
diff --git a/libre/gst-plugins-bad/PKGBUILD b/libre/gst-plugins-bad/PKGBUILD index 98b8299e2..08a57a2f0 100644 --- a/libre/gst-plugins-bad/PKGBUILD +++ b/libre/gst-plugins-bad/PKGBUILD @@ -1,43 +1,47 @@ -# Maintainer (Arch): Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> +# Maintainer (Arch): Jan Alexander Steffens (heftig) <heftig@archlinux.org> # Contributor (Arch): Jan de Groot <jgc@archlinux.org> # Maintainer: Omar Vega Ramos <ovruni@gnu.org.pe> # Contributor: Isaac David <isacdaavid@at@isacdaavid@dot@info> # Contributor: Márcio Silva <coadde@hyperbola.info> # Contributor: bill-auger <bill-auger@programmer.net> +# Contributor: David P. <megver83@parabola.nu> # parabola changes and rationale # * removed support for non-free faac codec -# * removed failing check() function (Failed to start up HTTP server) - +# * removed nvidia-utils from optdepends +# * adapt pkgdesc variable substitutions in package() functions +# * remove makedepend and package depend on svt-hevc (i686 and armv7h) +# * meson with -D svthevcenc=disabled (i686 and armv7h) pkgbase=gst-plugins-bad -pkgname=(gst-plugins-bad-libs gst-plugins-bad) -pkgver=1.16.2 -pkgrel=10 +pkgname=(gst-plugins-bad-libs gst-plugins-bad gst-plugin-opencv gst-plugin-wpe) +pkgver=1.18.3 +pkgrel=2 pkgrel+=.parabola1 -pkgdesc="GStreamer Multimedia Framework Bad Plugins, without nonfree faac support" +pkgdesc="Multimedia graph framework - bad plugins" +pkgdesc+=", without nonfree faac support" url="https://gstreamer.freedesktop.org/" arch=(x86_64) arch+=(i686 armv7h) license=(LGPL) -depends=(gst-plugins-base-libs orc libdrm libx11 libgudev libusb libvdpau) +depends=(gst-plugins-base-libs orc libdrm libx11 libgudev libusb libvdpau + libxkbcommon-x11) makedepends=(mjpegtools curl chromaprint libmms faad2 libdca libdvdnav libmodplug libgme nettle libkate wayland libofa openjpeg2 libwebp libsrtp sbc rtmpdump libexif libdvdread wildmidi ladspa openal vulkan-icd-loader libfdk-aac soundtouch spandsp neon webrtc-audio-processing libdc1394 libmpcdec zvbi openexr libbs2b libnice lcms2 bluez-libs glu srt aom x265 liblrdf libde265 zbar - librsvg fluidsynth lilv lv2 gst-plugins-good python gtk-doc git + librsvg fluidsynth lilv lv2 gst-plugins-good python git gobject-introspection vulkan-headers vulkan-validation-layers - wayland-protocols gtk3 meson) -replaces=("${pkgbase}-libre" "${pkgbase}-parabola") -conflicts=("${pkgbase}-libre" "${pkgbase}-parabola") + wayland-protocols gtk3 meson shaderc libavtp libmicrodns + zxing-cpp opencv libva wpewebkit) +makedepends_x86_64=(svt-hevc) +checkdepends=(xorg-server-xvfb) options=(!emptydirs) -_commit=a6f26408f74a60d02ce6b4f0daee392ce847055f # tags/1.16.2^0 -source=("git+https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad.git#commit=$_commit" - 0001-vulkan-Drop-use-of-VK_RESULT_BEGIN_RANGE.patch) -sha256sums=('SKIP' - '0c6c51a371d8f381a2190280913cc41e06c17c25dbb1167043072003b3f0d338') +_commit=382e373d9be363f1e21b12990a4d12f1ecb6df41 # tags/1.18.3^0 +source=("git+https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad.git#commit=$_commit") +sha256sums=('SKIP') pkgver() { cd $pkgbase @@ -47,61 +51,84 @@ pkgver() { prepare() { cd $pkgbase - # Fix build with neon 0.31 - git cherry-pick -n f10b424418e448211e3427a76fcd046e157ef0b7 - - # Fix build with vulkan-headers 1.2.140 - git apply -3 ../0001-vulkan-Drop-use-of-VK_RESULT_BEGIN_RANGE.patch - - # Fix build with GCC 10 - git cherry-pick -n a0cd455dd0e0375c6395fe732173225ea7e18562 + if [ "$CARCH" = armv7h ]; then + git cherry-pick -n 3ea6387f969c0b08027fc959b8b8cd102708bceb # Fix svthevcenc test + git cherry-pick -n 77f28ee3e71d1c5bd8278967963b08b226515dd1 # opencv 4.5 + fi } build() { - arch-meson $pkgbase build \ + if ! [ "$CARCH" = x86_64 ]; then + disable_svthevc='-D svthevcenc=disabled' + fi + + arch-meson $pkgbase build $disable_svthevc \ -D directfb=disabled \ -D faac=disabled \ + -D doc=disabled \ -D flite=disabled \ -D gsm=disabled \ -D iqa=disabled \ + -D magicleap=disabled \ -D msdk=disabled \ - -D nvdec=disabled \ - -D nvenc=disabled \ - -D opencv=disabled \ -D openh264=disabled \ -D openmpt=disabled \ -D openni2=disabled \ -D opensles=disabled \ - -D sctp=disabled \ -D tinyalsa=disabled \ -D voaacenc=disabled \ -D voamrwbenc=disabled \ + -D wasapi2=disabled \ -D wasapi=disabled \ - -D wpe=disabled \ -D gobject-cast-checks=disabled \ - -D glib-asserts=disabled \ - -D glib-checks=disabled \ -D package-name="GStreamer Bad Plugins (Parabola GNU/Linux-libre)" \ -D package-origin="https://www.parabola.nu/" - ninja -C build + meson compile -C build } +check() ( + mkdir -p -m 700 "${XDG_RUNTIME_DIR:=$PWD/runtime-dir}" + export XDG_RUNTIME_DIR + + # elements_dtls test hangs sometimes + xvfb-run -s '-screen 0 1920x1080x24 -nolisten local +iglx -noreset' \ + meson test -C build --print-errorlogs || : +) + package_gst-plugins-bad-libs() { - pkgdesc="${pkgdesc/plugins/libraries}" + pkgdesc="${pkgdesc/ plugins}" + provides=("gst-transcoder=$pkgver") + conflicts=("gst-transcoder<1.18.0") + replaces=("gst-transcoder<1.18.0") + + if [ "$CARCH" = x86_64 ]; then + enable_svthevc=svthevcenc + fi DESTDIR="$pkgdir" meson install -C build mkdir -p ext/lib/gstreamer-1.0 for _x in aom assrender bs2b bz2 chromaprint closedcaption colormanagement \ - curl dashdemux dc1394 de265 dtls dtsdec faad fdkaac \ - fluidsynthmidi gme hls kate ladspa lv2 mms modplug mpeg2enc mplex \ - musepack neonhttpsrc ofa openal openexr openjpeg opusparse \ - resindvd rsvg rtmp sbc smoothstreaming sndfile soundtouch spandsp \ - srt srtp teletext ttmlsubs vulkan waylandsink webp webrtc \ - webrtcdsp wildmidi x265 zbar; do + curl dc1394 de265 dtls dtsdec faad fdkaac fluidsynthmidi gme \ + hls kate ladspa lv2 mms modplug mpeg2enc mplex musepack \ + neonhttpsrc ofa openal openexr openjpeg opusparse resindvd rsvg \ + rtmp sbc sctp smoothstreaming sndfile soundtouch spandsp srt srtp \ + teletext ttmlsubs vulkan waylandsink webp webrtc webrtcdsp \ + wildmidi x265 zbar va "$enable_svthevc" avtp zxing microdns; do _x="lib/gstreamer-1.0/libgst${_x}.so" mv "$pkgdir/usr/$_x" "ext/$_x" done + + mkdir -p opencv/{lib,include/gstreamer-1.0/gst} + mv -t opencv/lib "$pkgdir"/usr/lib/*opencv* + mv -t opencv/include/gstreamer-1.0/gst \ + "$pkgdir"/usr/include/gstreamer-1.0/gst/opencv + + for _x in opencv wpe; do + mkdir -p "$_x/lib/gstreamer-1.0" + _f="lib/gstreamer-1.0/libgst${_x}.so" + mv "$pkgdir/usr/$_f" "$_x/$_f" + done } package_gst-plugins-bad() { @@ -112,7 +139,23 @@ package_gst-plugins-bad() { libmpcdec neon libofa openal openexr openjpeg2 opus libdvdnav libdvdread librsvg rtmpdump sbc libsndfile soundtouch spandsp srt libsrtp zvbi vulkan-icd-loader libxcb wayland libwebp libnice - webrtc-audio-processing wildmidi x265 zbar) + webrtc-audio-processing wildmidi x265 zbar libavtp + libmicrodns zxing-cpp libva) + depends_x86_64=(svt-hevc) mv ext "$pkgdir/usr" } + +package_gst-plugin-opencv() { + pkgdesc="${pkgdesc/bad plugins/opencv plugin}" + depends=(gst-plugins-base-libs opencv) + + mv opencv "$pkgdir/usr" +} + +package_gst-plugin-wpe() { + pkgdesc="${pkgdesc/bad plugins/wpe plugin}" + depends=(gst-plugins-base-libs wpewebkit) + + mv wpe "$pkgdir/usr" +} |