From 24f823387ecf09661aaadcda7a024b0398fe8919 Mon Sep 17 00:00:00 2001 From: Weihang Ding <798047000@qq.com> Date: Fri, 5 Jun 2026 05:45:01 +0800 Subject: [PATCH] [libde265] Update to 1.1.1 (#52178) --- ports/libde265/fix-api-visibility.patch | 15 ++++++++++++++ ports/libde265/fix-linkage.patch | 27 ++++++++++++++----------- ports/libde265/portfile.cmake | 7 ++++--- ports/libde265/vcpkg.json | 2 +- versions/baseline.json | 2 +- versions/l-/libde265.json | 5 +++++ 6 files changed, 41 insertions(+), 17 deletions(-) create mode 100644 ports/libde265/fix-api-visibility.patch diff --git a/ports/libde265/fix-api-visibility.patch b/ports/libde265/fix-api-visibility.patch new file mode 100644 index 0000000000..00d56429bb --- /dev/null +++ b/ports/libde265/fix-api-visibility.patch @@ -0,0 +1,15 @@ +diff --git a/libde265/de265.h b/libde265/de265.h +index e94467aa..95261453 100644 +--- a/libde265/de265.h ++++ b/libde265/de265.h +@@ -34,7 +34,9 @@ extern "C" { + #endif + #include + +-#if (defined(_WIN32) || defined(__CYGWIN__)) && !defined(LIBDE265_STATIC_BUILD) ++#if defined(LIBDE265_STATIC_BUILD) ++ #define LIBDE265_API ++#elif (defined(_WIN32) || defined(__CYGWIN__)) + #ifdef LIBDE265_EXPORTS + #define LIBDE265_API __declspec(dllexport) + #else diff --git a/ports/libde265/fix-linkage.patch b/ports/libde265/fix-linkage.patch index a0ff2be72a..a58c37aeac 100644 --- a/ports/libde265/fix-linkage.patch +++ b/ports/libde265/fix-linkage.patch @@ -1,36 +1,39 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 1c2ef054..14fa2e08 100644 +index 7e32b69b..bf54bd78 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -134,21 +134,20 @@ endif() - set(THREADS_PREFER_PTHREAD_FLAG TRUE) +@@ -143,25 +143,25 @@ if(CMAKE_COMPILER_IS_GNUCXX OR ${CMAKE_CXX_COMPILER_ID} MATCHES Clang) + add_definitions(-Wall -Werror=return-type -Werror=unused-result -Werror=reorder) + endif() + +-set(THREADS_PREFER_PTHREAD_FLAG TRUE) find_package(Threads REQUIRED) -include(CheckCXXSymbolExists) -check_cxx_symbol_exists(_LIBCPP_VERSION cstdlib HAVE_LIBCPP) -- --# Build Libs.private contents for libde265.pc. --set(_libs_private "") + + # Build Libs.private contents for libde265.pc. + set(_libs_private "") -if(NOT MSVC) - if(HAVE_LIBCPP) - list(APPEND _libs_private "-lc++") -+set(LIBS_PRIVATE "") +foreach(lib IN LISTS CMAKE_CXX_IMPLICIT_LINK_LIBRARIES) + if(lib IN_LIST CMAKE_C_IMPLICIT_LINK_LIBRARIES) + continue() + elseif(EXISTS "${lib}") -+ string(APPEND LIBS_PRIVATE " ${CMAKE_LINK_LIBRARY_FILE_FLAG}${lib}") ++ list(APPEND _libs_private "${lib}") else() - list(APPEND _libs_private "-lstdc++") -+ string(APPEND LIBS_PRIVATE " ${CMAKE_LINK_LIBRARY_FLAG}${lib}") ++ list(APPEND _libs_private "-l${lib}") endif() -endif() +endforeach() + # Emit '-lpthread' rather than '-pthread' so consumers using # `pkg-config --libs --static` get an unambiguous linker flag (see #453). --if(CMAKE_USE_PTHREADS_INIT) -+if(CMAKE_USE_PTHREADS_INIT AND NOT ANDROID) - list(APPEND _libs_private "-lpthread") + if(CMAKE_USE_PTHREADS_INIT) +- list(APPEND _libs_private "-lpthread") ++ list(APPEND _libs_private "${CMAKE_THREAD_LIBS_INIT}") endif() if(UNIX) + list(APPEND _libs_private "-lm") diff --git a/ports/libde265/portfile.cmake b/ports/libde265/portfile.cmake index 64c4c1d2d5..ce4d2b6086 100644 --- a/ports/libde265/portfile.cmake +++ b/ports/libde265/portfile.cmake @@ -2,10 +2,11 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO strukturag/libde265 REF "v${VERSION}" - SHA512 72e7ea2f145784e8429f4338337e759d23c194e90d08264b71c0e7b2864201c58c5e78bcb0d950d94bdd68ec84af8e37342ed2fd743f48535283afae0e6930ea + SHA512 fb2207f5a3ba901853f61f345c72130f000134918febbc4f3529c3d289fc79ee7457b3e61660110f698bb4ac15d62426e284034bf870bfbd1859ab3feaa52be8 HEAD_REF master PATCHES fix-linkage.patch + fix-api-visibility.patch ) vcpkg_cmake_configure( @@ -21,9 +22,9 @@ vcpkg_fixup_pkgconfig() if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin") - vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/libde265/de265.h" "!defined(LIBDE265_STATIC_BUILD)" "0") + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/libde265/de265.h" "defined(LIBDE265_STATIC_BUILD)" "1") else() - vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/libde265/de265.h" "!defined(LIBDE265_STATIC_BUILD)" "1") + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/libde265/de265.h" "defined(LIBDE265_STATIC_BUILD)" "0") endif() file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") diff --git a/ports/libde265/vcpkg.json b/ports/libde265/vcpkg.json index 092eb76ed9..243b9e0ea4 100644 --- a/ports/libde265/vcpkg.json +++ b/ports/libde265/vcpkg.json @@ -1,6 +1,6 @@ { "name": "libde265", - "version": "1.1.0", + "version": "1.1.1", "description": "Open h.265 video codec implementation.", "homepage": "https://www.libde265.org/", "license": "LGPL-3.0-only", diff --git a/versions/baseline.json b/versions/baseline.json index eeb27a89c9..3942dfa2a7 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -4877,7 +4877,7 @@ "port-version": 0 }, "libde265": { - "baseline": "1.1.0", + "baseline": "1.1.1", "port-version": 0 }, "libdeflate": { diff --git a/versions/l-/libde265.json b/versions/l-/libde265.json index ba82b5f106..7f5570eb51 100644 --- a/versions/l-/libde265.json +++ b/versions/l-/libde265.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "ce005210dddce8f16b6de9c0d25f1dbb573347b5", + "version": "1.1.1", + "port-version": 0 + }, { "git-tree": "faf6035720b5534caaffb58883b948ddd1ce9a61", "version": "1.1.0",