Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
installedCabalVersion: Don't special-case Cabal anymore.
It uses 'build-type: Simple' now.
- Loading branch information
e2bf243
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this change broke installing older
Cabal
s which still havebuild-type:Custom
withcabal-install>=1.24
wouldn't it have been better to just check thebuild-type
of the Cabal library being built or even just the version?I don't understand all the details of #3003 so I'm probably missing something though.
e2bf243
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How does it fail?
e2bf243
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry I assumed this limitation of this patch was known.
Basically cabal-install assumes that the version of Cabal it chooses to compile Setup.hs with will be the one its going to talk to. So if cabal-install chooses to compile
Cabal-1.22.6
's Setup.hs (which still usesbuild-type:custom
) with Cabal-1.24 it will try to use flags such as--dynlibdir
which 1.22.6 doesn't know about causing an error.See at the bottom of https://gitlab.com/dxld/cabal-helper/-/jobs/33264680.
e2bf243
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK, I think we can apply such a patch (see #4787), but bootstrapping-enabled Cabals will still break like in #3003 (e.g. when
binary-0.8
is installed).e2bf243
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's fine with me as long as an install from a plain GHC bindist works :)
e2bf243
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is this only for the old-build codepaths or does it apply to new-build as well?
e2bf243
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have only tested with old-build so I don't know.
e2bf243
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For both, since new-build also uses
setupWrapper
.