diff --git a/.github/workflows/run_tests_win_cygwin.yml b/.github/workflows/run_tests_win_cygwin.yml new file mode 100644 index 0000000000..55b7be9934 --- /dev/null +++ b/.github/workflows/run_tests_win_cygwin.yml @@ -0,0 +1,60 @@ +name: Run Cygwin-based tests + +on: [push, pull_request, workflow_dispatch] + +env: + SHELLOPTS: igncr + CHERE_INVOKING: 1 + CYGWIN_NOWINPATH: 1 + +jobs: + build-and-test: + runs-on: windows-latest + defaults: + run: + shell: bash -eo pipefail -o igncr "{0}" + timeout-minutes: 30 + + name: Cygwin-based tests + + steps: + - name: Fix line endings + run: git config --global core.autocrlf input + + - uses: actions/checkout@v2 + + - uses: cygwin/cygwin-install-action@v2 + with: + platform: x86_64 + packages: >- + git automake libtool autoconf2.5 make cmake libhdf5-devel + libhdf4-devel zipinfo libxml2-devel perl zlib-devel + libzstd-devel libbz2-devel libaec-devel libzip-devel + libdeflate-devel gcc-core + + - name: (Autotools) Run autoconf and friends + run: | + cp -f /bin/dash /bin/sh + mkdir m4 + /bin/dash /usr/bin/libtoolize --force --copy --verbose + /usr/bin/autoreconf-2.69 --force --install --verbose --debug + + - name: (Autotools) Configure in-tree build + run: >- + /bin/dash ./configure --enable-hdf5 --enable-shared + --disable-static --enable-dap --disable-dap-remote-tests + --enable-plugins --disable-nczarr-filters + --disable-nczarr-s3 --disable-nczarr-s3-tests --disable-nczarr + + - name: Look at config.log if error + if: ${{ failure() }} + run: cat config.log + + - name: Print summary + run: cat libnetcdf.settings + + - name: (Autotools) Build library and utilities + run: make -j8 SHELL=/bin/dash + + - name: (Autotools) Build and run tests + run: make check -j8 SHELL=/bin/dash