of preMake, preBuild or preVCbld,
allows a great amount of customization. These additional steps are for adding new
build components or new setups:
- Add new build components.
If you are using build components which are not listed in
the configuration file, edit either preMake.xml,
preBuild.xml or preVCbld.xml, to add the new <component>
sub-element(s) under the <detect> element.
The Reference topics on the Configuration
File and on Component Auto-Detection show
how to do this.
- Create registry entries for new build components, where needed.
All of the components included in the supplied configuration files, create
registry entries during their installations. If you have a library or
other component which does not create any registry entries, then these
must be added to allow detection of the build components. The Reference
topic on Component Auto-Detection describes
how to do this.
- Add or modify <base_configurations> or <setups>
sub-elements for each component, where needed.
The <base_config> elements for the components listed under
Quick Installation section 2, are already supplied in the configuration files.
Each <base_config> element uses a registry entry to find the base
directory where the component is installed. This makes the configuration files
insensitive to variations in installation drive and directory. However, some
components have optional include file and library directories or require customized
environment variable definitions. In these cases you may need to create a <setup>
sub-element under the <setups> element, to customize a
supplied <base_config>. The Reference topic on
Component Setup describes the syntax used to define
- Assign combinations of components to named configurations.
Under the <configurations> element of each configuration
file, names are given to each combination of components. A simple configuration
may consist of a single component, for example:
Here the configuration named "vc6" has a single component named
"msvc60". It is paired with a setup element (MSVC60.default) which does
nothing to modify the base_config.
A more complex configuration is given by "vc8" which contains four
<component>.NET SDK 2.0</component>
As each component element is processed (MSVC80, VS.NET 2005, .NET,
and .NET SDK 2.0), it contributes its environment variables. Finally,
the setup element named "MSVC80.32" is processed. It customizes
the base_config elements for a 32-bit build environment. In combination,
this is equivalent to running the batch script vcvars32.bat at
the command prompt.
For more information, see the Reference topic on