From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id F02D0158009 for ; Sun, 18 Jun 2023 19:02:15 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 3C3CEE08E5; Sun, 18 Jun 2023 19:02:15 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 1E846E08E5 for ; Sun, 18 Jun 2023 19:02:15 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 2C74C341005 for ; Sun, 18 Jun 2023 19:02:14 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id BC832A91 for ; Sun, 18 Jun 2023 19:02:12 +0000 (UTC) From: "John Helmert III" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "John Helmert III" Message-ID: <1687114920.34ac96b281fbbf9c2d22133a3b32136e3884b24e.ajak@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/radare2/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-util/radare2/radare2-5.8.8-r1.ebuild X-VCS-Directories: dev-util/radare2/ X-VCS-Committer: ajak X-VCS-Committer-Name: John Helmert III X-VCS-Revision: 34ac96b281fbbf9c2d22133a3b32136e3884b24e X-VCS-Branch: master Date: Sun, 18 Jun 2023 19:02:12 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: c268966e-0840-48af-9e0a-d8ffbd1989f6 X-Archives-Hash: 19d5e8eca90f0c6061ce4c111548960b commit: 34ac96b281fbbf9c2d22133a3b32136e3884b24e Author: John Helmert III gentoo org> AuthorDate: Sun Jun 18 18:58:37 2023 +0000 Commit: John Helmert III gentoo org> CommitDate: Sun Jun 18 19:02:00 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=34ac96b2 dev-util/radare2: use system capstone Bug: https://bugs.gentoo.org/891805 Signed-off-by: John Helmert III gentoo.org> dev-util/radare2/radare2-5.8.8-r1.ebuild | 121 +++++++++++++++++++++++++++++++ 1 file changed, 121 insertions(+) diff --git a/dev-util/radare2/radare2-5.8.8-r1.ebuild b/dev-util/radare2/radare2-5.8.8-r1.ebuild new file mode 100644 index 000000000000..bf6f1ab75983 --- /dev/null +++ b/dev-util/radare2/radare2-5.8.8-r1.ebuild @@ -0,0 +1,121 @@ +# Copyright 1999-2023 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=b598433124fd1fad032e92ca2588b5c0e58674c4 + +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=" + >=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" +) + +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 \ + --without-libuv \ + --with-syscapstone \ + --with-sysmagic \ + --with-sysxxhash \ + --with-syszip \ + $(use_with ssl openssl) +} + +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 +}