1name: CI NMake 2on: [push, pull_request] 3jobs: 4 ci-cmake: 5 name: ${{ matrix.name }} 6 runs-on: ${{ matrix.os }} 7 strategy: 8 fail-fast: false 9 matrix: 10 include: 11 - name: Windows NMake x86 12 os: windows-latest 13 makefile: win32/Makefile.msc 14 vc-vars: x86 15 16 - name: Windows NMake x64 17 os: windows-latest 18 makefile: win32/Makefile.msc 19 vc-vars: x86_amd64 20 21 - name: Windows NMake ARM No Test 22 os: windows-latest 23 makefile: win32/Makefile.arm 24 vc-vars: x86_arm 25 26 - name: Windows NMake ARM64 No Test 27 os: windows-latest 28 makefile: win32/Makefile.a64 29 vc-vars: x86_arm64 30 31 steps: 32 - name: Checkout repository 33 uses: actions/checkout@v1 34 35 - name: Compile source code 36 shell: cmd 37 run: | 38 call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" ${{ matrix.vc-vars }} 39 nmake -f ${{ matrix.makefile }} 40 41 - name: Run test cases 42 shell: cmd 43 # Don't run tests on Windows ARM 44 if: contains(matrix.vc-vars, 'arm') == false 45 run: | 46 call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" ${{ matrix.vc-vars }} 47 nmake -f ${{ matrix.makefile }} test 48 nmake -f ${{ matrix.makefile }} testdll 49