From ca053f148269719ae9e1f073d21c2734a02eb9ca Mon Sep 17 00:00:00 2001 From: Chris Larson Date: Fri, 10 Jul 2009 11:27:31 -0700 Subject: Let the distro control whether we include hostap or madwifi. - Add base_ifelse convenience function to base.bbclass. - Replace all conditionals in the recipes relating to hostap and madwifi to look for their name in COMBINED_FEATURES rather than looking for specific buses (pci, pcmcia). - Change the default COMBINED_FEATURES to enable: - madwifi, when: - 'pci', 'wifi', and 'madwifi' are in distro features - 'pci' is in machine features - hostap, when: - 'wifi' and 'hostap' are in distro features - either 'pci' or 'pcmcia' are in both distro and machine features Signed-off-by: Chris Larson --- conf/bitbake.conf | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'conf/bitbake.conf') diff --git a/conf/bitbake.conf b/conf/bitbake.conf index 8b6956453b..a3c475f47b 100644 --- a/conf/bitbake.conf +++ b/conf/bitbake.conf @@ -715,3 +715,22 @@ COMBINED_FEATURES = "\ ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "usbgadget", d)} \ ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "usbhost", d)} \ ${@base_both_contain("DISTRO_FEATURES", "MACHINE_FEATURES", "wifi", d)}" + +# We want madwifi if all of the following are true: +# - 'pci', 'wifi', and 'madwifi' are in distro features +# - 'pci' is in machine features +COMBINED_FEATURES += "${@base_ifelse( \ + base_contains('DISTRO_FEATURES', ('pci', 'wifi', 'madwifi'), True, False, d) and \ + base_contains('MACHINE_FEATURES', 'pci', True, False, d), \ + 'madwifi', '')}" + +# We want hostap if all of the following are true: +# - 'wifi' and 'hostap' are in distro features +# - either 'pci' or 'pcmcia' are in both distro and machine features +COMBINED_FEATURES += "${@base_ifelse( \ + base_contains('DISTRO_FEATURES', ('wifi', 'hostap'), True, False, d) and \ + ((base_contains('MACHINE_FEATURES', 'pci', True, False, d) and \ + base_contains('DISTRO_FEATURES', 'pci', True, False, d)) or \ + (base_contains('MACHINE_FEATURES', 'pcmcia', True, False, d) and \ + base_contains('DISTRO_FEATURES', 'pcmcia', True, False, d))), \ + 'hostap', '')}" -- cgit 1.2.3-korg