Skip to content
Snippets Groups Projects
Commit f7b45c31 authored by Thomas Miedema's avatar Thomas Miedema
Browse files

Build system: fix `pwd` issues on Windows

Some parts of the build system require that paths are what msys2 calls
"mixed style":
  * forwards slashes
  * absolute paths starting with a drive letter followed by a colon
    (e.g. "C:")

The removal of ghc-pwd in 4c56ad36 changed $(TOP) from mixed style to
unix style, resulting in a broken Windows build for some.

Differential Revision: https://phabricator.haskell.org/D1752
parent 2bd05b88
No related merge requests found
......@@ -1739,7 +1739,15 @@ AC_DEFUN([FP_CURSES],
AC_DEFUN([FP_FIND_ROOT],[
AC_MSG_CHECKING(for path to top of build tree)
hardtop=`pwd`
if test "$windows" = YES
then
dnl Make sure this is a c:/foo/bar (mixed) style path. Some parts of
dnl the build system might depend on it (such as the sed expression
dnl `"s|$(TOP)/||i"` in addCFileDeps in rules/build-dependencies.mk).
hardtop=$(cygpath -m "$(pwd)")
else
hardtop=$(pwd)
fi
dnl Remove common automounter nonsense
hardtop=`echo $hardtop | sed 's|^/tmp_mnt.*\(/local/.*\)$|\1|' | sed 's|^/tmp_mnt/|/|'`
......
......@@ -26,8 +26,6 @@ AC_INIT([The Glorious Glasgow Haskell Compilation System], [8.1], [glasgow-haske
# checkout), then we ship a file 'VERSION' containing the full version
# when the source distribution was created.
FP_FIND_ROOT
if test ! -f mk/config.h.in; then
echo "mk/config.h.in doesn't exist: perhaps you haven't run 'perl boot'?"
exit 1
......@@ -260,6 +258,9 @@ AC_ARG_WITH(hc,
)
AC_SUBST(WithHc)
# Requires FPTOOLS_SET_PLATFORM_VARS to be run first.
FP_FIND_ROOT
fail() {
echo >&2
echo "$1" >&2
......
......@@ -6,8 +6,6 @@ dnl
AC_INIT([The Glorious Glasgow Haskell Compilation System], [@ProjectVersion@], [glasgow-haskell-bugs@haskell.org], [ghc])
FP_FIND_ROOT
dnl--------------------------------------------------------------------
dnl * Deal with arguments telling us gmp is somewhere odd
dnl--------------------------------------------------------------------
......@@ -17,6 +15,9 @@ FP_GMP
bootstrap_target=@TargetPlatform@
FPTOOLS_SET_PLATFORM_VARS
# Requires FPTOOLS_SET_PLATFORM_VARS to be run first.
FP_FIND_ROOT
# ToDo: if Stage1Only=YES, should be YES
CrossCompiling=NO
CrossCompilePrefix=""
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment