On Wed, Jan 28, 2026 at 07:10:25PM +0000, Gavin Smith wrote:
> > After some thinking, maybe a possibility would be to recurse in C if
> > either XS is enabled, --enable-additional-checks is passed or any SWIG
> > interface is built, as SWIG interfaces may work and provide an
> > interesting interface even if XS is disabled.
> 
> How does the following look?

It looks good to me.  The HAVE_ICONV in tta/C/Makefile.am could additionally
be removed.

> diff --git a/tta/Makefile.am b/tta/Makefile.am
> index 2133586853..375b873463 100644
> --- a/tta/Makefile.am
> +++ b/tta/Makefile.am
> 
> It seems completely wrong that code the size of the C texi2any code
> should block a successful build in cases when it is not used, as was the
> case in some of the build failures reported by Bruno for texinfo-7.2.90
> (e.g the "texinfo-7.2.90 on AIX" thread).

I am not so sure, this allowed to find a 'bug' and fix it.

> There is one more issue which is the amount of time spent to run
> the configure checks (that mostly come from gnulib) under tta/.
> In texinfo-7.2, the configure.ac file for texi2any C code was under
> tp/Texinfo/XS.  Now it is directly under tta/, along with its own gnulib
> checkout.
> 
> Stopping the subsidiary configure script from running if texi2any C code
> were disabled would require some reorganisation of the source tree,
> perhaps moving tta/perl/XSTexinfo and tta/configure.ac under tta/C.
> (Then we'd put the BUILD_C_CODE condition in the top-level configure.ac
> etc.)

I prefer to have a logical organization of the code rather than one that
allows to use conditionals more easily.  To me, the separation of the
libraries in tta/C and the XS modules in tta/perl/XSTexinfo seems more
natural.

-- 
Pat

Reply via email to