diff options
| author | Jussi Kukkonen <jussi.kukkonen@intel.com> | 2017-04-11 17:35:40 +0300 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-04-12 15:09:58 +0100 |
| commit | db1f1adace58763c35774e3fdfeaac5c3ca646fd (patch) | |
| tree | c5cd33c15af44f2d07239314933c5a9b8626a965 /meta/conf | |
| parent | f2e41a197fba1937383fd32cbd84c6028bebd928 (diff) | |
| download | poky-db1f1adace58763c35774e3fdfeaac5c3ca646fd.tar.gz | |
native/nativesdk: Use fixed DISTRO_FEATURES
There seems to be little advantage to letting distro features affect
native builds. There is a significant disadvantage: a change to
DISTRO_FEATURES will trigger a lot of unnecessary native tasks. In a
test like this:
$ bitbake core-image-minimal
# append " systemd" to DISTRO_FEATURES
$ bitbake core-image-minimal
The latter build takes 44 minutes (28%) of cpu-time less with this
patch (skipping 135 native tasks). Sadly wall clock time was not
affected as glibc remains the bottleneck.
Set native distro features to DISTRO_FEATURES_NATIVE appended with
an intersection of DISTRO_FEATURES and DISTRO_FEATURES_FILTER_NATIVE.
Current default values (baitbake.conf) are
* DISTRO_FEATURES_FILTER_NATIVE ?= "api-documentation" (as gtk-doc-native
has much less dependencies when built without it)
* DISTRO_FEATURES_NATIVE ?= "x11" (to enable native UIs even if target
does not containe them)
Do the variable setting in native_virtclass_handler() because otherwise
it could still be overridden by appends and the feature backfilling.
Shuffle the early returns so DISTRO_FEATURES gets set as long as
the packagename ends with "-native".
Add similar variables for nativesdk.
To make nativesdk work we need to enable the locale options so
nativesdk-glibc-locales can build and to avoid the init manager check
in the nativesdk case so add those fixes.
(From OE-Core rev: 731744d5538e315702be828e6f2bd556309dee07)
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/conf')
| -rw-r--r-- | meta/conf/bitbake.conf | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf index 5e98d4511f..af3937a48e 100644 --- a/meta/conf/bitbake.conf +++ b/meta/conf/bitbake.conf | |||
| @@ -789,6 +789,16 @@ MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS ?= "" | |||
| 789 | EXTRA_IMAGE_FEATURES ??= "" | 789 | EXTRA_IMAGE_FEATURES ??= "" |
| 790 | IMAGE_FEATURES += "${EXTRA_IMAGE_FEATURES}" | 790 | IMAGE_FEATURES += "${EXTRA_IMAGE_FEATURES}" |
| 791 | 791 | ||
| 792 | # Native distro features (will always be used for -native, even if they | ||
| 793 | # are not enabled for target) | ||
| 794 | DISTRO_FEATURES_NATIVE ?= "x11" | ||
| 795 | DISTRO_FEATURES_NATIVESDK ?= "x11 libc-charsets libc-locales libc-locale-code" | ||
| 796 | |||
| 797 | # Normally target distro features will not be applied to native builds: | ||
| 798 | # Native distro features on this list will use the target feature value | ||
| 799 | DISTRO_FEATURES_FILTER_NATIVE ?= "api-documentation" | ||
| 800 | DISTRO_FEATURES_FILTER_NATIVESDK ?= "api-documentation" | ||
| 801 | |||
| 792 | DISTRO_FEATURES_BACKFILL = "pulseaudio sysvinit bluez5 gobject-introspection-data ldconfig" | 802 | DISTRO_FEATURES_BACKFILL = "pulseaudio sysvinit bluez5 gobject-introspection-data ldconfig" |
| 793 | MACHINE_FEATURES_BACKFILL = "rtc qemu-usermode" | 803 | MACHINE_FEATURES_BACKFILL = "rtc qemu-usermode" |
| 794 | 804 | ||
