3 DROPS Configuration Tool

Most role-files provide support for an interactive configuration tool, which is derived from the config and menuconfig tools of Linux. It differs in that it can be configured using environment variables. Some minor extensions are build in too.

The configuration tool is run if the user runs ``make config'', ``make txtconfig'' or ``make oldconfig''. The following parameters control the configuration tool.

DROPSCONF if non-empty, the configuration tool will be run for the makefile-targets {old,txt,}config::. If neither {old,txt,}config, scrub, clean nor cleanall is within the make targets, the file $DROPSCONF·CONFIG is included using the -include directive.

If this parameter is empty, no commands are run and no file is included. However, you can specify additional commands to be run in your own Makefile. Modifies help::, clean:: and cleanall:: rules.

Default: empty, do not run the configuration tool on ``make config''.

DROPSCONF_DEFCONFIG the default configuration file, which is used as the initial configuration.

Default: defconfig

DROPSCONF_CONFIG_IN the configuration definition file.

Default: config.in

DROPSCONF_CONFIG the configuration file, which holds the configuration. This file is automatically build from $DROPSCONF_DEFCONFIG when needed.

Default: .config

DROPSCONF_CONFIG_H the configuration header file, which is included by the source files.

Default: config.h

DROPSCONF_CONFIG_MK the make include file, which is included by the makefiles.

Default: Makeconf.bid.local

DROPSCONF_DONTINC_MK If this option is non-empty, inclusion of the make include file is supressed.

Default: empty

DROPSCONF_HELPFILE the file containing the option help texts.

Default: config.help

DROPSCONF_MACRO the macro which is defined when DROPSCONF_CONFIG_H is included.

Default: CONFIG_H_INCLUDED

DROPSCONF_TITLE the main title in the configuration tool.

Default: ``DROPS Configuration Tool''

DROPSCONF_TOOL the path to the menu-driven configuration tool used for the config:: target.

Default: $(L4DIR)/tool/config/Menuconfig

DROPSCONF_TOOL_TXT the path to the configuration tool used for the txtconfig:: target.

Default: $(L4DIR)/tool/config/Configure

DROPSCONF_TOOL_OLD the path to the configuration tool used for the oldconfig:: target.

Default: $(L4DIR)/tool/config/Configure -d

DROPSCONF_UNDEF If nonempty, disabled boolean options won't be defined in $(DROPSCONF_CONFIG_H) at all. If empty, disabled options will be defined as 0. Enabled boolean options are defined as 1 always.

Default: empty.

The configuration tool creates three files: The configuration file ($DROPSCONF_CONFIG), the configuration include file ($DROPSCONF_CONFIG_H) and the make include file ($DROPSCONF_CONFIG_MK). The first contains the configuration in a format suitable for the config tool. The second is a standard include-file for C files. The last contains the configuration in a format to be included in Makefiles. Note, that it is automatically included in your Makefile when one of the role-files is included and if your Makefile supports configuration. The role-files ensure that the configuration file is build appropriately. If you want to include the configuration file in other Makefiles, make sure the configuration file is built.

4ex When using the configuration tool, the special target DROPSCONF_CONFIG_MK_POST_HOOK:: is called after generating $(DROPSCONF_CONFIG_MK). You can add your own commands here, the configuration options will already be effecive during execution.

L4 Checker 2012-04-11