diff options
author | Ben Gamari <ben@smart-cactus.org> | 2021-08-19 09:41:12 -0400 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2021-08-19 15:30:56 -0400 |
commit | 478a963ef4db7b7551808ac4c210aae816a432e2 (patch) | |
tree | d369102943050fe9a9fcc6682ea0e66459ee7903 /hadrian/hie.yaml | |
parent | 0ba21dbe28882d506c3536c40224ebff337a9f49 (diff) | |
download | haskell-wip/T20253.tar.gz |
hadrian: Ensure that settings is regenerated during bindist installationwip/T20253
Previously Hadrian would simply install the settings file generated in
the build environment during the binary distribution installation. This
is wrong since these environments may differ (e.g. different `cc`
versions).
We noticed on Darwin when installation of a binary distribution produced
on a newer Darwin release resulted in a broken compiler due to the
installed `settings` file incorrectly claiming that `cc` supported
`-no-pie`.
Fixing this sadly requires a bit of code duplication since `settings` is
produced by Hadrian and not `configure`. For now I have simply
duplicated the `settings` generation logic used by the Make build system
into Hadrian's bindist Makefile.
Ultimately the solution will probably involve shipping a freestanding
utility to replace `configure`'s toolchain probing logic and generate a
toolchain description file (similar to `settings`) as described
in #19877.
Fixes #20253.
Diffstat (limited to 'hadrian/hie.yaml')
0 files changed, 0 insertions, 0 deletions