diff mbox series

[v2,2/2] package/libssh2: Update to newest version

Message ID 1509054225-19795-2-git-send-email-sam.voss@rockwellcollins.com
State Changes Requested
Headers show
Series None | expand

Commit Message

Sam Voss Oct. 26, 2017, 9:43 p.m. UTC
Update libssh2 to use the newest version from git. This caused a
transition from released version number to hash as it has not been
version rev'd in over a year (see issue
https://github.com/libssh2/libssh2/issues/220 for bump request).

This brings in changes to the autoconf to correctly pick the crypto
library.

Update libssh2.mk to have a preconf hook to call buildconf. This
generates the configuration file used by autotools, and is required when
pulling source from git instead of a released version.

Signed-off-by: Sam Voss <sam.voss@rockwellcollins.com>

----

[v1->v2]
 - Use LIBSSH2_AUTORECONF instead of calling explicitly

Signed-off-by: Sam Voss <sam.voss@rockwellcollins.com>
---
 package/libssh2/libssh2.hash |  3 +--
 package/libssh2/libssh2.mk   | 10 ++++++++--
 2 files changed, 9 insertions(+), 4 deletions(-)

Comments

Yann E. MORIN Oct. 28, 2017, 2:22 p.m. UTC | #1
Sam, All,

On 2017-10-26 16:43 -0500, Sam Voss spake thusly:
> Update libssh2 to use the newest version from git. This caused a
> transition from released version number to hash as it has not been
> version rev'd in over a year (see issue
> https://github.com/libssh2/libssh2/issues/220 for bump request).
> 
> This brings in changes to the autoconf to correctly pick the crypto
> library.
> 
> Update libssh2.mk to have a preconf hook to call buildconf. This
> generates the configuration file used by autotools, and is required when
> pulling source from git instead of a released version.

This part of the commit is now wrong; don;t mnention it, but [0]...

> 
> Signed-off-by: Sam Voss <sam.voss@rockwellcollins.com>
> 
> ----
> 
> [v1->v2]
>  - Use LIBSSH2_AUTORECONF instead of calling explicitly
> 
> Signed-off-by: Sam Voss <sam.voss@rockwellcollins.com>
> ---
>  package/libssh2/libssh2.hash |  3 +--
>  package/libssh2/libssh2.mk   | 10 ++++++++--
>  2 files changed, 9 insertions(+), 4 deletions(-)
> 
> diff --git a/package/libssh2/libssh2.hash b/package/libssh2/libssh2.hash
> index 6b1cced..f0df7a2 100644
> --- a/package/libssh2/libssh2.hash
> +++ b/package/libssh2/libssh2.hash
> @@ -1,3 +1,2 @@
>  # Locally calculated after checking pgp signature
> -# https://www.libssh2.org/download/libssh2-1.8.0.tar.gz.asc
> -sha256	39f34e2f6835f4b992cafe8625073a88e5a28ba78f83e8099610a7b3af4676d4	libssh2-1.8.0.tar.gz
> +sha256 e73d55cd512863aa6423c6e137039e3e1bcbf5ba87f130e7441132c2c78a5425 libssh2-616fd4d1b3e4a55de67c48819fefca83132126b5.tar.gz
> diff --git a/package/libssh2/libssh2.mk b/package/libssh2/libssh2.mk
> index 3978698..c803e0e 100644
> --- a/package/libssh2/libssh2.mk
> +++ b/package/libssh2/libssh2.mk
> @@ -4,12 +4,18 @@
>  #
>  ################################################################################
>  
> -LIBSSH2_VERSION = 1.8.0
> -LIBSSH2_SITE = http://www.libssh2.org/download
> +LIBSSH2_VERSION = 616fd4d1b3e4a55de67c48819fefca83132126b5
> +LIBSSH2_SITE = $(call github,libssh2,libssh2,$(LIBSSH2_VERSION))
>  LIBSSH2_LICENSE = BSD
>  LIBSSH2_LICENSE_FILES = COPYING
>  LIBSSH2_INSTALL_STAGING = YES
>  LIBSSH2_CONF_OPTS = --disable-examples-build
> +LIBSSH2_AUTORECONF = YES

... [0] here state why we need to autoreconf:

    # From the git tree; does not have generated autotools files.
    LIBSSH2_AUTORECONF = YES

> +
> +define LIBSSH2_AUTORECONF_CMDS
> +	cp $(@D)/src/libssh2_config.h.in $(@D)/example/libssh2_config.h.in
> +endef
> +LIBSSH2_PRE_CONFIGURE_HOOKS += LIBSSH2_AUTORECONF_CMDS

Do we really need to copy that header, since we do not build the
examples (explicitly disabled, above)?

Regards,
Yann E. MORIN.

>  # Dependency is one of mbedtls, libgcrypt or openssl, guaranteed in
>  # Config.in.
> -- 
> 1.9.1
> 
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
Sam Voss Oct. 30, 2017, 2:24 p.m. UTC | #2
Yann, All,

On Sat, Oct 28, 2017 at 9:22 AM, Yann E. MORIN <yann.morin.1998@free.fr> wrote:
[..]
>> +LIBSSH2_AUTORECONF = YES
>
> ... [0] here state why we need to autoreconf:

Can do

>
>     # From the git tree; does not have generated autotools files.
>     LIBSSH2_AUTORECONF = YES
>
>> +
>> +define LIBSSH2_AUTORECONF_CMDS
>> +     cp $(@D)/src/libssh2_config.h.in $(@D)/example/libssh2_config.h.in
>> +endef
>> +LIBSSH2_PRE_CONFIGURE_HOOKS += LIBSSH2_AUTORECONF_CMDS
>
> Do we really need to copy that header, since we do not build the
> examples (explicitly disabled, above)?

It seems that, although we explicitly do not build the examples,
autoconf can't take that into account at the time of running
buildconf. I'll double check and make sure there isn't a way around
this.


Sam
diff mbox series

Patch

diff --git a/package/libssh2/libssh2.hash b/package/libssh2/libssh2.hash
index 6b1cced..f0df7a2 100644
--- a/package/libssh2/libssh2.hash
+++ b/package/libssh2/libssh2.hash
@@ -1,3 +1,2 @@ 
 # Locally calculated after checking pgp signature
-# https://www.libssh2.org/download/libssh2-1.8.0.tar.gz.asc
-sha256	39f34e2f6835f4b992cafe8625073a88e5a28ba78f83e8099610a7b3af4676d4	libssh2-1.8.0.tar.gz
+sha256 e73d55cd512863aa6423c6e137039e3e1bcbf5ba87f130e7441132c2c78a5425 libssh2-616fd4d1b3e4a55de67c48819fefca83132126b5.tar.gz
diff --git a/package/libssh2/libssh2.mk b/package/libssh2/libssh2.mk
index 3978698..c803e0e 100644
--- a/package/libssh2/libssh2.mk
+++ b/package/libssh2/libssh2.mk
@@ -4,12 +4,18 @@ 
 #
 ################################################################################
 
-LIBSSH2_VERSION = 1.8.0
-LIBSSH2_SITE = http://www.libssh2.org/download
+LIBSSH2_VERSION = 616fd4d1b3e4a55de67c48819fefca83132126b5
+LIBSSH2_SITE = $(call github,libssh2,libssh2,$(LIBSSH2_VERSION))
 LIBSSH2_LICENSE = BSD
 LIBSSH2_LICENSE_FILES = COPYING
 LIBSSH2_INSTALL_STAGING = YES
 LIBSSH2_CONF_OPTS = --disable-examples-build
+LIBSSH2_AUTORECONF = YES
+
+define LIBSSH2_AUTORECONF_CMDS
+	cp $(@D)/src/libssh2_config.h.in $(@D)/example/libssh2_config.h.in
+endef
+LIBSSH2_PRE_CONFIGURE_HOOKS += LIBSSH2_AUTORECONF_CMDS
 
 # Dependency is one of mbedtls, libgcrypt or openssl, guaranteed in
 # Config.in.