Skip to content

Commit

Permalink
Replace AppVeyor for GitHub Actions workflow for Windows builds
Browse files Browse the repository at this point in the history
Note AppVeyor will need turning off in settings too or the tests will
start and fail due to the removal of the config file.
  • Loading branch information
jkbonfield committed Sep 26, 2024
1 parent 921d59b commit e879d29
Show file tree
Hide file tree
Showing 4 changed files with 56 additions and 53 deletions.
52 changes: 0 additions & 52 deletions .appveyor.yml

This file was deleted.

2 changes: 1 addition & 1 deletion .ci_helpers/clone
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ ref=''
[ -z "$ref" ] && repository='https://github.com/samtools/htslib.git'

set -x
git clone --recurse-submodules --shallow-submodules --depth=1 ${ref:+--branch="$branch"} "$repository" "$localdir"
git clone --recurse-submodules --shallow-submodules --depth=2 ${ref:+--branch="$branch"} "$repository" "$localdir"

# NB: "samtools" as the owner/organisation, not the repo name
if [ "x$owner" = "xsamtools" -a -z "$ref" -a "x$htslib_PR" != "x" ]
Expand Down
3 changes: 3 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,6 @@
.git* export-ignore
.ci_helpers export-ignore
README.md export-ignore

# Prevent Windows cr-lf endings.
test/** -text
52 changes: 52 additions & 0 deletions .github/workflows/windows-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: Windows/MinGW-W64 CI
on: [push, pull_request]

jobs:
build:
runs-on: windows-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
- name: Set up MSYS2 MinGW-W64
uses: msys2/setup-msys2@v2
with:
msystem: mingw64
update: false
install: >-
mingw-w64-x86_64-toolchain
mingw-w64-x86_64-autotools
mingw-w64-x86_64-curl
mingw-w64-x86_64-libdeflate
mingw-w64-x86_64-tools-git
mingw-w64-x86_64-zlib
mingw-w64-x86_64-bzip2
mingw-w64-x86_64-xz
- name: Clone htslib
shell: msys2 {0}
run: |
export PATH="$PATH:/mingw64/bin:/c/Program Files/Git/bin"
export MSYSTEM=MINGW64
htslib_pr=`git log -2 --format='%s' | sed -n 's/.*htslib#\([0-9]*\).*/\1/p'`
.ci_helpers/clone ${GITHUB_REPOSITORY_OWNER} htslib htslib ${GITHUB_HEAD_REF:-$GITHUB_REF_NAME} $htslib_pr
pushd .
cd htslib
autoreconf -i
popd
- name: Compile bcftools
shell: msys2 {0}
run: |
export PATH="$PATH:/mingw64/bin:/c/Program Files/Git/bin"
export MSYSTEM=MINGW64
autoheader
autoconf -Wno-syntax
./configure --enable-werror
make -j4
- name: Check bcftools
shell: msys2 {0}
run: |
export PATH="$PATH:/mingw64/bin:/c/Program Files/Git/bin"
export MSYSTEM=MINGW64
make check

0 comments on commit e879d29

Please sign in to comment.