And warn about it.
* gnulib-tool (have_symlink_support): New.
(symbolic, lsymbolic): Clear on systems not supporting symbolic link.
---
gnulib-tool | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/gnulib-tool b/gnulib-tool
index 2641378..c5a4c87 100755
--- a/gnulib-tool
+++ b/gnulib-tool
@@ -898,6 +898,16 @@ if test "X$1" = "X--no-reexec"; then
shift
fi
+# Check if symbolic link is supported
+have_symlink_support=false
+rm -f symlink$$.file symlink$$
+if (echo >symlink$$.file) 2>/dev/null; then
+ if ln -s symlink$$.file symlink$$ 2>/dev/null; then
+ have_symlink_support=true
+ fi
+fi
+rm -f symlink$$.file symlink$$
+
# Unset CDPATH. Otherwise, output from 'cd dir' can surprise callers.
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
@@ -1355,6 +1365,16 @@ fi
echo "gnulib-tool: option --conditional-dependencies is not supported with
--with-tests" 1>&2
func_exit 1
fi
+ # Warn if symbolic link is requested on a system not supporting it.
+ # And fall back into copy.
+ if { test -n "$symbolic" || test -n "$lsymbolic" ; } \
+ && ! $have_symlink_support ; then
+ echo "gnulib-tool: symbolic link is not supported on this system." 1>&2
+ echo "Copy will be performed instead." 1>&2
+
+ symbolic=
+ lsymbolic=
+ fi
# Determine the minimum supported autoconf version from the project's
# configure.ac.
--
1.8.5.2