Hello,

I have been testing the CI with --disable-perl-xs and
--enable-additional-checks, which leads to a C-only build (no Perl
flags, no Perl XS) as long as the dependencies are there (mainly iconv).
In this setup, the tta/C shared libraries are built (though they are not
used by anything), and the texistatic executable is built too (no Perl
headers used, no link to Perl, no call to Perl, statically linked).
ctexi2any is not built in this setup.

It fails on the Cygwin 32 platform when linking libtexinfo-convert with
many undefined references errors to symbols that are supposed to be in
libtexinfo.dll.  (As a side note, the Cygwin 32 distribution is
unmaintained.)

Comparing with the flags present with Perl, the following link flags are
in Perl flags and could explain why it does not fail when Perl flags are
used:
 -Wl,--enable-auto-import -Wl,--export-all-symbols
but it could be something else.


The link command and an example of failures (there are many more):

2026-10-25T10:38:56.1347576Z libtool: link: gcc -shared  
convert/.libs/libtexinfo_convert_la-converter.o 
convert/.libs/libtexinfo_convert_la-convert_indices.o 
convert/.libs/libtexinfo_convert_la-cmd_converter.o 
convert/.libs/libtexinfo_convert_la-converters_options.o 
convert/.libs/libtexinfo_convert_la-convert_to_plaintext.o 
convert/.libs/libtexinfo_convert_la-convert_to_info.o 
convert/.libs/libtexinfo_convert_la-convert_html.o 
convert/.libs/libtexinfo_convert_la-format_html.o 
convert/.libs/libtexinfo_convert_la-html_converter_init_options.o 
convert/.libs/libtexinfo_convert_la-html_converter_finish.o 
convert/.libs/libtexinfo_convert_la-html_conversion_state.o 
convert/.libs/libtexinfo_convert_la-html_prepare_converter.o 
convert/.libs/libtexinfo_convert_la-html_converter_api.o 
convert/.libs/libtexinfo_convert_la-plaintexinfo_converter_api.o 
convert/.libs/libtexinfo_convert_la-plaintext_paragraph.o 
convert/.libs/libtexinfo_convert_la-rawtext_converter_api.o  
-Wl,--whole-archive ./.libs/libcallperl_libtexinfo_convert.a 
-Wl,--no-whole-archive  ./.libs/libtexinfo.dll.a 
/cygdrive/d/a/ci-check/ci-check/texinfo-7.3.20261025dev/build/tta/C/.libs/libtexinfo.dll.a
 -liconv -lintl  -g -O2   -o .libs/cygtexinfo-convert-1.dll 
-Wl,--enable-auto-image-base -Xlinker --out-implib -Xlinker 
.libs/libtexinfo-convert.dll.a
2026-10-25T10:38:56.1348171Z 
/usr/lib/gcc/i686-pc-cygwin/11/../../../../i686-pc-cygwin/bin/ld: 
convert/.libs/libtexinfo_convert_la-converter.o: in function 
`free_output_unit_files_file':
2026-10-25T10:38:56.1348562Z 
/cygdrive/d/a/ci-check/ci-check/texinfo-7.3.20261025dev/build/tta/C/../../../tta/C/convert/converter.c:2345:
 undefined reference to `rpl_free'
...
2026-10-25T10:38:56.1351041Z 
/cygdrive/d/a/ci-check/ci-check/texinfo-7.3.20261025dev/build/tta/C/../../../tta/C/convert/converter.c:2202:
 undefined reference to `fatal'

Link to the last CI run (need to log in in github to access the logs)
https://github.com/gnu-texinfo/ci-check/actions/runs/40192372680


Any idea, recommendation, similar situation seen?

-- 
Pat

Reply via email to