diff options
author | Tom Zanussi <tom.zanussi@linux.intel.com> | 2014-02-03 19:16:55 -0600 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-02-04 12:56:55 +0000 |
commit | f0bb47b0d7ab6520c105ce131844269172de3efd (patch) | |
tree | 5837e20ea5a2933d7429f62db6a08c4eef6e3efc /scripts | |
parent | 95ca523949e838850b5afa090ba16f91b8557c12 (diff) | |
download | openembedded-core-f0bb47b0d7ab6520c105ce131844269172de3efd.tar.gz openembedded-core-f0bb47b0d7ab6520c105ce131844269172de3efd.tar.bz2 openembedded-core-f0bb47b0d7ab6520c105ce131844269172de3efd.zip |
wic: Create and use new functions for getting bitbake variables
Add get_bitbake_var() and bitbake_env_lines() functions for use by
plugins, which will need access to them for customization.
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/lib/image/engine.py | 20 | ||||
-rw-r--r-- | scripts/lib/mic/utils/oe/misc.py | 16 | ||||
-rwxr-xr-x | scripts/wic | 6 |
3 files changed, 37 insertions, 5 deletions
diff --git a/scripts/lib/image/engine.py b/scripts/lib/image/engine.py index 0e8b89e5f1..2dd98b968c 100644 --- a/scripts/lib/image/engine.py +++ b/scripts/lib/image/engine.py @@ -60,16 +60,26 @@ def verify_build_env(): return True -def find_artifacts(image_name): +def find_bitbake_env_lines(image_name): """ - Gather the build artifacts for the current image (the image_name - e.g. core-image-minimal) for the current MACHINE set in local.conf + If image_name is empty, plugins might still be able to use the + environment, so set it regardless. """ bitbake_env_cmd = "bitbake -e %s" % image_name rc, bitbake_env_lines = exec_cmd(bitbake_env_cmd) if rc != 0: - print "Couldn't get '%s' output, exiting." % bitbake_env_cmd - sys.exit(1) + print "Couldn't get '%s' output." % bitbake_env_cmd + return None + + return bitbake_env_lines + + +def find_artifacts(image_name): + """ + Gather the build artifacts for the current image (the image_name + e.g. core-image-minimal) for the current MACHINE set in local.conf + """ + bitbake_env_lines = get_bitbake_env_lines() rootfs_dir = kernel_dir = hdddir = staging_data_dir = native_sysroot = "" diff --git a/scripts/lib/mic/utils/oe/misc.py b/scripts/lib/mic/utils/oe/misc.py index 097d44c057..77dfe03630 100644 --- a/scripts/lib/mic/utils/oe/misc.py +++ b/scripts/lib/mic/utils/oe/misc.py @@ -109,6 +109,15 @@ def add_wks_var(key, val): BOOTDD_EXTRA_SPACE = 16384 +__bitbake_env_lines = "" + +def set_bitbake_env_lines(bitbake_env_lines): + global __bitbake_env_lines + __bitbake_env_lines = bitbake_env_lines + +def get_bitbake_env_lines(): + return __bitbake_env_lines + def get_line_val(line, key): """ Extract the value from the VAR="val" string @@ -118,3 +127,10 @@ def get_line_val(line, key): stripped_line = stripped_line.replace('\"', '') return stripped_line return None + +def get_bitbake_var(key): + for line in __bitbake_env_lines.split('\n'): + if (get_line_val(line, key)): + val = get_line_val(line, key) + return val + return None diff --git a/scripts/wic b/scripts/wic index b6fd16c5df..4ea5569576 100755 --- a/scripts/wic +++ b/scripts/wic @@ -98,6 +98,12 @@ def wic_create_subcommand(args, usage_str): print "Creating image(s)...\n" + bitbake_env_lines = find_bitbake_env_lines(options.image_name) + if not bitbake_env_lines: + print "Couldn't get bitbake environment, exiting." + sys.exit(1) + set_bitbake_env_lines(bitbake_env_lines) + bootimg_dir = staging_data_dir = hdddir = "" if options.image_name: |