aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2021-08-10Bump versions to 0.59.1 for release0.59Nirbheek Chauhan2-2/+2
2021-08-10build: store global and project args per-machine even when not cross compilingDylan Baker1-8/+4
The problem is what happens in this case: ```meson add_project_arguments('-DHOST', language : 'c', native : false) add_project_arguments('-DBUILD', langauge : 'c', native : true) ``` The original meson behavior was that in an host == build configuration only the `native : false` would be applied. This doesn't really make sense as in that case the build machine is the host machine, so it is both the native and non-native machine at once. We changed this so that the both would be applied in a host == build configuration, but this is a behavioral change, and needs to be reverted. Fixes: #9037
2021-08-10build: add a few annotationsDylan Baker1-4/+4
I was debugging this code, these were trivial, so I added them.
2021-08-10Fix i18n target name when using @BASENAME@ and configure_file() inputXavier Claessens5-13/+55
Fixes: #9022
2021-08-10interpreter: Fix missing subsubproject summary when subproject failsXavier Claessens4-4/+14
In the case main->subp->subsubp, if subsubp succeed to configure but subp subsequentially fails, subsubp is still being built but its summary was missing.
2021-08-10interpreter: Fix holder_map not being updated when subproject failsXavier Claessens3-12/+17
Fixes: #9038
2021-08-10modules: Fix typo in state.test()Xavier Claessens1-1/+1
Fixes: #9081
2021-08-10pkg-config: support for `-l:libfoo.a`lilinzhe7-0/+134
fixs: #9000 Meson not correctly process with -l:xxx.a link arguments in pkgconfig .pc file. see also:https://stackoverflow.com/questions/48532868/gcc-library-option-with-a-colon-llibevent-a with unit test, unit test will be partially skiped if pkg-config version < 0.28 . see: https://gitlab.freedesktop.org/pkg-config/pkg-config/-/blob/master/NEWS
2021-08-10interpreter: Fix list contains for Holders (fixes #9020 #9047)Daniel Mensinger5-2/+26
2021-08-10Fix --force-fallack-for with --wrap-mode=nofallbackXavier Claessens2-4/+10
Fixes: #9065
2021-08-10modules: Add API to add testXavier Claessens2-5/+14
This fix kwargs not going through typed_kwargs() decorator that sets defaults. Fixes: #9009
2021-08-10Escape path in exclude filter passed to gcovrAlois Wohlschlager4-4/+31
Gcovr interprets exclude filters, as passed to the -e option, as regexes. Since we want to exclude a raw path, the argument must be escaped.
2021-08-10ninjabackend: use get_subdir() instead of subdir attribute for cythonDylan Baker2-1/+11
As this works correctly for CustomTarget, CustomTargetIndex, and GeneratedList, but .subdir doesn't work for CustomTargetIndex.
2021-08-10build: Add annotation to CustomTargetIndex.get_subdirDylan Baker1-1/+1
2021-08-10build: Add get_subdir() to GeneratedListDylan Baker1-0/+4
It needs this to match the behavior of CustomTarget and CustomTargetIndex, the later of which doesn't have a subdir attribute, just `get_subdir()`
2021-08-10modules/dlang: Fix dependencies that should have been updatedDylan Baker1-15/+9
2021-08-10Fix when gtest dep is found but does not pass version checkXavier Claessens1-0/+1
GTestDependencySystem (and other similar dep classes) sets self.is_found=True, but the version check could still fail. In the case the dependency is not required `ExternalDependency._check_version()` won't raise an exception and thus the dependency is accepted. _check_version() sets self.is_found() in the case self.version is not empty, we should do it too when self.version is empty. Fixes: #9036.
2021-08-10ast: Add dummy "support" for fstrings in the ast packageDaniel Mensinger5-0/+17
2021-08-10qt: Allow CustomTargets for qt.preprocess source argumentsDylan Baker2-15/+15
This works for `moc_*` and `ui_files`, but it never could have worked for `qresources` due to the implementation assuming a `str` or `File`. To restore previous compatibility I've added `CustomTarget` where it would have worked, but not where it would have failed, the former would raised an exception along the lines anyway. Fixes #9007
2021-08-10Delete extra data dirs that cause problems for WiX.Jussi Pakkanen1-0/+9
2021-08-10Fix meson.version().version_compare() regression in subprojectXavier Claessens6-4/+14
2021-08-10msubprojects: catch exceptions and continue with othersXavier Claessens1-1/+5
If the command fails for one subproject we should still continue with others. Failed subprojects are reported at the end. This issue became more problematic when doing parallel tasks because the reason the command fails was completely hidden by other parallel tasks.
2021-08-10gnome: Always pass absolute -L paths to g-ir-scannerNirbheek Chauhan1-2/+6
g-ir-scanner does not convert relative -L paths to runtime paths which are added to -Wl,-rpath and LD_LIBRARY_PATH / DYLD_LIBRARY_PATH / PATH. This means that the local library will either not be found at runtime (while building introspection data), or the system-wide library will be picked instead. See: giscanner/ccompiler.py:get_internal_link_flags() in gobject-introspection for more details.
2021-08-10run_unittests: add test for passing symlinks to setup and testPaolo Bonzini1-0/+12
2021-08-10cleanup self.options.wdPaolo Bonzini3-6/+2
It is never None and always an absolute path
2021-08-10resolve symlinks passed to -CPaolo Bonzini6-9/+25
"meson setup" is resolving symlinks for the build directory in validate_core_dirs. For consistency with it, do the same when the build directory is passed via -C to devenv, dist, init, install and test. This ensures for example that the path to test dependencies is computed correctly in "meson test". Fixes: #8765
2021-07-18Set up the 0.59.0 release.0.59.0Jussi Pakkanen20-212/+237
2021-07-17Update linkers.pyIan Harvey1-0/+6
Add /subsystem:xxx to xilink command line, either as specified in the build settings or as "console" by default.
2021-07-15Condense test directory names for next release.Jussi Pakkanen186-77/+77
2021-07-14coverage: disable the concept of "CI failures"Eli Schwartz1-0/+8
code coverage may be interesting to some people as an informational update, but it's really fragile and sometimes obscure, and overall we would really like to NOT have most PRs reporting a red X in the CI overview, when all project/unittests succeeded but codecov decides that by some inscrutbale metric, coverage by % has dropped. Elegant refactorings are penalized, because removing lines of code or rewriting them to be more compact, means the overall percentage of covered code is "less", even though no uncovered code got added. Even worse, the coverage reports often erroneously complain that a PR has "added lines #L<num> - L<num> were not covered by tests" even though github helpfully points out they are "Unchanged files with check annotations". Or more generally, codecov claims that coverage has dropped in code which the PR can't touch. The whole thing is just too much of a source of trouble. So, configure codecov to consider all PRs as successful no matter what. It is still welcome to leave informational comments, though.
2021-07-13Clang: Apply `-O0`Pamplemousse1-1/+1
Fix #8986
2021-07-12azure: propagate run_tests.py exit codeJon Turney1-0/+4
Propagate the run_tests.py exit code, rather than overwriting it with the codecov exit code.
2021-07-12Update version number for rc2.0.59.0.rc2Jussi Pakkanen1-1/+1
2021-07-10Add path filter to azure pipelines triggerJon Turney1-0/+22
This restricts the pipeline from running on 'non-code' pushes and PRs in the same way that GitHub workflows which run project tests are (although the syntax is different, and must be made more explicit as wildcards aren't supported).
2021-07-10fix: Fix recursive _unholder permissive kwarg (fixes #8977)Daniel Mensinger2-2/+4
2021-07-08docs: fix minor typos in Machine-files.mdAndrea Pappacoda1-4/+4
2021-07-07Use None as Environment object build_dir in detect_system_compiler()Jon Turney1-24/+23
The Environment object constructor accepts None as build_dir (for quite a while now), so don't bother with creating a temporary directory for use as the build_dir, if we're not going to need it. Future work: Environment.__init__() sets scratch_dir to '' if build_dir is None, which seems a little wonky, as it isn't a path.
2021-07-07Annotate framework tests with where they are expected to skipJon Turney14-68/+29
Remove hard-coded framework test skip logic in skippable(), instead annotate test.json with environments in which skip is expected. (Mainly this is done with by testing the value of MESON_CI_JOBNAME now set for linux jobs)
2021-07-07Skip LLVM test if required modules aren't foundJon Turney1-3/+6
If the required LLVM modules can't be found, skip the LLVM framework test, rather than succesfully doing nothing. (This optionality is a leftover from before #7379) (At the moment, OpenSuse provides dynamic-only LLVM. The cmake method still finds LLVM, when a static LLVM is requested, but fails to find any modules. This might be a bug in the cmake method of the LLVM dependency.)
2021-07-07Allow `skip_*` test.json keys at top-level or in `matrix:`Jon Turney3-37/+69
2021-07-07Add `skip_on_os` to test.jsonJon Turney3-0/+25
2021-07-07Add `skip_on_jobname` to test.jsonJon Turney3-4/+71
Plan to replace the hard-coded list of 'may be skipped' framework tests in skippable() with annotations in test.json which record 'will be skipped in these specific CI jobs'. If the value of the MESON_CI_JOBNAME env var (an arbitrary string expected to be unique for each CI configuration) contains any of the strings in the `skip_on_jobname` key in test.json, the test is expected to output MESON_SKIP_TEST. Unexpected skips or runs are treated as an error. Future work: Maybe we should add additional count categories 'unexpected skip' and 'unexpected not skipped', rather than counting those as 'skipped' and 'failed', respectively.
2021-07-07Drop checking skippable() in run_single_testJon Turney1-2/+2
Drop checking skippable() in run_single_test. It always returns True unless we are under CI, so checking it here is pointless.
2021-07-07Drop non-framework test names from skippable()Jon Turney1-12/+0
In all these cases, the test has already been determined as skippable because it's not part of the 'frameworks' suite.
2021-07-07windows: Support wrc resource compilerConnor Abbott2-1/+13
It has a similar interface to windres, but it produces ELF instead of COFF binaries. It uses its own preprocessor which doesn't support creating depfiles, but we can convince it to use the system preprocessor instead and pass those arguments using the --preprocessor option. Together with some hacks to override the shared library/executable suffix and some wine patches [1] this is enough to compile dxvk when ripping out the hand-rolled rc support. [1] https://www.winehq.org/pipermail/wine-devel/2021-July/190100.html https://www.winehq.org/pipermail/wine-devel/2021-July/190098.html https://www.winehq.org/pipermail/wine-devel/2021-July/190099.html https://www.winehq.org/pipermail/wine-devel/2021-July/190101.html
2021-07-06Fix unsupported linker error messageAndrea Pappacoda1-1/+1
An `f` was dropped in bd6f46e723813dfadaba1f7c87d3b0b751d05219
2021-07-05Bump version number for rc1.0.59.0.rc1Jussi Pakkanen2-2/+2
2021-07-05cmake: Improved error message for using dependency for executablesDaniel Mensinger5-0/+26
fixes #8893
2021-07-05condense linesEli Schwartz8-32/+16
2021-07-05simplify mesonlib imports for the sake of line lengthsEli Schwartz2-18/+19