> I'd like to understand more about what difficulties packagers have with
> Hadrian.
I can only speak for packaging ghc in haskell.nix.
- non-standard bespoke (make, cmake) build system.
- a moving build system that changes over time how things work.
- obscure edge cases breaking (stage1 cross ghc installation), cross compilers,
…
- bisecting being hard because the build system and compiler are symbiotic.
And then of course the fact that it’s basically a custom cabal-install, but
only half way there.
E.g. duplicate effort, but still bespoke, and then some custom symbiotic logic
encoded in
the build system specifically for this one compiler (-version).
That’s also the reason why stable-haskell cabalized everything. To properly get
stage1/stage2
support we had to add cross compiler support to cabal (boot is the build
compiler for stage1,
stage1 is the build compiler for stage2, similar to how a native compiler is
the build compiler for
a cross compiler).
I think what would be nice would be if cabal could be the cabal project -> buck
project translator.
That would allow any generic cabal project (e.g. ghc) to be buildable via buck.
Best,
Moritz
_______________________________________________
ghc-devs mailing list -- [email protected]
To unsubscribe send an email to [email protected]