On 5/24/2020 11:56 AM, Jon Turney wrote:
So, yeah, this is a meson bug, which I will work on (if this command ends up in the build.ninja, it's executed by ninja with 'sh -c', but if it ends up in a pickle, it's executed by meson with execve())

It looks like I've bumped into a variation of this bug. While attempting to build the documentation for the latest glib2.0 release, I got the following:

FAILED: docs/reference/gobject/gobject-decl.txt
/usr/bin/meson --internal exe --unpickle /home/kbrown/src/cygpackages/glib2.0/glib2.0-2.64.3-1.x86_64/src/glib-2.64.3/x86_64-pc-cygwin/meson-private/meson_exe_meson_1ed2fbe217cac49ae4affd274e0d4a729085a002.dat ['/usr/bin/meson', '--internal', 'gtkdoc', '--sourcedir=/home/kbrown/src/cygpackages/glib2.0/glib2.0-2.64.3-1.x86_64/src/glib-2.64.3', '--builddir=/home/kbrown/src/cygpackages/glib2.0/glib2.0-2.64.3-1.x86_64/src/glib-2.64.3/x86_64-pc-cygwin', '--subdir=docs/reference/gobject', '--headerdirs=gobject', '--mainfile=gobject-docs.xml', '--modulename=gobject', '--

[...]

/docs/reference/gobject/tut_tools.xml', '--cc=gcc', '--ld=gcc', '--cflags=-I@BUILD_ROOT@/gobject -I../gobject -pthread -I@BUILD_ROOT@/. -I../. -I@BUILD_ROOT@/glib -I../glib -I@BUILD_ROOT@/docs/reference/gobject/. -I../docs

[...]

So @BUILD_ROOT@ didn't get replaced by the build root after pickling and unpickling. Needless to say, this produced errors like:

cc1: error: @BUILD_ROOT@/glib: No such file or directory [-Werror=missing-include-dirs]

I can give you a precise recipe for reproducing this bug if it would help your debugging.

Ken

Reply via email to