diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-05-28 10:37:56 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-05-28 10:37:56 -0700 |
commit | da85d3426f52b3728671b1b1a67c6bed16915c0e (patch) | |
tree | 167d36f5ade387e77969241f6ed9ee98eca2cf86 /scripts/config | |
parent | 1347a2cebcb4cd6ca94eda0ebc8c5c6825bc4544 (diff) | |
parent | d6686da814c884e341d3bd8aa54947c91cb678be (diff) |
Merge branch 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild
Pull kconfig changes from Michal Marek:
- Error handling for make KCONFIG_ALLCONFIG=<...> all*config plus a fix
for a bug that was exposed by this
- Fix for the script/config utility.
* 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
scripts/config: properly report and set string options
kbuild: all{no,yes,mod,def,rand}config only read files when instructed to.
kconfig: Add error handling to KCONFIG_ALLCONFIG
Diffstat (limited to 'scripts/config')
-rwxr-xr-x | scripts/config | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/scripts/config b/scripts/config index a7c7c4b8e957..ed6653ef9702 100755 --- a/scripts/config +++ b/scripts/config @@ -107,7 +107,8 @@ while [ "$1" != "" ] ; do ;; --set-str) - set_var "CONFIG_$ARG" "CONFIG_$ARG=\"$1\"" + # sed swallows one level of escaping, so we need double-escaping + set_var "CONFIG_$ARG" "CONFIG_$ARG=\"${1//\"/\\\\\"}\"" shift ;; @@ -124,9 +125,11 @@ while [ "$1" != "" ] ; do if [ $? != 0 ] ; then echo undef else - V="${V/CONFIG_$ARG=/}" - V="${V/\"/}" - echo "$V" + V="${V/#CONFIG_$ARG=/}" + V="${V/#\"/}" + V="${V/%\"/}" + V="${V/\\\"/\"}" + echo "${V}" fi fi ;; |