qiBuild documentation

qibuild.deps – Resolving dependencies

DepsSolver

class qibuild.deps.DepsSolver(build_worktree)

Solve dependencies across projects in a build worktree and packages in a toolchain.

get_dep_projects(projects, dep_types, reverse=False)

Solve the dependencies of the list of projects :param: dep_types A list of dependencies types

(["build"], ["runtime", "test"], etc.)
Returns:a list of projects in the build worktree
get_dep_packages(projects, dep_types)

Solve the dependencies of the list of projects :param: dep_types A list of dependencies types

(["build"], ["runtime", "test"], etc.)
Returns:a list of packages in the build worktree’s toolchain
get_sdk_dirs(project, dep_types)

Get the list of build/sdk dirs on which the project depends Those will then be written in build/dependencies.cmake and added to CMAKE_PREFIX_PATH by qibuild-config.cmake

get_host_projects(projects)

Get a sorted list of all the projects listed as host dependencies.

Functions defined in this module

qibuild.deps.read_deps_from_xml(target, xml_elem)

Read all the <depends /> tags in the xml element and set target.build_depends, target.run_depends, target.test_depends.