Skip to contentSkip to conversation

kconfig: update kconfig-language text

PATCH Superseded Randy Dunlap 4 participants 11 messages Aug 13, 2007 – Oct 19, 2007

Subsystems (7)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 kconfig: update kconfig-language text

From: Randy Dunlap <[email protected]>

Add kconfig-language docs for mainmenu, def_bool[ean], and def_tristate.

---
 Documentation/kbuild/kconfig-language.txt |   12 ++++++++++++
 1 file changed, 12 insertions(+)
Documentation/kbuild/kconfig-language.txt +12 -0
@@ -77,6 +77,11 @@ applicable everywhere (see syntax).
   Optionally, dependencies only for this default value can be added with
   "if".
 
+- type definition + default value:
+	"def_bool"/"def_boolean"/"def_tristate" <expr> ["if" <expr>]
+  This is a shorthand notation for a type definition plus a value.
+  Optionally dependencies for this default value can be added with "if".
+
 - dependencies: "depends on"/"requires" <expr>
   This defines a dependency for this menu entry. If multiple
   dependencies are defined, they are connected with '&&'. Dependencies
@@ -289,3 +294,10 @@ source:
 	"source" <prompt>
 
 This reads the specified configuration file. This file is always parsed.
+
+mainmenu:
+
+	"mainmenu" <prompt>
+
+This sets the config program's title bar if the config program chooses
+to use it.
#1 lore raw
Quoted 14 lines · Randy Dunlap

From: Randy Dunlap <[email protected]>

Add kconfig-language docs for mainmenu, def_bool[ean], and def_tristate.

---
 Documentation/kbuild/kconfig-language.txt |   12 ++++++++++++
 1 file changed, 12 insertions(+)

Documentation/kbuild/kconfig-language.txt applicable everywhere (see syntax). · line 81

Quoted 6 lines
Documentation/kbuild/kconfig-language.txt +2 -0
@@ -77,6 +77,11 @@ applicable everywhere (see syntax).
   Optionally, dependencies only for this default value can be added with
   "if".
 
+- type definition + default value:
+	"def_bool"/"def_boolean"/"def_tristate" <expr> ["if" <expr>]
...

Should the redundant and unused def_boolean be documented or removed?

I'd prefer the latter.

cu
Adrian

Signature · 4 lines
       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed
#2 lore raw
Quoted 18 lines · Adrian Bunk
Quoted 17 lines · Randy Dunlap

From: Randy Dunlap <[email protected]>

Add kconfig-language docs for mainmenu, def_bool[ean], and def_tristate.

---
 Documentation/kbuild/kconfig-language.txt |   12 ++++++++++++
 1 file changed, 12 insertions(+)
Documentation/kbuild/kconfig-language.txt +0 -0
@@ -77,6 +77,11 @@ applicable everywhere (see syntax).
   Optionally, dependencies only for this default value can be added with
   "if".
 
Quoted 7 lines

Documentation/kbuild/kconfig-language.txt applicable everywhere (see syntax). · line 81

Quoted 3 lines
Documentation/kbuild/kconfig-language.txt +2 -0
+- type definition + default value:
+	"def_bool"/"def_boolean"/"def_tristate" <expr> ["if" <expr>]
...

Should the redundant and unused def_boolean be documented or removed?

I'd prefer the latter.

I don't see a problem with it. At any rate, I'm documenting the current state of the source code...

Get it removed and this doc can be changed.

Signature · 2 lines
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***
#3 lore raw
In reply to Adrian Bunk
Quoted 18 lines · Adrian Bunk
Quoted 17 lines · Randy Dunlap

From: Randy Dunlap <[email protected]>

Add kconfig-language docs for mainmenu, def_bool[ean], and def_tristate.

---
 Documentation/kbuild/kconfig-language.txt |   12 ++++++++++++
 1 file changed, 12 insertions(+)
Documentation/kbuild/kconfig-language.txt +0 -0
@@ -77,6 +77,11 @@ applicable everywhere (see syntax).
   Optionally, dependencies only for this default value can be added with
   "if".
 
Quoted 7 lines

Documentation/kbuild/kconfig-language.txt applicable everywhere (see syntax). · line 81

Quoted 3 lines
Documentation/kbuild/kconfig-language.txt +2 -0
+- type definition + default value:
+	"def_bool"/"def_boolean"/"def_tristate" <expr> ["if" <expr>]
...

Should the redundant and unused def_boolean be documented or removed?

I'd prefer the latter.

me too. and, as i've suggested before, it would also be cleaner to remove the redundant "requires" and almost redundant "depends" from Kconfig files, and standardize exclusively on "depends on".

at the moment, there are only five Kconfig files that use the far less common "depends" directive:

./drivers/telephony/Kconfig: depends ISA || PCI
./drivers/leds/Kconfig: depends LEDS_CLASS && ARCH_H1940
./drivers/input/misc/Kconfig: depends EXPERIMENTAL
./arch/blackfin/Kconfig: depends BFIN_DMA_5XX
./arch/powerpc/platforms/Kconfig: depends PPC_IBM_CELL_BLADE

adjust those and there's no reason to hang on to "depends" any longer.

rday

Signature · 7 lines
========================================================================
Robert P. J. Day
Linux Consulting, Training and Annoying Kernel Pedantry
Waterloo, Ontario, CANADA

http://fsdev.net/wiki/index.php?title=Main_Page
========================================================================
#4 lore raw
Quoted 40 lines · Robert P. J. Day
Quoted 18 lines · Adrian Bunk
Quoted 17 lines · Randy Dunlap

From: Randy Dunlap <[email protected]>

Add kconfig-language docs for mainmenu, def_bool[ean], and def_tristate.

---
 Documentation/kbuild/kconfig-language.txt |   12 ++++++++++++
 1 file changed, 12 insertions(+)
Documentation/kbuild/kconfig-language.txt +0 -0
@@ -77,6 +77,11 @@ applicable everywhere (see syntax).
   Optionally, dependencies only for this default value can be added with
   "if".
 
Quoted 6 lines

Documentation/kbuild/kconfig-language.txt applicable everywhere (see syntax). · line 81

Quoted 3 lines
Documentation/kbuild/kconfig-language.txt +2 -0
+- type definition + default value:
+	"def_bool"/"def_boolean"/"def_tristate" <expr> ["if" <expr>]
...

Should the redundant and unused def_boolean be documented or removed?

I'd prefer the latter.

me too. and, as i've suggested before, it would also be cleaner to remove the redundant "requires" and almost redundant "depends" from Kconfig files, and standardize exclusively on "depends on".

at the moment, there are only five Kconfig files that use the far less common "depends" directive:

./drivers/telephony/Kconfig: depends ISA || PCI
./drivers/leds/Kconfig: depends LEDS_CLASS && ARCH_H1940
./drivers/input/misc/Kconfig: depends EXPERIMENTAL
./arch/blackfin/Kconfig: depends BFIN_DMA_5XX
./arch/powerpc/platforms/Kconfig: depends PPC_IBM_CELL_BLADE

Quoted 3 lines

adjust those and there's no reason to hang on to "depends" any longer.

rday

but what problem are these? what is solved by these changes?

Signature · 2 lines
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***
#5 lore raw
Quoted 14 lines · Randy Dunlap
Quoted 13 lines · Robert P. J. Day

and, as i've suggested before, it would also be cleaner to remove the redundant "requires" and almost redundant "depends" from Kconfig files, and standardize exclusively on "depends on".

at the moment, there are only five Kconfig files that use the far less common "depends" directive:

./drivers/telephony/Kconfig: depends ISA || PCI
./drivers/leds/Kconfig: depends LEDS_CLASS && ARCH_H1940
./drivers/input/misc/Kconfig: depends EXPERIMENTAL
./arch/blackfin/Kconfig: depends BFIN_DMA_5XX
./arch/powerpc/platforms/Kconfig: depends PPC_IBM_CELL_BLADE

Quoted 5 lines
Quoted 3 lines

adjust those and there's no reason to hang on to "depends" any longer.

rday

but what problem are these? what is solved by these changes?

why support a directive that is almost entirely unused? sure, it's not hurting anything, but it also has no value. what's the point in continuing to support obvious redundancy in the Kconfig files and the parser?

rday

Signature · 7 lines
========================================================================
Robert P. J. Day
Linux Consulting, Training and Annoying Kernel Pedantry
Waterloo, Ontario, CANADA

http://fsdev.net/wiki/index.php?title=Main_Page
========================================================================
#6 lore raw

PATCH 1/1 kconfig syntax cleanups

In reply to Robert P. J. Day
Quoted 26 lines · Robert P. J. Day
Quoted 24 lines · Adrian Bunk
Quoted 14 lines · Randy Dunlap

From: Randy Dunlap <[email protected]>

Add kconfig-language docs for mainmenu, def_bool[ean], and def_tristate.

---
 Documentation/kbuild/kconfig-language.txt |   12 ++++++++++++
 1 file changed, 12 insertions(+)

Documentation/kbuild/kconfig-language.txt applicable everywhere (see syntax). · line 81

Quoted 6 lines
Documentation/kbuild/kconfig-language.txt +2 -0
@@ -77,6 +77,11 @@ applicable everywhere (see syntax).
   Optionally, dependencies only for this default value can be added with
   "if".
 
+- type definition + default value:
+	"def_bool"/"def_boolean"/"def_tristate" <expr> ["if" <expr>]
...

Should the redundant and unused def_boolean be documented or removed?

Quoted 6 lines
Quoted 1 line

I'd prefer the latter.

me too. and, as i've suggested before, it would also be cleaner to remove the redundant "requires" and almost redundant "depends" from Kconfig files, and standardize exclusively on "depends on".
...

Patch below.

Quoted 1 line

rday

cu
Adrian

<-- snip -->

This patch removes the following redundant and never or rarely used kconfig syntax:
- "def_boolean" (same as "def_bool")
- "requires" (same as "depends on")
- "depends" (same as "depends on")

Most of the size of this patch comes from regenerating generated files.

---

 arch/blackfin/Kconfig                |    2 
 arch/powerpc/Kconfig.debug           |    6 
 arch/powerpc/platforms/Kconfig       |    2 
 drivers/input/misc/Kconfig           |    2 
 drivers/leds/Kconfig                 |    2 
 drivers/telephony/Kconfig            |    2 
 net/wireless/Kconfig                 |    2 
 scripts/kconfig/lex.zconf.c_shipped  |    4 
 scripts/kconfig/zconf.gperf          |    2 
 scripts/kconfig/zconf.hash.c_shipped |  223 ++--
 scripts/kconfig/zconf.tab.c_shipped  | 1406 ++++++++++++++-------------
 scripts/kconfig/zconf.y              |   11 
 12 files changed, 889 insertions(+), 775 deletions(-)

5f428f723cec2529118c13fce4ea3b966626f108

arch/blackfin/Kconfig +1 -1
index 017defa..c1aec46 100644
@@ -603,7 +603,7 @@ config BFIN_DMA_5XX
 choice
 	prompt "Uncached SDRAM region"
 	default DMA_UNCACHED_1M
-	depends BFIN_DMA_5XX
+	depends on BFIN_DMA_5XX
 config DMA_UNCACHED_2M
 	bool "Enable 2M DMA region"
 config DMA_UNCACHED_1M
arch/powerpc/Kconfig.debug +3 -3
index ef35560..cb7193f 100644
@@ -96,7 +96,7 @@ config BDI_SWITCH
 
 config BOOTX_TEXT
 	bool "Support for early boot text console (BootX or OpenFirmware only)"
-	depends PPC_OF && PPC_MULTIPLATFORM
+	depends on PPC_OF && PPC_MULTIPLATFORM
 	help
 	  Say Y here to see progress messages from the boot firmware in text
 	  mode. Requires either BootX or Open Firmware.
@@ -177,12 +177,12 @@ endchoice
 
 config PPC_EARLY_DEBUG_44x_PHYSLOW
 	hex "Low 32 bits of early debug UART physical address"
-	depends PPC_EARLY_DEBUG_44x
+	depends on PPC_EARLY_DEBUG_44x
 	default "0x40000200"
 
 config PPC_EARLY_DEBUG_44x_PHYSHIGH
 	hex "EPRN of early debug UART physical address"
-	depends PPC_EARLY_DEBUG_44x
+	depends on PPC_EARLY_DEBUG_44x
 	default "0x1"
 
 endmenu
arch/powerpc/platforms/Kconfig +1 -1
index 932538a..aae679c 100644
@@ -120,7 +120,7 @@ config RTAS_FLASH
 
 config PPC_PMI
 	tristate "Support for PMI"
-	depends PPC_IBM_CELL_BLADE
+	depends on PPC_IBM_CELL_BLADE
 	help
 	  PMI (Platform Management Interrupt) is a way to
 	  communicate with the BMC (Baseboard Mangement Controller).
drivers/input/misc/Kconfig +1 -1
index 9b26574..ec78422 100644
@@ -151,7 +151,7 @@ config INPUT_POWERMATE
 
 config INPUT_YEALINK
 	tristate "Yealink usb-p1k voip phone"
-	depends EXPERIMENTAL
+	depends on EXPERIMENTAL
 	depends on USB_ARCH_HAS_HCD
 	select USB
 	help
drivers/leds/Kconfig +1 -1
index 4468cb3..49571c4 100644
@@ -83,7 +83,7 @@ config LEDS_WRAP
 
 config LEDS_H1940
 	tristate "LED Support for iPAQ H1940 device"
-	depends LEDS_CLASS && ARCH_H1940
+	depends on LEDS_CLASS && ARCH_H1940
 	help
 	  This option enables support for the LEDs on the h1940.
 
drivers/telephony/Kconfig +1 -1
index 5f98f67..b5f78b6 100644
@@ -19,7 +19,7 @@ if PHONE
 
 config PHONE_IXJ
 	tristate "QuickNet Internet LineJack/PhoneJack support"
-	depends ISA || PCI
+	depends on ISA || PCI
 	---help---
 	  Say M if you have a telephony card manufactured by Quicknet
 	  Technologies, Inc.  These include the Internet PhoneJACK and
net/wireless/Kconfig +1 -1
index 6291f13..6426055 100644
@@ -3,7 +3,7 @@ config CFG80211
 
 config NL80211
 	bool "nl80211 new netlink interface support"
-	depends CFG80211
+	depends on CFG80211
 	default y
 	---help---
          This option turns on the new netlink interface
scripts/kconfig/lex.zconf.c_shipped +2 -2
index 0fdc904..b1dfd9d 100644
@@ -33,7 +33,7 @@
 #if __STDC_VERSION__ >= 199901L
 
 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
- * if you want the limit (max/min) macros for int types.
+ * if you want the limit (max/min) macros for int types. 
  */
 #ifndef __STDC_LIMIT_MACROS
 #define __STDC_LIMIT_MACROS 1
@@ -1511,7 +1511,7 @@ static int yy_get_next_buffer (void)
 
 		/* Read in more data. */
 		YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
-			(yy_n_chars), num_to_read );
+			(yy_n_chars), (size_t) num_to_read );
 
 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
 		}
scripts/kconfig/zconf.gperf +0 -2
index 9b44c80..93538e5 100644
@@ -23,7 +23,6 @@ help,		T_HELP,		TF_COMMAND
 if,		T_IF,		TF_COMMAND|TF_PARAM
 endif,		T_ENDIF,	TF_COMMAND
 depends,	T_DEPENDS,	TF_COMMAND
-requires,	T_REQUIRES,	TF_COMMAND
 optional,	T_OPTIONAL,	TF_COMMAND
 default,	T_DEFAULT,	TF_COMMAND, S_UNKNOWN
 prompt,		T_PROMPT,	TF_COMMAND
@@ -32,7 +31,6 @@ def_tristate,	T_DEFAULT,	TF_COMMAND, S_TRISTATE
 bool,		T_TYPE,		TF_COMMAND, S_BOOLEAN
 boolean,	T_TYPE,		TF_COMMAND, S_BOOLEAN
 def_bool,	T_DEFAULT,	TF_COMMAND, S_BOOLEAN
-def_boolean,	T_DEFAULT,	TF_COMMAND, S_BOOLEAN
 int,		T_TYPE,		TF_COMMAND, S_INT
 hex,		T_TYPE,		TF_COMMAND, S_HEX
 string,		T_TYPE,		TF_COMMAND, S_STRING
scripts/kconfig/zconf.hash.c_shipped +109 -114

288 lines not on this page · raw message

scripts/kconfig/zconf.tab.c_shipped +769 -637

2,173 lines not on this page · raw message

scripts/kconfig/zconf.y +0 -11
index 79db4cf..d9b96ba 100644
@@ -64,7 +64,6 @@ static struct menu *current_menu, *current_entry;
 %token <id>T_IF
 %token <id>T_ENDIF
 %token <id>T_DEPENDS
-%token <id>T_REQUIRES
 %token <id>T_OPTIONAL
 %token <id>T_PROMPT
 %token <id>T_TYPE
@@ -418,16 +417,6 @@ depends: T_DEPENDS T_ON expr T_EOL
 {
 	menu_add_dep($3);
 	printd(DEBUG_PARSE, "%s:%d:depends on\n", zconf_curname(), zconf_lineno());
-}
-	| T_DEPENDS expr T_EOL
-{
-	menu_add_dep($2);
-	printd(DEBUG_PARSE, "%s:%d:depends\n", zconf_curname(), zconf_lineno());
-}
-	| T_REQUIRES expr T_EOL
-{
-	menu_add_dep($2);
-	printd(DEBUG_PARSE, "%s:%d:requires\n", zconf_curname(), zconf_lineno());
 };
 
 /* prompt statement */
#7 lore raw

Re: [-mm patch] kconfig syntax cleanups

Quoted 45 lines · On Mon, 13 Aug 2007 22:05:10 +0200 Adrian Bunk wrote:
Quoted 26 lines · Robert P. J. Day
Quoted 24 lines · Adrian Bunk
Quoted 14 lines · Randy Dunlap

From: Randy Dunlap <[email protected]>

Add kconfig-language docs for mainmenu, def_bool[ean], and def_tristate.

---
 Documentation/kbuild/kconfig-language.txt |   12 ++++++++++++
 1 file changed, 12 insertions(+)

Documentation/kbuild/kconfig-language.txt applicable everywhere (see syntax). · line 81

Quoted 6 lines
Documentation/kbuild/kconfig-language.txt +2 -0
@@ -77,6 +77,11 @@ applicable everywhere (see syntax).
   Optionally, dependencies only for this default value can be added with
   "if".
 
+- type definition + default value:
+	"def_bool"/"def_boolean"/"def_tristate" <expr> ["if" <expr>]
...

Should the redundant and unused def_boolean be documented or removed?

Quoted 6 lines
Quoted 1 line

I'd prefer the latter.

me too. and, as i've suggested before, it would also be cleaner to remove the redundant "requires" and almost redundant "depends" from Kconfig files, and standardize exclusively on "depends on".
...

Patch below.

Quoted 1 line

rday

cu
Adrian

<-- snip -->

Quoted 7 lines

This patch removes the following redundant and never or rarely used kconfig syntax:
- "def_boolean" (same as "def_bool")
- "requires" (same as "depends on")
- "depends" (same as "depends on")

Most of the size of this patch comes from regenerating generated files.

Looks OK to me.

Missing S-O-B line...

Quoted 15 lines

---

 arch/blackfin/Kconfig                |    2 
 arch/powerpc/Kconfig.debug           |    6 
 arch/powerpc/platforms/Kconfig       |    2 
 drivers/input/misc/Kconfig           |    2 
 drivers/leds/Kconfig                 |    2 
 drivers/telephony/Kconfig            |    2 
 net/wireless/Kconfig                 |    2 
 scripts/kconfig/lex.zconf.c_shipped  |    4 
 scripts/kconfig/zconf.gperf          |    2 
 scripts/kconfig/zconf.hash.c_shipped |  223 ++--
 scripts/kconfig/zconf.tab.c_shipped  | 1406 ++++++++++++++-------------
 scripts/kconfig/zconf.y              |   11 
 12 files changed, 889 insertions(+), 775 deletions(-)

---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***

#8 lore raw

Re: [-mm patch] kconfig syntax cleanups

Quoted 8 lines · Randy Dunlap

On Mon, 13 Aug 2007 22:05:10 +0200 Adrian Bunk wrote:
...

Quoted 6 lines

This patch removes the following redundant and never or rarely used kconfig syntax:
- "def_boolean" (same as "def_bool")
- "requires" (same as "depends on")
- "depends" (same as "depends on")

Quoted 5 lines
Quoted 1 line

Most of the size of this patch comes from regenerating generated files.

Looks OK to me.

Missing S-O-B line...

Ups, sorry:

Quoted 1 line

~Randy

cu
Adrian

Signature · 4 lines
       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed
#9 lore raw

PATCH v3 1/1 kconfig: update kconfig-language text

In reply to Adrian Bunk

From: Randy Dunlap <[email protected]>

Add kconfig-language docs for mainmenu, def_bool, and def_tristate. Remove "requires" as a synonym of "depends on" since it was removed from the parser in commit 247537b9a270b52cc0375adcb0fb2605a160cba5.

---
 Documentation/kbuild/kconfig-language.txt |   14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)
Documentation/kbuild/kconfig-language.txt +13 -1
@@ -77,7 +77,12 @@ applicable everywhere (see syntax).
   Optionally, dependencies only for this default value can be added with
   "if".
 
-- dependencies: "depends on"/"requires" <expr>
+- type definition + default value:
+	"def_bool"/"def_tristate" <expr> ["if" <expr>]
+  This is a shorthand notation for a type definition plus a value.
+  Optionally dependencies for this default value can be added with "if".
+
+- dependencies: "depends on" <expr>
   This defines a dependency for this menu entry. If multiple
   dependencies are defined, they are connected with '&&'. Dependencies
   are applied to all other options within this menu entry (which also
@@ -289,3 +294,10 @@ source:
 	"source" <prompt>
 
 This reads the specified configuration file. This file is always parsed.
+
+mainmenu:
+
+	"mainmenu" <prompt>
+
+This sets the config program's title bar if the config program chooses
+to use it.
#10 lore raw
Quoted 5 lines · Randy Dunlap

From: Randy Dunlap <[email protected]>

Add kconfig-language docs for mainmenu, def_bool, and def_tristate. Remove "requires" as a synonym of "depends on" since it was removed from the parser in commit 247537b9a270b52cc0375adcb0fb2605a160cba5.

Thanks Randy - applied.

Sam