Re: [PATCH 2/2] base: make feature backfilling happen earlier

Phil Blundell
2013-01-28T15:42:01Z

On Mon, 2013-01-28 at 15:52 +0100, Enrico Scholz wrote:
> There are some implicit relations between features (e.g. when selecting
> 'usbhost' I *usually* want 'vfat' or 'ext2' support too). So I have
>
> DISTRO_FEATURES_BACKFILL = "\
> largefile nfsroot modules ld-is-gold ${PROJECT_FEATURES} \
> ${DISTRO_FEATURES_INITMAN} \
> ${@base_contains('PROJECT_FEATURES', 'alsa', 'sound', '', d)} \
> ${@base_contains('PROJECT_FEATURES', 'directfb', 'screen', '', d)} \
> ${@base_contains('PROJECT_FEATURES', 'fb', 'screen', '', d)} \
> ${@base_contains('PROJECT_FEATURES', 'mmc', 'ext2 vfat', '', d)} \
> ${@base_contains('PROJECT_FEATURES', 'touchscreen', 'screen', '', d)} \
> ${@base_contains('PROJECT_FEATURES', 'ubifs', 'mtd', '', d)} \
> ${@base_contains('PROJECT_FEATURES', 'jffs2', 'mtd', '', d)} \
> ${@base_contains('PROJECT_FEATURES', 'usbclient', 'usb usbgadget', '', d)} \
> ${@base_contains('PROJECT_FEATURES', 'usbgadget', 'usb usbclient', '', d)} \
> ${@base_contains('PROJECT_FEATURES', 'usbhost', 'ext2 vfat', '', d)} \
> ${@base_contains('PROJECT_FEATURES', 'usbhost', 'usb', '', d)} \
> ${@base_contains('PROJECT_FEATURES', 'x11', 'screen', '', d)} \
> "
>
> DISTRO_FEATURES_BACKFILL_CONSIDERED = "${NO_PROJECT_FEATURES}"
>
> in my distro configuration (I knew; some are machine but no distro
> features but this does not matter for me) and want to allow projects to
> add new features and to remove default ones.

This does seem rather like an abuse of DISTRO_FEATURES_BACKFILL. Can
you explain why you are doing it this way rather than just setting
DISTRO_FEATURES directly to what you wanted?

p.