.\" crosstool-NG man page
.\" Copyright 2007 Yann E. MORIN
.\" Licensed under the Creative Commons BY-SA, v2.5
.\"
.\" Beautifying URLs
.mso www.tmac
.\"
.TH crosstool-NG 1 "@DATE@" "version @PACKAGE_VERSION@" "User Commands"
.\"
.\"
.SH NAME
@progname@, crosstool-NG \- Build cross-toolchains
.\"
.\"
.SH SYNOPSIS
.B @progname@ ACTION
.\"
.\"
.SH DESCRIPTION
Building a cross-toolchain can be a real pain.
.PP
.B crosstool-NG
makes it easy to build cross-toolchains, and allows you to take all the juice
out of your target by configuring the different components of the toolchain
according to the targeted processor.
.\"
.\"
.SH ACTIONS
Here are the most commonly used actions. For other actions, please see the
documentation in
.I @docdir@
.TP
.B help
Prints a little help text.
.\"
.TP
.B menuconfig
Configures
.B crosstool-NG
using a configurator menu very similar to that of the Linux kernel.
.\"
.TP
.B oldconfig
Apply options found in an existing
.I .config
file, and ask for newer options if there are any.
.\"
.TP
.B saveconfig
Save the current
.B crosstool-NG
configuration, and associated components' config files, into a sample. Samples
are saved in their own sub-directory, named after the target's tuple, in the
.I samples
sub-directory of the current directory. Samples can be later recalled by calling
.B @progname@
with the target tuple they represent.
.\"
.TP
.B savedefconfig
Save the current configuration to a mini-defconfig file, that contains only
the strictly required symbols to reproduce the configuration. defconfig files
are much smaller than a complete .config, so it is easy to send by mail. As
only non-default symbols are present in a defconfig, it easy to spot the
meaningful values. Also, it is easy to use defconfig files with newer
versions of
.BR crosstool-NG .
By default the mini-defconfig is saved to a file named
.IR defconfig ,
unless the variable
.B $DEFCONFIG
is set, in which case the mini-defconfig will be saved to the file referenced
by
.BR $DEFCONFIG .

Note: only the
.I .config
file for
.B crosstool-NG
is saved. Config files for the components are
.B not
saved. Use
.B saveconfig
for that
.\"
.TP
.B defconfig
Configure
.B crosstool-NG
using a mini-defconfig file (previously saved with
.B savedefconfig
or manually edited). The default mini-defconfig is read from the file
.IR defconfig ,
unless the variable
.B $DEFCONFIG
is set, in which case the mini-defconfig will be read from the file referenced
by
.B $DEFCONFIG
.\"
.TP
.B build
Builds the configured toolchain.
.\"
.TP
.B clean
Remove files generated by
.B crosstool-NG
for itself (these are mostly the configurators' binaries).
.\"
.TP
.B distclean
Same as
.B clean
, but also removes the toolchain build directory, the downloaded files and the
.I .config
configuration file. The generated toolchain is left untouched, as well as
samples which are not removed.
.\"
.TP
.B updatetools
Updates the
.I config.guess
and
.I config.sub
scripts. These scripts are used by
.B crosstool-NG
to canonicalise the machines' name (host, build and target machines).
.\"
.SH ENVIRONMENT
.TP
.B STOP, RESTART
Respectively stops and restarts the build just before this step. To restart a
step, a previous build should have run at least to that step, or further.

The list of steps is viewable with the action
.BR list-steps .
.\"
.SH EXIT VALUE
The
.B @progname@
frontend is in fact a
.BR make (1)
script. See the man page for
.BR make (1)
to have the meaning of the exit values.
.\"
.SH SECURITY
.B Don't run as root!
Great care has been taken to avoid mistakes, but bug-free programs don't
exist. During normal operation,
.B crosstool-NG
removes entire directories. If you run as root, and there is a bug or you
mis-configured
.BR crosstool-NG ,
entire important directories could be removed (eg.
.IR /usr ),
although
.B crosstool-NG
will refuse to install toolchains in some well known critical directories.
.\"
.SH AUTHORS
Yann E. MORIN and a lot of contributors.
.\"
.SH SEE ALSO
You can find more in-depth documentation in
.IR "@docdir@" .

Please have a look at the
.URL "http://www.kegel.com/crosstool" "original crosstool" " by Daniel KEGEL"
