# Description: a set of plug-ins that aren't up to par compared to the rest
# URL: https://gstreamer.freedesktop.org/modules/gst-plugins-bad.html
# Maintainer: Tim Biermann, tbier at posteo dot de
# Depends on: brotli dav1d faac faad2 fdk-aac ffmpeg gst-plugins-base lame libass libmodplug libnice libsrtp libva libvdpau libvpx libwebp lilv mjpegtools neon openjpeg2 rtmpdump shaderc
# Optional: aom bluez chromaprint ladspa libde265 lv2 musepack openal openh264 x265

name=gst-plugins-bad
version=1.28.4
release=1
source=(https://gstreamer.freedesktop.org/src/$name/$name-$version.tar.xz)

build() {
  PKGMK_GSTBAD="--prefix=/usr
    --libexecdir=lib
    --buildtype=plain
    --wrap-mode=nodownload
    -D b_pie=true
    -D doc=disabled
    -D nls=disabled
    -D directfb=disabled
    -D flite=disabled
    -D gsm=disabled
    -D iqa=disabled
    -D magicleap=disabled
    -D msdk=disabled
    -D openmpt=disabled
    -D openni2=disabled
    -D opensles=disabled
    -D tinyalsa=disabled
    -D voaacenc=disabled
    -D voamrwbenc=disabled
    -D wasapi2=disabled
    -D wasapi=disabled
    -D extra-checks=disabled
    -D gobject-cast-checks=disabled"

  optional="aom
    bluez
    chromaprint
    ladspa
    libde265
    lv2
    musepack
    openal
    openh264
    x265"

  for feat in $optional; do
    prt-get isinst $feat || PKGMK_GSTBAD+=" -D $feat=disabled"
  done

  meson setup $name-$version build $PKGMK_GSTBAD \
    --prefix=/usr \
    --buildtype=plain \
    --wrap-mode nodownload \
    -D b_lto=true \
    -D b_pie=true \
    -D package-name="GStreamer Bad Plugins (CRUX Linux)" \
    -D package-origin="https://crux.nu/"
  meson compile -C build -j ${JOBS:-1}
  DESTDIR=$PKG meson install -C build
}
