blob: 811a6dc7f97a637998220c2bf1cc65c0a5808ef4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
[[toolchain-custom]]
Customizing the toolchain
~~~~~~~~~~~~~~~~~~~~~~~~~
There are three distinct types of toolchain backend supported in Buildroot,
available under the menu +Toolchain+, invoking +make menuconfig+.
Using the external toolchain backend
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
There is no way of tuning an external toolchain since Buildroot does not
generate it.
It also requires to set the Buildroot settings according to the toolchain ones
(see xref:external-toolchain-backend[]).
Using the internal Buildroot toolchain backend
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The internal Buildroot toolchain backend *only* allows to generate
*http://www.uclibc.org/[uClibc]-based toolchains*.
However, it allows to tune major settings, such as:
* Linux headers version;
* http://www.uclibc.org/[uClibc] configuration (see xref:uclibc-custom[uClibc]);
* Binutils, GCC, Gdb and toolchain options.
These settings are available after selecting the +Buildroot toolchain+ type in
the menu +Toolchain+.
Using the Crosstool-NG backend
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The http://crosstool-ng.org[crosstool-NG] toolchain backend enables a rather
limited set of settings under the Buildroot +Toolchain+ menu:
* The http://crosstool-ng.org[crosstool-NG] configuration file
* Gdb and some toolchain options
Then, the toolchain can be fine-tuned by invoking +make ctng-menuconfig+.
|