Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Actually build bindists via GitHub actions #15

Open
TerrorJack opened this issue May 13, 2024 · 3 comments
Open

Actually build bindists via GitHub actions #15

TerrorJack opened this issue May 13, 2024 · 3 comments

Comments

@TerrorJack
Copy link
Member

I'm thinking of actually building bindists here on a weekly basis, in addition to pulling artifacts from GHC gitlab. Some reasons I can think of:

  • GHC gitlab artifacts only contain x86_64-linux bindists. Here we can build for more platforms without using the rather scarce CI runner resource of GHC gitlab, so users on other platforms can try the ghc wasm backend directly without having to build from source.
  • GHC gitlab CI currently builds the wasm bindists as release flavour. This was a coincidence since there were a lot of compilation warnings that prevents validate flavour from being built; in the future those warnings may get gradually corrected and we can't rely on the assumption that GHC gitlab will keep building release bindists for us.
  • Tighter control over CI config and much shorter improvement cycle, compared to attempting to change GHC CI config.
@hasufell
Copy link

There is a project https://github.com/stable-haskell which has multiple private runners hooked up from me and @angerman . The end goal is to compile GHC independent on GH actions for use with ghcup and others (@angerman has a use case for maintaining patched GHCs too).

I wonder if a joint effort would be interesting here.

My own idea is that I want ghcup compile ghc to be powerful and ergonomic enough that it can be used for such pipelines, abstracting over build system differences across versions.

And indeed, you already can use ghcup to compile cross targets.

@TerrorJack
Copy link
Member Author

Thanks for the offer; initially I'd like to only compile ghc-head first, instead of point releases, to ensure the latest wasm related improvements reach end users as quickly as possible with reasonable usage of GitHub CI resource, and that surely doesn't sound "stable".

I haven't ever used ghcup compile ghc myself yet, though I'll make sure to actually give it a try when setting up bindist build here.

@TerrorJack
Copy link
Member Author

Gotta migrate wasi-sdk builds to here as well. The ghc gitlab darwin runner #431 (LZcoKNnKz) aarch64-darwin-1_Mini18-Beta_f87b8a204711 has outdated system/toolchain and wasi-sdk tests fail with Illegal instruction: 4 somehow.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants