From: "Antonin Godard" <antonin.godard@bootlin.com>
To: <alex.kanavin@gmail.com>, <bitbake-devel@lists.openembedded.org>
Cc: <paul@pbarker.dev>, "Alexander Kanavin" <alex@linutronix.de>
Subject: Re: [bitbake-devel] [PATCH 4/4] bitbake-setup: implement symlinking local sources into builds
Date: Fri, 12 Dec 2025 09:11:18 +0100 [thread overview]
Message-ID: <DEW346OSAIK5.1JC1QR7QCHUHD@bootlin.com> (raw)
In-Reply-To: <20251211142532.983960-4-alex.kanavin@gmail.com>
Hi,
On Thu Dec 11, 2025 at 3:25 PM CET, Alexander Kanavin via lists.openembedded.org wrote:
[...]
> diff --git a/doc/bitbake-user-manual/bitbake-user-manual-environment-setup.rst b/doc/bitbake-user-manual/bitbake-user-manual-environment-setup.rst
> index 12b29241f..4d3585f09 100644
> --- a/doc/bitbake-user-manual/bitbake-user-manual-environment-setup.rst
> +++ b/doc/bitbake-user-manual/bitbake-user-manual-environment-setup.rst
> @@ -317,6 +317,17 @@ In addition, the command can take the following arguments:
> - ``--skip-selection``: can be used to skip some of the choices
> (which may result in an incomplete :term:`Setup`!)
>
> +- ``-L`` or ``--use-local-source``: instead of getting a source as prescribed in
> + a configuration, symlink it into a :term:`Setup` from a path on local disk. This
> + is useful for local development where that particular source directory is managed
> + separately, and bitbake-setup will include it in a build but will not otherwise
> + touch or modify it. This option can be specified multiple times to specify multiple
> + local sources.
> +
> + The option can be seen as a command line shortcut to providing an override file
> + with a ``local`` source in it. See the :ref:`ref-bbsetup-source-overrides` section
> + for more information on source overrides
Missing a period.
> +
> ``bitbake-setup init`` Examples
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Maybe we could add an example (or extend one) in this section to show how this
new --use-local-source option is used?
>
> @@ -649,7 +660,8 @@ They contain the following sections:
> "description": "OpenEmbedded - 'nodistro' basic configuration"
> }
>
> -- ``sources`` (*optional*): Git repositories to fetch.
> +- ``sources`` (*optional*): sources, such as git repositories that should be provided
> + under ``layers/`` directory of a :term:`Setup`.
>
> Example:
>
> @@ -669,12 +681,31 @@ They contain the following sections:
> "rev": "master"
> },
> "path": "bitbake"
> + },
> + "openembedded-core": {
> + "local": {
> + "path": "~/path/to/local/openembedded-core"
> + }
> }
> }
> }
>
> Sources can be specified with the following options:
>
> + - ``path`` (*optional*): where the source is extracted, relative to the
> + ``layers/`` directory of a :term:`Setup`. If unspecified, the name of the
> + source is used.
> +
> + - ``git-remote`` (*optional*): specifies URI, branch and revision of a git
> + repository to fetch from.
I'd maybe move git-remote below local and just make one bullet point for the
git-remote description. Because at the moment it appears to be under "local".
So like that:
"""
- ``git-remote`` (*optional*): specifies URI, branch and revision of a git
repository to fetch from.
``git-remote`` entries are specified with the following options:
- ``uri`` (**required**): a URI that follows the git URI syntax.
See https://git-scm.com/docs/git-clone#_git_urls for more information.
...
"""
> +
> + - ``local`` (*optional*): specifies a path on local disk that should be symlinked
> + to under ``layers\``. This is useful for local development, where some layer
Should be "/" instead of "\"
> + or other component used in a build is managed separately, but should still be
> + available for bitbake-setup driven builds.
> +
> + ``git-remote`` entries are specified with the following options:
> +
> - ``uri`` (**required**): a URI that follows the git URI syntax.
> See https://git-scm.com/docs/git-clone#_git_urls for more information.
>
> @@ -688,9 +719,13 @@ They contain the following sections:
> - ``branch`` (**required**): the Git branch, used to check that the
> specified ``rev`` is indeed on that branch.
>
> - - ``path`` (*optional*): where the source is extracted, relative to the
> - ``layers/`` directory of a :term:`Setup`. If unspecified, the name of the
> - source is used.
> + ``local`` entries are specified with the following options:
> +
> + - ``path`` (**required**): the path on local disk where the externally
> + managed source tree is. ``~`` and ``~user`` are expanded to that user's home
> + directory. Paths in configuration files must be absolute (after possible
> + ~ expansion), paths in override files can be relative to the directory where
> + the override file is.
Likewise, I would put this under the description of "local", like git-remote. In
the end it will group and makes things a bit easier to follow IMO.
Otherwise LGTM, thanks for the docs update. :)
Antonin
--
Antonin Godard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
next prev parent reply other threads:[~2025-12-12 8:11 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-11 14:25 [PATCH 1/4] setup-schema/layers.schema.json: correct indentation Alexander Kanavin
2025-12-11 14:25 ` [PATCH 2/4] bitbake-setup: override complete source entries, not just the git-remote properties Alexander Kanavin
2025-12-12 11:31 ` Paul Barker
2025-12-11 14:25 ` [PATCH 3/4] bitbake-setup: use separate functions for git-specific operations Alexander Kanavin
2025-12-12 11:35 ` Paul Barker
2025-12-11 14:25 ` [PATCH 4/4] bitbake-setup: implement symlinking local sources into builds Alexander Kanavin
2025-12-12 8:11 ` Antonin Godard [this message]
2025-12-12 15:27 ` [bitbake-devel] " Alexander Kanavin
2025-12-12 11:27 ` Paul Barker
2025-12-12 15:19 ` Alexander Kanavin
2025-12-12 11:30 ` [PATCH 1/4] setup-schema/layers.schema.json: correct indentation Paul Barker
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=DEW346OSAIK5.1JC1QR7QCHUHD@bootlin.com \
--to=antonin.godard@bootlin.com \
--cc=alex.kanavin@gmail.com \
--cc=alex@linutronix.de \
--cc=bitbake-devel@lists.openembedded.org \
--cc=paul@pbarker.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.