From 9da6c53f8a5685abca1c718063323d005670ac2e Mon Sep 17 00:00:00 2001 From: Jeroen Roovers Date: Sat, 25 Mar 2017 11:06:14 +0100 Subject: net-analyzer/nmap: Use a single config.cache to speed up configure. Package-Manager: Portage-2.3.5, Repoman-2.3.2 --- net-analyzer/nmap/nmap-7.40-r1.ebuild | 180 ++++++++++++++++++++++++++++++++++ net-analyzer/nmap/nmap-9999.ebuild | 9 +- 2 files changed, 184 insertions(+), 5 deletions(-) create mode 100644 net-analyzer/nmap/nmap-7.40-r1.ebuild (limited to 'net-analyzer/nmap') diff --git a/net-analyzer/nmap/nmap-7.40-r1.ebuild b/net-analyzer/nmap/nmap-7.40-r1.ebuild new file mode 100644 index 000000000000..cfbafe0a31bf --- /dev/null +++ b/net-analyzer/nmap/nmap-7.40-r1.ebuild @@ -0,0 +1,180 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE="sqlite,xml" +inherit autotools flag-o-matic python-single-r1 toolchain-funcs + +MY_P=${P/_beta/BETA} + +DESCRIPTION="A utility for network discovery and security auditing" +HOMEPAGE="http://nmap.org/" +SRC_URI=" + http://nmap.org/dist/${MY_P}.tar.bz2 + https://dev.gentoo.org/~jer/nmap-logo-64.png +" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris" + +IUSE="ipv6 libressl +nse system-lua ncat ndiff nls nmap-update nping ssl zenmap" +NMAP_LINGUAS=( de fr hi hr it ja pl pt_BR ru zh ) +IUSE+=" ${NMAP_LINGUAS[@]/#/linguas_}" + +REQUIRED_USE=" + system-lua? ( nse ) + ndiff? ( ${PYTHON_REQUIRED_USE} ) + zenmap? ( ${PYTHON_REQUIRED_USE} ) +" + +RDEPEND=" + dev-libs/liblinear:= + dev-libs/libpcre + net-libs/libpcap + zenmap? ( + dev-python/pygtk:2[${PYTHON_USEDEP}] + ${PYTHON_DEPS} + ) + system-lua? ( >=dev-lang/lua-5.2:*[deprecated] ) + ndiff? ( ${PYTHON_DEPS} ) + nls? ( virtual/libintl ) + nmap-update? ( dev-libs/apr dev-vcs/subversion ) + ssl? ( + !libressl? ( dev-libs/openssl:0= ) + libressl? ( dev-libs/libressl:= ) + ) +" +DEPEND=" + ${RDEPEND} + nls? ( sys-devel/gettext ) +" + +S="${WORKDIR}/${MY_P}" +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 +) + +pkg_setup() { + if use ndiff || use zenmap; then + python-single-r1_pkg_setup + fi +} + +src_unpack() { + # prevent unpacking the logo + unpack ${MY_P}.tar.bz2 +} + +src_prepare() { + rm -r libpcap/ || die + + cat "${FILESDIR}"/nls.m4 >> "${S}"/acinclude.m4 || die + + default + + if use nls; then + local lingua='' + for lingua in ${NMAP_LINGUAS[@]}; do + if ! use linguas_${lingua}; then + rm -r zenmap/share/zenmap/locale/${lingua} || die + rm zenmap/share/zenmap/locale/${lingua}.po || die + fi + done + else + # configure/make ignores --disable-nls + for lingua in ${NMAP_LINGUAS[@]}; do + rm -r zenmap/share/zenmap/locale/${lingua} || die + rm zenmap/share/zenmap/locale/${lingua}.po || die + done + fi + + sed -i \ + -e '/^ALL_LINGUAS =/{s|$| id|g;s|jp|ja|g}' \ + Makefile.in || die + + sed -i \ + -e '/rm -f $@/d' \ + $(find . -name 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_enable nls) \ + $(use_with ncat) \ + $(use_with ndiff) \ + $(use_with nmap-update) \ + $(use_with nping) \ + $(use_with ssl openssl) \ + $(use_with zenmap) \ + $(usex nse --with-liblua=$(usex system-lua /usr 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 + + if use zenmap; then + doicon "${DISTDIR}/nmap-logo-64.png" + python_optimize + fi +} diff --git a/net-analyzer/nmap/nmap-9999.ebuild b/net-analyzer/nmap/nmap-9999.ebuild index 431ae56c880a..ef0334de9f3f 100644 --- a/net-analyzer/nmap/nmap-9999.ebuild +++ b/net-analyzer/nmap/nmap-9999.ebuild @@ -97,11 +97,9 @@ src_prepare() { # Fix desktop files wrt bug #432714 sed -i \ - -e '/^Encoding/d' \ -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 @@ -116,17 +114,18 @@ src_configure() { econf \ $(use_enable ipv6) \ $(use_enable nls) \ - $(use_with zenmap) \ - $(usex nse --with-liblua=$(usex system-lua /usr included '' '') --without-liblua) \ $(use_with ncat) \ $(use_with ndiff) \ $(use_with nmap-update) \ $(use_with nping) \ $(use_with ssl openssl) \ + $(use_with zenmap) \ + $(usex nse --with-liblua=$(usex system-lua /usr included '' '') --without-liblua) \ + --cache-file="${S}"/config.cache \ --with-libdnet=included \ --with-pcre=/usr + # Commented out because configure does weird things # --with-liblinear=/usr \ - # Commented because configure does weird things, while autodetection works } src_compile() { -- cgit v1.2.3-65-gdbad