root_dep_populate – create build context directory for a package and fill it with files of dependencies.
Description
If some dependencies had not been found, method calls die, which exits the process.
When all dependencies are resolved, each used package is taken and its dump is loaded in subshell, so the environment starts to contain the state and code, belonging to that other package. ROOT is preserved and points to the directory of the initial package. After that pkg_root(3) is called, which reflects the files of used package to the context directory of current package. Code for pkg_root is taken at that moment from used package, not from the current one. When scope of subshell ends, all data and code of initial package return back automatically. Then next package dump is loaded.
When all used packages are processed, ROOT contains all files, needed for the build of the current package, and doesn't contain files, undeclared by dependencies.
The method does nothing, when dataword staticdeproot is included in profile and is present in AUSE. The ROOT is populated directly with pkg_root(3) by each package in that mode, as ROOT is shared between all packages and available for writing.
Writing
Variables
Interfaces
- -
- depend_resolve_current_atom(3)
- -
- pkg_root(3)
Options
- any_static_root