summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-util/poke/Manifest1
-rw-r--r--dev-util/poke/poke-3.90.2.ebuild126
2 files changed, 127 insertions, 0 deletions
diff --git a/dev-util/poke/Manifest b/dev-util/poke/Manifest
index f7044d41c5d8..8d88c4104d5c 100644
--- a/dev-util/poke/Manifest
+++ b/dev-util/poke/Manifest
@@ -6,3 +6,4 @@ DIST poke-3.2.tar.gz 7559660 BLAKE2B c1d5739a1a497fb3daadec53fe812b65ec787dd2680
DIST poke-3.3.tar.gz 7553544 BLAKE2B 1e98f77937f9c45daa80591be603a74857b1bbd230cb931e59d7e9753c1687d5a4c96837bb6aca76615feca71cbeabd3be7ad234260657288d060ff63d59c040 SHA512 b00dca38d27bddee6ea131d45988aaead1d11d29b757c048f3b2be8013575cedc591844d4d99870f90964fd4f517d500cbb42aae5aff57e9fe07aac8273aa236
DIST poke-3.90.0.tar.gz 7971780 BLAKE2B ef4a5e0a25f1851e4f44314cc9e3b62c6eeb7458d5c4b3da1d7ea798c7b58b57c4ba113e3dac221e757b0d52d8b609c9cd1910a82f36d9aafe0393a1a1fa6a02 SHA512 34b2baee4317582d4ca68001b9f1bd540277c6ef133ebec49de6d45db0d564815da376b4f9761369e80976570c4bbd05272b215e78391b0a818390e613e21b1a
DIST poke-3.90.1.tar.gz 7953029 BLAKE2B f098fe68316d172e700a896fdc588c6ae5d352eca21b5230940902e51adca8b57d19093d406b6fd66391e79025d79604cf3db63ef3f7783b65cd39788a727c76 SHA512 0d4d4b63ed5448427a72ecee182065bc6fb86eb460f9a05daef2d40d5678a5352a568d0f403cce17e6711c7a82875c91d0e00890162ac85636edbf6e277d1f3e
+DIST poke-3.90.2.tar.gz 7972908 BLAKE2B ca1b616300d6c14b4aa95ad19df4e5e78c993a3e5172112fbd25d50b406a4832f6392d597eb7e970ea5cfafd0936ca395cd42dd38d9d65070411e11bae0d07aa SHA512 d754921dce62730da6e75b8184352aeb8df6aaaafe3698ccf0063758f3d9ed3faa48de4e0ba8720060141a6581fb1595ac755f394bd8e951f6e608fd268b7572
diff --git a/dev-util/poke/poke-3.90.2.ebuild b/dev-util/poke/poke-3.90.2.ebuild
new file mode 100644
index 000000000000..1aadadd1833d
--- /dev/null
+++ b/dev-util/poke/poke-3.90.2.ebuild
@@ -0,0 +1,126 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit elisp-common flag-o-matic toolchain-funcs
+
+DESCRIPTION="Extensible editor for structured binary data"
+HOMEPAGE="https://www.jemarch.net/poke"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://git.savannah.gnu.org/git/poke.git"
+ REGEN_BDEPEND="
+ >=dev-build/autoconf-2.62
+ >=dev-build/automake-1.16
+ sys-apps/gawk
+ sys-apps/help2man
+ sys-apps/texinfo
+ app-alternatives/yacc
+ app-alternatives/lex
+ "
+elif [[ $(ver_cut 2) -ge 90 || $(ver_cut 3) -ge 90 ]]; then
+ SRC_URI="https://alpha.gnu.org/gnu/poke/${P}.tar.gz"
+ REGEN_BDEPEND=""
+else
+ SRC_URI="mirror://gnu/poke/${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+ REGEN_BDEPEND=""
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+IUSE="emacs pvm-profiling nbd nls test"
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-libs/boehm-gc:=
+ dev-libs/libatomic_ops
+ sys-devel/gettext
+ sys-libs/readline:=
+ emacs? ( >=app-editors/emacs-23.1:* )
+ nbd? ( sys-libs/libnbd )
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( nbd? ( sys-libs/libnbd[uri-support(+)] ) )
+"
+BDEPEND="
+ ${REGEN_BDEPEND}
+ virtual/pkgconfig
+ pvm-profiling? ( sys-devel/gcc )
+ emacs? ( >=app-editors/emacs-23.1:* )
+ test? (
+ dev-util/dejagnu
+ nbd? ( sys-block/nbdkit )
+ )
+"
+
+SITEFILE="50${PN}-gentoo.el"
+
+pkg_pretend() {
+ if use pvm-profiling && ! tc-is-gcc; then
+ die "USE=pvm-profiling requires GCC"
+ fi
+}
+
+pkg_setup() {
+ use emacs && elisp-check-emacs-version
+}
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == 9999 ]]; then
+ ./bootstrap || die
+ fi
+}
+
+src_configure() {
+ # See bug 858461.
+ # Upstream support might happen one day. For context, only one file needs
+ # LTO to be disabled (since it's an autogenerated bytecode interpreter),
+ # others do not. The build system will handle this at some point in the
+ # future. Until then, just filter out LTO.
+ filter-lto
+
+ local myconf=(
+ --with-lispdir="${EPREFIX}/${SITELISP}/${PN}"
+ --enable-hserver
+ $(use_enable nbd libnbd)
+ $(use_enable pvm-profiling)
+ $(use_enable nls)
+ )
+
+ econf "${myconf[@]}"
+}
+
+src_compile() {
+ default
+
+ if use emacs; then
+ cd etc || die
+ elisp-compile *.el
+ fi
+}
+
+src_install() {
+ default
+
+ if use emacs; then
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ cd etc || die
+ elisp-install "${PN}" *.el *.elc
+ fi
+ find "${ED}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}