abuild: Add option of starting with an existing defconfig file

We want to start testing builds with additional Kconfig options to try
to get more coverage.  This will allow us to enable various options to
test without having to add each individual option to the abuild script.

Change-Id: I9bb2bb6f38589e3bcc1282dc4cad51cf6f5149aa
Signed-off-by: Martin Roth <martinroth@google.com>
Reviewed-on: https://review.coreboot.org/14016
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
This commit is contained in:
Martin Roth 2016-03-09 13:12:10 -07:00
parent 2510e2aa44
commit 10008107b7
1 changed files with 8 additions and 2 deletions

View File

@ -410,6 +410,7 @@ Options:\n"
[-o|--outdir <path>] store build results in path [-o|--outdir <path>] store build results in path
(defaults to $TARGET) (defaults to $TARGET)
[-L|--clang] Use clang [-L|--clang] Use clang
[-K|--kconfig <name>] Prepend file to generated Kconfig
[-x|--chromeos] Build with CHROMEOS enabled [-x|--chromeos] Build with CHROMEOS enabled
Skip boards without Chrome OS support Skip boards without Chrome OS support
[-X|--xmlfile <name>] set JUnit XML log file filename [-X|--xmlfile <name>] set JUnit XML log file filename
@ -456,11 +457,11 @@ cmdline="$* -c 1"
getoptbrand="`getopt -V`" getoptbrand="`getopt -V`"
if [ "${getoptbrand:0:6}" == "getopt" ]; then if [ "${getoptbrand:0:6}" == "getopt" ]; then
# Detected GNU getopt that supports long options. # 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: -o Vvqhat:p:c:sJCl:rP:uyBLzo:xX: -- "$@"` || 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: -o Vvqhat:p:c:sJCl:rP:uyBLzo:xX:K: -- "$@"` || exit 1
eval set -- $args eval set -- $args
else else
# Detected non-GNU getopt # Detected non-GNU getopt
args=`getopt Vvqhat:p:c:sJCl:rP:uyBLzo:xX: $*` args=`getopt Vvqhat:p:c:sJCl:rP:uyBLzo:xX:K: $*`
set -- $args set -- $args
fi fi
@ -538,6 +539,11 @@ while true ; do
configoptions="${configoptions}CONFIG_CHROMEOS=y\n" configoptions="${configoptions}CONFIG_CHROMEOS=y\n"
;; ;;
-X|--xmlfile) shift; XMLFILE=$1; REAL_XMLFILE=$1; shift;; -X|--xmlfile) shift; XMLFILE=$1; REAL_XMLFILE=$1; shift;;
-K|--kconfig) shift
testclass=="$(basename $1 | tr '.' '_' )"
customizing="${customizing}, $1 config"
configoptions="$(cat "$1")${configoptions}\n"
shift;;
--) shift; break;; --) shift; break;;
-*) printf "Invalid option\n\n"; myhelp; exit 1;; -*) printf "Invalid option\n\n"; myhelp; exit 1;;
*) break;; *) break;;