Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
    • Help
    • Support
    • Submit feedback
  • Sign in / Register
GHC
GHC
  • Project
    • Project
    • Details
    • Activity
    • Releases
    • Cycle Analytics
    • Insights
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
    • Locked Files
  • Issues 3,610
    • Issues 3,610
    • List
    • Boards
    • Labels
    • Milestones
  • Merge Requests 200
    • Merge Requests 200
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Security & Compliance
    • Security & Compliance
    • Dependency List
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Glasgow Haskell Compiler
  • GHCGHC
  • Merge Requests
  • !16

Merged
Opened Dec 19, 2018 by Matthew Pickering@mpickering
  • Report abuse
Report abuse

Hadrian: Add support for building stage3

This ticket enables the building of a stage3 compiler by making the build logic more consistent and predictable in Hadrian.

Two of the main changes are:

  1. In order to build anything at stageN we use the package database present at stageN. Fixing #16069 (closed)
  2. haddock and ghc-tags are built as stage1 executables (with the stage1 compiler) rather than as stage2 compiler. Fixing hadrian#661

In order to build a stage3 compiler, you have to set the new finalStage hadrian option to Stage3.

Edited Dec 27, 2018 by Matthew Pickering

Check out, review, and merge locally

Step 1. Fetch and check out the branch for this merge request

-# All repo/branch refs have been quoted to allow support for special characters (such as #my-branch)
git fetch "https://gitlab.haskell.org/mpickering/ghc.git" "hadrian-stage3"
git checkout -b "mpickering/ghc-hadrian-stage3" FETCH_HEAD

Step 2. Review the changes locally

Step 3. Merge the branch and fix any conflicts that come up

git fetch origin
git checkout "origin/master"
git merge --no-ff "mpickering/ghc-hadrian-stage3"

Step 4. Push the result of the merge to GitLab

git push origin "master"

Note that pushing to GitLab requires write access to this repository.

Tip: You can also checkout merge requests locally by following these guidelines.

  • Discussion 12
  • Commits 1
  • Pipelines 7
  • Changes 19
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
0
Labels
None
Assign labels
  • View project labels
Reference: ghc/ghc!16