Skip to content

Build release archives (and validate) with GHC 9.2.3 #8272

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

Merged
merged 3 commits into from
Jul 8, 2022

Conversation

Mikolaj
Copy link
Member

@Mikolaj Mikolaj commented Jul 7, 2022

Fixes #8271.

Do we need this in a changelog? I guess not, just as we don't file CI changes? Though this one is user-visible, namely for the users of our binary archives.

@Mikolaj
Copy link
Member Author

Mikolaj commented Jul 7, 2022

So far, so good. I've pushed tag test-tag-build-with-ghc-9 to check how gitlab reacts here https://gitlab.haskell.org/haskell/cabal/-/pipelines/ and so far no reaction, but it's normal, it probably syncs once half an hour or so.

Copy link
Collaborator

@ulysses4ever ulysses4ever left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As it is user-visible (or, at least, user-sensible), I’d think changelog may make sense. But I defer to your judgement. I am also wondering how possible that this switch breaks something. If it will, though, it will probably be subtle, and a changelog will hardly help.

@Mikolaj
Copy link
Member Author

Mikolaj commented Jul 8, 2022

@hasufell: do I read it right that GHC 9.2.3 is not available in ghcup for build-armv7-linux-deb10 and build-i386-linux-alpine at

https://gitlab.haskell.org/haskell/cabal/-/pipelines/54257

but GHC 8.10.7 is at

https://gitlab.haskell.org/haskell/cabal/-/pipelines/52918

? Why so? What do I need to tweak?

@hasufell
Copy link
Member

hasufell commented Jul 8, 2022

@hasufell: do I read it right that GHC 9.2.3 is not available in ghcup for build-armv7-linux-deb10 and build-i386-linux-alpine at

https://gitlab.haskell.org/haskell/cabal/-/pipelines/54257

but GHC 8.10.7 is at

https://gitlab.haskell.org/haskell/cabal/-/pipelines/52918

? Why so? What do I need to tweak?

For armv7, there are simply no official bindists: https://downloads.haskell.org/~ghc/9.2.3/

For i386 alpine, I've been trying to get official bindists since over a year: https://gitlab.haskell.org/ghc/ghc/-/merge_requests/5213

Before, I built them manually. I won't do that anymore.

So both is up to GHC developers.

@Mikolaj
Copy link
Member Author

Mikolaj commented Jul 8, 2022

@hasufell: thank you. In that case, I'm merging and backporting.

@bgamari: is there a chance for GHC 9.2.3 on armv7 and i386 alpine? If not, GHC 9.2.4?

@Mikolaj Mikolaj added the merge me Tell Mergify Bot to merge label Jul 8, 2022
@mergify mergify bot merged commit 2e9af5b into haskell:master Jul 8, 2022
@Mikolaj
Copy link
Member Author

Mikolaj commented Jul 8, 2022

@Mergifyio backport 3.8

@mergify
Copy link
Contributor

mergify bot commented Jul 8, 2022

backport 3.8

✅ Backports have been created

mergify bot added a commit that referenced this pull request Jul 8, 2022
…#8273)

* Build release archives (and validate) with GHC 9.2.3

(cherry picked from commit f55ae05)

# Conflicts:
#	.gitlab-ci.yml

* Add a changelog file

(cherry picked from commit 73323db)

* Fix bootstrap cabal-install version in gitlab-ci.yml

(cherry picked from commit 5ee0cab)

# Conflicts:
#	.gitlab-ci.yml

* Update .gitlab-ci.yml, fixing a shallow conflict

Co-authored-by: Mikolaj Konarski <[email protected]>
Co-authored-by: Mikolaj Konarski <[email protected]>
@bgamari
Copy link
Contributor

bgamari commented Jul 15, 2022

@hasufell: thank you. In that case, I'm merging and backporting.

@bgamari: is there a chance for GHC 9.2.3 on armv7 and i386 alpine? If not, GHC 9.2.4?

Indeed we can try for 9.2.4. However, I do recall running into toolchain trouble last time I attempted to build an ARMv7 release binary distribution.

I'm trying again to introduce i386/Alpine support in https://gitlab.haskell.org/ghc/ghc/-/merge_requests/6983.

@bgamari
Copy link
Contributor

bgamari commented Jul 17, 2022

A quick update here:

  • I am working on fixing ARMv7. Unfortunately, it is a bit tricky since it is remarkably hard to find a linker implementation for ARMv7 that isn't broken in one way or another. See https://gitlab.haskell.org/ghc/ghc/-/issues/21875
  • I am not optimistic about i386/Alpine; I have fixed the first issue I ran into (our inability to resolve the _GLOBAL_OFFSET_TABLE_ symbol in the RTS linker). However, I quickly ran into a second issue: it appears that gcc produces relocations that the linker doesn't approve of when building a fully-static executable. I suspect this is because we are forced to compile with -fPIC to ensure that the produced objects are loadable at runtime. Sadly, it's not totally clear what to do about this. Tracking this issue in https://gitlab.haskell.org/ghc/ghc/-/issues/21876

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
attention: needs-review merge me Tell Mergify Bot to merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Build cabal releases with GHC 9.2
5 participants