> From: Gavin Smith <[email protected]> > Date: Sat, 21 Feb 2026 08:28:56 +0000 > Cc: [email protected], [email protected] > > On Sat, Feb 21, 2026 at 09:55:00AM +0200, Eli Zaretskii wrote: > > 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? > > "ln -s" works but other commands wouldn't. > > $ ls -l /usr/local/bin/makeinfo > lrwxrwxrwx 1 root root 8 Jan 10 18:44 /usr/local/bin/makeinfo -> texi2any > $ > > The symlink contains the text "texi2any" which is interpreted relative > to the containing directory "/usr/local/bin". > > The autoconf manual cautions against this usage of $(LN_S): > > If you make a link in a directory other than the current directory, > its meaning depends on whether ‘ln’ or ‘ln -s’ is used. To safely > create links using ‘$(LN_S)’, either find out which form is used > and adjust the arguments, or always invoke ‘ln’ in the directory > where the link is to be created. > > In other words, it does not work to do: > $(LN_S) foo /x/bar > > Instead, do: > > (cd /x && $(LN_S) foo bar)
Right.
