name: Build FFmpeg on: workflow_dispatch: inputs: config: description: 'Configuration' required: true default: 'Debug' jobs: oneVPL: runs-on: windows-2019 steps: - name: Set up WSL uses: Vampire/setup-wsl@v1.2.0 with: distribution: Debian - name: Set up MSBuild uses: microsoft/setup-msbuild@v1.1 with: msbuild-architecture: x64 - name: Set up cache uses: actions/cache@v2 env: cache-name: cache-ffmpeg with: path: ~/build key: ${{ env.cache-name }} - name: Cloning GIT repository uses: actions/checkout@v3 with: submodules: 'true' - name: Build oneVPL shell: wsl-bash {0} run: | PATH=/mnt/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64:/mnt/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2019/Enterprise/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/bin:$PATH mkdir build dist cd build cmake.exe -G "Visual Studio 16 2019" ../repos/oneVPL -T host=x64 -A x64 -DBUILD_TOOLS=OFF -DBUILD_EXAMPLES=OFF -DBUILD_SHARED_LIBS=OFF -DCMAKE_INSTALL_PREFIX=../dist -DCMAKE_VS_INCLUDE_INSTALL_TO_DEFAULT_BUILD=ON MSBuild.exe -t:VPL,INSTALL -p:Configuration=${{github.event.inputs.config}} -m oneVPL.sln cd ../dist tar czvf ../oneVPL.tgz include lib - name: Publish artifact uses: actions/upload-artifact@v2 with: name: oneVPL path: oneVPL.tgz FFmpeg: runs-on: windows-2019 needs: [oneVPL] steps: - name: Set up WSL uses: Vampire/setup-wsl@v1.2.0 with: distribution: Debian - name: Set up MSBuild uses: microsoft/setup-msbuild@v1.1 with: msbuild-architecture: x64 - name: Set up cache uses: actions/cache@v2 env: cache-name: cache-ffmpeg with: path: ~/build key: ${{ env.cache-name }} - name: Cloning GIT repository uses: actions/checkout@v3 with: submodules: 'true' - name: Get artifacts uses: actions/download-artifact@master with: name: oneVPL - name: Build FFmpeg shell: wsl-bash {0} run: | mkdir build BUILD=$(realpath build) tar zxf *.tgz -C build cd repos/ffmpeg PKG_CONFIG_PATH=$BUILD/lib/pkgconfig echo $PKG_CONFIG_PATH echo ./configure --toolchain=msvc --extra-cflags='-MDd -I$BUILD/include' --extra-ldflags='-LIBPATH:$BUILD/lib' --prefix=$BUILD --pkg-config-flags='--static' --disable-doc --disable-shared --enable-static --enable-runtime-cpudetect --disable-devices --disable-demuxers --disable-decoders --disable-network --enable-w32threads --enable-gpl --enable-libvpl ./configure --toolchain=msvc --extra-cflags='-MDd -I$BUILD/include' --extra-ldflags='-LIBPATH:$BUILD/lib' --prefix=$BUILD --pkg-config-flags='--static' --disable-doc --disable-shared --enable-static --enable-runtime-cpudetect --disable-devices --disable-demuxers --disable-decoders --disable-network --enable-w32threads --enable-gpl --enable-libvpl ls -laR $BUILD