Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
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
|
|
|
|
|
|
msubprojects: Run action on all subprojects in parallel
|
|
Various fixes to test.json schema
|
|
|
|
pathlib: Patch pathlib to work around some bugs (fixes #8263 #7295)
|
|
|
|
|
|
|
|
|
|
|
|
`qt.preprocess` dispatches to the individual methods instead of
duplicating all of the logic itself, but this means that it goes through
the type checking, and feature checking a second time. To avoid this we
need to use a private helper method instead.
Fixes #8920
|
|
Adjust Intel Fortran compiler detection to handle changes in ifort logo with the introduction of the oneapi toolkit. See #8338.
|
|
This commit introduces a new type of `HoldableObject`: The
`SecondLevelHolder`. The primary purpose of this class is
to handle cases where two (or more) `HoldableObject`s are
stored at the same time (with one default object). The
best (and currently only) example here is the `BothLibraries`
class.
|
|
Logs are printed only when the task is done to not interleave logs while
running multiple tasks in parallel. That means that nothing is printed
until the task is done and that could take time.
|
|
|
|
This moves all the code into a class and call its run() method in a
thread. The class queues all logs to print them at the end to avoid
mixing output of multiple actions.
|
|
|
|
This moves all the compiler detection logic into the new
compilers.detect module. This dramatically reduces the size
and complexity of Environment.
|
|
|
|
I guess the intent was that tests of thread/debug library variants only
get run with MSVC, but currently this test isn't getting run at all in
our Windows CI (since boost got removed from the VM image [1], and we
didn't notice, more on which anon).
[1] https://github.com/actions/virtual-environments/pull/2843
|
|
I'm not sure what the current schema is describing, but it's not doing
anything useful to validate 'matrix' entries, as I discover when I come
to add something to that.
'matrix' is a dict with possible keys 'options' and 'exclude'.
'options' is a dict with arbitrary keys, whose's values are arrays
Once we describe those dicts correctly, also fix that 'val' keys may be
string, boolean or null, and the corresponding 'exclude' keys may be
string or boolean.
v2:
Also allow 'val' and 'exclude' to be an array of strings.
|
|
|
|
|
|
That change introduced when porting to @typed_pos_args breaks gtk4. We
could decide to deprecate/warn but should not error for backward
compatibility.
|
|
Improve test.json schema to disallow arbitrary keys in all dicts which
have a defined set of keys (the 'installed', matrix 'options' and
'stdout' dicts).
Add 'count' and 'comment' keys to 'stdout' dict.
|
|
Add annotations for the various install_* functions
|