aboutsummaryrefslogtreecommitdiffstats
path: root/meta/classes
diff options
context:
space:
mode:
authorPeter A. Bigot <pab@pabigot.com>2015-02-16 17:06:11 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-02-16 16:35:53 +0000
commit045484283530bced19bb1d3aea229c8f138f510a (patch)
tree41b94ee44d9651cda49d7960217c12c8854ddc55 /meta/classes
parentcd03ef79b50ed42b9d407ee45fc3e3321385281c (diff)
downloadopenembedded-core-045484283530bced19bb1d3aea229c8f138f510a.tar.gz
bluetooth.bbclass: simplify recipe inference of bluetooth provider
Defines ${BLUEZ} to be the provider of bluez services as specified by DISTRO_FEATURES. Example recipe fragment: inherit bluetooth PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', '${BLUEZ}', '', d)} PACKAGECONFIG[bluez4] = "--enable-bluetooth,--disable-bluetooth,bluez4" PACKAGECONFIG[bluez5] = "--enable-bluez5,--disable-bluez5,bluez5" [YOCTO #5031] Signed-off-by: Peter A. Bigot <pab@pabigot.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes')
-rw-r--r--meta/classes/bluetooth.bbclass14
1 files changed, 14 insertions, 0 deletions
diff --git a/meta/classes/bluetooth.bbclass b/meta/classes/bluetooth.bbclass
new file mode 100644
index 0000000000..f88b4ae5b8
--- /dev/null
+++ b/meta/classes/bluetooth.bbclass
@@ -0,0 +1,14 @@
+# Avoid code duplication in bluetooth-dependent recipes.
+
+# Define a variable that expands to the recipe (package) providing core
+# bluetooth support on the platform:
+# "" if bluetooth is not in DISTRO_FEATURES
+# else "bluez5" if bluez5 is in DISTRO_FEATURES
+# else "bluez4"
+
+# Use this with:
+# inherit bluetooth
+# PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', '${BLUEZ}', '', d)}
+# PACKAGECONFIG[bluez4] = "--enable-bluez4,--disable-bluez4,bluez4"
+
+BLUEZ ?= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', bb.utils.contains('DISTRO_FEATURES', 'bluez5', 'bluez5', 'bluez4', d), '', d)}"