====== Named configurations ====== Named configurations can be specified via the ''CONFIG=...'' build parameter. For headers in ''config/*.h'' which support named configurations, the following files are included when building with ''CONFIG=****'': * ''config/defaults/.h'' (e.g. ''config/defaults/pcbios.h'') * ''config/
.h'' * ''config/****/
.h'' (only if the directory ''config/****'' exists) * ''config/local/
.h'' (autocreated if necessary) * ''config/local/****/
.h'' (autocreated if necessary) This mechanism allows for predefined named configurations to be checked in to the source tree, as a directory ''config/****'' containing all of the required header files. The mechanism also allows for users to define multiple local configurations, by creating header files in the directory ''config/local/****''. Note that the ''config/*.h'' files which are used only to configure internal iPXE APIs (e.g. ''config/umalloc.h'') cannot be modified via a named configuration. This avoids rebuilding the entire iPXE codebase whenever switching to a different named configuration.