[PATCH] tiny bug in xconfig

Axel Boldt (axel@uni-paderborn.de)
Sat, 28 Mar 1998 05:56:52 +0100 (MET)


Hi,

scripts/tkgen.c generates the middle part of the tcl/tk script kconfig.tk
from the various config.in's; kconfig.tk is then used by make xconfig.

In xconfig, it is not possible to select "Kernel/User netlink socket"
(under Networking options) unless "IP: Advanced Router" is also
selected. The reason for this bug is that the line

if [ "$CONFIG_IP_ADVANCED_ROUTER" = "y" ]; then
define_bool CONFIG_RTNETLINK y
define_bool CONFIG_NETLINK y

in net/ipv4/Config.in is not translated properly into tcl.
The procedure update_define in kconfig.tk handles conditional
define_bool's; it should not unconditionally set every variable to 0
since the variable may have been set to 1 elsewhere.

Here's the patch:

--- linux/scripts/tkgen.c Mon Feb 9 18:12:56 1998
+++ /usr/local/tmp/linux.patched/scripts/tkgen.c Fri Mar 27 22:49:45 1998
@@ -61,6 +61,11 @@
* user switches from one configuration method to
* another.
*
+ * 1998 03 09
+ * Axel Boldt - update_define should not set all variables unconditionally to
+ * 0: they may have been set to 1 elsewhere. CONFIG_NETLINK is
+ * an example.
+ *
* TO DO:
* - clean up - there are useless ifdef's everywhere.
* - better comments throughout - C code generating tcl is really cryptic.
@@ -1124,7 +1129,7 @@
for(cfg = scfg; cfg != NULL; cfg = cfg->next)
{
if( cfg->tok != tok_define ) continue;
- printf("\tglobal %s; set %s 0\n", cfg->optionname, cfg->optionname);
+ printf("\tglobal %s\n", cfg->optionname);
cfg->flags |= GLOBAL_WRITTEN;
}
for(cfg = scfg; cfg != NULL; cfg = cfg->next)

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu