name: CI on: pull_request: paths: - src/** - cmake/** - CMakeLists.txt - .github/workflows/ci.yml concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: ci: runs-on: windows-latest name: CI steps: - uses: actions/checkout@v3 - name: Check CMake version run: cmake --version - name: Setup MSVC environment uses: ilammy/msvc-dev-cmd@v1 with: arch: amd64 - name: Generate CMake project run: cmake -D CMAKE_BUILD_TYPE=RelWithDebInfo -D OPTIMIZE=YES -S. -Bbuild -G Ninja - name: Build 64bit release DLL run: cmake --build ./build --config RelWithDebInfo --target YimMenu -- - name: Check if DLL got built run: if (-Not (Test-Path -path "build/YimMenu.dll")) {throw 1} - name: Rename DLL to YimMenu-dev-{GITHUB_SHA}.dll run: | del YimMenu-dev-*.dll del YimMenu-dev-*.pdb ren YimMenu.dll YimMenu-dev-${{github.sha}}.dll ren YimMenu.pdb YimMenu.pdb working-directory: build/ - name: Upload Artifact (dll) uses: actions/upload-artifact@v3 with: name: binary path: | build/YimMenu-dev-*.dll - name: Upload Artifact (pdb) uses: actions/upload-artifact@v3 with: name: pdb path: | build/YimMenu.pdb