diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6f15cd38a..6d0264a90 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -5,7 +5,7 @@ env: # CICD_INTERMEDIATES_DIR: "_cicd-intermediates" VCPKG_BINARY_SOURCES: "clear;x-gha,readwrite" # for multiarch gcc compatibility - VCPKG_COMMIT_ID: "6f29f12e82a8293156836ad81cc9bf5af41fe836" + VCPKG_COMMIT_ID: "120deac3062162151622ca4860575a33844ba10b" on: workflow_dispatch: diff --git a/.github/workflows/flutter-build.yml b/.github/workflows/flutter-build.yml index f5f3f9927..7430c958f 100644 --- a/.github/workflows/flutter-build.yml +++ b/.github/workflows/flutter-build.yml @@ -31,13 +31,14 @@ env: FLUTTER_ELINUX_VERSION: "3.16.9" TAG_NAME: "${{ inputs.upload-tag }}" VCPKG_BINARY_SOURCES: "clear;x-gha,readwrite" - # vcpkg version: 2025.01.13 + # vcpkg version: 2025.08.27 # If we change the `VCPKG COMMIT_ID`, please remember: # 1. Call `$VCPKG_ROOT/vcpkg x-update-baseline` to update the baseline in `vcpkg.json`. # Or we may face build issue like # https://github.com/rustdesk/rustdesk/actions/runs/14414119794/job/40427970174 # 2. Update the `VCPKG_COMMIT_ID` in `ci.yml` and `playground.yml`. - VCPKG_COMMIT_ID: "6f29f12e82a8293156836ad81cc9bf5af41fe836" + VCPKG_COMMIT_ID: "120deac3062162151622ca4860575a33844ba10b" + ARMV7_VCPKG_COMMIT_ID: "6f29f12e82a8293156836ad81cc9bf5af41fe836" # 2025.01.13, got "/opt/artifacts/vcpkg/vcpkg: No such file or directory" with latest version VERSION: "1.4.2" NDK_VERSION: "r27c" #signing keys env variable checks @@ -1637,6 +1638,14 @@ jobs: with: submodules: recursive + - name: Modify vcpkg.json for armv7 + if: matrix.job.vcpkg-triplet == 'arm-linux' + run: | + # Replace the baseline in vcpkg.json with ARMV7_VCPKG_COMMIT_ID for armv7 builds + sed -i 's/"baseline": ".*"/"baseline": "${{ env.ARMV7_VCPKG_COMMIT_ID }}"/' vcpkg.json + echo "Modified vcpkg.json for armv7 build:" + grep -A 2 -B 2 '"baseline"' vcpkg.json + - name: Free Space run: | df -h @@ -1722,11 +1731,12 @@ jobs: rm -rf vcpkg git clone https://github.com/microsoft/vcpkg pushd vcpkg - git reset --hard ${{ env.VCPKG_COMMIT_ID }} # build vcpkg helper executable with gcc-8 for arm-linux but use prebuilt one on x64-linux if [ "${{ matrix.job.vcpkg-triplet }}" = "arm-linux" ]; then + git reset --hard ${{ env.ARMV7_VCPKG_COMMIT_ID }} CC=/usr/bin/gcc-8 CXX=/usr/bin/g++-8 sh bootstrap-vcpkg.sh -disableMetrics else + git reset --hard ${{ env.VCPKG_COMMIT_ID }} sh bootstrap-vcpkg.sh -disableMetrics fi popd diff --git a/.github/workflows/playground.yml b/.github/workflows/playground.yml index b78119d4d..6672571fb 100644 --- a/.github/workflows/playground.yml +++ b/.github/workflows/playground.yml @@ -16,7 +16,7 @@ env: FLUTTER_ELINUX_VERSION: "3.16.9" TAG_NAME: "nightly" VCPKG_BINARY_SOURCES: "clear;x-gha,readwrite" - VCPKG_COMMIT_ID: "6f29f12e82a8293156836ad81cc9bf5af41fe836" + VCPKG_COMMIT_ID: "120deac3062162151622ca4860575a33844ba10b" VERSION: "1.4.2" NDK_VERSION: "r26d" #signing keys env variable checks diff --git a/res/vcpkg/aom/portfile.cmake b/res/vcpkg/aom/portfile.cmake index 24b025173..f7b1e3c43 100644 --- a/res/vcpkg/aom/portfile.cmake +++ b/res/vcpkg/aom/portfile.cmake @@ -22,7 +22,7 @@ else() vcpkg_from_git( OUT_SOURCE_PATH SOURCE_PATH URL "https://aomedia.googlesource.com/aom" - REF d6f30ae474dd6c358f26de0a0fc26a0d7340a84c # 3.11.0 + REF 10aece4157eb79315da205f39e19bf6ab3ee30d0 # 3.12.1 PATCHES aom-uninitialized-pointer.diff # aom-avx2.diff diff --git a/res/vcpkg/aom/vcpkg.json b/res/vcpkg/aom/vcpkg.json index 9ff755f6b..70a12d83e 100644 --- a/res/vcpkg/aom/vcpkg.json +++ b/res/vcpkg/aom/vcpkg.json @@ -1,6 +1,6 @@ { "name": "aom", - "version-semver": "3.11.0", + "version-semver": "3.12.1", "port-version": 0, "description": "AV1 codec library", "homepage": "https://aomedia.googlesource.com/aom", diff --git a/res/vcpkg/libvpx/0002-Fix-nasm-debug-format-flag.patch b/res/vcpkg/libvpx/0002-Fix-nasm-debug-format-flag.patch deleted file mode 100644 index 5f4749ae0..000000000 --- a/res/vcpkg/libvpx/0002-Fix-nasm-debug-format-flag.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff --git a/build/make/configure.sh b/build/make/configure.sh -index 81d30a1..325017e 100644 ---- a/build/make/configure.sh -+++ b/build/make/configure.sh -@@ -1370,12 +1370,14 @@ EOF - case ${tgt_os} in - win32) - add_asflags -f win32 -- enabled debug && add_asflags -g cv8 -+ enabled debug && [ "${AS}" = yasm ] && add_asflags -g cv8 -+ enabled debug && [ "${AS}" = nasm ] && add_asflags -gcv8 - EXE_SFX=.exe - ;; - win64) - add_asflags -f win64 -- enabled debug && add_asflags -g cv8 -+ enabled debug && [ "${AS}" = yasm ] && add_asflags -g cv8 -+ enabled debug && [ "${AS}" = nasm ] && add_asflags -gcv8 - EXE_SFX=.exe - ;; - linux*|solaris*|android*) diff --git a/res/vcpkg/libvpx/0003-add-uwp-v142-and-v143-support.patch b/res/vcpkg/libvpx/0003-add-uwp-v142-and-v143-support.patch index 32222238c..c9a01b744 100644 --- a/res/vcpkg/libvpx/0003-add-uwp-v142-and-v143-support.patch +++ b/res/vcpkg/libvpx/0003-add-uwp-v142-and-v143-support.patch @@ -1,8 +1,8 @@ diff --git a/build/make/configure.sh b/build/make/configure.sh -index 110f16e..c161d0e 100644 +index cc5bf6ce4..9380e87a7 100644 --- a/build/make/configure.sh +++ b/build/make/configure.sh -@@ -1038,7 +1038,7 @@ EOF +@@ -1092,7 +1092,7 @@ EOF # A number of ARM-based Windows platforms are constrained by their # respective SDKs' limitations. Fortunately, these are all 32-bit ABIs # and so can be selected as 'win32'. @@ -11,7 +11,7 @@ index 110f16e..c161d0e 100644 asm_conversion_cmd="${source_path_mk}/build/make/ads2armasm_ms.pl" AS_SFX=.S msvs_arch_dir=arm-msvs -@@ -1272,6 +1272,9 @@ EOF +@@ -1366,6 +1366,9 @@ EOF android) soft_enable realtime_only ;; @@ -21,12 +21,12 @@ index 110f16e..c161d0e 100644 win*) enabled gcc && add_cflags -fno-common ;; -@@ -1390,6 +1393,16 @@ EOF +@@ -1484,14 +1487,26 @@ EOF fi AS_SFX=.asm case ${tgt_os} in + uwp) -+ if [ {$tgt_isa} = "x86" ] || [ {$tgt_isa} = "armv7" ]; then ++ if [ ${tgt_isa} = "x86" ] || [ ${tgt_isa} = "armv7" ]; then + add_asflags -f win32 + else + add_asflags -f win64 @@ -37,8 +37,20 @@ index 110f16e..c161d0e 100644 + ;; win32) add_asflags -f win32 - enabled debug && [ "${AS}" = yasm ] && add_asflags -g cv8 -@@ -1519,6 +1532,8 @@ EOF +- enabled debug && add_asflags -g cv8 ++ enabled debug && [ "${AS}" = yasm ] && add_asflags -g cv8 ++ enabled debug && [ "${AS}" = nasm ] && add_asflags -gcv8 + EXE_SFX=.exe + ;; + win64) + add_asflags -f win64 +- enabled debug && add_asflags -g cv8 ++ enabled debug && [ "${AS}" = yasm ] && add_asflags -g cv8 ++ enabled debug && [ "${AS}" = nasm ] && add_asflags -gcv8 + EXE_SFX=.exe + ;; + linux*|solaris*|android*) +@@ -1622,6 +1637,8 @@ EOF # Almost every platform uses pthreads. if enabled multithread; then case ${toolchain} in @@ -48,10 +60,10 @@ index 110f16e..c161d0e 100644 ;; *-android-gcc) diff --git a/build/make/gen_msvs_vcxproj.sh b/build/make/gen_msvs_vcxproj.sh -index 58bb66b..b4cad6c 100644 +index 1e1db05bb..543eb37b2 100755 --- a/build/make/gen_msvs_vcxproj.sh +++ b/build/make/gen_msvs_vcxproj.sh -@@ -296,7 +296,22 @@ generate_vcxproj() { +@@ -310,7 +310,22 @@ generate_vcxproj() { tag_content ProjectGuid "{${guid}}" tag_content RootNamespace ${name} tag_content Keyword ManagedCProj @@ -75,7 +87,7 @@ index 58bb66b..b4cad6c 100644 tag_content AppContainerApplication true # The application type can be one of "Windows Store", # "Windows Phone" or "Windows Phone Silverlight". The -@@ -394,7 +409,7 @@ generate_vcxproj() { +@@ -412,7 +427,7 @@ generate_vcxproj() { Condition="'\$(Configuration)|\$(Platform)'=='$config|$plat'" if [ "$name" == "vpx" ]; then hostplat=$plat @@ -85,19 +97,19 @@ index 58bb66b..b4cad6c 100644 fi fi diff --git a/configure b/configure -index b212e07..1a9fa98 100755 +index 457bd6b38..fa4bce71b 100755 --- a/configure +++ b/configure -@@ -104,6 +104,8 @@ all_platforms="${all_platforms} arm64-darwin21-gcc" - all_platforms="${all_platforms} arm64-darwin22-gcc" +@@ -105,6 +105,8 @@ all_platforms="${all_platforms} arm64-darwin22-gcc" all_platforms="${all_platforms} arm64-darwin23-gcc" + all_platforms="${all_platforms} arm64-darwin24-gcc" all_platforms="${all_platforms} arm64-linux-gcc" +all_platforms="${all_platforms} arm64-uwp-vs16" +all_platforms="${all_platforms} arm64-uwp-vs17" all_platforms="${all_platforms} arm64-win64-gcc" all_platforms="${all_platforms} arm64-win64-vs15" all_platforms="${all_platforms} arm64-win64-vs16" -@@ -115,6 +117,8 @@ all_platforms="${all_platforms} armv7-darwin-gcc" #neon Cortex-A8 +@@ -116,6 +118,8 @@ all_platforms="${all_platforms} armv7-darwin-gcc" #neon Cortex-A8 all_platforms="${all_platforms} armv7-linux-rvct" #neon Cortex-A8 all_platforms="${all_platforms} armv7-linux-gcc" #neon Cortex-A8 all_platforms="${all_platforms} armv7-none-rvct" #neon Cortex-A8 @@ -106,7 +118,7 @@ index b212e07..1a9fa98 100755 all_platforms="${all_platforms} armv7-win32-gcc" all_platforms="${all_platforms} armv7-win32-vs14" all_platforms="${all_platforms} armv7-win32-vs15" -@@ -146,6 +150,8 @@ all_platforms="${all_platforms} x86-linux-gcc" +@@ -147,6 +151,8 @@ all_platforms="${all_platforms} x86-linux-gcc" all_platforms="${all_platforms} x86-linux-icc" all_platforms="${all_platforms} x86-os2-gcc" all_platforms="${all_platforms} x86-solaris-gcc" @@ -115,7 +127,7 @@ index b212e07..1a9fa98 100755 all_platforms="${all_platforms} x86-win32-gcc" all_platforms="${all_platforms} x86-win32-vs14" all_platforms="${all_platforms} x86-win32-vs15" -@@ -171,6 +177,8 @@ all_platforms="${all_platforms} x86_64-iphonesimulator-gcc" +@@ -173,6 +179,8 @@ all_platforms="${all_platforms} x86_64-iphonesimulator-gcc" all_platforms="${all_platforms} x86_64-linux-gcc" all_platforms="${all_platforms} x86_64-linux-icc" all_platforms="${all_platforms} x86_64-solaris-gcc" @@ -124,7 +136,7 @@ index b212e07..1a9fa98 100755 all_platforms="${all_platforms} x86_64-win64-gcc" all_platforms="${all_platforms} x86_64-win64-vs14" all_platforms="${all_platforms} x86_64-win64-vs15" -@@ -503,11 +511,10 @@ process_targets() { +@@ -507,11 +515,10 @@ process_targets() { ! enabled multithread && DIST_DIR="${DIST_DIR}-nomt" ! enabled install_docs && DIST_DIR="${DIST_DIR}-nodocs" DIST_DIR="${DIST_DIR}-${tgt_isa}-${tgt_os}" @@ -140,7 +152,7 @@ index b212e07..1a9fa98 100755 if [ -f "${source_path}/build/make/version.sh" ]; then ver=`"$source_path/build/make/version.sh" --bare "$source_path"` DIST_DIR="${DIST_DIR}-${ver}" -@@ -596,6 +603,10 @@ process_detect() { +@@ -600,6 +607,10 @@ process_detect() { # Specialize windows and POSIX environments. case $toolchain in @@ -151,3 +163,6 @@ index b212e07..1a9fa98 100755 *-win*-*) # Don't check for any headers in Windows builds. false +-- +2.49.0 + diff --git a/res/vcpkg/libvpx/portfile.cmake b/res/vcpkg/libvpx/portfile.cmake index ac54eafd4..fbc60b9d8 100644 --- a/res/vcpkg/libvpx/portfile.cmake +++ b/res/vcpkg/libvpx/portfile.cmake @@ -4,10 +4,9 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO webmproject/libvpx REF "v${VERSION}" - SHA512 8f483653a324c710fd431b87fd0d5d6f476f006bd8c8e9c6d1fa6abd105d6a40ac81c8fd5638b431c455d57ab2ee823c165e9875eb3932e6e518477422da3a7b + SHA512 824fe8719e4115ec359ae0642f5e1cea051d458f09eb8c24d60858cf082f66e411215e23228173ab154044bafbdfbb2d93b589bb726f55b233939b91f928aae0 HEAD_REF master PATCHES - 0002-Fix-nasm-debug-format-flag.patch 0003-add-uwp-v142-and-v143-support.patch 0004-remove-library-suffixes.patch ) @@ -226,6 +225,12 @@ else() set(LIBVPX_TARGET "generic-gnu") # use default target endif() + if (VCPKG_HOST_IS_OPENBSD OR VCPKG_HOST_IS_FREEBSD) + set(MAKE_BINARY "gmake") + else() + set(MAKE_BINARY "make") + endif() + message(STATUS "Build info. Target: ${LIBVPX_TARGET}; Options: ${OPTIONS}") if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") @@ -246,7 +251,7 @@ else() message(STATUS "Building libvpx for Release") vcpkg_execute_required_process( COMMAND - ${BASH} --noprofile --norc -c "make -j${VCPKG_CONCURRENCY}" + ${BASH} --noprofile --norc -c "${MAKE_BINARY} -j${VCPKG_CONCURRENCY}" WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel" LOGNAME build-${TARGET_TRIPLET}-rel ) @@ -254,7 +259,7 @@ else() message(STATUS "Installing libvpx for Release") vcpkg_execute_required_process( COMMAND - ${BASH} --noprofile --norc -c "make install" + ${BASH} --noprofile --norc -c "${MAKE_BINARY} install" WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel" LOGNAME install-${TARGET_TRIPLET}-rel ) @@ -280,7 +285,7 @@ else() message(STATUS "Building libvpx for Debug") vcpkg_execute_required_process( COMMAND - ${BASH} --noprofile --norc -c "make -j${VCPKG_CONCURRENCY}" + ${BASH} --noprofile --norc -c "${MAKE_BINARY} -j${VCPKG_CONCURRENCY}" WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg" LOGNAME build-${TARGET_TRIPLET}-dbg ) @@ -288,7 +293,7 @@ else() message(STATUS "Installing libvpx for Debug") vcpkg_execute_required_process( COMMAND - ${BASH} --noprofile --norc -c "make install" + ${BASH} --noprofile --norc -c "${MAKE_BINARY} install" WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg" LOGNAME install-${TARGET_TRIPLET}-dbg ) diff --git a/res/vcpkg/libvpx/vcpkg.json b/res/vcpkg/libvpx/vcpkg.json index d19c5daca..ac9775ef6 100644 --- a/res/vcpkg/libvpx/vcpkg.json +++ b/res/vcpkg/libvpx/vcpkg.json @@ -1,7 +1,6 @@ { "name": "libvpx", - "version": "1.15.0", - "port-version": 0, + "version": "1.15.2", "description": "The reference software implementation for the video coding formats VP8 and VP9.", "homepage": "https://github.com/webmproject/libvpx", "license": "BSD-3-Clause", diff --git a/vcpkg.json b/vcpkg.json index 394b94614..d41b91c22 100644 --- a/vcpkg.json +++ b/vcpkg.json @@ -86,7 +86,7 @@ "vcpkg-configuration": { "default-registry": { "kind": "builtin", - "baseline": "6f29f12e82a8293156836ad81cc9bf5af41fe836" + "baseline": "120deac3062162151622ca4860575a33844ba10b" }, "overlay-ports": [ "./res/vcpkg"