From 5d97f4c74abf84e6c721fea7a86bdb50827705a8 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 22 Dec 2016 00:14:54 -0500 Subject: gnu: libssh2: Update to 1.8.0. * gnu/packages/ssh.scm (libssh2): Update to 1.8.0. --- gnu/packages/ssh.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/ssh.scm') diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index ea5ec811d1..65f118f5ca 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -85,7 +85,7 @@ remote applications.") (define-public libssh2 (package (name "libssh2") - (version "1.7.0") + (version "1.8.0") (source (origin (method url-fetch) (uri (string-append @@ -93,7 +93,7 @@ remote applications.") version ".tar.gz")) (sha256 (base32 - "116mh112w48vv9k3f15ggp5kxw5sj4b88dzb5j69llsh7ba1ymp4")))) + "1m3n8spv79qhjq4yi0wgly5s5rc8783jb1pyra9bkx1md0plxwrr")))) (build-system gnu-build-system) ;; The installed libssh2.pc file does not include paths to libgcrypt and ;; zlib libraries, so we need to propagate the inputs. -- cgit 1.4.1 From ac2d5de3dae5a1854f27e1a0b4c09f71001cb91a Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 26 Feb 2017 20:12:18 +0100 Subject: gnu: libssh2: Fix build failure after 1.8.0 upgrade. * gnu/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/ssh.scm (libssh2)[source]: Use it. [arguments]: Add 'autoreconf' phase. [native-inputs]: Add AUTOCONF and AUTOMAKE. --- gnu/local.mk | 1 + .../libssh2-fix-build-failure-with-gcrypt.patch | 33 ++++++++++++++++++++++ gnu/packages/ssh.scm | 12 ++++++-- 3 files changed, 44 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch (limited to 'gnu/packages/ssh.scm') diff --git a/gnu/local.mk b/gnu/local.mk index dc210c7662..3d9ad7065c 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -692,6 +692,7 @@ dist_patch_DATA = \ %D%/packages/patches/libmad-frame-length.patch \ %D%/packages/patches/libmad-mips-newgcc.patch \ %D%/packages/patches/libssh-0.6.5-CVE-2016-0739.patch \ + %D%/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch \ %D%/packages/patches/libtar-CVE-2013-4420.patch \ %D%/packages/patches/libtheora-config-guess.patch \ %D%/packages/patches/libtiff-CVE-2016-10092.patch \ diff --git a/gnu/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch b/gnu/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch new file mode 100644 index 0000000000..4133be7fc9 --- /dev/null +++ b/gnu/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch @@ -0,0 +1,33 @@ +This fixes a regression introduced in 1.8.0 where libssh2 fails to build +with the gcrypt backend. + +Upstream bug URL: + +https://github.com/libssh2/libssh2/issues/150 + +Patch copied from upstream source repository: + +https://github.com/libssh2/libssh2/commit/ced924b78a40126606797ef57a74066eb3b4b83f + +From ced924b78a40126606797ef57a74066eb3b4b83f Mon Sep 17 00:00:00 2001 +From: Sergei Trofimovich +Date: Mon, 31 Oct 2016 09:04:33 +0000 +Subject: [PATCH] acinclude.m4: fix ./configure --with-libgcrypt + +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 diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index c48e3e6f90..2e502fe7fc 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -93,13 +93,21 @@ remote applications.") version ".tar.gz")) (sha256 (base32 - "1m3n8spv79qhjq4yi0wgly5s5rc8783jb1pyra9bkx1md0plxwrr")))) + "1m3n8spv79qhjq4yi0wgly5s5rc8783jb1pyra9bkx1md0plxwrr")) + (patches + (search-patches "libssh2-fix-build-failure-with-gcrypt.patch")))) (build-system gnu-build-system) ;; The installed libssh2.pc file does not include paths to libgcrypt and ;; zlib libraries, so we need to propagate the inputs. (propagated-inputs `(("libgcrypt" ,libgcrypt) ("zlib" ,zlib))) - (arguments '(#:configure-flags `("--with-libgcrypt"))) + (arguments '(#:configure-flags `("--with-libgcrypt") + #:phases (modify-phases %standard-phases + (add-before 'configure 'autoreconf + (lambda _ + (zero? (system* "autoreconf" "-v"))))))) + (native-inputs `(("autoconf" ,autoconf) + ("automake" ,automake))) (synopsis "Client-side C library implementing the SSH2 protocol") (description "libssh2 is a library intended to allow software developers access to -- cgit 1.4.1 From d5c969ce0c3cb0de0e68551de3db62588fd2c534 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 19 Mar 2017 23:28:27 +0100 Subject: gnu: lsh: Use libc's argp instead of the bundled one. * gnu/packages/ssh.scm (lsh)[arguments] <#:configure-flags>: Add --with-system-argp and CPPFLAGS=-DHAVE_ARGP_PARSE. <#:phases>: In 'pre-configure' phase, modify src/Makefile.in. --- gnu/packages/ssh.scm | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'gnu/packages/ssh.scm') diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index eaa832269d..068e870f93 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -446,7 +446,14 @@ basis for almost any application.") '(;; Skip the `configure' test that checks whether /dev/ptmx & ;; co. work as expected, because it relies on impurities (for ;; instance, /dev/pts may be unavailable in chroots.) - #:configure-flags '("lsh_cv_sys_unix98_ptys=yes") + #:configure-flags '("lsh_cv_sys_unix98_ptys=yes" + + ;; Use glibc's argp rather than the bundled one. + "--with-system-argp" + + ;; 'lsh_argp.h' checks HAVE_ARGP_PARSE but nothing + ;; defines it. + "CPPFLAGS=-DHAVE_ARGP_PARSE") ;; FIXME: Tests won't run in a chroot, presumably because ;; /etc/profile is missing, and thus clients get an empty $PATH @@ -459,6 +466,12 @@ basis for almost any application.") (lambda* (#:key inputs #:allow-other-keys) (let* ((nettle (assoc-ref inputs "nettle")) (sexp-conv (string-append nettle "/bin/sexp-conv"))) + ;; Remove argp from the list of sub-directories; we don't want + ;; to build it, really. + (substitute* "src/Makefile.in" + (("^SUBDIRS = argp") + "SUBDIRS =")) + ;; Make sure 'lsh' and 'lshd' pick 'sexp-conv' in the right place ;; by default. (substitute* "src/environ.h.in" -- cgit 1.4.1