Commit Graph

14543 Commits

Author SHA1 Message Date
Yegor Yefremov bc91eb5814 interpreterobjects.py: fix a typo
Use a capital letter at the beginning of a sentence.
2024-03-14 06:27:53 -04:00
Jussi Pakkanen 0b7b4a3d9e Generate relnotes for 1.4.0. 2024-03-13 21:44:41 +02:00
Sam James 675b47b069
compilers: cpp: improve libc++ vs libstdc++ detection (again)
The previous approach wasn't great because you couldn't control what the
detected C++ stdlib impl was. We just had a preference list we tweaked the
searched order for per OS. That doesn't work great for e.g. Gentoo with libc++
or Gentoo Prefix on macOS where we might be using libstdc++ even though the host
is libc++.

Jonathan Wakely, the libstdc++ maintainer, gave a helpful answer on how
to best detect libc++ vs libstdc++ via macros on SO [0]. Implement it.

TL;DR: Use <version> from C++20 if we can, use <ciso646> otherwise. Check for
_LIBCPP_VERSION as libstdc++ doesn't always define a macro.

[0] https://stackoverflow.com/a/31658120

Signed-off-by: Sam James <sam@gentoo.org>
Signed-off-by: Eli Schwartz <eschwartz93@gmail.com>
2024-03-13 00:56:33 -04:00
Petr Machacek eb74bb8dbf Added support for Texas Instruments C6000 compiler. 2024-03-12 20:38:30 +02:00
Jussi Pakkanen 7399be4ab2 Bump version number for new development. 2024-03-12 20:33:47 +02:00
Jussi Pakkanen eaefe29463 Bump version number for release. 2024-03-12 19:57:31 +02:00
Elliot e4622ff1ee
Only link to generated pch object when using msvc. (#12957)
backend: Only link to generated pch object when using msvc
2024-03-11 11:23:33 -07:00
Dylan Baker 675c323b19 CI: pin mypy to version 1.8
Version 1.9 removes support for python 3.7, so we either need to pin the
version to 1.8 as long as we're support Python 3.7, or we need to drop
linting for 3.7
2024-03-11 07:40:27 -07:00
Charles Brunet f9479787a0 fix reconfigure subproject base options 2024-03-10 13:09:32 -07:00
Charles Brunet 9e270f030f Fix detection of unknown base options in subproj
cc4cfbcad9 added detection for unknown
base options, but it was not working for subproject base options. This
should fix it.
2024-03-10 13:09:32 -07:00
David Seifert 0cd74c96f1
cuda: respect host compiler `-Werror`
The cuda compiler also executes the host compiler and generally needs to know
the host compiler flags. We did this for regular args but not for error args.
We use `-Xcompiler=` since that's how nvcc tells the difference between args
it uses itself for device code and args it passes to the host compiler.

Signed-off-by: Eli Schwartz <eschwartz93@gmail.com>
[eli: fix quoting style]
2024-03-06 14:13:07 -05:00
Xavier Claessens 5e0a3073da rust: Link with rlib external dependencies
When linking with a Rust rlib, we should also link with its external
system dependencies. This was currently done only for C ABI crates, do
it for both rlib and staticlib now.
2024-03-05 09:18:32 -05:00
Alyssa Ross a9d42a7c1e test cases/common/103 has header symbol: fix for musl 1.2.5
musl 1.2.5 exposes this symbol in the default profile, and in future
will expose it unconditionally, as it is on track to becoming part of
POSIX.

So rather than maintaining a list of systems to run this on, let's
just skip testing the feature test macro if we find ppoll in the
default profile.
2024-03-04 09:51:57 -08:00
LIU Hao 8357548ca0 doc/Users: Add asteria and mcfgthread 2024-03-04 10:51:48 -05:00
Jussi Pakkanen d532c79d9c Bump version number for rc2. 2024-03-03 23:34:21 +02:00
Jussi Pakkanen ac1d0aea58 Condense test dirs for rc2. 2024-03-03 23:33:15 +02:00
Eli Schwartz 4d1bfd0939
compilers: only wrap multiple input libraries with start/end group
When only a single input file shows up in an arglist, it makes no sense
to inject `-W,--start-group -lone -Wl,--end-group`, since there is
nothing being grouped together. It's just longer command lines for
nothing.
2024-03-03 13:42:58 -05:00
Eli Schwartz 46f3cff5b2
compilers: avoid catching -Wl,-soname and wrapping with start/end group
This is just a bad regex match, because it matches *.so as a prospective
filename input even though it is actually not an input but a linker
flag. --start-group is only relevant to input files...
2024-03-03 13:42:58 -05:00
Jussi Pakkanen 54996132af
Merge pull request #12804 from joukewitteveen/dist-rewriter
Support `meson dist` when getting project versions from VCS
2024-03-02 00:59:32 +02:00
Charles Brunet cc4cfbcad9 Fix unknown base options not detected in commandline arguments 2024-03-01 12:09:22 -08:00
Charles Brunet 76f6874e48 Fix base and compiler options not reconfigurable.
Fixes #12920.
2024-03-01 12:09:22 -08:00
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.
2024-03-01 12:09:22 -08:00
Charles Brunet c67a6e1d7c Revert "Fix base options not reconfigurable"
This reverts commit 98db3e7a2e498a6d96ec50b39ef51ef312d6f0a3.
2024-03-01 12:09:22 -08:00
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.
2024-02-29 11:35:28 -05:00
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
2024-02-28 19:34:39 -05:00
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.
2024-02-28 00:20:49 -05:00
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.
2024-02-27 18:49:37 -05:00
Jussi Pakkanen 0dc2499b2a Bump version number for rc1. 2024-02-26 23:31:35 +02:00
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.
2024-02-26 23:30:39 +02:00
Dylan Baker fb72a8ecdb docs: fix typo in snippet: "hueristic" -> "heuristic" 2024-02-26 10:15:14 -08:00
Dylan Baker 2b5c8cc6a7 modules/rust: Fix New Version check that was not updated
Should be 1.4.0 but was 1.3.0
2024-02-26 09:59:39 -08:00
Jussi Pakkanen fa2ab69e0f
Merge pull request #11867 from xclaesse/cargo-features
Cargo features
2024-02-26 19:57:16 +02:00
Jussi Pakkanen 9afe62232c Fix lint warning. 2024-02-26 19:53:16 +02:00
Jussi Pakkanen 0cd2a8dc00 Condense directory names for RC1. 2024-02-26 19:53:16 +02:00
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.
2024-02-26 10:03:52 -05:00
Xavier Claessens 4d55645c39 cargo: Abort if features are missing 2024-02-26 10:03:52 -05:00
Xavier Claessens 114e032e6a cargo: Expose features as Meson boolean options 2024-02-26 10:03:52 -05:00
Xavier Claessens d075bdb3ca cargo: Use coredata.stable_version
This avoids generated code print warnings when using features introduced
in current dev cycle.
2024-02-26 10:03:51 -05:00
Xavier Claessens 8ca5977572 cargo: Builder: method() object can be any BaseNode
StringNode for example also have methods.
2024-02-26 10:03:51 -05:00
Xavier Claessens 53ba7196b9 cargo: Builder: Add support for "!=", "in" and "not in" operators 2024-02-26 10:03:51 -05:00
Xavier Claessens 6cce6c51bf cargo: Builder: Add support for "+", "+=", "if" and "foreach" 2024-02-26 10:03:51 -05:00
Xavier Claessens cbf23f5eba printer: Add a newline after "else" 2024-02-26 10:03:51 -05:00
Xavier Claessens c25f0b1d54 printer: notin operator should be printed as "not in" 2024-02-26 10:03:51 -05:00
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.
2024-02-26 10:03:51 -05:00
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.
2024-02-25 21:17:54 -05:00
L. E. Segovia df2dbd06cf
docs: clarify environment variables take only ExternalProgram.full_path()
Fixes #10901
2024-02-25 20:49:47 -05:00
Ralf Gommers 9ec26051c6 Avoid use of deprecated command form on the cross compilation doc page 2024-02-25 15:39:38 -05:00
L. E. Segovia 05f4e0d6c5 cmake: Allow recasting a CMake dependency into an Apple framework
Fixes #12160
2024-02-25 01:59:39 +02:00
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.
2024-02-24 13:09:24 -08:00
Tristan Partin 0b19d1c015 Correct fs.read function name in exception message 2024-02-24 13:09:24 -08:00