net-analyzer/nmap: Detect EC support in dev-libs/openssl (bug #589658).
authorJeroen Roovers <jer@gentoo.org>
Fri, 29 Jul 2016 08:12:29 +0000 (10:12 +0200)
committerJeroen Roovers <jer@gentoo.org>
Fri, 29 Jul 2016 08:12:43 +0000 (10:12 +0200)
Package-Manager: portage-2.3.0

net-analyzer/nmap/files/nmap-7.25-EC.patch [new file with mode: 0644]
net-analyzer/nmap/nmap-7.25_beta1.ebuild
net-analyzer/nmap/nmap-9999.ebuild

diff --git a/net-analyzer/nmap/files/nmap-7.25-EC.patch b/net-analyzer/nmap/files/nmap-7.25-EC.patch
new file mode 100644 (file)
index 0000000..fff5679
--- /dev/null
@@ -0,0 +1,38 @@
+ - Check for EVP_PKEY_get1_EC_KEY
+ - Comment out inappropriate AC_CONFIG_SUBDIRS
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -387,6 +387,12 @@
+     AC_MSG_WARN([Failed to find libssl so OpenSSL will not be used. If it is installed you can try the --with-openssl=DIR argument]) ],
+     [ -lcrypto ])
+  fi
++
++ if test "$use_openssl" = "yes"; then
++  AC_CHECK_LIB(crypto, EVP_PKEY_get1_EC_KEY,
++   [AC_DEFINE(HAVE_EVP_PKEY_EC, 1, [Have EVP_PKEY_get1_EC_KEY])],
++   [AC_MSG_WARN([Disabling support for EC crypto])])
++ fi
+ fi
+ 
+ OPENSSL_LIBS=
+@@ -516,7 +522,7 @@
+ 
+ # If we still don't have it, we use our own
+ if test $have_pcre != yes ; then
+-  AC_CONFIG_SUBDIRS( libpcre )
++#  AC_CONFIG_SUBDIRS( libpcre )
+   CPPFLAGS="-I\$(top_srcdir)/$LIBPCREDIR $CPPFLAGS"
+   LIBPCRE_LIBS="$LIBPCREDIR/libpcre.a"
+   PCRE_BUILD="build-pcre"
+--- a/nse_ssl_cert.cc
++++ b/nse_ssl_cert.cc
+@@ -434,7 +434,7 @@
+ }
+ 
+ int lua_push_ecdhparams(lua_State *L, EVP_PKEY *pubkey) {
+-#ifdef EVP_PKEY_EC
++#ifdef HAVE_EVP_PKEY_EC
+   EC_KEY *ec_key = EVP_PKEY_get1_EC_KEY(pubkey);
+   const EC_GROUP *group = EC_KEY_get0_group(ec_key);
+   int nid;
index ff216a88f07029b9dce17c9916b5de2ff5841d71..2005f65019ef274665e4b15d93ba5595528f8db8 100644 (file)
@@ -6,7 +6,7 @@ EAPI=5
 
 PYTHON_COMPAT=( python2_7 )
 PYTHON_REQ_USE="sqlite,xml"
-inherit eutils flag-o-matic python-single-r1 toolchain-funcs
+inherit autotools eutils flag-o-matic python-single-r1 toolchain-funcs
 
 MY_P=${P/_beta/BETA}
 
@@ -74,7 +74,8 @@ src_prepare() {
                "${FILESDIR}"/${PN}-6.46-uninstaller.patch \
                "${FILESDIR}"/${PN}-6.47-no-libnl.patch \
                "${FILESDIR}"/${PN}-6.25-liblua-ar.patch \
-               "${FILESDIR}"/${PN}-7.25-no-FORTIFY_SOURCE.patch
+               "${FILESDIR}"/${PN}-7.25-no-FORTIFY_SOURCE.patch \
+               "${FILESDIR}"/${PN}-7.25-EC.patch
 
        if use nls; then
                local lingua=''
@@ -109,6 +110,8 @@ src_prepare() {
                zenmap/install_scripts/unix/zenmap.desktop || die
 
        epatch_user
+
+       eautoreconf
 }
 
 src_configure() {
index 40c25d679795149cadb534fa4844a44d00fd1fe6..83ebe8850a47b40e916dc5cd8f7d96ff7e089dde 100644 (file)
@@ -6,7 +6,7 @@ EAPI=5
 
 PYTHON_COMPAT=( python2_7 )
 PYTHON_REQ_USE="sqlite,xml"
-inherit eutils flag-o-matic git-r3 python-single-r1 toolchain-funcs user
+inherit autotools eutils flag-o-matic git-r3 python-single-r1 toolchain-funcs user
 
 MY_P=${P/_beta/BETA}
 
@@ -67,7 +67,8 @@ src_prepare() {
                "${FILESDIR}"/${PN}-6.25-liblua-ar.patch \
                "${FILESDIR}"/${PN}-6.46-uninstaller.patch \
                "${FILESDIR}"/${PN}-6.47-no-libnl.patch \
-               "${FILESDIR}"/${PN}-7.25-no-FORTIFY_SOURCE.patch
+               "${FILESDIR}"/${PN}-7.25-no-FORTIFY_SOURCE.patch \
+               "${FILESDIR}"/${PN}-7.25-EC.patch
 
        if use nls; then
                local lingua=''
@@ -97,6 +98,8 @@ src_prepare() {
                zenmap/install_scripts/unix/zenmap.desktop || die
 
        epatch_user
+
+       eautoreconf
 }
 
 src_configure() {