aboutsummaryrefslogtreecommitdiff
path: root/docs/markdown/Wrap-dependency-system-manual.md
AgeCommit message (Collapse)AuthorFilesLines
2021-04-26Interpreter: Fallback when required is false but forcefallback is trueXavier Claessens1-0/+3
2021-01-31Capitalize "Meson" consistently as it is a proper name. [skip ci]Jussi Pakkanen1-1/+1
2021-01-30Rewrap long text lines in docs. [skip ci]Jussi Pakkanen1-47/+67
2021-01-13Fix misspellsAntonin DĂ©cimo1-1/+1
Signed-off-by: Antonin DĂ©cimo <antonin.decimo@gmail.com>
2020-10-08dependency: support boolean argument "allow_fallback"Paolo Bonzini1-4/+6
Sometimes, distros want to configure a project so that it does not use any bundled library. In this case, meson.build might want to do something like this, where slirp is a combo option with values auto/system/internal: slirp = dependency('', required: false) if get_option('slirp') != 'internal' slirp = dependency('slirp', required: get_option('slirp') == 'system') endif if not slirp.found() slirp = subproject('libslirp', ...) .variable('...') endif and we cannot use "fallback" because the "system" value should never look for a subproject. This worked until 0.54.x, but in 0.55.x this breaks because of the automatic subproject search. Note that the desired effect here is backwards compared to the policy of doing an automatic search on "required: true"; we only want to do the search if "required" is false! It would be possible to look for the dependency with `required: false` and issue the error manually, but it's ugly and it may produce an error message that looks "different" from Meson's. Instead, with this change it is possible to achieve this effect in an even simpler way: slirp = dependency('slirp', required: get_option('slirp') != 'auto', allow_fallback: get_option('slirp') == 'system' ? false : ['slirp', 'libslirp_dep']) The patch also adds support for "allow_fallback: true", which is simple and enables automatic fallback to a wrap even for non-required dependencies.
2020-07-09doc: Small tweaks to fallback documentation [skip ci]Xavier Claessens1-2/+4
2020-07-05doc: Improve documentation of [provide] section in wrap filesXavier Claessens1-19/+48
Explicitly document the behaviour of dependency('foo-1.0', required: false).
2020-07-01wrap: Update doc to give dependency_names example firstXavier Claessens1-8/+8
2020-07-01Fix typo: coma->commaXavier Claessens1-1/+1
2020-07-01find_program: Fallback if a wrap file provide the program nameXavier Claessens1-0/+13
We don't need the legacy variable name system as for dependency() fallbacks because meson.override_find_program() is largely used already, so we can just rely on it.
2020-07-01wrap: Add special 'dependency_names' key in [provide] sectionXavier Claessens1-4/+18
The value for that key must be a coma separated list of dependecy names provided by that subproject, when no variable name is needed because the subproject uses override_dependency().
2020-07-01wrap: Add 'provide' sectionXavier Claessens1-1/+31
2020-06-30wrap: Apply patch even in VCS casesXavier Claessens1-5/+7
2020-06-21wrap: Add patch_directory supportXavier Claessens1-0/+3
Copy a tree instead of extracting an archive. Closes: #7216
2020-04-25wrap: Updated docsDaniel Mensinger1-6/+12
2020-04-13wrap: Add fallback urlsXavier Claessens1-0/+2
It can happen that a server is temporaly down, tarballs often have many mirrors available so we should be able to add at least one fallback mirror in wrap files.
2020-01-08mention lack of up-to-date dependencies explicitly [skip ci]Vadim Zhukov1-1/+3
Requested by scivision@
2020-01-08[skip ci] Use more up-to-date wording for package managersVadim Zhukov1-4/+2
Most of the OSes Meson supports actually do have package managers, and at least some of them are not harder to use than Linux ones.
2019-11-08docs: major revamp of the Wrap format description [skip ci]Eli Schwartz1-91/+65
The current state of this manual can best be described as... confusing. The flow of the page jumps from one topic to the next without ever actually telling you what you can do, so it's almost impossible to keep track of what is supported, while instead going into involved derails about why you'd want to use a wrap, and scattering some (but not all) information throughout the promo material. The most important changes this rewrite does (aside from turning supported keys into a list of bullet points) is adding documentation for the lead_directory_missing property, and mentioning that wrap-hg and wrap-svn exist. I had to find out all of this by reading the source code implementation, so let's try to save other people the effort. Other miscellania: as per @jpakkane's comment, take the opportunity to point out that wrap dependencies are also useful on Linux, in cases where your distro doesn't have a new enough version of "$dependency". It's a fairly common problem outside of select rolling-release distros, so well worth mentioning.
2019-09-29Add support for `depth` option in wrap-gitChristoph Weiss1-0/+8
This allows cloning subprojects shallowly. It works recursively for a subproject's submodules in case `clone-recursive` is set to `true`.
2018-10-21doc: Improve wrap and subproject documentation [skip ci]Kostiantyn Ponomarenko1-84/+36
Make docs more user friendly, and add missing information. Signed-off-by: Kostiantyn Ponomarenko <konstantin.ponomarenko@gmail.com>
2018-10-17wrap: Allow source and patch to be local filesXavier Claessens1-0/+10
It is sometimes important to be able to build projects offline, in that case subproject tarballs and patches could be shipped directly within the project's repository.
2018-09-30Docs: fix 'Wrap-dependency-system-manual' to be more consistent [skip ci]Kostiantyn Ponomarenko1-11/+11
2018-09-16Add 'clone-recursive' option for git wrapsAndrei Alexeyev1-0/+7
This causes Meson to clone the repo with the --recursive flag, pulling all of the submodules automatically.
2018-04-25Wrap-git files can have tags as well as commit ids. [skip ci]Jussi Pakkanen1-3/+3
2017-11-06Small changes for syntax hightlightDavid PĂ©rez-SuĂĄrez1-2/+2
2017-08-21Rewrapped lines of a few more files.Jussi Pakkanen1-23/+90
2017-05-05Fix missing backticksSven Steinbauer1-0/+1
2017-05-03doc: Use https links wherever possible.Elliott Sales de Andrade1-2/+2
2017-05-03doc: Capitalize things more consistently.Elliott Sales de Andrade1-2/+2
Upper or lower case depending on the official spelling, or the more consistent usage.
2017-04-26docs: Import the website and wiki and build with hotdocThibault Saunier1-0/+121
This allows us to more easily have the documentation in sync with the source code as people will have to document new features etc right at the time where they implement it.