-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Fix MSys2 side-conditions for conf-packages, part 1/3 #28939
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
Conversation
6790b2a to
3fe58f4
Compare
|
This further revealed that the glade package names were a bit off for MSys2:
(this could of course have changed since #26812) |
|
So the MSys2 workflow is failing The former is as mentioned above because no i686 glade package is available on MSys2 as noted in the file in the above commit 704e9bf. The latter is because no i686 gtk2 package is available as noted in the file in commit 1059bfa. As such, this is now working as expected. I'll await the completion of the opam-ci workflow before commenting on that. |
|
CI summary for
None of these were caused by the MSys2 side-condition fixes of this PR. |
|
Thanks. Let's merge this indeed |
This PR fixes a bunch of MSys2 side-conditions for conf-packages:
- conf-ao
- conf-cairo
- conf-freetype
- conf-glade
- conf-gnomecanvas
- conf-gnutls
- conf-gtk2
- conf-gtk3
It is the first of 3 such expected PRs.
Quoting #28806:
Recalling https://github.com/ocaml/opam-repository/wiki/Depexts-os-distribution---os-family-values
consider a build condition such the following from
conf-ao:On MSys2 with
os = "win32"andos-distribution = "msys2"this would thus run eitherpkgconf --personality=i686-w64-mingw32 pkg-config --print-errors --exists aoorpkgconf --personality=x86_64-w64-mingw32 pkg-config --print-errors --exists aowith an unwanted
pkg-configin there in the middle! 😮The reason there's a bunch of correction to do, is I based several MinGW-PRs on the template PR: #26072
That PR predates opam.2.2 (it was prepared prior to the release I believe) where
os-distributionchanged to"msys2"from"cygwin".With
os = "win32"we consider 3 possibleos-distributions:cygwin,msys2,cygwinportshttps://github.com/ocaml/opam-repository/wiki/Depexts-os-distribution---os-family-values
The shortest fix to catch the former 2 with these side-conditions is thus to use
os = "win32" & os-distribution != "cygwinports"like we already do in thedependsfield.