Subject: Re: bug#29824: Meson 0.44.0 is broken with guix.

From: Fis Trivial <[email-masked]>
Date: Sun, 14 Jan 2018 20:06:39 +0000

>>
>> 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"]
> 
> Sounds reasonable.  Does it work for you?  If so, could you provide a
> patch?
> 
> Ludo’.
> 

Or in this case, python script, we can change the wrapper script into something
like this:

#+BEGIN_SRC python
import os
os.environ['PYTHONPATH']="/gnu/store/.../site-packages${PYTHONPATH:+:}$PYTHONPATH"
exec(open("/gnu/store/n53zdnl4l3gm9sg15bfwxp0wdrwrvhg4-meson-0.44.0/bin/.meson-real").read())
#+END_SRC

or

#+BEGIN_SRC python
import os
os.environ['PYTHONPATH']="/gnu/store/.../site-packages${PYTHONPATH:+:}$PYTHONPATH"
exec(compile(
    open(
        "/gnu/store/n53zdnl4l3gm9sg15bfwxp0wdrwrvhg4-meson-0.44.0/bin/.meson-real".read(),
        "/gnu/store/n53zdnl4l3gm9sg15bfwxp0wdrwrvhg4-meson-0.44.0/bin/.meson-real",
        'exec'
    )))
#+END_SRC