Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to Meson's current master branch (1.4.99) #14

Merged
merged 869 commits into from
May 17, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
869 commits
Select commit Hold shift + click to select a range
43fe006
Fix warning when using scan-build
stephanlachnit Feb 16, 2024
b290a82
Fix KeyError in Python module
bruchar1 Feb 8, 2024
47acce8
Provide a better error message when mixing host and build machines
dcbaker Feb 16, 2024
4e5df4b
fix crash in generator.process() with an invalid preserve_path_from
eli-schwartz Feb 14, 2024
a35d4d3
ciimage: fix pathological brokenness in homebrew packaging of python
eli-schwartz May 7, 2023
477783a
build: fix some type annotations for get_install_dir
dcbaker Feb 15, 2024
8283e49
build: get_default_install_dir() can be (None, None) or (str, str)
dcbaker Feb 15, 2024
bc46ea2
modules/i18n: CustomTargets must have `install_dir` if installing
dcbaker Feb 15, 2024
413c288
wrap: Mark some methods of Resolver as protected
dcbaker Feb 16, 2024
9a493f5
wrap: correct return annotation of `Resolver.get_from_wrapdb()`
dcbaker Feb 16, 2024
0abc872
wrap: remove useless set of `Resolver.directory`
dcbaker Feb 16, 2024
39e1bf1
wrap: remove Resolver.packagename
dcbaker Feb 16, 2024
95b3b9f
coredata: use a Protocol for shared options between setup configure a…
dcbaker Dec 11, 2023
5d1c3ae
mconf|msetup: use Protocol for argparse options
dcbaker Dec 11, 2023
20c9f3e
Fix base options not reconfigurable
bruchar1 Jan 4, 2024
6cd2ba4
env2mfile: move language args to `built-in options`
oleavr Feb 9, 2024
2c7833b
doc: fix compiler.preprocess varargs documentation
bruchar1 Jan 15, 2024
6a8330a
rust/bindgen: Use Meson rules for C++ headers
dcbaker Oct 16, 2023
8ac4346
compilers: 'H' is a C++ header
dcbaker Oct 17, 2023
05d49c6
modules/rust: Allow explicitly setting the language to bind
dcbaker Oct 16, 2023
a75ced6
modules/rust: inject a C/C++ standard for bindgen
dcbaker Oct 16, 2023
9752b89
modules: fix find_program.wanted
dcbaker Oct 16, 2023
e7f20ef
modules/rust: allow setting a version constraint on bindgen
dcbaker Oct 16, 2023
1b40fb1
Add location nodes to FeatureNews in the fs module
tristan957 Aug 18, 2023
db8246b
Alphabetize the fs module methods dict
tristan957 Aug 18, 2023
138e0fe
env.unset method
bruchar1 Oct 10, 2023
715dc27
Detect utf8 bom from meson build files
bruchar1 Feb 14, 2024
8ba0ea6
mtest: set MSAN_OPTIONS to abort by default
thesamesam Feb 10, 2024
11f2e07
Allow using CustomTarget as test executable
bruchar1 Feb 23, 2024
d441850
meson/rust: wrap `bindgen`s `wrap-static-fns` functionality
karolherbst Sep 17, 2023
8137eb4
add test for generating static inline wrappers
karolherbst Sep 18, 2023
a234c00
compilers/detect: Implemented logic for checking suffixed LLVM tools …
dragonmux Aug 23, 2023
cfada46
scripts/coverage: Implemented handling for passing the gcovr and llvm…
dragonmux Aug 23, 2023
d445052
environment: Built logic for computing the suffix of and automaticall…
dragonmux Aug 23, 2023
67afddb
environment: Add LLVM 18 support to get_llvm_tool_names()
dragonmux Aug 23, 2023
5495dc4
backend/ninjabackend: Implemented logic for passing the discovered gc…
dragonmux Aug 24, 2023
9cb44c9
Fix bad escape character in doc comment
tristan957 Aug 18, 2023
35c6052
Fix fs module FeatureNew prefixes to match the function name
tristan957 Feb 23, 2024
0b19d1c
Correct fs.read function name in exception message
tristan957 Feb 23, 2024
6a11925
Add support for BuildTargetTypes to various fs module functions
tristan957 Aug 18, 2023
05f4e0d
cmake: Allow recasting a CMake dependency into an Apple framework
amyspark Aug 30, 2023
a33c599
linkers: Fix detection of link arguments to Clang(-cl) + MSVC
amyspark Aug 21, 2023
3366756
compilers: Forward Meson's preference of lld-link to clang-cl
amyspark Aug 24, 2023
c525442
clang: Fix tests that use /DEF for MSVC LINK.exe
amyspark Sep 6, 2023
f3fad6c
compilers: Add test for correct forwarding of flags to MSVC's Clang l…
amyspark Aug 24, 2023
9ec2605
Avoid use of deprecated command form on the cross compilation doc page
rgommers Feb 25, 2024
df2dbd0
docs: clarify environment variables take only ExternalProgram.full_pa…
amyspark Nov 30, 2022
42944f7
docs: fix some release notes snippet typos
eli-schwartz Feb 26, 2024
5654f03
interpreter: Dependency variables can be empty string
xclaesse Jun 13, 2023
c25f0b1
printer: notin operator should be printed as "not in"
xclaesse Jun 13, 2023
cbf23f5
printer: Add a newline after "else"
xclaesse Jun 13, 2023
6cce6c5
cargo: Builder: Add support for "+", "+=", "if" and "foreach"
xclaesse Oct 10, 2023
53ba719
cargo: Builder: Add support for "!=", "in" and "not in" operators
xclaesse Jun 13, 2023
8ca5977
cargo: Builder: method() object can be any BaseNode
xclaesse Jun 13, 2023
d075bdb
cargo: Use coredata.stable_version
xclaesse Jun 13, 2023
114e032
cargo: Expose features as Meson boolean options
xclaesse Jun 10, 2023
4d55645
cargo: Abort if features are missing
xclaesse Jun 13, 2023
435e881
cargo: Call into meson subdir if it exists
xclaesse Jun 12, 2023
0cd2a8d
Condense directory names for RC1.
jpakkane Feb 25, 2024
9afe622
Fix lint warning.
jpakkane Feb 25, 2024
fa2ab69
Merge pull request #11867 from xclaesse/cargo-features
jpakkane Feb 26, 2024
2b5c8cc
modules/rust: Fix New Version check that was not updated
dcbaker Feb 26, 2024
fb72a8e
docs: fix typo in snippet: "hueristic" -> "heuristic"
dcbaker Feb 26, 2024
f013a68
rewriter: allow setting values regardless of the previous type
joukewitteveen Jan 26, 2024
0dc2499
Bump version number for rc1.
jpakkane Feb 26, 2024
e9ee63e
cargo: support lib.path in Cargo.toml
alyssais Feb 27, 2024
95e31b7
remove junk file from the repository root
eli-schwartz Feb 28, 2024
937d1c6
nvcc: avoid adding `-Wpedantic` to compile lines
SoapGentoo Feb 27, 2024
aee9415
rust: recursively pull proc-macro dependencies as well
xclaesse Feb 27, 2024
c67a6e1
Revert "Fix base options not reconfigurable"
bruchar1 Feb 28, 2024
4ed6d75
Set PYTHONIOENCODING when running tests
bruchar1 Feb 28, 2024
76f6874
Fix base and compiler options not reconfigurable.
bruchar1 Feb 28, 2024
cc4cfbc
Fix unknown base options not detected in commandline arguments
bruchar1 Feb 28, 2024
5499613
Merge pull request #12804 from joukewitteveen/dist-rewriter
jpakkane Mar 1, 2024
46f3cff
compilers: avoid catching -Wl,-soname and wrapping with start/end group
eli-schwartz Feb 26, 2024
4d1bfd0
compilers: only wrap multiple input libraries with start/end group
eli-schwartz Feb 27, 2024
ac1d0ae
Condense test dirs for rc2.
jpakkane Mar 3, 2024
d532c79
Bump version number for rc2.
jpakkane Mar 3, 2024
8357548
doc/Users: Add asteria and mcfgthread
lhmouse Mar 4, 2024
a9d42a7
test cases/common/103 has header symbol: fix for musl 1.2.5
alyssais Mar 1, 2024
5e0a307
rust: Link with rlib external dependencies
xclaesse Mar 4, 2024
0cd74c9
cuda: respect host compiler `-Werror`
SoapGentoo Mar 6, 2024
9e270f0
Fix detection of unknown base options in subproj
bruchar1 Mar 6, 2024
f947978
fix reconfigure subproject base options
bruchar1 Mar 6, 2024
675c323
CI: pin mypy to version 1.8
dcbaker Mar 8, 2024
e4622ff
Only link to generated pch object when using msvc. (#12957)
apache-hb Mar 11, 2024
eaefe29
Bump version number for release.
jpakkane Mar 12, 2024
7399be4
Bump version number for new development.
jpakkane Mar 12, 2024
eb74bb8
Added support for Texas Instruments C6000 compiler.
PetrMachacek2N Sep 12, 2023
675b47b
compilers: cpp: improve libc++ vs libstdc++ detection (again)
thesamesam Mar 12, 2024
fd626e3
Basic support for TI ARM-CLANG toolchain
Feb 20, 2023
0b7b4a3
Generate relnotes for 1.4.0.
jpakkane Mar 13, 2024
bc91eb5
interpreterobjects.py: fix a typo
yegorich Mar 14, 2024
3f73aae
cargo: Ensure Dependency.package always has a value
xclaesse Oct 11, 2023
4d3fb88
cargo: Add API version into dependency name
xclaesse Oct 11, 2023
3afbe04
wayland: Stable protocols can have a version
xclaesse Mar 13, 2024
f41a95d
compilers: Every compiler can run code
xclaesse Nov 3, 2023
b1358ef
compilers: Do not dump File content in log for compiler checks.
xclaesse Nov 6, 2023
6b56952
compilers: Allow setting env and workdir for run checks
xclaesse Nov 6, 2023
c107624
compilers: No need to pass exe_wrapper everywhere
xclaesse Nov 27, 2023
18f8aed
rust: Get native-static-libs even when it cannot run host binaries
xclaesse Dec 5, 2023
6d713e4
dependency: define equality and hash operators for Dependency
dcbaker Mar 13, 2024
b1340e9
interpreter: when overriding a dependency make its name match
dcbaker Mar 13, 2024
d08ef2c
move UserArrayOption.listify_value to mesonlib
bruchar1 Jan 11, 2024
dacb25d
Improve error messages for invalid option values
bruchar1 Jan 11, 2024
6db1d2b
unittests: Add a helper for copying source trees
dcbaker Mar 11, 2024
05bbe45
tests: Fix unit tests with high parallelism
heftig Mar 5, 2024
0762b86
tests: rename skip_on_jobname to expect_skip_on_jobname and skip_on_o…
lazka Mar 15, 2024
dec93ce
environment: fix LLVM 18 support in get_llvm_tool_names()
thesamesam Mar 13, 2024
2ac5c4b
environment: update Debian development version in get_llvm_tool_names()
thesamesam Mar 13, 2024
e7c7f6f
cmake: fix incorrect decorator for append_link_args
stephanlachnit Mar 18, 2024
192ce82
unittests: annotate BasePlatformTests.setconf
dcbaker Mar 8, 2024
c793dc4
tests: Add tests for configure on changed options
dcbaker Mar 8, 2024
8a10c8a
coredata: remove extraneous keys when updating project_options
dcbaker Mar 8, 2024
c687530
coredata: add tracking of the options files
dcbaker Mar 8, 2024
2d7b7c3
mconf: Reload the options files if they have changed
dcbaker Mar 8, 2024
069d892
devenv: Don't use Path.relative_to() to resolve relative paths
nirbheek Mar 19, 2024
4b5caa8
mesonlib: Fix bug in relpath return values found by mypy
nirbheek Mar 19, 2024
8480f3e
fix: set `MSAN_OPTIONS` when not set, rather than `UBSAN_OPTIONS`
c-dilks Mar 20, 2024
3c8be4f
interpreter: fix return type annotation of helper
dcbaker Mar 27, 2024
2ae1bfa
interpreter/type_checking: remove stale TODO comment
dcbaker Mar 27, 2024
80e1d28
tests: don't expect msys2 llvm cmake tests to skip with llvm 18
lazka Mar 17, 2024
509a140
compilers: cpp: relax assertion level for libc++
thesamesam Mar 12, 2024
3131441
compilers: cpp: don't set stdlib assertion macros if already set
thesamesam Mar 12, 2024
5bd28fe
Pass Environment down from Backend
thesamesam Mar 13, 2024
3e1e37f
compilers: cpp: factor out C++ stdlib detection
thesamesam Mar 13, 2024
a63739d
compilers: cpp: reduce macro pollution for stdlib macros
thesamesam Mar 13, 2024
458827a
depscan: use a defaultdict to simplify append action
dcbaker Nov 21, 2023
2812b21
backend/ninja: use A dataclass for TargetDependencyScannerInfo
dcbaker Nov 21, 2023
875a9b7
backend/ninja: remove duplicate isinstance() check
dcbaker Nov 21, 2023
934c907
backend/ninja: add missing typing annotations
dcbaker Nov 21, 2023
fae1363
scripts/depscan: combine pickle and JSON data into a single file
dcbaker Dec 11, 2023
433117f
scripts/depscan: pick language once, at configure time
dcbaker Nov 21, 2023
3e9021a
scripts/depscan: remove unnecessary function
dcbaker Nov 21, 2023
2f8d51c
backend/ninja: don't rewrite the pickle data if it hasn't changed
dcbaker Mar 28, 2024
2171a01
backend/ninja: Don't run -t cleandead when using dyndeps
dcbaker Mar 28, 2024
27caa76
Update Pip install documentation.
jpakkane Mar 29, 2024
516a485
Merge pull request #13021 from dcbaker/submit/depscanner-fixes-and-sp…
jpakkane Mar 29, 2024
78e9009
depfixer: change fix_darwin to act like fix_rpathtype_entry
grobian Mar 27, 2024
2d010c6
nasm: Add support for .nasm file extension (#13027)
juniorrantila Apr 2, 2024
456d879
Fix regression in TI CGT support
mon Apr 3, 2024
e00710a
env2mfile: Only consume LDFLAGS for relevant languages
oleavr Apr 4, 2024
30c38e2
Merge pull request #12144 from amyspark/fix-msvc-clangcl-linker-flag-…
jpakkane Apr 4, 2024
06bc8a8
depends keyword argument: accept CustomTargetIndex
gerion0 Mar 11, 2024
8239912
compilers: Ensure -L flags do not get reordered when used with MSVC
amyspark Nov 30, 2022
d86fce9
compilers: Add test for detecting libraries with externally supplied …
amyspark Jan 17, 2024
e455cb0
interpreter/compiler: Fortran.run() has always worked
dcbaker Apr 4, 2024
24a96a3
On OpenBSD there's no convention the .so numbers equal the boost vers…
omoerbeek Mar 25, 2024
b053eab
Update Users.md
dreamer-coding Apr 8, 2024
bec84ac
Fix type checking in ast.printer
bruchar1 Sep 26, 2023
154b9e7
fix colon wrongly named column in parser
bruchar1 Sep 14, 2023
be9e9af
Add ast visitor for whitespaces and symbols
bruchar1 Sep 14, 2023
2a962ff
visit full ast for AstConditionLevel
bruchar1 Sep 22, 2023
0bc51d5
simplify RawPrinter using FullAstVisitor
bruchar1 Sep 14, 2023
728fcda
simplify astprinter by using operator value
bruchar1 Sep 14, 2023
bd4fd90
parser: revert to single StringNode type
bruchar1 Sep 28, 2023
2b37101
meson format command
bruchar1 Sep 15, 2023
7ebbce2
gnome: Fix indentation of mkenums_simple generated code
velsinki Apr 7, 2024
ef2b164
gnome: Actually run all mkenums_simple tests and fix numbering
velsinki Apr 7, 2024
d617dc6
modules: rename qt.py -> _qt.py
dcbaker Apr 9, 2024
d6a0b7a
interpreter: never expose implementation details of the modules package
dcbaker Apr 9, 2024
7b77fa0
nasm, yasm: Fix debug flags for Windows and macOS
amyspark Apr 25, 2023
c069688
backends: Add Nasm support to Xcode through a custom build rule
amyspark Apr 25, 2023
af40f98
nasm test: Set the correct supported OSes for the tests
amyspark Apr 25, 2023
53ec050
nasm test: Add a test for validating the Xcode backend
amyspark Apr 25, 2023
5e10033
backends: Add Nasm support to Xcode through a custom build rule
amyspark Apr 10, 2024
6c090ca
nasm, yasm: Fix debug flags for Windows and macOS
amyspark Apr 10, 2024
230097f
Do not use verbose mode in unittests.
jpakkane Apr 9, 2024
db1b894
Add a verbose output option to run_project_tests and default it to off.
jpakkane Apr 9, 2024
e25b61b
Do not even submit test suites that are skipped completely.
jpakkane Apr 9, 2024
bf00ca6
Document a probable cause for test failures.
jpakkane Apr 9, 2024
bcb82b3
cmake: best-effort build type propagation
joukewitteveen Mar 8, 2024
b6d7a7a
dependencies/llvm: Try to make warning about CMake better
dcbaker Apr 10, 2024
f44541e
dependencies/dev: make the warning about LLVM's CMake non-fatal
dcbaker Apr 10, 2024
4e6bed6
docs: Howto exclude file from unity build
ptomato Apr 12, 2024
1dcffb6
Merge pull request #11737 from amyspark/amyspark/add-nasm-building-ru…
jpakkane Apr 14, 2024
9f02d0a
Clarify mutable objects usage
xclaesse Apr 5, 2024
1b9eb6f
Fix builds with Ninja 12 and remove a 5 year old workaround.
jpakkane Apr 14, 2024
886836a
Don't sanitize a None path when checking for, but could not find, uns…
cr1901 Mar 16, 2024
2d3954e
Add bztar support to meson dist
tristan957 Jan 24, 2024
39f6d11
micro-optimize iteration of evaluated set
eli-schwartz Mar 19, 2024
c99fc40
compilers: fix crash when compiler check returns None output
eli-schwartz Mar 24, 2024
f9eef40
allow any alternative python freeze tool to work with meson
eli-schwartz Mar 27, 2024
1baabbc
tests: fix missing dependency causing flaky build failure
eli-schwartz Mar 29, 2024
46b3c1c
python: Fix header check for system method
blue42u Apr 16, 2024
9e3b3db
backend/ninja: Fix cases where None is passed when unexpected
dcbaker Apr 18, 2024
f233b7b
Merge pull request #12808 from U2FsdGVkX1/master
jpakkane Apr 22, 2024
0cec1c0
coredata: Fix is_per_machine_option() for builtins
oleavr Apr 21, 2024
2868982
add an error message for targets that are not dependencies
mmomtchev Mar 15, 2024
0ed78cf
docs: fix a typo of path
Freed-Wu Apr 20, 2024
be62df7
Add a few more notes to the style guide
Ericson2314 Apr 8, 2024
05e1078
Pass --quiet to glib-genmarshal
tristan957 Apr 22, 2024
ffa2352
Fix compile.links for vala
bcorby Apr 22, 2024
4f94284
interpreter: implement the `name()` method for `ExternalLibraryHolder`
dcbaker Apr 8, 2024
344a97e
Add meson test --interactive
DaanDeMeyer Apr 19, 2024
d68306c
mtest: Connect /dev/null to stdin when not running in interactive mode
DaanDeMeyer Apr 21, 2024
44c279a
Use dl instead of zlib for checking an external dependency
tristan957 Apr 23, 2024
5754140
Merge pull request #13112 from DaanDeMeyer/interactive
jpakkane Apr 24, 2024
7a6b7ba
cmake/interpreter: Annotate and style module-level constants
joukewitteveen Apr 12, 2024
8e9be88
docs: Add CMake build type release note snippet
joukewitteveen Apr 12, 2024
fb5a0b4
backend/ninja: add typing annotations to NinjaRule
dcbaker Apr 18, 2024
cf0fecf
backend/ninja: Fix bug in NinjaRule.length_estimate
dcbaker Apr 18, 2024
f603a26
backend: fix type annotation of Backend.generate
dcbaker Apr 18, 2024
27dc1bc
backend/ninja: use re.match instead of re.search
dcbaker Apr 23, 2024
3a94aef
rust: Fix warning_level=everything case
xclaesse Apr 24, 2024
869bb7b
CI/MacOS: switch the Qt4 job to run on an Intel Mac
dcbaker Apr 24, 2024
274445d
CI/MacOS: Fix paths that have changed from /usr/local to /opt/homebrew
dcbaker Apr 24, 2024
d40e679
CI/MacOS: add missing packages
dcbaker Apr 24, 2024
b732070
CI/MacOS: move some things out of the run script into the env key
dcbaker Apr 24, 2024
ff95c7d
tests: bump C++ requirement of has_header_symbol
dcbaker Apr 24, 2024
80b9b12
dependencies/boost: Add new homebrew root
dcbaker Apr 24, 2024
a2ac3bc
find_library: improve the docs and FeatureNew to fully describe the c…
eli-schwartz Apr 25, 2024
cb1068a
Catch Python exception in the event alignment can't be converted to int
tristan957 Apr 25, 2024
16ed015
docs: fix bad link in snippet
dcbaker Apr 26, 2024
53f18fe
CI: gentoo: fix profile 23.0 migration dropping default fortran
eli-schwartz Apr 25, 2024
d22bb52
CI: ubuntu-rolling: fix configuration for sources after format change
eli-schwartz Apr 25, 2024
e4d2aac
tests/d/10: Fix condition with clang++ and gdc
dcbaker Apr 25, 2024
6a1732a
nasm: Fallback to native compiler when cross compiling
xclaesse Jun 8, 2023
f8d957f
Added NumPy to users
vedranmiletic Apr 16, 2024
1684259
backend/ninja: use generate_basic_compiler_args() for C#, Java, Swift
bgilbert Apr 11, 2024
2004b7c
compilers/fortran: fix werror options for Intel compilers
bgilbert Apr 21, 2024
c9aa4af
mdist: gracefully handle stale Git index
bgilbert Apr 27, 2024
205f09e
Prefer Clang over GCC for Objective-C(++)
Midar Apr 10, 2024
6c65293
Add support for depending on ObjFW
Midar Apr 10, 2024
538abcf
Install ObjFW on macOS, Fedora and MSYS2 CI
Midar Apr 22, 2024
e9363e1
Explicitly set OBJC=cc OBJCXX=c++ for bitcode test
Midar Apr 27, 2024
4f3a3e2
add punctuation mark to make log more understandable
kkzhsh Jan 15, 2024
e5f32b7
catch build files that cannot be opened in utf8 mode and emit useful …
eli-schwartz Apr 28, 2024
bb088c5
fix typos and grammars in Build-options.md
Nhalrath Apr 29, 2024
bd149f8
Fix dependencies for vala.links #13158
bcorby Apr 30, 2024
f38a826
Updating Continuous-Integration.md (#13161)
dreamer-coding Apr 30, 2024
e3db7af
vs2010backend: fix an error when using /MANIFEST:NO
matyalatte Apr 7, 2024
f1f2481
use a for loop, check more linker options
matyalatte Apr 11, 2024
a0ff145
Add required kwarg to compiler.{compiles,links,run}
tristan957 Apr 25, 2024
23eb7ba
Use correct subdir when generating processed file path
tristan957 May 2, 2024
8cb16b2
Add support for GCC's null_terminated_string_arg function attribute
tristan957 May 7, 2024
33adc42
cuda: pull in libdir when linking C/C++
SoapGentoo May 7, 2024
c55ca82
cuda: add test for C++ linking of dependency('cuda')
SoapGentoo May 7, 2024
89a5bde
cuda: pass static archives to nvcc without -Xlinker= prefix
SoapGentoo May 7, 2024
b6e5683
cuda: disable thin archives when 'cuda' is enabled globally
SoapGentoo May 7, 2024
14de8ac
cuda: add test for device linking
SoapGentoo May 7, 2024
bcaab91
mtest: Set MESON_TEST_ITERATION to the current iteration of the test
DaanDeMeyer May 3, 2024
c0e877e
fix broken link
Mar 14, 2024
f8aefe2
In Builtin-options documentation, clarify warning_level=0.
sammyj85 May 7, 2024
cfd5718
implement @PLAINNAME0@ and @BASENAME0@
stsp May 7, 2024
8f88bbe
CI: gentoo: explicitly install gdbus-codegen
eli-schwartz May 14, 2024
bfb9ca0
CI: gentoo: make logs shorter by reducing progressbar
eli-schwartz May 14, 2024
f24307e
Merge pull request #11421 from mon/ti-armclang
jpakkane May 15, 2024
7d28ff2
docs: fix description of cpp_eh=none
eli-schwartz May 16, 2024
31161ee
Merge remote-tracking branch 'upstream/master' into update-may2024
rgommers May 16, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,5 @@
* text eol=lf
*.png binary
*.icns binary
data/shell-completions/bash/meson linguist-language=Shell
data/shell-completions/zsh/_meson linguist-language=Shell
7 changes: 5 additions & 2 deletions .github/workflows/cygwin.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@ concurrency:

on:
push:
branches:
- master
# Stable branches such as 0.56 or 1.0
- '[0-9]+.[0-9]+'
paths:
- "mesonbuild/**"
- "test cases/**"
Expand Down Expand Up @@ -76,8 +80,7 @@ jobs:
- name: Run pip
run: |
export PATH=/usr/bin:/usr/local/bin:$(cygpath ${SYSTEMROOT})/system32
# jsonschema is max capped because the new version depends on rust dependencies which are... hard to get on cygwin
python3 -m pip --disable-pip-version-check install gcovr 'jsonschema<4.18' pefile pytest pytest-subtests pytest-xdist coverage
python3 -m pip --disable-pip-version-check install gcovr fastjsonschema pefile pytest pytest-subtests pytest-xdist coverage
shell: C:\cygwin\bin\bash.exe --noprofile --norc -o igncr -eo pipefail '{0}'

- uses: actions/cache/save@v3
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ concurrency:
on:
push:
branches:
- master
paths:
- 'ci/ciimage/**'
- '.github/workflows/images.yml'
Expand Down Expand Up @@ -41,6 +40,7 @@ jobs:
- { name: Arch Linux, id: arch }
- { name: CUDA (on Arch), id: cuda }
- { name: Fedora, id: fedora }
- { name: Gentoo, id: gentoo }
- { name: OpenSUSE, id: opensuse }
- { name: Ubuntu Bionic, id: bionic }
- { name: Ubuntu Rolling, id: ubuntu-rolling }
Expand Down
13 changes: 9 additions & 4 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
with:
python-version: '3.x'
- run: python -m pip install pylint
- run: pylint mesonbuild
- run: pylint --output-format colorized mesonbuild

flake8:
runs-on: ubuntu-latest
Expand All @@ -37,7 +37,7 @@ jobs:
with:
python-version: '3.x'
- run: python -m pip install flake8
- run: flake8 mesonbuild/
- run: flake8 --color always mesonbuild/

mypy:
runs-on: ubuntu-latest
Expand All @@ -46,5 +46,10 @@ jobs:
- uses: actions/setup-python@v4
with:
python-version: '3.x'
- run: python -m pip install mypy types-PyYAML
- run: python run_mypy.py
# Pin mypy to version 1.8, so we retain the ability to lint for Python 3.7
- run: python -m pip install "mypy==1.8" coverage strictyaml types-PyYAML types-tqdm types-chevron
- run: python run_mypy.py --allver
env:
PYTHONUNBUFFERED: 1
TERM: xterm-color
MYPY_FORCE_COLOR: 1
42 changes: 28 additions & 14 deletions .github/workflows/macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,23 @@ concurrency:

on:
push:
branches:
- master
# Stable branches such as 0.56 or 1.0
- '[0-9]+.[0-9]+'
paths:
- "mesonbuild/**"
- "test cases/**"
- "unittests/**"
- ".github/workflows/macos.yml"
- "run_unittests.py"
- "run*tests.py"
pull_request:
paths:
- "mesonbuild/**"
- "test cases/**"
- "unittests/**"
- ".github/workflows/macos.yml"
- "run_unittests.py"
- "run*tests.py"

permissions:
contents: read
Expand All @@ -33,18 +37,19 @@ jobs:
python-version: '3.x'
- run: |
python -m pip install --upgrade pip
python -m pip install pytest pytest-xdist pytest-subtests jsonschema coverage
python -m pip install pytest pytest-xdist pytest-subtests fastjsonschema coverage
- run: brew install pkg-config ninja llvm qt@5
- env:
CPPFLAGS: "-I/usr/local/include"
LDFLAGS: "-L/usr/local/lib"
CPPFLAGS: "-I/opt/homebrew/include"
LDFLAGS: "-L/opt/homebrew/lib"
MESON_CI_JOBNAME: unittests-appleclang
MESON_UNIT_TEST_BACKEND: ninja
HOMEBREW_NO_AUTO_UPDATE: 1
# These cannot evaluate anything, so we cannot set PATH or SDKROOT here
run: |
export SDKROOT="$(xcodebuild -version -sdk macosx Path)"
export PATH="$HOME/tools:/usr/local/opt/qt@5/bin:$PATH:$(brew --prefix llvm)/bin"
export PKG_CONFIG_PATH="/usr/local/opt/qt@5/lib/pkgconfig:$PKG_CONFIG_PATH"
export PATH="$HOME/tools:/opt/homebrew/opt/qt@5/bin:/opt/homebrew/opt/llvm/bin:$PATH"
export PKG_CONFIG_PATH="/opt/homebrew/opt/qt@5/lib/pkgconfig:$PKG_CONFIG_PATH"
./tools/run_with_cov.py ./run_unittests.py

- name: Aggregate coverage reports
Expand Down Expand Up @@ -73,6 +78,7 @@ jobs:
name: ${{ matrix.NAME }}
env:
MESON_CI_JOBNAME: ${{ matrix.NAME }}
HOMEBREW_NO_AUTO_UPDATE: 1

steps:
- uses: actions/checkout@v3
Expand All @@ -84,24 +90,28 @@ jobs:
find /usr/local/bin -lname '*/Library/Frameworks/Python.framework/*' -delete
sudo rm -rf /Library/Frameworks/Python.framework/
brew install --force python3 && brew unlink python3 && brew unlink python3 && brew link --overwrite python3
# Delete nonsensical PEP 668 breakage. It is the wrong solution to the problem and isn't designed to be
# productive -- only victim blaming -- however it bites particularly badly because this is a container/VM
# See commit 5c479d7a13a518c18ccb4dc3b6bdd7bfc2a9bdb5 for a more thorough analysis.
find /opt/homebrew/Cellar/python* -name EXTERNALLY-MANAGED -print0 | xargs -0 rm -vf
# use python3 from homebrew because it is a valid framework, unlike the actions one:
# https://github.com/actions/setup-python/issues/58
- run: brew install pkg-config ninja llvm qt@5 boost ldc hdf5 openmpi lapack scalapack sdl2 boost-python3 gtk-doc
- run: brew install pkg-config ninja llvm qt@5 boost ldc hdf5 openmpi lapack scalapack sdl2 boost-python3 gtk-doc zstd ncurses objfw
- run: |
python3 -m pip install --upgrade setuptools
python3 -m pip install --upgrade pip
python3 -m pip install cython coverage
- env:
CPPFLAGS: "-I/usr/local/include"
LDFLAGS: "-L/usr/local/lib"
CPPFLAGS: "-I/opt/homebrew/include"
LDFLAGS: "-L/opt/homebrew/lib"
MESON_ARGS: --unity=${{ matrix.unity }}
XML_CATALOG_FILES: "/opt/homebrew/etc/xml/catalog"
CI: 1
# These cannot evaluate anything, so we cannot set PATH or SDKROOT here
run: |
export SDKROOT="$(xcodebuild -version -sdk macosx Path)"
export PATH="$HOME/tools:/usr/local/opt/qt@5/bin:$PATH:$(brew --prefix llvm)/bin"
export PKG_CONFIG_PATH="/usr/local/opt/qt@5/lib/pkgconfig:$PKG_CONFIG_PATH"
export XML_CATALOG_FILES="/usr/local/etc/xml/catalog"
export PATH="$HOME/tools:/opt/homebrew/opt/qt@5/bin:/opt/homebrew/opt/llvm/bin:/opt/homebrew/opt/ncurses/bin:$PATH"
export PKG_CONFIG_PATH="/opt/homebrew/opt/qt@5/lib/pkgconfig:/opt/homebrew/opt/lapack/lib/pkgconfig:/opt/homebrew/opt/ncurses/lib/pkgconfig:$PKG_CONFIG_PATH"
./tools/run_with_cov.py ./run_project_tests.py --backend=ninja

- name: Aggregate coverage reports
Expand All @@ -116,7 +126,11 @@ jobs:
verbose: true

Qt4macos:
runs-on: macos-latest
# This job only works on Intel Macs, because OpenSSL 1.0 doesn't build on
# Apple ARM
runs-on: macos-13
env:
HOMEBREW_NO_AUTO_UPDATE: 1
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
Expand Down
13 changes: 9 additions & 4 deletions .github/workflows/msys2.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,23 @@ concurrency:

on:
push:
branches:
- master
# Stable branches such as 0.56 or 1.0
- '[0-9]+.[0-9]+'
paths:
- "mesonbuild/**"
- "test cases/**"
- "unittests/**"
- ".github/workflows/msys2.yml"
- "run_unittests.py"
- "run*tests.py"
pull_request:
paths:
- "mesonbuild/**"
- "test cases/**"
- "unittests/**"
- ".github/workflows/msys2.yml"
- "run_unittests.py"
- "run*tests.py"

permissions:
contents: read
Expand Down Expand Up @@ -80,7 +84,8 @@ jobs:
mingw-w64-${{ matrix.MSYS2_ARCH }}-python-lxml
mingw-w64-${{ matrix.MSYS2_ARCH }}-python-setuptools
mingw-w64-${{ matrix.MSYS2_ARCH }}-python-pip
mingw-w64-${{ matrix.MSYS2_ARCH }}-python-jsonschema
mingw-w64-${{ matrix.MSYS2_ARCH }}-python-fastjsonschema
mingw-w64-${{ matrix.MSYS2_ARCH }}-objfw
mingw-w64-${{ matrix.MSYS2_ARCH }}-${{ matrix.TOOLCHAIN }}

- name: Install dependencies
Expand All @@ -100,7 +105,7 @@ jobs:
- name: Run Tests
run: |
if [[ "${{ matrix.MSYS2_ARCH }}" == "x86_64" ]]; then
# There apparently is no clean way to add to the PATH in the
# There apparently is no clean way to add to the PATH in the
# previous step?
# See for instance https://github.com/msys2/setup-msys2/issues/171
export PATH=$PATH:$PWD/pypy3local
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/nonnative.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ on:
push:
branches:
- master
# Stable branches such as 0.56 or the eventual 1.0
# Stable branches such as 0.56 or 1.0
- '[0-9]+.[0-9]+'
paths:
- "mesonbuild/**"
Expand Down
7 changes: 4 additions & 3 deletions .github/workflows/os_comp.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,23 +8,23 @@ on:
push:
branches:
- master
# Stable branches such as 0.56 or the eventual 1.0
# Stable branches such as 0.56 or 1.0
- '[0-9]+.[0-9]+'
paths:
- "mesonbuild/**"
- "test cases/**"
- "unittests/**"
- ".github/workflows/images.yml"
- ".github/workflows/os_comp.yml"
- "run_unittests.py"
- "run*tests.py"
pull_request:
paths:
- "mesonbuild/**"
- "test cases/**"
- "unittests/**"
- ".github/workflows/images.yml"
- ".github/workflows/os_comp.yml"
- "run_unittests.py"
- "run*tests.py"

permissions:
contents: read
Expand All @@ -40,6 +40,7 @@ jobs:
- { name: Arch Linux, id: arch }
- { name: CUDA (on Arch), id: cuda }
- { name: Fedora, id: fedora }
- { name: Gentoo, id: gentoo }
- { name: OpenSUSE, id: opensuse }
- { name: Ubuntu Bionic, id: bionic }
container: mesonbuild/${{ matrix.cfg.id }}:latest
Expand Down
18 changes: 18 additions & 0 deletions .github/workflows/website.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,11 @@ on:
branches:
- master
paths:
- .github/workflows/website.yml
- docs/**
pull_request:
paths:
- .github/workflows/website.yml
- docs/**
workflow_dispatch:
release:
Expand All @@ -31,10 +33,26 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- uses: actions/cache/restore@v3
id: restore-cache
with:
# should use 'pip3 cache dir' to discover this path
path: ~/.cache/pip
key: website-pip-${{ github.run_number }}
restore-keys: website-pip-

- name: Install package
run: |
sudo apt-get -y install python3-pip ninja-build libjson-glib-dev
pip install hotdoc chevron strictyaml

- uses: actions/cache/save@v3
with:
# should use 'pip3 cache dir' to discover this path
path: ~/.cache/pip
key: website-pip-${{ github.run_number }}

- name: Setup SSH Keys and known_hosts
env:
SSH_AUTH_SOCK: /tmp/ssh_agent.sock
Expand Down
3 changes: 2 additions & 1 deletion .mypy.ini
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@
strict_optional = False
show_error_context = False
show_column_numbers = True
ignore_missing_imports = True
ignore_missing_imports = False
implicit_reexport = False

follow_imports = silent
warn_redundant_casts = True
Expand Down
11 changes: 11 additions & 0 deletions ci/ciimage/build.py
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,17 @@ def gen_bashrc(self) -> None:
# Also add /ci to PATH
out_data += 'export PATH="/ci:$PATH"\n'

out_data += '''
if [ -f "$HOME/.cargo/env" ]; then
source "$HOME/.cargo/env"
fi
'''

if self.data_dir.name == 'gentoo':
out_data += '''
source /etc/profile
'''

out_file.write_text(out_data, encoding='utf-8')

# make it executable
Expand Down
2 changes: 1 addition & 1 deletion ci/ciimage/common.sh
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ base_python_pkgs=(
pytest-xdist
pytest-subtests
coverage
jsonschema
fastjsonschema
)

python_pkgs=(
Expand Down
6 changes: 3 additions & 3 deletions ci/ciimage/fedora/install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ source /ci/common.sh

pkgs=(
python python-pip python3-devel
ninja-build make git autoconf automake patch
ninja-build make git autoconf automake patch file
elfutils gcc gcc-c++ gcc-fortran gcc-objc gcc-objc++ vala rust bison flex ldc libasan libasan-static
mono-core boost-devel gtkmm30 gtest-devel gmock-devel protobuf-devel wxGTK3-devel gobject-introspection
mono-core boost-devel gtkmm30 gtest-devel gmock-devel protobuf-devel wxGTK-devel gobject-introspection
boost-python3-devel
itstool gtk3-devel java-latest-openjdk-devel gtk-doc llvm-devel clang-devel SDL2-devel graphviz-devel zlib zlib-devel zlib-static
#hdf5-openmpi-devel hdf5-devel netcdf-openmpi-devel netcdf-devel netcdf-fortran-openmpi-devel netcdf-fortran-devel scalapack-openmpi-devel
doxygen vulkan-devel vulkan-validation-layers-devel openssh mercurial gtk-sharp2-devel libpcap-devel gpgme-devel
doxygen vulkan-devel vulkan-validation-layers-devel openssh objfw mercurial gtk-sharp2-devel libpcap-devel gpgme-devel
qt5-qtbase-devel qt5-qttools-devel qt5-linguist qt5-qtbase-private-devel
libwmf-devel valgrind cmake openmpi-devel nasm gnustep-base-devel gettext-devel ncurses-devel
libxml2-devel libxslt-devel libyaml-devel glib2-devel json-glib-devel libgcrypt-devel wayland-devel wayland-protocols-devel
Expand Down
8 changes: 8 additions & 0 deletions ci/ciimage/gentoo/image.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"base_image": "gentoo/stage3:desktop",
"env": {
"CI": "1",
"MESON_CI_JOBNAME": "linux-gentoo-gcc",
"SKIP_STATIC_BOOST": "1"
}
}
Loading
Loading