summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--documentation/poky-ref-manual/ref-features.xml51
1 files changed, 24 insertions, 27 deletions
diff --git a/documentation/poky-ref-manual/ref-features.xml b/documentation/poky-ref-manual/ref-features.xml
index 7d98464126..063eaadc43 100644
--- a/documentation/poky-ref-manual/ref-features.xml
+++ b/documentation/poky-ref-manual/ref-features.xml
@@ -178,38 +178,35 @@
178 <title>Feature Backfilling</title> 178 <title>Feature Backfilling</title>
179 179
180 <para> 180 <para>
181 Sometimes it is necessary to control functionality enabled by features 181 Sometimes it is necessary in the OpenEmbedded build system to extend
182 that are listed with
183 <link linkend='var-MACHINE_FEATURES'><filename>MACHINE_FEATURES</filename></link> 182 <link linkend='var-MACHINE_FEATURES'><filename>MACHINE_FEATURES</filename></link>
184 and <link linkend='var-DISTRO_FEATURES'><filename>DISTRO_FEATURES</filename></link>. 183 or <link linkend='var-DISTRO_FEATURES'><filename>DISTRO_FEATURES</filename></link>
185 For example, some functionality exists that is enabled 184 to control functionality that was previously enabled and not able
186 by default for all configurations. 185 to be disabled.
187 For these cases, the metadata, as shipped with the Yocto Project, ensures 186 For these cases, we need to add an
188 the feature is "backfilled" into all the specific distro 187 additional feature item to appear in one of these variables,
189 and machine configurations. 188 but we do not want to force developers who have existing values
190 You can see how this is done by finding the 189 of the variables in their configuration to add the new feature
190 in order to retain the same overall level of functionality.
191 Thus, the OpenEmbedded build system has a mechanism to
192 automatically "backfill" these added features into existing
193 distro or machine configurations.
194 You can see the list of features for which this is done by
195 finding the
191 <link linkend='var-DISTRO_FEATURES_BACKFILL'><filename>DISTRO_FEATURES_BACKFILL</filename></link> 196 <link linkend='var-DISTRO_FEATURES_BACKFILL'><filename>DISTRO_FEATURES_BACKFILL</filename></link>
192 and <link linkend='var-MACHINE_FEATURES_BACKFILL'><filename>MACHINE_FEATURES_BACKFILL</filename></link> 197 and <link linkend='var-MACHINE_FEATURES_BACKFILL'><filename>MACHINE_FEATURES_BACKFILL</filename></link>
193 variables in the <filename>meta/conf/bitbake.conf</filename> file. 198 variables in the <filename>meta/conf/bitbake.conf</filename> file.
194 </para> 199 </para>
195 200
196 <para> 201 <para>
197 Because certain functionality is enabled across all configurations as 202 Because such features are backfilled by default into all
198 described in the previous paragraph, it also becomes necessary 203 configurations as described in the previous paragraph, developers
199 to give the developer the ability to disable (remove) a feature 204 who wish to disable the new features need to be able to selectively
200 from a particular configuration. 205 prevent the backfilling from occurring.
201 For example, suppose you have a machine feature that needs to be 206 They can do this by adding the undesired feature or features to the
202 disabled but the metadata has backfilled it across all configurations as enabled. 207 <link linkend='var-DISTRO_FEATURES_BACKFILL_CONSIDERED'><filename>DISTRO_FEATURES_BACKFILL_CONSIDERED</filename></link>
203 You need to be able to remove the feature from your configuration's 208 or <link linkend='var-MACHINE_FEATURES_BACKFILL_CONSIDERED'><filename>MACHINE_FEATURES_BACKFILL_CONSIDERED</filename></link>
204 <filename>MACHINE_FEATURES</filename> 209 variables for distro features and machine features respectively.
205 without disturbing existing configurations that still
206 might need the functionality?
207 </para>
208
209 <para>
210 Feature backfilling allows you to selectively prevent a feature from
211 being backfilled to <filename>MACHINE_FEATURES</filename>,
212 <filename>DISTRO_FEATURES</filename>, or both.
213 </para> 210 </para>
214 211
215 <para> 212 <para>
@@ -226,7 +223,7 @@
226 You can disable the feature without affecting 223 You can disable the feature without affecting
227 other existing distro configurations that need PulseAudio support 224 other existing distro configurations that need PulseAudio support
228 by adding "pulseaudio" to 225 by adding "pulseaudio" to
229 <link linkend='var-DISTRO_FEATURES_BACKFILL_CONSIDERED'><filename>DISTRO_FEATURES_BACKFILL_CONSIDERED</filename></link> 226 DISTRO_FEATURES_BACKFILL_CONSIDERED
230 in your distro's <filename>.conf</filename> file. 227 in your distro's <filename>.conf</filename> file.
231 Adding the feature to this variable when it also 228 Adding the feature to this variable when it also
232 exists in the <filename>DISTRO_FEATURES_BACKFILL</filename> 229 exists in the <filename>DISTRO_FEATURES_BACKFILL</filename>
@@ -243,7 +240,7 @@
243 You can disable RTC support for your device without 240 You can disable RTC support for your device without
244 affecting other machines that need RTC support 241 affecting other machines that need RTC support
245 by adding the feature to your machine's 242 by adding the feature to your machine's
246 <link linkend='var-MACHINE_FEATURES_BACKFILL_CONSIDERED'><filename>MACHINE_FEATURES_BACKFILL_CONSIDERED</filename></link> 243 MACHINE_FEATURES_BACKFILL_CONSIDERED
247 list in the machine's <filename>.conf</filename> file. 244 list in the machine's <filename>.conf</filename> file.
248 Adding the feature to this variable when it also 245 Adding the feature to this variable when it also
249 exists in the <filename>MACHINE_FEATURES_BACKFILL</filename> 246 exists in the <filename>MACHINE_FEATURES_BACKFILL</filename>