From e8dac3cddae90f41d503bf0506f880fc19f6d7b7 Mon Sep 17 00:00:00 2001 From: José Bollo Date: Tue, 13 Aug 2019 14:39:15 +0200 Subject: dbus-cynara: Simplifies build recipe MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Simplifies the way of building dbus-cynara by removing the specific recipes in favour of a recipe for dbus that handles the class-target build feature. It requires to remove fake dependencies of cynara. This is a suggestion of Tom Rini. Bug-AGL: SPEC-1839 Change-Id: Id7a736eb4b73cdb679fa9dde30e9ad8e56c2894e Signed-off-by: José Bollo --- .../dbus-cynara/dbus-cynara_1.12.10.bb | 42 ---------------------- .../recipes-core/dbus-cynara/dbus_%.bbappend | 37 ------------------- .../recipes-core/dbus-cynara/dbus_1.12.10.bbappend | 13 +++++++ 3 files changed, 13 insertions(+), 79 deletions(-) delete mode 100644 meta-security/recipes-core/dbus-cynara/dbus-cynara_1.12.10.bb delete mode 100644 meta-security/recipes-core/dbus-cynara/dbus_%.bbappend create mode 100644 meta-security/recipes-core/dbus-cynara/dbus_1.12.10.bbappend (limited to 'meta-security/recipes-core/dbus-cynara') diff --git a/meta-security/recipes-core/dbus-cynara/dbus-cynara_1.12.10.bb b/meta-security/recipes-core/dbus-cynara/dbus-cynara_1.12.10.bb deleted file mode 100644 index c54c594be..000000000 --- a/meta-security/recipes-core/dbus-cynara/dbus-cynara_1.12.10.bb +++ /dev/null @@ -1,42 +0,0 @@ -require ${COREBASE}/meta/recipes-core/dbus/dbus_1.12.10.bb - -FILESEXTRAPATHS_prepend := "${COREBASE}/meta/recipes-core/dbus/dbus:${THISDIR}/dbus-cynara:" -S = "${WORKDIR}/dbus-${PV}" - -SRC_URI_append = "\ - file://0001-Integration-of-Cynara-asynchronous-security-checks.patch \ - file://0002-Disable-message-dispatching-when-send-rule-result-is.patch \ - file://0003-Handle-unavailability-of-policy-results-for-broadcas.patch \ - file://0004-Add-own-rule-result-unavailability-handling.patch \ - file://0005-Perform-Cynara-runtime-policy-checks-by-default.patch \ - file://0006-Fix-gcc-8-warnings.patch \ -" - -DEPENDS += "cynara smack" -RDEPENDS_${PN} += "dbus" - -EXTRA_OECONF += "--enable-cynara --disable-selinux" - -inherit distro_features_check -REQUIRED_DISTRO_FEATURES += "smack" - -# Only the main package gets created here, everything else remains in the -# normal dbus recipe. -do_install_append () { - for i in ${@' '.join([d.getVar('D', True) + x for x in (' '.join([d.getVar('FILES_${PN}-' + p, True) or '' for p in ['lib', 'dev', 'staticdev', 'doc', 'locale', 'ptest']])).split()])}; do - rm -rf $i - done - - # Try to remove empty directories, starting with the - # longest path (= deepest directory) first. - # Find needs a valid current directory. Somehow the directory - # we get called in is gone by the time that we get invoked. - ( cd ${D} - for i in `find . -type d | sort -r`; do - rmdir $i || true - done - ) -} - -# Avoid warning about dbus and dbus-cynara providing dbus-x11. -RPROVIDES_${PN}_remove = "${OLDPKGNAME}" diff --git a/meta-security/recipes-core/dbus-cynara/dbus_%.bbappend b/meta-security/recipes-core/dbus-cynara/dbus_%.bbappend deleted file mode 100644 index 2923c5c18..000000000 --- a/meta-security/recipes-core/dbus-cynara/dbus_%.bbappend +++ /dev/null @@ -1,37 +0,0 @@ -FILESEXTRAPATHS_prepend := "${THISDIR}/dbus-cynara:" - -SRC_URI_append = "\ - file://0001-Integration-of-Cynara-asynchronous-security-checks.patch \ - file://0002-Disable-message-dispatching-when-send-rule-result-is.patch \ - file://0003-Handle-unavailability-of-policy-results-for-broadcas.patch \ - file://0004-Add-own-rule-result-unavailability-handling.patch \ - file://0005-Perform-Cynara-runtime-policy-checks-by-default.patch \ -" - -# Optionally, compilation of the main package with the daemon gets moved into -# dbus-cynara. That is necessary to break a dependency cycle once the -# daemon gets compiled with Cynara support (dbus -> cynara -> systemd -# -> dbus). -do_install_append_class-target () { - if ${@bb.utils.contains('DISTRO_FEATURES', 'dbus-cynara', 'true', 'false', d)}; then - for i in ${@' '.join([d.getVar('D', True) + x for x in (d.getVar('FILES_${PN}', True) or '').split()])}; do - rm -rf $i - done - - # Try to remove empty directories, starting with the - # longest path (= deepest directory) first. - # Find needs a valid current directory. Somehow the directory - # we get called in is gone by the time that we get invoked. - ( cd ${D} - for i in `find . -type d | sort -r`; do - rmdir $i || true - done - ) - fi -} - -# The main package will be empty, but we want to have it created -# anyway because of the dependencies on it. Installing it will pull in -# the replacement dbus-cynara package. -ALLOW_EMPTY_${PN}_class-target = "1" -RDEPENDS_${PN}_append_class-target = "${@bb.utils.contains('DISTRO_FEATURES', 'dbus-cynara', ' dbus-cynara', '', d)}" diff --git a/meta-security/recipes-core/dbus-cynara/dbus_1.12.10.bbappend b/meta-security/recipes-core/dbus-cynara/dbus_1.12.10.bbappend new file mode 100644 index 000000000..c8f7b5d53 --- /dev/null +++ b/meta-security/recipes-core/dbus-cynara/dbus_1.12.10.bbappend @@ -0,0 +1,13 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/dbus-cynara:" + +SRC_URI_append_class-target = "\ + file://0001-Integration-of-Cynara-asynchronous-security-checks.patch \ + file://0002-Disable-message-dispatching-when-send-rule-result-is.patch \ + file://0003-Handle-unavailability-of-policy-results-for-broadcas.patch \ + file://0004-Add-own-rule-result-unavailability-handling.patch \ + file://0005-Perform-Cynara-runtime-policy-checks-by-default.patch \ +" + +DEPENDS_append_class-target = " cynara smack" +EXTRA_OECONF_append_class-target = " ${@bb.utils.contains('DISTRO_FEATURES','smack','--enable-cynara --disable-selinux','',d)}" + -- cgit 1.2.3-korg