From c0622e65a95f42f921e24bfcbc90bce8c838903e Mon Sep 17 00:00:00 2001 From: Chris Larson Date: Wed, 18 Mar 2009 09:20:31 -0700 Subject: First pass of cleanup of messages outputted to the user. OpenEmbedded outputs a lot of messages that the user is likely to never care about. We should only output something when it reflects upon their recipe (i.e. unpacking their sources, applying their patches), or is quite significant or unusual. Signed-off-by: Chris Larson --- classes/base.bbclass | 17 +++-------------- classes/insane.bbclass | 14 +++++++------- classes/package.bbclass | 4 ++-- classes/packaged-staging.bbclass | 6 +++--- 4 files changed, 15 insertions(+), 26 deletions(-) (limited to 'classes') diff --git a/classes/base.bbclass b/classes/base.bbclass index a901f02a6c..3d4a426e75 100644 --- a/classes/base.bbclass +++ b/classes/base.bbclass @@ -896,22 +896,11 @@ python base_eventhandler() { from bb.event import Handled, NotHandled, getName import os - messages = {} - messages["Completed"] = "completed" - messages["Succeeded"] = "completed" - messages["Started"] = "started" - messages["Failed"] = "failed" - name = getName(e) - msg = "" - if name.startswith("Task"): - msg += "package %s: task %s: " % (data.getVar("PF", e.data, 1), e.task) - msg += messages.get(name[4:]) or name[4:] - elif name.startswith("Build"): - msg += "build %s: " % e.name - msg += messages.get(name[5:]) or name[5:] + if name == "TaskCompleted": + msg = "package %s: task %s is complete." % (data.getVar("PF", e.data, 1), e.task) elif name == "UnsatisfiedDep": - msg += "package %s: dependency %s %s" % (e.pkg, e.dep, name[:-3].lower()) + msg = "package %s: dependency %s %s" % (e.pkg, e.dep, name[:-3].lower()) else: return NotHandled diff --git a/classes/insane.bbclass b/classes/insane.bbclass index cc881dc0d8..606270d62c 100644 --- a/classes/insane.bbclass +++ b/classes/insane.bbclass @@ -219,7 +219,7 @@ def package_qa_write_error(error_class, name, path, d): def package_qa_handle_error(error_class, error_msg, name, path, d): import bb - bb.error("QA Issue: %s" % error_msg) + bb.error("QA Issue with %s: %s" % (name, error_msg)) package_qa_write_error(error_class, name, path, d) return not package_qa_make_fatal_error(error_class, name, path, d) @@ -499,7 +499,7 @@ def package_qa_check_rdepends(pkg, workdir, d): # The PACKAGE FUNC to scan each package python do_package_qa () { import bb - bb.note("DO PACKAGE QA") + bb.debug(2, "DO PACKAGE QA") workdir = bb.data.getVar('WORKDIR', d, True) packages = bb.data.getVar('PACKAGES',d, True) @@ -515,10 +515,10 @@ python do_package_qa () { rdepends_sane = True for package in packages.split(): if bb.data.getVar('INSANE_SKIP_' + package, d, True): - bb.note("Package: %s (skipped)" % package) + bb.note("package %s skipped" % package) continue - bb.note("Checking Package: %s" % package) + bb.debug(1, "Checking Package: %s" % package) path = "%s/install/%s" % (workdir, package) if not package_qa_walk(path, checks, package, d): walk_sane = False @@ -527,14 +527,14 @@ python do_package_qa () { if not walk_sane or not rdepends_sane: bb.fatal("QA run found fatal errors. Please consider fixing them.") - bb.note("DONE with PACKAGE QA") + bb.debug(2, "DONE with PACKAGE QA") } # The Staging Func, to check all staging addtask qa_staging after do_populate_staging before do_build python do_qa_staging() { - bb.note("QA checking staging") + bb.debug(2, "QA checking staging") if not package_qa_check_staged(bb.data.getVar('STAGING_LIBDIR',d,True), d): bb.fatal("QA staging was broken by the package built above") @@ -543,7 +543,7 @@ python do_qa_staging() { # Check broken config.log files addtask qa_configure after do_configure before do_compile python do_qa_configure() { - bb.note("Checking sanity of the config.log file") + bb.debug(1, "Checking sanity of the config.log file") import os for root, dirs, files in os.walk(bb.data.getVar('WORKDIR', d, True)): statement = "grep 'CROSS COMPILE Badness:' %s > /dev/null" % \ diff --git a/classes/package.bbclass b/classes/package.bbclass index 8a77369682..3360dcb2de 100644 --- a/classes/package.bbclass +++ b/classes/package.bbclass @@ -166,7 +166,7 @@ def runstrip(file, d): # If the file is in a .debug directory it was already stripped, # don't do it again... if os.path.dirname(file).endswith(".debug"): - bb.note("Already ran strip") + bb.debug(2, "Already ran strip on %s" % file) return 0 strip = bb.data.getVar("STRIP", d, 1) @@ -564,7 +564,7 @@ python package_do_shlibs() { exclude_shlibs = bb.data.getVar('EXCLUDE_FROM_SHLIBS', d, 0) if exclude_shlibs: - bb.note("not generating shlibs") + bb.debug(1, "not generating shlibs") return lib_re = re.compile("^lib.*\.so") diff --git a/classes/packaged-staging.bbclass b/classes/packaged-staging.bbclass index 849f60c500..82c1a0d38b 100644 --- a/classes/packaged-staging.bbclass +++ b/classes/packaged-staging.bbclass @@ -109,17 +109,17 @@ def pstage_cleanpackage(pkgname, d): pstage_set_pkgmanager(d) list_cmd = bb.data.getVar("PSTAGE_LIST_CMD", d, True) - bb.note("Checking if staging package installed") + bb.debug(2, "Checking if staging package installed") lf = bb.utils.lockfile(bb.data.expand("${STAGING_DIR}/staging.lock", d)) ret = os.system("PATH=\"%s\" %s | grep %s" % (path, list_cmd, pkgname)) if ret == 0: - bb.note("Yes. Uninstalling package from staging...") + bb.debug(1, "Uninstalling package from staging...") removecmd = bb.data.getVar("PSTAGE_REMOVE_CMD", d, 1) ret = os.system("PATH=\"%s\" %s %s" % (path, removecmd, pkgname)) if ret != 0: bb.note("Failure removing staging package") else: - bb.note("No. Manually removing any installed files") + bb.debug(1, "Manually removing any installed files from staging...") pstage_manualclean("staging", "STAGING_DIR", d) pstage_manualclean("cross", "CROSS_DIR", d) pstage_manualclean("deploy", "DEPLOY_DIR", d) -- cgit v1.2.3 From 9699a955d48cb500b0b3dd691be68979c93bc72e Mon Sep 17 00:00:00 2001 From: Chris Larson Date: Fri, 13 Mar 2009 13:42:06 -0700 Subject: Shorten some full paths printed to the user. Adds a base_path_out convenience function, which prepares a full path for display to the user. The initial implementation just makes it relative to ${TOPDIR}. This function is then used for some messages outputted to the user (packaged-staging, patch application, clean, unpack tasks). Signed-off-by: Chris Larson --- classes/base.bbclass | 17 +++++++++++++---- classes/packaged-staging.bbclass | 2 +- classes/patch.bbclass | 2 +- 3 files changed, 15 insertions(+), 6 deletions(-) (limited to 'classes') diff --git a/classes/base.bbclass b/classes/base.bbclass index 3d4a426e75..e622aeec51 100644 --- a/classes/base.bbclass +++ b/classes/base.bbclass @@ -39,6 +39,14 @@ def base_path_relative(src, dest): return sep.join(relpath) +def base_path_out(path, d): + """ Prepare a path for display to the user. """ + rel = base_path_relative(d.getVar("TOPDIR", 1), path) + if len(rel) > len(path): + return path + else: + return rel + # for MD5/SHA handling def base_chk_load_parser(config_paths): import ConfigParser, os, bb @@ -69,6 +77,7 @@ def base_chk_file(parser, pn, pv, src_uri, localpath, data): # md5 and sha256 should be valid now if not os.path.exists(localpath): + localpath = base_path_out(localpath, data) bb.note("The localpath does not exist '%s'" % localpath) raise Exception("The path does not exist '%s'" % localpath) @@ -497,11 +506,11 @@ python base_do_clean() { """clear the build and temp directories""" dir = bb.data.expand("${WORKDIR}", d) if dir == '//': raise bb.build.FuncFailed("wrong DATADIR") - bb.note("removing " + dir) + bb.note("removing " + base_path_out(dir, d)) os.system('rm -rf ' + dir) dir = "%s.*" % bb.data.expand(bb.data.getVar('STAMP', d), d) - bb.note("removing " + dir) + bb.note("removing " + base_path_out(dir, d)) os.system('rm -f '+ dir) } @@ -556,7 +565,7 @@ python base_do_distclean() { except bb.MalformedUrl, e: bb.debug(1, 'Unable to generate local path for malformed uri: %s' % e) else: - bb.note("removing %s" % local) + bb.note("removing %s" % base_path_out(local, d)) try: if os.path.exists(local + ".md5"): os.remove(local + ".md5") @@ -777,7 +786,7 @@ def oe_unpack_file(file, data, url = None): os.chdir(newdir) cmd = "PATH=\"%s\" %s" % (bb.data.getVar('PATH', data, 1), cmd) - bb.note("Unpacking %s to %s/" % (file, os.getcwd())) + bb.note("Unpacking %s to %s/" % (base_path_out(file, data), base_path_out(os.getcwd(), data))) ret = os.system(cmd) os.chdir(save_cwd) diff --git a/classes/packaged-staging.bbclass b/classes/packaged-staging.bbclass index 82c1a0d38b..bd7b9ea398 100644 --- a/classes/packaged-staging.bbclass +++ b/classes/packaged-staging.bbclass @@ -135,7 +135,7 @@ do_clean_prepend() { pstage_cleanpackage(removepkg, d) stagepkg = bb.data.expand("${PSTAGE_PKG}", d) - bb.note("Removing staging package %s" % stagepkg) + bb.note("Removing staging package %s" % base_path_out(stagepkg, d)) os.system('rm -rf ' + stagepkg) } diff --git a/classes/patch.bbclass b/classes/patch.bbclass index 8d2bde0c4f..2f99e4cf30 100644 --- a/classes/patch.bbclass +++ b/classes/patch.bbclass @@ -527,7 +527,7 @@ python patch_do_patch() { bb.note("Patch '%s' applies to earlier revisions" % pname) continue - bb.note("Applying patch '%s' (%s)" % (pname, unpacked)) + bb.note("Applying patch '%s' (%s)" % (pname, base_path_out(unpacked, d))) try: patchset.Import({"file":unpacked, "remote":url, "strippath": pnum}, True) except: -- cgit v1.2.3