// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-== Daily use
+== General Buildroot usage
+
+include::make-tips.txt[]
include::rebuilding-packages.txt[]
----------------
BR2_GRAPH_OUT=png make graph-build
----------------
+
+include::eclipse-integration.txt[]
+
+include::advanced.txt[]
// vim: set syntax=asciidoc:
[[configure]]
-== Details on Buildroot configuration
+== Buildroot configuration
All the configuration options in +make *config+ have a help text
providing details about the option. However, a number of topics
fix from the toolchain vendor, unless you build your external
toolchain by yourself using Crosstool-NG.
+===== External toolchain wrapper
+
+When using an external toolchain, Buildroot generates a wrapper program,
+that transparently passes the appropriate options (according to the
+configuration) to the external toolchain programs. In case you need to
+debug this wrapper to check exactly what arguments are passed, you can
+set the environment variable +BR2_DEBUG_WRAPPER+ to either one of:
+
+* +0+, empty or not set: no debug
+
+* +1+: trace all arguments on a single line
+
+* +2+: trace one argument per line
+
=== /dev management
On a Linux system, the +/dev+ directory contains special files, called
The solution recommended by Buildroot developers is to use the
*BusyBox init* as it is sufficient for most embedded
systems. *systemd* can be used for more complex situations.
+
+== Configuration of other components
+
+include::customize-busybox-config.txt[]
+
+include::customize-uclibc-config.txt[]
+
+include::customize-kernel-config.txt[]
+
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-[[customize-store]]
-== Storing the configuration
+[[customize-store-basics]]
+=== Basics for storing the configuration
When you have a buildroot configuration that you are satisfied with and
you want to share it with others, put it under revision control or move
packages that you use (kernel, busybox, uClibc, ...), and your rootfs
modifications.
-
-[[customize-store-basics]]
-=== Basics for storing the configuration
-
-
[[customize-store-buildroot-config]]
==== Buildroot configuration
+++ /dev/null
-// -*- 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[]).
-
-When using an external toolchain, Buildroot generates a wrapper program,
-that transparently passes the appropriate options (according to the
-configuration) to the external toolchain programs. In case you need to
-debug this wrapper to check exactly what arguments are passed, you can
-set the environment variable +BR2_DEBUG_WRAPPER+ to either one of:
-
-* +0+, empty or not set: no debug
-
-* +1+: trace all arguments on a single line
-
-* +2+: trace one argument per line
-
-==== Using the internal Buildroot toolchain backend
-
-The internal Buildroot toolchain backend allows to generate toolchains
-based on http://www.uclibc.org/[uClibc],
-https://www.gnu.org/software/libc/[glibc] and
-http://www.eglibc.org/[eglibc].
-Generation of (e)glibc-based toolchains is still experimental in
-Buildroot.
-
-It allows to tune major settings, such as:
-
-* Linux headers version;
-
-* C library configuration (only available for
- http://www.uclibc.org/[uClibc], 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+.
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-== Customization
+== Project-specific customization
-include::customize-rootfs.txt[]
-
-include::customize-busybox-config.txt[]
+The following sections describe the various way in which you can
+customize Buildroot for a given project.
-include::customize-uclibc-config.txt[]
+For instructions on how to add new packages to Buildroot, refer to
+xref:adding-packages[]
-include::customize-kernel-config.txt[]
-
-include::customize-toolchain.txt[]
+include::customize-rootfs.txt[]
include::customize-store.txt[]
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-== Integration with Eclipse
+=== Integration with Eclipse
While a part of the embedded Linux developers like classical text
editors like Vim or Emacs, and command-line based interfaces, a number
+++ /dev/null
-// -*- mode:doc; -*-
-// vim: set syntax=asciidoc:
-
-== Going further in Buildroot's innards
-
-include::how-buildroot-works.txt[]
-
-include::advanced.txt[]
// -*- mode:doc; -*-
// vim: set syntax=asciidoc:
-=== How Buildroot works
+== How Buildroot works
As mentioned above, Buildroot is basically a set of Makefiles that
download, configure, and compile software with the correct options. It
// vim: set syntax=asciidoc:
[[make-tips]]
-== 'make' tips
+=== 'make' tips
This is a collection of tips that help you make the most of Buildroot.
include::known-issues.txt[]
-include::going-further.txt[]
-
include::legal-notice.txt[]
include::beyond-buildroot.txt[]
= Developer guide
+include::how-buildroot-works.txt[]
+
include::developer-guide.txt[]
include::contribute.txt[]
include::configure.txt[]
-include::make-tips.txt[]
-
-include::customize.txt[]
-
include::common-usage.txt[]
-include::eclipse-integration.txt[]
-
-== Hacking Buildroot
-
-If Buildroot does not yet fit all your requirements, you may be
-interested in hacking it to add:
-
-* new packages: refer to the xref:adding-packages[Developer guide]
-
-* new board support: refer to the
- xref:customize-store-board-support[Developer guide].
+include::customize.txt[]