diff options
Diffstat (limited to 'documentation')
-rw-r--r-- | documentation/poky-ref-manual/ref-features.xml | 51 |
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> |