[OE-core] [oe-core][systemd][PATCH] some dependencies in systemd seem not to be taken into account in systemd_229.bb
Herve Jourdain
herve.jourdain at neuf.fr
Mon Mar 7 10:42:17 UTC 2016
Systemd: - RESOLVED depends on GCRYPT, so GCRYPT should be enabled if
RESOLVED is enabled
- ${PN}-binfmt should be added to SYSTEMD_PACKAGES only if
binfmt is enabled
Without this patch, build fails when gcrypt is not in PACKAGECONFIG, but
resolved is, or when binfmt is not in PACKAGECONFIG.
Signed-off-by: Herve Jourdain <herve.jourdain at neuf.fr
<mailto:herve.jourdain at neuf.fr> >
---
diff --git a/meta/recipes-core/systemd/systemd_229.bb
b/meta/recipes-core/systemd/systemd_229.bb
index 16af0ac..6523e0a 100644
--- a/meta/recipes-core/systemd/systemd_229.bb
+++ b/meta/recipes-core/systemd/systemd_229.bb
@@ -97,11 +97,13 @@ PACKAGECONFIG_remove_libc-musl = "smack"
PACKAGECONFIG[journal-upload] = "--enable-libcurl,--disable-libcurl,curl"
# Sign the journal for anti-tampering
-PACKAGECONFIG[gcrypt] = "--enable-gcrypt,--disable-gcrypt,libgcrypt"
+# RESOLVED depends on GCRYPT, so disable gcrypt only if resolved and gcrypt
are NOT part of PACKAGECONFIG - done in EXTRA_OECONF
+PACKAGECONFIG[gcrypt] = "--enable-gcrypt,,libgcrypt"
PACKAGECONFIG[cryptsetup] =
"--enable-libcryptsetup,--disable-libcryptsetup,cryptsetup"
PACKAGECONFIG[microhttpd] =
"--enable-microhttpd,--disable-microhttpd,libmicrohttpd"
PACKAGECONFIG[elfutils] = "--enable-elfutils,--disable-elfutils,elfutils"
-PACKAGECONFIG[resolved] = "--enable-resolved,--disable-resolved"
+# RESOLVED depends on GCRYPT, so enable gcrypt any time resolved is in
PACKAGECONFIG
+PACKAGECONFIG[resolved] = "--enable-resolved
--enable-gcrypt,--disable-resolved,libgcrypt"
PACKAGECONFIG[networkd] = "--enable-networkd,--disable-networkd"
PACKAGECONFIG[machined] = "--enable-machined,--disable-machined"
PACKAGECONFIG[backlight] = "--enable-backlight,--disable-backlight"
@@ -180,6 +182,9 @@ EXTRA_OECONF = " --with-rootprefix=${rootprefix} \
--with-firmware-path=/lib/firmware \
--with-testdir=${PTEST_PATH} \
"
+# RESOLVED depends on GCRYPT, so disable gcrypt only if resolved and gcrypt
are NOT part of PACKAGECONFIG
+EXTRA_OECONF += "${@bb.utils.contains_any('PACKAGECONFIG', 'resolved
gcrypt', '', '--disable-gcrypt', d)}
<mailto:$%7b at bb.utils.contains_any('PACKAGECONFIG',%20'resolved%20gcrypt',%2
0'',%20'--disable-gcrypt',%20d)%7d> "
+
# per the systemd README, define VALGRIND=1 to run under valgrind
CFLAGS .= "${@bb.utils.contains('PACKAGECONFIG', 'valgrind', '
-DVALGRIND=1', '', d)}
<mailto:$%7b at bb.utils.contains('PACKAGECONFIG',%20'valgrind',%20'%20-DVALGRI
ND=1',%20'',%20d)%7d> "
@@ -196,6 +201,10 @@ do_configure_prepend() {
else
cp -r ${S}/units ${S}/units.pre_sed
fi
+ if [ ${@bb.utils.contains('PACKAGECONFIG
<mailto:$%7b at bb.utils.contains('PACKAGECONFIG> ', 'resolved', 'true',
'false', d)} -a \
+ ! ${@bb.utils.contains('PACKAGECONFIG
<mailto:$%7b at bb.utils.contains('PACKAGECONFIG> ', 'gcrypt', 'true', 'false',
d)} ]; then
+ PACKAGECONFIG_append = "gcrypt"
+ fi
}
do_install() {
@@ -298,8 +307,10 @@ PACKAGES =+ "\
${PN}-extra-utils \
"
-SYSTEMD_PACKAGES = "${PN}-binfmt"
-SYSTEMD_SERVICE_${PN}-binfmt = "systemd-binfmt.service"
+#SYSTEMD_PACKAGES = "${PN}-binfmt"
+#SYSTEMD_SERVICE_${PN}-binfmt = "systemd-binfmt.service"
+SYSTEMD_PACKAGES = "${@bb.utils.contains('PACKAGECONFIG', 'binfmt',
'${PN}-binfmt', '', d)}
<mailto:$%7b at bb.utils.contains('PACKAGECONFIG',%20'binfmt',%20'$%7bPN%7d-bin
fmt',%20'',%20d)%7d> "
+SYSTEMD_SERVICE_${PN}-binfmt = "${@bb.utils.contains('PACKAGECONFIG',
'binfmt', 'systemd-binfmt.service', '', d)}
<mailto:$%7b at bb.utils.contains('PACKAGECONFIG',%20'binfmt',%20'systemd-binfm
t.service',%20'',%20d)%7d> "
USERADD_PACKAGES = "${PN}"
USERADD_PARAM_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'microhttpd',
'--system -d / -M --shell /bin/nologin systemd-journal-gateway;', '', d)}
<mailto:$%7b at bb.utils.contains('PACKAGECONFIG',%20'microhttpd',%20'--system%
20-d%20/%20-M%20--shell%20/bin/nologin%20systemd-journal-gateway;',%20'',%20
d)%7d> "
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20160307/7884cf3f/attachment-0002.html>
More information about the Openembedded-core
mailing list