github-actions[bot] commented on code in PR #64390:
URL: https://github.com/apache/doris/pull/64390#discussion_r3396793214
##########
thirdparty/build-thirdparty.sh:
##########
@@ -443,6 +445,7 @@ build_protobuf() {
LDFLAGS="${ldflags}" \
"${CMAKE_CMD}" -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
-DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_CXX_STANDARD="${TP_CXX_STANDARD}" \
Review Comment:
Protobuf v21.11 ignores this flag. This build invokes the top-level Protobuf
CMake via `../..`, and that file unconditionally does `set(CMAKE_CXX_STANDARD
11)` after `project()`, so the command-line `-DCMAKE_CXX_STANDARD=20` is
overwritten and libprotobuf/libprotoc still build as C++11. If this fix relies
on keeping the Flight/Protobuf inline/template boundary in the same standard
mode as BE, this needs an upstream patch or another enforced flag that actually
wins; otherwise this line gives a false sense that Protobuf was rebuilt as
C++20.
##########
thirdparty/build-thirdparty.sh:
##########
@@ -1086,6 +1091,7 @@ build_arrow() {
LDFLAGS="${ldflags}" \
"${CMAKE_CMD}" -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
+ -DCMAKE_CXX_STANDARD="${TP_CXX_STANDARD}" \
Review Comment:
Arrow itself is built as C++20 here, but the same Arrow headers are still
compiled under C++17 by the default `paimon_cpp` build. The default package
list builds `paimon_cpp` after Arrow, `thirdparty/paimon-cpp-cache.cmake` sets
`PAIMON_USE_EXTERNAL_ARROW ON`, and the paimon-cpp patch symlinks Doris's Arrow
include dir into that build; upstream paimon-cpp then unconditionally sets
`CMAKE_CXX_STANDARD 17`. That leaves Arrow header inline code compiled as C++17
in paimon-cpp objects and as C++20 in BE/Arrow, so the mixed-standard condition
this PR is trying to remove still exists. Please make paimon-cpp use the same
standard as `TP_CXX_STANDARD`, including patching its CMake to respect the
requested value.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]