| name: add_languages | |
| returns: bool | |
| description: | | |
| Add programming languages used by the project. | |
| This is equivalent to having | |
| them in the `project` declaration. This function is usually used to | |
| add languages that are only used under some conditions. | |
| Returns `true` if all languages specified were found and `false` otherwise. | |
| If `native` is omitted, the languages may be used for either build or host | |
| machine, but are never required for the build machine. (i.e. it is equivalent | |
| to `add_languages(*langs*, native: false, required: *required*) and | |
| add_languages(*langs*, native: true, required: false)`. This default behaviour | |
| may change to `native: false` in a future Meson version. | |
| example: | | |
| ```meson | |
| project('foobar', 'c') | |
| if compiling_for_osx | |
| add_languages('objc') | |
| endif | |
| if add_languages('cpp', required : false) | |
| executable('cpp-app', 'main.cpp') | |
| endif | |
| # More code... | |
| ``` | |
| varargs: | |
| type: str | |
| name: Language | |
| description: The languages to add | |
| kwargs: | |
| required: | |
| type: bool | feature | |
| default: true | |
| description: | | |
| If set to `true`, Meson will halt if any of the languages | |
| specified are not found. *(since 0.47.0)* The value of a | |
| [`feature`](Build-options.md#features) option can also be passed. | |
| native: | |
| type: bool | |
| since: 0.54.0 | |
| description: | | |
| If set to `true`, the language will be used to compile for the build | |
| machine, if `false`, for the host machine. | |