Re: texinfo-7.2.92 pretest available

Eli Zaretskii <[email protected]>
Newsgroups gmane.comp.tex.texinfo.bugs
Message-ID <[email protected]>
> Date: Fri, 20 Feb 2026 20:28:39 +0100
> From: [email protected]
> 
> > >    . it also installs makeinfo.exe, but that seems to be the libtool
> > >      wrapper, not the actual executable (which is supposed to be an
> > >      identical copy of texi2any.exe)
> > 
> > This one also should be fixable, thanks for the report.
> 
> I can't see what is going on from the code.  The rule is the following
> (I copied a similar rule for Perl texi2any):
> 
> if PREFER_C_TEXI2ANY
> install-exec-hook:
> 	makeinfo_f=`echo makeinfo$(EXEEXT) | sed -e '$(transform)'`; rm -f $(DESTDIR)$(bindir)/$$makeinfo_f
> 	-makeinfo_f=`echo makeinfo$(EXEEXT) | sed -e '$(transform)'`; texi2any_f=`echo texi2any$(EXEEXT)| sed -e '$(transform)'`; $(LN_S) $$texi2any_f $(DESTDIR)$(bindir)/$$makeinfo_f
> endif
> 
> I can't see what could lead makeinfo.exe not to be the same as
> texi2any.exe.  Did you check that texi2any.exe is not a libtool wrapper
> too?

Yes.  If it were a wrapper, I couldn't have got the error message
about its being unable to open load_txi_modules script, the one I get
from texi2any.exe.  Instead, I get this:

  makeinfo:./.libs/lt-texi2any.c:236: FATAL: couldn't find bin\makeinfo.

Which tells me it's the libtool wrapper.

Looking at the output of "make install" run, I see this:

  libtool: install: /bin/sh /d/gnu/texinfo-7.2.92-C/build-aux/install-sh -c -s .libs/texi2any.exe d:/usr/test-texinfo-7.2.92-C/bin/texi2any.exe
  make  install-exec-hook
  make[7]: Entering directory `/d/gnu/texinfo-7.2.92-C/tta/C'
  makeinfo_f=`echo makeinfo.exe | sed -e 's,x,x,'`; rm -f d:/usr/test-texinfo-7.2.92-C/bin/$makeinfo_f
  makeinfo_f=`echo makeinfo.exe | sed -e 's,x,x,'`; texi2any_f=`echo texi2any.exe| sed -e 's,x,x,'`; cp -pR $texi2any_f d:/usr/test-texinfo-7.2.92-C/bin/$makeinfo_f

So texi2any.exe is being installed from tta/C/.libs, whereas
makeinfo.exe is installed from its parent directory tta/C, because
$texi2any_f lacks the ".libs/" prefix.  Does that explain why the
wrapper is installed?  ("cp -pR" is there because that's the emulation
of "ln -s" on Windows: using symlinks on Windows is possible, but is
not portable across Windows versions, and requires admin privileges
when available.)

Btw, I think the command which installs makeinfo.exe should use the
just-installed texi2any.exe as the source of the symlink, not the
texi2any.exe produced in the build tree.  Because the build tree could
be removed, which would make makeinfo.exe a dangling symlink, right?
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.