-
Notifications
You must be signed in to change notification settings - Fork 443
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
Windows builds via GitHub Actions #1796
Conversation
I was initially going to suggest a That's a long thread, but actions/checkout#135 (comment) makes a very good point that just doing a blanket |
I confess for the Samtools one I gave up worrying about every little extension and just went for |
355a4bc
to
aa9c5c0
Compare
.github/workflows/windows-build.yml
Outdated
run: | | ||
export PATH=/mingw64/bin:$PATH | ||
export MSYSTEM=MINGW64 | ||
make check |
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.
Compared with the old script, we've lost make test-shlib-exports
. Assuming it does actually work on Windows, it's probably useful to have.
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.
Good spot. I'm assuming it does work as it was in the appveyor config. I'll put it back and see what happens.
Hmm, disappointingly adding back the test-shlib-exports now fails:
I initially thought they're all erroneous things from the templates-in-C style of klib, but |
b5f0997
to
8ca61a7
Compare
Also amend .gitattributes file for more Windows text-mode removal as for some reason the GitHub Actions git is much more likely to use CR-LF line endings. Added libdeflate to the windows build. Corrected test/header_syms.pl to work on windows line endings.
8ca61a7
to
1955431
Compare
Fixing the header checking perl script to cope with windows line endings worked. So I've patched that and done some rebasing and squashing of commits. Assuming it now passes this is ready for re-review. |
As foretold, the htscodecs submodule commit needs to be adjusted. It also might be good to leave the AppVeyor configuration in place for now, for a less messy transition. Once the couple of recent pull requests that straddle the change have been committed, (#1797, #1799) we can turn it off in the settings and push a commit to remove the configuration. |
Ah yes I meant to update the htscodecs submodule and forgot. I was assuming we'd just turn off the appveyor, rerun tests, and if it passed merge it. But we can do it in two separate PRs if really needed. It's minor fluff tbh. |
1955431
to
a3403fa
Compare
Completes the migration of Windows testing to GitHub actions. GitHub actions tests were added in commit 624e95b (PR samtools#1796).
The AppVeyor builds have become slower to launch and they're also a bit slow on execution. GitHub Actions runs in about half the time.
Note this needs samtools/htscodecs#123 merging first, but for purposes of testing I just incorporated it in this PR via an extra commit to change the submodule commit. If the htscodecs PR gets modified in any way, changing the hash, then I'll update this appropriately.
Also, if you wish to see these tests in-situ here, we could copy this PR branch to samtools/htslib from jkbonfield/htslib as otherwise it won't enable the workflow. (As I did for htscodecs)