[...]
Tom> I think relying on a subdir `make' invocation expanding
Tom> `INSTALL_PROGRAM' correctly is not too likely to work.
adl> I don't know.
I still don't and would really like to get more feedback on
this. The only workaround I can think off is to select
the install program at run time.
Maybe somthing like this (not tried):
INSTALL_STRIP_PROG='`if test -n "$(STRIP)"; then echo $(INSTALL); else echo
$(install_sh) -c -s`'
Tom> And besides this the definition of `install_sh' in
Tom> m4/Makefile seems wrong anyway:
Tom> install_sh = ../automake/install-sh
adl> I guess this is a consequence of the missing
adl> s/ac_aux_dir/am_aux_dir/ change reported above. In the original
adl> patch $install_sh is based on $am_aux_dir which is always
adl> absolute.
With the three previous patches I have this in automake's Makefile
install_sh = /home/adl/projs/cvs/automake/install-sh
Tom> What if we change the rule to do something like this?
Tom> install-strip:
Tom> $(MAKE) ... INSTALL_PROGRAM=`cd somewhere && pwd`/install-sh ...
Tom> `somewhere' would be computed by running sed on $(install_sh).
Tom> Comments?
adl> I see this is what is in the CVS actually.
adl> # setting install_sh
adl> if test -z "$install_sh"; then
adl> for install_sh in "$ac_aux_dir/install-sh" \
adl> "$ac_aux_dir/install.sh" \
adl> "${am_missing_run}${ac_auxdir}/install-sh";
adl> do
adl> test -f "$install_sh" && break
adl> done
adl> # FIXME: an evil hack: we remove the SHELL invocation from
adl> # install_sh because automake adds it back in. Sigh.
adl> install_sh=`echo $install_sh | sed -e 's/\${SHELL}//'`
adl> fi
adl> # setting INSTALL_STRIP_PROGRAM
adl> _am_dirpart="`echo $install_sh | sed -e 's,//*[[^/]]*$,,'`"
adl> INSTALL_STRIP_PROGRAM="\${SHELL} \`CDPATH=: && cd $_am_dirpart &&
pwd\`/install-sh -c -s"
adl> Isn't there an issue with `cd $_am_dirpart' when `$install_sh'
adl> is defined as `${am_missing_run}${ac_auxdir}/install-sh'?
I think there is. Moreover I don't understand why the
computation of `CDPATH=: && cd $_am_dirpart && pwd` is delayed
to install-time since $_am_dirpart is fixed at configure-time.
Or am I missing something?
The patch below assumes that `Cleanup 2/4' has been applied.
2001-02-25 Alexandre Duret-Lutz <[EMAIL PROTECTED]>
* m4/strip.m4 (AM_PROG_INSTALL_STRIP): Use $install_sh, verbatim,
since we know it's an absolute path.
Index: m4/strip.m4
===================================================================
RCS file: /cvs/automake/automake/m4/strip.m4,v
retrieving revision 1.2
diff -u -r1.2 strip.m4
--- strip.m4 2001/02/19 00:12:15 1.2
+++ strip.m4 2001/02/25 14:42:43
@@ -33,8 +33,7 @@
INSTALL_STRIP_PROGRAM='$${INSTALL} -s'
INSTALL_STRIP_PROGRAM_ENV=''
else
- _am_dirpart="`echo $install_sh | sed -e 's,//*[[^/]]*$,,'`"
- INSTALL_STRIP_PROGRAM="\${SHELL} \`CDPATH=: && cd $_am_dirpart && pwd\`/install-sh
-c -s"
+ INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
INSTALL_STRIP_PROGRAM_ENV="STRIPPROG='\$(STRIP)'"
fi
AC_SUBST([STRIP])
--
Alexandre Duret-Lutz