[commit: ghc] master: Rework CC/CC_STAGE0 handling in `configure.ac` (865602e)
git at git.haskell.org
git at git.haskell.org
Sat Apr 16 16:20:42 UTC 2016
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/865602e0beb8e30ea1e1edf7db90f24088badb9e/ghc
>---------------------------------------------------------------
commit 865602e0beb8e30ea1e1edf7db90f24088badb9e
Author: Herbert Valerio Riedel <hvr at gnu.org>
Date: Sat Apr 16 18:12:09 2016 +0200
Rework CC/CC_STAGE0 handling in `configure.ac`
Rather than using the non-standard/idiomatic `--with-{gcc,clang}=...`
scheme use the `CC=...` style scheme.
The basic idea is to have Autoconf's CC/CFLAG/CPPFLAG apply to
stage{1,2,3}, while having a separate _STAGE0 set of env-vars
denote the bootstrap-toolchain flags/programs.
This should be simpler, less confusing, and somewhat more in line with
Autoconf's idioms (allowing us to reuse more of Autoconf rather than
(re)inventing our own confusing non-standard m4 macros to do stuff that
Autoconf could almost do already for us)
Morever, expose CC_STAGE0 as a so-called "precious" variable.
So now we can better control which bootstrapping gcc is used
(by default the one used by the stage0 ghc, unless CC_STAGE0 is
overriden)
```
Some influential environment variables:
CC_STAGE0 C compiler command (bootstrap)
CC C compiler command
CFLAGS C compiler flags
...
Use these variables to override the choices made by `configure' or to
help it to find libraries and programs with nonstandard names/locations.
```
Test Plan: I've tested that cross-compiling with
`--target=powerpc-linux-gnu` still works, and tried a few variants of
settting `CC=` and `CC_STAGE0=`; `./validate` passed as well
Reviewers: erikd, austin, bgamari, simonmar
Reviewed By: simonmar
Subscribers: Phyx, thomie
Differential Revision: https://phabricator.haskell.org/D2078
>---------------------------------------------------------------
865602e0beb8e30ea1e1edf7db90f24088badb9e
aclocal.m4 | 38 +++-----------------------------------
bindisttest/ghc.mk | 2 +-
configure.ac | 37 +++++++++++++++++++++++++++++--------
distrib/configure.ac.in | 4 +---
includes/ghc.mk | 2 +-
mk/config.mk.in | 10 +++++-----
rts/ghc.mk | 2 +-
rules/shell-wrapper.mk | 2 +-
8 files changed, 42 insertions(+), 55 deletions(-)
Diff suppressed because of size. To see it, use:
git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc 865602e0beb8e30ea1e1edf7db90f24088badb9e
More information about the ghc-commits
mailing list