Fix build reproducibility in Make 3.82
[buildroot-gz.git] / docs / manual / customize-toolchain.txt
blob811a6dc7f97a637998220c2bf1cc65c0a5808ef4
1 // -*- mode:doc; -*-
2 // vim: set syntax=asciidoc:
4 [[toolchain-custom]]
5 Customizing the toolchain
6 ~~~~~~~~~~~~~~~~~~~~~~~~~
8 There are three distinct types of toolchain backend supported in Buildroot,
9 available under the menu +Toolchain+, invoking +make menuconfig+.
11 Using the external toolchain backend
12 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
14 There is no way of tuning an external toolchain since Buildroot does not
15 generate it.
17 It also requires to set the Buildroot settings according to the toolchain ones
18 (see xref:external-toolchain-backend[]).
20 Using the internal Buildroot toolchain backend
21 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
23 The internal Buildroot toolchain backend *only* allows to generate
24 *http://www.uclibc.org/[uClibc]-based toolchains*.
26 However, it allows to tune major settings, such as:
28 * Linux headers version;
30 * http://www.uclibc.org/[uClibc] configuration (see xref:uclibc-custom[uClibc]);
32 * Binutils, GCC, Gdb and toolchain options.
34 These settings are available after selecting the +Buildroot toolchain+ type in
35 the menu +Toolchain+.
37 Using the Crosstool-NG backend
38 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
40 The http://crosstool-ng.org[crosstool-NG] toolchain backend enables a rather
41 limited set of settings under the Buildroot +Toolchain+ menu:
43 * The http://crosstool-ng.org[crosstool-NG] configuration file
45 * Gdb and some toolchain options
47 Then, the toolchain can be fine-tuned by invoking +make ctng-menuconfig+.