All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] base.bbclass: Combine all checksum.ini files found in BBPATH
@ 2009-04-15  7:59 petri.lehtinen+openembedded-devel
  2009-04-15 18:22 ` Khem Raj
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: petri.lehtinen+openembedded-devel @ 2009-04-15  7:59 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Petri Lehtinen

From: Petri Lehtinen <petri.lehtinen@inoi.fi>

This makes it possible for overlays to have checksum.ini.

Signed-off-by: Petri Lehtinen <petri.lehtinen@inoi.fi>
---
 classes/base.bbclass |   22 +++++++++++++---------
 1 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/classes/base.bbclass b/classes/base.bbclass
index 9ec705b..e5fd814 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
-- 
1.6.0.4




^ permalink raw reply related	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2009-04-22  7:05 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-04-15  7:59 [PATCH] base.bbclass: Combine all checksum.ini files found in BBPATH petri.lehtinen+openembedded-devel
2009-04-15 18:22 ` Khem Raj
2009-04-16  0:05 ` Denys Dmytriyenko
2009-04-16  0:23 ` Chris Larson
2009-04-16 12:32   ` Otavio Salvador
2009-04-22  5:04 ` Petri Lehtinen
2009-04-22  5:44   ` Denys Dmytriyenko
2009-04-22  6:54     ` Petri Lehtinen
2009-04-22  7:01       ` Petri Lehtinen

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.