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.

54 lines
2.0 KiB

name: shared_library
returns: lib
description: Builds a shared library with the given sources.
notes:
- |
Linking to a shared module is not supported on some
platforms, notably OSX. Consider using a
[[shared_library]] instead, if you need to both
`dlopen()` and link with a library.
posargs_inherit: _build_target_base
varargs_inherit: _build_target_base
kwargs_inherit: _build_target_base
kwargs:
version:
type: str
description: |
A string specifying the version of this shared library,
such as `1.1.0`. On Linux and OS X, this is used to set the shared
library version in the filename, such as `libfoo.so.1.1.0` and
`libfoo.1.1.0.dylib`. If this is not specified, `soversion` is used
instead (see above).
soversion:
type: str
description: |
A string specifying the soversion of this shared library,
such as `0`. On Linux and Windows this is used to set the
soversion (or equivalent) in the filename. For example, if
`soversion` is `4`, a Windows DLL will be called `foo-4.dll` and one
of the aliases of the Linux shared library would be
`libfoo.so.4`. If this is not specified, the first part of `version`
is used instead (see below). For example, if `version` is `3.6.0` and
`soversion` is not defined, it is set to `3`.
darwin_versions:
type: str | int | list[str]
since: 0.48.0
description: |
Defines the `compatibility version` and `current version` for the dylib on macOS.
If a list is specified, it must be
either zero, one, or two elements. If only one element is specified
or if it's not a list, the specified value will be used for setting
both compatibility version and current version. If unspecified, the
`soversion` will be used as per the aforementioned rules.
vs_module_defs:
type: str | file | custom_tgt | custom_idx
description: |
Specify a Microsoft module definition file for controlling symbol exports,
etc., on platforms where that is possible (e.g. Windows).