# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Giovanni Scafora <giovanni@archlinux.org>

# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
#  - configure with --disable-more-warnings to silence -Wcast-align on 32bit

pkgname=rhythmbox
pkgver=3.4.3
pkgrel=1
pkgdesc="Music playback and management application"
arch=(x86_64)
license=(GPL)
url="https://wiki.gnome.org/Apps/Rhythmbox"
depends=(dconf gst-plugins-base gst-plugins-good libsoup json-glib libnotify libpeas
         media-player-info totem-plparser tdb python-gobject libgudev grilo)
makedepends=(itstool intltool brasero gobject-introspection vala grilo libdmapsharing lirc libgpod
             libmtp gtk-doc yelp-tools git)
checkdepends=(check xorg-server-xvfb)
optdepends=('gst-plugins-ugly: Extra media codecs'
            'gst-plugins-bad: Extra media codecs'
            'gst-libav: Extra media codecs'
            'brasero: Audio CD Recorder plugin'
            'libdmapsharing: DAAP Music Sharing plugin'
            'grilo-plugins: Grilo media browser plugin'
            'lirc: LIRC plugin'
            'libgpod: Portable Players - iPod plugin'
            'libmtp: Portable Players - MTP plugin'
            'gvfs-mtp: Portable Players - Android plugin')
options=('!emptydirs')
_commit=8d0325421da990afab2e1c704648e1ad17378141  # tags/v3.4.3^0
source=("git+https://gitlab.gnome.org/GNOME/rhythmbox.git#commit=$_commit")
sha512sums=('SKIP')

pkgver() {
  cd $pkgname
  git describe --tags | sed 's/^v//;s/-/+/g'
}

prepare() {
  cd $pkgname
  NOCONFIGURE=1 ./autogen.sh
}

build() {
  cd $pkgname
  ./configure \
    --prefix=/usr \
    --sysconfdir=/etc \
    --localstatedir=/var \
    --libexecdir=/usr/lib/rhythmbox \
    --disable-browser-plugin \
    --disable-static \
    --enable-daap \
    --enable-gtk-doc \
    --enable-python \
    --enable-vala \
    --disable-more-warnings

  # https://bugzilla.gnome.org/show_bug.cgi?id=655517
  sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool

  make
}

check() {
  cd $pkgname
  glib-compile-schemas --targetdir=tests --schema-file=data/org.gnome.rhythmbox.gschema.xml
  GSETTINGS_BACKEND=memory \
  GSETTINGS_SCHEMA_DIR="$PWD/tests" \
  CK_TIMEOUT_MULTIPLIER=3 \
  xvfb-run -a -n 63 make check
}

package() {
  cd $pkgname
  make DESTDIR="$pkgdir" install
  rm -r "$pkgdir/usr/lib/rhythmbox/sample-plugins"
  rm -r "$pkgdir/usr/lib/rhythmbox/plugins/rbzeitgeist"
}