mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 21:09:03 +02:00
documentation: poky-ref-manual - edits to the features backfill section.
(From yocto-docs rev: 7507d73501830896602bb18677eb7b0710794f55) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
5e68ca2ea4
commit
fb968f87a5
|
@ -176,26 +176,38 @@
|
||||||
<title>Feature Backfilling</title>
|
<title>Feature Backfilling</title>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Sometimes it is necessary to add a new feature option to the
|
Sometimes it is necessary to control functionality enabled by features
|
||||||
|
that are listed with
|
||||||
<link linkend='var-MACHINE_FEATURES'><filename>MACHINE_FEATURES</filename></link>
|
<link linkend='var-MACHINE_FEATURES'><filename>MACHINE_FEATURES</filename></link>
|
||||||
or <link linkend='var-DISTRO_FEATURES'><filename>DISTRO_FEATURES</filename></link>
|
and <link linkend='var-DISTRO_FEATURES'><filename>DISTRO_FEATURES</filename></link>.
|
||||||
lists and have it affect all configurations.
|
For example, some functionality exists that is enabled
|
||||||
For example, suppose new functionality is developed and it must be enabled
|
|
||||||
by default for all configurations.
|
by default for all configurations.
|
||||||
|
For these cases, the metadata, as shipped with the Yocto Project, ensures
|
||||||
|
the feature is "backfilled" into all the specific distro
|
||||||
|
and machine configurations.
|
||||||
|
You can see how this is done by finding the
|
||||||
|
<link linkend='var-DISTRO_FEATURES_BACKFILL'><filename>DISTRO_FEATURES_BACKFILL</filename></link>
|
||||||
|
and <link linkend='var-MACHINE_FEATURES_BACKFILL'><filename>MACHINE_FEATURES_BACKFILL</filename></link>
|
||||||
|
variables in the <filename>meta/conf/bitbake.conf</filename> file.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
Sometimes it is also necessary to disable (remove) a feature
|
Because certain functionality is enabled across all configurations as
|
||||||
option, which has been previously enabled by default, from the machine or distro lists.
|
described in the previous paragraph, it also becomes necessary
|
||||||
For example, perhaps a mandatory distro feature becomes optional.
|
to give the developer the ability to disable (remove) a feature
|
||||||
How can you remove the feature option from the
|
from a particular configuration.
|
||||||
<filename>DISTRO_FEATURES</filename> list
|
For example, suppose you have a machine feature that needs to be
|
||||||
without disturbing all the existing configurations that still
|
disabled but the metadata has backfilled it across all configurations as enabled.
|
||||||
might need the feature?
|
You need to be able to remove the feature from your configuration's
|
||||||
Feature backfilling allows you "backfill" the feature into all the
|
<filename>MACHINE_FEATURES</filename>
|
||||||
configurations and then lets you selectively prevent the feature from
|
without disturbing existing configurations that still
|
||||||
being added to <filename>MACHINE_FEATURES</filename> and
|
might need the functionality?
|
||||||
<filename>DISTRO_FEATURES</filename> lists.
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Feature backfilling allows you to selectively prevent a feature from
|
||||||
|
being backfilled to <filename>MACHINE_FEATURES</filename>,
|
||||||
|
<filename>DISTRO_FEATURES</filename>, or both.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
|
@ -204,58 +216,38 @@
|
||||||
<listitem><para><emphasis>The "pulseaudio" distro feature option</emphasis>:
|
<listitem><para><emphasis>The "pulseaudio" distro feature option</emphasis>:
|
||||||
Previously, PulseAudio support was enabled within the Qt and
|
Previously, PulseAudio support was enabled within the Qt and
|
||||||
GStreamer frameworks.
|
GStreamer frameworks.
|
||||||
However, you might need to disable the feature for your
|
Because of this, the feature is backfilled and thus
|
||||||
distro.
|
enabled for all distros through the
|
||||||
|
<filename>DISTRO_FEATURES_BACKFILL</filename>
|
||||||
|
variable in the <filename>meta/conf/bitbake.conf</filename> file.
|
||||||
|
However, your distro needs to disable the feature.
|
||||||
You can disable the feature without affecting
|
You can disable the feature without affecting
|
||||||
other existing distro configurations that need PulseAudio support
|
other existing distro configurations that need PulseAudio support
|
||||||
by doing the following:
|
by adding "pulseaudio" to
|
||||||
<itemizedlist>
|
|
||||||
<listitem><para>Add "pulseaudio" to
|
|
||||||
<link linkend='var-DISTRO_FEATURES_BACKFILL'><filename>DISTRO_FEATURES_BACKFILL</filename></link>
|
|
||||||
within your <filename>meta/conf/bitbake.conf</filename> file.
|
|
||||||
Adding the feature option causes the build process
|
|
||||||
to automatically add "pulseaudio" to
|
|
||||||
<filename>DISTRO_FEATURES</filename> without the need to
|
|
||||||
update any distro configurations.
|
|
||||||
This step by itself enables the feature
|
|
||||||
for all distros and consequently ensures that existing
|
|
||||||
configurations that still need the feature are
|
|
||||||
undisturbed.</para></listitem>
|
|
||||||
<listitem><para>Add "pulseaudio" to
|
|
||||||
<link linkend='var-DISTRO_FEATURES_BACKFILL_CONSIDERED'><filename>DISTRO_FEATURES_BACKFILL_CONSIDERED</filename></link>
|
<link linkend='var-DISTRO_FEATURES_BACKFILL_CONSIDERED'><filename>DISTRO_FEATURES_BACKFILL_CONSIDERED</filename></link>
|
||||||
in your distro's <filename>.conf</filename> file.
|
in your distro's <filename>.conf</filename> file.
|
||||||
Adding the feature option to this variable when it also
|
Adding the feature to this variable when it also
|
||||||
exists in the <filename>DISTRO_FEATURES_BACKFILL</filename>
|
exists in the <filename>DISTRO_FEATURES_BACKFILL</filename>
|
||||||
variable prevents the build system from adding the feature option to
|
variable prevents the build system from adding the feature to
|
||||||
<filename>DISTRO_FEATURES</filename>, effectively disabling
|
your configuration's <filename>DISTRO_FEATURES</filename>, effectively disabling
|
||||||
the feature for that particular distro.</para></listitem>
|
the feature for that particular distro.</para></listitem>
|
||||||
</itemizedlist></para></listitem>
|
|
||||||
<listitem><para><emphasis>The "rtc" machine feature option</emphasis>:
|
<listitem><para><emphasis>The "rtc" machine feature option</emphasis>:
|
||||||
Previously, real time clock (RTC) support was enabled for all
|
Previously, real time clock (RTC) support was enabled for all
|
||||||
target devices.
|
target devices.
|
||||||
|
Because of this, the feature is backfilled and thus enabled
|
||||||
|
for all machines through the <filename>MACHINE_FEATURES_BACKFILL</filename>
|
||||||
|
variable in the <filename>meta/conf/bitbake.conf</filename> file.
|
||||||
However, your target device does not have this capability.
|
However, your target device does not have this capability.
|
||||||
You can disable RTC support for your device without
|
You can disable RTC support for your device without
|
||||||
affecting other machines where RTC support should remain enabled
|
affecting other machines that need RTC support
|
||||||
by doing the following:
|
by adding the feature to your machine's
|
||||||
<itemizedlist>
|
<link linkend='var-MACHINE_FEATURES_BACKFILL_CONSIDERED'><filename>MACHINE_FEATURES_BACKFILL_CONSIDERED</filename></link>
|
||||||
<listitem><para>Add "rtc" to <filename>MACHINE_FEATURES_BACKFILL</filename>
|
list in the machine's <filename>.conf</filename> file.
|
||||||
within your <filename>meta/conf/bitbake.conf</filename>.
|
Adding the feature to this variable when it also
|
||||||
Adding the feature option causes the build process
|
|
||||||
to automatically add "rtc" to
|
|
||||||
<filename>MACHINE_FEATURES</filename> without the need to
|
|
||||||
update any machine configurations.
|
|
||||||
This step by itself enables RTC support for all machines
|
|
||||||
and consequently ensures that existing configurations
|
|
||||||
that still need the feature are undisturbed.</para></listitem>
|
|
||||||
<listitem><para>Add "rtc" to
|
|
||||||
<filename>MACHINE_FEATURES_BACKFILL_CONSIDERED</filename>
|
|
||||||
in your machine's <filename>.conf</filename> file.
|
|
||||||
Adding the feature option to this variable when it also
|
|
||||||
exists in the <filename>MACHINE_FEATURES_BACKFILL</filename>
|
exists in the <filename>MACHINE_FEATURES_BACKFILL</filename>
|
||||||
variable prevents the build system from adding the feature option to
|
variable prevents the build system from adding the feature to
|
||||||
<filename>MACHINE_FEATURES</filename>, effectively disabling
|
your configuration's <filename>MACHINE_FEATURES</filename>, effectively
|
||||||
RTC support for feature that particular machine.</para></listitem>
|
disabling RTC support for that particular machine.</para></listitem>
|
||||||
</itemizedlist></para></listitem>
|
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</para>
|
</para>
|
||||||
</section>
|
</section>
|
||||||
|
|
Loading…
Reference in New Issue
Block a user