diff options
Diffstat (limited to 'scripts/lib')
| -rw-r--r-- | scripts/lib/wic/utils/misc.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/scripts/lib/wic/utils/misc.py b/scripts/lib/wic/utils/misc.py index 9d750694df..d886d75b95 100644 --- a/scripts/lib/wic/utils/misc.py +++ b/scripts/lib/wic/utils/misc.py | |||
| @@ -17,6 +17,7 @@ | |||
| 17 | 17 | ||
| 18 | import os | 18 | import os |
| 19 | import time | 19 | import time |
| 20 | import wic.engine | ||
| 20 | 21 | ||
| 21 | def build_name(kscfg, release=None, prefix=None, suffix=None): | 22 | def build_name(kscfg, release=None, prefix=None, suffix=None): |
| 22 | """Construct and return an image name string. | 23 | """Construct and return an image name string. |
| @@ -56,3 +57,41 @@ def build_name(kscfg, release=None, prefix=None, suffix=None): | |||
| 56 | ret = prefix + name + suffix | 57 | ret = prefix + name + suffix |
| 57 | 58 | ||
| 58 | return ret | 59 | return ret |
| 60 | |||
| 61 | def find_boot_config(scripts_path, boot_file): | ||
| 62 | """ | ||
| 63 | Find a config file with the given name in the canned files dir. | ||
| 64 | |||
| 65 | Return False if not found | ||
| 66 | """ | ||
| 67 | if os.path.exists(boot_file): | ||
| 68 | return boot_file | ||
| 69 | |||
| 70 | layers_canned_wks_dir = wic.engine.build_canned_image_list(scripts_path) | ||
| 71 | for canned_wks_dir in layers_canned_wks_dir: | ||
| 72 | for root, dirs, files in os.walk(canned_wks_dir): | ||
| 73 | for fname in files: | ||
| 74 | if fname == boot_file: | ||
| 75 | fullpath = os.path.join(canned_wks_dir, fname) | ||
| 76 | return fullpath | ||
| 77 | |||
| 78 | return None | ||
| 79 | |||
| 80 | def get_custom_config(boot_file): | ||
| 81 | """ | ||
| 82 | Get the custom configuration to be used for the bootloader. | ||
| 83 | |||
| 84 | Return None if the file can't be found. | ||
| 85 | """ | ||
| 86 | scripts_path = os.path.abspath(os.path.dirname(__file__)) | ||
| 87 | # Get the scripts path of poky | ||
| 88 | for x in range(0, 3): | ||
| 89 | scripts_path = os.path.dirname(scripts_path) | ||
| 90 | |||
| 91 | cfg_file = find_boot_config(scripts_path, boot_file) | ||
| 92 | if cfg_file: | ||
| 93 | with open(cfg_file, "r") as f: | ||
| 94 | config = f.read() | ||
| 95 | return config | ||
| 96 | |||
| 97 | return None | ||
