name: libsnappy inputs: refId: type: string required: true config: type: string required: true runs: using: "composite" steps: - name: Set up GIT shell: cmd run: | git config --global core.autocrlf false git config --global core.eol lf - name: Checkout Snappy uses: actions/checkout@v3 with: repository: google/snappy ref: ${{ inputs.refId }} path: snappy - name: Set up MSYS2 uses: msys2/setup-msys2@v2 with: install: base-devel binutils autotools automake mingw-w64-x86_64-cmake nasm path-type: inherit - name: Build Snappy shell: cmd env: vsPath: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\ cFlags: ${{ inputs.config == 'release' && '-MD' || '-MDd' }} msbuildConfig: ${{ inputs.config == 'release' && 'Release' || 'Debug' }} run: | call "${{ env.vsPath }}VC\Auxiliary\Build\vcvars64.bat" md build build\include build\lib build\lib\pkgconfig dist cd snappy git submodule update --init md work cd work cmake -G "Visual Studio 17 2022" .. -DCMAKE_INSTALL_PREFIX=..\..\build -DBUILD_SHARED_LIBS=OFF -DSNAPPY_BUILD_TESTS=OFF MSBuild.exe /property:Configuration="${{ env.msbuildConfig }}" Snappy.sln D:\a\_temp\setup-msys2\msys2.cmd -c 'cp ${{ inputs.config }}/snappy.lib ../../build/lib/snappy.lib ; cp ../snappy.h ../snappy-c.h ../../build/include/ ; cd ../../build ; tar czf ../dist/libsnappy.tgz *' - name: Publish artifact uses: actions/upload-artifact@v2 with: name: libsnappy-${{ runner.os }}-${{ inputs.config }} path: dist/libsnappy.tgz