# Maintainer: rzy <me@23ro.org>
pkgbase=okular-mupdf-ng-git
pkgname=okular-mupdf-ng-git
_pkgname=okular-mupdf-ng
# Keep the MuPDF version and checksum in sync with cmake/mupdf.version.
_mupdfver=1.28.5
pkgver=0.5.0
pkgrel=1
pkgdesc="MuPDF backend generator plugin for KDE Okular (Next Generation) - git"
arch=('x86_64')
url="https://github.com/l4rzy/okular-mupdf-ng"
license=('GPL-3.0-or-later')
depends=('kcoreaddons' 'ki18n' 'okular' 'nss' 'libseccomp' 'libjpeg-turbo' 'brotli' 'freetype2' 'zlib')
makedepends=('cmake' 'extra-cmake-modules' 'git' 'openssl' 'ninja' 'patch' 'qt6-tools')
provides=('okular-mupdf-ng')
conflicts=('okular-mupdf-ng')
source=("$_pkgname::git+$url.git"
        "https://github.com/ArtifexSoftware/mupdf-downloads/releases/download/$_mupdfver/mupdf-$_mupdfver-source.tar.gz")
sha256sums=('SKIP'
            '98a5c10cda20c3992cdf76ff6b2a1149c32bd79cc796d3f703230b1185b7e934')

pkgver() {
  cd "$srcdir/$_pkgname"
  ( set -o pipefail
    git describe --long --tags --abbrev=7 2>/dev/null | sed -e 's/^v//' -e 's/\([^-]*-g\)/r\1/;s/-/./g' ||
    printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short=7 HEAD)"
  )
}

build() {
  cmake -B "build" -S "$srcdir/$_pkgname" -G Ninja \
    -DCMAKE_BUILD_TYPE=None \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DKDE_INSTALL_USE_QT_SYS_PATHS=ON \
    -DUSE_SYSTEM_MUPDF=OFF \
    -DMUPDF_SOURCE_DIR="$srcdir/mupdf-$_mupdfver-source" \
    -DBUILD_TESTING=ON
  cmake --build "build"
}

check() {
  ctest --test-dir "build" --output-on-failure
}

package() {
  DESTDIR="$pkgdir" cmake --install "build"
  # The signature appearance depends on the bundled font; fail the package
  # rather than silently shipping a build whose install rule dropped it.
  test -f "$pkgdir/usr/share/okular-mupdf-ng/Allura-Regular.ttf"
  test -f "$pkgdir/usr/share/doc/okular-mupdf-ng/Allura-OFL.txt"
  test -f "$pkgdir/usr/share/doc/okular-mupdf-ng/MuPDF-COPYING"
}
