diff options
author | Petri Lehtinen <petri.lehtinen@inoi.fi> | 2009-04-21 20:06:54 +0000 |
---|---|---|
committer | Marcin Juszkiewicz <hrw@openembedded.org> | 2009-04-22 21:12:10 +0200 |
commit | 60dea07419fcef9183403ba7340cbed4dff58933 (patch) | |
tree | 820cdbac0b139b226cb27a5d210d083c323c8181 /classes | |
parent | 02651858023fda4750cf5c881ff6897ed7fb7357 (diff) | |
download | openembedded-60dea07419fcef9183403ba7340cbed4dff58933.tar.gz |
base.bbclass: Combine all checksum.ini files found in BBPATH
This makes it possible for overlays to have checksum.ini.
Signed-off-by: Denys Dmytriyenko <denis@denix.org>
Acked-by: Koen Kooi <koen@openembedded.org>
Acked-by: Tom Rini <trini@embeddedalley.com>
Diffstat (limited to 'classes')
-rw-r--r-- | classes/base.bbclass | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/classes/base.bbclass b/classes/base.bbclass index 9ec705bc1e..e5fd814b25 100644 --- a/classes/base.bbclass +++ b/classes/base.bbclass @@ -40,12 +40,11 @@ def base_path_relative(src, dest): return sep.join(relpath) # for MD5/SHA handling -def base_chk_load_parser(config_path): +def base_chk_load_parser(config_paths): import ConfigParser, os, bb parser = ConfigParser.ConfigParser() - if not len(parser.read(config_path)) == 1: - bb.note("Can not open the '%s' ini file" % config_path) - raise Exception("Can not open the '%s'" % config_path) + if len(parser.read(config_paths)) < 1: + raise ValueError("no ini files could be found") return parser @@ -620,13 +619,18 @@ python base_do_fetch() { # Verify the SHA and MD5 sums we have in OE and check what do # in - check_sum = bb.which(bb.data.getVar('BBPATH', d, True), "conf/checksums.ini") - if not check_sum: - bb.note("No conf/checksums.ini found, not checking checksums") - return + checksum_paths = bb.data.getVar('BBPATH', d, True).split(":") + + # reverse the list to give precedence to directories that + # appear first in BBPATH + checksum_paths.reverse() + checksum_files = ["%s/conf/checksums.ini" % path for path in checksum_paths] try: - parser = base_chk_load_parser(check_sum) + parser = base_chk_load_parser(checksum_files) + except ValueError: + bb.note("No conf/checksums.ini found, not checking checksums") + return except: bb.note("Creating the CheckSum parser failed") return |