# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>

pkgname=haskell-glib
pkgver=0.13.7.0
pkgrel=30
pkgdesc="Binding to the GLIB library for Gtk2Hs."
url="https://hackage.haskell.org/package/glib"
license=('LGPL2.1')
arch=('x86_64')
depends=('ghc-libs' 'glib2' 'haskell-utf8-string')
makedepends=('ghc' "haskell-gtk2hs-buildtools")
provides=('gtk2hs-glib')
replaces=('gtk2hs-glib')
conflicts=('gtk2hs-glib')
source=(https://hackage.haskell.org/packages/archive/glib/$pkgver/glib-$pkgver.tar.gz
        glib2-2.61.2.patch)
sha512sums=('507fdcc6d686ea25b46d9d6f112aa29ebf751b3db99a19c9938ebd8675a8c167aafe151c96fe115662d15696c79aada93a0b197450159e8f45bc329e3de4455a'
            'd320c0e29e2624b8c8aed5dde3b0be5617fdda6a253768713cd4ace0a6cca51bab1e5177400986b0d6f72bc87c2e254067694186d429261ed51521a0d47df6d6')

prepare() {
    cd glib-$pkgver
    # https://github.com/gtk2hs/gtk2hs/issues/276
    patch -p1 -i ../glib2-2.61.2.patch
}

build() {
    cd "${srcdir}/glib-${pkgver}"

    runhaskell Setup configure -O --enable-shared --enable-executable-dynamic --disable-library-vanilla \
        --prefix=/usr --docdir=/usr/share/doc/$pkgname \
        --dynlibdir=/usr/lib --libsubdir=\$compiler/site-local/\$pkgid
    runhaskell Setup build
    runhaskell Setup register --gen-script
    runhaskell Setup unregister --gen-script
    sed -i -r -e "s|ghc-pkg.*update[^ ]* |&'--force' |" register.sh
    sed -i -r -e "s|ghc-pkg.*unregister[^ ]* |&'--force' |" unregister.sh
}

package() {
    cd "${srcdir}/glib-${pkgver}"

    install -D -m744 register.sh "$pkgdir"/usr/share/haskell/register/$pkgname.sh
    install -D -m744 unregister.sh "$pkgdir"/usr/share/haskell/unregister/$pkgname.sh
    runhaskell Setup copy --destdir="$pkgdir"
}
