summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-07-21msubprojects: catch exceptions and continue with othersXavier Claessens
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-07-18Merge pull request #8953 from dcbaker/submit/interpreter-easy-typingJussi Pakkanen
Do some of the easy type checking of in the interpreter
2021-07-18gnome: Always pass absolute -L paths to g-ir-scannerNirbheek Chauhan
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-07-18Bump version number for new development.Jussi Pakkanen
2021-07-18Merge pull request #8972 from bonzini/C-symlinkJussi Pakkanen
resolve symlinks passed to -C
2021-07-18Merge pull request #8996 from bonzini/fix8746Jussi Pakkanen
Do not add SONAME to shared modules
2021-07-18Set up the 0.59.0 release.Jussi Pakkanen
2021-07-17Update linkers.pyIan Harvey
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 Pakkanen
2021-07-14linkers: remove is_shared_module argument to get_soname_argsPaolo Bonzini
The argument is now unused, drop it.
2021-07-14do not add SONAME to shared modulesPaolo Bonzini
For an ELF targets, shared_module() builds a module with SONAME field (using -Wl,-soname argument). This is wrong: only the shared_library() needs SONAME, while shared_module() does not. Moreover, tools such as debian's dpkg-shlibdeps use presence of SONAME field as an indicator that this is shared library as opposed to shared module (e.g., for the module it is okay to have unresolved symbols which are imported from the executable which loads the module, while a library should have all symbols resolved). This was in fact already the behavior on Darwin; extend it to ELF targets as well. Fixes: #8746 Reported-by: Michael Tokarev <mjt@tls.msk.ru> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2021-07-14coverage: disable the concept of "CI failures"Eli Schwartz
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`Pamplemousse
Fix #8986
2021-07-13run_unittests: add test for passing symlinks to setup and testPaolo Bonzini
2021-07-12azure: propagate run_tests.py exit codeJon Turney
Propagate the run_tests.py exit code, rather than overwriting it with the codecov exit code.
2021-07-12Update version number for rc2.Jussi Pakkanen
2021-07-10Add path filter to azure pipelines triggerJon Turney
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 Mensinger
2021-07-08docs: fix minor typos in Machine-files.mdAndrea Pappacoda
2021-07-07interpreter: remove stringArgs usesDylan Baker
It's only used now on a files that always raises an exception anyway, might as well just not do any checking and reduces the uses of that function
2021-07-07interpreter: use typed_pos_args for filesDylan Baker
2021-07-07interpreter: use typed_pos_args for add_langaugesDylan Baker
2021-07-07interpreter: use typed_pos_args for projectDylan Baker
2021-07-07interpreter: use typed_pos_args for subdirDylan Baker
2021-07-07interpreter: use typed_pos_args for assertDylan Baker
2021-07-07interpreter: use typed_pos_args for subprojectDylan Baker
2021-07-07interpreter: use typed_pos_args for get_optionDylan Baker
2021-07-07interpreter: use typed_pos_args configuration_dataDylan Baker
2021-07-07interpreter: use typed_pos_args for alias_targetDylan Baker
2021-07-07interpreter: use typed_kwargs for include_directoriesDylan Baker
2021-07-07interpreter: use typed_pos_args for include_directoriesDylan Baker
2021-07-07interpreter: use typed_pos_args for add_test_setupDylan Baker
2021-07-07interpreter: use typed_pos_args for join_pathsDylan Baker
2021-07-07interpreter: use typed_pos_args for set_variableDylan Baker
2021-07-07interpreter: use typed_pos_args for get_variableDylan Baker
2021-07-07interpreter: use typed_pos_args for is_variableDylan Baker
2021-07-07interpreter: use typed_pos_args for is_disablerDylan Baker
2021-07-07Use None as Environment object build_dir in detect_system_compiler()Jon Turney
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 Turney
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 Turney
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 Turney
2021-07-07Add `skip_on_os` to test.jsonJon Turney
2021-07-07Add `skip_on_jobname` to test.jsonJon Turney
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 Turney
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 Turney
In all these cases, the test has already been determined as skippable because it's not part of the 'frameworks' suite.
2021-07-07cleanup self.options.wdPaolo Bonzini
It is never None and always an absolute path
2021-07-07resolve symlinks passed to -CPaolo Bonzini
"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-07windows: Support wrc resource compilerConnor Abbott
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 Pappacoda
An `f` was dropped in bd6f46e723813dfadaba1f7c87d3b0b751d05219
2021-07-05Bump version number for rc1.Jussi Pakkanen