[coreboot-gerrit] Change in coreboot[master]: util/abuild: Save checksums of build files

Martin Roth (Code Review) gerrit at coreboot.org
Tue Apr 4 17:46:52 CEST 2017


Martin Roth has submitted this change and it was merged. ( https://review.coreboot.org/19033 )

Change subject: util/abuild: Save checksums of build files
......................................................................


util/abuild: Save checksums of build files

- Add --checksum command line parameter to specify a base path and
filename for the checksums to be saved into.
- Save checksums of each platform into the specified file appended
with "_platform"
- Save a sha256 checksum of the sorted config.h into the base file
appended with "_config"

Change-Id: Id24dc4b10afbd35cdb8750f75b934419e6e80290
Signed-off-by: Martin Roth <gaumless at gmail.com>
Reviewed-on: https://review.coreboot.org/19033
Tested-by: build bot (Jenkins)
Reviewed-by: Philippe Mathieu-Daudé <philippe.mathieu.daude at gmail.com>
Reviewed-by: Patrick Georgi <pgeorgi at google.com>
---
M util/abuild/abuild
1 file changed, 11 insertions(+), 1 deletion(-)

Approvals:
  Philippe Mathieu-Daudé: Looks good to me, but someone else must approve
  build bot (Jenkins): Verified
  Patrick Georgi: Looks good to me, approved



diff --git a/util/abuild/abuild b/util/abuild/abuild
index 95711a1..becf538 100755
--- a/util/abuild/abuild
+++ b/util/abuild/abuild
@@ -50,6 +50,9 @@
 # Did any board fail to build?
 failed=0
 
+# default: don't save checksums
+checksum_file=""
+
 # default: single CPU build
 cpus=1
 
@@ -366,6 +369,11 @@
 		failed=1
 	fi
 	cd "$CURR" || return $?
+	if [ -n "$checksum_file" ]; then
+		sha256sum "${build_dir}/coreboot.rom" >> "${checksum_file}_platform"
+		sort "${build_dir}/config.h" | grep CONFIG_ > "${build_dir}/config.h.sorted"
+		sha256sum "${build_dir}/config.h.sorted" >> "${checksum_file}_config"
+	fi
 	if [ "$clean_work" = "true" ]; then
 		rm -rf "${build_dir}"
 	fi
@@ -518,6 +526,7 @@
 Options:\n"
     [-a|--all]                    Build previously succeeded ports as well
     [-B|--blobs]                  Allow using binary files
+    [--checksum <path/basefile>]  Store checksums at path/basefile
     [-c|--cpus <numcpus>]         Build on <numcpus> at the same time
     [-C|--config]                 Configure-only mode
     [-d|--dir <dir>]              Directory containing config files
@@ -590,7 +599,7 @@
 # shellcheck disable=SC2086
 if [ "${getoptbrand:0:6}" == "getopt" ]; then
 	# Detected GNU getopt that supports long options.
-	args=$(getopt -l version,verbose,quiet,help,all,target:,payloads:,cpus:,silent,junit,config,loglevel:,remove,prefix:,update,scan-build,ccache,blobs,clang,clean,outdir:,chromeos,xmlfile:,kconfig:,dir:,root:,recursive -o Vvqhat:p:c:sJCl:rP:uyBLzo:xX:K:d:R:I -- "$@") || exit 1
+	args=$(getopt -l version,verbose,quiet,help,all,target:,payloads:,cpus:,silent,junit,config,loglevel:,remove,prefix:,update,scan-build,ccache,blobs,clang,clean,outdir:,chromeos,xmlfile:,kconfig:,dir:,root:,recursive,checksum: -o Vvqhat:p:c:sJCl:rP:uyBLzo:xX:K:d:R:I -- "$@") || exit 1
 	eval set -- $args
 	retval=$?
 else
@@ -682,6 +691,7 @@
 			customizing="${customizing}, $1 config"
 			configoptions="$(cat "$1")${configoptions}\n"
 			shift;;
+		--checksum)	shift; checksum_file="$1"; shift;;
 		--)		shift; break;;
 		-*)		printf "Invalid option '%s'\n\n" "$1"; myhelp; exit 1;;
 		*)		break;;

-- 
To view, visit https://review.coreboot.org/19033
To unsubscribe, visit https://review.coreboot.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Id24dc4b10afbd35cdb8750f75b934419e6e80290
Gerrit-PatchSet: 5
Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Owner: Martin Roth <martinroth at google.com>
Gerrit-Reviewer: Martin Roth <martinroth at google.com>
Gerrit-Reviewer: Patrick Georgi <pgeorgi at google.com>
Gerrit-Reviewer: Paul Menzel <paulepanter at users.sourceforge.net>
Gerrit-Reviewer: Philippe Mathieu-Daudé <philippe.mathieu.daude at gmail.com>
Gerrit-Reviewer: build bot (Jenkins)



More information about the coreboot-gerrit mailing list