From fb301d72c2725f4fcabf78c513b91a1b5b108364 Mon Sep 17 00:00:00 2001 From: gouzi <530971494@qq.com> Date: Wed, 3 Jun 2026 22:28:02 +0800 Subject: [PATCH] Apply yaml-cpp GCC 15 compatibility patch --- cmake/external/yaml.cmake | 7 +++++++ patches/yaml-cpp/emitterutils.cpp.patch | 9 +++++++++ 2 files changed, 16 insertions(+) create mode 100644 patches/yaml-cpp/emitterutils.cpp.patch diff --git a/cmake/external/yaml.cmake b/cmake/external/yaml.cmake index 9c094ea4e573f..93ae4ba920437 100644 --- a/cmake/external/yaml.cmake +++ b/cmake/external/yaml.cmake @@ -23,6 +23,12 @@ set(SOURCE_INCLUDE_DIR ${SOURCE_DIR}/include) include_directories(${YAML_INCLUDE_DIR}) +file(TO_NATIVE_PATH + ${PADDLE_SOURCE_DIR}/patches/yaml-cpp/emitterutils.cpp.patch + YAML_CPP_EMITTERUTILS_PATCH) +set(YAML_PATCH_COMMAND git checkout -- . && git apply + ${YAML_CPP_EMITTERUTILS_PATCH}) + set(YAML_BuildTests OFF CACHE INTERNAL "") @@ -86,6 +92,7 @@ ExternalProject_Add( SOURCE_DIR ${SOURCE_DIR} PREFIX ${YAML_PREFIX_DIR} UPDATE_COMMAND "" + PATCH_COMMAND ${YAML_PATCH_COMMAND} CMAKE_ARGS -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} -DYAML_BUILD_SHARED_LIBS=OFF -DYAML_MSVC_SHARED_RT=${YAML_MSVC_SHARED_RT} diff --git a/patches/yaml-cpp/emitterutils.cpp.patch b/patches/yaml-cpp/emitterutils.cpp.patch new file mode 100644 index 0000000000000..72c1fae7ce6dd --- /dev/null +++ b/patches/yaml-cpp/emitterutils.cpp.patch @@ -0,0 +1,9 @@ +diff --git a/src/emitterutils.cpp b/src/emitterutils.cpp +index fc41011a5..f801b1d0c 100644 +--- a/src/emitterutils.cpp ++++ b/src/emitterutils.cpp +@@ -1,3 +1,4 @@ + #include ++#include + #include + #include