Windows GitHub Action (#231)

* Migrate the Windows Msys2 build from Appveyor to GitHub Actions
* Fix build with newer versions of Msys2 (fix `vasprintf` conflict)
* Enable SQL tests on the Cygwin build on Appveyor
* Fix an error message about Bison not being available when in fact Flex was not available
* Don't fail fast with Mac and Linux GitHub Actions
This commit is contained in:
Evan Miller
2020-12-23 09:34:21 -05:00
committed by GitHub
parent 76c2ada332
commit 2becb08714
4 changed files with 32 additions and 35 deletions

View File

@@ -6,7 +6,6 @@ platform: x64
environment:
matrix:
- TOOLCHAIN: "msys2"
- TOOLCHAIN: "cygwin"
branches:
@@ -19,33 +18,12 @@ clone_folder: c:\projects\mdbtools
skip_tags: true
build_script:
- ps: |
if ($env:TOOLCHAIN -eq "msys2")
{
$env:MSYSTEM="MINGW64"
C:\msys64\usr\bin\bash -l -c "cd /c/projects/mdbtools && git clone https://github.com/mdbtools/mdbtestdata.git test"
C:\msys64\usr\bin\bash -l -c "cd /c/projects/mdbtools && autoreconf -i -f"
C:\msys64\usr\bin\bash -l -c "cd /c/projects/mdbtools && ./configure --disable-man --disable-silent-rules"
C:\msys64\usr\bin\bash -l -c "cd /c/projects/mdbtools && make"
}
else
{
C:\cygwin64\setup-x86_64.exe -qP bison flex libiodbc-devel
C:\cygwin64\bin\sh -lc "cd /cygdrive/c/projects/mdbtools && git clone https://github.com/mdbtools/mdbtestdata.git test"
C:\cygwin64\bin\sh -lc "cd /cygdrive/c/projects/mdbtools && autoreconf -i -f"
C:\cygwin64\bin\sh -lc "cd /cygdrive/c/projects/mdbtools && ./configure --disable-man --disable-silent-rules"
C:\cygwin64\bin\sh -lc "cd /cygdrive/c/projects/mdbtools && make"
}
- C:\cygwin64\setup-x86_64.exe -q -P bison -P flex -P libiconv-devel
- C:\cygwin64\bin\sh -lc "cd /cygdrive/c/projects/mdbtools && git clone https://github.com/mdbtools/mdbtestdata.git test"
- C:\cygwin64\bin\sh -lc "cd /cygdrive/c/projects/mdbtools && autoreconf -i -f"
- C:\cygwin64\bin\sh -lc "cd /cygdrive/c/projects/mdbtools && ./configure --disable-man --disable-silent-rules"
- C:\cygwin64\bin\sh -lc "cd /cygdrive/c/projects/mdbtools && make"
test_script:
- ps: |
if ($env:TOOLCHAIN -eq "msys2")
{
$env:MSYSTEM="MINGW64"
C:\msys64\usr\bin\bash -l -c "cd /c/projects/mdbtools && ./test_script.sh"
C:\msys64\usr\bin\bash -l -c "cd /c/projects/mdbtools && ./test_sql.sh"
}
else
{
C:\cygwin64\bin\sh -lc "cd /cygdrive/c/projects/mdbtools && ./test_script.sh"
}
- C:\cygwin64\bin\sh -lc "cd /cygdrive/c/projects/mdbtools && ./test_script.sh"
- C:\cygwin64\bin\sh -lc "cd /cygdrive/c/projects/mdbtools && ./test_sql.sh"