Do use readlink if available
authorBernd Jendrissek <bernd.jendrissek@gmail.com>
Wed, 20 Jun 2012 23:04:28 +0000 (01:04 +0200)
committerBruno Haible <bruno@clisp.org>
Thu, 21 Jun 2012 09:42:23 +0000 (11:42 +0200)
The main effect of this patch is to make gnulib-tool not spam the
terminal with failures from ls. Despite the copious stderr output,
files still get linked correctly.

gnulib-tool: Use readlink if it is available.
* gnulib-tool (func_readlink): Choose function more appropriately.

Running under dash, type -p readlink fails because dash doesn't
understand -p. That causes gnulib-tool to fall back to ls to read
symlinks, despite readlink being available. That, in turn, spams the
terminal when func_ln_if_changed's DEST argument doesn't exist.

The output from type goes to /dev/null anyway, so asking for -p has no
purpose.

ChangeLog
gnulib-tool

index b3110ba..442c4ec 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2012-06-20  Bernd Jendrissek  <bernd.jendrissek@gmail.com>  (tiny change)
+
+       gnulib-tool: Use readlink if it is available.
+       * gnulib-tool (func_readlink): Choose function more appropriately.
+
 2012-06-21  Paul Eggert  <eggert@cs.ucla.edu>
 
        posixtm-tests: port to buggy compiler
index 16f9b2f..6213f50 100755 (executable)
@@ -591,7 +591,7 @@ func_warning ()
 
 # func_readlink SYMLINK
 # outputs the target of the given symlink.
-if (type -p readlink) > /dev/null 2>&1; then
+if (type readlink) > /dev/null 2>&1; then
   func_readlink ()
   {
     # Use the readlink program from GNU coreutils.