summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorBen Gamari <bgamari.foss@gmail.com>2017-03-03 17:48:50 -0500
committerBen Gamari <ben@smart-cactus.org>2017-03-04 16:02:44 -0500
commite901ed1c5d662a6f343e7d1a576f727e5e556d43 (patch)
treebc17a4cd9b88d13f76f5061bc69964a133e75906 /configure.ac
parent2e58c3b21b40ec40649bae8925f2a977022a80c3 (diff)
downloadhaskell-e901ed1c5d662a6f343e7d1a576f727e5e556d43.tar.gz
configure: Don't pass GHC's sanitized triple to libraries' configure
Reviewers: hvr, rwbarton, austin Subscribers: thomie, danharaj, erikd Differential Revision: https://phabricator.haskell.org/D3247
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac15
1 files changed, 13 insertions, 2 deletions
diff --git a/configure.ac b/configure.ac
index 3c153c6680..ba5836d58c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -434,8 +434,19 @@ fi
# Despite its similarity in name to TargetPlatform, TargetPlatformFull is used
# in calls to subproject configure scripts and thus must be set to the autoconf
# triple, not the normalized GHC triple that TargetPlatform is set to.
-# It may be better to just do away with the GHC triples all together.
-TargetPlatformFull="${target}"
+#
+# We use the non-canonicalized triple, target_alias, here since the subproject
+# configure scripts will use this triple to construct the names of the toolchain
+# executables. If we instead passed down the triple produced by
+# AC_CANONICAL_TARGET then it may look for the target toolchain under the wrong
+# name (this is a known problem in the case of the Android NDK, which has
+# slightly odd triples).
+#
+# It may be better to just do away with the GHC triples all together. This would
+# all be taken care of for us if we configured the subprojects using
+# AC_CONFIG_DIR, but unfortunately Cabal needs to be the one to do the
+# configuration.
+TargetPlatformFull="${target_alias}"
AC_SUBST(CrossCompiling)
AC_SUBST(CrossCompilePrefix)
AC_SUBST(TargetPlatformFull)