Age | Commit message (Collapse) | Author | Files | Lines |
|
Link language in libraries
|
|
|
|
|
|
Initially produced using:
for d in "test cases/failing/"* ; do rm -r _build ; ./meson.py setup "$d" _build | grep ERROR >"$d"/expected_stdout.txt; done
then converted to json with jq using:
jq --raw-input --slurp 'split("\n") | {stdout: map({line: select(. != "")})}' expected_stdout.txt >test.json
or merged with existing json using:
jq --slurp '.[0] + .[1]' test.json expected.json >test.json.new
v2:
Add some comments to explain the match when it isn't totally obvious
v3:
Add or adjust existing re: in expected output to handle '/' or '\' path
separators appearing in message, not location.
v4:
Put expected stdout in test.json, rather than a separate expected_stdout.txt file
Park comments in an unused 'comments' key, as JSON doesn't have a syntax for comments
|
|
|
|
If the feature hadn't been broken in the first place it would have
worked on them anyway, so we might as well expose it. I'm loathe to do
it because one of the best features of meson in a mixed C/C++ code base
is that meson figures out the right linker every time, but there are
cases people have where they want to force a linker. We'll let them keep
the pieces.
|
|
It's cool we have a fortran test, but we should have a C/C++ test,
especially for C++ extern "C".
|
|
ConfigureFiles
These things are all known to be ready when these scripts are run, and
thus they can safely consume them.
|
|
This adds support for Files, CustomTarget, Indexs of CustomTargets,
ConfigureFiles, ExternalPrograms, and Executables.
Fixes: #1234
Fixes: #3552
Fixes: #6175
|
|
|
|
Adds the `tools` section to `tests.json` to specify requirements
for the tools in the environment. All tests that fail at least
one tool requirements check are skipped.
|
|
|
|
- ExternalProgramHolder has path() method while CustomTargetHolder and
BuildTargetHolder have full_path().
- The returned ExternalProgramHolder's path() method was broken, because
build.Executable object has no get_path() method, it needs the
backend.
- find_program('overridden_prog', version : '>=1.0') was broken because
it needs to execute the exe that is not yet built. Now assume the
program has the (sub)project version.
- If the version check fails, interpreter uses
ExternalProgramHolder.get_name() for the error message but
build.Executable does not implement get_name() method.
|
|
|
|
project test junit schema + a few more uses
|
|
See https://gitlab.freedesktop.org/gstreamer/gst-build/-/issues/85.
|
|
|
|
This is a nice way to ensure that all of the methods continue to work
|
|
|
|
This allows us to test the one at a time, and the many at a time
functions without the second test getting cached. We really don't want
to get cached.
|
|
By building the generator for the build machine always, and only for the
host machine if an exe_wrapper is available. This makes sense to me as
generally you are going to build the generator for the build machine,
not the host machine, but testing on the host machine makes sense too.
|
|
cmake: some fixes for add_custom_command
|
|
Fix library(name_prefix: [])
|
|
|
|
|
|
|
|
|
|
|
|
Also test library(name_suffix: [])
|
|
|
|
enhance fortran args tests
|
|
|
|
CI: Maintain docker images with GitHub Actions
|
|
The arithmetic operators are now split into two groups:
* The add/sub group: +, -
* The mul/div group: *, /, %
All operators within the same group are left-associative and have equal
precedence. The mul/div group has a higher precedence than the add/sub
group, as one would expect.
Previously every operator had a different precedence and was
right-associative, which resulted in surprising behavior.
This is a potentially breaking change for projects that relied on the
old incorrect behavior.
Fixes #6870
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Use DependencyFactory and ConfigToolDependency for MPI
|
|
Redetect machines when languages change
|
|
So we can force the use of pkg-config or config-tool
|
|
|
|
Make linker selection environment variables match docs
|
|
This make relative pathes shorter an too give a chance to
de-duplicate -isystem flags just like -I flags.
Fix common test case 203 for OSX build host too
|
|
We really should be documenting these in an easy to find and reference
place.
|
|
Fix d compiler abstractions
|
|
Some compilers that act as linker drivers (dmd and ldc) need to split
arguments that GCC combines with , (ie, -Wl,-foo,bar -> -L=-foo -L=bar).
As such we need to detect that the previous argument contained -soname,
and not wrap that in a --start-group/--end-group
This modifies the shared library test to demonstrate the problem, with a
test case.
Fixes #6359
|