From f2d432674b187685591f60cec3b2980b377c63fe Mon Sep 17 00:00:00 2001 From: Scott Rifenbark Date: Thu, 30 Aug 2018 11:29:12 -0700 Subject: bitbake-user-manual: Added new section on multiconfig builds Created a new example. Also added a figure for the separate configuration file hierarchy Signed-off-by: Scott Rifenbark --- .../bitbake-user-manual-intro.xml | 69 +++++++++++++++++++++ .../figures/bb_multiconfig_files.png | Bin 0 -> 19991 bytes 2 files changed, 69 insertions(+) create mode 100644 doc/bitbake-user-manual/figures/bb_multiconfig_files.png diff --git a/doc/bitbake-user-manual/bitbake-user-manual-intro.xml b/doc/bitbake-user-manual/bitbake-user-manual-intro.xml index 4cf0ed9d1..1dbf141c9 100644 --- a/doc/bitbake-user-manual/bitbake-user-manual-intro.xml +++ b/doc/bitbake-user-manual/bitbake-user-manual-intro.xml @@ -723,6 +723,75 @@ + +
+ Executing a Multiple Configuration Build + + + BitBake is able to build multiple images or packages + using a single command where the different targets + require different configurations (multiple configuration + builds). + Each target, in this scenario, is referred to as a + "multiconfig". + + + + To accomplish a multiple configuration build, you must + define each target's configuration separately using + a parallel configuration file in the build directory. + The location for these multiconfig configuration files + is specific. + They must reside in the current build directory in + a sub-directory of conf named + multiconfig. + Following is an example for two separate targets: + + + + + The reason for this required file hierarchy + is because the BBPATH variable + is not constructed until the layers are parsed. + Consequently, using the configuration file as a + pre-configuration file is not possible unless it is + located in the current working directory. + + + + Minimally, each configuration file must define the + machine and the temporary directory BitBake uses + for the build. + Suggested practice dictates that you do not + overlap the temporary directories used during the + builds. + + + + Aside from separate configuration files for each + target, you have to enable BitBake to perform multiple + configuration builds by enabling it in the local + configuration file. + Enabling is accomplished through a variable specific + to the build environment. + + + + Once the target configuration files are in place and + BitBake has been enabled to perform multiple configuration + builds, use the following command form to start the + builds: + + $ bitbake [multiconfig:multiconfigname:]target [[[multiconfig:multiconfigname:]target] ... ] + + Here is an example for two multiconfigs: + Target_1 and + Target_2: + + $ bitbake multiconfig:Target_1:target multiconfig:Target_2:target + + +
diff --git a/doc/bitbake-user-manual/figures/bb_multiconfig_files.png b/doc/bitbake-user-manual/figures/bb_multiconfig_files.png new file mode 100644 index 000000000..041f06403 Binary files /dev/null and b/doc/bitbake-user-manual/figures/bb_multiconfig_files.png differ -- cgit 1.2.3-korg