BitBake User Manual
Table of Contents
- 1 Overview
- 1.1 Introduction
- 1.2 History and Goals
- 1.3 Concepts
- 1.4 Obtaining BitBake
- 1.5 The BitBake Command
- 1.5.1 Usage and syntax
- 1.5.2 Examples
- 1.5.2.1 Executing a Task Against a Single Recipe
- 1.5.2.2 Executing Tasks Against a Set of Recipe Files
- 1.5.2.3 Executing a List of Task and Recipe Combinations
- 1.5.2.4 Generating Dependency Graphs
- 1.5.2.5 Executing a Multiple Configuration Build
- 1.5.2.6 Enabling Multiple Configuration Build Dependencies
- 2 Execution
- 3 Syntax and Operators
- 3.1 Basic Syntax
- 3.1.1 Basic Variable Setting
- 3.1.2 Modifying Existing Variables
- 3.1.3 Line Joining
- 3.1.4 Variable Expansion
- 3.1.5 Setting a default value (?=)
- 3.1.6 Setting a weak default value (??=)
- 3.1.7 Immediate variable expansion (:=)
- 3.1.8 Appending (+=) and prepending (=+) With Spaces
- 3.1.9 Appending (.=) and Prepending (=.) Without Spaces
- 3.1.10 Appending and Prepending (Override Style Syntax)
- 3.1.11 Removal (Override Style Syntax)
- 3.1.12 Override Style Operation Advantages
- 3.1.13 Variable Flag Syntax
- 3.1.14 Inline Python Variable Expansion
- 3.1.15 Unsetting variables
- 3.1.16 Providing Pathnames
- 3.2 Exporting Variables to the Environment
- 3.3 Conditional Syntax (Overrides)
- 3.4 Sharing Functionality
- 3.5 Functions
- 3.6 Tasks
- 3.7 Variable Flags
- 3.8 Events
- 3.9 Variants — Class Extension Mechanism
- 3.10 Dependencies
- 3.11 Functions You Can Call From Within Python
- 3.12 Task Checksums and Setscene
- 3.13 Wildcard Support in Variables
- 3.1 Basic Syntax
- 4 Variable Context
- 5 File Download Support
- 5.1 The Download (Fetch)
- 5.2 The Unpack
- 5.3 Fetchers
- 5.3.1 Local file fetcher (
file://
) - 5.3.2 HTTP/FTP wget fetcher (
http://
,ftp://
,https://
) - 5.3.3 CVS fetcher (
(cvs://
) - 5.3.4 Subversion (SVN) Fetcher (
svn://
) - 5.3.5 Git Fetcher (
git://
) - 5.3.6 Git Submodule Fetcher (
gitsm://
) - 5.3.7 ClearCase Fetcher (
ccrc://
) - 5.3.8 Perforce Fetcher (
p4://
) - 5.3.9 Repo Fetcher (
repo://
) - 5.3.10 Az Fetcher (
az://
) - 5.3.11 GCP Fetcher (
gs://
) - 5.3.12 Crate Fetcher (
crate://
) - 5.3.13 NPM Fetcher (
npm://
) - 5.3.14 NPM shrinkwrap Fetcher (
npmsw://
) - 5.3.15 Other Fetchers
- 5.3.1 Local file fetcher (
- 5.4 Auto Revisions
- 6 Variables Glossary
- 7 Library Functions
- 7.1 Logging utilities
- 7.2
bb.utils
approved_variables()
break_hardlinks()
build_environment()
check_system_locale()
clean_environment()
contains()
contains_any()
copyfile()
disable_network()
edit_bblayers_conf()
edit_metadata()
edit_metadata_file()
empty_environment()
environment()
exec_flat_python_func()
explode_dep_versions()
explode_dep_versions2()
explode_deps()
fileslocked()
filter()
filter_environment()
get_file_layer()
get_referenced_vars()
goh1_file()
is_local_uid()
is_semver()
join_deps()
lockfile()
md5_file()
mkdirhier()
mkstemp()
movefile()
path_is_descendant()
preserved_envvars()
preserved_envvars_exported()
prune_suffix()
prunedir()
remove()
sha1_file()
sha256_file()
sha384_file()
sha512_file()
signal_on_parent_exit()
split_version()
to_boolean()
umask()
unlockfile()
vercmp_string()
vercmp_string_op()
which()
- 8 Hello World Example
BitBake Community
Copyright © 2004-2025, Richard Purdie, Chris Larson, and Phil Blundell
This work is licensed under the Creative Commons Attribution License. To view a copy of this license, visit http://creativecommons.org/licenses/by/2.5/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California 94041, USA.