aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild
AgeCommit message (Collapse)AuthorFilesLines
2021-10-31Add 64-bit paths to check for unsupported Watcom cl.exe clones.William D. Jones1-1/+4
2021-11-01migrate python 3.5 compatible superclass variable annotations to 3.6Eli Schwartz2-8/+4
As we now require python 3.6, we can declare their types without initializing them.
2021-11-01Revert "known Python 3.5 on windows workaround for subprocess(cwd=str(Path))"Eli Schwartz1-2/+1
This reverts commit c89aa2094170b2ffd7151187c1c092db2a178f44. We no longer support 3.5 so this can go.
2021-10-30delete PLATFORM env only if setavitex1-2/+3
fixes #8721
2021-10-30Added warning if run_command is called without the check kwargVolker Weißmann1-1/+9
2021-10-30Typo fixes (CustomTaget -> CustomTarget)rusty-snake1-1/+1
2021-10-30Typo fixes (CustomTaget -> CustomTarget)rusty-snake1-1/+1
2021-10-29Fix version requirement on Ninja feature.Jussi Pakkanen1-1/+1
2021-10-29Make environment objects hash deterministically.Jussi Pakkanen2-3/+16
2021-10-29Merge pull request #9375 from dcbaker/submit/windows-module-typingJussi Pakkanen3-55/+87
Typing for the Windows module
2021-10-29Remove duplicated CEXE_MAPPING tableXavier Claessens2-8/+4
2021-10-29Fix "meson compile" not activating vsenvXavier Claessens1-2/+3
setup_vsenv() was not propagating the return value, so build.need_vsenv was always False.
2021-10-28configure_file: upgrade deprecation message to FeatureDeprecatedEli Schwartz1-2/+2
install: false was only available since 0.50, so we should not warn people who support older versions to use something they cannot. Fortunately, we can do FeatureDeprecated for this -- and then it even gets summarized. Unfortunately, it's not well used, and certainly isn't here.
2021-10-28modules/gnome: use `install_dir = []` instead of falseDylan Baker1-1/+1
2021-10-28modules/gnome: fix missing install_dir, again, harderDylan Baker1-8/+10
It turns out this could be missing in GResource*Target as well, due mostly to the same problem, side effects of mutating a shared dictionary; though it could also happen with a specific set of keywords given and other omitted. Fixes #9350
2021-10-28mtest: accept very long linesPaolo Bonzini1-1/+8
Unless parsing TAP output, there is no strict requirement for "meson test" to process test output one line at a time; it simply looks nicer to not print a partial line if it can be avoided. However, in the case of extremely long lines StreamReader.readline can fail with a ValueError. Use readuntil('\n') instead and just process whatever pieces of the line it returns. Fixes: #8591 Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2021-10-27modules/gnome: ensure that `install_dir` is setDylan Baker1-8/+14
The `mkenums` functions can have this unset if, and only if, the c file only variant is called. Due to side effects if the header file is generated then `install_dir` is ensured to be set for the c file. I have removed this side effect so that our tests actually cover this case. Fixes #9472
2021-10-27Fix add_install_script() ignoring install_tagXavier Claessens1-0/+1
Fixes: #9454
2021-10-27Changing xc16's linker from 'xc16-gcc.exe' to 'xc16-gcc'. Windows willgeorgev931-2/+2
still find the correct linker and now linux will be able to use its xc16-gcc as the linker.
2021-10-27Fix crash when getting cuda optionsXavier Claessens1-14/+5
We could have an OptionOverrideProxy of an OptionOverrideProxy, recursively. This fix is a minimal subset of the refactoring I did in https://github.com/mesonbuild/meson/pull/9394. Instead of faking UserOption we can just do a shallow copy of one and set a new value on it. Fixes: #9448
2021-10-27wrap: fix support for git < 2.28Eli Schwartz1-1/+1
both of these do the same thing: init -b <branchname> -c init.defaultBranch=<branchname> init The latter contributes to unreadably long lines of code, but has the advantage of working on older versions of git. Fixes #9449
2021-10-27remove public export of private functionEli Schwartz1-1/+0
2021-10-27do not repeat magic regexes for cmake define replacementsEli Schwartz1-2/+2
We already have this magic string in mesonlib, and this should always have used the cmake@ format which is identical to the meson format other than the regex.
2021-10-27Revert "mark a couple of typing-only imports as noqa, to appease pyflakes"Eli Schwartz2-6/+2
This reverts commit 6cc1b8441c0cf7428e52bdf1cd541ea830a4eb83. The latest version of pyflakes learned to detect that correctly.
2021-10-27fix various flake8 whitespace errorsEli Schwartz38-83/+81
2021-10-26fix lgtm.com "Use of the return value of a procedure"Eli Schwartz1-2/+3
we return _log even though this entire family of functions returns None, because a side effect of returning is that the other version of the function is not run. We can do that more obviously, using an else clause that doesn't attach meaning to return values.
2021-10-26interpreter: Revert old path joining behavior (fixes #9450)Daniel Mensinger1-1/+2
2021-10-26message: Allow boolXavier Claessens1-2/+2
It has always been working even if not documented and there is no reason to not accept it. However, change "True/False" to "true/false" to be consistent with meson language. Fixes: #9436
2021-10-26dep.name(): return dependency name even if dependency is not foundThomas Heijligen4-6/+5
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-10-25Add sccache support.Jussi Pakkanen2-2/+26
2021-10-25mcompile: Load coredata first because it checks major versionXavier Claessens1-9/+3
Fixes: #9444
2021-10-24Bump version number for new development.Jussi Pakkanen1-1/+1
2021-10-24Bump version number for release.0.60.0Jussi Pakkanen1-1/+2
2021-10-24Add stdc++20 support for Visual Studio 2019 v16.11Moroz Oleg1-0/+4
fix #9242
2021-10-24interpreter: Fix missing featuer check (fixes #9425)Daniel Mensinger2-0/+10
2021-10-24cmake: Add support for the Linux CMake registry (fixes #9418)Daniel Mensinger1-0/+6
2021-10-21compilers/rust: fix typo in standard descriptionDylan Baker1-1/+1
2021-10-21compilers/rust: add support for the 2021 editionDylan Baker1-1/+1
2021-10-21Add entries for new CUDA Toolkit versions.Olexa Bilaniuk1-0/+2
2021-10-20Add support for win-arm64 to MSVCGabor Kertesz1-1/+5
For Windows on Arm win-arm64 platform, the corresponding vcvars is called now.
2021-10-19Update version number for rc2.0.60.0rc2Jussi Pakkanen1-1/+1
2021-10-19Fix NamedTemporaryFile file reopen issue on Win #9412Gabor Kertesz1-2/+4
NamedTemporaryFile can't be opened by name on Windows. For Windows the created temporary bat file is now closed before passing to a subprocess, prevented from removal automatically upon close and deleted explicitly upon finish.
2021-10-18linkers: detect LLD when built with PACKAGE_VENDORPaolo Bonzini1-3/+3
https://github.com/Homebrew/homebrew-core/commit/e7c972b6062af753e564104e58d1fa20c0d1ad7a added PACKAGE_VENDOR to lld, causing the -v output to start with "Homebrew LLD" rather than just "LLD". Meson no longer detects it and fails the test_ld_environment_variable_lld unit test. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2021-10-18mtest: limit "magic" CTRL+C behavior to process group leadersPaolo Bonzini1-1/+4
If meson is not a process group leader, a SIGINT will be delivered also to its parent process (and possibly other processes). The parent process then will probably exit and mtest will continue running in the background, without any way to interrupt the run completely. To fix this, treat SIGINT and SIGTERM the same way unless mtest is a process group leader. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2021-10-16Add missing but expected as exception clauseMatthew Brett1-1/+1
The `except` line was missing its `as e` clause. As a result, when erroring out, after not finding a compiler, Meson gives an error ending: ``` File "C:\Users\Matthew\AppData\Roaming\Python\Python39\site-packages\mesonbuild\mesonlib\vsenv.py", line 100, in setup_vsenv mlog.warning('Failed to activate VS environment:', str(e)) ```
2021-10-15wrap: move FeatureNew checks to a more natural placeEli Schwartz2-14/+18
Now, warnings are unconditionally raised when parsing the wrap file, whether they are used or not. That being said, these warnings literally just check for a couple of keys used in the .wrap ini file. Moving these checks from the time of use to the time of loading, means that we no longer report warnings only when originally downloading or extracting the file or VCS repo. It also means we no longer report warnings in one subproject, when a wrap file is picked up from a different subproject because the first subproject actually does a dependency lookup. This caused issues for the WrapDB tooling, which uses patch_directory everywhere and the superproject requires a suitable minimum version of meson for this... but individual wraps might use a much lower version, and would then raise a warning (in strict mode, converted to an error) when it resolved a dependency from another WrapDB project. Fixes #9118
2021-10-14cuda: Override std=none to avoid host_compiler to emit -std argumentXavier Claessens1-6/+3
2021-10-14optinterpreter: Fix builtin option names not being reserved anymoreXavier Claessens1-18/+2
2021-10-14introspect: include choices for array optionsPaolo Bonzini1-0/+2
There was even a test covering this, but it did not fail due to a typo.
2021-10-13optinterpreter: Downgrade error to deprecationXavier Claessens1-1/+1