On Mon, Feb 02, 2026 at 02:02:32PM +0100, Bruno Haible via Bug reports for the
GNU Texinfo documentation system wrote:
> Hi,
>
> The weekly CI, this week, fails on macOS 26. (Last week, the same build was
> OK.)
>
> Making all in XSTexinfo
> /bin/sh ../../libtool --tag=CC --mode=compile cc -DHAVE_CONFIG_H -I.
> -I../../../../tta/perl/XSTexinfo -I../..
> -I../../../../tta/perl/XSTexinfo/../../C/main
> -I../../../../tta/perl/XSTexinfo -I../../../../tta/perl/XSTexinfo/../../C
> -I../../../../tta/gnulib/lib -I../../gnulib/lib
> -I/opt/homebrew/opt/gettext/include -Wall -fno-common -DPERL_DARWIN
> -DNO_THREAD_SAFE_QUERYLOCALE -DNO_POSIX_2008_LOCALE
> -DHAS_BROKEN_LANGINFO_CODESET -DNO_LOCALE_COLLATE -fno-strict-aliasing -pipe
> -fstack-protector-strong -MT libparagraph_la-xspara.lo -MD -MP -MF
> .deps/libparagraph_la-xspara.Tpo -c -o libparagraph_la-xspara.lo `test -f
> 'xspara.c' || echo '../../../../tta/perl/XSTexinfo/'`xspara.c
> libtool: compile: cc -DHAVE_CONFIG_H -I. -I../../../../tta/perl/XSTexinfo
> -I../.. -I../../../../tta/perl/XSTexinfo/../../C/main
> -I../../../../tta/perl/XSTexinfo -I../../../../tta/perl/XSTexinfo/../../C
> -I../../../../tta/gnulib/lib -I../../gnulib/lib
> -I/opt/homebrew/opt/gettext/include -Wall -fno-common -DPERL_DARWIN
> -DNO_THREAD_SAFE_QUERYLOCALE -DNO_POSIX_2008_LOCALE
> -DHAS_BROKEN_LANGINFO_CODESET -DNO_LOCALE_COLLATE -fno-strict-aliasing -pipe
> -fstack-protector-strong -MT libparagraph_la-xspara.lo -MD -MP -MF
> .deps/libparagraph_la-xspara.Tpo -c ../../../../tta/perl/XSTexinfo/xspara.c
> -fno-common -DPIC -o .libs/libparagraph_la-xspara.o
> ../../../../tta/perl/XSTexinfo/xspara.c:25:10: fatal error: 'unitypes.h' file
> not found
> 25 | #include <unitypes.h>
> | ^~~~~~~~~~~~
> 1 error generated.
> make[5]: *** [libparagraph_la-xspara.lo] Error 1
>
> This suggests some missing -I option...
>
> Bruno
>
>
It should be found by the -I../../gnulib/lib (builddir) option as this
is a generated header file.
So it seems that this header file is not being output by gnulib for whatever
reason.
The output of gnulib-tool --add-import says to wrap the include in an #if:
You may need to add #include directives for the following .h files.
#include <getopt.h>
#include <locale.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <uchar.h>
#include <unistd.h>
#include "gettext.h"
#include "unicase.h"
#include "unictype.h"
#include "uninorm.h"
#include "unistr.h"
#include "uniwidth.h"
#if HAVE_ICONV
# include <iconv.h>
#endif
#if HAVE_LIBUNISTRING
# include <unitypes.h>
# include <unistr.h>
# include <uniconv.h>
# include <unistdio.h>
# include <uniname.h>
# include <unictype.h>
# include <uniwidth.h>
# include <uniwbrk.h>
# include <unilbrk.h>
# include <uninorm.h>
# include <unicase.h>
# include <uniregex.h>
# include <unistring/version.h>
#endif
My biggest suspicion is the various changes to Makefile.am and
configure.ac files regarding the HAVE_ICONV conditional and whether
C libraries are built, e.g. commit 5de817edcbf580f (2026-02-01) and
05bcc5cf10eefd5d68 (2026-01-29).
It would be of interest to know whether XSParagraph.la was built in this build
last week. I suspect that it should not be being built.
I notice in tta/perl/XSTexinfo/Makefile.am, XSParagraph.la and MiscXS.la
are anomalous in not being contained within an "if BUILD_C_CODE" conditional.
There has been a minor gnulib update which didn't touch any relevant
files, as far as I could tell (commit 44c0ca5580, 2026-02-01), but that
is another possibility.