Subject: [PATCH] kbuild-2.5: quote Menuconfig quotemarks

kbuild-2.5: quote the quotemarks in scripts/Menuconfig in order to pass
them through to eval and avoid annoying bugs

BTW, these patches are also available at
<URL:ftp://luckynet.dynu.com/pub/linux/kbuild-2.5/>

diff -Nur kbuild-2.5/scripts/Menuconfig kbuild-2.5/scripts/Menuconfig
--- kbuild-2.5/scripts/Menuconfig Sat Jun 1 16:19:33 2002
+++ kbuild-2.5/scripts/Menuconfig Sat Jun 1 16:19:33 2002 +0000 thunder (thunder-2.5/scripts/Menuconfig 1.1 0644)
@@ -73,6 +73,10 @@
# - Support for multiple conditions in dep_tristate().
# - Implemented new functions: define_tristate(), define_int(), define_hex(),
# define_string(), dep_bool().
+#
+# 12 November 2001, Keith Owens <[email protected]>
+# Escape double quotes on eval so the quotes are still there on the second
+# evaluation, required to handle strings with special characters.
#


@@ -105,11 +109,11 @@
eval x=\$$1
if [ -z "$x" ]; then
eval `sed -n -e 's/# \(.*\) is not set.*/\1=n/' -e "/^$1=/p" arch/$ARCH/defconfig`
- eval x=\${$1:-"$2"}
+ eval x=\${$1:-\"$2\"}
eval $1=$x
eval INFO_$1="' (NEW)'"
fi
- eval info="\$INFO_$1"
+ eval info=\"\$INFO_$1\"
}

#
@@ -151,7 +155,7 @@
}

function define_string () {
- eval $1="$2"
+ eval $1=\"$2\"
}

#
@@ -333,7 +337,7 @@

while [ -n "$2" ]
do
- if eval [ "_\$$2" = "_y" ]
+ if eval [ \"_\$$2\" = \"_y\" ]
then
current=$1
break
@@ -543,9 +547,9 @@
# we avoid them:
if expr "$answer" : '0$' '|' "$answer" : '[1-9][0-9]*$' '|' "$answer" : '-[1-9][0-9]*$' >/dev/null
then
- eval $2="$answer"
+ eval $2=\"$answer\"
else
- eval $2="$3"
+ eval $2=\"$3\"
echo -en "\007"
${DIALOG} --backtitle "$backtitle" \
--infobox "You have made an invalid entry." 3 43
@@ -576,9 +580,9 @@

if expr "$answer" : '[0-9a-fA-F][0-9a-fA-F]*$' >/dev/null
then
- eval $2="$answer"
+ eval $2=\"$answer\"
else
- eval $2="$3"
+ eval $2=\"$3\"
echo -en "\007"
${DIALOG} --backtitle "$backtitle" \
--infobox "You have made an invalid entry." 3 43
@@ -676,9 +680,9 @@
do
if [ "$2" = "$choice" ]
then
- eval $2="y"
+ eval $2=\"y\"
else
- eval $2="n"
+ eval $2=\"n\"
fi

shift ; shift
@@ -941,9 +945,9 @@

[ "_" = "_$ALT_CONFIG" ] && break

- if eval [ -r "$ALT_CONFIG" ]
+ if eval [ -r \"$ALT_CONFIG\" ]
then
- eval load_config_file "$ALT_CONFIG"
+ eval load_config_file \"$ALT_CONFIG\"
break
else
echo -ne "\007"
@@ -1067,12 +1071,12 @@
#
function bool () {
set_x_info "$2" "n"
- eval define_bool "$2" "$x"
+ eval define_bool \"$2\" \"$x\"
}

function tristate () {
set_x_info "$2" "n"
- eval define_tristate "$2" "$x"
+ eval define_tristate \"$2\" \"$x\"
}

function dep_tristate () {
@@ -1138,19 +1142,19 @@
}

function define_hex () {
- eval $1="$2"
+ eval $1=\"$2\"
echo "$1=$2" >>$CONFIG
echo "#define $1 0x${2##*[x,X]}" >>$CONFIG_H
}

function define_int () {
- eval $1="$2"
+ eval $1=\"$2\"
echo "$1=$2" >>$CONFIG
echo "#define $1 ($2)" >>$CONFIG_H
}

function define_string () {
- eval $1="$2"
+ eval $1=\"$2\"
echo "$1=\"$2\"" >>$CONFIG
echo "#define $1 \"$2\"" >>$CONFIG_H
}
@@ -1160,7 +1164,7 @@
}

function define_tristate () {
- eval $1="$2"
+ eval $1=\"$2\"

case "$2" in
y)
@@ -1199,7 +1203,7 @@
set -- $choices
while [ -n "$2" ]
do
- if eval [ "_\$$2" = "_y" ]
+ if eval [ \"_\$$2\" = \"_y\" ]
then
current=$1
break
--
Lightweight patch manager using pine. If you have any objections, tell me.


2002-06-02 19:12:38

by Linus Torvalds

[permalink] [raw]
Subject: Re: [PATCH] kbuild-2.5: quote Menuconfig quotemarks


Kai,
are you willing to integrate the kbuild patches (or whatever subset of
them you find appropriate)? The split-up looks reasonable, but I'd rather
have somebody else (and neutral) do the final integration..

Linus

2002-06-03 02:23:34

by Kai Germaschewski

[permalink] [raw]
Subject: Re: [PATCH] kbuild-2.5: quote Menuconfig quotemarks

On Sun, 2 Jun 2002, Linus Torvalds wrote:

> are you willing to integrate the kbuild patches (or whatever subset of
> them you find appropriate)? The split-up looks reasonable, but I'd rather
> have somebody else (and neutral) do the final integration..

I sure am willing to integrate what I find appropriate. (I already said
that I was going to do that before, when Sam Ravnborg posted some
functionally split out pieces form kbuild-2.5). This surely doesn't
include the patches which just were the original kbuild-2.5 split into
"add this new file, then add that new file" patches, though.

Please, everybody, give me some time to do so, my queue of patches to
clean up, test and submit is already beyond any reasonable limit, so it
won't be done by the day after tomorrow. When I'm done integrating what I
find appropriate, I'd be more than happy to discuss what else other people
want, but please let me do that part first, so that we have a reasonable
basis to start from. I also hope that at that point the discussion will be
much less heated.

So if you have split patches, which do one thing at a time (as opposed to
nothing or N things at a time, where N >> 1), feel free to send them to me
and bug me about it - no need to resend stuff which was already on the
list, though. But please save me the rest of the flamewar for now.

--Kai


2002-06-03 10:17:04

by Daniel Phillips

[permalink] [raw]
Subject: Re: [PATCH] kbuild-2.5: quote Menuconfig quotemarks

On Monday 03 June 2002 04:23, Kai Germaschewski wrote:
> On Sun, 2 Jun 2002, Linus Torvalds wrote:
>
> > are you willing to integrate the kbuild patches (or whatever subset of
> > them you find appropriate)? The split-up looks reasonable, but I'd rather
> > have somebody else (and neutral) do the final integration..
>
> I sure am willing to integrate what I find appropriate. (I already said
> that I was going to do that before, when Sam Ravnborg posted some
> functionally split out pieces form kbuild-2.5). This surely doesn't
> include the patches which just were the original kbuild-2.5 split into
> "add this new file, then add that new file" patches, though.
>
> Please, everybody, give me some time to do so, my queue of patches to
> clean up, test and submit is already beyond any reasonable limit, so it
> won't be done by the day after tomorrow. When I'm done integrating what I
> find appropriate, I'd be more than happy to discuss what else other people
> want, but please let me do that part first, so that we have a reasonable
> basis to start from. I also hope that at that point the discussion will be
> much less heated.
>
> So if you have split patches, which do one thing at a time (as opposed to
> nothing or N things at a time, where N >> 1), feel free to send them to me
> and bug me about it - no need to resend stuff which was already on the
> list, though...

Just to be clear, this should be directed at "Lightweight patch manager
<[email protected]>", aka Thunder. Thanks, Kai.

--
Daniel

2002-06-05 21:56:56

by Thunder from the hill

[permalink] [raw]
Subject: Re: [PATCH] kbuild-2.5: quote Menuconfig quotemarks

Hi,

On Mon, 3 Jun 2002, Daniel Phillips wrote:
> > > are you willing to integrate the kbuild patches (or whatever subset of
> > > them you find appropriate)? The split-up looks reasonable, but I'd rather
> > > have somebody else (and neutral) do the final integration..
>
> Just to be clear, this should be directed at "Lightweight patch manager
> <[email protected]>", aka Thunder. Thanks, Kai.

Jesus! I think I shouldn't take it because, as Linus mentioned, I might
not be 100% neutral. Well, I actually made it in any case to be neutral,
but this time it's different in many ways, especially because I'd have to
show a neutral attitude towards my own patches, and it would only be one
person to find it appropriate.

I try to avoid any prejudices concerning anyone, which includes Kai, so
we'll give it a try.

Regards,
Thunder
--
ship is leaving right on time | Thunder from the hill at ngforever
empty harbour, wave goodbye |
evacuation of the isle | free inhabitant not directly
caveman's paintings drowning | belonging anywhere