summaryrefslogtreecommitdiffstats
path: root/meta-rcar-gen3/include/checksum_control.inc
diff options
context:
space:
mode:
authorRonan Le Martret <ronan.lemartret@iot.bzh>2018-08-30 12:16:20 +0000
committerRonan Le Martret <ronan.lemartret@iot.bzh>2019-09-13 10:30:51 +0200
commit62ef568cb2d9cdecde8cc58d677f1a42722ff3a5 (patch)
tree8354dc57fe081eec946bc439457f5202e64a6ac7 /meta-rcar-gen3/include/checksum_control.inc
parent838c095da6554becb79d1bdac3267f6801fe95db (diff)
[AGL] Add driver control checksum
* As the driver files come from out of git repository, we need to check driver file integrity. Change-Id: I46f2a281f8da1ae606e8ae1ee55324fd5fd9b772 Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh>
Diffstat (limited to 'meta-rcar-gen3/include/checksum_control.inc')
-rw-r--r--meta-rcar-gen3/include/checksum_control.inc25
1 files changed, 25 insertions, 0 deletions
diff --git a/meta-rcar-gen3/include/checksum_control.inc b/meta-rcar-gen3/include/checksum_control.inc
new file mode 100644
index 0000000..e0decc7
--- /dev/null
+++ b/meta-rcar-gen3/include/checksum_control.inc
@@ -0,0 +1,25 @@
+require include/checksum_control_files.inc
+
+python do_checksum_control() {
+ to_check_dico = d.getVarFlags("CTL_CHECKSUM")
+ if to_check_dico is None:
+ return 0
+
+ src_uri = (d.getVar('SRC_URI') or "").split()
+ for s in src_uri:
+ c_source=os.path.basename(s)
+ bb.note("Check source: %s " % (c_source))
+ if c_source in to_check_dico:
+ f_data = bb.fetch2.FetchData(s, d, True)
+ f_data.setup_localpath(d)
+ if os.path.exists(f_data.localpath):
+ mdr5_sum=bb.utils.md5_file(f_data.localpath)
+ mdr5_ctl=to_check_dico[c_source]
+ if mdr5_sum != mdr5_ctl:
+ bb.fatal( "File %s hash should be %s but %s find, please update your driver files." % (c_source, mdr5_ctl, mdr5_sum))
+}
+
+do_checksum_control[doc] = "Do a checksum of the archives source files"
+do_checksum_control[vardeps] = "CTL_CHECKSUM"
+
+addtask do_checksum_control before do_unpack after do_fetch