aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/markdown/Builtin-options.md2
-rw-r--r--docs/markdown/Subprojects.md7
-rw-r--r--docs/markdown/Using-wraptool.md21
-rw-r--r--docs/markdown/snippets/subsubproject.md13
4 files changed, 21 insertions, 22 deletions
diff --git a/docs/markdown/Builtin-options.md b/docs/markdown/Builtin-options.md
index febcc8a..afc1cde 100644
--- a/docs/markdown/Builtin-options.md
+++ b/docs/markdown/Builtin-options.md
@@ -79,7 +79,7 @@ for details.
| unity_size {>=2} | 4 | Unity file block size | no | no |
| warning_level {0, 1, 2, 3} | 1 | Set the warning level. From 0 = none to 3 = highest | no | yes |
| werror | false | Treat warnings as errors | no | yes |
-| wrap_mode {default, nofallback,<br>nodownload, forcefallback} | default | Wrap mode to use | no | no |
+| wrap_mode {default, nofallback,<br>nodownload, forcefallback, nopromote} | default | Wrap mode to use | no | no |
| force_fallback_for | [] | Force fallback for those dependencies | no | no |
<a name="build-type-options"></a>
diff --git a/docs/markdown/Subprojects.md b/docs/markdown/Subprojects.md
index 7e17afa..e8adc96 100644
--- a/docs/markdown/Subprojects.md
+++ b/docs/markdown/Subprojects.md
@@ -258,6 +258,13 @@ the following command-line options:
`glib-2.0` must also be forced to fallback, in this case with
`--force-fallback-for=glib,gsteamer`.
+* **--wrap-mode=nopromote**
+
+ *Since 0.56.0* Meson will automatically use wrap files found in subprojects
+ and copy them into the main project. That new behavior can be disabled by
+ passing `--wrap-mode=nopromote`. In that case only wraps found in the main
+ project will be used.
+
## `meson subprojects` command
*Since 0.49.0*
diff --git a/docs/markdown/Using-wraptool.md b/docs/markdown/Using-wraptool.md
index f6023e8..ffa8309 100644
--- a/docs/markdown/Using-wraptool.md
+++ b/docs/markdown/Using-wraptool.md
@@ -76,24 +76,3 @@ straightforward:
Wraptool can do other things besides these. Documentation for these
can be found in the command line help, which can be accessed by
`meson wrap --help`.
-
-## Promoting dependencies
-
-Meson will only search for subprojects from the top level
-`subprojects` directory. If you have subprojects that themselves have
-subprojects, you must transfer them to the top level. This can be done
-by going to your source root and issuing a promotion command.
-
- meson wrap promote projname
-
-This will cause Meson to go through your entire project tree, find an
-embedded subproject and copy it to the top level.
-
-If there are multiple embedded copies of a subproject, Meson will not
-try to guess which one you want. Instead it will print all the
-possibilities. You can then manually select which one to promote by
-writing it out fully.
-
- meson wrap promote subprojects/s1/subprojects/projname
-
-This functionality was added in Meson release 0.45.0.
diff --git a/docs/markdown/snippets/subsubproject.md b/docs/markdown/snippets/subsubproject.md
new file mode 100644
index 0000000..77f4a0d
--- /dev/null
+++ b/docs/markdown/snippets/subsubproject.md
@@ -0,0 +1,13 @@
+## Wraps from subprojects are automatically promoted
+
+It is not required to promote wrap files for subprojects into the main project
+any more. When configuring a subproject, meson will look for any wrap file or
+directory in the subproject's `subprojects/` directory and add them into the
+global list of available subprojects, to be used by any future `subproject()`
+call or `dependency()` fallback. If a subproject with the same name already exists,
+the new wrap file or directory is ignored. That means that the main project can
+always override any subproject's wrap files by providing their own, it also means
+the ordering in which subprojects are configured matters, if 2 subprojects provide
+foo.wrap only the one from the first subproject to be configured will be used.
+
+This new behavior can be disabled by passing `--wrap-mode=nopromote`.