16 runs-on: windows-latest
18 - name: Turn off line ending conversion in git
20 git config --global core.autocrlf false
21 git config --global core.eol lf
22 - uses: actions/checkout@v1
25 - uses: actions/cache@v4
27 path: C:\cygwin-packages
28 key: cygwin-packages-${{ hashFiles('C:\cygwin-packages\**') }}
29 restore-keys: cygwin-packages-
30 - name: Fetch Cygwin installer
32 Invoke-WebRequest https://cygwin.com/setup-x86_64.exe -OutFile C:\setup.exe
34 # installer should be cacheable
35 - name: Install Cygwin
37 c:\setup.exe -qgnO -s http://mirrors.kernel.org/sourceware/cygwin/ -l C:\cygwin-packages\ -P ^
54 gobject-introspection,^
73 libgdk_pixbuf2.0-devel,^
74 libgirepository1.0-devel,^
93 mingw64-i686-gcc-core,^
94 mingw64-i686-qt5-base,^
95 mingw64-i686-qt5-tools,^
109 python37-setuptools,^
112 python38-setuptools,^
116 python39-setuptools,^
127 run: echo "PATH=C:\cygwin64\bin;C:\cygwin64\lib\lapack;%SYSTEMROOT%\system32" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
128 - name: Fixup Cygwin installation
131 bash -c '/usr/sbin/alternatives --set python /usr/bin/python3.8'
132 bash -c '/usr/sbin/alternatives --set python3 /usr/bin/python3.8'
133 bash -c '/usr/sbin/alternatives --set python3-config /usr/bin/python3.8-config'
134 bash -c 'sed -i s#/usr/bin/python\$#/usr/bin/python3.9# /usr/bin/pip3.9'
135 bash -c 'git config --system --add safe.directory /cygdrive/d/a/cygport/cygport'
136 bash -c 'git config --system --add safe.directory /cygdrive/d/a/cygport/cygport/data/gnuconfig'
137 continue-on-error: true
140 bash -c 'meson _build && ninja -C _build'
143 bash -c 'meson test -C _build --print-errorlogs'
144 - name: Upload test logs
145 uses: actions/upload-artifact@v4
148 path: _build/meson-logs/*
149 if: ${{ !cancelled() }}