Age | Commit message (Collapse) | Author | Files | Lines |
|
argument opt_name
|
|
|
|
Modify error messages for user-option to show opt_name and opt_type.
Change all used constructors of inherited classe (like UserStringOption) accordingly to add option name.
|
|
the description of the build option for easier identification
of the invalid option.
|
|
|
|
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.
|
|
Fix #8986
|
|
Propagate the run_tests.py exit code, rather than overwriting it with
the codecov exit code.
|
|
|
|
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).
|
|
|
|
|
|
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.
|
|
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)
|
|
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.)
|
|
|
|
|
|
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.
|
|
Drop checking skippable() in run_single_test. It always returns True
unless we are under CI, so checking it here is pointless.
|
|
In all these cases, the test has already been determined as skippable
because it's not part of the 'frameworks' suite.
|
|
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
|
|
An `f` was dropped in bd6f46e723813dfadaba1f7c87d3b0b751d05219
|
|
|
|
fixes #8893
|
|
|
|
|
|
|
|
|
|
|
|
In one place, we reintroduced old set syntax after having initially
cleaned it up everywhere via commit 4340bf34faca7eed8076ba4c388fbe15355f2183
|
|
* dependencies: Deterministic LLVM compile and link arg ordering
In LLVMDependencyConfigTool, the members compile_args and required_modules are
either converted to or stored as sets, which do not have a stable ordering. This
results in nondeterministic builds, particularly with required_modules causing
the order in which the LLVM libraries are linked in to the output binaries to
change across independent builds. As any guarantee about ordering for
compile_args is lost by being converted from a list to a set and back, and the
modules added to required_modules was even already sorted once, sort both when
converting them to lists.
* Use mesonlib.OrderedSet instead of sorting the sets.
Co-authored-by: Kaelyn Takata <kaelyn.alexi@protonmail.com>
|
|
|
|
Improvements to dependency doc
|
|
git.archlinux.org has been decomissioned [1]
[1] https://lists.archlinux.org/pipermail/arch-dev-public/2021-June/030466.html
|
|
Consistently capitialize 'Meson' where used as a proper name in
Dependencies.md.
|
|
Instead of excluding all files starting with .git, meson dist now only excludes files really used by git
|
|
Make it clear that search order for 'auto' there only applies to generic
dependency names. Drop 'system' from that list, as it's not actually
used for generic dependencies (nor is it defined what it would do).
|
|
|
|
Add required and disabled to import, modules.found method
|
|
We need to store the original filename as well as whether the wrap was
redirected in order to properly purge the redirected wrap.
|
|
This behavior is more inline with the rest of Meson
|
|
Currently all arguments are being passed to scan-build as part of the
refactoring of how Meson internally handles arguments, but that's wrong,
only project specific arguments are supposed to be passed.
Fixes: #8818
|
|
|
|
Toolkit 11.4.0.
We skip 11.3.1 because it shares the same version requirements as 11.3.0.
|
|
This is useful both from the perspective of optional functionality that
requires a module, and also as I continue to progress with Meson++,
which will probably not implement all of the modules that Meson itself
does.
|
|
|
|
NewExtensionModule object
So that we get the found() method.
|
|
These will be needed for checking whether a module is found or not if it
is required false.
|
|
and make the helper method private
|
|
|