In configure, test that GHC generates code for the correct platform (#4819)
authorSimon Marlow <marlowsd@gmail.com>
Fri, 7 Jan 2011 16:35:41 +0000 (16:35 +0000)
committerSimon Marlow <marlowsd@gmail.com>
Fri, 7 Jan 2011 16:35:41 +0000 (16:35 +0000)
Patch supplied by the bug reporter, tidied up by me.

$ ./configure --with-ghc=$HOME/fp/bin/i386-unknown-linux/ghc --build=x86_64-unknown-linux
checking for gfind... no
checking for find... /usr/bin/find
checking for sort... /usr/bin/sort
checking for GHC version date... inferred 7.1.20110107
checking version of ghc... 7.0.1
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
Host platform inferred as: i386-unknown-linux
Target platform inferred as: i386-unknown-linux
This GHC (/home/simonmar/fp/bin/i386-unknown-linux/ghc) does not generate code for the build platform
   GHC target platform    : i386-unknown-linux
   Desired build platform : x86_64-unknown-linux

configure.ac

index d176e2c..afe7a05 100644 (file)
@@ -346,6 +346,16 @@ checkArch "$TargetArch"
 checkVendor "$TargetVendor"
 checkOS "$TargetOS"
 
+# Verify that the installed (bootstrap) GHC is capable of generating
+# code for the requested build platform.
+if test "$build" != "$bootstrap_target"
+then
+    echo "This GHC (${WithGhc}) does not generate code for the build platform"
+    echo "   GHC target platform    : $bootstrap_target"
+    echo "   Desired build platform : $BuildPlatform"
+    exit 1
+fi
+
 AC_SUBST(BuildPlatform)
 AC_SUBST(HostPlatform)
 AC_SUBST(TargetPlatform)