[OE-core] [PATCH 02/11] classes/insane: improve LIC_FILES_CHKSUM messages

Paul Eggleton paul.eggleton at linux.intel.com
Wed Nov 13 14:32:39 UTC 2013


* If the md5 parameter is specified with no value, report that the
  checksum is not specified instead of reporting that it has changed
* If the md5 checksum has changed, point directly to the license file in
  a way that is easy to copy and paste and give the line numbers in an
  easy to read form, as well as asking the user to verify that the new
  contents matches the current LICENSE value.

Signed-off-by: Paul Eggleton <paul.eggleton at linux.intel.com>
---
 meta/classes/insane.bbclass | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index 3558dee..f9f8def 100644
--- a/meta/classes/insane.bbclass
+++ b/meta/classes/insane.bbclass
@@ -602,7 +602,8 @@ def package_qa_check_license(workdir, d):
         if not os.path.isfile(srclicfile):
             raise bb.build.FuncFailed( pn + ": LIC_FILES_CHKSUM points to an invalid file: " + srclicfile)
 
-        if 'md5' not in parm:
+        recipemd5 = parm.get('md5', '')
+        if not recipemd5:
             bb.error(pn + ": md5 checksum is not specified for ", url)
             return False
         beginline, endline = 0, 0
@@ -633,12 +634,21 @@ def package_qa_check_license(workdir, d):
             md5chksum = bb.utils.md5_file(tmplicfile)
             os.unlink(tmplicfile)
 
-        if parm['md5'] == md5chksum:
+        if recipemd5 == md5chksum:
             bb.note (pn + ": md5 checksum matched for ", url)
         else:
             bb.error (pn + ": md5 data is not matching for ", url)
             bb.error (pn + ": The new md5 checksum is ", md5chksum)
-            bb.error (pn + ": Check if the license information has changed in")
+            if beginline:
+                if endline:
+                    srcfiledesc = "%s (lines %d through to %d)" % (srclicfile, beginline, endline)
+                else:
+                    srcfiledesc = "%s (beginning on line %d)" % (srclicfile, beginline)
+            elif endline:
+                srcfiledesc = "%s (ending on line %d)" % (srclicfile, endline)
+            else:
+                srcfiledesc = srclicfile
+            bb.error(pn + ": Check if the license information has changed in %s to verify that the LICENSE value \"%s\" remains valid" % (srcfiledesc, lic))
             sane = False
 
     return sane
-- 
1.8.1.2




More information about the Openembedded-core mailing list