summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-09-30 01:22:49 +0100
committerSam James <sam@gentoo.org>2023-09-30 01:22:49 +0100
commit196afd0df60e275f17f0f6c511d54d80dfc8070d (patch)
tree570635e25e692901c74de70f4efefd929b5d9860 /sys-libs/pkgcraft
parentsys-devel/gcc: add 12.3.1_p20230929 (diff)
downloadgentoo-196afd0df60e275f17f0f6c511d54d80dfc8070d.tar.gz
gentoo-196afd0df60e275f17f0f6c511d54d80dfc8070d.tar.bz2
gentoo-196afd0df60e275f17f0f6c511d54d80dfc8070d.zip
sys-libs/pkgcraft: add 0.0.12
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sys-libs/pkgcraft')
-rw-r--r--sys-libs/pkgcraft/Manifest1
-rw-r--r--sys-libs/pkgcraft/pkgcraft-0.0.12.ebuild92
2 files changed, 93 insertions, 0 deletions
diff --git a/sys-libs/pkgcraft/Manifest b/sys-libs/pkgcraft/Manifest
index 429c1b33665f..27871881592b 100644
--- a/sys-libs/pkgcraft/Manifest
+++ b/sys-libs/pkgcraft/Manifest
@@ -1 +1,2 @@
DIST pkgcraft-c-0.0.11.tar.xz 31609776 BLAKE2B 9e341ddedebbfab61543e86eafa074700c9b1e9b415704eb1286419f88257d8c56a40f725855d4c92d7e0223dfe0fb645d4aa4a3849e9684b96943d65d174061 SHA512 75cd8d07c550fb6c60b7743918ff0b462ce3c39adedb537a9b12325ba6e1aab5fe7b138ffecd37bdcc2d94a810f6c9651311d5810f4fe0014410622c36233442
+DIST pkgcraft-c-0.0.12.tar.xz 30086644 BLAKE2B 29f80a345e31c222feb8489635f060d5097f32b010401e71d00603d30532bf90dde8eb79f243c634b3efba2a85c3c284507eda30d69e2e6444cfbd9ddcff503b SHA512 879793b1dfc5a67e7bc24477d9fe74e2c5e81c5c199ba9cf130b395b61cf41f53228269d85a06163ec7f1cc8dcb07f5c7ae51abc964083fbdd46b928b6dc9888
diff --git a/sys-libs/pkgcraft/pkgcraft-0.0.12.ebuild b/sys-libs/pkgcraft/pkgcraft-0.0.12.ebuild
new file mode 100644
index 000000000000..544df0ae2420
--- /dev/null
+++ b/sys-libs/pkgcraft/pkgcraft-0.0.12.ebuild
@@ -0,0 +1,92 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES=" "
+inherit edo cargo toolchain-funcs
+
+DESCRIPTION="C library for pkgcraft"
+HOMEPAGE="https://pkgcraft.github.io/"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/pkgcraft/pkgcraft"
+ inherit git-r3
+
+ S="${WORKDIR}"/${P}/crates/pkgcraft-c
+
+ BDEPEND="test? ( dev-util/cargo-nextest )"
+else
+ MY_P=${PN}-c-${PV}
+ SRC_URI="https://github.com/pkgcraft/pkgcraft/releases/download/${MY_P}/${MY_P}.tar.xz"
+ S="${WORKDIR}"/${MY_P}
+
+ KEYWORDS="~amd64 ~arm64"
+fi
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 BSD ISC MIT MPL-2.0 Unicode-DFS-2016"
+SLOT="0/${PV}"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# clang needed for bindgen
+BDEPEND+="
+ dev-util/cargo-c
+ sys-devel/clang
+ >=virtual/rust-1.70
+"
+
+QA_FLAGS_IGNORED="usr/lib.*/libpkgcraft.so.*"
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ cargo_live_src_unpack
+ else
+ cargo_src_unpack
+ fi
+}
+
+src_compile() {
+ local cargoargs=(
+ --library-type=cdylib
+ --prefix=/usr
+ --libdir="/usr/$(get_libdir)"
+ $(usev !debug '--release')
+ )
+
+ # For scallop building bash
+ tc-export AR CC
+
+ # Can pass -vv if need more output from e.g. scallop configure
+ edo cargo cbuild "${cargoargs[@]}"
+}
+
+src_test() {
+ if [[ ${PV} == 9999 ]] ; then
+ # It's interesting to test the whole thing rather than just
+ # pkgcraft-c.
+ cd "${WORKDIR}"/${P} || die
+
+ # Need nextest per README (separate processes required)
+ # Invocation from https://github.com/pkgcraft/pkgcraft/blob/main/.github/workflows/ci.yml#L56
+ edo cargo nextest run $(usev !debug '--release') --color always --all-features --tests
+ else
+ # There are no tests for pkgcraft-c. Test via e.g. dev-python/pkgcraft.
+ :;
+ fi
+}
+
+src_install() {
+ local cargoargs=(
+ --library-type=cdylib
+ --prefix=/usr
+ --libdir="/usr/$(get_libdir)"
+ --destdir="${ED}"
+ $(usev !debug '--release')
+ )
+
+ edo cargo cinstall "${cargoargs[@]}"
+}