aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/mesonlib
AgeCommit message (Collapse)AuthorFilesLines
2021-05-19.C files are now treated as C++ codeVolker-Weissmann1-4/+6
2021-05-03Clarify incorrect configuration format messageNellie Zhang1-3/+3
Print the path and line where the problem occurred to make it more clear what the error message means.
2021-03-26windows_proof_rmtree: Also retry os.chmod() partXavier Claessens1-2/+9
It looks like when Windows media scanner holds files we can't change their permission neither.
2021-03-16Update VS module version check.Jussi Pakkanen1-0/+6
2021-03-04mass rewrite of string formatting to use f-strings everywhereEli Schwartz1-21/+21
performed by running "pyupgrade --py36-plus" and committing the results
2021-03-03Windows Subsystem for Linux can run .exe without mono interpreterXavier Claessens1-0/+3
Fixes: #8445
2021-02-18allow build.b_* optionsDylan Baker1-2/+1
These continue to be ignored as they always have, but no longer raise an error. Fixes: #8354
2021-02-17Environment: Fix passing envrionment variables CPPFLAGS and CFLAGSDylan Baker1-1/+0
Or other language flags that use CPPFLAGS (like CXXFLAGS). The problem here is actually rather simple, `dict.setdefault()` doesn't work like I thought it did, I thought it created a weak entry, but it actually is equivalent to: ```python if k not in dict: dict[k] = v ``` Instead we'll use an intermediate dictionary (a default dictionary actually, since that makes things a little cleaner) and then add the keys from that dict to self.options as applicable. Test case written by Jussi, Fix by Dylan Co-authored-by: Jussi Pakkanen Fixes: #8361 Fixes: #8345
2021-02-06mesonlib: Add better errormessage to typelistifyDylan Baker1-2/+2
2021-01-29Popen_safe: Fix stdout/stderr annotationXavier Claessens1-4/+4
2021-01-26Warn about .C and .H files (#8249)Volker-Weissmann1-0/+7
2021-01-23split mesonlib into a packageDylan Baker5-0/+2236
Currently mesonlib does some import tricks to figure out whether it needs to use windows or posix specific functions. This is a little hacky, but works fine. However, the way the typing stubs are implemented for the msvcrt and fnctl modules will cause mypy to fail on the other platform, since the functions are not implemented. To aleviate this (and for slightly cleaner design), I've split mesonlib into a pacakge with three modules. A universal module contains all of the platform agnositc code, a win32 module contains window specific code, a posix module contains the posix specific code, and a platform module contains no-op implementations. Then the package's __init__ file imports all of the universal functions and all of the functions from the approriate platform module, or the no-op versions as fallbacks. This makes mypy happy, and avoids `if`ing all over the code to switch between the platform specific code.