commit: 83e07a9231481b67557a863a0fc1d665b408010a Author: Sam James <sam <AT> gentoo <DOT> org> AuthorDate: Tue Jun 3 03:38:53 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Tue Jun 3 03:38:53 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=83e07a92
dev-vcs/pkgcruft-git: new package, add 9999 See https://public-inbox.gentoo.org/gentoo-dev/aDwOptEdJ5ideshS@fir/ Signed-off-by: Sam James <sam <AT> gentoo.org> dev-vcs/pkgcruft-git/metadata.xml | 11 ++++ dev-vcs/pkgcruft-git/pkgcruft-git-9999.ebuild | 86 +++++++++++++++++++++++++++ 2 files changed, 97 insertions(+) diff --git a/dev-vcs/pkgcruft-git/metadata.xml b/dev-vcs/pkgcruft-git/metadata.xml new file mode 100644 index 000000000000..33c1ad3bdca7 --- /dev/null +++ b/dev-vcs/pkgcruft-git/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>[email protected]</email> + <name>Sam James</name> + </maintainer> + <upstream> + <remote-id type="github">pkgcraft/pkgcraft</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-vcs/pkgcruft-git/pkgcruft-git-9999.ebuild b/dev-vcs/pkgcruft-git/pkgcruft-git-9999.ebuild new file mode 100644 index 000000000000..1ecb0e5db4f7 --- /dev/null +++ b/dev-vcs/pkgcruft-git/pkgcruft-git-9999.ebuild @@ -0,0 +1,86 @@ +# Copyright 2023-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CRATES=" " +LLVM_COMPAT=( {17..19} ) +RUST_MIN_VER="1.85.0" + +inherit cargo edo llvm-r2 multiprocessing toolchain-funcs + +DESCRIPTION="QA support for verifying git commits via pkgcruft" +HOMEPAGE="https://pkgcraft.github.io/" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/pkgcraft/pkgcraft" + inherit git-r3 + + S="${WORKDIR}"/${P}/crates/${PN} +else + SRC_URI="https://github.com/pkgcraft/pkgcraft/releases/download/${P}/${P}.tar.xz" + + KEYWORDS="~amd64" +fi + +LICENSE="MIT" +# Dependent crate licenses +LICENSE+=" + Apache-2.0 BSD-2 BSD CC0-1.0 CDLA-Permissive-2.0 ISC MIT MPL-2.0 + Unicode-3.0 +" +SLOT="0" +IUSE="test" +# Fails to link w/ missing libssh2 +RESTRICT="!test? ( test ) test" + +DEPEND=" + dev-libs/libgit2:= + dev-libs/openssl:= +" +RDEPEND="${DEPEND}" +# clang needed for bindgen +BDEPEND+=" + $(llvm_gen_dep ' + llvm-core/clang:${LLVM_SLOT} + ') + test? ( dev-util/cargo-nextest ) +" + +QA_FLAGS_IGNORED="usr/bin/pkgcruft-git" + +pkg_setup() { + llvm-r2_pkg_setup + rust_pkg_setup +} + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + cargo_live_src_unpack + else + cargo_src_unpack + fi +} + +src_compile() { + # For scallop building bash + tc-export AR CC + + cargo_src_compile +} + +src_test() { + unset CLICOLOR CLICOLOR_FORCE + + # TODO: Maybe move into eclass (and maybe have a cargo_enable_tests + # helper) + local -x NEXTEST_TEST_THREADS="$(makeopts_jobs)" + + # The test failures appear ebuild-related + edo cargo nextest run $(usev !debug '--release') \ + --color always \ + --all-features \ + --tests \ + --no-fail-fast +}
