From 849369d6c66d3054688672f97d31fceb8e8230fb Mon Sep 17 00:00:00 2001 From: root Date: Fri, 25 Dec 2015 04:40:36 +0000 Subject: initial_commit --- scripts/config | 156 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 156 insertions(+) create mode 100755 scripts/config (limited to 'scripts/config') diff --git a/scripts/config b/scripts/config new file mode 100755 index 00000000..a7c7c4b8 --- /dev/null +++ b/scripts/config @@ -0,0 +1,156 @@ +#!/bin/bash +# Manipulate options in a .config file from the command line + +usage() { + cat >&2 <>"$FN" + fi +} + +if [ "$1" = "--file" ]; then + FN="$2" + if [ "$FN" = "" ] ; then + usage + fi + shift 2 +else + FN=.config +fi + +if [ "$1" = "" ] ; then + usage +fi + +while [ "$1" != "" ] ; do + CMD="$1" + shift + case "$CMD" in + --refresh) + ;; + --*-after) + checkarg "$1" + A=$ARG + checkarg "$2" + B=$ARG + shift 2 + ;; + -*) + checkarg "$1" + shift + ;; + esac + case "$CMD" in + --enable|-e) + set_var "CONFIG_$ARG" "CONFIG_$ARG=y" + ;; + + --disable|-d) + set_var "CONFIG_$ARG" "# CONFIG_$ARG is not set" + ;; + + --module|-m) + set_var "CONFIG_$ARG" "CONFIG_$ARG=m" + ;; + + --set-str) + set_var "CONFIG_$ARG" "CONFIG_$ARG=\"$1\"" + shift + ;; + + --set-val) + set_var "CONFIG_$ARG" "CONFIG_$ARG=$1" + shift + ;; + + --state|-s) + if grep -q "# CONFIG_$ARG is not set" $FN ; then + echo n + else + V="$(grep "^CONFIG_$ARG=" $FN)" + if [ $? != 0 ] ; then + echo undef + else + V="${V/CONFIG_$ARG=/}" + V="${V/\"/}" + echo "$V" + fi + fi + ;; + + --enable-after|-E) + set_var "CONFIG_$B" "CONFIG_$B=y" "CONFIG_$A" + ;; + + --disable-after|-D) + set_var "CONFIG_$B" "# CONFIG_$B is not set" "CONFIG_$A" + ;; + + --module-after|-M) + set_var "CONFIG_$B" "CONFIG_$B=m" "CONFIG_$A" + ;; + + # undocumented because it ignores --file (fixme) + --refresh) + yes "" | make oldconfig + ;; + + *) + usage + ;; + esac +done + -- cgit v1.2.3