doc: Edit the build systems's Targets Documentation.

Remove unnecessary bullets and replaced them with indentation.
Added articles and performed other edits for clarity, markup and style.

Change-Id: I390d04a6a3c20eabde2eb100cac4fc88a3ca8cc8
Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
This commit is contained in:
Rodrigo Caballero 2015-09-25 17:41:11 -05:00 committed by Anas Nashif
commit 8e56617761

View file

@ -3,124 +3,108 @@
Supported Targets
*****************
This is the list of supported build system targets:
The build system supports the following targets:
Clean targets
=============
* **clean:** Removes most generated files but keep the config
information.
**clean**: Removes most generated files keeping the configuration information.
* **distclean:** Removes editor backup and patch files.
**distclean**: Removes editor backup and patch files.
* **pristine:** Alias name for distclean.
**pristine**: Alias name for distclean.
* **mrproper:** Removes all generated files + various backup files and
host tools files.
**mrproper**: Removes all generated files, various backup files, and host tools files.
Configuration targets
=====================
* **config:** Updates current config utilizing a line-oriented program.
**config**: Updates the current configuration using a line-oriented program.
* **nconfig:** Updates current config utilizing a ncurses menu based
program.
**nconfig**: Updates the current configuration using a ncurses menu based program.
* **menuconfig:** Updates current config utilizing a menu based program.
**menuconfig**: Updates the current configuration using a menu based program.
* **xconfig:** Updates current config utilizing a QT based front-end.
**xconfig**: Updates the current configuration using a QT based front-end.
* **gconfig:** Updates current config utilizing a GTK based front-end.
**gconfig**: Updates the current configuration using a GTK based front-end.
* **oldconfig:** Updates current config utilizing a provided .config as
base.
**oldconfig**: Updates the current configuration using a provided :file:`.config` as base.
* **silentoldconfig:** Same as oldconfig, but quietly, additionally
update dependencies.
**silentoldconfig**: Works as oldconfig but quietly. Additionally, it updates the dependencies.
* **defconfig:** New configuration with default from ARCH supplied
defconfig.
**defconfig**: Creates a new configuration with the default defconfig supplied by ARCH.
* **savedefconfig:** Saves current config as ./defconfig (minimal
configuration).
**savedefconfig**: Saves the current configuration as the minimal configuration under
:file:`./defconfig`.
* **allnoconfig:** New configuration file where all options are
answered with no.
**allnoconfig**: Creates a configuration file where all options are answered with no.
* **allyesconfig:** New configuration file where all options are
accepted with yes.
**allyesconfig**: Creates a configuration file where all options are accepted with yes.
* **alldefconfig:** New configuration file with all symbols set to
default.
**alldefconfig**: Creates a configuration file with all symbols set to default.
* **randconfig:** New configuration file with random answer to all
options.
**randconfig**: Creates a configuration file with random answer to all options.
* **listnewconfig:** Lists new options.
**listnewconfig**: Lists new options.
* **olddefconfig:** Same as silentoldconfig but sets new symbols to
their default value.
**olddefconfig**: Works as silentoldconfig while setting new symbols to their default value.
* **tinyconfig:** Configures the tiniest possible kernel.
**tinyconfig**: Configures the smallest possible kernel.
Other generic targets
Generic Targets
=====================
* **all:** Builds zephyr target.
**all**: Builds zephyr target.
* **zephyr:** Builds the bare kernel.
**zephyr**: Builds the bare kernel.
* **qemu:** Builds the bare kernel and runs the emulation with qemu.
**qemu**: Builds the bare kernel and runs the emulation with Qemu.
x86 Supported default configuration files
x86 Supported Default Configuration Files
=========================================
* **micro_galileo_defconfig** Builds microkernel for galileo.
**micro_galileo_defconfig**: Builds a microkernel for Galileo.
* **micro_basic_atom_defconfig:** Builds microkernel for atom
processor on QEMU.
**micro_basic_atom_defconfig**: Builds a microkernel for an Atom processor on Qemu.
* **micro_basic_minuteia_defconfig:** Builds microkernel for minute IA
processor on QEMU.
**micro_basic_minuteia_defconfig**: Builds a microkernel for minute IA processor on Qemu.
* **nano_galileo_defconfig:** Builds nanokernel for galileo.
**nano_galileo_defconfig**: Builds a nanokernel for Galileo.
* **nano_basic_atom_defconfig:** Builds nanokernel for atom
processor on QEMU.
**nano_basic_atom_defconfig**: Builds a nanokernel for an Atom processor on Qemu.
* **nano_basic_minuteia_defconfig:** Builds nanokernel for minute IA
processor on QEMU.
**nano_basic_minuteia_defconfig**: Builds a nanokernel for minute IA processor on Qemu.
arm Supported default configuration files
arm Supported Default Configuration Files
=========================================
* **micro_fsl_frdm_k64f_defconfig:** Builds microkernel for FSL FRDM K64F.
* **micro_basic_cortex_m3_defconfig:** Builds microkernel for Cortex-M3
processor on QEMU.
* **nano_fsl_frdm_k64f_defconfig:** Builds nanokenrel FSL FRDM K64F.
* **nano_basic_cortex_m3_defconfig:** Builds nanokernel for Cortex-M3
processor on QEMU.
**micro_fsl_frdm_k64f_defconfig**: Builds a microkernel for FSL FRDM K64F.
**micro_basic_cortex_m3_defconfig**: Builds a microkernel for Cortex-M3 processor on Qemu.
**nano_fsl_frdm_k64f_defconfig**: Builds a nanokenrel FSL FRDM K64F.
**nano_basic_cortex_m3_defconfig**: Builds a nanokernel for Cortex-M3 processor on Qemu.
Make Modifiers
==============
* **make V=0|1 [targets]** Modifies verbosity of the project.
**make V=0|1 [targets]**: Modifies verbosity of the project.
* **0:** Quiet build (default).
**0**: Quiet build, default.
* **1:** Verbose build.
**1**: Verbose build.
* **2:** Gives the reason for rebuild of target.
**2**: Gives the reason for rebuilding the target.
* **make O=dir [targets]** Locates all output files in **dir**,
including :file:`.config.`.
**make O=dir [targets]** Places all output files in :file:`dir`, including :file:`.config.`.
Other Environment Variables
===========================
* :envvar:`USE_CCACHE=1` If set, use the :program:`ccache` utility to speed up builds.
`ccache` must be installed on your development workstation. For more
information see the `ccache documentation`_.
* :envvar:`USE_CCACHE` If set to 1, the build system uses the :program:`ccache` utility to speed
up builds. :program:`ccache` must be installed on your development system. See the
`CCACHE documentation`_.
.. _CCACHE documentation: https://ccache.samba.org/