diff options
author | Marek Szuba <marecki@gentoo.org> | 2020-12-27 00:00:44 +0000 |
---|---|---|
committer | Marek Szuba <marecki@gentoo.org> | 2020-12-27 00:05:32 +0000 |
commit | 4b3b89a166b295db16dcbee179bae41eefd8c324 (patch) | |
tree | 2313f5e10614550b9180b628bbea03e7a1d6371e /net-analyzer/nmap | |
parent | dev-qt/qtdeclarative: python3_9 (diff) | |
download | gentoo-4b3b89a166b295db16dcbee179bae41eefd8c324.tar.gz gentoo-4b3b89a166b295db16dcbee179bae41eefd8c324.tar.bz2 gentoo-4b3b89a166b295db16dcbee179bae41eefd8c324.zip |
net-analyzer/nmap: migrate to lua-single.eclass
The live ebuild, the latest release currently in the tree and the latest
release available under the GPL. In all three cases, upstream build
scripts require version 5.3 of Lua and while they do not use pkgconfig,
they check for versioned files/directories first.
IUSE=system-lua is still there but defaults to enabled now.
Bug: https://bugs.gentoo.org/253269
Closes: https://bugs.gentoo.org/752774
Signed-off-by: Marek Szuba <marecki@gentoo.org>
Diffstat (limited to 'net-analyzer/nmap')
-rw-r--r-- | net-analyzer/nmap/nmap-7.80-r2.ebuild | 137 | ||||
-rw-r--r-- | net-analyzer/nmap/nmap-7.91-r1.ebuild | 116 | ||||
-rw-r--r-- | net-analyzer/nmap/nmap-9999.ebuild | 18 |
3 files changed, 266 insertions, 5 deletions
diff --git a/net-analyzer/nmap/nmap-7.80-r2.ebuild b/net-analyzer/nmap/nmap-7.80-r2.ebuild new file mode 100644 index 000000000000..7b40515497d4 --- /dev/null +++ b/net-analyzer/nmap/nmap-7.80-r2.ebuild @@ -0,0 +1,137 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +LUA_COMPAT=( lua5-3 ) +LUA_REQ_USE="deprecated" + +inherit autotools desktop flag-o-matic lua-single toolchain-funcs + +DESCRIPTION="Network exploration tool and security / port scanner" +HOMEPAGE="https://nmap.org/" +SRC_URI="https://nmap.org/dist/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" +IUSE="ipv6 libressl libssh2 ncat nmap-update nping +nse ssl +system-lua" +REQUIRED_USE="system-lua? ( nse ${LUA_REQUIRED_USE} )" + +RDEPEND=" + dev-libs/liblinear:= + dev-libs/libpcre + net-libs/libpcap + libssh2? ( + net-libs/libssh2[zlib] + sys-libs/zlib + ) + nmap-update? ( + dev-libs/apr + dev-vcs/subversion + ) + nse? ( sys-libs/zlib ) + ssl? ( + !libressl? ( dev-libs/openssl:0= ) + libressl? ( dev-libs/libressl:= ) + ) + system-lua? ( ${LUA_DEPS} ) +" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-5.10_beta1-string.patch + "${FILESDIR}"/${PN}-5.21-python.patch + "${FILESDIR}"/${PN}-6.46-uninstaller.patch + "${FILESDIR}"/${PN}-6.25-liblua-ar.patch + "${FILESDIR}"/${PN}-7.25-no-FORTIFY_SOURCE.patch + "${FILESDIR}"/${PN}-7.25-CXXFLAGS.patch + "${FILESDIR}"/${PN}-7.25-libpcre.patch + "${FILESDIR}"/${PN}-7.31-libnl.patch + "${FILESDIR}"/${PN}-7.80-ac-config-subdirs.patch +) + +pkg_setup() { + use system-lua && lua-single_pkg_setup +} + +src_prepare() { + rm -r liblinear/ libpcap/ libpcre/ libssh2/ libz/ || die + + cat "${FILESDIR}"/nls.m4 >> "${S}"/acinclude.m4 || die + + default + + sed -i \ + -e '/^ALL_LINGUAS =/{s|$| id|g;s|jp|ja|g}' \ + Makefile.in || die + # Fix desktop files wrt bug #432714 + sed -i \ + -e 's|^Categories=.*|Categories=Network;System;Security;|g' \ + zenmap/install_scripts/unix/zenmap-root.desktop \ + zenmap/install_scripts/unix/zenmap.desktop || die + + cp libdnet-stripped/include/config.h.in{,.nmap-orig} || die + + eautoreconf + + if [[ ${CHOST} == *-darwin* ]] ; then + # we need the original for a Darwin-specific fix, bug #604432 + mv libdnet-stripped/include/config.h.in{.nmap-orig,} || die + fi +} + +src_configure() { + # The bundled libdnet is incompatible with the version available in the + # tree, so we cannot use the system library here. + econf \ + $(use_enable ipv6) \ + $(use_with libssh2) \ + $(use_with ncat) \ + --without-ndiff \ + $(use_with nmap-update) \ + $(use_with nping) \ + $(use_with ssl openssl) \ + --without-zenmap \ + $(usex libssh2 --with-zlib) \ + $(usex nse --with-zlib) \ + $(usex nse --with-liblua=$(usex system-lua yes included '' '') --without-liblua) \ + --cache-file="${S}"/config.cache \ + --with-libdnet=included \ + --with-pcre=/usr + # Commented out because configure does weird things + # --with-liblinear=/usr \ +} + +src_compile() { + local directory + for directory in . libnetutil nsock/src \ + $(usex ncat ncat '') \ + $(usex nmap-update nmap-update '') \ + $(usex nping nping '') + do + emake -C "${directory}" makefile.dep + done + + emake \ + AR=$(tc-getAR) \ + RANLIB=$(tc-getRANLIB) +} + +src_install() { + LC_ALL=C emake -j1 \ + DESTDIR="${D}" \ + STRIP=: \ + nmapdatadir="${EPREFIX}"/usr/share/nmap \ + install + if use nmap-update;then + LC_ALL=C emake -j1 \ + -C nmap-update \ + DESTDIR="${D}" \ + STRIP=: \ + nmapdatadir="${EPREFIX}"/usr/share/nmap \ + install + fi + + dodoc CHANGELOG HACKING docs/README docs/*.txt +} diff --git a/net-analyzer/nmap/nmap-7.91-r1.ebuild b/net-analyzer/nmap/nmap-7.91-r1.ebuild new file mode 100644 index 000000000000..3b611d01445e --- /dev/null +++ b/net-analyzer/nmap/nmap-7.91-r1.ebuild @@ -0,0 +1,116 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +LUA_COMPAT=( lua5-3 ) +LUA_REQ_USE="deprecated" + +inherit autotools flag-o-matic lua-single toolchain-funcs + +DESCRIPTION="Network exploration tool and security / port scanner" +HOMEPAGE="https://nmap.org/" +SRC_URI="https://nmap.org/dist/${P}.tar.bz2" + +LICENSE="NPSL" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" +IUSE="ipv6 libressl libssh2 ncat nping +nse ssl +system-lua" +REQUIRED_USE="system-lua? ( nse ${LUA_REQUIRED_USE} )" + +RDEPEND=" + dev-libs/liblinear:= + dev-libs/libpcre + net-libs/libpcap + libssh2? ( + net-libs/libssh2[zlib] + sys-libs/zlib + ) + nse? ( sys-libs/zlib ) + ssl? ( + !libressl? ( dev-libs/openssl:0= ) + libressl? ( dev-libs/libressl:= ) + ) + system-lua? ( ${LUA_DEPS} ) +" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-5.10_beta1-string.patch + "${FILESDIR}"/${PN}-5.21-python.patch + "${FILESDIR}"/${PN}-6.46-uninstaller.patch + "${FILESDIR}"/${PN}-6.25-liblua-ar.patch + "${FILESDIR}"/${PN}-7.25-CXXFLAGS.patch + "${FILESDIR}"/${PN}-7.25-libpcre.patch + "${FILESDIR}"/${PN}-7.31-libnl.patch + "${FILESDIR}"/${PN}-7.80-ac-config-subdirs.patch + "${FILESDIR}"/${PN}-7.91-no-FORTIFY_SOURCE.patch +) + +pkg_setup() { + use system-lua && lua-single_pkg_setup +} + +src_prepare() { + rm -r liblinear/ libpcap/ libpcre/ libssh2/ libz/ || die + + cat "${FILESDIR}"/nls.m4 >> "${S}"/acinclude.m4 || die + + default + + sed -i \ + -e '/^ALL_LINGUAS =/{s|$| id|g;s|jp|ja|g}' \ + Makefile.in || die + + cp libdnet-stripped/include/config.h.in{,.nmap-orig} || die + + eautoreconf + + if [[ ${CHOST} == *-darwin* ]] ; then + # we need the original for a Darwin-specific fix, bug #604432 + mv libdnet-stripped/include/config.h.in{.nmap-orig,} || die + fi +} + +src_configure() { + # The bundled libdnet is incompatible with the version available in the + # tree, so we cannot use the system library here. + econf \ + $(use_enable ipv6) \ + $(use_with libssh2) \ + $(use_with ncat) \ + $(use_with nping) \ + $(use_with ssl openssl) \ + $(usex libssh2 --with-zlib) \ + $(usex nse --with-liblua=$(usex system-lua yes included '' '') --without-liblua) \ + $(usex nse --with-zlib) \ + --cache-file="${S}"/config.cache \ + --with-libdnet=included \ + --with-pcre=/usr \ + --without-ndiff \ + --without-zenmap +} + +src_compile() { + local directory + for directory in . libnetutil nsock/src \ + $(usex ncat ncat '') \ + $(usex nping nping '') + do + emake -C "${directory}" makefile.dep + done + + emake \ + AR=$(tc-getAR) \ + RANLIB=$(tc-getRANLIB) +} + +src_install() { + LC_ALL=C emake -j1 \ + DESTDIR="${D}" \ + STRIP=: \ + nmapdatadir="${EPREFIX}"/usr/share/nmap \ + install + + dodoc CHANGELOG HACKING docs/README docs/*.txt +} diff --git a/net-analyzer/nmap/nmap-9999.ebuild b/net-analyzer/nmap/nmap-9999.ebuild index 00bb4385aaa9..782f91bf13e1 100644 --- a/net-analyzer/nmap/nmap-9999.ebuild +++ b/net-analyzer/nmap/nmap-9999.ebuild @@ -2,7 +2,11 @@ # Distributed under the terms of the GNU General Public License v2 EAPI=7 -inherit autotools flag-o-matic git-r3 toolchain-funcs + +LUA_COMPAT=( lua5-3 ) +LUA_REQ_USE="deprecated" + +inherit autotools flag-o-matic git-r3 lua-single toolchain-funcs DESCRIPTION="Network exploration tool and security / port scanner" HOMEPAGE="https://nmap.org/" @@ -11,8 +15,8 @@ EGIT_REPO_URI="https://github.com/nmap/nmap" LICENSE="NPSL" SLOT="0" -IUSE="ipv6 libressl libssh2 ncat nping +nse ssl system-lua" -REQUIRED_USE="system-lua? ( nse )" +IUSE="ipv6 libressl libssh2 ncat nping +nse ssl +system-lua" +REQUIRED_USE="system-lua? ( nse ${LUA_REQUIRED_USE} )" RDEPEND=" dev-libs/liblinear:= @@ -27,7 +31,7 @@ RDEPEND=" !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:= ) ) - system-lua? ( >=dev-lang/lua-5.2:*[deprecated] ) + system-lua? ( ${LUA_DEPS} ) " DEPEND="${RDEPEND}" @@ -44,6 +48,10 @@ PATCHES=( "${FILESDIR}"/${PN}-9999-netutil-else.patch ) +pkg_setup() { + use system-lua && lua-single_pkg_setup +} + src_prepare() { rm -r liblinear/ libpcap/ libpcre/ libssh2/ libz/ || die @@ -75,7 +83,7 @@ src_configure() { $(use_with nping) \ $(use_with ssl openssl) \ $(usex libssh2 --with-zlib) \ - $(usex nse --with-liblua=$(usex system-lua /usr included '' '') --without-liblua) \ + $(usex nse --with-liblua=$(usex system-lua yes included '' '') --without-liblua) \ $(usex nse --with-zlib) \ --cache-file="${S}"/config.cache \ --with-libdnet=included \ |