Celeste e7503bb4a8 */ocaml*: fix lint warnings
- SC2044 - for loops over find are fragile
  - SC2035 - use ./*glob* with mv
  - SC2034 - local variable unused
  - SC2115 - use "${var:?}" to ensure it never expands to /usr/bin
  - default builddir and cd "$builddir" are unnecessary
  - call to `default_dev` is missing in dev()
  - depends_dev found but no -dev subpackage defined
2024-03-23 19:56:11 +00:00

88 lines
1.8 KiB
Plaintext

# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Celeste <cielesti@protonmail.com>
pkgname=ocaml-react
_pkgname=react
pkgver=1.2.2
pkgrel=2
pkgdesc="OCaml framework for Functional Reactive Programming (FRP)"
url="https://erratique.ch/software/react"
arch="all !riscv64" # limited by ocaml aport
license="ISC"
depends_dev="$pkgname=$pkgver-r$pkgrel"
makedepends="
ncurses
ocaml
ocaml-compiler-libs
ocaml-findlib
ocaml-topkg
ocamlbuild
cmd:opam-installer
"
subpackages="$pkgname-dev"
source="$pkgname-$pkgver.tar.bz2::https://erratique.ch/software/react/releases/react-$pkgver.tbz"
builddir="$srcdir/$_pkgname-$pkgver"
# 32-bit archs
case "$CARCH" in
arm*|x86) options="$options textrels" ;;
esac
build() {
ocaml pkg/pkg.ml build --tests true --dev-pkg true
}
check() {
ocaml pkg/pkg.ml test
}
package() {
opam-installer -i \
--prefix="$pkgdir/usr" \
--libdir="$pkgdir/$(ocamlc -where)" \
$_pkgname.install
# There's just a readme and changelog.
rm -Rf "$pkgdir"/usr/doc
}
dev() {
default_dev
cd "$pkgdir"
local path; find usr/lib/ocaml \( \
-name '*.cmt' -o \
-name '*.cmti' -o \
-name '*.ml' -o \
-name '*.mli' \
\) | while read -r path
do
amove "$path"
done
}
prepare_py_provides() {
local datadir="${subpkgdir:-$pkgdir}"
local pkgbasedir=${pkgbasedir:-"$startdir/pkg"}
local controldir="$pkgbasedir"/.control.${subpkgname:-$pkgname}
options_has "!tracedeps" && return 0
ocaml4-abuild-find provides \
"$datadir"/usr/lib/ocaml \
"$controldir" \
"$pkgver-r$pkgrel"
}
scan_python3_dependency() {
local controldir="$2" datadir="$3"
ocaml4-abuild-find requires \
"$datadir"/usr/lib/ocaml \
"$controldir"
}
sha512sums="
18cdd544d484222ba02db6bd9351571516532e7a1c107b59bbe39193837298f5c745eab6754f8bc6ff125b387be7018c6d6e6ac99f91925a5e4f53af688522b1 ocaml-react-1.2.2.tar.bz2
"