# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
# Contributor: Eric BĂ©langer <eric@archlinux.org>

# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
#  - do not use LLINT assembly for v5/v6

highmem=1

pkgname=webkit2gtk
pkgver=2.26.2
pkgrel=2
pkgdesc="GTK+ Web content engine library"
arch=(x86_64)
url="https://webkitgtk.org/"
license=(custom)
depends=(libxt libxslt enchant gst-plugins-base-libs libsecret libwebp openjpeg2
         harfbuzz-icu gtk3 libnotify hyphen woff2 libwpe wpebackend-fdo
         bubblewrap xdg-dbus-proxy)
makedepends=(gperf gobject-introspection ruby gtk-doc cmake python geoclue)
optdepends=('geoclue: Geolocation support'
            'gst-plugins-good: media decoding'
            'gst-plugins-bad: media decoding'
            'gst-libav: nonfree media decoding')
source=(https://webkitgtk.org/releases/webkitgtk-${pkgver}.tar.xz{,.asc}
        icu65.patch)
sha256sums=('6b80f0637a80818559ac8fd50db3b394f41cb61904fb9b3ed65fa51635806512'
            'SKIP'
            '3acd85fecfca223e3fbf834e3be286ea29270689da994a758659abc8ed0a6635')
validpgpkeys=('D7FCF61CF9A2DEAB31D81BD3F3D322D0EC4582C3'
              '5AA3BC334FD7E3369E7C77B291C559DBE4C9123B')

prepare() {
  cd webkitgtk-$pkgver
  patch -Np1 -i ../icu65.patch # from PLD Linux
}

build() {
  # do not use LLINT assembly for v5/v6
  [[ $CARCH == "arm" || $CARCH == "armv6h" ]] && CONFIG="-DENABLE_JIT=OFF"

  cmake -Hwebkitgtk-$pkgver -Bbuild \
    -DPORT=GTK \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_SKIP_RPATH=ON \
    -DENABLE_GTKDOC=ON \
    -DLIBEXEC_INSTALL_DIR=/usr/lib \
    -DLIB_INSTALL_DIR=/usr/lib \
    $CONFIG
  cmake --build build
}

check() {
  : cmake --build build --target tests
}

package() {
  DESTDIR="$pkgdir" cmake --build build --target install

  cd webkitgtk-$pkgver
  find Source -name 'COPYING*' -or -name 'LICENSE*' -print0 | sort -z |
    while IFS= read -d $'\0' -r _f; do
      echo "### $_f ###"
      cat "$_f"
      echo
    done |
    install -Dm644 /dev/stdin "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}

# vim:set sw=2 et: