From 32126512349d65f0dbc31196c4ec6e1a1147cf5e Mon Sep 17 00:00:00 2001 From: Robert Yang Date: Mon, 16 Oct 2017 03:30:43 +0800 Subject: populate_sdk_ext.bbclass: don't rename layers when failed The previous code: os.rename(sdkbasepath, temp_sdkbasepath) try: foo finally: os.rename(temp_sdkbasepath, sdkbasepath) always renamed the path, it made the debug harder when error happened. drop the "try: finally" makes the debug easier. Signed-off-by: Robert Yang Signed-off-by: Richard Purdie --- meta/classes/populate_sdk_ext.bbclass | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) (limited to 'meta/classes') diff --git a/meta/classes/populate_sdk_ext.bbclass b/meta/classes/populate_sdk_ext.bbclass index fce9968ba6..eabc365300 100644 --- a/meta/classes/populate_sdk_ext.bbclass +++ b/meta/classes/populate_sdk_ext.bbclass @@ -162,18 +162,16 @@ def create_filtered_tasklist(d, sdkbasepath, tasklistfile, conf_initpath): except FileNotFoundError: pass os.rename(sdkbasepath, temp_sdkbasepath) + cmdprefix = '. %s .; ' % conf_initpath + logfile = d.getVar('WORKDIR') + '/tasklist_bb_log.txt' try: - cmdprefix = '. %s .; ' % conf_initpath - logfile = d.getVar('WORKDIR') + '/tasklist_bb_log.txt' - try: - oe.copy_buildsystem.check_sstate_task_list(d, get_sdk_install_targets(d), tasklistfile, cmdprefix=cmdprefix, cwd=temp_sdkbasepath, logfile=logfile) - except bb.process.ExecutionError as e: - msg = 'Failed to generate filtered task list for extensible SDK:\n%s' % e.stdout.rstrip() - if 'attempted to execute unexpectedly and should have been setscened' in e.stdout: - msg += '\n----------\n\nNOTE: "attempted to execute unexpectedly and should have been setscened" errors indicate this may be caused by missing sstate artifacts that were likely produced in earlier builds, but have been subsequently deleted for some reason.\n' - bb.fatal(msg) - finally: - os.rename(temp_sdkbasepath, sdkbasepath) + oe.copy_buildsystem.check_sstate_task_list(d, get_sdk_install_targets(d), tasklistfile, cmdprefix=cmdprefix, cwd=temp_sdkbasepath, logfile=logfile) + except bb.process.ExecutionError as e: + msg = 'Failed to generate filtered task list for extensible SDK:\n%s' % e.stdout.rstrip() + if 'attempted to execute unexpectedly and should have been setscened' in e.stdout: + msg += '\n----------\n\nNOTE: "attempted to execute unexpectedly and should have been setscened" errors indicate this may be caused by missing sstate artifacts that were likely produced in earlier builds, but have been subsequently deleted for some reason.\n' + bb.fatal(msg) + os.rename(temp_sdkbasepath, sdkbasepath) # Clean out residue of running bitbake, which check_sstate_task_list() # will effectively do clean_esdk_builddir(d, sdkbasepath) -- cgit 1.2.3-korg