On 01/06/2020 00:58, Ken Brown via Cygwin-apps wrote:
On 5/31/2020 4:52 PM, Jon Turney wrote:
On 29/05/2020 16:54, Jon Turney wrote:
On 27/05/2020 21:32, Ken Brown via Cygwin-apps wrote:
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.

Definitely a bug.  I'll see if I can take a look at it this weekend.

https://github.com/mesonbuild/meson/pull/7229

I made a meson 0.54.2-2 test package with those patches.

Thanks!  That gets me much further in the glib build.  I still have a problem with the docs, but I have no reason to think it's a meson bug. When running 'ninja install' I get the following:

Building documentation for gio
ERROR: Error in gtkdoc helper script:

ERROR: ['/usr/bin/gtkdoc-scangobj', '--types=/home/kbrown/src/glib/cygbuild/docs/reference/gio/gio.types', '--module=gio', '--run=', '--cflags=-I/home/kbrown/src/glib/cygbuild/gio -I/home/kbrown/src/glib/gio -pthread -I/home/kbrown/src/glib/cygbuild/gmodule -I/home/kbrown/src/glib/gmodule -I/home/kbrown/src/glib/cygbuild/. -I/home/kbrown/src/glib/. -I/home/kbrown/src/glib/cygbuild/glib -I/home/kbrown/src/glib/glib -I/home/kbrown/src/glib/cygbuild/gobject -I/home/kbrown/src/glib/gobject -D_GNU_SOURCE -fno-strict-aliasing -DG_ENABLE_DEBUG -Wduplicated-branches -Wimplicit-fallthrough -Wmisleading-indentation -Wstrict-prototypes -Wunused -Wno-unused-parameter -Wno-bad-function-cast -Wno-cast-function-type -Wno-pedantic -Wno-format-zero-length -Werror=declaration-after-statement -Werror=format=2 -Werror=implicit-function-declaration -Werror=init-self -Werror=missing-include-dirs -Werror=missing-prototypes -Werror=pointer-arith', '--ldflags=-L/home/kbrown/src/glib/cygbuild/gio -Wl,-rpath,/home/kbrown/src/glib/cygbuild/gio -L/home/kbrown/src/glib/cygbuild/glib -Wl,-rpath,/home/kbrown/src/glib/cygbuild/glib -L/home/kbrown/src/glib/cygbuild/gobject -Wl,-rpath,/home/kbrown/src/glib/cygbuild/gobject -L/home/kbrown/src/glib/cygbuild/gmodule -Wl,-rpath,/home/kbrown/src/glib/cygbuild/gmodule -lgio-2.0 -lgmodule-2.0 -lglib-2.0 -lgobject-2.0 -lz -pthread -lintl -lpcre -liconv -lffi', '--cc=cc', '--ld=cc', '--output-dir=/home/kbrown/src/glib/cygbuild/docs/reference/gio'] failed with status 127

I'll see what I can figure out, but as I said, it doesn't look to me like a meson issue.

This looks like the problem that my second patch was supposed to fix, so I guess I've messed up somewhere.

(gtkdoc-scangobj builds and runs a executable linked with the gio shared library. meson needs to set PATH appropriately so that shared library can be loaded)

Reply via email to