# Contributor: Jakub Jirutka # Maintainer: Jakub Jirutka pkgname=cmocka pkgver=1.1.0 pkgrel=4 pkgdesc="An elegant unit testing framework for C with support for mock objects" url="https://cmocka.org/" arch="all !aarch64" license="ASL-2.0" depends="" makedepends="cmake" subpackages="$pkgname-dev" source="https://cmocka.org/files/${pkgver%.*}/$pkgname-$pkgver.tar.xz s390x_wordsize.patch musl_uintptr.patch" builddir="$srcdir/$pkgname-$pkgver" prepare() { default_prepare || return 1 # Just one single test (customer_database_test) is breaking on ppc64le. if [ "$CARCH" = "ppc64le" ]; then sed -i '/customer_database_test/d' "$builddir"/example/CMakeLists.txt fi } build() { mkdir -p "$builddir"/build || return 1 cd "$builddir"/build cmake .. \ -DCMAKE_INSTALL_PREFIX=/usr \ -DBUILD_SHARED_LIBS=True \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_C_FLAGS="$CFLAGS" \ -DUNIT_TESTING=ON \ || return 1 make } check() { make -C "$builddir"/build test } package() { make -C "$builddir"/build DESTDIR="$pkgdir" install } sha512sums="b45b6c6bf6c1a0e12cbbfa203afc0172aa53215e0bd43a21b30db04c0490609a7a262f1b4d87be9df0c5c486c4f4891d3432e0e053418d373d9750a6cf5adf70 cmocka-1.1.0.tar.xz f7db110909662dc1a185d09d1f00aef967eee99753f6929b1f0794422c1ca38f4a3643f39960813355b7da155f96325a30dfbe66ac6f19e55967a241a0e923de s390x_wordsize.patch b20b5c0d172a9df756ec093a3df4bf5bdf2a0c06a3d3ad39ec001248ccb86e6fd3dcedfc9ce42e8309cc01ea34fadffd4ebcc0fb3af9f5e795e7fe40c461ac60 musl_uintptr.patch"