summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-arch/libarchive')
-rw-r--r--app-arch/libarchive/files/libarchive-3.3.1-libressl.patch22
-rw-r--r--app-arch/libarchive/libarchive-3.3.1.ebuild4
2 files changed, 26 insertions, 0 deletions
diff --git a/app-arch/libarchive/files/libarchive-3.3.1-libressl.patch b/app-arch/libarchive/files/libarchive-3.3.1-libressl.patch
new file mode 100644
index 000000000000..8078bc09210d
--- /dev/null
+++ b/app-arch/libarchive/files/libarchive-3.3.1-libressl.patch
@@ -0,0 +1,22 @@
+--- a/libarchive/archive_openssl_evp_private.h
++++ b/libarchive/archive_openssl_evp_private.h
+@@ -28,7 +28,7 @@
+ #include <openssl/evp.h>
+ #include <openssl/opensslv.h>
+
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+ #include <stdlib.h> /* malloc, free */
+ #include <string.h> /* memset */
+ static inline EVP_MD_CTX *EVP_MD_CTX_new(void)
+--- a/libarchive/archive_openssl_hmac_private.h
++++ b/libarchive/archive_openssl_hmac_private.h
+@@ -28,7 +28,7 @@
+ #include <openssl/hmac.h>
+ #include <openssl/opensslv.h>
+
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
+ #include <stdlib.h> /* malloc, free */
+ #include <string.h> /* memset */
+ static inline HMAC_CTX *HMAC_CTX_new(void)
diff --git a/app-arch/libarchive/libarchive-3.3.1.ebuild b/app-arch/libarchive/libarchive-3.3.1.ebuild
index 48ed2be6dd92..a7a6d960e76f 100644
--- a/app-arch/libarchive/libarchive-3.3.1.ebuild
+++ b/app-arch/libarchive/libarchive-3.3.1.ebuild
@@ -35,6 +35,10 @@ DEPEND="${RDEPEND}
e2fsprogs? ( sys-fs/e2fsprogs )
)"
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.3.1-libressl.patch
+)
+
src_prepare() {
default
elibtoolize # is required for Solaris sol2_ld linker fix