Version 82 (modified by 5 years ago) (diff) | ,
---|
GHC Repositories
This page lists the active repositories relating to GHC. These are Git repositories, so you should learn about Git first. For instructions on actually getting a GHC source tree, see Getting The Sources. For information on using these repositories (via submodules), see the Submodules page.
Repository listing
The GHC source code tracks many related sub-repositories, which are needed for external dependencies during the build, or tools that are included in the build. Not every sub-repository is maintained by us; in fact, the large majority are not maintained by GHC HQ (roughly: if the repository is hosted on Github, it is maintained on Github, and patches and issues should go there).
As a result of this, in HEAD, essentially every single upstream repository we track is tracked with a git submodule. These submodules are mirrored for us, and we send patches we need to the upstream maintainer. Here are the submodules we use, and where their upstreams point:
Location in tree | Upstream repo | Upstream GHC branch | Installed[1] | Req'd to build[2] |
utils/hsc2hs | https://git.haskell.org/hsc2hs.git | master | Yes | Yes |
utils/haddock | https://github.com/haskell/haddock | ghc-head | Yes | No |
nofib | https://git.haskell.org/nofib.git | master | N/A | N/A |
libraries/array | https://git.haskell.org/packages/array.git | master | Yes | Yes |
libraries/binary | https://github.com/kolmodin/binary | master | Yes | Yes |
libraries/bytestring | https://github.com/haskell/bytestring | master | Yes | Yes |
libraries/Cabal | https://github.com/haskell/Cabal | master | Yes | Yes |
libraries/containers | https://github.com/haskell/containers | master | Yes | Yes |
libraries/deepseq | https://git.haskell.org/packages/deepseq.git | master | No | No |
libraries/directory | https://git.haskell.org/packages/directory.git | master | Yes | Yes |
libraries/filepath | https://git.haskell.org/packages/filepath.git | master | Yes | Yes |
libraries/haskeline | https://github.com/judah/haskeline | master | Yes | Yes |
libraries/haskell98 | https://git.haskell.org/packages/haskell98.git | master | Yes | Yes |
libraries/haskell2010 | https://git.haskell.org/packages/haskell2010.git | master | Yes | Yes |
libraries/hoopl | https://git.haskell.org/packages/hoopl.git | master | Yes | Yes |
libraries/hpc | https://git.haskell.org/packages/hpc.git | master | Yes | Yes |
libraries/old-locale | https://git.haskell.org/packages/old-locale.git | master | Yes | Yes |
libraries/old-time | https://git.haskell.org/packages/old-time.git | master | Yes | Yes |
libraries/process | https://git.haskell.org/packages/process.git | master | Yes | Yes |
libraries/terminfo | https://github.com/judah/terminfo | master | Yes | Yes |
libraries/time | https://github.com/haskell/time | master | Yes | Yes |
libraries/unix | https://github.com/haskell/unix | master | Yes | Yes |
libraries/Win32 | https://git.haskell.org/packages/Win32.git | master | Yes | Yes |
libraries/xhtml | https://github.com/haskell/xhtml | master | Yes | Yes |
libraries/random | https://github.com/haskell/random | master | No | No |
libraries/primitive | https://github.com/haskell/primitive | master | No | No |
libraries/vector | https://github.com/haskell/vector | master | No | No |
libraries/dph | https://git.haskell.org/packages/dph.git | master | No | No |
libraries/parallel | https://git.haskell.org/packages/parallel.git | master | No | No |
libraries/stm | https://git.haskell.org/packages/stm.git | master | No | No |
- [1] These libraries are not installed in the resulting compiler when you do
make install
- [2] These libraries are not required to build the compiler, but may be used for tests or other libraries. Right now, most of these are based on whether you build DPH. At the moment, DPH is turned off. To build these libraries, set
BUILD_DPH=YES
inmk/build.mk
. You can skip haddock by settingHADDOCK_DOCS=NO
inmk/build.mk
. TODO Explain how to skipdeepseq
, since it seems to only be used for tests.