diff options
-rwxr-xr-x | verify_kernel_config | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/verify_kernel_config b/verify_kernel_config new file mode 100755 index 000000000000..0870f32afecf --- /dev/null +++ b/verify_kernel_config @@ -0,0 +1,52 @@ +#!/bin/sh + +verbose=-q + +while getopts vc:f:m:p arg; do + case $arg in + c ) check_file=$OPTARG ;; + f ) kernel_config=$OPTARG ;; + m ) mode=$OPTARG ;; + v ) verbose=;; + p ) picky=1;; + *) : ;; + esac +done + + +for var in $(cat "$check_file") ;do + case $var in + \#*) : ;; + *) + case $mode in + defined) + if ! grep $verbose "$var" "$kernel_config" ; then + if grep $verbose $(echo "$var"|sed 's/y/m/g') "$kernel_config" ; then + [ $picky ] && echo "$var not y" >&2 + else + echo "$var not defined" >&2 + fi + fi + ;; + kconfig) + if ! grep $verbose "$var" "$kernel_config" ; then + if grep $verbose $(echo "$var"|sed 's/y/m/g') "$kernel_config" ; then + [ $picky ] && echo "$var" + else + echo "$var" + fi + fi + ;; + notfound) + if ! grep -q $(echo "$var" |sed -e 's/=.*//') "$kernel_config" ; then + echo "$var not found" >&2 + fi + ;; + *) + echo "error undefined mode" >&2 + exit 1 + ;; + esac + ;; + esac +done |