scripts/config: add option to undef a symbol
authorYann E. MORIN <yann.morin.1998@free.fr>
Thu, 7 Jun 2012 23:48:57 +0000 (01:48 +0200)
committerMichal Marek <mmarek@suse.cz>
Thu, 28 Jun 2012 08:38:54 +0000 (10:38 +0200)
It is currently possible to enable, disable or modularise
a symbol. Also, an undefined symbol is reported as such.

Add a new command to undefine a symbol, by removing the
corresponding line from the .config file.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Michal Marek <mmarek@suse.cz>
scripts/config

index 9723c7de07cc1f2b905b48029ac677aeab3bfc32..f65a44a7886a7192d3c9cea6457e1aa8dee4d42f 100755 (executable)
@@ -17,6 +17,7 @@ commands:
                             Set option to "string"
        --set-val option value
                             Set option to value
+       --undefine|-u option Undefine option
        --state|-s option    Print state of option (n,y,m,undef)
 
        --enable-after|-E beforeopt option
@@ -73,6 +74,12 @@ set_var() {
        fi
 }
 
+undef_var() {
+       local name=$1
+
+       sed -ri "/^($name=|# $name is not set)/d" "$FN"
+}
+
 if [ "$1" = "--file" ]; then
        FN="$2"
        if [ "$FN" = "" ] ; then
@@ -134,6 +141,9 @@ while [ "$1" != "" ] ; do
                set_var "${CONFIG_}$ARG" "${CONFIG_}$ARG=$1"
                shift
                ;;
+       --undefine|-u)
+               undef_var "${CONFIG_}$ARG"
+               ;;
 
        --state|-s)
                if grep -q "# ${CONFIG_}$ARG is not set" $FN ; then