Open LunarLambda opened 1 year ago
https://github.com/mesonbuild/meson/blob/master/mesonbuild/programs.py#L179
After checking through the code @eli-schwartz linked in the discussion I mentioned, I noticed it's part of ExternalProgram, which for command execution, counts the return values of get_compiler()
, find_program()
, as well as raw file paths, but not the outputs of build targets, like executable()
, or, as I expect, custom_target()
.
I will try to reproduce it based on this guess
This behaviour still happens identically as of Meson 1.3.1.
To reproduce, on Meson 1.0.0, Ninja 1.11.1, Python 3.10, on a Linux machine, although similar behaviour happens on Windows:
meson.build:
hi.py:
write.py:
copy.py:
It's important that hi.py and write.py do not have the executable bit set (unix), although in the case of
run-cfg
andwrite-cfg
, it failed even with it set (!!!)I didn't test
generator()
because that's a bit more involved, but since it spits outfile
s I assume it behaves similarly to theconfigure_file()
case, possibly with the same issue as above.version #s: Meson 1.0.0, Ninja 1.11.1, Python 3.10.9, Cross build, on Arch Linux