diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2016-10-13 10:42:46 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2016-10-13 10:44:48 +0000 |
commit | a7c00d7683eb7f886c49b05f1c2b553b800e4e5d (patch) | |
tree | 4d66d6f433df748f092702fdb33f31d9f4cbf3f7 /community/xmlsec | |
parent | 0ba2e417b2f88fd3ce772b8eb56b41425c1ba658 (diff) | |
download | aports-a7c00d7683eb7f886c49b05f1c2b553b800e4e5d.tar.bz2 aports-a7c00d7683eb7f886c49b05f1c2b553b800e4e5d.tar.xz |
community/xmlsec: fix detection of libressl
this is a workaround for https://github.com/lsh123/xmlsec/issues/48
We also make sure that we keep the .la files as they are needed to load
the openssl driver.
Diffstat (limited to 'community/xmlsec')
-rw-r--r-- | community/xmlsec/APKBUILD | 17 | ||||
-rw-r--r-- | community/xmlsec/libressl.patch | 67 |
2 files changed, 79 insertions, 5 deletions
diff --git a/community/xmlsec/APKBUILD b/community/xmlsec/APKBUILD index b459295f94..a5d4250959 100644 --- a/community/xmlsec/APKBUILD +++ b/community/xmlsec/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Sander Maijers <S.N.Maijers+Alpine@gmail.com> pkgname='xmlsec' pkgver='1.2.22' -pkgrel=2 +pkgrel=3 pkgdesc="Provides a C based implementation for XML Signature Syntax and Processing and XML Encryption Syntax and Processing." url="https://github.com/lsh123/${pkgname}/" arch="all" @@ -11,12 +11,15 @@ depends="" depends_dev= makedepends="${depends_dev} libxml2-dev libxslt-dev libressl-dev autoconf automake libtool" install= +options="libtool" subpackages="${pkgname}-dev ${pkgname}-doc" -source="${url}/archive/${pkgname}-${pkgver//./_}.tar.gz" +source="${url}/archive/${pkgname}-${pkgver//./_}.tar.gz + libressl.patch" builddir="${srcdir}/${pkgname}-${pkgname}-${pkgver//./_}" prepare() { cd "${builddir}" + default_prepare || return 1 ./autogen.sh } @@ -28,6 +31,7 @@ build() { --prefix='/usr' \ --disable-static \ --enable-pkgconfig \ + --with-openssl=/usr \ --with-default-crypto='openssl' \ || return 1 make || return 1 @@ -47,6 +51,9 @@ package() { || return 1 } -md5sums="b0bdaeee4cb39bfe56f2d28bae17faa8 xmlsec-1_2_22.tar.gz" -sha256sums="f04da7bb6e20e9b9b7a39bb64cfad6836c665cfa6e14f6316fc24fcac6cbac06 xmlsec-1_2_22.tar.gz" -sha512sums="f03b2dd9fdd9152e4a13466bf71018a2ef5290425019d7576a6f9e9e40bd30b9e6c1895a1ba65cc819dd56a86ea1c6c47142250c6e0695d5c02d4e0322bd8b67 xmlsec-1_2_22.tar.gz" +md5sums="b0bdaeee4cb39bfe56f2d28bae17faa8 xmlsec-1_2_22.tar.gz +6fdbe893a933da04e8842a46df2e695f libressl.patch" +sha256sums="f04da7bb6e20e9b9b7a39bb64cfad6836c665cfa6e14f6316fc24fcac6cbac06 xmlsec-1_2_22.tar.gz +2dd03f3e3c9ea256012a1b000d82e774f1bcac5bb7adc6bcb86d9cfbf36bc2cb libressl.patch" +sha512sums="f03b2dd9fdd9152e4a13466bf71018a2ef5290425019d7576a6f9e9e40bd30b9e6c1895a1ba65cc819dd56a86ea1c6c47142250c6e0695d5c02d4e0322bd8b67 xmlsec-1_2_22.tar.gz +fabc3a3713bc3b7060ca607dbffc094edd31b8e25acefd26706635b38abadbdcc171a4abcb48f1c79876e548bc1370996d92ba718ebd898ce5d73522c2897a69 libressl.patch" diff --git a/community/xmlsec/libressl.patch b/community/xmlsec/libressl.patch new file mode 100644 index 0000000000..21dc892688 --- /dev/null +++ b/community/xmlsec/libressl.patch @@ -0,0 +1,67 @@ +From e834054c1a6adcc927c34c803eb22c24db69fd76 Mon Sep 17 00:00:00 2001 +From: Bernard Spil <brnrd@FreeBSD.org> +Date: Sat, 8 Oct 2016 12:58:37 +0200 +Subject: [PATCH] configure: Fix LibreSSL version detection + + - LibreSSL: + * defines OPENSSL_VERSION_NUMBER as 0x20000000L + * deFines LIBRESS_VERSION_NUMBER in opensslv.h + * was forked from 1.0.1f / 0x1000107fL + +PR: https://bugs.freebsd.org/213301 +Reported by: Michael Gmelin <grembo@freebsd.org> +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index ab69e16..94caf5f 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -495,7 +495,7 @@ if test "z$OPENSSL_FOUND" = "zyes" -a "z$OPENSSL_VERSION" = "z" ; then + if test "z$OPENSSL_VERSION" = "z" ; then + AC_EGREP_CPP(yes,[ + #include <openssl/opensslv.h> +- #if OPENSSL_VERSION_NUMBER >= 0x10100000L ++ #if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) + yes + #endif + ],[ +From 51f5a3775dd51aeb13e50e8a428b0f40ab060d48 Mon Sep 17 00:00:00 2001 +From: Eric Sproul <esproul@omniti.com> +Date: Tue, 31 May 2016 17:19:15 +0000 +Subject: [PATCH] Fix mismatched conditional for XMLSEC_NO_ECDSA + +Without this fix, we fail to compile on CentOS 6.x which lacks ECDSA +support. +--- + src/openssl/signatures.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/openssl/signatures.c b/src/openssl/signatures.c +index 5cb6f7b..95d3691 100644 +--- a/src/openssl/signatures.c ++++ b/src/openssl/signatures.c +@@ -31,7 +31,7 @@ + #define EVP_MD_CTX_free(x) EVP_MD_CTX_destroy((x)) + #define EVP_MD_CTX_md_data(x) ((x)->md_data) + +-#ifndef XMLSEC_NO_DSA ++#ifndef XMLSEC_NO_ECDSA + /* we expect the r/s to be NOT NULL */ + static void ECDSA_SIG_get0(BIGNUM **pr, BIGNUM **ps, ECDSA_SIG *sig) { + if (pr != NULL) { +--- a/src/openssl/app.c.orig Wed Apr 20 17:26:22 2016 ++++ b/src/openssl/app.c Sat Sep 3 14:33:48 2016 +@@ -1487,11 +1487,6 @@ xmlSecOpenSSLAppLoadRANDFile(const char *file) { + + if(file == NULL) { + file = RAND_file_name(buffer, sizeof(buffer)); +- }else if(RAND_egd(file) > 0) { +- /* we try if the given filename is an EGD socket. +- * if it is, we don't write anything back to the file. */ +- egdsocket = 1; +- return 1; + } + + if((file == NULL) || !RAND_load_file(file, -1)) { |