# Contributor: Jon Ong # Contributor: Jakub Jirutka # Maintainer: Anil Madhavapeddy pkgname=ocamlbuild pkgver=0.12.0 pkgrel=3 pkgdesc="Generic build tool with built-in rules for building OCaml library and programs" url="https://github.com/ocaml/ocamlbuild" arch="all !x86 !armhf !s390x" # limited by ocaml aport license="LGPL-2.0-or-later-WITH-linking-exception" checkdepends="ocaml-compiler-libs ocaml-findlib" depends="ocaml-$pkgname=$pkgver-r$pkgrel cmd:tput" makedepends="ocaml" subpackages="$pkgname-doc ocaml-$pkgname-dev:_libdev ocaml-$pkgname:_lib" source="$pkgname-$pkgver.tar.gz::https://github.com/ocaml/$pkgname/archive/$pkgver.tar.gz" builddir="$srcdir/$pkgname-$pkgver" build() { cd "$builddir" make configure \ OCAML_NATIVE=true \ OCAMLBUILD_BINDIR="/usr/bin" \ OCAMLBUILD_LIBDIR="/usr/lib/ocaml" make } check() { cd "$builddir" make test } package() { cd "$builddir" make DESTDIR="$pkgdir" install # Remove annotation files. rm -f "$pkgdir"/usr/lib/ocaml/$pkgname/*.cmt* # Keep only native binary. cd "$pkgdir"/usr/bin rm ocamlbuild.byte mv ocamlbuild.native ocamlbuild } _libdev() { pkgdesc="$pkgdesc (development files)" depends="ocaml-$pkgname=$pkgver-r$pkgrel" replaces="$pkgname" # for backward compatibility local file; for file in '*.a' '*.cmx' '*.cmxa' '*.mli' '*.o'; do _submv "usr/lib/ocaml/$pkgname/$file" done } _lib() { pkgdesc="$pkgdesc (library)" replaces="$pkgname" # for backward compatibility _submv usr/lib/ocaml } _submv() { local path="$1" mkdir -p "$subpkgdir"/${path%/*} mv "$pkgdir"/$path "$subpkgdir"/${path%/*}/ rmdir -p "$pkgdir"/${path%/*} 2>/dev/null || true } sha512sums="0755a8410a1e083d344e2389bbff06ae2ad5daaf9b186147fd0d2fa094bdc3a2e8e94e2a1e666a63276d10899274b905535300f47d50e747e86f17cf562abe08 ocamlbuild-0.12.0.tar.gz"