From: Denys Dmytriyenko Date: Sun, 24 Jan 2010 15:59:44 +0000 (+0000) Subject: base.bbclass: pre-create SRC_URI checksums to include in the recipe X-Git-Tag: Release-2010-05/1~705^2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e2de494b97a52169f794a669fb5e31e2b44dd3dd;p=openembedded.git base.bbclass: pre-create SRC_URI checksums to include in the recipe Signed-off-by: Denys Dmytriyenko Acked-by: Khem Raj Acked-by: Frans meulenbroeks --- diff --git a/classes/base.bbclass b/classes/base.bbclass index 384a67d3d6..846528618a 100644 --- a/classes/base.bbclass +++ b/classes/base.bbclass @@ -151,9 +151,27 @@ def base_chk_file(parser, pn, pv, src_uri, localpath, data): file.write("[%s]\nmd5=%s\nsha256=%s\n\n" % (src_uri, md5data, shadata)) file.close() + + from string import maketrans + trtable = maketrans("", "") + uname = src_uri.split("/")[-1].translate(trtable, "-+._") + + try: + ufile = open("%s/%s.sum" % (bb.data.getVar("TMPDIR", data, 1), uname), "wt") + except: + return False + + if not ufile: + raise Exception("Creating %s.sum failed" % uname) + + ufile.write("SRC_URI = \"%s;name=%s\"\nSRC_URI[%s.md5sum] = \"%s\"\nSRC_URI[%s.sha256sum] = \"%s\"\n" % (src_uri, uname, uname, md5data, uname, shadata)) + ufile.close() + if not bb.data.getVar("OE_STRICT_CHECKSUMS",data, True): bb.note("This package has no entry in checksums.ini, please add one") bb.note("\n[%s]\nmd5=%s\nsha256=%s" % (src_uri, md5data, shadata)) + bb.note("This package has no checksums in corresponding recipe, please add") + bb.note("SRC_URI = \"%s;name=%s\"\nSRC_URI[%s.md5sum] = \"%s\"\nSRC_URI[%s.sha256sum] = \"%s\"\n" % (src_uri, uname, uname, md5data, uname, shadata)) return True else: bb.note("Missing checksum")