pentoo-overlay/sys-devel/gef/gef-9999.ebuild
2021-07-14 15:35:29 +08:00

77 lines
1.5 KiB
Bash

# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{8..9} )
inherit eutils python-single-r1
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"
#dev-libs/capstone is not stable yet
KEYWORDS="~amd64 ~x86"
fi
LICENSE="MIT"
SLOT="0"
IUSE="doc"
RDEPEND="
sys-devel/gdb[python,${PYTHON_SINGLE_USEDEP}]
$(python_gen_cond_dep '
app-exploits/ropper[${PYTHON_MULTI_USEDEP}]
dev-libs/capstone[python,${PYTHON_MULTI_USEDEP}]
dev-libs/keystone[python,${PYTHON_MULTI_USEDEP}]
dev-python/pylint[${PYTHON_MULTI_USEDEP}]
dev-util/unicorn[python,unicorn_targets_x86(+)]
')"
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}"
cat > "${D}/usr/share/${PN}/init-gef" <<-_EOF_ || die
echo For enabling put the 'init-gef' command!\n
define init-gef
source /usr/share/${PN}/gef.py
end
document init-gef
Initializes Gef
end
_EOF_
make_wrapper "gdb-gef" \
"gdb -x /usr/share/${PN}/init-gef"
if use doc; then
mkdocs build -d html || die
dodoc -r html/
fi
dodoc README.md
}
pkg_postinst() {
einfo "\nUsage:"
einfo " ~$ alias gdb-gef='gdb-gef -ex init-gef'"
einfo " ~$ gdb-gef <program>\n"
}