aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2021-03-26Added some wrap review docs. [skip ci]wrapdocsJussi Pakkanen2-1/+39
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-25docs: correct log upload paths.Diego Elio Pettenò1-3/+3
SInce the build directory is `builddir/` it should be `builddir/meson-logs/testlog.txt` to be uploaded.
2021-03-24Merge pull request #8568 from dcbaker/submit/qt-dependency-factoryJussi Pakkanen11-459/+564
QT: use a proper dependency factory
2021-03-24Use find_program also in add_*_script for consistency.Jussi Pakkanen1-18/+2
2021-03-24Use find_program also in custom_target for consistency.Jussi Pakkanen1-0/+3
2021-03-24Merge pull request #8571 from xclaesse/spurious-warningJussi Pakkanen5-36/+88
Fix spurious sandbox violation warning
2021-03-24depfixer: temporarily modify file permissionsHemmo Nieminen1-8/+33
If the installed files don't have suitable file permissions depfixer will fail to process it. Temporarily lax file permissions to work around this.
2021-03-24compilers: clang-cl: Also accept .s files (#8520)D Scott Phillips6-5/+32
* compilers: clang-cl: Also accept .s files clang-cl has support for gas-compatible assembly files. * Add clang-cl to '128 generated assembly' test
2021-03-23run_project_tests: add annotationsDylan Baker1-1/+1
2021-03-23run_single_test: Handle MESON_SKIP_TEST correctlyDylan Baker1-3/+3
2021-03-23deprecated QMAKE dependency typeDylan Baker1-1/+4
Instead of using qmake, use config-tool. This is no different than when we deprecated the other per-dependency config-tool types (sdl2-config, llvm-config, etc) for just config-tool
2021-03-23Refactor Qt Dependency into proper split classes with factoriesDylan Baker7-161/+202
Currently the Qt Dependencies still use the old "combined" method for dependencies with multiple ways to be found. This is problematic as it means that `get_variable()` and friends don't work, as the dependency can't implement any of those methods. The correct solution is to make use of multiple Dependency instances, and a factory to tie them together. This does that. To handle QMake, I've leveraged the existing config-tool mechanism, which allows us to save a good deal of code, and use well tested code instead of rolling more of our own code. The one thing this doesn't do, but we probably should, is expose the macOS ExtraFrameworks directly, instead of forcing them to be found through QMake. That is a problem for another series, and someone who cares more about macOS than I do.
2021-03-23run_project_tests.py: Allow qt tests to skip on !macOSDylan Baker1-8/+11
We don't always have qmake installed (and it's good to test failure paths too!) so we can't expect this to succeed in all cases. With the following commit we'll use a test.json to test both pkg-config and qmake, so we need to be able to skip.
2021-03-23interpreter: Fix spurious warning in include_directories()Xavier Claessens4-3/+11
When doing include_directories('.') at the root of the subproject we should not warn about sandboxing violation.
2021-03-23test.json: Add support for not matching stdout linesXavier Claessens1-20/+53
By default expected line must be matched in order. When an expected line is matched it does not matter if it's matched again later or not. When defining "count", it means that line must be matched exactly that many times before matching the next expected line. Once all occurences have been matched for an expected line, it not must appear any more in all next lines.
2021-03-23run_project_tests.py: Allow "--only common/240" syntaxXavier Claessens1-13/+24
2021-03-23devenv: Set GI_TYPELIB_PATH and LD_LIBRARY_PATH (#8548)Xavier Claessens4-9/+46
2021-03-23environment(): Allow stacking append() and prepend() (#8547)Xavier Claessens9-43/+48
* environment(): Allow stacking append() and prepend() * Update docs/markdown/Reference-manual.md Co-authored-by: Elliott Sales de Andrade <quantum.analyst@gmail.com> Co-authored-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
2021-03-23Merge pull request #7491 from xclaesse/callstackJussi Pakkanen3-19/+27
RFC: logs: Prepend current subproject name to all messages
2021-03-23Remove -pipe from default list of args. Closes #8508.Jussi Pakkanen4-10/+11
2021-03-22mlog: Do not print 'subproject|' for the message 'Executing subproject'Xavier Claessens2-10/+9
It already contains the full callstack and it's more visible when it's standing on its own line.
2021-03-22interpreter: Do not print "method meson"Xavier Claessens1-1/+5
2021-03-22mlog: Do not print 'subproject|' on empty linesXavier Claessens1-1/+5
2021-03-22mlog: Add a space after 'subproject|'Xavier Claessens2-4/+4
2021-03-22logs: Prepend current subproject name to all messagesXavier Claessens2-12/+13
Meson used to prepend '|' for each nested subproject to distinguish in the logs where a subproject start and ends. It is more useful to print the current subproject name. Also print the call stack when starting a new subproject to better see which subproject chain leads to to.
2021-03-22qt: move compilers_detect to the qt moduleDylan Baker2-55/+60
It's a method on the QtDependeny that exists purely for the consumption of the qt module (in the form, return some stuff the module makes into an instance variable). So put it where it actually belongs, and pass the qt dependency into it.
2021-03-22dependencies/qt: Split _get_modules_lib_suffix out of the classDylan Baker1-29/+32
As we break these classes up we're going to need this.
2021-03-22dependencies/base: Use FeatureDeprecated instead of mlog.warningDylan Baker1-4/+2
This code is really old, and it might be fine to delete this altogether, but for now lets do this.
2021-03-22dependencies/qt: split get_qmake_host_bins into a free functionDylan Baker1-10/+11
It's static anyway, and never overwritten.
2021-03-22dependencies/base: Use Compiler instead of CompilerTypeDylan Baker1-2/+2
Since Compiler is actually useful now as a base class, unlike when this code was written.
2021-03-22dependencies/qt: Add type annotationsDylan Baker2-50/+72
And fix some style and correctness issues
2021-03-23mtest: timeout if the write side of pipes does not closePaolo Bonzini1-11/+39
If a test program forks a child, the pipes might remain open and "await stdo_task"/"await stde_task" will never complete in SingleTestRunner._run_cmd(). Instead, catch them in TestSubprocess.wait() so that the whole process group is killed. Fixes: #8533 Reported-by: Bastien Nocera <hadess@hadess.net>
2021-03-23mtest: remove pointless try/except from try_wait_onePaolo Bonzini1-5/+3
asyncio.wait does not return an asyncio.TimeoutError, so there is no exception to catch.
2021-03-22cmd_line_file.txt: Use cross/native file path resolved by coredataXavier Claessens2-2/+6
This fix issue when using --wipe and the machine file was passed as a pipe and written locally, or when the file was resolved in XDG_DATA_HOME or XDG_DATA_DIRS. Fixes: #8560
2021-03-22dependencies: split qt out of the ui moduleDylan Baker3-422/+451
It's a big enough and complicated enough bit of code that it deserves its own module.
2021-03-21Docs: Fix small typoHRXN1-1/+1
2021-03-19Move OverrideProgram to programsDylan Baker3-7/+8
2021-03-19programs: add type annotationsDylan Baker2-21/+28
2021-03-19split program related classes and functions out of dependenciesDylan Baker30-393/+433
Dependencies is already a large and complicated package without adding programs to the list. This also allows us to untangle a bit of spaghetti that we have.
2021-03-18add test case for installed targets uninstalling a single directoryEli Schwartz4-3/+20
2021-03-18minstall: always track meson-created directoriesEli Schwartz1-5/+1
If a custom_target output is a directory, we install it as a directory, not as a file. And, we try to track subdirectories which are created so uninstalling works. But one directory creation did not go through DirMaker, in the case where the output directory does not have any further subdirectories. Consolidate on makedirs, since I don't see much point in using os.mkdir right here.
2021-03-18Allow add_dist_script() in subprojectsXavier Claessens10-12/+73
Fixes: #8440.
2021-03-18interpreter: Add varname as positional arg in dep.get_variable()Xavier Claessens4-4/+23
2021-03-17Fix D lib search path translationRemi Thebault1-15/+49
This requires quite a complex and messy logic. As @dcbaker suggested in #8491, this could be replaced by an abstraction over linker flags instead of having GNU flags translated.
2021-03-17Warn when grabbing internals of subprojects with include_directories.Jussi Pakkanen5-2/+48
2021-03-17One more unixy fix.Jussi Pakkanen2-1/+5
2021-03-16clangformat: Add clang-format-check targetXavier Claessens5-12/+40
2021-03-16clangformat: Add include and ignore filesXavier Claessens12-11/+174
2021-03-16Add range() functionXavier Claessens7-3/+119
Fixes: #5026.