We need to have a look at the whole `detect_meson_py_location()`, not only on lines 47 to 51.

detect_meson_py_location() assumes the executable to be called "meson" or "meson.py", but in guix it currently is called ".meson-real" (see teh first entry in the trace-back).

The solution would be to get rid of the wrapper-scripts, see <https://lists.gnu.org/archive/html/guix-devel/2017-11/msg00041.html>

A work-around would be to substitute in file mesonbuild/mesonlib.py

meson_command = python_command + [detect_meson_py_location()]

by

meson_command = python_command + ["$OUT/bin/meson"]

(you got the idea, I assume). Of course we should verify detect_meson_py_location() is not used elsewhere and consider renaming that function to "disable" it.

-- 
Regards
Hartmut Goebel

| Hartmut Goebel          | h.goebel@crazy-compilers.com               |
| www.crazy-compilers.com | compilers which you thought are impossible |