changeset 30975:791bc376f979 stable

GitHub-CI (windows): Clean-up job rule. * .github/workflows/make.yaml: Simplify job matrix. Support relocating MSYS2.
author Markus Mützel <markus.muetzel@gmx.de>
date Sun, 01 May 2022 11:38:16 +0200
parents 973be5be3327
children 044c48ebbf8e 302faf5bc425
files .github/workflows/make.yaml
diffstat 1 files changed, 13 insertions(+), 17 deletions(-) [+]
line wrap: on
line diff
--- a/.github/workflows/make.yaml	Sat Apr 30 08:48:19 2022 -0700
+++ b/.github/workflows/make.yaml	Sun May 01 11:38:16 2022 +0200
@@ -294,7 +294,7 @@
 
       - name: analyze test suite results
         # Make sure the test summary lists 0 "FAIL"s and no "REGRESSION"
-        run:  |
+        run: |
           [ -n "$(grep -e "FAIL\s*0" ./test-suite.log)" ] || echo "::warning::At least one test failed"
           [ -z "$(grep -e "REGRESSION" ./test-suite.log)" ] || echo "::warning::At least one regression in test suite"
           echo Finished analyzing test suite results.
@@ -315,24 +315,19 @@
       matrix:
         # For available GitHub-hosted runners, see: https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners
         os: [windows-latest]
-        compiler: [gcc]
-        target: [x86_64, i686]
+        msystem: [MINGW64, MINGW32]
         include:
-          - compiler: gcc
-            target: x86_64
+          - msystem: MINGW64
+            mingw-prefix: mingw64
             target-triplet: x86_64-w64-mingw32
             target-prefix: mingw-w64-x86_64
-            msystem: MINGW64
-            mingw-prefix: mingw64
             cc: gcc
             cxx: g++
             f77: gfortran
-          - compiler: gcc
-            target: i686
+          - msystem: MINGW32
+            mingw-prefix: mingw32
             target-triplet: i686-w64-mingw32
             target-prefix: mingw-w64-i686
-            msystem: MINGW32
-            mingw-prefix: mingw32
             cc: gcc
             cxx: g++
             f77: gfortran
@@ -355,7 +350,8 @@
         run : |
           Get-CIMInstance -Class Win32_Processor | Select-Object -Property Name
 
-      - uses: msys2/setup-msys2@v2
+      - name: install MSYS2 build environment
+        uses: msys2/setup-msys2@v2
         with:
           update: true
 
@@ -436,10 +432,10 @@
         uses: actions/cache@v2
         with:
           path: C:/msys64/home/runneradmin/.ccache
-          key: ccache:${{ matrix.os }}:${{ matrix.compiler }}:${{ matrix.target }}:${{ github.ref }}:${{ steps.ccache_cache_timestamp.outputs.timestamp }}:${{ github.sha }}
+          key: ccache:${{ matrix.os }}:${{ matrix.msystem }}:${{ github.ref }}:${{ steps.ccache_cache_timestamp.outputs.timestamp }}:${{ github.sha }}
           restore-keys: |
-            ccache:${{ matrix.os }}:${{ matrix.compiler }}:${{ matrix.target }}:${{ github.ref }}
-            ccache:${{ matrix.os }}:${{ matrix.compiler }}:${{ matrix.target }}:refs/heads/stable
+            ccache:${{ matrix.os }}:${{ matrix.msystem }}:${{ github.ref }}
+            ccache:${{ matrix.os }}:${{ matrix.msystem }}:refs/heads/stable
 
       - name: configure ccache
         # Limit the maximum size and switch on compression to avoid exceeding the total disk or cache quota.
@@ -506,7 +502,7 @@
         # remove the directory with the ccache wrappers from PATH.
 
         run: |
-          echo "makeinfo_program ('$(cygpath -w /usr/bin | cut -c1,2) && cd $(cygpath -w /usr/bin) && perl makeinfo');" \
+          echo "makeinfo_program (sprintf ('%s && cd %s && perl makeinfo', [s=nthargout(2, @system, 'cygpath -w /usr/bin')](1:2), strtrim (s)));" \
             >> ./scripts/startup/site-rcfile
           export PATH=$(echo "$PATH" | sed -e "s|$MINGW_PREFIX/lib/ccache/bin:||g")
           make -C ./.build check | tee ./test-suite.log
@@ -519,7 +515,7 @@
 
       - name: analyze test suite results
         # Make sure the test summary lists 0 "FAIL"s and no "REGRESSION"
-        run:  |
+        run: |
           [ -n "$(grep -e "FAIL\s*0" ./test-suite.log)" ] || echo "::warning::At least one test failed"
           [ -z "$(grep -e "REGRESSION" ./test-suite.log)" ] || echo "::warning::At least one regression in test suite"
           echo Finished analyzing test suite results.