# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
# Contributor: Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
# Contributor: Jeremy Cowgar <jeremy@cowgar.com>

pkgbase=check
pkgname=(check)
pkgver=0.15.2
pkgrel=2.1
pkgdesc="A unit testing framework for C"
url="https://libcheck.github.io/check/"
arch=(aarch64)
license=(LGPL)
makedepends=(git awk cmake base-devel)
_commit=11970a7e112dfe243a2e68773f014687df2900e8  # tags/0.15.2
source=("git+https://github.com/libcheck/check#commit=$_commit"
        no-static.diff
        override-srcdir.patch)
sha256sums=('SKIP'
            '1151c40e5bfb08e77175f30f79daadc8c07021c980589a6b33c6f1cf224e48df'
            'SKIP')

pkgver() {
  cd check
  git describe --tags | sed 's/-/+/g'
}

prepare() {
  cd check

  # https://bugs.archlinux.org/task/68076
  patch -Np1 -i ../no-static.diff

  patch -Np1 -i ../override-srcdir.patch
  autoreconf -fvi
}

build() {
  CFLAGS+=" -Wno-format-extra-args"

  cmake -Hcheck -Bcmake \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_BUILD_TYPE=None \
    -DCHECK_ENABLE_TIMEOUT_TESTS=OFF \
    -Dsrcdir=/usr/src/debug/check/check/tests \
    -DAWK_GSUB_DBL_BSLASH='\\\\'
  cmake --build cmake

  cd check
  ./configure --prefix=/usr --disable-timeout-tests
  make all
}

check() {
  CTEST_OUTPUT_ON_FAILURE=1 cmake --build cmake --target test

  cd check
  make check
}

package_check() {
  depends=(awk)
  optdepends=('check-docs: Documentation')
  provides=(libcheck.so)

  DESTDIR="$pkgdir" cmake --build cmake --target install

  DESTDIR="$srcdir/tmp" make -C check install
  mv tmp/usr/share/{aclocal,info} "$pkgdir/usr/share"
  rm -rv tmp
}
