summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2022-11-23 04:10:53 +0000
committerSam James <sam@gentoo.org>2022-11-23 04:11:04 +0000
commit157ca17038a6b956b58633204f56d7a79f6545e7 (patch)
treee15cb735e783fc1b23567ab4c5444e42d59133b6 /dev-libs/libucl
parentdev-libs/boehm-gc: Stabilize 8.2.2-r1 arm, #882395 (diff)
downloadgentoo-157ca17038a6b956b58633204f56d7a79f6545e7.tar.gz
gentoo-157ca17038a6b956b58633204f56d7a79f6545e7.tar.bz2
gentoo-157ca17038a6b956b58633204f56d7a79f6545e7.zip
dev-libs/libucl: fix build w/ openssl 1.1
Closes: https://bugs.gentoo.org/797364 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-libs/libucl')
-rw-r--r--dev-libs/libucl/files/libucl-0.8.1-openssl-1.1.1.patch39
-rw-r--r--dev-libs/libucl/libucl-0.8.1-r100.ebuild8
2 files changed, 43 insertions, 4 deletions
diff --git a/dev-libs/libucl/files/libucl-0.8.1-openssl-1.1.1.patch b/dev-libs/libucl/files/libucl-0.8.1-openssl-1.1.1.patch
new file mode 100644
index 000000000000..f10f882acc6b
--- /dev/null
+++ b/dev-libs/libucl/files/libucl-0.8.1-openssl-1.1.1.patch
@@ -0,0 +1,39 @@
+https://bugs.gentoo.org/797364
+https://github.com/vstakhov/libucl/commit/c7141327180cff73904b28f04cfdb604fc7d0773
+
+From c7141327180cff73904b28f04cfdb604fc7d0773 Mon Sep 17 00:00:00 2001
+From: Alexandru Guzinschi <alex@gentle.ro>
+Date: Fri, 11 Sep 2020 11:41:54 +0300
+Subject: [PATCH] fix: Changed OpenSSL check inside configure.am
+
+In OpenSSL 1.1.0 the `EVP_MD_CTX_create()` and `EVP_MD_CTX_destroy()`
+functions were renamed to `EVP_MD_CTX_new()` and `EVP_MD_CTX_free()`.
+Because a check for `EVP_MD_CTX_create()` was in place inside
+configure.am, building with newer OpenSSL versions could not be done.
+
+Checking for `EVP_MD_CTX_create` function from configure.am was
+replaced with a check for `CRYPTO_new_ex_data()` function.
+
+Because a [compatibility layer][1] was introduced in OpenSSL 1.1.0,
+no code changes are necessary.
+
+Fixes: #203
+
+[1]: https://github.com/openssl/openssl/blob/OpenSSL_1_1_0/include/openssl/evp.h#L500-L502
+--- a/configure.ac
++++ b/configure.ac
+@@ -73,11 +73,11 @@ AC_ARG_ENABLE([utils],
+ AM_CONDITIONAL([UTILS], [test x$utils = xtrue])
+
+ AS_IF([test "x$enable_signatures" = "xyes"], [
+- AC_SEARCH_LIBS([EVP_MD_CTX_create], [crypto], [
++ AC_SEARCH_LIBS([CRYPTO_new_ex_data], [crypto], [
+ AC_DEFINE(HAVE_OPENSSL, 1, [Define to 1 if you have the 'crypto' library (-lcrypto).])
+ LIBCRYPTO_LIB="-lcrypto"
+ LIBS_EXTRA="${LIBS_EXTRA} -lcrypto"
+- ], [AC_MSG_ERROR([unable to find the EVP_MD_CTX_create() function])])
++ ], [AC_MSG_ERROR([unable to find the CRYPTO_new_ex_data() function])])
+ ])
+ AC_SUBST(LIBCRYPTO_LIB)
+ AC_PATH_PROG(PANDOC, pandoc, [/non/existent])
+
diff --git a/dev-libs/libucl/libucl-0.8.1-r100.ebuild b/dev-libs/libucl/libucl-0.8.1-r100.ebuild
index 8b3e4c0b5cc2..7452ade35ada 100644
--- a/dev-libs/libucl/libucl-0.8.1-r100.ebuild
+++ b/dev-libs/libucl/libucl-0.8.1-r100.ebuild
@@ -35,6 +35,10 @@ RDEPEND="${DEPEND}"
DOCS=( README.md doc/api.md )
+PATCHES=(
+ "${FILESDIR}"/${P}-openssl-1.1.1.patch
+)
+
pkg_setup() {
use lua && lua_pkg_setup
}
@@ -60,10 +64,6 @@ src_configure() {
econf "${myeconfargs[@]}"
}
-src_test() {
- emake check
-}
-
src_install() {
default
use lua && DOCS+=( "doc/lua_api.md" )