# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Contributor: Chris Kitching <chriskitching@linux.com>

_basename=gst-plugins-base
pkgbase=lib32-$_basename
pkgname=(lib32-gst-plugins-base-libs lib32-gst-plugins-base)
pkgver=1.14.4
pkgrel=1
pkgdesc="GStreamer Multimedia Framework Base Plugins (32-bit)"
url="https://gstreamer.freedesktop.org/"
arch=(x86_64)
license=(LGPL)
makedepends=(lib32-gstreamer lib32-orc lib32-libxv lib32-alsa-lib lib32-cdparanoia lib32-libvisual lib32-libvorbis
             lib32-libtheora lib32-pango gobject-introspection lib32-opus autoconf-archive git)
options=(!emptydirs)
_commit=384ff7d0268c71e76f7328a9ca6dfe96e4a3ab23 # tags/1.14.4^0
source=("git+https://anongit.freedesktop.org/git/gstreamer/gst-plugins-base#commit=$_commit"
        "gst-common::git+https://anongit.freedesktop.org/git/gstreamer/common")
sha512sums=('SKIP'
            'SKIP')

pkgver() {
  cd $_basename
  git describe --tags | sed 's/-/+/g'
}

prepare() {
  cd $_basename

  git submodule init
  git config --local submodule.common.url "$srcdir/gst-common"
  git submodule update

  NOCONFIGURE=1 ./autogen.sh
}

build() {
  cd $_basename

  export CC='gcc -m32'
  export CXX='g++ -m32'
  export PKG_CONFIG_PATH='/usr/lib32/pkgconfig'

  ./configure\
    --build=i686-pc-linux-gnu\
    --prefix=/usr\
    --sysconfdir=/etc\
    --localstatedir=/var\
    --libexecdir=/usr/lib32\
    --libdir=/usr/lib32\
    --disable-static\
    --disable-examples\
    --disable-gtk-doc-html\
    --enable-experimental \
    --with-package-name="GStreamer Base Plugins (Arch Linux)" \
    --with-package-origin="https://www.archlinux.org/"
  sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
  make
}

check() {
  cd $_basename
  make check || :
}

package_lib32-gst-plugins-base-libs() {
  pkgdesc="GStreamer Multimedia Framework Base Plugin libraries (32-bit)"
  depends=(lib32-gstreamer lib32-orc lib32-libxv)

  cd $_basename
  make DESTDIR="${pkgdir}" install
  make -C ext DESTDIR="${pkgdir}" uninstall

  rm -Rf "${pkgdir}"/usr/share
  rm -Rf "${pkgdir}"/usr/include
  rm -Rf "${pkgdir}"/usr/bin
}

package_lib32-gst-plugins-base() {
  depends=("lib32-gst-plugins-base-libs=$pkgver" lib32-alsa-lib lib32-cdparanoia lib32-libvisual lib32-libvorbis
           lib32-libtheora lib32-pango lib32-opus)

  cd $_basename
  make -C gst-libs DESTDIR="${pkgdir}" install
  make -C ext DESTDIR="${pkgdir}" install
  make -C gst-libs DESTDIR="${pkgdir}" uninstall

  # Seems to be no build flag to turn this crap off, soo...
  rm -Rf "${pkgdir}"/usr/share
  rm -Rf "${pkgdir}"/usr/include
  rm -Rf "${pkgdir}"/usr/bin
}
