Way back in Meson 0.25, support was added to `vala_args` for Files.
Strangely, this was never added to any other language, though it's been
discussed before. For type safety, it makes more sense to handle this in
the interpreter level, and pass only strings into the build IR.
This is accomplished by adding a `depend_files` field to the
`BuildTarget` class (which is not exposed to the user), and adding the
depend files into that field, while converting the arguments to relative
string paths. This ensures both the proper build dependencies happen, as
well as that the arguments are always strings.
This tests stable maintenance branches, to ensure that build directories
created with older versions of Meson continue to work without wiping,
after updating to a bugfix release.
- Exceptions raised during subproject setup were ignored.
- Allow c_stdlib in native file, was already half supported.
- Eliminate usage of subproject variable name by overriding
'<lang>_stdlib' dependency name.
D lang compilers have an option -release (or similar) which turns off
asserts, contracts, and other runtime type checking. This patch wires
that up to the b_ndebug flag.
Fixes#7082
wrap: add imposter URL test
this test shows that meson wrap subsystem historically allows
imposter URLs like https://wrapdb.mesonwrap.com.evil/v1/foo.zip
while the new code does no.
* add support for wrap of mercurial repo, and a test with a clone of the sample subproject used for the git test into a mercuriel repo.
* Added myself to author list, and switched the URL of the sample subproject in the wrap file to one under the control of the project's maintainers.
Traceback (most recent call last):
File "../../../meson.py", line 184, in <module>
app.generate()
File "../../../meson.py", line 130, in generate
intr.run()
File "/home/brain/git/upstream/meson/interpreter.py", line 828, in run
self.evaluate_codeblock(self.ast)
File "/home/brain/git/upstream/meson/interpreter.py", line 850, in
evaluate_codeblock
raise e
File "/home/brain/git/upstream/meson/interpreter.py", line 844, in
evaluate_codeblock
self.evaluate_statement(cur)
File "/home/brain/git/upstream/meson/interpreter.py", line 897, in
evaluate_statement
return self.method_call(cur)
File "/home/brain/git/upstream/meson/interpreter.py", line 1620, in
method_call
return obj.method_call(method_name, args, kwargs)
File "/home/brain/git/upstream/meson/interpreter.py", line 625, in
method_call
value = fn(state, args, kwargs)
File "/home/brain/git/upstream/meson/modules/rpm.py", line 98, in
generate_spec_template
fn.write('BuildRequires: %s\n' % ' '.join(prog.fullpath))
TypeError: sequence item 0: expected str instance, NoneType found
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>