I'm using a phone with Play services installed and have the same issue FWIW.
The string is newline terminated, not null terminated.
Meson's implementation language happens to ignore the trailing junk, here.
As far as I can tell, $AR is supported by meson too, see https://github.com/mesonbuild/meson/blob/82d0d1755d5c88e0415a3deb4102d4cdcf0d7435/mesonbuild/envconfig.py#L118
So it makes sense to support it in muon for the same reason.
Oh, I see what you mean. This is a bug. In
src/backend/common_args.cthe function relativize_paths tries to relativize paths written to build.ninja, relative to the build.ninja directory.
This hands off to
src/platform/path.c, given a build_root and the abspath of meson_options.txt, and path_relative_to() returns a broken value.
* input: base="/path/to/build" * path="/path/to/src/asd.c" * output: "../src/asd.c"
This much is true, but when base (the build_root) has a ".." in it, because the argument to
muon setupused relative paths of the form ../build_dir rather than absolute paths of the form
... then path_relative_to fails.
I'm not sure what this mean? samu doesn't know anything about the tree at all -- and it works the same with both meson and muon.
That is, samu must be run from the builddir or run with the -C argument.
The -C argument, where supported, has the following semantic:
It makes the program being run behave as though, before running the program, you had used the shell command
cdto change directories.
That's what it means with GNU make, that's what it means with samu, and that's what it means with muon.
Meson doesn't support a -C argument for
muon expects to be run inside the source directory, and accept the build directory as an argument. Meson supports that as well, but also supports specifying both as arguments.
with "meson" I generally create an out-of-tree build directory where "meson -C /path/to/build/directory setup" is run
This doesn't sound like meson's officially supported workflow?
So in the broken environment it isn't chdir'ing as instructed to with the workdir argument from meson.build?
There should not be anything wrong with the portability of meson.current_source_dir() and in comparison global_build_root definitely doesn't have a testbed subdirectory.
Specifically, it works fine for me with muon.