8.21. externalsrc.bbclass

You can use this class to build software from source code that is external to the OpenEmbedded build system. Building software from an external source tree means that the build system's normal fetch, unpack, and patch process is not used.

By default, the OpenEmbedded build system uses the S and B variables to locate unpacked recipe source code and to build it, respectively. When your recipe inherits externalsrc.bbclass, you use the EXTERNALSRC and EXTERNALSRC_BUILD variables to ultimately define S and B.

By default, this class expects the source code to support recipe builds that use the B variable to point to the directory in which the OpenEmbedded build system places the generated objects built from the recipes. By default, the B directory is set to the following, which is separate from the source directory (S):

     ${WORKDIR}/${BPN}/{PV}/
        

See the glossary entries for the WORKDIR, BPN, PV,

For more information on externalsrc.bbclass, see the comments in meta/classes/externalsrc.bbclass in the Source Directory. For information on how to use externalsrc.bbclass, see the "Building Software from an External Source" section in the Yocto Project Development Manual.