The Meson Build System http://mesonbuild.com/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

68 lines
2.8 KiB

name: subproject
returns: subproject
description: |
Takes the project specified in the positional argument and brings that
in the current build specification by returning a [[@subproject]] object.
Subprojects must always be placed inside
the `subprojects` directory at the top source directory. So for
example a subproject called `foo` must be located in
`${MESON_SOURCE_ROOT}/subprojects/foo`.
- `default_options` *(since 0.37.0)*: an array of default option values
that override those set in the subproject's `meson_options.txt`
(like `default_options` in `project`, they only have effect when
Meson is run for the first time, and command line arguments override
any default options in build files). *(since 0.54.0)*: `default_library`
built-in option can also be overridden.
- `version`: works just like the same as in `dependency`.
It specifies what version the subproject should be, as an example `>=1.0.1`
- `required` *(since 0.48.0)*: By default, `required` is `true` and
Meson will abort if the subproject could not be setup. You can set
this to `false` and then use the `.found()` method on the [[@subproject]]
object. You may also pass the value of a
[`feature`](Build-options.md#features) option, same as
[[dependency]].
Note that you can use the returned [[@subproject]] object
to access any variable in the
subproject. However, if you want to use a dependency object from
inside a subproject, an easier way is to use the `fallback:` keyword
argument to [[dependency]].
[See additional documentation](Subprojects.md).
posargs:
subproject_name:
type: str
description: |
Name of the subproject. The subproject must exist in the `subprojects`
directory (or the directory specified in the `subproject_dir` of
[[project]]) as a directory or wrap file.
kwargs:
default_options:
type: list[str]
since: 0.37.0
description: |
An array of default option values
that override those set in the subproject's `meson_options.txt`
(like `default_options` in [[project]], they only have effect when
Meson is run for the first time, and command line arguments override
any default options in build files). *(since 0.54.0)*: `default_library`
built-in option can also be overridden.
version:
type: str
description: |
Works just like the same as in [[dependency]].
It specifies what version the subproject should be, as an example `>=1.0.1`.
required:
type: bool | feature
since: 0.48.0
default: true
description: |
If `true`, Meson will abort if the subproject could not be setup. You can set
this to `false` and then use the `.found()` method on the [[@subproject]] object.
You may also pass the value of a
[`feature`](Build-options.md#features) option, same as [[dependency]].