diff --git a/documentation/ref-manual/variables.rst b/documentation/ref-manual/variables.rst index 061b1c28d8..968e8d6e05 100644 --- a/documentation/ref-manual/variables.rst +++ b/documentation/ref-manual/variables.rst @@ -7335,6 +7335,32 @@ system and gives an overview of their function and contents. :term:`SSTATE_DIR` The directory for the shared state cache. + :term:`SSTATE_EXCLUDEDEPS_SYSROOT` + This variable allows to specify indirect dependencies to exclude + from sysroots, for example to avoid the situations when a dependency on + any ``-native`` recipe will pull in all dependencies of that recipe + in the recipe sysroot. This behaviour might not always be wanted, + for example when that ``-native`` recipe depends on build tools + that are not relevant for the current recipe. + + This way, irrelevant dependencies are ignored, which could have + prevented the reuse of prebuilt artifacts stored in the Shared + State Cache. + + :term:`SSTATE_EXCLUDEDEPS_SYSROOT` is evaluated as two regular + expressions of recipe and dependency to ignore. An example + is the rule in :oe_git:`meta/conf/layer.conf `:: + + # Nothing needs to depend on libc-initial + # base-passwd/shadow-sysroot don't need their dependencies + SSTATE_EXCLUDEDEPS_SYSROOT += "\ + .*->.*-initial.* \ + .*(base-passwd|shadow-sysroot)->.* \ + " + + The ``->`` substring represents the dependency between + the two regular expressions. + :term:`SSTATE_MIRROR_ALLOW_NETWORK` If set to "1", allows fetches from mirrors that are specified in :term:`SSTATE_MIRRORS` to work even when