generic-poky/documentation/ref-manual/ref-tasks.xml

503 lines
14 KiB
XML
Raw Normal View History

<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] >
<chapter id='ref-tasks'>
<title>Tasks</title>
<para>
Tasks are units of execution for BitBake.
Recipes (<filename>.bb</filename> files) use tasks to complete
configuring, compiling, and packaging software.
This chapter provides a reference of the tasks defined in the
OpenEmbedded build system.
</para>
<section id='normal-recipe-build-tasks'>
<title>Normal Recipe Build Tasks</title>
<para>
The following sections describe normal tasks associated with building
a recipe.
</para>
<section id='ref-tasks-build'>
<title><filename>do_build</filename></title>
<para>
Default task for a recipe - depends on all other normal tasks
required to 'build' a recipe.
</para>
</section>
<section id='ref-tasks-compile'>
<title><filename>do_compile</filename></title>
<para>
Compiles the source in the compilation directory.
</para>
</section>
<section id='ref-tasks-compile_ptest_base'>
<title><filename>do_compile_ptest_base</filename></title>
<para>
Compiles the runtime test suite included in the software being
built.
</para>
</section>
<section id='ref-tasks-configure'>
<title><filename>do_configure</filename></title>
<para>
Configures the source by enabling and disabling any build-time and
configuration options for the software being built.
</para>
</section>
<section id='ref-tasks-configure_ptest_base'>
<title><filename>do_configure_ptest_base</filename></title>
<para>
Configures the runtime test suite included in the software being
built.
</para>
</section>
<section id='ref-tasks-deploy'>
<title><filename>do_deploy</filename></title>
<para>
Writes deployable output files to the deploy directory.
</para>
</section>
<section id='ref-tasks-fetch'>
<title><filename>do_fetch</filename></title>
<para>
Fetches the source code.
</para>
</section>
<section id='ref-tasks-install'>
<title><filename>do_install</filename></title>
<para>
Copies files from the compilation directory to a holding area.
</para>
</section>
<section id='ref-tasks-install_ptest_base'>
<title><filename>do_install_ptest_base</filename></title>
<para>
Copies the runtime test suite files from the compilation directory
to a holding area.
</para>
</section>
<section id='ref-tasks-package'>
<title><filename>do_package</filename></title>
<para>
Analyzes the content of the holding area and splits it into subsets
based on available packages and files.
</para>
</section>
<section id='ref-tasks-package_index'>
<title><filename>do_package_index</filename></title>
<para>
Creates or updates the index in the Package Feed area.
</para>
</section>
<section id='ref-tasks-package_write_deb'>
<title><filename>do_package_write_deb</filename></title>
<para>
Creates the actual DEB packages and places them in the Package Feed
area.
</para>
</section>
<section id='ref-tasks-package_write_ipk'>
<title><filename>do_package_write_ipk</filename></title>
<para>
Creates the actual IPK packages and places them in the Package Feed
area.
</para>
</section>
<section id='ref-tasks-package_write_rpm'>
<title><filename>do_package_write_rpm</filename></title>
<para>
Creates the actual RPM packages and places them in the Package Feed
area.
</para>
</section>
<section id='ref-tasks-package_write_tar'>
<title><filename>do_package_write_tar</filename></title>
<para>
Creates tar archives for packages and places them in the Package
Feed area.
</para>
</section>
<section id='ref-tasks-packagedata'>
<title><filename>do_packagedata</filename></title>
<para>
Creates package metadata used by the build system to generate the
final packages.
</para>
</section>
<section id='ref-tasks-patch'>
<title><filename>do_patch</filename></title>
<para>
Locates patch files and applies them to the source code.
</para>
</section>
<section id='ref-tasks-populate_lic'>
<title><filename>do_populate_lic</filename></title>
<para>
Writes license information for the recipe that is collected later
when the image is constructed.
</para>
</section>
<section id='ref-tasks-populate_sdk'>
<title><filename>do_populate_sdk</filename></title>
<para>
Creates the file and directory structure for an installable SDK.
</para>
</section>
<section id='ref-tasks-populate_sysroot'>
<title><filename>do_populate_sysroot</filename></title>
<para>
Copies a subset of files installed by the
<link linkend='ref-tasks-install'><filename>do_install</filename></link>
task into the sysroot in order to make them available to other
recipes.
</para>
</section>
<section id='ref-tasks-rm_work'>
<title><filename>do_rm_work</filename></title>
<para>
Removes work files after the build system has finished with them.
</para>
</section>
<section id='ref-tasks-rm_work_all'>
<title><filename>do_rm_work_all</filename></title>
<para>
Top-level task for removing work files after the build system has
finished with them.
</para>
</section>
<section id='ref-tasks-unpack'>
<title><filename>do_unpack</filename></title>
<para>
Unpacks the source code into a working directory.
</para>
</section>
</section>
<section id='manually-called-tasks'>
<title>Manually Called Tasks</title>
<para>
These tasks are typically manually triggered (e.g. by using the
<filename>bitbake -c</filename> command line option):
</para>
<section id='ref-tasks-checkuri'>
<title><filename>do_checkuri</filename></title>
<para>
Validates the SRC_URI value.
</para>
</section>
<section id='ref-tasks-checkuriall'>
<title><filename>do_checkuriall</filename></title>
<para>
Validates the SRC_URI value for all recipes required to build a
target.
</para>
</section>
<section id='ref-tasks-clean'>
<title><filename>do_clean</filename></title>
<para>
Removes all output files for a target.
</para>
</section>
<section id='ref-tasks-cleanall'>
<title><filename>do_cleanall</filename></title>
<para>
Removes all output files, shared state cache, and downloaded source
files for a target.
</para>
</section>
<section id='ref-tasks-cleansstate'>
<title><filename>do_cleansstate</filename></title>
<para>
Removes all output files and shared state cache for a target.
</para>
</section>
<section id='ref-tasks-fetchall'>
<title><filename>do_fetchall</filename></title>
<para>
Fetches all remote sources required to build a target.
</para>
</section>
<section id='ref-tasks-devshell'>
<title><filename>do_devshell</filename></title>
<para>
Starts a shell with the environment set up for
development/debugging.
</para>
</section>
<section id='ref-tasks-listtasks'>
<title><filename>do_listtasks</filename></title>
<para>
Lists all defined tasks for a target.
</para>
</section>
</section>
<section id='image-related-tasks'>
<title>Image-Related Tasks</title>
<para>
The following tasks are applicable to image recipes.
</para>
<section id='ref-tasks-bootimg'>
<title><filename>do_bootimg</filename></title>
<para>
Creates a bootable live image.
</para>
</section>
<section id='ref-tasks-bundle_initramfs'>
<title><filename>do_bundle_initramfs</filename></title>
<para>
Combines an initial ramdisk image and kernel together to form
a single image.
</para>
</section>
<section id='ref-tasks-rootfs'>
<title><filename>do_rootfs</filename></title>
<para>
Creates the root filesystem (file and directory structure) for an
image.
</para>
</section>
<section id='ref-tasks-testimage'>
<title><filename>do_testimage</filename></title>
<para>
Boots an image and performs runtime tests within the image.
</para>
</section>
<section id='ref-tasks-testimage_auto'>
<title><filename>do_testimage_auto</filename></title>
<para>
Boots an image and performs runtime tests within the image
immediately after it has been built.
</para>
</section>
<section id='ref-tasks-vmdkimg'>
<title><filename>do_vmdkimg</filename></title>
<para>
Creates a .vmdk image for use with VMware and compatible virtual
machine hosts.
</para>
</section>
</section>
<section id='kernel-related-tasks'>
<title>Kernel-Related Tasks</title>
<para>
The following tasks are applicable to kernel recipes.
Some of them (e.g. the
<link linkend='ref-tasks-menuconfig'><filename>do_menuconfig</filename></link>
task) are also applicable to recipes that use
Linux kernel style configuration (e.g. BusyBox).
</para>
<section id='ref-tasks-compile_kernelmodules'>
<title><filename>do_compile_kernelmodules</filename></title>
<para>
Compiles loadable modules for the Linux kernel.
</para>
</section>
<section id='ref-tasks-diffconfig'>
<title><filename>do_diffconfig</filename></title>
<para>
Compares the old and new config files after running the
<link linkend='ref-tasks-menuconfig'><filename>do_menuconfig</filename></link>
task for the kernel.
</para>
</section>
<section id='ref-tasks-kernel_checkout'>
<title><filename>do_kernel_checkout</filename></title>
<para>
Checks out source/meta branches for a linux-yocto style kernel.
</para>
</section>
<section id='ref-tasks-kernel_configcheck'>
<title><filename>do_kernel_configcheck</filename></title>
<para>
Validates the kernel configuration for a linux-yocto style kernel.
</para>
</section>
<section id='ref-tasks-kernel_configme'>
<title><filename>do_kernel_configme</filename></title>
<para>
Assembles the kernel configuration for a linux-yocto style kernel.
</para>
</section>
<section id='ref-tasks-kernel_link_vmlinux'>
<title><filename>do_kernel_link_vmlinux</filename></title>
<para>
Creates a symbolic link in arch/$arch/boot for vmlinux kernel
images.
</para>
</section>
<section id='ref-tasks-menuconfig'>
<title><filename>do_menuconfig</filename></title>
<para>
Runs 'make menuconfig' for the kernel.
</para>
</section>
<section id='ref-tasks-savedefconfig'>
<title><filename>do_savedefconfig</filename></title>
<para>
Creates a minimal Linux kernel configuration file.
</para>
</section>
<section id='ref-tasks-sizecheck'>
<title><filename>do_sizecheck</filename></title>
<para>
Checks the size of the kernel image against KERNEL_IMAGE_MAXSIZE
(if set).
</para>
</section>
<section id='ref-tasks-strip'>
<title><filename>do_strip</filename></title>
<para>
Strips unneeded sections out of the Linux kernel image.
</para>
</section>
<section id='ref-tasks-uboot_mkimage'>
<title><filename>do_uboot_mkimage</filename></title>
<para>
Creates a uImage file from the kernel for the U-Boot bootloader.
</para>
</section>
<section id='ref-tasks-validate_branches'>
<title><filename>do_validate_branches</filename></title>
<para>
Ensures that the source/meta branches are on the locations
specified by their SRCREV values for a linux-yocto style kernel.
</para>
</section>
</section>
<section id='miscellaneous-tasks'>
<title>Miscellaneous Tasks</title>
<para>
The following sections describe miscellaneous tasks.
</para>
<section id='ref-tasks-generate_qt_config_file'>
<title><filename>do_generate_qt_config_file</filename></title>
<para>
Writes a qt.conf file for building a Qt-based application.
</para>
</section>
<section id='ref-tasks-spdx'>
<title><filename>do_spdx</filename></title>
<para>
A build stage that takes the source code and scans it on a remote
FOSSOLOGY server in order to produce an SPDX document.
</para>
</section>
</section>
</chapter>
<!--
vim: expandtab tw=80 ts=4
-->