diff --git a/dev-util/bpf-linker/Manifest b/dev-util/bpf-linker/Manifest index 7398149be92ae..25e1f7eeed991 100644 --- a/dev-util/bpf-linker/Manifest +++ b/dev-util/bpf-linker/Manifest @@ -1,7 +1,10 @@ +DIST bpf-linker-0.10.3-crates.tar.xz 12312560 BLAKE2B 5ad449327cc682cb918eac80c4fcb511d3dc1957aa8893aab466b4119a396a3731e152626191ea2fa454bddb16b2475284da021a86502967a6ad2a03a140fee6 SHA512 9e533c56bf84372962f053af78621de91b4ef4ab4706d06bbefa5792f9aa71b6e7a5ce81032f82216df9282df7815c360e7759bc01c1ea84358e09b35284ef24 +DIST bpf-linker-0.10.3.gh.tar.gz 74134 BLAKE2B 76de2861d3c5d6a1c0374d793d686231c1944386fc6ab56a5e2778ae63fc93404d4a5be0868a6f3af631055f9744587e7c0a194b2b187b2808f78d7e7158b173 SHA512 420b4bb6e9f949647f5bd8fc425e12066f888d0059f5fcd6ee4f2ecc5f01dadb3b4c965527624cc2c743569b2e3e9175cd5df473e2ebad68c17519400517ba7c DIST bpf-linker-0.9.15-crates.tar.xz 16330432 BLAKE2B b22ecf0efe6a0dbcd76d4468f3ba674851fd41a9a3a2f71cc4f6c2f1cfcbb69043c49ae28fce441cb3972f6a7bcaa7d1aa51f78b3acb3ca67add23573c81de70 SHA512 32c172cb84999cbf9eed73bc2988fd805cf6e028349884e0af006e828374ffef3a2d47033501115dfd32641927fd7f679132c3a57c8dc475d709fab91a05b625 DIST bpf-linker-0.9.15.gh.tar.gz 53754 BLAKE2B 91554e366b4981a28a74a154258970702d8a259ea8ca3ce48d510e8b87978d8dd438505aec1a53a1c7b4d7c3e48ae3a996b03271f7e10f2dcf328e80188e432a SHA512 8c55eb0d46ca4229a1d23333b38a3d9b6dc2e21e3d720a9f7b57e0a1435c895e3829ed370d2d25fec8d5bf41fd75543a6cb493d78f4bddc1d903c831e13b9784 DIST compiler_builtins-0.1.146.crate 212475 BLAKE2B 9036a9e643ad310932c7943ce5e41c53029f08e604e8ed0a6255d49cf98ecea832dd19ffd109c34a83873880f1c281dc5991bf3f34b9e04f6e9562d40926fd48 SHA512 51db04a4e2b7fbc8a7b7407d57a9c82884f9950f5937cf422d14d4c53bc6b942d90e443857cf0c363b0365202713ecbaea3977e9c1cf534c54b041a1f6efd409 DIST compiler_builtins-0.1.152.crate 224321 BLAKE2B 232cbc3afb4de5f9ed401df8dce40a1ba56e392f5d5d9b52314abd2c93255859fcb271bd066ca4f23b7879cc787688eedd1dc78eb559ed08aa9fd0d802397fae SHA512 4053d17f667f36e1b06f30b252825e578f42f5dd5dbd4000c8e8742df2787964a9f198c052b6563d09db3d18cd1408be3d9a59b6c366b5c6198ee5581dbc7265 DIST compiler_builtins-0.1.158.crate 245300 BLAKE2B 2f0c6281af04eab6d8b2d819e3169ec384beda8b2326a41bfef77fcea24b2fe20d83ed5e2cc0a2c1635dd2f4a4b42fba161a1d6305451e767c8f79c501065d8b SHA512 8b440293d8fb3184b665cddd25dfcc8c65f216dfe5e353db0e867f0346b1aff48e3af82ed3e77aee0ff1a1767e6f35ce348048d3aabc168feb6ab633f19214e5 DIST compiler_builtins-0.1.160.crate 242364 BLAKE2B c85996e22b19e08eb4fb0d679b0b357d60f072ed2611b332d042f6d02d02f5c8fad6bad32baa5c86d5142ddeb79ff939fbb25ed68a9f8134f4a25c6cb961387c SHA512 b8a10cf1b1b42fdc070ba7b3ea4a018c912beb1540b1aef2622302e6ad876b1d488c8ef08b90d2fcab4d32d9c836c0fa552c52c1fe96afc2ad0e1be95c3ef6f6 +DIST compiletest-rs-02b122626320f562914710bada39e637f051c7bb.gh.tar.gz 60991 BLAKE2B 7338e984b4c74d2ba56c1ecb00d7d821262bed3d6d74d67b7a438fe4455f56d1cd72a25ae392baf907ad1acf565684aaa68cd42d7c61bd41fa308839a6efd489 SHA512 0aaf7eeaf9ab80cf122f7fd29f7f67db8138dc2a7f5f414f32fd5f2306ed7013375896bd0f15048e8fb42b8ea9da60a47a3e07611dea3ea101335932dd14df62 DIST compiletest-rs-0c1418d5cd5177ee9d863a5c2f300c0973cfc4f1.gh.tar.gz 61012 BLAKE2B f282dcb1d88021245dcdb03101f37fcb6a3936690716fc1470fdd671985c2757bb92c5f3d3d1e7ed2663529fc89ed587b16c70f644f1097ae039cbbcab96d809 SHA512 b7d192e6ab3617170460f2f08fb5a7ff11f0f48735de5d8d3924ffcc3f724d4c60821a7387ca9e37dfa5462645cfd7d0e9f2852da292e733d514822e9ccbaf76 diff --git a/dev-util/bpf-linker/bpf-linker-0.10.3.ebuild b/dev-util/bpf-linker/bpf-linker-0.10.3.ebuild new file mode 100644 index 0000000000000..0b00c7e95e1e2 --- /dev/null +++ b/dev-util/bpf-linker/bpf-linker-0.10.3.ebuild @@ -0,0 +1,79 @@ +# Copyright 2025-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +RUST_MIN_VER=1.90.0 +CRATES=" +" + +declare -A GIT_CRATES=( + [compiletest_rs]='https://github.com/Manishearth/compiletest-rs;02b122626320f562914710bada39e637f051c7bb;compiletest-rs-%commit%' +) + +LLVM_COMPAT=( {20..22} ) +RUST_REQ_USE="llvm_targets_BPF(+),rust_sysroots_bpf(-)" +RUST_NEEDS_LLVM=1 + +inherit cargo llvm-r1 toolchain-funcs + +DESCRIPTION="Simple BPF static linker" +HOMEPAGE="https://github.com/aya-rs/bpf-linker/" +SRC_URI=" + https://github.com/aya-rs/bpf-linker/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz + https://github.com/gentoo-crate-dist/bpf-linker/releases/download/v${PV}/${P}-crates.tar.xz + ${CARGO_CRATE_URIS} +" + +LICENSE="|| ( MIT Apache-2.0 )" +# Dependent crate licenses +LICENSE+=" + ISC MIT Unicode-3.0 Unicode-DFS-2016 + || ( Apache-2.0 Boost-1.0 ) +" +SLOT="0" +IUSE="test" +RESTRICT="!test? ( test )" + +DEPEND=" + $(llvm_gen_dep ' + llvm-core/llvm:${LLVM_SLOT}=[llvm_targets_BPF] + ') +" +RDEPEND=" + ${DEPEND} + ${RUST_DEPEND} +" +BDEPEND=" + test? ( + dev-util/btfdump + ) +" + +QA_FLAGS_IGNORED=/usr/bin/bpf-linker + +pkg_setup() { + rust_pkg_setup +} + +src_prepare() { + default + + # replace upstream crate substitution with our crate substitution, sigh + local ct_dep=$(grep ^compiletest_rs "${ECARGO_HOME}"/config.toml || die) + sed -i -e "/compiletest_rs/s;^.*$;${ct_dep};" Cargo.toml || die +} + +src_configure() { + local myfeatures=( + "llvm-${LLVM_SLOT}" + ) + cargo_src_configure --no-default-features + + export "LLVM_PREFIX"="$(get_llvm_prefix -d)" + + if [[ $(tc-get-cxx-stdlib) == "libc++" ]]; then + export LLVM_SYS_LIBCPP=c++ + fi +}