[Git][ghc/ghc][wip/prof-dyn] Add support for building profiled dynamic way

Matthew Pickering (@mpickering) gitlab at gitlab.haskell.org
Wed Jun 26 15:36:46 UTC 2024



Matthew Pickering pushed to branch wip/prof-dyn at Glasgow Haskell Compiler / GHC


Commits:
2b87b7d4 by Matthew Pickering at 2024-06-26T16:36:33+01:00
Add support for building profiled dynamic way

The main payload of this change is to hadrian.

* Default settings will produced dynamic profiled objects
* `-fexternal-interpreter` is turned on in some situations when there is
  an incompatibility between host GHC and the way attempting to be
  built.
* Very few changes actually needed to GHC

There are also necessary changes to the bootstrap plans to work with the
vendored Cabal dependency. These changes should ideally be reverted by
the next GHC release.

In hadrian support is added for building profiled dynamic libraries
(nothing too exciting to see there)

Updates hadrian to use a vendored Cabal submodule, it is important that
we replace this usage with a released version of Cabal library before
the 9.12 release.

Fixes #21594

-------------------------
Metric Increase:
    libdir
-------------------------

- - - - -


30 changed files:

- .gitmodules
- compiler/GHC.hs
- compiler/GHC/Driver/Make.hs
- compiler/GHC/Driver/Session.hs
- compiler/GHC/Linker/Deps.hs
- compiler/GHC/Linker/Loader.hs
- compiler/GHC/Linker/Unit.hs
- hadrian/bootstrap/bootstrap.py
- hadrian/bootstrap/generate_bootstrap_plans
- hadrian/bootstrap/hadrian-bootstrap-gen.cabal
- hadrian/bootstrap/plan-9_10_1.json
- hadrian/bootstrap/plan-9_6_1.json
- hadrian/bootstrap/plan-9_6_2.json
- hadrian/bootstrap/plan-9_6_3.json
- hadrian/bootstrap/plan-9_6_4.json
- hadrian/bootstrap/plan-9_6_5.json
- hadrian/bootstrap/plan-9_8_1.json
- hadrian/bootstrap/plan-9_8_2.json
- hadrian/bootstrap/plan-bootstrap-9_10_1.json
- hadrian/bootstrap/plan-bootstrap-9_6_1.json
- hadrian/bootstrap/plan-bootstrap-9_6_2.json
- hadrian/bootstrap/plan-bootstrap-9_6_3.json
- hadrian/bootstrap/plan-bootstrap-9_6_4.json
- hadrian/bootstrap/plan-bootstrap-9_6_5.json
- hadrian/bootstrap/plan-bootstrap-9_8_1.json
- hadrian/bootstrap/plan-bootstrap-9_8_2.json
- hadrian/bootstrap/src/Main.hs
- hadrian/build-cabal
- hadrian/cabal.project
- hadrian/hadrian.cabal


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/2b87b7d4af858ce0df258ffeee6af21e7b487d4c

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/2b87b7d4af858ce0df258ffeee6af21e7b487d4c
You're receiving this email because of your account on gitlab.haskell.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20240626/289f7620/attachment-0001.html>


More information about the ghc-commits mailing list