guru/dev-ml/cstruct/cstruct-6.2.0.ebuild
Alain Emilia Anna Zscheile 194082673c
dev-ml/*: version bump cstruct to 6.2.0, psq to 0.2.1
- cstruct: get rid of unnecessary ocaml-migrate-parsetree dependency
  O-M-PT is superseded by ppxlib, which already gets pulled in by the ppx useflag

Signed-off-by: Alain Emilia Anna Zscheile <fogti+devel@ytrizja.de>
Signed-off-by: David Roman <davidroman96@gmail.com>
2024-03-02 11:55:25 +01:00

78 lines
1.4 KiB
Bash

# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit dune multiprocessing
DESCRIPTION="Map OCaml arrays onto C-like structs"
HOMEPAGE="
https://github.com/mirage/ocaml-cstruct
https://opam.ocaml.org/packages/cstruct/
"
SRC_URI="https://github.com/mirage/ocaml-cstruct/archive/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/ocaml-${P}"
LICENSE="ISC"
SLOT="0/${PV}"
KEYWORDS="~amd64"
IUSE="async lwt ocamlopt ppx sexp test unix"
RDEPEND="
>=dev-lang/ocaml-4.08.0:=[ocamlopt?]
>=dev-ml/fmt-0.8.9:=
async? (
>=dev-ml/async-0.9.0:=
>=dev-ml/async_unix-0.9.0:=
>=dev-ml/core-0.9.0:=
)
lwt? ( dev-ml/lwt:= )
ppx? (
>=dev-ml/ppxlib-0.16.0:=
dev-ml/stdlib-shims:=
)
sexp? ( >=dev-ml/sexplib-0.9.0:= )
"
DEPEND="
${RDEPEND}
test? (
dev-ml/alcotest
dev-ml/crowbar
dev-ml/ppx_sexp_conv
dev-ml/cppo
>=dev-ml/lwt-2.0.2
)
"
RESTRICT="!test? ( test )"
REQUIRED_USE="
ppx? ( sexp )
test? ( sexp ppx )
"
PATCHES=(
"${FILESDIR}/6.2-ocaml-5.1.patch"
)
src_compile() {
local pkgs="cstruct"
use ppx && pkgs="${pkgs},ppx_cstruct"
for u in async lwt sexp unix ; do
if use ${u} ; then
pkgs="${pkgs},cstruct-${u}"
fi
done
dune build -p "${pkgs}" -j $(makeopts_jobs) || die
}
src_install() {
dune_src_install cstruct
for u in async lwt sexp unix ; do
if use ${u} ; then
dune_src_install "cstruct-${u}"
fi
done
use ppx && dune_src_install ppx_cstruct
}