44a5c46213
This patch reworks the section on root filesystem customization as follows: - use labeled list instead of bulleted list to clarify the different methods - move rootfs overlay and post-build scripts to the top and label them as recommended. - split post-image to a separate section, as it is not related to the target filesystem customization - line up post-build and post-image explanations, for example regarding working directory of the script - general expansion of some of the explanation - general rewording Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
48 lines
1.8 KiB
Plaintext
48 lines
1.8 KiB
Plaintext
// -*- mode:doc; -*-
|
|
// vim: set syntax=asciidoc:
|
|
|
|
== Project-specific customization
|
|
|
|
Typical actions you may need to perform for a given project are:
|
|
|
|
- configuring Buildroot (including build options and toolchain,
|
|
bootloader, kernel, package and filesystem image type selection)
|
|
- configuring other components, like the Linux kernel and BusyBox
|
|
- adding project-specific patches to some packages (using
|
|
+BR2_GLOBAL_PATCH_DIR+)
|
|
- adding or overwriting files on the target filesystem (using
|
|
+BR2_ROOTFS_OVERLAY+)
|
|
- modifying or deleting files on the target filesystem (using
|
|
+BR2_ROOTFS_POST_BUILD_SCRIPT+)
|
|
- running arbitrary commands prior to generating the filesystem image
|
|
(using +BR2_ROOTFS_POST_BUILD_SCRIPT+)
|
|
- running arbitrary commands after generating the filesystem image
|
|
(using +BR2_ROOTFS_POST_IMAGE_SCRIPT+)
|
|
- adding project-specific packages
|
|
|
|
An important note regarding such 'project-specific' customizations:
|
|
please carefully consider which changes are indeed project-specific and
|
|
which changes are also useful to developers outside your project. The
|
|
Buildroot community highly recommends and encourages the upstreaming of
|
|
improvements, packages and board support to the official Buildroot
|
|
project. Of course, it is sometimes not possible or desirable to
|
|
upstream because the changes are highly specific or proprietary.
|
|
|
|
This chapter describes how to make such project-specific customizations
|
|
in Buildroot and how to store them in a way that you can build the same
|
|
image in a reproducible way, even after running 'make clean'. By
|
|
following the recommended strategy, you can even use the same Buildroot
|
|
tree to build multiple distinct projects!
|
|
|
|
include::customize-directory-structure.txt[]
|
|
|
|
include::customize-outside-br.txt[]
|
|
|
|
include::customize-rootfs.txt[]
|
|
|
|
include::customize-post-image.txt[]
|
|
|
|
include::customize-store.txt[]
|
|
|
|
include::customize-packages.txt[]
|