name: liboggvorbis on: workflow_call: inputs: env: type: string required: true default: 'windows-2022' description: 'Environment' config: type: string required: true default: 'debug' description: 'Configuration' env: vsPath: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\ cFlags: ${{ inputs.config == 'release' && '-MD' || '-MDd' }} jobs: liboggvorbis: runs-on: ${{ inputs.env }} steps: - name: Set up GIT run: | git config --global core.autocrlf false git config --global core.eol lf - name: Checkout Ogg uses: actions/checkout@v3.0.0 with: repository: xiph/ogg ref: master path: ogg - name: Checkout Vorbis uses: actions/checkout@v3.0.0 with: repository: xiph/vorbis ref: master path: vorbis - name: Check cache id: liboggvorbis-cache uses: actions/cache@v3 with: path: dist key: liboggvorbis-${{ inputs.env }}-${{ inputs.config }}-${{ hashFiles('ogg') }}-${{ hashFiles('vorbis') }} - name: Set up MSYS2 if: steps.liboggvorbis-cache.outputs.cache-hit != 'true' uses: msys2/setup-msys2@v2 with: install: base-devel binutils autotools automake path-type: inherit - name: Build Ogg if: steps.liboggvorbis-cache.outputs.cache-hit != 'true' shell: cmd run: | call "${{ env.vsPath }}VC\Auxiliary\Build\vcvars64.bat" md build D:\a\_temp\setup-msys2\msys2.cmd -c 'cd ogg ; autoreconf -i ; CC=cl.exe CXX=cl.exe CXXFLAGS=${{ env.cFlags }} ./configure --prefix=$(realpath ../build) --disable-shared ; make -j ; make install' - name: Build Vorbis if: steps.liboggvorbis-cache.outputs.cache-hit != 'true' shell: cmd run: | call "${{ env.vsPath }}VC\Auxiliary\Build\vcvars64.bat" md dist D:\a\_temp\setup-msys2\msys2.cmd -c 'cd vorbis ; autoreconf -i ; CC=cl.exe CXX=cl.exe CXXFLAGS=${{ env.cFlags }} ./configure --prefix=$(realpath ../build) --disable-shared ; make -j ; make install ; sed -i '/^Libs\.private.*/d' ../build/lib/pkgconfig/vorbis.pc ; cd ../build ; tar czf ../dist/liboggvorbis.tgz *' - name: Publish artifact uses: actions/upload-artifact@v2 with: name: liboggvorbis-${{ inputs.env }}-${{ inputs.config }} path: dist/liboggvorbis.tgz