summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndre McCurdy <armccurdy@gmail.com>2017-11-01 15:08:37 -0700
committerArmin Kuster <akuster808@gmail.com>2017-11-15 16:34:05 -0800
commit222091bdc218a19a6643a62f70be6cac3371a683 (patch)
tree9a18de2dc984554903894099bd50294b292af73d
parent0c31b49526028606d09417dc87d180006b8938df (diff)
downloadmeta-openembedded-222091bdc218a19a6643a62f70be6cac3371a683.tar.gz
iksemel: reinstate recipe with build fixes and update 1.4 -> 1.5
The recipe for iksemel 1.4 was blacklisted and eventually removed as it depended on an older version of gnutls which was no longer available in oe-core. Reinstate iksemel with a new recipe for iksemel 1.5, which can use either openssl or gnutls for TLS support. Fix build issues. Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Armin Kuster <akuster808@gmail.com>
-rw-r--r--meta-oe/recipes-support/iksemel/iksemel/avoid-obsolete-gnutls-apis.patch55
-rw-r--r--meta-oe/recipes-support/iksemel/iksemel/fix-configure-option-parsing.patch62
-rw-r--r--meta-oe/recipes-support/iksemel/iksemel_1.5.bb24
3 files changed, 141 insertions, 0 deletions
diff --git a/meta-oe/recipes-support/iksemel/iksemel/avoid-obsolete-gnutls-apis.patch b/meta-oe/recipes-support/iksemel/iksemel/avoid-obsolete-gnutls-apis.patch
new file mode 100644
index 000000000..41fccc3ab
--- /dev/null
+++ b/meta-oe/recipes-support/iksemel/iksemel/avoid-obsolete-gnutls-apis.patch
@@ -0,0 +1,55 @@
1From 7136a908a056d0e36c89b6e1c39adff8ce2bb1d4 Mon Sep 17 00:00:00 2001
2From: Andre McCurdy <armccurdy@gmail.com>
3Date: Wed, 1 Nov 2017 13:17:34 -0700
4Subject: [PATCH] avoid obsolete gnutls apis
5
6The gnutls_*_set_priority() family of functions was marked deprecated
7in gnutls 2.12.x and removed completely in 3.5.x. These functions
8have been superceded by gnutls_priority_set_direct(), which was added
9in gnutls 2.2.0 (released 2007-12-14).
10
11Rather than simply update the custom gnutls_*_set_priority() calls to
12use gnutls_priority_set_direct(), drop the custom priority selection
13completely and use the recommended approach of letting gnutls pick a
14reasonable set of defaults.
15
16Upstream-Status: Pending
17
18Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
19---
20 src/tls-gnutls.c | 12 ++----------
21 1 file changed, 2 insertions(+), 10 deletions(-)
22
23diff --git a/src/tls-gnutls.c b/src/tls-gnutls.c
24index d7b7c91..749e9ef 100644
25--- a/src/tls-gnutls.c
26+++ b/src/tls-gnutls.c
27@@ -48,11 +48,6 @@ tls_pull (struct ikstls_data *data, char *buffer, size_t len)
28 static int
29 tls_handshake (struct ikstls_data **datap, ikstransport *trans, void *sock)
30 {
31- const int protocol_priority[] = { GNUTLS_TLS1, GNUTLS_SSL3, 0 };
32- const int kx_priority[] = { GNUTLS_KX_RSA, 0 };
33- const int cipher_priority[] = { GNUTLS_CIPHER_3DES_CBC, GNUTLS_CIPHER_ARCFOUR, 0};
34- const int comp_priority[] = { GNUTLS_COMP_ZLIB, GNUTLS_COMP_NULL, 0 };
35- const int mac_priority[] = { GNUTLS_MAC_SHA, GNUTLS_MAC_MD5, 0 };
36 struct ikstls_data *data;
37 int ret;
38
39@@ -81,11 +76,8 @@ tls_handshake (struct ikstls_data **datap, ikstransport *trans, void *sock)
40 return IKS_NOMEM;
41 }
42
43- gnutls_protocol_set_priority (data->sess, protocol_priority);
44- gnutls_cipher_set_priority(data->sess, cipher_priority);
45- gnutls_compression_set_priority(data->sess, comp_priority);
46- gnutls_kx_set_priority(data->sess, kx_priority);
47- gnutls_mac_set_priority(data->sess, mac_priority);
48+ gnutls_set_default_priority (data->sess);
49+
50 gnutls_credentials_set (data->sess, GNUTLS_CRD_CERTIFICATE, data->cred);
51
52 gnutls_transport_set_push_function (data->sess, (gnutls_push_func) tls_push);
53--
541.9.1
55
diff --git a/meta-oe/recipes-support/iksemel/iksemel/fix-configure-option-parsing.patch b/meta-oe/recipes-support/iksemel/iksemel/fix-configure-option-parsing.patch
new file mode 100644
index 000000000..05accdd9c
--- /dev/null
+++ b/meta-oe/recipes-support/iksemel/iksemel/fix-configure-option-parsing.patch
@@ -0,0 +1,62 @@
1From 17a5cf8f70b86d8a2195562e2d9dcccb4fa35c83 Mon Sep 17 00:00:00 2001
2From: Andre McCurdy <armccurdy@gmail.com>
3Date: Tue, 31 Oct 2017 20:05:58 -0700
4Subject: [PATCH] fix configure option parsing
5
6Don't over-write with_openssl etc by trying to set to $enablevar
7
8Upstream-Status: Pending
9
10Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
11---
12 configure.ac | 14 +++++++-------
13 1 file changed, 7 insertions(+), 7 deletions(-)
14
15diff --git a/configure.ac b/configure.ac
16index 82e6d2d..823e6c1 100644
17--- a/configure.ac
18+++ b/configure.ac
19@@ -56,17 +56,17 @@ fi
20 dnl Options for overriding TLS checks
21 AC_ARG_WITH([openssl],
22 AS_HELP_STRING([--without-openssl],[disable checking for openssl]),
23- [with_openssl=$enableval],
24- [with_openssl=yes]
25+ [],
26+ [with_openssl=auto]
27 )
28 AC_ARG_WITH([gnutls],
29 AS_HELP_STRING([--without-gnutls],[disable checking for GNU TLS]),
30- [with_gnutls=$enableval],
31- [with_gnutls=yes]
32+ [],
33+ [with_gnutls=auto]
34 )
35
36 dnl Check OpenSSL
37-if test "x$with_openssl" = "xyes"; then
38+if test "x$with_openssl" != "xno"; then
39 PKG_CHECK_MODULES([OPENSSL], openssl >= 0.9.8, have_openssl=yes, have_openssl=no)
40 if test "x$have_openssl" = "xyes"; then
41 LIBOPENSSL_CFLAGS="$OPENSSL_CFLAGS"
42@@ -78,7 +78,7 @@ if test "x$with_openssl" = "xyes"; then
43 fi
44
45 dnl Check GNU TLS
46-if test "x$with_gnutls" = "xyes"; then
47+if test "x$with_gnutls" != "xno"; then
48 if test "x$have_openssl" != "xyes"; then
49 PKG_CHECK_MODULES([GNUTLS], gnutls >= 2.0.0, have_gnutls=yes, have_gnutls=no)
50 if test "x$have_gnutls" = "xyes"; then
51@@ -94,7 +94,7 @@ fi
52 dnl Option for overriding Python check
53 AC_ARG_ENABLE([python],
54 AS_HELP_STRING([--disable-python],[disable checking for Python bindings]),
55- [with_python=$enableval],
56+ [],
57 [with_python=yes]
58 )
59
60--
611.9.1
62
diff --git a/meta-oe/recipes-support/iksemel/iksemel_1.5.bb b/meta-oe/recipes-support/iksemel/iksemel_1.5.bb
new file mode 100644
index 000000000..0903e90d7
--- /dev/null
+++ b/meta-oe/recipes-support/iksemel/iksemel_1.5.bb
@@ -0,0 +1,24 @@
1SUMMARY = "Fast and portable XML parser and Jabber protocol library"
2HOMEPAGE = "https://github.com/meduketto/iksemel"
3SECTION = "libs"
4LICENSE = "LGPLv2.1"
5LIC_FILES_CHKSUM = "file://COPYING;md5=d8045f3b8f929c1cb29a1e3fd737b499"
6
7SRCREV = "978b733462e41efd5db72bc9974cb3b0d1d5f6fa"
8PV = "1.5+git${SRCPV}"
9
10SRC_URI = "git://github.com/meduketto/iksemel.git;protocol=https \
11 file://fix-configure-option-parsing.patch \
12 file://avoid-obsolete-gnutls-apis.patch"
13
14S = "${WORKDIR}/git"
15
16inherit autotools pkgconfig lib_package
17
18# TLS support requires either openssl or gnutls (if both are enabled openssl will be used).
19PACKAGECONFIG ?= "gnutls"
20
21PACKAGECONFIG[gnutls] = "--with-gnutls,--without-gnutls,gnutls"
22PACKAGECONFIG[openssl] = "--with-openssl,--without-openssl,openssl"
23
24EXTRA_OECONF = "--disable-python"