[OE-core] [oe-core][systemd][PATCH] some dependencies in systemd seem not to be taken into account in systemd_229.bb
Anders Darander
anders at chargestorm.se
Mon Mar 7 11:47:09 UTC 2016
(Resending as it didn't go to the list).
Thanks!
I've just ran into this myself this morning.
A few comments are inlined.
* Herve Jourdain <herve.jourdain at neuf.fr> [160307 11:51]:
> # Sign the journal for anti-tampering
> -PACKAGECONFIG[gcrypt] = "--enable-gcrypt,--disable-gcrypt,libgcrypt"
Please, keep this line as it is. If gcrypt isn't enabled, we need to
pass --disable-gcrypt. Tnus, it should be part of this line.
> +# RESOLVED depends on GCRYPT, so disable gcrypt only if resolved and gcrypt
> are NOT part of PACKAGECONFIG - done in EXTRA_OECONF
Remove the comment.
> +PACKAGECONFIG[gcrypt] = "--enable-gcrypt,,libgcrypt"
As above, keep the original line.
> -PACKAGECONFIG[resolved] = "--enable-resolved,--disable-resolved"
> +# RESOLVED depends on GCRYPT, so enable gcrypt any time resolved is in
> PACKAGECONFIG
Either keep this comment, and keep enabling gcrypt.
Though, I'd prefer to follow the precedence of importd, and just have
the comment stating what you need to enable.
> +PACKAGECONFIG[resolved] = "--enable-resolved
> --enable-gcrypt,--disable-resolved,libgcrypt"
No, don't add --enable-gcrypt to the resolved PACKAGECONFIG.
> +# 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> "
Skip this part.
> + 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
Isn't this too late? (I've not runtime tested this).
If you go the route of modifying PACKAGECONFIG automatically, I'd prefer
an anonymous python funtion doing this at the recipe processing stage.
> -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> "
This looks good, but should probably be a separate patch.
Cheers,
Anders
--
Anders Darander, Senior System Architect
ChargeStorm AB / eStorm AB
More information about the Openembedded-core
mailing list