diff options
| author | Ross Burton <ross@openedhand.com> | 2008-05-01 11:00:27 +0000 | 
|---|---|---|
| committer | Ross Burton <ross@openedhand.com> | 2008-05-01 11:00:27 +0000 | 
| commit | 9fb8bc41bf3e9369aa213ac5397851ffe3aafc7c (patch) | |
| tree | 8ae717d8c3d3d8a24bb7565ab140d4e86946b6d2 /meta/classes/base.bbclass | |
| parent | 8bfb9258cf612488d568eb67bc89a9c271b70a70 (diff) | |
| download | openembedded-core-9fb8bc41bf3e9369aa213ac5397851ffe3aafc7c.tar.gz openembedded-core-9fb8bc41bf3e9369aa213ac5397851ffe3aafc7c.tar.bz2 openembedded-core-9fb8bc41bf3e9369aa213ac5397851ffe3aafc7c.zip | |
When checksuming tarballs use bb.utils.*_sum instead of calling commands directly
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4387 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'meta/classes/base.bbclass')
| -rw-r--r-- | meta/classes/base.bbclass | 30 | 
1 files changed, 15 insertions, 15 deletions
| diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass index 2e8f3f08fb..0c048b997b 100644 --- a/meta/classes/base.bbclass +++ b/meta/classes/base.bbclass @@ -45,21 +45,21 @@ def base_chk_file(parser, pn, pv, src_uri, localpath, data):          raise Exception("The path does not exist '%s'" % localpath) -    # call md5(sum) and shasum -    try: -        md5pipe = os.popen('md5sum ' + localpath) -        md5data = (md5pipe.readline().split() or [ "" ])[0] -        md5pipe.close() -    except OSError: -        raise Exception("Executing md5sum failed") - -    try: -        shapipe = os.popen('PATH=%s oe_sha256sum %s' % (bb.data.getVar('PATH', data, True), localpath)) -        shadata = (shapipe.readline().split() or [ "" ])[0] -        shapipe.close() -    except OSError: -        raise Exception("Executing shasum failed") - +    # Calculate the MD5 and 256-bit SHA checksums +    md5data = bb.utils.md5_file(localpath) +    shadata = bb.utils.sha256_file(localpath) + +    # sha256_file() can return None if we are running on Python 2.4 (hashlib is +    # 2.5 onwards, sha in 2.4 is 160-bit only), so check for this and call the +    # standalone shasum binary if required. +    if shadata is None: +        try: +            shapipe = os.popen('PATH=%s oe_sha256sum %s' % (bb.data.getVar('PATH', data, True), localpath)) +            shadata = (shapipe.readline().split() or [ "" ])[0] +            shapipe.close() +        except OSError: +            raise Exception("Executing shasum failed, please build shasum-native") +          if no_checksum == True:	# we do not have conf/checksums.ini entry          try:              file = open("%s/checksums.ini" % bb.data.getVar("TMPDIR", data, 1), "a") | 
