summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEnrico Scholz <enrico.scholz@sigma-chemnitz.de>2012-11-26 15:01:16 +0000
committerMartin Jansa <Martin.Jansa@gmail.com>2012-12-26 11:45:25 +0100
commit3c21a46020bd0816579648f684c41dbd6333583e (patch)
tree80b02a809d902d8efed3a9ff26d4508e6ae9a51d
parent616c8ec151fd947439d8ef8fbe7bd2f13cab8d09 (diff)
downloadmeta-openembedded-3c21a46020bd0816579648f684c41dbd6333583e.tar.gz
meta-systemd: select recipes based on active collections
Recipes of inactivate layers must been BBMASK'ed to prevent build errors. This is very unflexible and causes high maintenance effort for keeping the project configuration in sync with the actual meta-systemd layout. With this patch, the .bbappend files within the meta-* directories are ignored unless the corresponding collection has been selected. As it relies on the order of BBFILES and BBFILE_COLLECTIONS expansion, a sanity check has been added which aborts the build when assumptions do not apply anymore. MJ: added meta-xfce as it was created later MJ: fixed expression for oe-core bbappends Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
-rw-r--r--meta-systemd/conf/layer.conf18
-rw-r--r--meta-systemd/invalid.bb2
2 files changed, 19 insertions, 1 deletions
diff --git a/meta-systemd/conf/layer.conf b/meta-systemd/conf/layer.conf
index 3310abc8a..d06cfa138 100644
--- a/meta-systemd/conf/layer.conf
+++ b/meta-systemd/conf/layer.conf
@@ -12,7 +12,23 @@
12BBPATH .= ":${LAYERDIR}" 12BBPATH .= ":${LAYERDIR}"
13 13
14# We have a recipes directory, add to BBFILES 14# We have a recipes directory, add to BBFILES
15BBFILES += "${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/*/recipes-*/*/*.bbappend" 15BBFILES += "\
16 ${LAYERDIR}/recipes-*/*/*.bb \
17 ${LAYERDIR}/oe-core/recipes-*/*/*.bbappend \
18 ${LAYERDIR}/meta-oe/recipes-*/*/*.bbappend \
19 ${@base_contains('BBFILE_COLLECTIONS', 'systemd-layer',\
20 '', '${LAYERDIR}/invalid.bb', d)} \
21 ${@base_contains('BBFILE_COLLECTIONS', 'gnome-layer',\
22 '${LAYERDIR}/meta-gnome/recipes-*/*/*.bbappend', '', d)} \
23 ${@base_contains('BBFILE_COLLECTIONS', 'efl-layer',\
24 '${LAYERDIR}/meta-efl/recipes-*/*/*.bbappend', '', d)} \
25 ${@base_contains('BBFILE_COLLECTIONS', 'multimedia-layer',\
26 '${LAYERDIR}/meta-multimedia/recipes-*/*/*.bbappend', '', d)} \
27 ${@base_contains('BBFILE_COLLECTIONS', 'networking',\
28 '${LAYERDIR}/meta-networking/recipes-*/*/*.bbappend', '', d)} \
29 ${@base_contains('BBFILE_COLLECTIONS', 'xfce-layer',\
30 '${LAYERDIR}/meta-xfce/recipes-*/*/*.bbappend', '', d)} \
31"
16 32
17BBFILE_COLLECTIONS += "systemd-layer" 33BBFILE_COLLECTIONS += "systemd-layer"
18BBFILE_PATTERN_systemd-layer := "^${LAYERDIR}/" 34BBFILE_PATTERN_systemd-layer := "^${LAYERDIR}/"
diff --git a/meta-systemd/invalid.bb b/meta-systemd/invalid.bb
new file mode 100644
index 000000000..b16787bce
--- /dev/null
+++ b/meta-systemd/invalid.bb
@@ -0,0 +1,2 @@
1Content of this file is invalid and is used by conf/layer.conf to
2ensure that BBFILES is expanded after BBFILE_COLLECTIONS.