diff --git a/.github/actions/build-deps/action.yml b/.github/actions/build-deps/action.yml index 4762fb853a..64e0a8fed6 100644 --- a/.github/actions/build-deps/action.yml +++ b/.github/actions/build-deps/action.yml @@ -56,6 +56,10 @@ inputs: description: Commit of libx264 to build default: '31e19f92f00c7003fa115047ce50978bc98c3a0d' type: string + libvpx: + description: Version of libvpx to build + default: '1.14.1' + type: string ffmpeg: description: Version of ffmpeg to build default: '7.0.1' @@ -117,13 +121,14 @@ runs: - uses: ./.github/actions/build-and-cache with: name: ffmpeg dependencies - cache_key: ffmpeg-${{ inputs.cache_key }}-${{ inputs.libx264 }}-${{ inputs.ffmpeg }} + cache_key: ffmpeg-${{ inputs.cache_key }}-${{ inputs.libx264 }}-${{ inputs.libvpx }}-${{ inputs.ffmpeg }} path: ${{ inputs.path }}/ffmpeg pre_build: ${{ inputs.ffmpeg_pre_build }} build: > cmake -DBUILD_TYPE=${{ inputs.build_type }} "-DLIBX264=${{ inputs.libx264 }}" + "-DLIBVPX=${{ inputs.libvpx }}" "-DFFMPEG=${{ inputs.ffmpeg }}" "-DCMAKE_PREFIX_PATH=${{ github.workspace }}/${{ inputs.path }}/qt" "-DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/${{ inputs.path }}/ffmpeg" diff --git a/.github/scripts/build-ffmpeg.cmake b/.github/scripts/build-ffmpeg.cmake index e6c61b002b..97ea4e8968 100644 --- a/.github/scripts/build-ffmpeg.cmake +++ b/.github/scripts/build-ffmpeg.cmake @@ -8,6 +8,8 @@ list(APPEND CMAKE_MODULE_PATH set(LIBX264 "31e19f92f00c7003fa115047ce50978bc98c3a0d" CACHE STRING "The commit of libx264 to build") +set(LIBVPX "1.14.1" CACHE STRING + "The version of libvpx to build") set(FFMPEG "7.0.1" CACHE STRING "The version of ffmpeg to build") option(KEEP_ARCHIVES "Keep downloaded archives instead of deleting them" OFF) @@ -18,6 +20,69 @@ set(TARGET_ARCH "x86_64" CACHE STRING include(BuildDependency) +if(LIBVPX) + set(libvpx_configure_args + --disable-dependency-tracking + --disable-docs + --disable-examples + --disable-tools + --disable-unit-tests + --disable-vp8-decoder + --disable-vp9 + --enable-pic + --enable-vp8-encoder + ) + + if(APPLE) + if(TARGET_ARCH STREQUAL "arm64") + list(PREPEND libvpx_configure_args --target=arm64-darwin20-gcc) + elseif(TARGET_ARCH STREQUAL "x86_64") + list(PREPEND libvpx_configure_args --target=x86_64-darwin20-gcc) + else() + message(FATAL_ERROR "Unhandled TARGET_ARCH '${TARGET_ARCH}'") + endif() + elseif(ANDROID) + if(TARGET_ARCH STREQUAL "arm32") + list(PREPEND libvpx_configure_args --target=armv7-android-gcc) + elseif(TARGET_ARCH STREQUAL "arm64") + list(PREPEND libvpx_configure_args --target=arm64-android-gcc) + else() + message(FATAL_ERROR "Unhandled TARGET_ARCH '${TARGET_ARCH}'") + endif() + elseif(WIN32) + if(TARGET_ARCH STREQUAL "x86") + list(PREPEND libvpx_configure_args --target=x86-win32-vs17) + elseif(TARGET_ARCH STREQUAL "x86_64") + list(PREPEND libvpx_configure_args --target=x86_64-win64-vs17) + else() + message(FATAL_ERROR "Unhandled TARGET_ARCH '${TARGET_ARCH}'") + endif() + elseif(UNIX) + if(TARGET_ARCH STREQUAL "x86") + list(PREPEND libvpx_configure_args --target=x86-linux-gcc) + elseif(TARGET_ARCH STREQUAL "x86_64") + list(PREPEND libvpx_configure_args --target=x86_64-linux-gcc) + else() + message(FATAL_ERROR "Unhandled TARGET_ARCH '${TARGET_ARCH}'") + endif() + else() + message(FATAL_ERROR "Unknown platform") + endif() + + build_dependency(libvpx ${LIBVPX} ${BUILD_TYPE} + URL https://github.com/webmproject/libvpx/archive/refs/tags/v@version@.tar.gz + TARGET_ARCH "${TARGET_ARCH}" + VERSIONS + 1.14.1 + SHA384=42392dcae787ac556e66776a03bd064e0bb5795e7d763a6459edd2127e7ffae4aafe5c755d16ec4a4ab6e9785c27684c + ALL_PLATFORMS + AUTOMAKE + ASSIGN_PREFIX + ALL + ${libvpx_configure_args} + ) +endif() + if(LIBX264) build_dependency(x264 ${LIBX264} ${BUILD_TYPE} URL https://code.videolan.org/videolan/x264/-/archive/@version@/x264-@version@.tar.gz @@ -69,6 +134,7 @@ if(FFMPEG) --disable-xlib --disable-zlib --enable-libx264 + --enable-libvpx --disable-encoders --disable-decoders --disable-muxers @@ -81,7 +147,9 @@ if(FFMPEG) --disable-devices --disable-filters --enable-encoder=libx264 + --enable-encoder=libvpx_vp8 --enable-muxer=mp4 + --enable-muxer=webm ) if(ANDROID) diff --git a/.github/scripts/cmake/BuildDependency.cmake b/.github/scripts/cmake/BuildDependency.cmake index 99e8a0130e..52d3d3d31b 100644 --- a/.github/scripts/cmake/BuildDependency.cmake +++ b/.github/scripts/cmake/BuildDependency.cmake @@ -154,6 +154,8 @@ function(_build_automake build_type target_bits source_dir) list(APPEND make_flags ${ARG_MAKE_FLAGS}) endif() + list(APPEND make_flags V=1) + list(APPEND env "MACOSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET}") # https://developer.android.com/ndk/guides/other_build_systems#autoconf diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 79597e15a2..c6d26d999c 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -92,146 +92,146 @@ jobs: sudo apt-get install --no-install-recommends libsecret-1-dev - - os: ubuntu-20.04 - cross_os: Android - component: '' - qt: 5.15.14 - arch: arm64 - sccache_triplet: x86_64-unknown-linux-musl - build_type: Release - collect_symbols: false - packager: cmake --install build --config Release --prefix . - cross_qt_args: >- - "-DANDROID_SDK_ROOT=$ANDROID_SDK_ROOT" - "-DANDROID_NDK_ROOT=$ANDROID_NDK_ROOT" - "-DANDROID_HOST_PATH=$GITHUB_WORKSPACE/.github/deps/qt" - -DANDROID_ABI=arm64-v8a - cross_ffmpeg_args: >- - "-DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_ROOT/build/cmake/android.toolchain.cmake" - "-DANDROID_SDK_ROOT=$ANDROID_SDK_ROOT" - "-DANDROID_NDK_ROOT=$ANDROID_NDK_ROOT" - -DANDROID_PLATFORM=android-23 - -DANDROID_ABI=arm64-v8a - cross_other_args: >- - "-DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_ROOT/build/cmake/android.toolchain.cmake" - "-DANDROID_SDK_ROOT=$ANDROID_SDK_ROOT" - "-DANDROID_NDK_ROOT=$ANDROID_NDK_ROOT" - -DANDROID_PLATFORM=android-23 - -DANDROID_ABI=arm64-v8a - build_flags: >- - "-DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_ROOT/build/cmake/android.toolchain.cmake" - -DANDROID_PLATFORM=android-23 - -DANDROID_ABI=arm64-v8a - -DANDROID_SDK_PLATFORM=android-31 - -DANDROID_SDK_BUILD_TOOLS_REVISION=34.0.0 - -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=on - -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=BOTH - -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=BOTH - -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=BOTH - # The runner has multiple clang versions installed and CMake/Qt gets - # confused about which one to pick for some reason, so this also - # sets Clang_ROOT during the Qt build - qt_pre_build: > - sudo apt-get update && - sudo apt-get install --no-install-recommends - libatspi2.0-dev libmtdev-dev libts-dev libgtk-3-dev - libgl1-mesa-dev libglu1-mesa-dev libxi-dev libdrm-dev - libgbm-dev libgl-dev libgles-dev libegl-dev libegl1-mesa-dev - libxext-dev libxfixes-dev libxrender-dev libx11-dev - libxcb1-dev libx11-xcb-dev libxcb-glx0-dev libxcb-util0-dev - libxkbcommon-dev libxkbcommon-x11-dev libxcb-keysyms1-dev - libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev - libxcb-sync-dev libxcb-xfixes0-dev libxcb-shape0-dev - libxcb-randr0-dev libxcb-render0-dev libxcb-render-util0-dev - libxcb-util-dev libinput-dev libvulkan-dev - libxcb-xinerama0-dev libxcb-xkb-dev libxcb-xinput-dev libclang-12-dev - libasound2-dev libpulse-dev libcups2-dev libssl-dev - libfontconfig1-dev && - echo "Clang_ROOT=/usr/lib/llvm-12" >> $GITHUB_ENV - ffmpeg_pre_build: > - sudo apt-get update && - sudo apt-get install --no-install-recommends - yasm - other_pre_build: > - sudo apt-get update && - sudo apt-get install --no-install-recommends - libsecret-1-dev - - - os: ubuntu-20.04 - cross_os: Android - component: '' - qt: 5.15.14 - arch: arm32 - sccache_triplet: x86_64-unknown-linux-musl - build_type: Release - collect_symbols: false - packager: cmake --install build --config Release --prefix . - cross_qt_args: >- - "-DANDROID_SDK_ROOT=$ANDROID_SDK_ROOT" - "-DANDROID_NDK_ROOT=$ANDROID_NDK_ROOT" - "-DANDROID_HOST_PATH=$GITHUB_WORKSPACE/.github/deps/qt" - -DANDROID_ABI=armeabi-v7a - cross_ffmpeg_args: >- - "-DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_ROOT/build/cmake/android.toolchain.cmake" - "-DANDROID_SDK_ROOT=$ANDROID_SDK_ROOT" - "-DANDROID_NDK_ROOT=$ANDROID_NDK_ROOT" - -DANDROID_PLATFORM=android-23 - -DANDROID_ABI=armeabi-v7a - cross_other_args: >- - "-DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_ROOT/build/cmake/android.toolchain.cmake" - "-DANDROID_SDK_ROOT=$ANDROID_SDK_ROOT" - "-DANDROID_NDK_ROOT=$ANDROID_NDK_ROOT" - -DANDROID_PLATFORM=android-23 - -DANDROID_ABI=armeabi-v7a - build_flags: >- - "-DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_ROOT/build/cmake/android.toolchain.cmake" - -DANDROID_PLATFORM=android-23 - -DANDROID_ABI=armeabi-v7a - -DANDROID_SDK_PLATFORM=android-31 - -DANDROID_SDK_BUILD_TOOLS_REVISION=34.0.0 - -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=on - -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=BOTH - -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=BOTH - -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=BOTH - # The runner has multiple clang versions installed and CMake/Qt gets - # confused about which one to pick for some reason, so this also - # sets Clang_ROOT during the Qt build - qt_pre_build: > - sudo apt-get update && - sudo apt-get install --no-install-recommends - libatspi2.0-dev libmtdev-dev libts-dev libgtk-3-dev - libgl1-mesa-dev libglu1-mesa-dev libxi-dev libdrm-dev - libgbm-dev libgl-dev libgles-dev libegl-dev libegl1-mesa-dev - libxext-dev libxfixes-dev libxrender-dev libx11-dev - libxcb1-dev libx11-xcb-dev libxcb-glx0-dev libxcb-util0-dev - libxkbcommon-dev libxkbcommon-x11-dev libxcb-keysyms1-dev - libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev - libxcb-sync-dev libxcb-xfixes0-dev libxcb-shape0-dev - libxcb-randr0-dev libxcb-render0-dev libxcb-render-util0-dev - libxcb-util-dev libinput-dev libvulkan-dev - libxcb-xinerama0-dev libxcb-xkb-dev libxcb-xinput-dev libclang-12-dev - libasound2-dev libpulse-dev libcups2-dev libssl-dev - libfontconfig1-dev && - echo "Clang_ROOT=/usr/lib/llvm-12" >> $GITHUB_ENV - ffmpeg_pre_build: > - sudo apt-get update && - sudo apt-get install --no-install-recommends - yasm - other_pre_build: > - sudo apt-get update && - sudo apt-get install --no-install-recommends - libsecret-1-dev - - - os: macos-13 - cross_os: '' - component: '' - qt: 6.7.2 - arch: x86_64 - build_flags: -DBUILD_PACKAGE_SUFFIX=x86_64 -G Ninja - build_type: Release - collect_symbols: false - sccache_triplet: x86_64-apple-darwin - packager: cpack --verbose --config build/CPackConfig.cmake -C Release + # - os: ubuntu-20.04 + # cross_os: Android + # component: '' + # qt: 5.15.14 + # arch: arm64 + # sccache_triplet: x86_64-unknown-linux-musl + # build_type: Release + # collect_symbols: false + # packager: cmake --install build --config Release --prefix . + # cross_qt_args: >- + # "-DANDROID_SDK_ROOT=$ANDROID_SDK_ROOT" + # "-DANDROID_NDK_ROOT=$ANDROID_NDK_ROOT" + # "-DANDROID_HOST_PATH=$GITHUB_WORKSPACE/.github/deps/qt" + # -DANDROID_ABI=arm64-v8a + # cross_ffmpeg_args: >- + # "-DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_ROOT/build/cmake/android.toolchain.cmake" + # "-DANDROID_SDK_ROOT=$ANDROID_SDK_ROOT" + # "-DANDROID_NDK_ROOT=$ANDROID_NDK_ROOT" + # -DANDROID_PLATFORM=android-23 + # -DANDROID_ABI=arm64-v8a + # cross_other_args: >- + # "-DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_ROOT/build/cmake/android.toolchain.cmake" + # "-DANDROID_SDK_ROOT=$ANDROID_SDK_ROOT" + # "-DANDROID_NDK_ROOT=$ANDROID_NDK_ROOT" + # -DANDROID_PLATFORM=android-23 + # -DANDROID_ABI=arm64-v8a + # build_flags: >- + # "-DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_ROOT/build/cmake/android.toolchain.cmake" + # -DANDROID_PLATFORM=android-23 + # -DANDROID_ABI=arm64-v8a + # -DANDROID_SDK_PLATFORM=android-31 + # -DANDROID_SDK_BUILD_TOOLS_REVISION=34.0.0 + # -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=on + # -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=BOTH + # -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=BOTH + # -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=BOTH + # # The runner has multiple clang versions installed and CMake/Qt gets + # # confused about which one to pick for some reason, so this also + # # sets Clang_ROOT during the Qt build + # qt_pre_build: > + # sudo apt-get update && + # sudo apt-get install --no-install-recommends + # libatspi2.0-dev libmtdev-dev libts-dev libgtk-3-dev + # libgl1-mesa-dev libglu1-mesa-dev libxi-dev libdrm-dev + # libgbm-dev libgl-dev libgles-dev libegl-dev libegl1-mesa-dev + # libxext-dev libxfixes-dev libxrender-dev libx11-dev + # libxcb1-dev libx11-xcb-dev libxcb-glx0-dev libxcb-util0-dev + # libxkbcommon-dev libxkbcommon-x11-dev libxcb-keysyms1-dev + # libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev + # libxcb-sync-dev libxcb-xfixes0-dev libxcb-shape0-dev + # libxcb-randr0-dev libxcb-render0-dev libxcb-render-util0-dev + # libxcb-util-dev libinput-dev libvulkan-dev + # libxcb-xinerama0-dev libxcb-xkb-dev libxcb-xinput-dev libclang-12-dev + # libasound2-dev libpulse-dev libcups2-dev libssl-dev + # libfontconfig1-dev && + # echo "Clang_ROOT=/usr/lib/llvm-12" >> $GITHUB_ENV + # ffmpeg_pre_build: > + # sudo apt-get update && + # sudo apt-get install --no-install-recommends + # yasm + # other_pre_build: > + # sudo apt-get update && + # sudo apt-get install --no-install-recommends + # libsecret-1-dev + + # - os: ubuntu-20.04 + # cross_os: Android + # component: '' + # qt: 5.15.14 + # arch: arm32 + # sccache_triplet: x86_64-unknown-linux-musl + # build_type: Release + # collect_symbols: false + # packager: cmake --install build --config Release --prefix . + # cross_qt_args: >- + # "-DANDROID_SDK_ROOT=$ANDROID_SDK_ROOT" + # "-DANDROID_NDK_ROOT=$ANDROID_NDK_ROOT" + # "-DANDROID_HOST_PATH=$GITHUB_WORKSPACE/.github/deps/qt" + # -DANDROID_ABI=armeabi-v7a + # cross_ffmpeg_args: >- + # "-DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_ROOT/build/cmake/android.toolchain.cmake" + # "-DANDROID_SDK_ROOT=$ANDROID_SDK_ROOT" + # "-DANDROID_NDK_ROOT=$ANDROID_NDK_ROOT" + # -DANDROID_PLATFORM=android-23 + # -DANDROID_ABI=armeabi-v7a + # cross_other_args: >- + # "-DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_ROOT/build/cmake/android.toolchain.cmake" + # "-DANDROID_SDK_ROOT=$ANDROID_SDK_ROOT" + # "-DANDROID_NDK_ROOT=$ANDROID_NDK_ROOT" + # -DANDROID_PLATFORM=android-23 + # -DANDROID_ABI=armeabi-v7a + # build_flags: >- + # "-DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_ROOT/build/cmake/android.toolchain.cmake" + # -DANDROID_PLATFORM=android-23 + # -DANDROID_ABI=armeabi-v7a + # -DANDROID_SDK_PLATFORM=android-31 + # -DANDROID_SDK_BUILD_TOOLS_REVISION=34.0.0 + # -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=on + # -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=BOTH + # -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=BOTH + # -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=BOTH + # # The runner has multiple clang versions installed and CMake/Qt gets + # # confused about which one to pick for some reason, so this also + # # sets Clang_ROOT during the Qt build + # qt_pre_build: > + # sudo apt-get update && + # sudo apt-get install --no-install-recommends + # libatspi2.0-dev libmtdev-dev libts-dev libgtk-3-dev + # libgl1-mesa-dev libglu1-mesa-dev libxi-dev libdrm-dev + # libgbm-dev libgl-dev libgles-dev libegl-dev libegl1-mesa-dev + # libxext-dev libxfixes-dev libxrender-dev libx11-dev + # libxcb1-dev libx11-xcb-dev libxcb-glx0-dev libxcb-util0-dev + # libxkbcommon-dev libxkbcommon-x11-dev libxcb-keysyms1-dev + # libxcb-image0-dev libxcb-shm0-dev libxcb-icccm4-dev + # libxcb-sync-dev libxcb-xfixes0-dev libxcb-shape0-dev + # libxcb-randr0-dev libxcb-render0-dev libxcb-render-util0-dev + # libxcb-util-dev libinput-dev libvulkan-dev + # libxcb-xinerama0-dev libxcb-xkb-dev libxcb-xinput-dev libclang-12-dev + # libasound2-dev libpulse-dev libcups2-dev libssl-dev + # libfontconfig1-dev && + # echo "Clang_ROOT=/usr/lib/llvm-12" >> $GITHUB_ENV + # ffmpeg_pre_build: > + # sudo apt-get update && + # sudo apt-get install --no-install-recommends + # yasm + # other_pre_build: > + # sudo apt-get update && + # sudo apt-get install --no-install-recommends + # libsecret-1-dev + + # - os: macos-13 + # cross_os: '' + # component: '' + # qt: 6.7.2 + # arch: x86_64 + # build_flags: -DBUILD_PACKAGE_SUFFIX=x86_64 -G Ninja + # build_type: Release + # collect_symbols: false + # sccache_triplet: x86_64-apple-darwin + # packager: cpack --verbose --config build/CPackConfig.cmake -C Release - os: macos-14 cross_os: '' @@ -266,47 +266,47 @@ jobs: cp .github/deps/other/bin/qt*.dll .github/deps/qt/bin && cpack --verbose --config build/CPackConfig.cmake -C RelWithDebInfo - - os: windows-latest - cross_os: '' - component: 'Tools' - qt: 5.15.14 - arch: x86_64 - sccache_triplet: x86_64-pc-windows-msvc - build_flags: -DBUILD_PACKAGE_SUFFIX=x86_64 -G Ninja - build_type: RelWithDebInfo - collect_symbols: false - qt_pre_build: > - choco install gperf jom winflexbison3 && - New-Item -Path C:\ProgramData\Chocolatey\bin\flex.exe -ItemType SymbolicLink -Value C:\ProgramData\Chocolatey\bin\win_flex.exe && - New-Item -Path C:\ProgramData\Chocolatey\bin\bison.exe -ItemType SymbolicLink -Value C:\ProgramData\Chocolatey\bin\win_bison.exe - # Copying files is a disgusting hack because windeployqt does not - # search PATH to find DLLs and it gets confused by QtKeychain having - # a Qt prefix and thinks it is part of Qt and tries to process it - # and fails if it is not in the Qt bin directory with the rest of - # them - packager: > - cp .github/deps/other/bin/qt*.dll .github/deps/qt/bin && - cpack --verbose --config build/CPackConfig.cmake -C RelWithDebInfo - - - os: windows-latest - qt: 5.15.14 - arch: x86 - sccache_triplet: x86_64-pc-windows-msvc - build_flags: -DCARGO_TRIPLE=i686-pc-windows-msvc -DBUILD_PACKAGE_SUFFIX=x86 -G Ninja - build_type: RelWithDebInfo - collect_symbols: false - qt_pre_build: > - choco install gperf jom winflexbison3 && - New-Item -Path C:\ProgramData\Chocolatey\bin\flex.exe -ItemType SymbolicLink -Value C:\ProgramData\Chocolatey\bin\win_flex.exe && - New-Item -Path C:\ProgramData\Chocolatey\bin\bison.exe -ItemType SymbolicLink -Value C:\ProgramData\Chocolatey\bin\win_bison.exe - # Copying files is a disgusting hack because windeployqt does not - # search PATH to find DLLs and it gets confused by QtKeychain having - # a Qt prefix and thinks it is part of Qt and tries to process it - # and fails if it is not in the Qt bin directory with the rest of - # them - packager: > - cp .github/deps/other/bin/qt*.dll .github/deps/qt/bin && - cpack --verbose --config build/CPackConfig.cmake -C RelWithDebInfo + # - os: windows-latest + # cross_os: '' + # component: 'Tools' + # qt: 5.15.14 + # arch: x86_64 + # sccache_triplet: x86_64-pc-windows-msvc + # build_flags: -DBUILD_PACKAGE_SUFFIX=x86_64 -G Ninja + # build_type: RelWithDebInfo + # collect_symbols: false + # qt_pre_build: > + # choco install gperf jom winflexbison3 && + # New-Item -Path C:\ProgramData\Chocolatey\bin\flex.exe -ItemType SymbolicLink -Value C:\ProgramData\Chocolatey\bin\win_flex.exe && + # New-Item -Path C:\ProgramData\Chocolatey\bin\bison.exe -ItemType SymbolicLink -Value C:\ProgramData\Chocolatey\bin\win_bison.exe + # # Copying files is a disgusting hack because windeployqt does not + # # search PATH to find DLLs and it gets confused by QtKeychain having + # # a Qt prefix and thinks it is part of Qt and tries to process it + # # and fails if it is not in the Qt bin directory with the rest of + # # them + # packager: > + # cp .github/deps/other/bin/qt*.dll .github/deps/qt/bin && + # cpack --verbose --config build/CPackConfig.cmake -C RelWithDebInfo + + # - os: windows-latest + # qt: 5.15.14 + # arch: x86 + # sccache_triplet: x86_64-pc-windows-msvc + # build_flags: -DCARGO_TRIPLE=i686-pc-windows-msvc -DBUILD_PACKAGE_SUFFIX=x86 -G Ninja + # build_type: RelWithDebInfo + # collect_symbols: false + # qt_pre_build: > + # choco install gperf jom winflexbison3 && + # New-Item -Path C:\ProgramData\Chocolatey\bin\flex.exe -ItemType SymbolicLink -Value C:\ProgramData\Chocolatey\bin\win_flex.exe && + # New-Item -Path C:\ProgramData\Chocolatey\bin\bison.exe -ItemType SymbolicLink -Value C:\ProgramData\Chocolatey\bin\win_bison.exe + # # Copying files is a disgusting hack because windeployqt does not + # # search PATH to find DLLs and it gets confused by QtKeychain having + # # a Qt prefix and thinks it is part of Qt and tries to process it + # # and fails if it is not in the Qt bin directory with the rest of + # # them + # packager: > + # cp .github/deps/other/bin/qt*.dll .github/deps/qt/bin && + # cpack --verbose --config build/CPackConfig.cmake -C RelWithDebInfo steps: