(Arne Babenhauserheide)
2017-09-19: provide realpath on OSX to get the tests to run provide realpath on OSX to get the tests to run
diff --git a/configure.ac b/configure.ac
--- a/configure.ac
+++ b/configure.ac
@@ -44,5 +44,6 @@ AM_COND_IF([IS_MAKE_DISTCHECK], [AC_MSG_
AM_INIT_AUTOMAKE([gnu])
AM_MAINTAINER_MODE([enable])
AC_CONFIG_FILES([Makefile])
+AC_CONFIG_LINKS([tests/realpath.sh:tests/realpath.sh])
AC_OUTPUT
diff --git a/tests/realpath.sh b/tests/realpath.sh
new file mode 100755
--- /dev/null
+++ b/tests/realpath.sh
@@ -0,0 +1,9 @@
+#!/bin/sh
+# realpath implementation for systems which lack it (like OSX)
+if command -v realpath 2>/dev/null 1>/dev/null; then
+ realpath "$@"
+elif command -v perl 2>/dev/null 1>/dev/null; then
+ perl -MCwd -le 'print Cwd::realpath($ARGV[0])' "$@"
+else # fallback, though not getting out of a/../a
+ [[ $1 = /* ]] && echo "$1" || echo "$PWD/${1#./}"
+fi
diff --git a/tests/runtests-scheme-reader.sh b/tests/runtests-scheme-reader.sh
--- a/tests/runtests-scheme-reader.sh
+++ b/tests/runtests-scheme-reader.sh
@@ -2,16 +2,20 @@
# Simple test runner for wisp, mainly intended to be run by autotools.
+# FIXME: ./tests/realpath.sh currently encodes the path to the
+# command. AC_CONFIG_LINKS in autoconf.ac ensures that this exists in
+# the build dir. Still this could be nicer.
+
if [[ x"$1" == x"" || x"$1" == x"." ]]; then
- srcdir="$(realpath "$(pwd)")"
+ srcdir="$(./tests/realpath.sh "$(pwd)")"
else
- srcdir="$(realpath "$1")"
+ srcdir="$(./tests/realpath.sh "$1")"
fi
if [[ x"$2" == x"" || x"$2" == x"." ]]; then
- builddir="$(realpath $(pwd))"
+ builddir="$(./tests/realpath.sh $(pwd))"
else
- builddir="$(realpath "$2")"
+ builddir="$(./tests/realpath.sh "$2")"
fi
failed=0