A Toolchain is simply a set of binary packages.
A toolchain is a set of packages
If has a name that will later be used as ‘build config’ by the CMakeBuilder object.
It has a configuration in ~/.config/qi/toolchains/<name.xml> looking like:
Most of the work is done by the qitoolchain.database.DataBase class.
<toolchain>
<package name="..." path="..." />
</toolchain>
thus added packages are stored permanently.
The name of the toolchain
The path to the generated toolchain file. Usually in .cache/qi/toolchains/<name>/toolchain-<name>.cmake)) It sets CMAKE_FIND_ROOT_PATH and includes the necessary toolchain files, for instance:
# Autogenerted file
include("/path/to/a/ctc/cross-config.cmake")
list(INSERT CMAKE_FIND_ROOT_PATH 0 "/path/to/a/ctc")
list(INSERT CMAKE_FIND_ROOT_PATH 0 "/path/to/a/package")
Remove a package from this toolchain
Remove self.
Clean cache, remove all packages, remove self from configuration
Parse an xml feed, adding packages to self while doing so See Parsing toolchain feeds and qitoolchain.feed for details