commit:     17b438ee01bc4626a203581cf539eebcee394dc1
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 31 09:19:35 2016 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Mon Oct 31 09:19:52 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=17b438ee

net-libs/libssh2: fix USE=gcrypt build failure

$ ./configure --with-libgcrypt
triggered injection of
    -Iyes/include
    -Lyes/lib
commandline flags.

Fix uses '$with_libgcrypt_prefix' to specify prefix.

Reported-by: Mikhail Pukhlikov <cynede <AT> gentoo.org>

Package-Manager: portage-2.3.2

 .../files/libssh2-1.8.0-libgcrypt-prefix.patch     | 52 ++++++++++++++++++++++
 net-libs/libssh2/libssh2-1.8.0.ebuild              |  2 +
 net-libs/libssh2/libssh2-9999.ebuild               |  4 +-
 3 files changed, 56 insertions(+), 2 deletions(-)

diff --git a/net-libs/libssh2/files/libssh2-1.8.0-libgcrypt-prefix.patch 
b/net-libs/libssh2/files/libssh2-1.8.0-libgcrypt-prefix.patch
new file mode 100644
index 00000000..38541fe
--- /dev/null
+++ b/net-libs/libssh2/files/libssh2-1.8.0-libgcrypt-prefix.patch
@@ -0,0 +1,52 @@
+From ad5223220aa83e2439657ddce6ffca4445f08f8c Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <siarh...@google.com>
+Date: Mon, 31 Oct 2016 09:04:33 +0000
+Subject: [PATCH] acinclude.m4: fix ./configure --with-libgcrypt
+
+The change fixes passing of bogus gcrypt prefix.
+Reproducible as:
+
+    $ ./configure --with-libgcrypt
+    $ make V=1
+    ...
+    /bin/sh ../libtool  --tag=CC   --mode=link gcc  -g -O2 -Iyes/include 
-version-info 1:1:0 -no-undefined -export-symbols-regex '^libssh2_.*' -lgcrypt  
-lz -Lyes/lib -o libssh2.la -rpath /usr/local/lib channel.lo comp.lo crypt.lo 
hostkey.lo kex.lo mac.lo misc.lo packet.lo publickey.lo scp.lo session.lo 
sftp.lo userauth.lo transport.lo version.lo knownhost.lo agent.lo libgcrypt.lo 
pem.lo keepalive.lo global.lo   -lgcrypt
+    ../libtool: line 7475: cd: yes/lib: No such file or directory
+    libtool:   error: cannot determine absolute directory name of 'yes/lib'
+
+These
+    -Iyes/include
+    -Lyes/lib
+come from libgcrypt code autodetection:
+  if test -n "$use_libgcrypt" && test "$use_libgcrypt" != "no"; then
+     LDFLAGS="$LDFLAGS -L$use_libgcrypt/lib"
+     CFLAGS="$CFLAGS -I$use_libgcrypt/include"
+
+I assume it's a typo to use yes/no flag as a prefix and changed
+it to '$with_libgcrypt_prefix'.
+
+Reported-by: Mikhail Pukhlikov <cyn...@gentoo.org>
+Signed-off-by: Sergei Trofimovich <siarh...@google.com>
+---
+ acinclude.m4 | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/acinclude.m4 b/acinclude.m4
+index 734ef07..c78260c 100644
+--- a/acinclude.m4
++++ b/acinclude.m4
+@@ -412,9 +412,9 @@ AC_DEFUN([LIBSSH2_CHECKFOR_GCRYPT], [
+ 
+   old_LDFLAGS=$LDFLAGS
+   old_CFLAGS=$CFLAGS
+-  if test -n "$use_libgcrypt" && test "$use_libgcrypt" != "no"; then
+-    LDFLAGS="$LDFLAGS -L$use_libgcrypt/lib"
+-    CFLAGS="$CFLAGS -I$use_libgcrypt/include"
++  if test -n "$with_libgcrypt_prefix" && test "$use_libgcrypt" != "no"; then
++    LDFLAGS="$LDFLAGS -L$with_libgcrypt_prefix/lib"
++    CFLAGS="$CFLAGS -I$with_libgcrypt_prefix/include"
+   fi
+   AC_LIB_HAVE_LINKFLAGS([gcrypt], [], [
+     #include <gcrypt.h>
+-- 
+2.10.1
+

diff --git a/net-libs/libssh2/libssh2-1.8.0.ebuild 
b/net-libs/libssh2/libssh2-1.8.0.ebuild
index 023e8a3..36df0cc 100644
--- a/net-libs/libssh2/libssh2-1.8.0.ebuild
+++ b/net-libs/libssh2/libssh2-1.8.0.ebuild
@@ -32,6 +32,8 @@ DOCS=(
        README
 )
 
+PATCHES=( "${FILESDIR}"/${PN}-1.8.0-libgcrypt-prefix.patch )
+
 src_prepare() {
        sed -i -e 's|mansyntax.sh||g' tests/Makefile.am || die
        autotools-multilib_src_prepare

diff --git a/net-libs/libssh2/libssh2-9999.ebuild 
b/net-libs/libssh2/libssh2-9999.ebuild
index 8d3718b..29287af 100644
--- a/net-libs/libssh2/libssh2-9999.ebuild
+++ b/net-libs/libssh2/libssh2-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
@@ -28,7 +28,7 @@ RDEPEND="${DEPEND}"
 
 DOCS=( README )
 
-PATCHES=( "${FILESDIR}"/${PN}-1.4.2-pkgconfig.patch )
+PATCHES=( "${FILESDIR}"/${PN}-1.8.0-libgcrypt-prefix.patch )
 
 src_prepare() {
        sed -i -e 's|mansyntax.sh||g' tests/Makefile.am || die

Reply via email to