All of lore.kernel.org
 help / color / mirror / Atom feed
* a really annoying feature of the config menu structure
@ 2003-02-18 21:28 Robert P. J. Day
  2003-02-18 22:33 ` Stephen Wille Padnos
  2003-02-19 13:19 ` Helge Hafting
  0 siblings, 2 replies; 14+ messages in thread
From: Robert P. J. Day @ 2003-02-18 21:28 UTC (permalink / raw)
  To: Linux kernel mailing list


  i finally decided to get serious and start looking at the
overall config menu structure, to re-arrange the menus and
submenus so that it made more sense and flowed more logically,
and i ran into a really annoying feature that makes it
virtually impossible to do this.  (this is all based on the
assumption that i haven't overlooked something obvious.)
so what's the problem?

  my plan was to start collecting some of the logically-related
menu entries together, and to have a main menu top-level entry,
and some submenus for more specific related sub-items.  some
of you may remember that i proposed something like this for
the filesystems menu.  

  other areas where this would have made sense would be for
something like a "Networking" main menu, with submenus for
things like ISDN, Wireless and so on, those all being 
subsets of networking.  it *sounded* like a good idea, but
the way the menus are laid out, this is going to be difficult.

  the main menu file appears to be .../arch/i386/Kconfig,
which defines some menus and "source"s others, and therein
lies the problem.  it's perfectly reasonable to source a
Kconfig file from a kernel subdirectory if that file 
represents a submenu -- such a file can be sourced in the
*middle* of a top-level menu definition, and will therefore
appear as a submenu in the config screen.

  however, those sourced files are, for the most part,
complete menu definitions on their own, so they *cannot*
have further submenus placed inside them, and this is
a pain when any of those are used directly in the top level
in the main Kconfig file.

  a perfect example is the menu for "Networking support".
this is obtained simply with

  source "net/Kconfig"

but since that file was (presumably) created by the person
who was looking after the networking code in that directory,
there is no way to source that file and simultaneously give
it some appropriate submenus, like ISDN, Wireless and so on.

  this is going to be the case with *every* autonomous
directory that comes with its own Kconfig file -- it will
never give the top-level Kconfig file the flexibility
to assign it any submenus, and this is pretty annoying
with something as generic as "Networking support".

  the only possible solution to make this work is to 
make sure each directory with its own Kconfig file never
assumes it's going to be a top-level menu -- it has to 
assume it might be incorporated as a submenu.

  another consequence is that it's a bad idea to have
top level menu entries *both* have config options *and*
submenus, as is done with "Power management" and "ACPI"
(and Filesystems for that matter).  a better solution is
for each kernel source directory to create and manage its
own Kconfig file and define its own menu, then design the
top-level file to act simply as a wrapper around all of these.

  another good example is "Multimedia", which would normally
include "Sound" configuration, wouldn't you think?  but as it
stands, this is currently impossible -- the Multimedia
menu is simply sourced from its directory, and there is no
way to assign it any submenus, like Sound, Video and others
that really belong there.

  as i see it, this can only get worse.  the current
erratic and disorganized structure of the config menus
is proof of that.

  comments?

rday



^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2003-02-19 14:24 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-02-18 21:28 a really annoying feature of the config menu structure Robert P. J. Day
2003-02-18 22:33 ` Stephen Wille Padnos
2003-02-19  1:04   ` Robert P. J. Day
2003-02-19  1:24     ` Stephen Wille Padnos
2003-02-19  2:09       ` Robert P. J. Day
2003-02-19  1:56   ` Alan Cox
2003-02-19  1:31     ` Stephen Wille Padnos
2003-02-19  3:03       ` Alan Cox
2003-02-19  2:13         ` Robert P. J. Day
2003-02-19  9:49           ` Tomas Szepe
2003-02-19 13:19 ` Helge Hafting
2003-02-19 13:31   ` Robert P. J. Day
2003-02-19 14:35     ` John Bradford
2003-02-19 13:33   ` Robert P. J. Day

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.