diff options
author | Brian A. Lloyd <brian.lloyd@familyhonor.net> | 2013-01-21 15:14:22 -0600 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-02-05 21:37:35 +0000 |
commit | a7ce81df2f6e513a7e364c443759733c778b5c1f (patch) | |
tree | e11282313e3183c367b22bea664405189b1f1384 /scripts/lib/bsp/kernel.py | |
parent | 47b0864fbd65746558d8186450c182d98bac78ca (diff) | |
download | poky-a7ce81df2f6e513a7e364c443759733c778b5c1f.tar.gz |
yocto-bsp: qualify user files with machine name
The bblayer abstraction makes it where multiple layers can be
configured and used at the same time. Some layers make changes to
support a specific machine, and should not have any affect when other
machines are in use.
For linux-yocto, all bsps are created with a user-config.cfg and
user-config.cfg and user-patches.scc. This means that those files
will be pulled from the first location found, which might correspond
to files customized for a different machine.
Instead of using the names user-config.cfg and user-patches.scc, I
propose a machine specific name be used such as
{{=machine}}user-patches.scc and {{=machine}}user-config.cfg. This
would necessitate that all references changed to these new names,
which would affect the yocto-bsp and yocto-kernel scripts.
With this change, it would be possible to have multiple machine BSPs
searched at the same time and to select which to build against by
using a command like MACHINE=qmeux86 bitbake core-image-sato to
override the default.
Note many of the standard BSPs do not seem to suffer this problem as
they do not use the common files user-config.cfg and user-patches.scc
that the yocto-* scripts depend upon.
Additions by Tom Zanussi:
- renamed user-config.cfg to {{=machine}}-user-config.cfg everywhere
- renamed user-patches.scc to {{=machine}}-user-patches.scc everywhere
- added the user-config/patches SRC_URI items to the qemu -rt kernel recipes
Fixes [YOCTO #3731]
(From meta-yocto rev: b148d800773f3c2e6edeb4f05850b0291a8bb7d5)
Signed-off-by: Brian A. Lloyd <brian.lloyd@familyhonor.net>
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts/lib/bsp/kernel.py')
-rw-r--r-- | scripts/lib/bsp/kernel.py | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/scripts/lib/bsp/kernel.py b/scripts/lib/bsp/kernel.py index d4bdc4c250..7c14761f3c 100644 --- a/scripts/lib/bsp/kernel.py +++ b/scripts/lib/bsp/kernel.py | |||
@@ -136,12 +136,12 @@ def gen_choices_str(choices): | |||
136 | def read_config_items(scripts_path, machine): | 136 | def read_config_items(scripts_path, machine): |
137 | """ | 137 | """ |
138 | Find and return a list of config items (CONFIG_XXX) in a machine's | 138 | Find and return a list of config items (CONFIG_XXX) in a machine's |
139 | user-defined config fragment [user-config.cfg]. | 139 | user-defined config fragment [${machine}-user-config.cfg]. |
140 | """ | 140 | """ |
141 | config_items = [] | 141 | config_items = [] |
142 | 142 | ||
143 | layer = find_bsp_layer(scripts_path, machine) | 143 | layer = find_bsp_layer(scripts_path, machine) |
144 | cfg = os.path.join(layer, "recipes-kernel/linux/files/user-config.cfg") | 144 | cfg = os.path.join(layer, "recipes-kernel/linux/files/"+machine+"-user-config.cfg") |
145 | 145 | ||
146 | f = open(cfg, "r") | 146 | f = open(cfg, "r") |
147 | lines = f.readlines() | 147 | lines = f.readlines() |
@@ -157,10 +157,10 @@ def read_config_items(scripts_path, machine): | |||
157 | def write_config_items(scripts_path, machine, config_items): | 157 | def write_config_items(scripts_path, machine, config_items): |
158 | """ | 158 | """ |
159 | Write (replace) the list of config items (CONFIG_XXX) in a | 159 | Write (replace) the list of config items (CONFIG_XXX) in a |
160 | machine's user-defined config fragment [user-config.cfg]. | 160 | machine's user-defined config fragment [${machine}=user-config.cfg]. |
161 | """ | 161 | """ |
162 | layer = find_bsp_layer(scripts_path, machine) | 162 | layer = find_bsp_layer(scripts_path, machine) |
163 | cfg = os.path.join(layer, "recipes-kernel/linux/files/user-config.cfg") | 163 | cfg = os.path.join(layer, "recipes-kernel/linux/files/"+machine+"-user-config.cfg") |
164 | 164 | ||
165 | f = open(cfg, "w") | 165 | f = open(cfg, "w") |
166 | for item in config_items: | 166 | for item in config_items: |
@@ -173,7 +173,7 @@ def write_config_items(scripts_path, machine, config_items): | |||
173 | def yocto_kernel_config_list(scripts_path, machine): | 173 | def yocto_kernel_config_list(scripts_path, machine): |
174 | """ | 174 | """ |
175 | Display the list of config items (CONFIG_XXX) in a machine's | 175 | Display the list of config items (CONFIG_XXX) in a machine's |
176 | user-defined config fragment [user-config.cfg]. | 176 | user-defined config fragment [${machine}-user-config.cfg]. |
177 | """ | 177 | """ |
178 | config_items = read_config_items(scripts_path, machine) | 178 | config_items = read_config_items(scripts_path, machine) |
179 | 179 | ||
@@ -196,7 +196,7 @@ def map_choice(choice_str, array): | |||
196 | def yocto_kernel_config_rm(scripts_path, machine): | 196 | def yocto_kernel_config_rm(scripts_path, machine): |
197 | """ | 197 | """ |
198 | Display the list of config items (CONFIG_XXX) in a machine's | 198 | Display the list of config items (CONFIG_XXX) in a machine's |
199 | user-defined config fragment [user-config.cfg], prompt the user | 199 | user-defined config fragment [${machine}-user-config.cfg], prompt the user |
200 | for one or more to remove, and remove them. | 200 | for one or more to remove, and remove them. |
201 | """ | 201 | """ |
202 | config_items = read_config_items(scripts_path, machine) | 202 | config_items = read_config_items(scripts_path, machine) |
@@ -229,7 +229,7 @@ def yocto_kernel_config_rm(scripts_path, machine): | |||
229 | def yocto_kernel_config_add(scripts_path, machine, config_items): | 229 | def yocto_kernel_config_add(scripts_path, machine, config_items): |
230 | """ | 230 | """ |
231 | Add one or more config items (CONFIG_XXX) to a machine's | 231 | Add one or more config items (CONFIG_XXX) to a machine's |
232 | user-defined config fragment [user-config.cfg]. | 232 | user-defined config fragment [${machine}-user-config.cfg]. |
233 | """ | 233 | """ |
234 | new_items = [] | 234 | new_items = [] |
235 | 235 | ||
@@ -373,12 +373,12 @@ def find_patches(src_uri): | |||
373 | def read_patch_items(scripts_path, machine): | 373 | def read_patch_items(scripts_path, machine): |
374 | """ | 374 | """ |
375 | Find and return a list of patch items in a machine's user-defined | 375 | Find and return a list of patch items in a machine's user-defined |
376 | patch list [user-patches.scc]. | 376 | patch list [${machine}-user-patches.scc]. |
377 | """ | 377 | """ |
378 | patch_items = [] | 378 | patch_items = [] |
379 | 379 | ||
380 | layer = find_bsp_layer(scripts_path, machine) | 380 | layer = find_bsp_layer(scripts_path, machine) |
381 | patches = os.path.join(layer, "recipes-kernel/linux/files/user-patches.scc") | 381 | patches = os.path.join(layer, "recipes-kernel/linux/files/"+machine+"-user-patches.scc") |
382 | 382 | ||
383 | f = open(patches, "r") | 383 | f = open(patches, "r") |
384 | lines = f.readlines() | 384 | lines = f.readlines() |
@@ -397,11 +397,11 @@ def read_patch_items(scripts_path, machine): | |||
397 | def write_patch_items(scripts_path, machine, patch_items): | 397 | def write_patch_items(scripts_path, machine, patch_items): |
398 | """ | 398 | """ |
399 | Write (replace) the list of patches in a machine's user-defined | 399 | Write (replace) the list of patches in a machine's user-defined |
400 | patch list [user-patches.scc]. | 400 | patch list [${machine}-user-patches.scc]. |
401 | """ | 401 | """ |
402 | layer = find_bsp_layer(scripts_path, machine) | 402 | layer = find_bsp_layer(scripts_path, machine) |
403 | 403 | ||
404 | patches = os.path.join(layer, "recipes-kernel/linux/files/user-patches.scc") | 404 | patches = os.path.join(layer, "recipes-kernel/linux/files/"+machine+"-user-patches.scc") |
405 | 405 | ||
406 | f = open(patches, "w") | 406 | f = open(patches, "w") |
407 | for item in patch_items: | 407 | for item in patch_items: |
@@ -417,7 +417,7 @@ def write_patch_items(scripts_path, machine, patch_items): | |||
417 | def yocto_kernel_patch_list(scripts_path, machine): | 417 | def yocto_kernel_patch_list(scripts_path, machine): |
418 | """ | 418 | """ |
419 | Display the list of patches in a machine's user-defined patch list | 419 | Display the list of patches in a machine's user-defined patch list |
420 | [user-patches.scc]. | 420 | [${machine}-user-patches.scc]. |
421 | """ | 421 | """ |
422 | (start_line, end_line, src_uri) = find_bsp_kernel_src_uri(scripts_path, machine) | 422 | (start_line, end_line, src_uri) = find_bsp_kernel_src_uri(scripts_path, machine) |
423 | patches = find_patches(src_uri) | 423 | patches = find_patches(src_uri) |
@@ -429,7 +429,7 @@ def yocto_kernel_patch_list(scripts_path, machine): | |||
429 | def yocto_kernel_patch_rm(scripts_path, machine): | 429 | def yocto_kernel_patch_rm(scripts_path, machine): |
430 | """ | 430 | """ |
431 | Remove one or more patches from a machine's user-defined patch | 431 | Remove one or more patches from a machine's user-defined patch |
432 | list [user-patches.scc]. | 432 | list [${machine}-user-patches.scc]. |
433 | """ | 433 | """ |
434 | (start_line, end_line, src_uri) = find_bsp_kernel_src_uri(scripts_path, machine) | 434 | (start_line, end_line, src_uri) = find_bsp_kernel_src_uri(scripts_path, machine) |
435 | patches = find_patches(src_uri) | 435 | patches = find_patches(src_uri) |
@@ -470,7 +470,7 @@ def yocto_kernel_patch_rm(scripts_path, machine): | |||
470 | def yocto_kernel_patch_add(scripts_path, machine, patches): | 470 | def yocto_kernel_patch_add(scripts_path, machine, patches): |
471 | """ | 471 | """ |
472 | Add one or more patches to a machine's user-defined patch list | 472 | Add one or more patches to a machine's user-defined patch list |
473 | [user-patches.scc]. | 473 | [${machine}-user-patches.scc]. |
474 | """ | 474 | """ |
475 | (start_line, end_line, src_uri) = find_bsp_kernel_src_uri(scripts_path, machine) | 475 | (start_line, end_line, src_uri) = find_bsp_kernel_src_uri(scripts_path, machine) |
476 | src_uri_patches = find_patches(src_uri) | 476 | src_uri_patches = find_patches(src_uri) |