Use git submodule for hpc
As discussed in #21870 (closed) we want to work on the hpc
binary, and have therefore created a separate repository for it. This patch replaces the utils/hpc
subdirectory with a git submodule pointing to https://gitlab.haskell.org/hpc/hpc-bin.git
That repository contains the entire history of the main GHC repository relevant for the hpc
binary, extracted via the git filter-repo
tool.
The commit of the hpc-bin repo that this commit points to differs from the version of hpc-bin
currently in the GHC repo (the individual commits and MR's can all be checked the hpc-bin repo). The changes are not of a very fundamental nature and concern mostly the organization of the code:
- Files are in subdirectories
src/
andapp/
, and the cabal file has been split into a library and executable part. - Some small refactorings.
- There is a testsuite which is run in CI.
- There is a
docs/
subdirectory which contains the sphinx documentation of thehpc-bin
tool, which is currently still part of the GHC User manual. We will update the GHC user guide to point to that documentation with a separate PR. - We ran a code formatter (ormolu) on the codebase.