summaryrefslogtreecommitdiff
path: root/docs/yaml
diff options
context:
space:
mode:
authorDylan Baker <dylan@pnwbakers.com>2022-12-14 10:59:36 -0800
committerJussi Pakkanen <jpakkane@gmail.com>2023-03-28 15:01:10 +0300
commit4a014d17240f50059e20ccae3e9faaa395bdbf98 (patch)
tree4b2ae56e23db1cee4d04d602bfb1e154259cba36 /docs/yaml
parent65482497d326b0026eb11419d178d19b20ebe58b (diff)
downloadmeson-4a014d17240f50059e20ccae3e9faaa395bdbf98.tar.gz
Add support for meson.options as a replacement for meson_options.txt
We will still try to load `meson_options.txt` if `meson.options` doesn't exist. Because there are some advantages to using `meson.options` even with older versions of meson (such as better text editor handling) we will not warn about the existence of a `meson.options` file if a `meson_options.txt` file or symlink also exists. The name `meson.options` was picked instead of alternative proposals, such as `meson_options.build` for a couple of reasons: 1. meson.options is shorter 2. While the syntax is the same, only the `option()` function may be called in meson.options, while, it may not be called in meson.build 3. While the two files share a syntax and elementary types (strings, arrays, etc), they have different purposes: `meson.build` declares build targets, `meson.options` declares options. This is similar to the difference between C's `.c` and `.h` extensions. As an implementation detail `Interpreter.option_file` has been removed, as it is used exactly once, in the `project()` call to read the options, and we can just calculate it there and not store it. Fixes: #11176
Diffstat (limited to 'docs/yaml')
-rw-r--r--docs/yaml/functions/dependency.yaml2
-rw-r--r--docs/yaml/functions/subproject.yaml4
2 files changed, 3 insertions, 3 deletions
diff --git a/docs/yaml/functions/dependency.yaml b/docs/yaml/functions/dependency.yaml
index 2d9e36656..85255b9f1 100644
--- a/docs/yaml/functions/dependency.yaml
+++ b/docs/yaml/functions/dependency.yaml
@@ -82,7 +82,7 @@ kwargs:
since: 0.38.0
description: |
An array of default option values
- that override those set in the subproject's `meson_options.txt`
+ that override those set in the subproject's `meson.options`
(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)
diff --git a/docs/yaml/functions/subproject.yaml b/docs/yaml/functions/subproject.yaml
index 4d19a3178..14a778dd8 100644
--- a/docs/yaml/functions/subproject.yaml
+++ b/docs/yaml/functions/subproject.yaml
@@ -9,7 +9,7 @@ description: |
`${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`
+ that override those set in the subproject's `meson.options`
(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`
@@ -45,7 +45,7 @@ kwargs:
since: 0.37.0
description: |
An array of default option values
- that override those set in the subproject's `meson_options.txt`
+ that override those set in the subproject's `meson.options`
(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`