Skip to contentSkip to conversation

gnutls: bump to version 3.1.5

PATCH New Gustavo Zacarias 3 participants 12 messages Dec 28, 2012

lore
Share & tools
lore
#0 lore raw

PATCH 1/7 gnutls: bump to version 3.1.5

---
 package/gnutls/Config.in                           |    9 +++-
 ...001-gets-no-longer-exists-in-e-glibc-2.16.patch |   56 --------------------
 package/gnutls/gnutls.mk                           |   26 +++++++---
 3 files changed, 27 insertions(+), 64 deletions(-)
 delete mode 100644 package/gnutls/gnutls-0001-gets-no-longer-exists-in-e-glibc-2.16.patch
package/gnutls/Config.in +8 -1
index cedf120..2bd5ab6 100644
@@ -1,8 +1,15 @@
 config BR2_PACKAGE_GNUTLS
 	bool "gnutls"
-	select BR2_PACKAGE_LIBGCRYPT
+	select BR2_PACKAGE_NETTLE
 	help
 	  GnuTLS is a secure communications library implementing the SSL
 	  and TLS protocols and technologies around them.
 
 	  http://www.gnu.org/software/gnutls/gnutls.html
+
+config BR2_PACKAGE_GNUTLS_TOOLS
+	bool "install tools"
+	depends on BR2_PACKAGE_GNUTLS
+	depends on BR2_USE_WCHAR
+	help
+	  Install GnuTLS command line tools for various cryptographic tasks.
package/gnutls/gnutls-0001-gets-no-longer-exists-in-e-glibc-2.16.patch deleted +0 -56

56 lines not on this page · raw message

package/gnutls/gnutls.mk +19 -7
index 506d7f5..e27c1a3 100644
@@ -4,18 +4,30 @@
 #
 #############################################################
 
-GNUTLS_VERSION = 2.12.20
-GNUTLS_SOURCE = gnutls-$(GNUTLS_VERSION).tar.bz2
+GNUTLS_VERSION = 3.1.5
+GNUTLS_SOURCE = gnutls-$(GNUTLS_VERSION).tar.xz
 GNUTLS_SITE = $(BR2_GNU_MIRROR)/gnutls
-GNUTLS_LICENSE = GPLv3+ LGPLv2.1+
+GNUTLS_LICENSE = GPLv3+ LGPLv3
 GNUTLS_LICENSE_FILES = COPYING lib/COPYING
-GNUTLS_DEPENDENCIES = host-pkgconf libgcrypt $(if $(BR2_PACKAGE_ZLIB),zlib)
-GNUTLS_CONF_ENV = acl_cv_rpath=no \
+GNUTLS_DEPENDENCIES = host-pkgconf nettle $(if $(BR2_PACKAGE_ZLIB),zlib)
+GNUTLS_CONF_OPT = --with-libnettle-prefix=$(STAGING_DIR)/usr --disable-rpath
+GNUTLS_CONF_ENV = gl_cv_socket_ipv6=$(if $(BR2_INET_IPV6),yes,no) \
 	ac_cv_header_wchar_h=$(if $(BR2_USE_WCHAR),yes,no) \
 	gt_cv_c_wchar_t=$(if $(BR2_USE_WCHAR),yes,no) \
 	gt_cv_c_wint_t=$(if $(BR2_USE_WCHAR),yes,no)
-GNUTLS_CONF_OPT = --with-libgcrypt --without-libgcrypt-prefix \
-		--without-p11-kit --disable-rpath
 GNUTLS_INSTALL_STAGING = YES
 
+# Some examples in doc/examples use wchar
+define GNUTLS_DISABLE_DOCS
+	$(SED) 's/ doc / /' $(@D)/Makefile.in
+endef
+
+define GNUTLS_DISABLE_TOOLS
+	$(SED) 's/\$$(PROGRAMS)//' $(@D)/src/Makefile.in
+	$(SED) 's/) install-exec-am/)/' $(@D)/src/Makefile.in
+endef
+
+GNUTLS_POST_PATCH_HOOKS += GNUTLS_DISABLE_DOCS
+GNUTLS_POST_PATCH_HOOKS += $(if $(BR2_PACKAGE_GNUTLS_TOOLS),,GNUTLS_DISABLE_TOOLS)
+
 $(eval $(autotools-package))
Signature · 1 line
1.7.8.6
#1 lore raw

PATCH 2/7 hostapd: remove gnutls support

hostapd isn't API compatible with gnutls3 so remove support. It's probably hardly used since openssl is far more common, and hostapd can use its internal routines if it's not available.

---
 package/hostapd/hostapd.mk |    9 +--------
 1 files changed, 1 insertions(+), 8 deletions(-)
package/hostapd/hostapd.mk +1 -8
index 45a93fc..b18881a 100644
@@ -27,7 +27,7 @@ define HOSTAPD_LIBTOMMATH_CONFIG
 	$(SED) 's/\(#\)\(CONFIG_INTERNAL_LIBTOMMATH.*\)/\2/' $(HOSTAPD_CONFIG)
 endef
 
-# Try to use openssl or gnutls if it's already available
+# Try to use openssl if it's already available
 ifeq ($(BR2_PACKAGE_OPENSSL),y)
 	HOSTAPD_DEPENDENCIES += openssl
 define HOSTAPD_TLS_CONFIG
@@ -35,17 +35,10 @@ define HOSTAPD_TLS_CONFIG
 	$(SED) 's/\(#\)\(CONFIG_EAP_PWD.*\)/\2/' $(HOSTAPD_CONFIG)
 endef
 else
-ifeq ($(BR2_PACKAGE_GNUTLS),y)
-	HOSTAPD_DEPENDENCIES += gnutls
-define HOSTAPD_TLS_CONFIG
-	$(SED) 's/\(#\)\(CONFIG_TLS=\).*/\2gnutls/' $(HOSTAPD_CONFIG)
-endef
-else
 define HOSTAPD_TLS_CONFIG
 	$(SED) 's/\(#\)\(CONFIG_TLS=\).*/\2internal/' $(HOSTAPD_CONFIG)
 endef
 endif
-endif
 
 ifeq ($(BR2_PACKAGE_HOSTAPD_EAP),y)
 define HOSTAPD_EAP_CONFIG
Signature · 1 line
1.7.8.6
#2 lore raw

PATCH 2/7 hostapd: remove gnutls support

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Gustavo" == Gustavo Zacarias <[email protected]> writes:

Gustavo> hostapd isn't API compatible with gnutls3 so remove support. Gustavo> It's probably hardly used since openssl is far more common, Gustavo> and hostapd can use its internal routines if it's not Gustavo> available.

I've resuffled this to come before the gnutls one and committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard
#3 lore raw

PATCH 3/7 wpa_supplicant: remove gnutls support

In reply to Gustavo Zacarias

wpa_supplicant: remove gnutls support

wpa_supplicant isn't API compatible with gnutls3 so remove support. It's probably hardly used since openssl is far more common, and wpa_supplicant can use its internal routines if it's not available.

---
 package/wpa_supplicant/wpa_supplicant.mk |    9 +--------
 1 files changed, 1 insertions(+), 8 deletions(-)
package/wpa_supplicant/wpa_supplicant.mk +1 -8
index 71be11f..3830d65 100644
@@ -59,7 +59,7 @@ define WPA_SUPPLICANT_LIBTOMMATH_CONFIG
 	$(SED) 's/\(#\)\(CONFIG_INTERNAL_LIBTOMMATH.*\)/\2/' $(WPA_SUPPLICANT_CONFIG)
 endef
 
-# Try to use openssl or gnutls if it's already available
+# Try to use openssl if it's already available
 ifeq ($(BR2_PACKAGE_OPENSSL),y)
 	WPA_SUPPLICANT_DEPENDENCIES += openssl
 define WPA_SUPPLICANT_TLS_CONFIG
@@ -67,17 +67,10 @@ define WPA_SUPPLICANT_TLS_CONFIG
 	$(SED) 's/\(#\)\(CONFIG_EAP_PWD.*\)/\2/' $(WPA_SUPPLICANT_CONFIG)
 endef
 else
-ifeq ($(BR2_PACKAGE_GNUTLS),y)
-	WPA_SUPPLICANT_DEPENDENCIES += gnutls
-define WPA_SUPPLICANT_TLS_CONFIG
-	$(SED) 's/\(#\)\(CONFIG_TLS=\).*/\2gnutls/' $(WPA_SUPPLICANT_CONFIG)
-endef
-else
 define WPA_SUPPLICANT_TLS_CONFIG
 	$(SED) 's/\(#\)\(CONFIG_TLS=\).*/\2internal/' $(WPA_SUPPLICANT_CONFIG)
 endef
 endif
-endif
 
 ifeq ($(BR2_PACKAGE_DBUS),y)
 	WPA_SUPPLICANT_DEPENDENCIES += host-pkgconf dbus
Signature · 1 line
1.7.8.6
#4 lore raw

PATCH 4/7 ntfs-3g: needs libgcrypt

In reply to Gustavo Zacarias

Now that we've moved to gnutls 3.x which no longer uses libgcrypt we need to pull it in as a dependency for ntfs-3g encrypted volume support to avoid build breakage.

---
 package/ntfs-3g/Config.in  |    1 +
 package/ntfs-3g/ntfs-3g.mk |    2 +-
 2 files changed, 2 insertions(+), 1 deletions(-)
package/ntfs-3g/Config.in +1 -0
index 5301038..1d3e2fb 100644
@@ -17,6 +17,7 @@ if BR2_PACKAGE_NTFS_3G
 config BR2_PACKAGE_NTFS_3G_ENCRYPTED
 	bool "encrypted volumes"
 	select BR2_PACKAGE_GNUTLS
+	select BR2_PACKAGE_LIBGCRYPT
 	help
 	  Enable support for NTFS encrypted volumes.
 
package/ntfs-3g/ntfs-3g.mk +1 -1
index d2e6861..cefb73a 100644
@@ -23,7 +23,7 @@ endif
 ifeq ($(BR2_PACKAGE_NTFS_3G_ENCRYPTED),y)
 	NTFS_3G_CONF_ENV += LIBGCRYPT_CONFIG=$(STAGING_DIR)/usr/bin/libgcrypt-config
 	NTFS_3G_CONF_OPT += --enable-crypto
-	NTFS_3G_DEPENDENCIES += gnutls
+	NTFS_3G_DEPENDENCIES += gnutls libgcrypt
 endif
 
 ifneq ($(BR2_PACKAGE_NTFS_3G_NTFSPROGS),y)
Signature · 1 line
1.7.8.6
#5 lore raw

PATCH 5/7 glib-networking: fix build failure with gnutls3

In reply to Gustavo Zacarias
---
 package/glib-networking/glib-networking.mk |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)
package/glib-networking/glib-networking.mk +7 -0
index b1eec4d..e8d71e5 100644
@@ -25,4 +25,11 @@ else
 GLIB_NETWORKING_CONF_OPT += --without-gnutls
 endif
 
+# gnutls 3.x+ doesn't use libgcrypt, it uses nettle/hogweed
+define GLIB_NETWORKING_NO_LIBGCRYPT
+	$(SED) 's:#include <gcrypt.h>::' $(@D)/tls/gnutls/gtlsbackend-gnutls.c
+endef
+
+GLIB_NETWORKING_POST_EXTRACT_HOOKS += GLIB_NETWORKING_NO_LIBGCRYPT
+
 $(eval $(autotools-package))
Signature · 1 line
1.7.8.6
#6 lore raw

PATCH 6/7 network-manager: needs libgcrypt

In reply to Gustavo Zacarias

Since we moved to gnutls 3.x series which doesn't use libgcrypt we need to pull it in as a dependency to avoid build breakage.

---
 package/network-manager/Config.in          |    1 +
 package/network-manager/network-manager.mk |    3 ++-
 2 files changed, 3 insertions(+), 1 deletions(-)
package/network-manager/Config.in +1 -0
index f2544da..9b84083 100644
@@ -11,6 +11,7 @@ config BR2_PACKAGE_NETWORK_MANAGER
 	select BR2_PACKAGE_UDEV
 	select BR2_PACKAGE_UDEV_ALL_EXTRAS
 	select BR2_PACKAGE_GNUTLS
+	select BR2_PACKAGE_LIBGCRYPT
 	select BR2_PACKAGE_LIBNL
 	select BR2_PACKAGE_UTIL_LINUX
 	select BR2_PACKAGE_UTIL_LINUX_LIBUUID
package/network-manager/network-manager.mk +2 -1
index d14c98d..2a68c96 100644
@@ -7,7 +7,8 @@ NETWORK_MANAGER_VERSION = 0.9.2.0
 NETWORK_MANAGER_SOURCE = NetworkManager-$(NETWORK_MANAGER_VERSION).tar.bz2
 NETWORK_MANAGER_SITE = http://ftp.gnome.org/pub/GNOME/sources/NetworkManager/0.9/
 NETWORK_MANAGER_INSTALL_STAGING = YES
-NETWORK_MANAGER_DEPENDENCIES = host-pkgconf udev dbus-glib libnl wireless_tools gnutls util-linux
+NETWORK_MANAGER_DEPENDENCIES = host-pkgconf udev dbus-glib libnl gnutls \
+	libgcrypt wireless_tools util-linux
 
 NETWORK_MANAGER_CONF_ENV = \
 	ac_cv_path_LIBGCRYPT_CONFIG=$(STAGING_DIR)/usr/bin/libgcrypt-config
Signature · 1 line
1.7.8.6
#7 lore raw

PATCH 7/7 connman: bump to version 1.10

In reply to Gustavo Zacarias
---
 package/connman/connman.mk |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)
package/connman/connman.mk +3 -1
index 2c376c9..73ea70d 100644
@@ -4,10 +4,12 @@
 #
 #######################################################
 
-CONNMAN_VERSION = 1.9
+CONNMAN_VERSION = 1.10
 CONNMAN_SITE = $(BR2_KERNEL_MIRROR)/linux/network/connman/
 CONNMAN_DEPENDENCIES = libglib2 dbus iptables gnutls
 CONNMAN_INSTALL_STAGING = YES
+CONNMAN_LICENSE = GPLv2
+CONNMAN_LICENSE_FILES = COPYING
 CONNMAN_CONF_OPT += --localstatedir=/var \
 	$(if $(BR2_PACKAGE_CONNMAN_THREADS),--enable-threads,--disable-threads)		\
 	$(if $(BR2_PACKAGE_CONNMAN_DEBUG),--enable-debug,--disable-debug)		\
Signature · 1 line
1.7.8.6
#8 lore raw

PATCH 1/7 gnutls: bump to version 3.1.5

In reply to Gustavo Zacarias

Dear Gustavo Zacarias,

package/gnutls/Config.in line 3

Quoted 1 line · Gustavo Zacarias
package/gnutls/Config.in +1 -0
+	select BR2_PACKAGE_NETTLE

I'm maybe missing something, but I don't have BR2_PACKAGE_NETTLE here. Are you sure there isn't a patch missing in your patch set?

Thanks!

Thomas

Signature · 4 lines
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
#9 lore raw

PATCH 1/7 gnutls: bump to version 3.1.5

Quoted 4 lines · Thomas Petazzoni

Dear Gustavo Zacarias,

On Fri, 28 Dec 2012 16:47:17 -0300, Gustavo Zacarias wrote:

Quoted 8 lines

package/gnutls/Config.in line 3

Quoted 1 line
package/gnutls/Config.in +1 -0
+	select BR2_PACKAGE_NETTLE

I'm maybe missing something, but I don't have BR2_PACKAGE_NETTLE here. Are you sure there isn't a patch missing in your patch set?

Thanks!

Thomas

D'oh!
Thanks for the headsup, missing patch sent.
Regards.

#10 lore raw

PATCH 1/7 gnutls: bump to version 3.1.5

In reply to Gustavo Zacarias
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Gustavo" == Gustavo Zacarias <[email protected]> writes:

Gustavo> Signed-off-by: Gustavo Zacarias <[email protected]> Gustavo> ---

 Gustavo>  package/gnutls/Config.in                           |    9 +++-
 Gustavo>  ...001-gets-no-longer-exists-in-e-glibc-2.16.patch |   56 --------------------
 Gustavo>  package/gnutls/gnutls.mk                           |   26 +++++++---

Gustavo> 3 files changed, 27 insertions(+), 64 deletions(-)
Gustavo> delete mode 100644 package/gnutls/gnutls-0001-gets-no-longer-exists-in-e-glibc-2.16.patch

Gustavo> diff --git a/package/gnutls/Config.in b/package/gnutls/Config.in Gustavo> index cedf120..2bd5ab6 100644
Gustavo> --- a/package/gnutls/Config.in
Gustavo> +++ b/package/gnutls/Config.in
Gustavo> @@ -1,8 +1,15 @@
Gustavo> config BR2_PACKAGE_GNUTLS
Gustavo> bool "gnutls"
Gustavo> - select BR2_PACKAGE_LIBGCRYPT
Gustavo> + select BR2_PACKAGE_NETTLE

 Gustavo>  	help
 Gustavo>  	  GnuTLS is a secure communications library implementing the SSL
 Gustavo>  	  and TLS protocols and technologies around them.

Gustavo> http://www.gnu.org/software/gnutls/gnutls.html
Gustavo> +
Gustavo> +config BR2_PACKAGE_GNUTLS_TOOLS
Gustavo> + bool "install tools"
Gustavo> + depends on BR2_PACKAGE_GNUTLS
Gustavo> + depends on BR2_USE_WCHAR
Gustavo> + help
Gustavo> + Install GnuTLS command line tools for various cryptographic tasks.

I've added a comment line about tools not available with a !WCHAR toolchain and committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard