+# FP_CHECK_MACOSX_DEPLOYMENT_TARGET
+# ---------------------------------
+AC_DEFUN([FP_CHECK_MACOSX_DEPLOYMENT_TARGET],
+[
+if test "x$TargetOS_CPP-$TargetVendor_CPP" = "xdarwin-apple"; then
+ AC_MSG_CHECKING([Mac OS X deployment target])
+ case $FP_MACOSX_DEPLOYMENT_TARGET in
+ none) ;;
+ 10.4) MACOSX_DEPLOYMENT_VERSION=10.4
+ MACOSX_DEPLOYMENT_SDK=/Developer/SDKs/MacOSX10.4u.sdk
+ ;;
+ 10.4u) MACOSX_DEPLOYMENT_VERSION=10.4
+ MACOSX_DEPLOYMENT_SDK=/Developer/SDKs/MacOSX10.4u.sdk
+ ;;
+ *) MACOSX_DEPLOYMENT_VERSION=$FP_MACOSX_DEPLOYMENT_TARGET
+ MACOSX_DEPLOYMENT_SDK=/Developer/SDKs/MacOSX${FP_MACOSX_DEPLOYMENT_TARGET}.sdk
+ ;;
+ esac
+ if test "x$FP_MACOSX_DEPLOYMENT_TARGET" = "xnone"; then
+ AC_MSG_RESULT(none)
+ else
+ if test ! -d $MACOSX_DEPLOYMENT_SDK; then
+ AC_MSG_ERROR([Unknown deployment target $FP_MACOSX_DEPLOYMENT_TARGET])
+ fi
+ AC_MSG_RESULT([${MACOSX_DEPLOYMENT_VERSION} (${MACOSX_DEPLOYMENT_SDK})])
+ fi
+fi
+])
+
+# --------------------------------------------------------------
+# Calculate absolute path to build tree
+# --------------------------------------------------------------
+
+AC_DEFUN([FP_FIND_ROOT],[
+AC_MSG_CHECKING(for path to top of build tree)
+
+dnl This would be
+dnl make -C utils/ghc-pwd clean && make -C utils/ghc-pwd
+dnl except we don't want to have to know what make is called. Sigh.
+if test ! -f utils/ghc-pwd/ghc-pwd && test ! -f utils/ghc-pwd/ghc-pwd.exe; then
+ cd utils/ghc-pwd
+ rm -f *.o
+ rm -f *.hi
+ rm -f ghc-pwd
+ rm -f ghc-pwd.exe
+ "$WithGhc" -v0 --make ghc-pwd -o ghc-pwd
+ cd ../..
+fi
+
+hardtop=`utils/ghc-pwd/ghc-pwd`
+
+if ! test -d "$hardtop"; then
+ AC_MSG_ERROR([cannot determine current directory])
+fi
+
+dnl Remove common automounter nonsense
+dnl
+hardtop=`echo $hardtop | sed 's|^/tmp_mnt.*\(/local/.*\)$|\1|' | sed 's|^/tmp_mnt/|/|'`
+
+AC_SUBST(hardtop)
+
+AC_MSG_RESULT(${hardtop})
+
+# We don't support building in directories with spaces.
+case "$hardtop" in
+ *' '*) AC_MSG_ERROR([
+ The build system does not support building in a directory containing
+ space characters. Suggestion: move the build tree somewhere else.])
+ ;;
+esac
+])
+