From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-1362065-garchives=archives.gentoo.org@lists.gentoo.org>
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 5ADF3158087
	for <garchives@archives.gentoo.org>; Fri, 28 Jan 2022 05:18:49 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id 41B432BC052;
	Fri, 28 Jan 2022 05:18:46 +0000 (UTC)
Received: from smtp.gentoo.org (mail.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4])
	(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 BB9F62BC053
	for <gentoo-commits@lists.gentoo.org>; Fri, 28 Jan 2022 05:18:45 +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 C1B263432C5
	for <gentoo-commits@lists.gentoo.org>; Fri, 28 Jan 2022 05:18:44 +0000 (UTC)
Received: from localhost.localdomain (localhost [IPv6:::1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id D58A82B8
	for <gentoo-commits@lists.gentoo.org>; Fri, 28 Jan 2022 05:18:41 +0000 (UTC)
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Content-Transfer-Encoding: 8bit
Content-type: text/plain; charset=UTF-8
Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" <sam@gentoo.org>
Message-ID: <1643347005.df05617a11ac841203578c48b6c0b4a24aed35d7.sam@gentoo>
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/gef/
X-VCS-Repository: repo/gentoo
X-VCS-Files: dev-util/gef/Manifest dev-util/gef/gef-2021.10.ebuild dev-util/gef/gef-9999.ebuild dev-util/gef/metadata.xml
X-VCS-Directories: dev-util/gef/
X-VCS-Committer: sam
X-VCS-Committer-Name: Sam James
X-VCS-Revision: df05617a11ac841203578c48b6c0b4a24aed35d7
X-VCS-Branch: master
Date: Fri, 28 Jan 2022 05:18:41 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply
X-Archives-Salt: c615d4e9-2a96-49d3-b3e9-7b243b776adf
X-Archives-Hash: fde2899cc9c7645b567face14485a30d

commit:     df05617a11ac841203578c48b6c0b4a24aed35d7
Author:     Mario Haustein <mario.haustein <AT> hrz <DOT> tu-chemnitz <DOT> de>
AuthorDate: Sat Jan 15 13:16:20 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 28 05:16:45 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=df05617a

dev-util/gef: new ebuild

Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Mario Haustein <mario.haustein <AT> hrz.tu-chemnitz.de>
Closes: https://github.com/gentoo/gentoo/pull/23806
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-util/gef/Manifest           |  1 +
 dev-util/gef/gef-2021.10.ebuild | 70 +++++++++++++++++++++++++++++++++++++++++
 dev-util/gef/gef-9999.ebuild    | 70 +++++++++++++++++++++++++++++++++++++++++
 dev-util/gef/metadata.xml       | 24 ++++++++++++++
 4 files changed, 165 insertions(+)

diff --git a/dev-util/gef/Manifest b/dev-util/gef/Manifest
new file mode 100644
index 000000000000..c6064ff0d468
--- /dev/null
+++ b/dev-util/gef/Manifest
@@ -0,0 +1 @@
+DIST gef-2021.10.tar.gz 170829 BLAKE2B 4d21fb68b2d9239dea912bb41790c7ffe83d9a7bb17cc6b3df67078b0147ff06676ff257c46567fb9a4fa76d5e12140f567f153337e83dbdd10cf0576cd08499 SHA512 30ccc728322651c3fc88f629165a96f593f079ddaa21d194e483804cdf4bcb235ed28cfaaa6fdd85c134b2314f32bd87e3dcf5decc45720f8e7b89ca9af2c379

diff --git a/dev-util/gef/gef-2021.10.ebuild b/dev-util/gef/gef-2021.10.ebuild
new file mode 100644
index 000000000000..e69d14c8d8a6
--- /dev/null
+++ b/dev-util/gef/gef-2021.10.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{9..10} )
+
+inherit python-single-r1 wrapper
+
+DESCRIPTION="A GDB Enhanced Features for exploit devs & reversers"
+HOMEPAGE="https://github.com/hugsy/gef"
+
+if [[ "${PV}" == *9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="https://github.com/hugsy/gef"
+else
+	SRC_URI="https://github.com/hugsy/gef/archive/${PV}.tar.gz -> ${P}.tar.gz"
+	KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="doc"
+RESTRICT="test"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+	${PYTHON_DEPS}
+	dev-util/ropper[${PYTHON_SINGLE_USEDEP}]
+	sys-devel/gdb[python,${PYTHON_SINGLE_USEDEP}]
+	$(python_gen_cond_dep '
+		dev-libs/capstone[python,${PYTHON_USEDEP}]
+		dev-libs/keystone[python,${PYTHON_USEDEP}]
+		dev-python/pylint[${PYTHON_USEDEP}]
+		dev-util/unicorn[python,${PYTHON_USEDEP}]
+	')"
+
+BDEPEND="doc? ( dev-python/mkdocs )"
+
+pkg_setup() {
+	python-single-r1_pkg_setup
+}
+
+src_compile() {
+	:
+}
+
+src_install() {
+	insinto "/usr/share/${PN}"
+	doins -r *.py
+
+	python_optimize "${D}/usr/share/${PN}"
+
+	make_wrapper "gdb-gef" \
+	"gdb -ex \"source /usr/share/${PN}/gef.py\"" || die
+
+	if use doc; then
+		mkdocs build -d html || die
+		rm "${WORKDIR}/${P}/html/sitemap.xml.gz" || die
+		dodoc -r html/
+	fi
+
+	dodoc README.md
+}
+
+pkg_postinst() {
+	einfo "\nUsage:"
+	einfo "    ~$ gdb-gef <program>\n"
+}

diff --git a/dev-util/gef/gef-9999.ebuild b/dev-util/gef/gef-9999.ebuild
new file mode 100644
index 000000000000..e69d14c8d8a6
--- /dev/null
+++ b/dev-util/gef/gef-9999.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{9..10} )
+
+inherit python-single-r1 wrapper
+
+DESCRIPTION="A GDB Enhanced Features for exploit devs & reversers"
+HOMEPAGE="https://github.com/hugsy/gef"
+
+if [[ "${PV}" == *9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="https://github.com/hugsy/gef"
+else
+	SRC_URI="https://github.com/hugsy/gef/archive/${PV}.tar.gz -> ${P}.tar.gz"
+	KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="doc"
+RESTRICT="test"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+	${PYTHON_DEPS}
+	dev-util/ropper[${PYTHON_SINGLE_USEDEP}]
+	sys-devel/gdb[python,${PYTHON_SINGLE_USEDEP}]
+	$(python_gen_cond_dep '
+		dev-libs/capstone[python,${PYTHON_USEDEP}]
+		dev-libs/keystone[python,${PYTHON_USEDEP}]
+		dev-python/pylint[${PYTHON_USEDEP}]
+		dev-util/unicorn[python,${PYTHON_USEDEP}]
+	')"
+
+BDEPEND="doc? ( dev-python/mkdocs )"
+
+pkg_setup() {
+	python-single-r1_pkg_setup
+}
+
+src_compile() {
+	:
+}
+
+src_install() {
+	insinto "/usr/share/${PN}"
+	doins -r *.py
+
+	python_optimize "${D}/usr/share/${PN}"
+
+	make_wrapper "gdb-gef" \
+	"gdb -ex \"source /usr/share/${PN}/gef.py\"" || die
+
+	if use doc; then
+		mkdocs build -d html || die
+		rm "${WORKDIR}/${P}/html/sitemap.xml.gz" || die
+		dodoc -r html/
+	fi
+
+	dodoc README.md
+}
+
+pkg_postinst() {
+	einfo "\nUsage:"
+	einfo "    ~$ gdb-gef <program>\n"
+}

diff --git a/dev-util/gef/metadata.xml b/dev-util/gef/metadata.xml
new file mode 100644
index 000000000000..5d86fc913db6
--- /dev/null
+++ b/dev-util/gef/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+	<maintainer type="person">
+		<email>mario.haustein@hrz.tu-chemnitz.de</email>
+		<name>Mario Haustein</name>
+	</maintainer>
+	<maintainer type="person">
+		<email>sam@gentoo.org</email>
+		<name>Sam James</name>
+	</maintainer>
+	<longdescription>
+		GEF is a set of commands for x86/64, ARM, MIPS, PowerPC and SPARC to
+		assist exploit developers and reverse-engineers when using old school
+		GDB. It provides additional features to GDB using the Python API to
+		assist during the process of dynamic analysis and exploit development.
+		Application developers will also benefit from it, as GEF lifts a great
+		part of regular GDB obscurity, avoiding repeating traditional commands,
+		or bringing out the relevant information from the debugging runtime.
+	</longdescription>
+	<upstream>
+		<remote-id type="github">hugsy/gef</remote-id>
+	</upstream>
+</pkgmetadata>