Commit Graph

13125 Commits

Author SHA1 Message Date
Eli Schwartz 174e05d0f6
tests: fix qt project test when running with qt4
*.qrc files converted to C++ sources could make use of Qt headers, and
in practice for qt4 they seem to. Since this is Qt code to begin with,
it makes sense to depend on the Qt being targeted regardless of version.
2022-11-17 19:10:51 -05:00
Eli Schwartz 193092e26b
fix deprecated use of meson builddir/ in testsuite 2022-11-17 19:10:51 -05:00
Dylan Baker 9e9a9ac4de backend/ninja: replace ` ` with `_` in rust crate-names
Because spaces aren't allowed and result in compilation failures
2022-11-17 19:07:15 -05:00
Dylan Baker 8526b8c1a9 modules/rust: Also include generated sources for tests
When we create a test from a non-executable, we weren't copying the
generated sources, just the static ones.
2022-11-17 19:07:15 -05:00
Dylan Baker e45367169f build: fix annotations of BuildTarget derived classes
Which thinks `sources` should be `List[File]`, but they should be
`List[SourceOutputs]`
2022-11-17 19:07:15 -05:00
Eli Schwartz 32b14b1bb5
hotdoc module: run hotdoc as an external command during configure
We need to run it as an external command at build time anyway, and we
detect it by looking it up as an ExternalProgram. It seems odd to then
import it into Meson's python interpreter and run the main function.

Moreover, this errors out when you are running two different pythons,
one for Meson and one for hotdoc. For example, when hotdoc is installed
normally, but you're testing Meson against a nondefault newer version of
python.
2022-11-17 16:17:40 -05:00
Eli Schwartz 0d3be23377 build: use the unified pickle loader to handle more edge cases
We have divergent implementations of loading a pickled *.dat file. The
Build class loader has a better error message. But the generic loader
handles TypeError and ModuleNotFoundError. Merge the implementations,
and use it for Build as well.

Fixes #11051
2022-11-17 12:56:04 -08:00
Zihua Wu 3a4aa109b4 Fix a typo in the CUDA template
The original version will output something like `xtakes no arguments`, and the modified version will correctly output `x takes no arguments`.
2022-11-17 10:25:29 -08:00
Eli Schwartz 134e299eda mdist: fix error when running tests with a cross file
Since commit 1420d0dace we use coredata's
cmd_line.txt handler to get the right setup arguments. But there's a bug
in that -- it mishandles cross/native files, producing invalid
descriptions of the command line. The only other place this was used,
though, is when generating meson-log.txt.

Fix it to produce correctly formatted arguments.

Fixes #10980
2022-11-17 10:08:58 -08:00
Eli Schwartz 68a84f6535
fix confusing azure pipelines status for coverage
The coverage report was always the final section of the main test run.
This made it hard to scroll around and find exactly what went wrong --
particularly as not everyone realizes that coverage isn't part of the
test run, but also because the output from coverage is... excessively
long.

This mirrors what we do in our other workflows.
2022-11-16 19:28:24 -05:00
Xeonacid 47d1a55e78 Fix test_rust_clippy for rust 1.65
clippy changed output message
fix #11004
2022-11-16 13:16:47 -05:00
Xavier Claessens 8232665849 Fix deprecation message, the function name is fs.copyfile() 2022-11-16 11:58:16 -05:00
Tristan Partin bfc813200c Change the warning generated by importing an unstable module to non-fatal
Penalizing users for helping to test unstable modules really makes no
sense. As a fatal warning, users can no longer use
`--fatal-meson-warnings`.
2022-11-16 03:17:05 -05:00
Alan Coopersmith 8ee4660788 linkers: Don't build thin archives on illumos or Solaris
The system linkers don't support this particular GNU extension on
these OS'es, so don't build them there.

Based on an OpenIndiana patch created by @alarcher. Closes #9882.
2022-11-16 09:49:48 +05:30
Tristan Partin a2cac72d9b Change `unstable_external_project` to `unstable-external_project`
Apparently this is a misspelling even though it has been in the docs
since the creation of the module.
2022-11-15 19:33:32 -05:00
tastytea 8dfa55005e escape asterisk used for footnote
unescaped it's turned into a list item
2022-11-15 15:51:01 +02:00
Eli Schwartz 0e5d632a62
CI: force macOS to use brew's python at all costs
The default actions one is broken in two ways, and additionally
overwrote homebrew's symlinks to begin with.
2022-11-14 19:16:58 -05:00
Eli Schwartz aa84c55bef
tests: fix edge case where non-default python is used, by skipping it
In a couple of python module tests, we try to test things that rely on
the default python being the same one we look up in the python module.
This is unsolvable for the deprecated python3 module, as it actually
uses the in-process version of python for everything. For the python
module, we could actually look up the default system python instead of
the one we are running with, but then we wouldn't be testing the
functionality of that alternative python... and also the install
manifest tests would see files installed for the wrong version of
python, and report a combination of missing+extra files...

Solve both tests by just skipping the parts we cannot check.
2022-11-14 19:16:57 -05:00
Hagen Möbius 6860e42c06 Raise an error, if the file element in a resource file has no text.
- minor cleanups in the vicinity
2022-11-14 00:26:55 +02:00
Hagen Möbius 0bfe776132 Update Qt6-module.md
- qt5 -> qt6
- remove version information from when the Qt6 module was not a thing
- linked to dependency function
- highlight version information with *...* and placing it at the front of options or on new lines in text
- reformatted for shorter lines
2022-11-13 21:48:01 +02:00
Ralf Gommers 3646697892 Add a note on relocatable pkg-config files to reference manual. 2022-11-13 14:37:45 -05:00
Kleis Auke Wolthuizen e4538a0362 docs: installation tags for the GNOME module
PR #10826 adds a couple of missing installation tags for the GNOME
module, ensure we document these.
2022-11-13 11:16:37 -05:00
Jussi Pakkanen 611bd4e6db Add CMake to cross file.
Original patch by Helmut Grohne.

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1023744
2022-11-12 14:21:47 +02:00
Jussi Pakkanen 318579b367 Fix ppc64 detection in Debian.
Original patch by Helmut Grohne.

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1023744
2022-11-12 14:21:47 +02:00
Guilherme Janczak 69dae6395d docs: improve ESL text, fix some English errors
Fixes:
- Incorrect, redundant, or overabundant usage of "just"
- Missing punctuation
- Missing "the"
- Parenthesized text far from what it describes

There are some subjective changes, I hope those aren't controversial.
2022-11-11 22:24:19 +02:00
Will Thompson f9328f7757 Fix typo in dependency() 'names' docstring [skip ci] 2022-11-11 11:52:28 -05:00
Guilherme Janczak 3336cc8b27 fix typo 2022-11-10 21:56:06 -05:00
Denis Fortin b78ebc6741 Fix options overrides for vsbackend
Use OptionOverrideProxy instead of pure options.
Closes #10393
2022-11-10 06:19:41 -05:00
Xavier Claessens 9463595b11 genrelnotes: Jump to version 1.0.0 2022-11-09 17:20:41 +02:00
Xavier Claessens 273605f859 Fix since annotation for str "in" operator 2022-11-08 20:48:32 +02:00
Eli Schwartz bcc127b3fd hotdoc module: add dedicated depends kwarg, deprecate file deps in dependencies
We consistently use the "dependencies" kwarg to refer to C-like
CFLAGS/LDFLAGS interfaces. And for hotdoc, we actually accept libraries
for this as well, as we may want to document their (generated?) sources,
so we want their CFLAGS too.

But we also accepted custom targets and just added a build order
dependency on these, which was odd and typically we call that "depends".
Let's deprecate this in favor of the depends kwarg.
2022-11-07 09:19:56 -05:00
Eli Schwartz 726353460a hotdoc module: use less confusing names
Internally we pass this as extra_depends to the CustomTarget
initializer, so it makes sense to call it that rather than confusing the
topic by referring to "dependencies", a term that indicates
CFLAGS/LDFLAGS interfaces.
2022-11-07 09:19:56 -05:00
Eli Schwartz 0b7d935a84
target python 3.10 as the mypy language version
mypy has a bug when running on/for 3.11 which results in incorrect
analysis of the codebase, specifically due to enum.Enum's self.name

See:

https://github.com/python/typeshed/issues/7564
https://github.com/python/mypy/issues/12483
2022-11-06 12:20:36 -05:00
Xavier Claessens a6db624aad Implement `in` operator on string 2022-11-06 17:22:00 +02:00
Jussi Pakkanen 8abbcf7887 Bump version number for new development. 2022-11-06 17:05:06 +02:00
Jussi Pakkanen b9d19afb9a Bump version number for release. 2022-11-06 15:42:20 +02:00
Jussi Pakkanen c1e9a0ea60 Generate release notes for 0.64. 2022-11-06 15:42:05 +02:00
Ole André Vadla Ravnås fa86a9d96d nasm: Fix get_optimization_args() 2022-11-05 19:02:27 -04:00
Eli Schwartz 97ec20e901
depfixer: handle darwin dependencies with non-ASCII paths
I assume there's no real reason this cannot happen, perhaps if the meson
source directory has one. So we should use Popen_safe for safety
reasons.
2022-11-03 17:51:35 -04:00
Eli Schwartz af41eb6e9b
squelch an EncodingWarning we don't care about
We would like to use the default value (the one python urged us not to
use), but without getting a warning for it. Luckily, we have the correct
value already, so we can pass it manually to avoid the complaint.
2022-11-03 15:44:41 -04:00
Eli Schwartz 608a6196a0
python 3.11: suppress an incorrect EncodingWarning
python 3.11 adds a warning that in 3.15, UTF-8 mode will be default.
This is fantastic news, we'd love that. Less fantastic: this warning is
silly, we *want* these checks to be affected. Plus, the recommended
alternative API would (in addition to warning people when UTF-8 mode
removed the problem) also require using a minimum python version of 3.11
(in which the warning was added) or add verbose if/else soup.

The simple, and obvious, approach is to add a warnings filter to hide
it.
2022-11-03 15:44:41 -04:00
Eli Schwartz c95001b130
dependencies: make the hdf5 dependency use Popen_safe
It is, after all, "safe". ;) That's why it exists. There's no reason to
think listing all pkg-config entries cannot print unicode descriptions,
it's absolutely possible, and we should handle it properly if we
encounter it.
2022-11-03 00:26:28 -04:00
Garrett D'Amore 535bd377b4 Document binary literals. 2022-11-02 17:23:07 -04:00
Xavier Claessens f5871e240d backends: Try guessing install tag for all installed files
It was only trying to guess install tag, and log missing tags, for files
installed by install_data(). Do it also for all other files, especially
custom_taget() that commonly installs generated headers.
2022-11-02 14:53:35 +02:00
Jussi Pakkanen 43e274c733 Bump version for rc2. 2022-11-01 21:00:43 +02:00
Xavier Claessens 64a6969def nasm: Implement get_crt_compile_args()
This fix a crash when using NASM on Windows.
2022-11-01 18:51:10 +02:00
Jussi Pakkanen 060595f0d0 Add regression test for pch link_whole bug. 2022-11-01 18:43:08 +02:00
L. E. Segovia 7e5b0760ce minstall: make do_strip run with -Sx for macOS targets
This commit also adds some extra symbol noise to lib.c, in order to aid
detection of the debug information with nm.

Fixes #10943
2022-11-01 17:56:18 +02:00
Eli Schwartz 21f86fa902
Revert "backends/ninja: run `ranlib -c $out` when using the apple ar"
This reverts commit bdc6f243e9.

This is part of #10628 and needs to be reverted, as it breaks other
things.

See https://github.com/mesonbuild/meson/pull/10628#issuecomment-1230560772
2022-10-31 23:22:07 -04:00
Eli Schwartz f9d6ae8d57
Revert "tests: Test extern'd globals on MacOS with the Apple Archiver"
This reverts commit d285be763f.

This is part of #10628 and needs to be reverted, as it breaks other
things.

See https://github.com/mesonbuild/meson/pull/10628#issuecomment-1230560772
2022-10-31 23:22:07 -04:00