commit: 4e25ba0b649f04236e1bdf4e0173d81b716a7832 Author: Stefan Strogin <steils <AT> gentoo <DOT> org> AuthorDate: Sat Nov 8 18:05:54 2025 +0000 Commit: Stefan Strogin <steils <AT> gentoo <DOT> org> CommitDate: Sat Nov 8 18:11:32 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4e25ba0b
dev-util/radare2: add 6.0.4 Signed-off-by: Stefan Strogin <steils <AT> gentoo.org> dev-util/radare2/Manifest | 5 ++ dev-util/radare2/radare2-6.0.4.ebuild | 123 ++++++++++++++++++++++++++++++++++ 2 files changed, 128 insertions(+) diff --git a/dev-util/radare2/Manifest b/dev-util/radare2/Manifest index bccfdf192035..2d01560dc3c4 100644 --- a/dev-util/radare2/Manifest +++ b/dev-util/radare2/Manifest @@ -1,4 +1,9 @@ DIST radare2-5.9.6-vector35-arm64.tar.gz 1050988 BLAKE2B 889c5a98b6efb45026349ca25b73d39e8a8049fce052d49b5e37d974bff038de85f99f1d7651db6c621b036be2948e29a62e6b8261cab6a9bdfd72442858d7e9 SHA512 433a9e972ee13269a495e94aba335b97892eb2614de1460e055e30d60976989f986ef253b352ba918786d4056e3a4d948a66ea90d25aa5ddf52a276152279c92 DIST radare2-5.9.6-vector35-armv7.tar.gz 255278 BLAKE2B 8b5191c48fad2e7602dc2f7053f9c9ea8cca8e9bc5d68a0cdb7ccff9ecc65c5d1ff6a434e28488dbd6fb71fc7482fce08a0a69c358e5c3d6c017ac1e4cee3b21 SHA512 40c048b29856f48300d4539bc7bda38e6ceae1e8d4d9d131c4a7546b6e26b2fb96309c483b67e2c2290b06cea5fc52a7beb30557d54e89296e7734cc1ab06d10 DIST radare2-5.9.6.tar.gz 11665346 BLAKE2B d71aa32d494d4cce9a4f9e9640ccf6cd99320072f181ca7834ff015178c5295facf64fa8ab87a3075f09caede5b87d5b87d488955b2ad7a412445587e2426d39 SHA512 ae7211b560b0949f55d385846df3f477c46596e42d2076ab6cc6314adf77ec595f6f98800fb5d8999b82ec1150b9924e301976a18218858dd5f9399278ac9a59 +DIST radare2-6.0.4-capstone.tar.gz 7652429 BLAKE2B 6d9651c88bd5a0eaf905ac7bd8764cb3b8f7a07389cbafed2049417c949a470c0da3c1e520040b7ef500b62bfb490efe843e394f3ed256a6a5caa90c7be9f666 SHA512 5e337a7a20182ce64bd292efb6a9545f2937c3dd85cbbf1427568efb60ef8bfe2e4eadd315195e56ff015eec9a10504f1b39fef7c6ed34bf4f8c3907f3ed5e78 +DIST radare2-6.0.4-qjs.tar.gz 780145 BLAKE2B c08027666fdcd92760bfcbede345ea33a1bd52599ea9461b9679a92e8bea05c95f10879eb1a11d6112536d5572824bdf2eb4a95f65b553854dfb97efd64e2ac3 SHA512 a6b74fc3eb1161d9521453dbdac75799642024ad843695bf9bbe5a711843b8eae4510d01016a9279fe767f8ea22b55acd489bb16685f2dea9d573a343ba1b89d +DIST radare2-6.0.4-sdb.tar.gz 309728 BLAKE2B a242d6100d425cbc37917fbe97ab0e426d1329c804dc9cc197f5ad48ddcc3da19736209531db91ab3b0985a9c5abfbe8d2c8fd4afa50fcd6a330b014dd6b92a2 SHA512 33adf918d506393168704e2730863bed3a7d4874fcef875fc9d9d9d6e7262677f75165bccd06e7f73c8b86ed1867317492b5bda772e4b327293653960f68c8ff +DIST radare2-6.0.4.tar.gz 11670531 BLAKE2B e9146d8b0a5bf1393626797708e3c6082820d91241c74eaa57df2c5fc98c9842598046e334daec8fa2318feea7030d51dcf72187d19113e09e90fd1fa988800c SHA512 6fc6bb442869371da9b684c6a39992e538e2e023ef474a0ae306dae708ecf81d874597be355069a352816f4f529986c91408bec45ca9d14ad75c21b69e48aaeb DIST radare2-testbins-87ab82cc96e83e02f044c0c4111ade2a65576c60.tar.gz 159862866 BLAKE2B 69f9a91b14426ed798360418451c793ad7ac53630d4e2eca6652e5ee5e9a7deef0bc3be3e762ace2c666c3ef518d9b2e81e9f2d96ba22e55210f7ca15f897e8d SHA512 f96cb6c9fe3bc6e99b9dfdd2b33205fcc1056de00cdf76050b3653d126350d94e2434d5050d1dc056fc1306e44e11de73a96f12260ed619af673d0d4a89e5fb0 +DIST radare2-testbins-b6133ea9c40ec0bcadd08a37f4eed1af5c2b6d86.tar.gz 167771655 BLAKE2B ea1672788a064bf8f925421dacad3a756417b5f4a42eed34882eecc0d83a638327bd5e3721588e544ccf6c5c459b7ddbe6c51ed8b498ac54d7583991bcd22d2f SHA512 375a57adf35f575b6839b741ad381fcf3c694e9292d223f95f8d229f96ed55f69dee7c493b5f3b87ee41ecaa23ffa836ea8857f77d417f6a5e07767f57845ea2 diff --git a/dev-util/radare2/radare2-6.0.4.ebuild b/dev-util/radare2/radare2-6.0.4.ebuild new file mode 100644 index 000000000000..f60b0bf55e1d --- /dev/null +++ b/dev-util/radare2/radare2-6.0.4.ebuild @@ -0,0 +1,123 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs shell-completion + +DESCRIPTION="unix-like reverse engineering framework and commandline tools" +HOMEPAGE="https://www.radare.org" + +BINS_COMMIT=b6133ea9c40ec0bcadd08a37f4eed1af5c2b6d86 +CAPSTONE_COMMIT=cd6dd7b75d126a855be1f9f76570ee5a850c6061 +QJS_COMMIT=7238ee64dbc2fbdea044555cda8cda78785a93ed +SDB_COMMIT=9b71562fb7a700d4e9f7291e7a82240da9102a6c + +if [[ ${PV} == *9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/radareorg/radare2" +else + SRC_URI="mirror+https://github.com/radareorg/radare2/archive/${PV}.tar.gz -> ${P}.tar.gz + mirror+https://github.com/capstone-engine/capstone/archive/${CAPSTONE_COMMIT}.tar.gz -> ${P}-capstone.tar.gz + mirror+https://github.com/quickjs-ng/quickjs/archive/${QJS_COMMIT}.tar.gz -> ${P}-qjs.tar.gz + mirror+https://github.com/radareorg/sdb/archive/${SDB_COMMIT}.tar.gz -> ${P}-sdb.tar.gz + test? ( https://github.com/radareorg/radare2-testbins/archive/${BINS_COMMIT}.tar.gz -> radare2-testbins-${BINS_COMMIT}.tar.gz ) + " + + KEYWORDS="~amd64 ~arm ~arm64 ~x86" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="ssl test" + +# Need to audit licenses of the binaries used for testing +RESTRICT="fetch !test? ( test )" + +RDEPEND=" + app-arch/lz4 + >=dev-libs/capstone-5.0_rc4:= + dev-libs/libzip:= + dev-libs/xxhash + sys-apps/file + virtual/zlib:= + ssl? ( dev-libs/openssl:0= ) +" +DEPEND=" + ${RDEPEND} + dev-util/gperf +" +BDEPEND="virtual/pkgconfig" + +PATCHES=( + "${FILESDIR}/${PN}-5.8.4-test.patch" +) + +src_prepare() { + default + + mv "${WORKDIR}/capstone-${CAPSTONE_COMMIT}" subprojects/capstone-v5 || die + mv "${WORKDIR}/quickjs-${QJS_COMMIT}" subprojects/qjs || die + mv "${WORKDIR}/sdb-${SDB_COMMIT}" subprojects/sdb || die + + if use test; then + cp -r "${WORKDIR}/radare2-testbins-${BINS_COMMIT}" "${S}/test/bins" || die + cp -r "${WORKDIR}/radare2-testbins-${BINS_COMMIT}" "${S}" || die + fi + + # Fix hardcoded docdir for fortunes + sed -i -e "/^#define R2_FORTUNES/s/radare2/$PF/" \ + libr/include/r_userconf.h.acr || die +} + +src_configure() { + # Ideally these should be set by ./configure + tc-export CC AR LD OBJCOPY RANLIB + export HOST_CC=${CC} + + econf \ + --with-syscapstone \ + --with-syslz4 \ + --with-sysmagic \ + --with-sysxxhash \ + --with-syszip \ + $(use_with ssl) +} + +src_test() { + ln -fs "${S}/binr/radare2/radare2" "${S}/binr/radare2/r2" || die + LDFLAGS="" + for i in "${S}"/libr/*; do + if [[ -d ${i} ]]; then + LDFLAGS+="-Wl,-rpath=${i} -L${i} " + LD_LIBRARY_PATH+=":${i}" + fi + done + export LDFLAGS LD_LIBRARY_PATH + export PKG_CONFIG_PATH="${S}/pkgcfg" + PATH="${S}/binr/radare2:${PATH}" emake -C test -k unit-tests || die +} + +src_install() { + default + + dozshcomp doc/zsh/_* + + newbashcomp doc/bash_autocompletion.sh "${PN}" + bashcomp_alias "${PN}" rafind2 r2 rabin2 rasm2 radiff2 + + # a workaround for unstable $(INSTALL) call, bug #574866 + local d + for d in doc/*; do + if [[ -d ${d} ]]; then + rm -rfv "${d}" || die "failed to delete '${d}'" + fi + done + + # These are not really docs. radare assumes + # uncompressed files: bug #761250 + docompress -x /usr/share/doc/${PF}/fortunes.{creepy,fun,nsfw,tips} + + # Create plugins directory although it's currently unsupported by radare2 + keepdir "/usr/$(get_libdir)/radare2/${PV}" || die +}
