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)