commit: dd4931d4570b580fac2a59eafd19a06980abf970 Author: David Roman <droman <AT> ifae <DOT> es> AuthorDate: Mon Oct 14 08:55:05 2024 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Sun Dec 1 12:43:01 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dd4931d4
dev-util/radare2: add 5.9.6 Signed-off-by: David Roman <droman <AT> ifae.es> Closes: https://github.com/gentoo/gentoo/pull/38984 Signed-off-by: Sam James <sam <AT> gentoo.org> dev-util/radare2/Manifest | 4 ++ dev-util/radare2/radare2-5.9.6.ebuild | 123 ++++++++++++++++++++++++++++++++++ 2 files changed, 127 insertions(+) diff --git a/dev-util/radare2/Manifest b/dev-util/radare2/Manifest index 39d30aca630b..2fd15e1739f1 100644 --- a/dev-util/radare2/Manifest +++ b/dev-util/radare2/Manifest @@ -1,4 +1,8 @@ DIST radare2-5.9.4-vector35-arm64.tar.gz 1050988 BLAKE2B 889c5a98b6efb45026349ca25b73d39e8a8049fce052d49b5e37d974bff038de85f99f1d7651db6c621b036be2948e29a62e6b8261cab6a9bdfd72442858d7e9 SHA512 433a9e972ee13269a495e94aba335b97892eb2614de1460e055e30d60976989f986ef253b352ba918786d4056e3a4d948a66ea90d25aa5ddf52a276152279c92 DIST radare2-5.9.4-vector35-armv7.tar.gz 255278 BLAKE2B 8b5191c48fad2e7602dc2f7053f9c9ea8cca8e9bc5d68a0cdb7ccff9ecc65c5d1ff6a434e28488dbd6fb71fc7482fce08a0a69c358e5c3d6c017ac1e4cee3b21 SHA512 40c048b29856f48300d4539bc7bda38e6ceae1e8d4d9d131c4a7546b6e26b2fb96309c483b67e2c2290b06cea5fc52a7beb30557d54e89296e7734cc1ab06d10 DIST radare2-5.9.4.tar.gz 11561430 BLAKE2B 14903c087fbb140a8b4b6056adcb236b76ebcad0c7821150599c0732b0bb832b26a4fee5edda914ecd1be4dcdbe28087fadb48e623c593cf949cbc421acc5080 SHA512 51d42b6d98027d3f3d85570e79ea18a8f220c145e3451fd10d82eea1a0542648f83447bb6cb6f5bbf76241677a2412bf064ffbade75e69b486c6148543aa4b0f +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-testbins-87ab82cc96e83e02f044c0c4111ade2a65576c60.tar.gz 159862866 BLAKE2B 69f9a91b14426ed798360418451c793ad7ac53630d4e2eca6652e5ee5e9a7deef0bc3be3e762ace2c666c3ef518d9b2e81e9f2d96ba22e55210f7ca15f897e8d SHA512 f96cb6c9fe3bc6e99b9dfdd2b33205fcc1056de00cdf76050b3653d126350d94e2434d5050d1dc056fc1306e44e11de73a96f12260ed619af673d0d4a89e5fb0 DIST radare2-testbins-bca0e277a234cc71b43d919f88bda03cd4a518fd.tar.gz 159785408 BLAKE2B 325b13af8f965f9fa35995c409955a681b0cc0d6fc8d6d7547d7e70547b3d3ba7647c8c3ff6ede8878e1c3a7d394f3be444ce2f418ee6beb60c5047b5f310e63 SHA512 06fb363ec2959f605035aa0041f48985a98839a39616ac13838994e28b69a0c34240bc4365755f65743c7b72b59b73d11dba7be83848adc4fee0e8d13689d199 diff --git a/dev-util/radare2/radare2-5.9.6.ebuild b/dev-util/radare2/radare2-5.9.6.ebuild new file mode 100644 index 000000000000..15fc54f399fa --- /dev/null +++ b/dev-util/radare2/radare2-5.9.6.ebuild @@ -0,0 +1,123 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit bash-completion-r1 toolchain-funcs + +DESCRIPTION="unix-like reverse engineering framework and commandline tools" +HOMEPAGE="https://www.radare.org" + +ARM64_COMMIT=55d73c6bbb94448a5c615933179e73ac618cf876 +ARMV7_COMMIT=f270a6cc99644cb8e76055b6fa632b25abd26024 +BINS_COMMIT=87ab82cc96e83e02f044c0c4111ade2a65576c60 + +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/radareorg/vector35-arch-arm64/archive/${ARM64_COMMIT}.tar.gz -> ${P}-vector35-arm64.tar.gz + mirror+https://github.com/radareorg/vector35-arch-armv7/archive/${ARMV7_COMMIT}.tar.gz -> ${P}-vector35-armv7.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 + sys-libs/zlib + ssl? ( dev-libs/openssl:0= ) +" +DEPEND=" + ${RDEPEND} + dev-util/gperf +" +BDEPEND="virtual/pkgconfig" + +PATCHES=( + "${FILESDIR}/${PN}-5.8.2-vector35.patch" + "${FILESDIR}/${PN}-5.8.4-test.patch" +) + +src_prepare() { + default + + # Hack for vector35 arm plugins + mv "${WORKDIR}/vector35-arch-arm64-${ARM64_COMMIT}" libr/arch/p/arm/v35/arch-arm64 || die + mv "${WORKDIR}/vector35-arch-armv7-${ARMV7_COMMIT}" libr/arch/p/arm/v35/arch-armv7 || 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 + + insinto /usr/share/zsh/site-functions + doins 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 +}
