# Contributor: Jakub Jirutka # Maintainer: Jakub Jirutka pkgname=lua-rapidjson pkgver=0.5.0 pkgrel=3 pkgdesc="A JSON module for Lua based on the very fast RapidJSON library" url="https://github.com/xpol/lua-rapidjson" arch="all" license="MIT" makedepends="cmake rapidjson-dev" subpackages="" checkdepends="lua-busted lua-dromozoa-utf8" source="$pkgname-$pkgver.tar.gz::https://github.com/xpol/$pkgname/archive/v$pkgver.tar.gz disable-c-cxx-flag-march.patch" builddir="$srcdir/$pkgname-$pkgver" # luajit is not available for selected arches case "$CARCH" in s390x) _luajit="";; *) checkdepends="$checkdepends luajit" _luajit="jit";; esac _luaversions="5.1 5.2 5.3" for _v in $_luaversions; do makedepends="$makedepends lua$_v-dev" subpackages="$subpackages lua$_v-${pkgname#lua-}:_subpackage" done prepare() { default_prepare cd "$builddir" # Remove bundled rapidjson (use system package), # but keep bin directory - it's needed for tests. rm -r rapidjson/include } build() { local lver; for lver in $_luaversions; do mkdir -p "$builddir"/build-$lver cd "$builddir"/build-$lver msg "Building against Lua $lver..." cmake .. \ -DCMAKE_BUILD_TYPE=MinSizeRel \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_CXX_FLAGS="$CXXFLAGS" \ -DCMAKE_C_FLAGS="$CFLAGS" \ -DCMAKE_VERBOSE_MAKEFILE=ON \ -DBUILD_SHARED_LIBS=ON \ -DLUA_INCLUDE_DIR="$(pkg-config --variable=includedir lua$lver)" \ -DLUA_RAPIDJSON_VERSION="$pkgver" make done } check() { local lver; for lver in $_luaversions $_luajit; do cd "$builddir"/build-${lver/jit/5.1} ln -sf ../rapidjson ../spec . msg "Testing on lua$lver" lua$lver /usr/bin/busted done } package() { mkdir -p "$pkgdir" } _subpackage() { local lver="${subpkgname:3:3}" pkgdesc="$pkgdesc (for Lua $lver)" depends="lua$lver" install_if="$pkgname=$pkgver-r$pkgrel lua$lver" local install_cmod=$(pkg-config --variable=INSTALL_CMOD lua$lver) install -D -m 755 "$builddir"/build-$lver/rapidjson.so \ "$subpkgdir"/$install_cmod/rapidjson.so } sha512sums="eb07792d01d6bf32d2ccec244fd5f55ce3e66b356b8e61f0dd86b7e6c4a5a582ab8cb64e2af1f79628e85409e60bf2edd05e2bff12be4987650d948baf246ef3 lua-rapidjson-0.5.0.tar.gz 9bfe86c75765d0684f33b660129c3ab90629b8518b05d14aa99ea15e6eb39dcb0a56e9a705f2dcae0f463e7ed92c8759628b0fbdaeee43aff34ac7e5b6c6bf10 disable-c-cxx-flag-march.patch"