Inheritance¶
Include directories¶
`include-directories`
A list of private include directories, i.e. accessible only to the target itself.
Defaults are the target directory and “include”.
`public-include-directories`
A list of public include directories, which are accessible to any dependent target. Note that these are forwarded up the dependency graph, i.e. a target adds all of its dependencies’ public include directories to its own public include directories.
“include” is the default public include directory if none are specified
Example:
[mylib]
include_directories = ["src/mylib/include", "src/mylib/detail/include"]
public_include_directories = ["src/mylib/include"]
Flags¶
The following sections of a target configuration can each contain compile and link lists of flags.
`flags`
Private flags, which are only applied to the target itself.
`interface-flags`
Interface flags are applied to dependent targets, but not the target itself. An example use-case is a static library, which depends on a dynamic library, which can therefore not be linked into the target itself.
`public-flags`
Public flags are applied to the target and any dependent target.