;;
esac
+# Sync this with cTargetArch in compiler/ghc.mk
checkArch() {
case $1 in
alpha|arm|hppa|hppa1_1|i386|ia64|m68k|mips|mipseb|mipsel|powerpc|powerpc64|rs6000|s390|sparc|sparc64|vax|x86_64)
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)
LD="$hardtop/inplace/mingw/bin/ld.exe"
NM="$hardtop/inplace/mingw/bin/nm.exe"
fp_prog_ar_raw="$hardtop/inplace/mingw/bin/ar.exe"
+
+ # NB. If you update the tarbballs to a new version of gcc, don't
+ # forget to tweak the paths in driver/gcc/gcc.c.
if ! test -d inplace/mingw ||
test inplace/mingw -ot ghc-tarballs/mingw/binutils*.tar.lzma ||
test inplace/mingw -ot ghc-tarballs/mingw/gcc-core*.tar.lzma ||