-
Notifications
You must be signed in to change notification settings - Fork 9
Conversation
Add a Windows build GitHub action for CI purposes. This is not as flexible as the Linux and macOS builds yet as it doesn't use the matrix layout to build multiple versions. However, this should get us initial coverage for Windows. Fixes: SwiftDocOrg#7
Still need to figure out how to deal with the libxml2 dependency |
^ Pushed an arbitrary commit to get CI running after c1a0b84 |
Use libxml2 from //swift/build project to bootstrap.
@mattt - what do you think of depending on //swift/build for this for the time being? I need to look into getting libxml2 built locally, but I figure that I will soon be dealing with the same problem for graphviz, and can just enhance this as a follow up then. |
@compnerd Whatever you need to make this work on Windows, I'm all for it. I'm honestly amazed that you got CI to pass in the first place. To clarify, the dependency on //swift/build that you're describing is this step in the workflow, where you download a build artifact from Azure Pipelines, right? My only concern is about whether those blobs eventually disappear. That may be a moot issue if we get libxml2 building in CI. But even then, it might be nice to avoid rebuilding that on every CI run. If you're looking for something more durable, we could package the build artifact as an OCI container using Skopeo and put it in GitHub Container Registry for long-term storage. Alternatively, I was surprised that there wasn't already an entry for libxml2 on Chocolatey, but some other folks might appreciate having that. But for now, I wouldn't let perfect be the enemy of good. I'm thrilled to see this working, and am excited to keep making forward progress on all of this. |
Haha, building on Windows has been getting much easier and better over time :) Yes, the dependency is the libxml2 prebuilt. We could look at using chocolatey, it should have libxml2, but I don't know what the build types are. The prebuilt on Azure is actually static code, so no DLL to distribute with it. Its unlikely to disappear - it is used for building Foundation for the snapshots. |
Add a Windows build GitHub action for CI purposes. This is not as flexible as
the Linux and macOS builds yet as it doesn't use the matrix layout to build
multiple versions. However, this should get us initial coverage for Windows.
Fixes: #7