Quantcast
Channel: MarsHut
Viewing all articles
Browse latest Browse all 6551

handling --program-transform(s) in hooks

$
0
0
Question: how best to respect --program-suffix, --program-prefix,
--program-transform-name in user-defined rules for installing?

Details: For Texinfo, I install makeinfo as a symlink to texi2any in the
install-exec-hook (like the example in the Extending node of the
automake manual):

install-exec-hook:
rm -f $(DESTDIR)$(bindir)/makeinfo
-$(LN_S) texi2any $(DESTDIR)$(bindir)/makeinfo

However, clearly this ignores any specified program transformations.
Glenn (Morris, cc'd) reported as follows:

I configured texinfo-5.2 like this:
./configure --program-suffix"-5"

make install created a broken link in bin/:
makeinfo -> texi2any

This should be:
makeinfo-5 > texi2any-5

True enough. So my question is, how best to deal with it? I mean, I
can look at the output and hack the same sed invocations that automake
inserts into Makefile.in into my install rule. But I wonder if there is
a better way, perhaps using something other than install-exec-hook.
Any advice? Other Automake-using programs to look at for emulation
purposes? (I looked at a few without much luck.)

I see that Emacs does stuff like this:

# Program name transformation.
TRANSFORM = @program_transform_name@

# What emacs should be called when installed.
EMACS_NAME = `echo emacs | sed '$(TRANSFORM)'`

which seems sensible enough, but Emacs only uses autoconf, not automake.
Not sure that using @program_transform_name@ is the best way to go.

In any case, I suggest this issue be addressed in either the Renaming or
Extending node of the manual (with a pointer from the other one). At
least, those are the places I found that seemed likely to be relevant.
If it's in the manual somewhere else, please let me know. I couldn't
find anything specific about this in general web searches,
stackexchange, etc., either, which surprised me, since surely this come
up before in all these many years. Perhaps I couldn't figure out the
right thing to search for.

Thanks,
Karl

Viewing all articles
Browse latest Browse all 6551

Trending Articles