Skip to content
Snippets Groups Projects
Forked from Glasgow Haskell Compiler / GHC
5908 commits behind the upstream repository.
  • John Ericson's avatar
    d5de970d
    Move `/includes` to `/rts/include`, sort per package better · d5de970d
    John Ericson authored and Marge Bot's avatar Marge Bot committed
    In order to make the packages in this repo "reinstallable", we need to
    associate source code with a specific packages. Having a top level
    `/includes` dir that mixes concerns (which packages' includes?) gets in
    the way of this.
    
    To start, I have moved everything to `rts/`, which is mostly correct.
    There are a few things however that really don't belong in the rts (like
    the generated constants haskell type, `CodeGen.Platform.h`). Those
    needed to be manually adjusted.
    
    Things of note:
    
     - No symlinking for sake of windows, so we hard-link at configure time.
    
     - `CodeGen.Platform.h` no longer as `.hs` extension (in addition to
       being moved to `compiler/`) so as not to confuse anyone, since it is
       next to Haskell files.
    
     - Blanket `-Iincludes` is gone in both build systems, include paths now
       more strictly respect per-package dependencies.
    
     - `deriveConstants` has been taught to not require a `--target-os` flag
       when generating the platform-agnostic Haskell type. Make takes
       advantage of this, but Hadrian has yet to.
    d5de970d
    History
    Move `/includes` to `/rts/include`, sort per package better
    John Ericson authored and Marge Bot's avatar Marge Bot committed
    In order to make the packages in this repo "reinstallable", we need to
    associate source code with a specific packages. Having a top level
    `/includes` dir that mixes concerns (which packages' includes?) gets in
    the way of this.
    
    To start, I have moved everything to `rts/`, which is mostly correct.
    There are a few things however that really don't belong in the rts (like
    the generated constants haskell type, `CodeGen.Platform.h`). Those
    needed to be manually adjusted.
    
    Things of note:
    
     - No symlinking for sake of windows, so we hard-link at configure time.
    
     - `CodeGen.Platform.h` no longer as `.hs` extension (in addition to
       being moved to `compiler/`) so as not to confuse anyone, since it is
       next to Haskell files.
    
     - Blanket `-Iincludes` is gone in both build systems, include paths now
       more strictly respect per-package dependencies.
    
     - `deriveConstants` has been taught to not require a `--target-os` flag
       when generating the platform-agnostic Haskell type. Make takes
       advantage of this, but Hadrian has yet to.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
coding-style.html 17.92 KiB