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.

69 lines
2.1 KiB

name: library
returns: lib
description: |
Builds a library that is either static, shared or both depending on
the value of `default_library`
user [option](https://mesonbuild.com/Builtin-options.html).
You should use this instead of [[shared_library]],
[[static_library]] or
[[both_libraries]] most of the time. This allows you
to toggle your entire project (including subprojects) from shared to
static with only one option. This option applies to libraries being
built internal to the entire project. For external dependencies, the
default library type preferred is shared. This can be adapted on a per
library basis using the [[dependency]] `static` keyword.
The keyword arguments for this are the same as for
[[build_target]]
warnings:
- using <lang>_shared_args and/or <lang>_static_args may lead to much higher
compilation times with both_library, as object files cannot be shared between
the static and shared targets. It is guaranteed to not duplicate the build if
these arguments are empty arrays
posargs_inherit: _build_target_base
varargs_inherit: _build_target_base
kwargs_inherit:
- shared_library
- static_library
kwargs:
rust_abi:
type: str
since: 1.3.0
description: |
Set the specific ABI to compile (when compiling rust).
- 'rust' (default): Create a "rlib" or "dylib" crate depending on the library
type being build.
- 'c': Create a "cdylib" or "staticlib" crate depending on the library
type being build.
<lang>_static_args:
type: list[str]
since: 1.3.0
description:
Arguments that are only passed to a static library
vala_static_args:
type: list[str | file]
since: 1.3.0
description:
Arguments that are only passed to a static library
Like `vala_args`, [[files]] is allowed in addition to string
<lang>_shared_args:
type: list[str]
since: 1.3.0
description:
Arguments that are only passed to a shared library
vala_shared_args:
type: list[str | file]
since: 1.3.0
description:
Arguments that are only passed to a shared library
Like `vala_args`, [[files]] is allowed in addition to string