aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Eisentraut <peter_e@gmx.net>2001-09-10 23:52:04 +0000
committerPeter Eisentraut <peter_e@gmx.net>2001-09-10 23:52:04 +0000
commitef5602d72c10a17997df62b531b774686433cbcc (patch)
tree1a9d32292f0902ddadb021f38cb45ca4c28c8468
parent7505e5d0cdd93a987b0318c379636febdd61c7fb (diff)
downloadpostgresql-ef5602d72c10a17997df62b531b774686433cbcc.tar.gz
postgresql-ef5602d72c10a17997df62b531b774686433cbcc.zip
When testing for source and build tree equality, and test -ef doesn't work,
fall back to `cd $srcdir && /bin/pwd` = `/bin/pwd`. One of these ought to work, and if not, prep_buildtree is harmless.
-rwxr-xr-xconfigure16
-rw-r--r--configure.in16
2 files changed, 12 insertions, 20 deletions
diff --git a/configure b/configure
index 60a07b0095d..cfdd4126556 100755
--- a/configure
+++ b/configure
@@ -8581,25 +8581,21 @@ done
fi
-# check whether 'test -ef' works
-if (test "$srcdir" -ef "$srcdir") >/dev/null 2>&1 ; then
- test_ef_works=yes
-else
- test_ef_works=no
-fi
-
abs_top_srcdir=
-if test "$test_ef_works" = yes ; then
# prepare build tree if outside source tree
- if test "$srcdir" -ef . ; then : ; else
+# Note 1: test -ef might not exist, but it's more reliable than `pwd`.
+# Note 2: /bin/pwd might be better than shell's built-in at getting
+# a symlink-free name.
+if ( test "$srcdir" -ef . ) >/dev/null 2>&1 || test "`cd $srcdir && /bin/pwd`" = "`/bin/pwd`"; then
+ :
+else
abs_top_srcdir=`cd $srcdir && pwd`
echo $ac_n "preparing build tree... $ac_c" 1>&6
/bin/sh "$srcdir/config/prep_buildtree" "$abs_top_srcdir" "." \
|| { echo "configure: error: failed" 1>&2; exit 1; }
echo "$ac_t""done" 1>&6
- fi
fi
trap '' 1 2 15
diff --git a/configure.in b/configure.in
index fdbd10e0a88..56e6a953cfb 100644
--- a/configure.in
+++ b/configure.in
@@ -1219,25 +1219,21 @@ if test -n "$NSGMLS"; then
AC_CHECK_PROGS(SGMLSPL, sgmlspl)
fi
-# check whether 'test -ef' works
-if (test "$srcdir" -ef "$srcdir") >/dev/null 2>&1 ; then
- test_ef_works=yes
-else
- test_ef_works=no
-fi
-
abs_top_srcdir=
AC_SUBST(abs_top_srcdir)
-if test "$test_ef_works" = yes ; then
# prepare build tree if outside source tree
- if test "$srcdir" -ef . ; then : ; else
+# Note 1: test -ef might not exist, but it's more reliable than `pwd`.
+# Note 2: /bin/pwd might be better than shell's built-in at getting
+# a symlink-free name.
+if ( test "$srcdir" -ef . ) >/dev/null 2>&1 || test "`cd $srcdir && /bin/pwd`" = "`/bin/pwd`"; then
+ :
+else
abs_top_srcdir=`cd $srcdir && pwd`
echo $ac_n "preparing build tree... $ac_c" 1>&6
/bin/sh "$srcdir/config/prep_buildtree" "$abs_top_srcdir" "." \
|| AC_MSG_ERROR(failed)
AC_MSG_RESULT(done)
- fi
fi
AC_OUTPUT(