On Sun, Apr 22, 2001 at 08:05:38PM +0200, Peter Eisentraut wrote:
> Albert Chin-A-Young writes:
>
> > > Try changing the code to look like this:
> > >
> > > if test -L "$file" >/dev/null 2>&1 || test -h "$file" >/dev/null 2>&1 ||
>test -f "$file"; then
> >
> > Well, examine the following:
> > $ /bin/sh
> > $ test -X "/etc/passwd" || echo foo
> > test: argument expected
> > $ test -L "/etc/passwd" || echo foo
> > test: argument expected
> >
> > Because the "echo foo" never gets called, it doesn't matter what is
> > placed after ||.
>
> That's a peculiar shell. How about this:
>
> if test -L "$file" >/dev/null 2>&1; then
> :
> elif test -h "$file" >/dev/null 2>&1; then
> :
> elif test -f "$file"; then
> :
> elif ...
No. But this will work:
if (test -L "$file") >/dev/null 2>&1 || \
(test -h "$file") >/dev/null 2>&1 || \
test -f "$file"; then
I've already tested it. I'll contribute the patch soon.
--
albert chin ([EMAIL PROTECTED])
_______________________________________________
Libtool mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/libtool