PKGBUILDs/reflective-rapidjson/default/PKGBUILD

49 lines
1.6 KiB
Bash

# Maintainer: Martchus <martchus@gmx.net>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository.
_reponame=reflective-rapidjson
_llvmver=7
pkgname=reflective-rapidjson
pkgver=0.0.5
pkgrel=3
arch=('i686' 'x86_64')
pkgdesc='Code generator for serializing/deserializing C++ objects to/from JSON using Clang and RapidJSON'
license=('GPL')
depends=('c++utilities' 'rapidjson' "llvm-libs>=${_llvmver}.0.0" "llvm-libs<$((_llvmver + 1)).0.0" 'clang')
optdepends=("boost: use Boost.Hana instead of code generator"
"$pkgname-doc: API documentation")
makedepends=('cmake' 'clang-tools-extra' 'llvm')
checkdepends=('cppunit' 'boost')
url="https://github.com/Martchus/${_reponame}"
source=("${pkgname}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz"
'https://github.com/Martchus/reflective-rapidjson/commit/5835cd85a5bbc72f4ac47a81b09e986cc8dee715.patch')
sha256sums=('7de997399332b723810833756c39b97e2ffa4160d5453ce1e2af6b4f5f4f90a7'
'958dc1902d9a6d245ce198ccdf02ffd3049404e0a5446892ce55db0108baa888')
prepare() {
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"
for patch in "$srcdir/"*.patch; do
msg2 "Applying patch $patch"
patch -p1 -i "$patch"
done
}
build() {
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="/usr"
make
}
check() {
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"
make check
}
package() {
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"
make DESTDIR="${pkgdir}" install
}