Skip to content
  • John Ericson's avatar
    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