# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
# Contributor: Ionut Biru <ibiru@archlinux.org>
# Contributor: Pierre Schmitz <pierre@archlinux.de>
# Contributor: Mikko Seppälä <t-r-a-y@mbnet.fi>

pkgname=lib32-glib2
pkgver=2.70.0
pkgrel=1
pkgdesc="Low level core library (32-bit)"
url="https://wiki.gnome.org/Projects/GLib"
license=(LGPL)
arch=(x86_64)
depends=(lib32-pcre lib32-libffi lib32-util-linux lib32-zlib glib2)
makedepends=(gettext gtk-doc shared-mime-info python lib32-libelf git util-linux
             meson lib32-dbus)
checkdepends=(desktop-file-utils lib32-glib2)
source=("git+https://gitlab.gnome.org/GNOME/glib.git?signed#tag=$pkgver"
        multilib.diff
        gio-querymodules-32.{hook,script})
sha256sums=('SKIP'
            '05598afa7b995ad6118aefd81975e460e917276608079cf55c1f8d088ce7a36c'
            '2fe9543c97829300c25e6b45ed01fb63d3b699649fb2924b9a41443ccec8b946'
            '1c96fb5f09baf59987e4b97bf3af37ea8feedcc753b48c91ffc6bff080461f21')
validpgpkeys=('923B7025EE03C1C59F42684CF0942E894B2EAFA0') # Philip Withnall (https://endlessos.org/) <pwithnall@endlessos.org>

prepare() {
  cd glib

  # Test suite workaround
  git apply -3 ../multilib.diff
}

build() {
  export CC="gcc -m32 -mstackrealign"
  export CXX="g++ -m32 -mstackrealign"
  export PKG_CONFIG="i686-pc-linux-gnu-pkg-config"

  CFLAGS+=" -DG_DISABLE_CAST_CHECKS"
  arch-meson glib build \
    -D glib_debug=disabled \
    -D selinux=disabled \
    --libdir=/usr/lib32
  meson compile -C build
}

check() {
  meson test -C build --no-suite flaky --no-suite slow --print-errorlogs
}

package() {
  depends+=(libmount.so libffi.so)
  provides+=(libgio-2.0.so libglib-2.0.so libgmodule-2.0.so libgobject-2.0.so
             libgthread-2.0.so)

  meson install -C build --destdir "$pkgdir"

  rm -r "$pkgdir"/usr/{share,include}
  find "$pkgdir/usr/bin" -type f -not -name gio-querymodules -printf 'Removing %P\n' -delete
  mv "$pkgdir"/usr/bin/gio-querymodules{,-32}

  install -Dt "$pkgdir/usr/share/libalpm/hooks" -m644 *.hook
  install -D gio-querymodules-32.script "$pkgdir/usr/share/libalpm/scripts/gio-querymodules-32"
}

# vim:set sw=2 et:
