In FreeBSD 14.1-p5, Poudriere failed to build this port. The build ends with this message: Program /usr/local/bin/g-ir-compiler found: YES (/usr/local/bin/g-ir-compiler) Program xgettext found: YES (/usr/local/bin/xgettext) Program msgfmt found: YES (/usr/local/bin/msgfmt) Program msginit found: YES (/usr/local/bin/msginit) Program msgmerge found: YES (/usr/local/bin/msgmerge) Program xgettext found: YES (/usr/local/bin/xgettext) Program rst2man rst2man.py found: NO Program rst2html5 rst2html5.py found: NO doc/meson.build:20:12: ERROR: Program 'rst2html5 rst2html5.py' not found or not executable A full log can be found at /wrkdirs/usr/ports/devel/json-glib/work/json-glib-1.10.0/_build/meson-logs/meson-log.txt WARNING: Running the setup command as `meson [options]` instead of `meson setup [options]` is ambiguous and deprecated. ===> Script "configure" failed unexpectedly. Please report the problem to desktop@FreeBSD.org [maintainer] and attach the "/wrkdirs/usr/ports/devel/json-glib/work/json-glib-1.10.0/_build/meson-logs/meson-log.txt" including the output of the failure of your make command. Also, it might be a good idea to provide an overview of all packages installed on your system (e.g. a /usr/local/sbin/pkg-static info -g -Ea). *** Error code 1 Stop. make: stopped in /usr/ports/devel/json-glib =>> Cleaning up wrkdir ===> Cleaning for json-glib-1.10.0 build of devel/json-glib | json-glib-1.10.0 ended at Tue Oct 15 20:50:09 -03 2024 build time: 00:00:04 !!! build failure encountered !!!
What are your currently set options?
Created attachment 254280 [details] Full log Full log.
(In reply to Wassily from comment #2) Hi, I added the full log. This is my make.conf CPUTYPE?=znver3 DISABLE_LICENSES=yes ALLOW_MAKE_JOBS=yes MAKE_JOBS_NUMBER=12 #MAKE_JOBS_UNSAFE=yes ### #MAKE_JOBS_UNSAFE=yes #WITH_CCACHE_BUILD=YES ############################ OPTIONS_SET+=AVX OPTIONS_SET+=AVX2 OPTIONS_SET+=OPTIMIZED_CFLAGS OPTIONS_SET+=CPU_OPTS OPTIONS_SET+=OPENMP OPTIONS_SET+=SIMD OPTIONS_SET+=LTO OPTIONS_SET+=GMP OPTIONS_SET+=NONFREE OPTIONS_SET+=ZIMG ##### OPTIONS_UNSET+= GSSAPI_BASE OPTIONS_SET+= GSSAPI_MIT ##### DEFAULT_VERSIONS+= LLVM=18 GCC=14 ssl=openssl33 ##### .if ${.CURDIR:M*/www/firefox} LDFLAGS+= -lm .endif #####
Same here, poudriere run with all options at their defaults: ... Program xgettext found: YES (/usr/local/bin/xgettext) Program rst2man rst2man.py found: NO Program rst2html5 rst2html5.py found: NO doc/meson.build:20:12: ERROR: Program 'rst2html5 rst2html5.py' not found or not executable A full log can be found at /wrkdirs/usr/ports/devel/json-glib/work/json-glib-1.10.0/_build/meson-logs/meson-log.txt WARNING: Running the setup command as `meson [options]` instead of `meson setup [options]` is ambiguous and deprecated. ===> Script "configure" failed unexpectedly. Please report the problem to desktop@FreeBSD.org [maintainer] and attach the "/wrkdirs/usr/ports/devel/json-glib/work/json-glib-1.10.0/_build/meson-logs/meson-log.txt" including the output of the failure of your make command. Also, it might be a good idea to provide an overview of all packages installed on your system (e.g. a /usr/local/sbin/pkg-static info -g -Ea). This seems to be after ports 89965357906bd13197a4e79843ab01b6022298ff.
It looks like it tries to use /usr/local/bin/rst2html5 from py-docutils, which is not installed during the dependencies setup: =======================<phase: build-depends >============================ ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 ===> json-glib-1.10.0 depends on package: py311-gi-docgen>=0 - not found ===> Installing existing package /packages/All/py311-gi-docgen-2022.2.pkg [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] Installing py311-gi-docgen-2022.2... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Installing py311-Jinja2-3.1.4... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | `-- Installing py311-Babel-2.16.0... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | | `-- Installing py311-setuptools-63.1.0_1... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | | `-- Installing python311-3.11.10... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | | | `-- Installing gettext-runtime-0.22.5... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | | | `-- Installing indexinfo-0.3.1... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | | | `-- Extracting indexinfo-0.3.1: .... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | | | `-- Extracting gettext-runtime-0.22.5: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | | | `-- Installing libffi-3.4.6... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | | | `-- Extracting libffi-3.4.6: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | | | `-- Installing mpdecimal-4.0.0... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | | | `-- Extracting mpdecimal-4.0.0: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | | | `-- Installing readline-8.2.13_2... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | | | `-- Extracting readline-8.2.13_2: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | | `-- Extracting python311-3.11.10: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | | `-- Extracting py311-setuptools-63.1.0_1: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | `-- Extracting py311-Babel-2.16.0: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | `-- Installing py311-markupsafe-2.1.5_1... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] | `-- Extracting py311-markupsafe-2.1.5_1: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Extracting py311-Jinja2-3.1.4: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Installing py311-markdown-3.6... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Extracting py311-markdown-3.6: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Installing py311-pygments-2.18.0... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Extracting py311-pygments-2.18.0: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Installing py311-smartypants-2.0.1... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Extracting py311-smartypants-2.0.1: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Installing py311-toml-0.10.2_1... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Extracting py311-toml-0.10.2_1: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Installing py311-typogrify-2.0.7... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Extracting py311-typogrify-2.0.7: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] Extracting py311-gi-docgen-2022.2: .......... done ===== Message from python311-3.11.10: -- Note that some standard Python modules are provided as separate ports as they require additional dependencies. They are available as: py311-gdbm databases/py-gdbm@py311 py311-sqlite3 databases/py-sqlite3@py311 py311-tkinter x11-toolkits/py-tkinter@py311 ===> json-glib-1.10.0 depends on package: py311-gi-docgen>=0 - found ===> Returning to build of json-glib-1.10.0 ===> json-glib-1.10.0 depends on executable: meson - not found ===> Installing existing package /packages/All/meson-1.5.2.pkg [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] Installing meson-1.5.2... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Installing ninja-1.11.1,4... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Extracting ninja-1.11.1,4: ........ done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] Extracting meson-1.5.2: .......... done ===> json-glib-1.10.0 depends on executable: meson - found ===> Returning to build of json-glib-1.10.0 ===> json-glib-1.10.0 depends on executable: ninja - found ===> json-glib-1.10.0 depends on file: /usr/local/bin/python3.11 - found ===> json-glib-1.10.0 depends on package: pkgconf>=1.3.0_1 - not found ===> Installing existing package /packages/All/pkgconf-2.3.0,1.pkg [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] Installing pkgconf-2.3.0,1... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] Extracting pkgconf-2.3.0,1: .......... done ===> json-glib-1.10.0 depends on package: pkgconf>=1.3.0_1 - found ===> Returning to build of json-glib-1.10.0 ===> json-glib-1.10.0 depends on executable: msgfmt - not found ===> Installing existing package /packages/All/gettext-tools-0.22.5.pkg [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] Installing gettext-tools-0.22.5... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Installing libtextstyle-0.22.5... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Extracting libtextstyle-0.22.5: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] Extracting gettext-tools-0.22.5: .......... done ===> json-glib-1.10.0 depends on executable: msgfmt - found ===> Returning to build of json-glib-1.10.0 =========================================================================== =======================<phase: lib-depends >============================ ===== env: USE_PACKAGE_DEPENDS_ONLY=1 USER=root UID=0 GID=0 ===> json-glib-1.10.0 depends on shared library: libglib-2.0.so - not found ===> Installing existing package /packages/All/glib-2.80.5,2.pkg [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] Installing glib-2.80.5,2... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Installing libiconv-1.17_1... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Extracting libiconv-1.17_1: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Installing pcre2-10.43... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Extracting pcre2-10.43: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Installing py311-packaging-24.1... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] `-- Extracting py311-packaging-24.1: .......... done [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] Extracting glib-2.80.5,2: .......... done ==> Running trigger: gio-modules.ucl Generating GIO modules cache ==> Running trigger: glib-schemas.ucl Compiling glib schemas No schema files found: doing nothing. ===> json-glib-1.10.0 depends on shared library: libglib-2.0.so - found (/usr/local/lib/libglib-2.0.so) ===> Returning to build of json-glib-1.10.0 ===> json-glib-1.10.0 depends on shared library: libintl.so - found (/usr/local/lib/libintl.so) ===> json-glib-1.10.0 depends on shared library: libgirepository-1.0.so - not found ===> Installing existing package /packages/All/gobject-introspection-1.78.1_2,1.pkg [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] Installing gobject-introspection-1.78.1_2,1... [llvm-19-update-n272786-24958b70830a-amd64-local-job-01] Extracting gobject-introspection-1.78.1_2,1: .......... done ===> json-glib-1.10.0 depends on shared library: libgirepository-1.0.so - found (/usr/local/lib/libgirepository-1.0.so) ===> Returning to build of json-glib-1.10.0 =========================================================================== =======================<phase: configure >============================
Ah, the MANPAGES option is off by default, I see. So apparently meson still tries to detect support for it? Or maybe it's doing that for the docs, I'm unsure.
The docs/meson.build file has: rst2man = find_program('rst2man', 'rst2man.py', required: get_option('man')) rst2html5 = find_program('rst2html5', 'rst2html5.py', required: get_option('documentation')) so I think that you will have to depend on py-docutils also if only the DOCS option is enabled, and MANPAGES is disabled.
Created attachment 254285 [details] Add dependency on py-docutils for DOCS option This is a rough patch that works for me, not sure if it is good style to repeat the same depends twice?
(In reply to Dimitry Andric from comment #8) I'd say this is absolutely correct, because it simply reflects dependencies defined by upstream.
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=63d01f34f2ffba4cb772ab6c7260c5d3fda987e1 commit 63d01f34f2ffba4cb772ab6c7260c5d3fda987e1 Author: Charlie Li <vishwin@FreeBSD.org> AuthorDate: 2024-10-16 12:41:42 +0000 Commit: Charlie Li <vishwin@FreeBSD.org> CommitDate: 2024-10-16 12:41:42 +0000 devel/json-glib: add missing build dependency for DOCS PR: 282129 Reported by: Wassily <wassily.s [at] protonmail [dot] com> Pointy hat to: vishwin devel/json-glib/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
Thanks everyone for catching this!