| name: include_directories |
| returns: inc |
| description: | |
| Returns an opaque object which contains the directories (relative to |
| the current directory) given in the positional arguments. The result |
| can then be passed to the `include_directories:` keyword argument when |
| building executables or libraries. You can use the returned object in |
| any subdirectory you want, Meson will make the paths work |
| automatically. |
| |
| Note that this function call itself does not add the directories into |
| the search path, since there is no global search path. For something |
| like that, see [`add_project_arguments()`](#add_project_arguments). |
| |
| See also `implicit_include_directories` parameter of |
| [[executable]], which adds current source and build |
| directories to include path. |
| |
| Each directory given is converted to two include paths: one that is |
| relative to the source root and one relative to the build root. |
| |
| example: | |
| For example, with the following source tree layout in |
| `/home/user/project.git`: |
| |
| `meson.build`: |
| ```meson |
| project(...) |
| |
| subdir('include') |
| subdir('src') |
| |
| ... |
| ``` |
| |
| `include/meson.build`: |
| ```meson |
| inc = include_directories('.') |
| |
| ... |
| ``` |
| |
| `src/meson.build`: |
| ```meson |
| sources = [...] |
| |
| executable('some-tool', sources, |
| include_directories : inc, |
| ...) |
| |
| ... |
| ``` |
| |
| If the build tree is `/tmp/build-tree`, the following include paths |
| will be added to the `executable()` call: `-I/tmp/build-tree/include |
| -I/home/user/project.git/include`. |
| |
| varargs: |
| name: includes |
| type: str |
| description: Include paths to add. |
| |
| kwargs: |
| is_system: |
| type: bool |
| default: false |
| description: | |
| If set to `true`, flags the specified directories as system directories. |
| This means that |
| they will be used with the `-isystem` compiler argument rather than |
| `-I` on compilers that support this flag (in practice everything |
| except Visual Studio). |