Charles Brunet
4ed6d75d96
Set PYTHONIOENCODING when running tests
...
For instance, on Windows, if the terminal is in cp65001, the subprocess
output is not encoded correctly and it results in error when running
unit test.
9 months ago
Charles Brunet
c67a6e1d7c
Revert "Fix base options not reconfigurable"
...
This reverts commit 98db3e7a2e
.
9 months ago
Xavier Claessens
aee941559c
rust: recursively pull proc-macro dependencies as well
...
When the proc-macro rlib is in a different subdir, it would miss the
needed -L argument and rustc would not find it. Meson was assuming that
proc-macros are only needed when building libraries that uses it, but it
turns out that was wrong, as show by the unit test.
9 months ago
David Seifert
937d1c639a
nvcc: avoid adding `-Wpedantic` to compile lines
...
* `-Wpedantic` creates useless churn due to its use of gcc-line directives:
../foo.cu:1:3: warning: style of line directive is a GCC extension
1 | namespace Foo {
| ^~
https://stackoverflow.com/a/31001220
9 months ago
Eli Schwartz
95e31b756f
remove junk file from the repository root
...
Sider has not been used by meson for a long time. Also it appears to no
longer exist.
9 months ago
Alyssa Ross
e9ee63ed03
cargo: support lib.path in Cargo.toml
...
Cargo implements this configuration option to override the entry point
of the library.
To get test coverage, I've modified one of the two Cargo subprojects
in the test to use a non-default library entrypoint. The other still
uses the default.
9 months ago
Jussi Pakkanen
0dc2499b2a
Bump version number for rc1.
9 months ago
Jouke Witteveen
f013a68898
rewriter: allow setting values regardless of the previous type
...
Alterations to kwargs come in two flavors:
1. Remove/replace values (delete/set)
2. Modify values (add/remove)
Only for the second flavor do we care about the type of any existing
value.
9 months ago
Dylan Baker
fb72a8ecdb
docs: fix typo in snippet: "hueristic" -> "heuristic"
9 months ago
Dylan Baker
2b5c8cc6a7
modules/rust: Fix New Version check that was not updated
...
Should be 1.4.0 but was 1.3.0
9 months ago
Jussi Pakkanen
fa2ab69e0f
Merge pull request #11867 from xclaesse/cargo-features
...
Cargo features
9 months ago
Jussi Pakkanen
9afe62232c
Fix lint warning.
9 months ago
Jussi Pakkanen
0cd2a8dc00
Condense directory names for RC1.
9 months ago
Xavier Claessens
435e881c18
cargo: Call into meson subdir if it exists
...
This allows projects to manually add extra rust args and deps. This is
intended to replace build.rs logic.
9 months ago
Xavier Claessens
4d55645c39
cargo: Abort if features are missing
9 months ago
Xavier Claessens
114e032e6a
cargo: Expose features as Meson boolean options
9 months ago
Xavier Claessens
d075bdb3ca
cargo: Use coredata.stable_version
...
This avoids generated code print warnings when using features introduced
in current dev cycle.
9 months ago
Xavier Claessens
8ca5977572
cargo: Builder: method() object can be any BaseNode
...
StringNode for example also have methods.
9 months ago
Xavier Claessens
53ba7196b9
cargo: Builder: Add support for "!=", "in" and "not in" operators
9 months ago
Xavier Claessens
6cce6c51bf
cargo: Builder: Add support for "+", "+=", "if" and "foreach"
9 months ago
Xavier Claessens
cbf23f5eba
printer: Add a newline after "else"
9 months ago
Xavier Claessens
c25f0b1d54
printer: notin operator should be printed as "not in"
9 months ago
Xavier Claessens
5654f03450
interpreter: Dependency variables can be empty string
...
There is no reason to forbid empty variables, PkgConfigCLI.variable()
even has code specifically for handling that case.
9 months ago
Eli Schwartz
42944f72a4
docs: fix some release notes snippet typos
...
commit 6a8330af598753d5982a37933beeac2d6b565386: hpp was clearly meant
and used several times, just not in the release notes themelves.
commit a75ced6d50a3d479eda6dcdc9c3482493f2161f0: C/C++ "what"? We
mention the std in the commit, but not in the text of the release notes.
9 months ago
L. E. Segovia
df2dbd06cf
docs: clarify environment variables take only ExternalProgram.full_path()
...
Fixes #10901
9 months ago
Ralf Gommers
9ec26051c6
Avoid use of deprecated command form on the cross compilation doc page
9 months ago
L. E. Segovia
05f4e0d6c5
cmake: Allow recasting a CMake dependency into an Apple framework
...
Fixes #12160
9 months ago
Tristan Partin
6a119256a1
Add support for BuildTargetTypes to various fs module functions
...
The new support was added to fs.name, fs.parent, fs.replace_suffix, and
fs.stem.
9 months ago
Tristan Partin
0b19d1c015
Correct fs.read function name in exception message
9 months ago
Tristan Partin
35c6052723
Fix fs module FeatureNew prefixes to match the function name
...
They were appending _file to the function name when they were meant to
suggest that the function now supports file objects.
9 months ago
Tristan Partin
9cb44c9c58
Fix bad escape character in doc comment
9 months ago
dragonmux
5495dc4315
backend/ninjabackend: Implemented logic for passing the discovered gcovr and llvm-cov along to the code coverage backend
9 months ago
dragonmux
67afddbf43
environment: Add LLVM 18 support to get_llvm_tool_names()
9 months ago
dragonmux
d4450520e0
environment: Built logic for computing the suffix of and automatically selecting suitable `llvm-cov` binaries to find_coverage_tools()
9 months ago
dragonmux
cfada46694
scripts/coverage: Implemented handling for passing the gcovr and llvm-cov binaries to use to the script
9 months ago
dragonmux
a234c001a0
compilers/detect: Implemented logic for checking suffixed LLVM tools before non
9 months ago
Karol Herbst
8137eb437a
add test for generating static inline wrappers
9 months ago
Karol Herbst
d44185026d
meson/rust: wrap `bindgen`s `wrap-static-fns` functionality
...
This way the `rust.bindgen` can generate a second output being a C file,
which contains wrapper functions for static inline ones.
This output file can then be compiled via C targets.
9 months ago
Charles Brunet
11f2e07071
Allow using CustomTarget as test executable
...
Fixes #6567
9 months ago
Sam James
8ba0ea6801
mtest: set MSAN_OPTIONS to abort by default
...
Followup to 7b7d2e060b
which handles ASAN and UBSAN.
It turns out that MSAN needs the same treatment. I've checked other sanitizers
like HWASAN and TSAN - it looks like they may both need it too, but Meson doesn't
currently suppose those anyway (see https://github.com/mesonbuild/meson/pull/12648 ).
Signed-off-by: Sam James <sam@gentoo.org>
Signed-off-by: Eli Schwartz <eschwartz93@gmail.com>
9 months ago
Charles Brunet
715dc27b2b
Detect utf8 bom from meson build files
...
Some text editors on Windows may use utf8bom encoding by default.
Prevent crash and properly report misencoded files.
Fixes #12766 .
9 months ago
Charles Brunet
138e0fe984
env.unset method
9 months ago
Tristan Partin
db8246b3fc
Alphabetize the fs module methods dict
9 months ago
Tristan Partin
1b40fb1089
Add location nodes to FeatureNews in the fs module
9 months ago
Dylan Baker
e7f20efc8b
modules/rust: allow setting a version constraint on bindgen
...
This allows us to ensure that the bindgen we're using is suitable for
our purpose.
9 months ago
Dylan Baker
9752b89100
modules: fix find_program.wanted
...
Which should be `str | list[str]`, not `str | None`.
9 months ago
Dylan Baker
a75ced6d50
modules/rust: inject a C/C++ standard for bindgen
...
Especially for C++ this is very important.
9 months ago
Dylan Baker
05d49c6990
modules/rust: Allow explicitly setting the language to bind
...
This may be of particular use when a header is .h but should be treated
as a C++ header instead of a C header.
9 months ago
Dylan Baker
8ac4346943
compilers: 'H' is a C++ header
...
We list other C++ header types in this list, so H should be included
9 months ago
Dylan Baker
6a8330af59
rust/bindgen: Use Meson rules for C++ headers
...
Bindgen natively only considers .hpp to be C++ headers, but Meson
considers some additional extensions including .hh and .hxx to be C++.
9 months ago