From patchwork Mon Jan 12 16:36:05 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Quentin Schulz X-Patchwork-Id: 78527 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 074AECF45BF for ; Mon, 12 Jan 2026 16:36:45 +0000 (UTC) Received: from smtp-1908.mail.infomaniak.ch (smtp-1908.mail.infomaniak.ch [185.125.25.8]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.37247.1768235796999192654 for ; Mon, 12 Jan 2026 08:36:37 -0800 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: 0leil.net, ip: 185.125.25.8, mailfrom: foss+yocto@0leil.net) Received: from smtp-3-0000.mail.infomaniak.ch (unknown [IPv6:2001:1600:4:17::246b]) by smtp-3-3000.mail.infomaniak.ch (Postfix) with ESMTPS id 4dqdLW22cNzlXV; Mon, 12 Jan 2026 17:36:35 +0100 (CET) Received: from unknown by smtp-3-0000.mail.infomaniak.ch (Postfix) with ESMTPA id 4dqdLV67fqzg9p; Mon, 12 Jan 2026 17:36:34 +0100 (CET) From: Quentin Schulz Date: Mon, 12 Jan 2026 17:36:05 +0100 Subject: [PATCH 1/8] doc: bitbake-user-manual-metadata: list (in order) all sharing directives MIME-Version: 1.0 Message-Id: <20260112-doc-directives-v1-1-b23923cfce89@cherry.de> References: <20260112-doc-directives-v1-0-b23923cfce89@cherry.de> In-Reply-To: <20260112-doc-directives-v1-0-b23923cfce89@cherry.de> To: bitbake-devel@lists.openembedded.org Cc: docs@lists.yoctoproject.org, Quentin Schulz X-Mailer: b4 0.14.3 X-Infomaniak-Routing: alpha List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Mon, 12 Jan 2026 16:36:45 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/bitbake-devel/message/18734 From: Quentin Schulz The Sharing Functionality section has multiple subsections each representing a way to share code. Let's list all directives listed in the subsections (we were missing inherit_defer and include_all) and provide a link for each subsection. This also fixes the link to INHERIT to point to the subsection where it is explained instead of to the variable glossary. Signed-off-by: Quentin Schulz --- doc/bitbake-user-manual/bitbake-user-manual-metadata.rst | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst b/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst index ef401d4ab..0c5466943 100644 --- a/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst +++ b/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst @@ -753,7 +753,12 @@ share the task. This section presents the mechanisms BitBake provides to allow you to share functionality between recipes. Specifically, the mechanisms -include ``include``, ``inherit``, :term:`INHERIT`, and ``require`` +include :ref:`inherit`, +:ref:`inherit_defer`, +:ref:`include`, +:ref:`include_all`, +:ref:`require` and +:ref:`INHERIT` directives. There is also a higher-level abstraction called ``configuration fragments`` that is enabled with ``addfragments`` directive. From patchwork Mon Jan 12 16:36:06 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Quentin Schulz X-Patchwork-Id: 78525 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id E473ACF45B4 for ; Mon, 12 Jan 2026 16:36:44 +0000 (UTC) Received: from smtp-42a8.mail.infomaniak.ch (smtp-42a8.mail.infomaniak.ch [84.16.66.168]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.37250.1768235797405782280 for ; Mon, 12 Jan 2026 08:36:37 -0800 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: 0leil.net, ip: 84.16.66.168, mailfrom: foss+yocto@0leil.net) Received: from smtp-3-0000.mail.infomaniak.ch (smtp-3-0000.mail.infomaniak.ch [10.4.36.107]) by smtp-3-3000.mail.infomaniak.ch (Postfix) with ESMTPS id 4dqdLW4fb6zkv4; Mon, 12 Jan 2026 17:36:35 +0100 (CET) Received: from unknown by smtp-3-0000.mail.infomaniak.ch (Postfix) with ESMTPA id 4dqdLW1vrFzdmX; Mon, 12 Jan 2026 17:36:35 +0100 (CET) From: Quentin Schulz Date: Mon, 12 Jan 2026 17:36:06 +0100 Subject: [PATCH 2/8] doc: bitbake-user-manual-metadata: highlight configuration fragment differently MIME-Version: 1.0 Message-Id: <20260112-doc-directives-v1-2-b23923cfce89@cherry.de> References: <20260112-doc-directives-v1-0-b23923cfce89@cherry.de> In-Reply-To: <20260112-doc-directives-v1-0-b23923cfce89@cherry.de> To: bitbake-devel@lists.openembedded.org Cc: docs@lists.yoctoproject.org, Quentin Schulz , "Robert P. J. Day" X-Mailer: b4 0.14.3 X-Infomaniak-Routing: alpha List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Mon, 12 Jan 2026 16:36:44 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/bitbake-devel/message/18736 From: Quentin Schulz We typically reserve the monospace font (used when highlighting with two tick quotes) for inline code examples or non-English words, but "configuration fragments" is neither. Instead, let's assume the intended style effect was to highlight the term as a two-word term and only use single tick quotes to make the text look italic. Reported-by: Robert P. J. Day Signed-off-by: Quentin Schulz --- doc/bitbake-user-manual/bitbake-user-manual-metadata.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst b/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst index 0c5466943..3ac2cb755 100644 --- a/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst +++ b/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst @@ -760,7 +760,7 @@ include :ref:`inherit`, :ref:`require` and :ref:`INHERIT` directives. There is also a higher-level abstraction called -``configuration fragments`` that is enabled with ``addfragments`` +`configuration fragments` that is enabled with ``addfragments`` directive. .. _ref-bitbake-user-manual-metadata-inherit: From patchwork Mon Jan 12 16:36:07 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Quentin Schulz X-Patchwork-Id: 78526 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id D3C49CF45B2 for ; Mon, 12 Jan 2026 16:36:44 +0000 (UTC) Received: from smtp-42a8.mail.infomaniak.ch (smtp-42a8.mail.infomaniak.ch [84.16.66.168]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.37251.1768235797691815048 for ; Mon, 12 Jan 2026 08:36:38 -0800 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: 0leil.net, ip: 84.16.66.168, mailfrom: foss+yocto@0leil.net) Received: from smtp-3-0000.mail.infomaniak.ch (unknown [IPv6:2001:1600:4:17::246b]) by smtp-3-3000.mail.infomaniak.ch (Postfix) with ESMTPS id 4dqdLX0fFtzlyf; Mon, 12 Jan 2026 17:36:36 +0100 (CET) Received: from unknown by smtp-3-0000.mail.infomaniak.ch (Postfix) with ESMTPA id 4dqdLW4YZfzfVB; Mon, 12 Jan 2026 17:36:35 +0100 (CET) From: Quentin Schulz Date: Mon, 12 Jan 2026 17:36:07 +0100 Subject: [PATCH 3/8] doc: bitbake-user-manual-metadata: use a cross-reference for addfragments MIME-Version: 1.0 Message-Id: <20260112-doc-directives-v1-3-b23923cfce89@cherry.de> References: <20260112-doc-directives-v1-0-b23923cfce89@cherry.de> In-Reply-To: <20260112-doc-directives-v1-0-b23923cfce89@cherry.de> To: bitbake-devel@lists.openembedded.org Cc: docs@lists.yoctoproject.org, Quentin Schulz X-Mailer: b4 0.14.3 X-Infomaniak-Routing: alpha List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Mon, 12 Jan 2026 16:36:44 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/bitbake-devel/message/18737 From: Quentin Schulz We use cross-reference links for all but addfragments so let's fix that inconsistency. Signed-off-by: Quentin Schulz --- doc/bitbake-user-manual/bitbake-user-manual-metadata.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst b/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst index 3ac2cb755..9233c4555 100644 --- a/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst +++ b/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst @@ -760,8 +760,8 @@ include :ref:`inherit`, :ref:`require` and :ref:`INHERIT` directives. There is also a higher-level abstraction called -`configuration fragments` that is enabled with ``addfragments`` -directive. +`configuration fragments` that is enabled with the +:ref:`bitbake-user-manual/bitbake-user-manual-metadata:\`\`addfragments\`\` directive`. .. _ref-bitbake-user-manual-metadata-inherit: From patchwork Mon Jan 12 16:36:08 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Quentin Schulz X-Patchwork-Id: 78524 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id C77D2CF45AF for ; Mon, 12 Jan 2026 16:36:44 +0000 (UTC) Received: from smtp-42aa.mail.infomaniak.ch (smtp-42aa.mail.infomaniak.ch [84.16.66.170]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.37253.1768235798187499800 for ; Mon, 12 Jan 2026 08:36:38 -0800 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: 0leil.net, ip: 84.16.66.170, mailfrom: foss+yocto@0leil.net) Received: from smtp-3-0000.mail.infomaniak.ch (smtp-3-0000.mail.infomaniak.ch [10.4.36.107]) by smtp-3-3000.mail.infomaniak.ch (Postfix) with ESMTPS id 4dqdLX3C5Gzlk2; Mon, 12 Jan 2026 17:36:36 +0100 (CET) Received: from unknown by smtp-3-0000.mail.infomaniak.ch (Postfix) with ESMTPA id 4dqdLX0Y2pzdWY; Mon, 12 Jan 2026 17:36:36 +0100 (CET) From: Quentin Schulz Date: Mon, 12 Jan 2026 17:36:08 +0100 Subject: [PATCH 4/8] doc: bitbake-user-manual-metadata: specify that current dir won't be searched for include_all MIME-Version: 1.0 Message-Id: <20260112-doc-directives-v1-4-b23923cfce89@cherry.de> References: <20260112-doc-directives-v1-0-b23923cfce89@cherry.de> In-Reply-To: <20260112-doc-directives-v1-0-b23923cfce89@cherry.de> To: bitbake-devel@lists.openembedded.org Cc: docs@lists.yoctoproject.org, Quentin Schulz X-Mailer: b4 0.14.3 X-Infomaniak-Routing: alpha List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Mon, 12 Jan 2026 16:36:44 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/bitbake-devel/message/18738 From: Quentin Schulz We've forgotten to make it explicit that include_all differs from the include directive also by the fact it doesn't look for the file relatively to the file with the include_all directive, so let's make that clear. Signed-off-by: Quentin Schulz --- doc/bitbake-user-manual/bitbake-user-manual-metadata.rst | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst b/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst index 9233c4555..d7335f29e 100644 --- a/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst +++ b/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst @@ -910,6 +910,10 @@ The ``include_all`` directive works like the :ref:`include directive but will include *all* of the files that match the specified path in the enabled layers (layers part of :term:`BBLAYERS`). +Note that only :term:`BBPATH` will be searched, the parent directory of the file +with the ``include_all`` directive will not be searched (unlike for the +``include`` directive). + .. note:: This behaviour is rarely what you want in normal operation, and should From patchwork Mon Jan 12 16:36:09 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Quentin Schulz X-Patchwork-Id: 78523 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id A9F5ECF45AE for ; Mon, 12 Jan 2026 16:36:44 +0000 (UTC) Received: from smtp-bc0c.mail.infomaniak.ch (smtp-bc0c.mail.infomaniak.ch [45.157.188.12]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.37254.1768235798537411574 for ; Mon, 12 Jan 2026 08:36:38 -0800 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: 0leil.net, ip: 45.157.188.12, mailfrom: foss+yocto@0leil.net) Received: from smtp-3-0000.mail.infomaniak.ch (smtp-3-0000.mail.infomaniak.ch [10.4.36.107]) by smtp-3-3000.mail.infomaniak.ch (Postfix) with ESMTPS id 4dqdLX5fQGzlFJ; Mon, 12 Jan 2026 17:36:36 +0100 (CET) Received: from unknown by smtp-3-0000.mail.infomaniak.ch (Postfix) with ESMTPA id 4dqdLX35LQzfRx; Mon, 12 Jan 2026 17:36:36 +0100 (CET) From: Quentin Schulz Date: Mon, 12 Jan 2026 17:36:09 +0100 Subject: [PATCH 5/8] doc: bitbake-user-manual-metadata: add missing highlight for BBPATH and PATH MIME-Version: 1.0 Message-Id: <20260112-doc-directives-v1-5-b23923cfce89@cherry.de> References: <20260112-doc-directives-v1-0-b23923cfce89@cherry.de> In-Reply-To: <20260112-doc-directives-v1-0-b23923cfce89@cherry.de> To: bitbake-devel@lists.openembedded.org Cc: docs@lists.yoctoproject.org, Quentin Schulz X-Mailer: b4 0.14.3 X-Infomaniak-Routing: alpha List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Mon, 12 Jan 2026 16:36:44 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/bitbake-devel/message/18739 From: Quentin Schulz We typically highlight (via a :term: directive or with double tick quotes if there's no entry in the glossary or it is inappropriate) variables, and here it was missed so let's fix that oversight. Signed-off-by: Quentin Schulz --- doc/bitbake-user-manual/bitbake-user-manual-metadata.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst b/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst index d7335f29e..44a1e519b 100644 --- a/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst +++ b/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst @@ -1070,7 +1070,7 @@ BitBake also uses the :term:`BBPATH` variable. .. note:: - The BBPATH variable is analogous to the environment variable PATH. + The :term:`BBPATH` variable is analogous to the environment variable ``PATH``. For these two directives, BitBake includes the first file it finds. From patchwork Mon Jan 12 16:36:10 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Quentin Schulz X-Patchwork-Id: 78522 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 975DDCF45AA for ; Mon, 12 Jan 2026 16:36:44 +0000 (UTC) Received: from smtp-8faa.mail.infomaniak.ch (smtp-8faa.mail.infomaniak.ch [83.166.143.170]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.37255.1768235798753049155 for ; Mon, 12 Jan 2026 08:36:39 -0800 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: 0leil.net, ip: 83.166.143.170, mailfrom: foss+yocto@0leil.net) Received: from smtp-3-0000.mail.infomaniak.ch (unknown [IPv6:2001:1600:4:17::246b]) by smtp-3-3000.mail.infomaniak.ch (Postfix) with ESMTPS id 4dqdLY1J7JznmJ; Mon, 12 Jan 2026 17:36:37 +0100 (CET) Received: from unknown by smtp-3-0000.mail.infomaniak.ch (Postfix) with ESMTPA id 4dqdLX5Yrvzg2W; Mon, 12 Jan 2026 17:36:36 +0100 (CET) From: Quentin Schulz Date: Mon, 12 Jan 2026 17:36:10 +0100 Subject: [PATCH 6/8] doc: bitbake-user-manual-metadata: fix incorrect path in example for locating files MIME-Version: 1.0 Message-Id: <20260112-doc-directives-v1-6-b23923cfce89@cherry.de> References: <20260112-doc-directives-v1-0-b23923cfce89@cherry.de> In-Reply-To: <20260112-doc-directives-v1-0-b23923cfce89@cherry.de> To: bitbake-devel@lists.openembedded.org Cc: docs@lists.yoctoproject.org, Quentin Schulz X-Mailer: b4 0.14.3 X-Infomaniak-Routing: alpha List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Mon, 12 Jan 2026 16:36:44 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/bitbake-devel/message/18740 From: Quentin Schulz The paths listed in the example are missing an "example" subdirectory to match the searched paths in the example, let's fix this oversight. Fixes: 7bd36f6c6d33 ("doc: extend classes and include/require documentation") Signed-off-by: Quentin Schulz --- doc/bitbake-user-manual/bitbake-user-manual-metadata.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst b/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst index 44a1e519b..719689150 100644 --- a/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst +++ b/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst @@ -1080,11 +1080,11 @@ For these two directives, BitBake includes the first file it finds. with the :ref:`include_all ` directive. Let's consider the following statement called from a recipe file located in -``/layers/meta-custom2/recipes-example/example_0.1.bb``:: +``/layers/meta-custom2/recipes-example/example/example_0.1.bb``:: require myfile.inc -Where ``myfile.inc`` is located in ``/layers/meta-custom2/recipes-example/``. +Where ``myfile.inc`` is located in ``/layers/meta-custom2/recipes-example/example``. And let's assume that the value of :term:`BBPATH` is ``/layers/meta-custom1:/layers/meta-custom2``. Then BitBake will try to find From patchwork Mon Jan 12 16:36:11 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Quentin Schulz X-Patchwork-Id: 78521 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7A9B2CF45A4 for ; Mon, 12 Jan 2026 16:36:44 +0000 (UTC) Received: from smtp-bc0c.mail.infomaniak.ch (smtp-bc0c.mail.infomaniak.ch [45.157.188.12]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.36923.1768235799324145829 for ; Mon, 12 Jan 2026 08:36:39 -0800 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: 0leil.net, ip: 45.157.188.12, mailfrom: foss+yocto@0leil.net) Received: from smtp-3-0000.mail.infomaniak.ch (unknown [IPv6:2001:1600:4:17::246b]) by smtp-3-3000.mail.infomaniak.ch (Postfix) with ESMTPS id 4dqdLY47xZzmVy; Mon, 12 Jan 2026 17:36:37 +0100 (CET) Received: from unknown by smtp-3-0000.mail.infomaniak.ch (Postfix) with ESMTPA id 4dqdLY1BCNzddD; Mon, 12 Jan 2026 17:36:37 +0100 (CET) From: Quentin Schulz Date: Mon, 12 Jan 2026 17:36:11 +0100 Subject: [PATCH 7/8] doc: bitbake-user-manual-metadata: expand on search paths for include directive MIME-Version: 1.0 Message-Id: <20260112-doc-directives-v1-7-b23923cfce89@cherry.de> References: <20260112-doc-directives-v1-0-b23923cfce89@cherry.de> In-Reply-To: <20260112-doc-directives-v1-0-b23923cfce89@cherry.de> To: bitbake-devel@lists.openembedded.org Cc: docs@lists.yoctoproject.org, Quentin Schulz X-Mailer: b4 0.14.3 X-Infomaniak-Routing: alpha List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Mon, 12 Jan 2026 16:36:44 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/bitbake-devel/message/18741 From: Quentin Schulz While it is made somewhat explicit in the require and include directive sections, I believe we should provide an example as to which relative directory the include/require directives apply to when in a bbappend. Let's provide some example to make this even clearer as it wasn't what I thought would happen. Signed-off-by: Quentin Schulz --- doc/bitbake-user-manual/bitbake-user-manual-metadata.rst | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst b/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst index 719689150..cbad4df99 100644 --- a/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst +++ b/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst @@ -1112,6 +1112,18 @@ In this case, the following paths would be searched:: This time, the second item of this list would be matched. +Note that the first path is based on the location of the file with the +``require`` (or ``include``) directive. Imagine there's a +``/layers/meta-custom2/recipes-bbappend/example/example_0.1.bbappend`` with:: + + require myappend.inc + +In this case, the following paths would be searched:: + + /layers/meta-custom2/recipes-bbappend/example/myappend.inc + /layers/meta-custom1/myappend.inc + /layers/meta-custom2/myappend.inc + .. note:: In the above examples, the exact same search order applies for the From patchwork Mon Jan 12 16:36:12 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Quentin Schulz X-Patchwork-Id: 78520 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 666D8E67484 for ; Mon, 12 Jan 2026 16:36:44 +0000 (UTC) Received: from smtp-190c.mail.infomaniak.ch (smtp-190c.mail.infomaniak.ch [185.125.25.12]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.36924.1768235799536132764 for ; Mon, 12 Jan 2026 08:36:39 -0800 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: 0leil.net, ip: 185.125.25.12, mailfrom: foss+yocto@0leil.net) Received: from smtp-3-0000.mail.infomaniak.ch (smtp-3-0000.mail.infomaniak.ch [10.4.36.107]) by smtp-3-3000.mail.infomaniak.ch (Postfix) with ESMTPS id 4dqdLY6rQfzkrj; Mon, 12 Jan 2026 17:36:37 +0100 (CET) Received: from unknown by smtp-3-0000.mail.infomaniak.ch (Postfix) with ESMTPA id 4dqdLY42V7zfPD; Mon, 12 Jan 2026 17:36:37 +0100 (CET) From: Quentin Schulz Date: Mon, 12 Jan 2026 17:36:12 +0100 Subject: [PATCH 8/8] doc: bitbake-user-manual-metadata: expand locating files example for include_all directive MIME-Version: 1.0 Message-Id: <20260112-doc-directives-v1-8-b23923cfce89@cherry.de> References: <20260112-doc-directives-v1-0-b23923cfce89@cherry.de> In-Reply-To: <20260112-doc-directives-v1-0-b23923cfce89@cherry.de> To: bitbake-devel@lists.openembedded.org Cc: docs@lists.yoctoproject.org, Quentin Schulz X-Mailer: b4 0.14.3 X-Infomaniak-Routing: alpha List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Mon, 12 Jan 2026 16:36:44 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/bitbake-devel/message/18742 From: Quentin Schulz This adds a separate example for the include_all directive which also highlights that the current directory isn't searched (unlike when using the include or require directive). Signed-off-by: Quentin Schulz --- .../bitbake-user-manual-metadata.rst | 32 ++++++++++++++++++---- 1 file changed, 27 insertions(+), 5 deletions(-) diff --git a/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst b/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst index cbad4df99..18f293f4b 100644 --- a/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst +++ b/doc/bitbake-user-manual/bitbake-user-manual-metadata.rst @@ -1074,11 +1074,6 @@ BitBake also uses the :term:`BBPATH` variable. For these two directives, BitBake includes the first file it finds. -.. note:: - - It is also possible to include *all* occurences of a file with the same name - with the :ref:`include_all ` directive. - Let's consider the following statement called from a recipe file located in ``/layers/meta-custom2/recipes-example/example/example_0.1.bb``:: @@ -1129,6 +1124,33 @@ In this case, the following paths would be searched:: In the above examples, the exact same search order applies for the :ref:`include ` directive. +It is also possible to include *all* occurences of a file with the same name +with the :ref:`include_all ` directive. + +Let's consider the following statement called from a recipe file located in +``/layers/meta-custom2/recipes-example/example/exampleall_0.1.bb``:: + + include_all all.inc + +Where multiple ``all.inc`` are in located in ``/layers/meta-custom2`` and +``/layers/meta-custom1``. + +And let's assume that the value of :term:`BBPATH` is +``/layers/meta-custom1:/layers/meta-custom2``. Then BitBake will try to include +all ``all.inc`` in this order:: + + /layers/meta-custom1/all.inc + /layers/meta-custom2/all.inc + +In this case the first ``/layers/meta-custom1/all.inc`` would be included, and +then ``/layers/meta-custom2/all.inc`` if both are found. + +.. note:: + + The same logic as for the :ref:`ref-include-directive` applies, except that + the path relative to the file where the directive is specified is not + searched when using the ``include_all`` directive. + Locating Class Files --------------------