aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2024-05-19Fix new linter warnings.lintfixesJussi Pakkanen14-8/+22
2024-05-15docs: fix description of cpp_eh=noneEli Schwartz1-5/+5
We changed the behavior in #6116 but did not change the docs as well. Fixes #8233
2024-05-15Merge pull request #11421 from mon/ti-armclangJussi Pakkanen4-10/+33
Basic support for TI Arm Clang toolchain
2024-05-14CI: gentoo: make logs shorter by reducing progressbarEli Schwartz1-0/+3
2024-05-14CI: gentoo: explicitly install gdbus-codegenEli Schwartz1-0/+1
It is now getting uninstalled instead of updated, due to blockers on old glib. In fact, we explicitly need it...
2024-05-09implement @PLAINNAME0@ and @BASENAME0@Stas Sergeev6-4/+39
@PLAINNAME@ and @BASENAME@ cannot be used in custom_target() with multiple inputs. For those, similar macros are needed with an index. Fixes #13164
2024-05-09In Builtin-options documentation, clarify warning_level=0.sammyj851-1/+1
warning_level=0 is not 'none' but 'compiler default'.
2024-05-08fix broken linkAxel Ricard1-1/+1
2024-05-08mtest: Set MESON_TEST_ITERATION to the current iteration of the testDaan De Meyer3-2/+11
When running our integration tests in systemd we depend on each test having a unique name. This is always the case unless --repeat is used, in which case multiple tests with the same name run concurrently which causes issues when allocating resources that use the test name as the identifier. Let's set MESON_TEST_ITERATION to the current iteration of the test so we can use $TEST_NAME-$TEST_ITERATION as our test identifiers which will avoid these issues.
2024-05-07cuda: add test for device linkingDavid Seifert4-0/+73
2024-05-07cuda: disable thin archives when 'cuda' is enabled globallyDavid Seifert1-1/+15
Bug: mesonbuild/meson/pull/9453 Bug: mesonbuild/meson/issues/9479#issuecomment-953485040
2024-05-07cuda: pass static archives to nvcc without -Xlinker= prefixDavid Seifert2-1/+13
2024-05-07cuda: add test for C++ linking of dependency('cuda')David Seifert1-1/+1
2024-05-07cuda: pull in libdir when linking C/C++David Seifert1-1/+1
* In `CudaDependency._detect_language`, the first detected language is considered the linking one. Since `nvcc`/`cuda` implicitly know where the cuda dependency lives, this leads to situations where `cpp` as linking language is erroneously detected as `cuda` and then misses the `-L` argument.
2024-05-07Add support for GCC's null_terminated_string_arg function attributeTristan Partin4-48/+72
This is new as of 14.1.
2024-05-07Use correct subdir when generating processed file pathTristan Partin3-5/+29
We need the subdir of where the output file will actually be created, not the current subdir of the interpreter. Fixes: #13168
2024-05-01Add required kwarg to compiler.{compiles,links,run}Tristan Partin7-8/+124
This is a similar commit to the one that added required to all the compiler.has* functions.
2024-05-01use a for loop, check more linker optionsmatyalatte1-12/+26
2024-05-01vs2010backend: fix an error when using /MANIFEST:NOmatyalatte1-5/+20
2024-05-01Updating Continuous-Integration.md (#13161)Michael Gene Brockus (Dreamer)1-103/+141
2024-04-30Fix dependencies for vala.links #13158Ben Corby2-0/+108
Using the keyword argument dependencies with compiler.links() for vala doesn't work as the library being linked to needs to be prefixed with --pkg= before being passed to valac.
2024-04-29fix typos and grammars in Build-options.mdNhalrath1-4/+4
2024-04-28catch build files that cannot be opened in utf8 mode and emit useful errorEli Schwartz5-17/+28
Previously, if a junked meson.build or native.ini was used we got a lengthy traceback ending in UnicodeDecodeError. Fixes: #13154 Fixes: #13156
2024-04-28add punctuation mark to make log more understandablekkz1-3/+3
2024-04-28Explicitly set OBJC=cc OBJCXX=c++ for bitcode testJonathan Schleifer1-0/+6
OBJC=clang / OBJCXX=clang++ can pick up a newer Clang that no longer supports bitcode.
2024-04-28Install ObjFW on macOS, Fedora and MSYS2 CIJonathan Schleifer3-2/+3
2024-04-28Add support for depending on ObjFWJonathan Schleifer10-5/+160
This uses objfw-config to get to the flags, however, there's still several todos that can only be addressed once dependencies can have per-language flags.
2024-04-28Prefer Clang over GCC for Objective-C(++)Jonathan Schleifer2-6/+8
GCC only has very limited support for Objective-C and doesn't support any of the modern features, so whenever Clang is available, it should be used instead. Essentially, the only reason to ever use GCC for Objective-C is that Clang simply does not support the target system.
2024-04-27mdist: gracefully handle stale Git indexBenjamin Gilbert2-1/+5
Running `touch` on a tracked file in Git, to update its timestamp, and then running `meson dist` would cause dist to fail: ERROR: Repository has uncommitted changes that will not be included in the dist tarball Use --allow-dirty to ignore the warning and proceed anyway Unlike `git status` and `git diff`, `git diff-index` doesn't refresh the index before comparing, so stat changes are assumed to imply content changes. Run `git update-index -q --refresh` first to refresh the index. Fixes: #12985
2024-04-27compilers/fortran: fix werror options for Intel compilersBenjamin Gilbert1-0/+6
Unlike in the Intel C compiler, -Werror and /WX are not accepted.
2024-04-27backend/ninja: use generate_basic_compiler_args() for C#, Java, SwiftBenjamin Gilbert3-14/+19
C#, Java, and Swift targets were manually collecting compiler arguments rather than using the helper function for this purpose. This caused each target type to add arguments in a different order, and to forget to add some arguments respectively: C#: /nologo, -warnaserror Java: warning level (-nowarn, -Xlint:all, -Xdoclint:all), debug arguments (-g, -g:none), -Werror Swift: -warnings-as-errors Fix this. Also fix up some no-longer-unused argument processing in the Compiler implementations.
2024-04-27Added NumPy to usersDr. Vedran Miletić1-0/+1
NumPy is built with Meson since version 1.26.
2024-04-26nasm: Fallback to native compiler when cross compilingXavier Claessens1-3/+9
If nasm is not defined in cross file binaries we can fallback to build machine nasm. When cross compiling C code we need a different gcc binary for native and cross targets, e.g. `gcc` and `x86_64-w64-mingw32-gcc`. But when cross compiling NASM code the compiler is the same, it is the source code that has to be made for the target platform. We can thus use nasm from build machine's PATH to cross compile for Windows on Linux for example. The difference is the arguments Meson will pass when invoking nasm e.g. `-fwin64`. That is already handled by NasmCompiler class.
2024-04-25tests/d/10: Fix condition with clang++ and gdcDylan Baker1-1/+2
Which just checked for clang++ and aborted, instead of for the combination it claimed.
2024-04-25CI: ubuntu-rolling: fix configuration for sources after format changeEli Schwartz1-1/+1
``` # Ubuntu sources have moved to the /etc/apt/sources.list.d/ubuntu.sources # file, which uses the deb822 format. Use deb822-formatted .sources files # to manage package sources in the /etc/apt/sources.list.d/ directory. # See the sources.list(5) manual page for details. ``` Adapt to the new format.
2024-04-25CI: gentoo: fix profile 23.0 migration dropping default fortranEli Schwartz1-0/+3
We need this for scalapack -> virtual/mpi -> openmpi See https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a1b86025be85171281811eaced7b342fbdfdb591 We now get an immediate, very nicely readable error that the USE flag is necessary. For our use cases, there's no reason not to globally enable it.
2024-04-25docs: fix bad link in snippetDylan Baker1-1/+1
2024-04-25Catch Python exception in the event alignment can't be converted to intTristan Partin1-1/+9
The user almost certainly has to be using a compiler wrapper script that doesn't actually work if we land here. Fixes: #12982
2024-04-25find_library: improve the docs and FeatureNew to fully describe the changeEli Schwartz2-2/+4
The docs didn't really explain what the issue was with using it. And it's not actually a "crash" either way. The FeatureNew mentions that "name" is new, but it is standard for these warnings to tell you both the type of object you're operating on and the name of the method that is an issue. This omitted the former, and was very confusing.
2024-04-25dependencies/boost: Add new homebrew rootDylan Baker1-2/+7
On Apple Silicon the default search path is /opt/homebrew instead of /usr/local.
2024-04-25tests: bump C++ requirement of has_header_symbolDylan Baker1-1/+4
Boost now requires C++ 14, as of 1.82
2024-04-25CI/MacOS: move some things out of the run script into the env keyDylan Baker1-1/+1
2024-04-25CI/MacOS: add missing packagesDylan Baker1-2/+2
There are some additional packages that seem to be needed on Apple based Silicon.
2024-04-25CI/MacOS: Fix paths that have changed from /usr/local to /opt/homebrewDylan Baker1-10/+10
homebrew installs to /usr/local on Intel based macs, but has moved to /opt/homebrew for those using Apple Silicon.
2024-04-25CI/MacOS: switch the Qt4 job to run on an Intel MacDylan Baker1-1/+3
Qt4 doesn't seem to work on Apple Silicon because OpenSSL 1.0 (a requirement for Qt4) doesn't build on it correctly, trying to use X86 assembly.
2024-04-24rust: Fix warning_level=everything caseXavier Claessens1-0/+1
Fixes: #13100
2024-04-24backend/ninja: use re.match instead of re.searchDylan Baker1-1/+1
Since we've already determined that the first character is the start of the expression anyway.
2024-04-24backend: fix type annotation of Backend.generateDylan Baker5-5/+6
`func(value: dict = None)` is invalid, it must be `func(value: dict | None = None)`, or in our older syntax: `T.Optional[T.Dict] = None`
2024-04-24backend/ninja: Fix bug in NinjaRule.length_estimateDylan Baker1-8/+7
The code would create a dictionary that was of type `str : list[str] | str | None`. Then would later try to call `len(' '.join(dict[key]))`. This would result in two different bugs: 1. If the value is `None` it would except, since None isn't iterable and cannot be converted to a string 2. If the value was a string, then it would double the length of the actual string and return that, by adding a space between each character
2024-04-24backend/ninja: add typing annotations to NinjaRuleDylan Baker1-14/+16