summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/markdown/snippets/shared_static_only_args.md9
-rw-r--r--docs/yaml/functions/library.yaml34
2 files changed, 43 insertions, 0 deletions
diff --git a/docs/markdown/snippets/shared_static_only_args.md b/docs/markdown/snippets/shared_static_only_args.md
new file mode 100644
index 000000000..0963c714b
--- /dev/null
+++ b/docs/markdown/snippets/shared_static_only_args.md
@@ -0,0 +1,9 @@
+## `<lang>_(shared|static)_args` for both_library, library, and build_target
+
+We now allow passing arguments like `c_static_args` and `c_shared_args`. This
+allows a [[both_libraries]] to have arguments specific to either the shared or
+static library, as well as common arguments to both.
+
+There is a drawback to this, since Meson now cannot re-use object files between
+the static and shared targets. This could lead to much higher compilation time
+when using a [[both_libraries]] if there are many sources.
diff --git a/docs/yaml/functions/library.yaml b/docs/yaml/functions/library.yaml
index f9e336b9b..1d406f13c 100644
--- a/docs/yaml/functions/library.yaml
+++ b/docs/yaml/functions/library.yaml
@@ -16,6 +16,12 @@ description: |
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:
@@ -32,3 +38,31 @@ kwargs:
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