[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: improved Automake test for file names with funny characters

From: Alexandre Duret-Lutz
Subject: Re: improved Automake test for file names with funny characters
Date: Wed, 27 Jul 2005 09:13:35 +0200
User-agent: Gnus/5.110003 (No Gnus v0.3) Emacs/21.3.50 (gnu/linux)

>>> "Paul" == Paul Eggert <address@hidden> writes:

 Paul> Alexandre Duret-Lutz <address@hidden> writes:
 >> I'm reluctant to chop $destdir using sed in a loop, but at least
 >> that sounds less clumsy than going into an empty subdirectory to
 >> execute set :) Any other idea ?

 Paul> Here's a fix for that problem.  The basic idea is to drop the use
 Paul> of IFS, except on ancient platforms that don't support mkdir -p.

 Paul> Also, this fix documents Automake's current limitations in this area.

Excellent! Thanks!

 Paul> And it tunes install-sh a bit.

I think some of these changes need to be synced with
mkinstalldirs and vice-versa.  But it's not clear to me because
you seems to tune it much more than the ChangeLog accounts for.
What's the story with all these test_mode/umask things ?

mkinstalldirs also uses IFS the split the directory in case `mkdir -p' 
does not exist, but its `mkdir -p' check is more restrictive.  (I buy
your "sleep 1; test -d" instead.)

 Paul> By the way, I notice that we're now using install-sh even when GNU
 Paul> install is available.  Is there a reason for that?  There are some
 Paul> security issues involved here, I'm afraid, which would make it better
 Paul> to use GNU install if available.

Automake uses install-sh systematically for installing nobase_
targets (instspc.test tests these a lot for this reason).  It
will use the install command found AC_PROG_INSTALL for other
targets.  The reason is that nobase_ targets need to be
installed with the equivalent of GNU's "install -D", which isn't
supported by other install implementations.  Sure enough, we
could have an AC_PROG_INSTALL_D check and use "install -D" when

 Paul> 2005-07-20  Paul Eggert  <address@hidden>

 Paul> * doc/automake.texi (limitations on file names): New section.
 Paul> * lib/install-sh: Rewrite to support '*' in file names.
 Paul> Also, tune so that we don't invoke so many commands in the usual case.
 Paul> * tests/instspc.test: The "*" test is now fixed.

It does not seem to be fixed on platforms where "mkdir -p" does
not work.  (I'm concerned by the spurious report about test
suite failures more than by the missing feature on these
system.)  Does Stephan's patch for quoting $@ before eval look
right to you?
Alexandre Duret-Lutz

reply via email to

[Prev in Thread] Current Thread [Next in Thread]