Short: Better configuration mechanism
From: Lars
Date: 990708
Type: Feature
State: Unclassified
Create a master file describing all compiler options, runtime or else:
# Lines like are completely ignored
/* All other lines are copied verbatim into config.h, except for
* commands like this:
*/
use compat-mode no
set max-players 50
/* First is a boolean option, second value option, both with the
* default value
*/
Scripts take this master file and generate following files from it:
- config.h.in: a template where all options are documented, but undefined.
- config.h: an stub file
- config-defaults.h: an include file which includes config.h and provides
default settings for all options not defined in config.h
- make-config: a script which is able to parse a given config.h file,
combine the settings extracted there with commandline settings
and then writes a new config.h file. By default it would read
config.h.in. Of course, for this to work config.h has to follow
a strict pattern.
In an extension, this master file method could be used to generate parts of
the commandline parsing code.