aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/interpreter/dependencyfallbacks.py
AgeCommit message (Collapse)AuthorFilesLines
2022-03-29move a bunch of imports into TYPE_CHECKING blocksEli Schwartz1-3/+5
These are only used for type checking, so don't bother importing them at runtime. Generally add future annotations at the same time, to make sure that existing uses of these imports don't need to be quoted.
2022-03-03interpreter: use typed_kwargs for subproject()Dylan Baker1-1/+4
2022-03-03interpreter/dependencyfallbacks: fix a number of low hanging type issuesDylan Baker1-8/+10
2022-03-03modules/cmake: add type annotations for subproject methodDylan Baker1-15/+15
This will be used to handle the interpreter subproject as well
2021-10-26dep.name(): return dependency name even if dependency is not foundThomas Heijligen1-1/+1
The dep.name() function schould always return the name of the dependency as documented. No matter if it was found or not. https://mesonbuild.com/Reference-manual_returned_dep.html#depfound
2021-09-20dependency: If cached version is outdated, look on system againXavier Claessens1-0/+4
Fixes: #9271
2021-09-20dependencyfallbacks: Use default_options for implicit fallbacksXavier Claessens1-12/+8
This removes the warning when using default_options without fallback kwarg completely because a subproject does not know if the main project has an implicit fallback or not, so it could set default_options even if not fallback is available at all. Fixes: #9278
2021-09-01dependency: fallback and allow_fallback are mutually exclusiveXavier Claessens1-0/+2
That used to abort in previous Meson versions but 0.59 stopped forbidding that by mistake.
2021-08-23interpreter: Fix dependency(..., static: true) fallbackXavier Claessens1-0/+11
It should build the fallback subprject with default_library=static and override the dependency for both static=True and static kwarg not given. Fixes: #8050.
2021-08-07Fix --force-fallack-for with --wrap-mode=nofallbackXavier Claessens1-4/+4
Fixes: #9065
2021-07-21Fix meson.version().version_compare() regression in subprojectXavier Claessens1-1/+1
2021-06-18holders: remove unholderDaniel Mensinger1-25/+28
2021-06-18dependency: Empty fallback is the same as allow_fallback: falseXavier Claessens1-0/+4
2021-06-16interpreter: Extract dependency() logic into its own helper classXavier Claessens1-0/+346
The dependency lookup is a lot of complex code. This refactor it all into a single file/class outside of interpreter main class. This new design allows adding more fallbacks candidates in the future (e.g. using cc.find_library()) but does not yet add any extra API.