summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Gilbert <floppym@gentoo.org>2021-12-25 13:19:04 -0500
committerMike Gilbert <floppym@gentoo.org>2021-12-25 13:19:04 -0500
commit9a73ceca960a687e8457fa24a382fa04ef4dc6f9 (patch)
treee25d4040156918cea4661fe1414223d09672e2c7 /sys-apps/systemd
parentdev-cpp/asio: Stabilize 1.21.0 ppc, #829973 (diff)
downloadgentoo-9a73ceca960a687e8457fa24a382fa04ef4dc6f9.tar.gz
gentoo-9a73ceca960a687e8457fa24a382fa04ef4dc6f9.tar.bz2
gentoo-9a73ceca960a687e8457fa24a382fa04ef4dc6f9.zip
sys-apps/systemd: backport build fix for USE="-dns-over-tls -gcrypt"
Closes: https://bugs.gentoo.org/829944 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
Diffstat (limited to 'sys-apps/systemd')
-rw-r--r--sys-apps/systemd/files/250-fix-openssl.patch102
-rw-r--r--sys-apps/systemd/systemd-250.ebuild1
2 files changed, 103 insertions, 0 deletions
diff --git a/sys-apps/systemd/files/250-fix-openssl.patch b/sys-apps/systemd/files/250-fix-openssl.patch
new file mode 100644
index 000000000000..520ba0b66427
--- /dev/null
+++ b/sys-apps/systemd/files/250-fix-openssl.patch
@@ -0,0 +1,102 @@
+From 9bcf483b117b23ae25bf4a5d39ddc3eade8659a6 Mon Sep 17 00:00:00 2001
+From: Yu Watanabe <watanabe.yu+github@gmail.com>
+Date: Fri, 24 Dec 2021 10:06:13 +0900
+Subject: [PATCH] meson: fix build with -Dcryptolib=openssl
+ -Ddns-over-tls=false
+
+Previously, when -Ddns-over-tls=false, libopenssl was missing in the
+dependency of resolved.
+Also, this drops libgpg_error when it is not necessary.
+
+Replaces #21878.
+---
+ meson.build | 3 +--
+ src/resolve/meson.build | 9 +--------
+ 2 files changed, 2 insertions(+), 10 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index c0cbadecb123..0b7c1918ad4c 100644
+--- a/meson.build
++++ b/meson.build
+@@ -1474,7 +1474,7 @@ conf.set10('PREFER_OPENSSL',
+ opt == 'openssl' or (opt == 'auto' and conf.get('HAVE_OPENSSL') == 1 and conf.get('HAVE_GCRYPT') == 0))
+ conf.set10('HAVE_OPENSSL_OR_GCRYPT',
+ conf.get('HAVE_OPENSSL') == 1 or conf.get('HAVE_GCRYPT') == 1)
+-lib_openssl_or_gcrypt = conf.get('PREFER_OPENSSL') == 1 ? libopenssl : libgcrypt
++lib_openssl_or_gcrypt = conf.get('PREFER_OPENSSL') == 1 ? [libopenssl] : [libgcrypt, libgpg_error]
+
+ dns_over_tls = get_option('dns-over-tls')
+ if dns_over_tls != 'false'
+@@ -2200,7 +2200,6 @@ if conf.get('ENABLE_RESOLVE') == 1
+ libsystemd_resolve_core],
+ dependencies : [threads,
+ lib_openssl_or_gcrypt,
+- libgpg_error,
+ libm,
+ libidn],
+ install_rpath : rootlibexecdir,
+diff --git a/src/resolve/meson.build b/src/resolve/meson.build
+index 0580fbeec625..2cdf24b1cbef 100644
+--- a/src/resolve/meson.build
++++ b/src/resolve/meson.build
+@@ -135,7 +135,7 @@ systemd_resolved_sources += custom_target(
+ output : 'resolved-dnssd-gperf.c',
+ command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
+
+-systemd_resolved_dependencies = [threads, libgpg_error, libm]
++systemd_resolved_dependencies = [threads, libm] + [lib_openssl_or_gcrypt]
+ if conf.get('ENABLE_DNS_OVER_TLS') == 1
+ if conf.get('DNS_OVER_TLS_USE_GNUTLS') == 1
+ systemd_resolved_sources += files(
+@@ -178,14 +178,12 @@ tests += [
+ [libsystemd_resolve_core,
+ libshared],
+ [lib_openssl_or_gcrypt,
+- libgpg_error,
+ libm]],
+
+ [['src/resolve/test-dns-packet.c'],
+ [libsystemd_resolve_core,
+ libshared],
+ [lib_openssl_or_gcrypt,
+- libgpg_error,
+ libm]],
+
+ [['src/resolve/test-resolved-etc-hosts.c',
+@@ -194,21 +192,18 @@ tests += [
+ [libsystemd_resolve_core,
+ libshared],
+ [lib_openssl_or_gcrypt,
+- libgpg_error,
+ libm]],
+
+ [['src/resolve/test-resolved-packet.c'],
+ [libsystemd_resolve_core,
+ libshared],
+ [lib_openssl_or_gcrypt,
+- libgpg_error,
+ libm]],
+
+ [['src/resolve/test-dnssec.c'],
+ [libsystemd_resolve_core,
+ libshared],
+ [lib_openssl_or_gcrypt,
+- libgpg_error,
+ libm],
+ [], 'HAVE_OPENSSL_OR_GCRYPT'],
+
+@@ -216,7 +211,6 @@ tests += [
+ [libsystemd_resolve_core,
+ libshared],
+ [lib_openssl_or_gcrypt,
+- libgpg_error,
+ libm],
+ [], '', 'manual'],
+ ]
+@@ -226,6 +220,5 @@ fuzzers += [
+ [libsystemd_resolve_core,
+ libshared],
+ [lib_openssl_or_gcrypt,
+- libgpg_error,
+ libm]],
+ ]
diff --git a/sys-apps/systemd/systemd-250.ebuild b/sys-apps/systemd/systemd-250.ebuild
index bc4018c9efa4..26dc346527a3 100644
--- a/sys-apps/systemd/systemd-250.ebuild
+++ b/sys-apps/systemd/systemd-250.ebuild
@@ -237,6 +237,7 @@ src_prepare() {
# Add local patches here
PATCHES+=(
+ "${FILESDIR}"/250-fix-openssl.patch
)
if ! use vanilla; then