diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2015-09-22 17:21:38 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-09-23 09:53:19 +0100 |
commit | 76084cdfa6b303f60d10484b84252c7b1560a0ec (patch) | |
tree | 14d8dbde5b6e8f230d6ae5977ebde9637e2b7b50 /scripts | |
parent | ef197f9b998c6e54f21af8729dcd953fbd6c7e40 (diff) | |
download | poky-76084cdfa6b303f60d10484b84252c7b1560a0ec.tar.gz |
devtool: build-image: delete bbappend at end of build
Upon further reflection, it seems to me that this bbappend ought to just
be deleted at the end of the build. This keeps things simple; you never
have to remember to delete any files to get back to where you were
before with the image. This means we can also drop the slightly awkward
message reminding the user how to do that. I've also updated the test to
look at the image manifest to determine if the command has worked
instead of looking for the (now deleted) bbappend.
(From OE-Core rev: f6b90bceaedf9bad3d111e6ca1fa79e59f472c73)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/lib/devtool/build-image.py | 53 |
1 files changed, 23 insertions, 30 deletions
diff --git a/scripts/lib/devtool/build-image.py b/scripts/lib/devtool/build-image.py index a6c7d81586..05c1d75c67 100644 --- a/scripts/lib/devtool/build-image.py +++ b/scripts/lib/devtool/build-image.py | |||
@@ -70,40 +70,33 @@ def build_image(args, config, basepath, workspace): | |||
70 | else: | 70 | else: |
71 | raise DevtoolError('Specified recipe %s is not an image recipe' % image) | 71 | raise DevtoolError('Specified recipe %s is not an image recipe' % image) |
72 | 72 | ||
73 | if workspace: | 73 | try: |
74 | packages = _get_packages(tinfoil, workspace, config) | 74 | if workspace: |
75 | if packages: | 75 | packages = _get_packages(tinfoil, workspace, config) |
76 | with open(appendfile, 'w') as afile: | 76 | if packages: |
77 | # include packages from workspace recipes into the image | 77 | with open(appendfile, 'w') as afile: |
78 | afile.write('IMAGE_INSTALL_append = " %s"\n' % ' '.join(packages)) | 78 | # include packages from workspace recipes into the image |
79 | 79 | afile.write('IMAGE_INSTALL_append = " %s"\n' % ' '.join(packages)) | |
80 | # Generate notification callback devtool_warn_image_extended | 80 | logger.info('Building image %s with the following ' |
81 | afile.write('do_rootfs[prefuncs] += "devtool_warn_image_extended"\n\n') | 81 | 'additional packages: %s', image, ' '.join(packages)) |
82 | afile.write("python devtool_warn_image_extended() {\n") | 82 | else: |
83 | afile.write(" bb.plain('NOTE: %%s: building with additional '\n" | 83 | logger.warning('No packages to add, building image %s unmodified', image) |
84 | " 'packages due to \"devtool build-image\"'" | ||
85 | " %% d.getVar('PN', True))\n" | ||
86 | " bb.plain('NOTE: delete %%s to clear this' %% \\\n" | ||
87 | " '%s')\n" % os.path.relpath(appendfile, basepath)) | ||
88 | afile.write("}\n") | ||
89 | |||
90 | logger.info('Building image %s with the following ' | ||
91 | 'additional packages: %s', image, ' '.join(packages)) | ||
92 | else: | 84 | else: |
93 | logger.warning('No packages to add, building image %s unmodified', image) | 85 | logger.warning('No recipes in workspace, building image %s unmodified', image) |
94 | else: | ||
95 | logger.warning('No recipes in workspace, building image %s unmodified', image) | ||
96 | 86 | ||
97 | deploy_dir_image = tinfoil.config_data.getVar('DEPLOY_DIR_IMAGE', True) | 87 | deploy_dir_image = tinfoil.config_data.getVar('DEPLOY_DIR_IMAGE', True) |
98 | 88 | ||
99 | tinfoil.shutdown() | 89 | tinfoil.shutdown() |
100 | 90 | ||
101 | # run bitbake to build image | 91 | # run bitbake to build image |
102 | try: | 92 | try: |
103 | exec_build_env_command(config.init_path, basepath, | 93 | exec_build_env_command(config.init_path, basepath, |
104 | 'bitbake %s' % image, watch=True) | 94 | 'bitbake %s' % image, watch=True) |
105 | except ExecutionError as err: | 95 | except ExecutionError as err: |
106 | return err.exitcode | 96 | return err.exitcode |
97 | finally: | ||
98 | if os.path.isfile(appendfile): | ||
99 | os.unlink(appendfile) | ||
107 | 100 | ||
108 | logger.info('Successfully built %s. You can find output files in %s' | 101 | logger.info('Successfully built %s. You can find output files in %s' |
109 | % (image, deploy_dir_image)) | 102 | % (image, deploy_dir_image)) |