This is an automated email from the ASF dual-hosted git repository.

dataroaring pushed a commit to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-3.0 by this push:
     new ba592ed1229 [Chore](thirdparty) sync thirdparty from master (#53608)
ba592ed1229 is described below

commit ba592ed1229aa92962eb896681d85aafc27da63f
Author: Pxl <[email protected]>
AuthorDate: Mon Jul 21 12:21:43 2025 +0800

    [Chore](thirdparty) sync thirdparty from master (#53608)
    
    sync thirdparty from master
---
 thirdparty/CHANGELOG.md                            |  32 +++++-
 thirdparty/build-thirdparty.sh                     |  93 ++++++++++++++--
 thirdparty/download-thirdparty.sh                  |  79 ++++++++++++-
 .../patches/aws-sdk-cpp-1.11.119-cmake.patch       |  11 ++
 .../azure-sdk-for-cpp-azure-core_1.16.0.patch      |  24 ++++
 thirdparty/patches/brpc-uuid-string.patch          | 123 +++++++++++++++++++++
 thirdparty/patches/faiss-1.10.0.patch              |  66 +++++++++++
 thirdparty/patches/flatbuffers-2.0.0.patch         |  11 ++
 thirdparty/patches/grpc-1.54.3.patch               |  11 ++
 thirdparty/patches/libdivide-5.0.patch             |  11 ++
 thirdparty/patches/libuuid-1.0.3.patch             |  19 ++++
 .../patches/thrift-0.16-fix_mutex_include.patch    |   9 ++
 thirdparty/vars.sh                                 |  49 +++++---
 13 files changed, 507 insertions(+), 31 deletions(-)

diff --git a/thirdparty/CHANGELOG.md b/thirdparty/CHANGELOG.md
index 350e914572d..528c29a13d2 100644
--- a/thirdparty/CHANGELOG.md
+++ b/thirdparty/CHANGELOG.md
@@ -2,6 +2,14 @@
 
 This file contains version of the third-party dependency libraries in the 
build-env image. The docker build-env image is apache/doris, and the tag is 
`build-env-${version}`
 
+## 20250715
+
+- Modified: azure-core 1.10.3 -> 1.16.0
+
+## 20250617
+
+- Modified: simdjson 3.0.1 -> 3.11.6
+
 ## 20250416
 
 - Mofified: patch re2 to set `ignore_replace_escape` option
@@ -10,18 +18,38 @@ This file contains version of the third-party dependency 
libraries in the build-
 
 - Modified: jindofs 6.3.4 -> 6.8.2
 
-## 20250402
+## 20250405
 
-- Added: icu 75-1, develop ICU tokenizer based on ICU library.
+- Modified: libdivide 5.0 -> 5.2
+
+## 20250325
+
+- Added: jindofs 6.3.4 with jindofs ubuntu jar
 
 ## 20250324
 
 - Added: pugixml 1.15, a C++ XML processing library.
 
+## 20250319
+
+- Added: jindofs 6.3.4
+
+## 20250318
+
+- Modified: hadoop-libs 3.3.6.5 -> 3.3.6.6
+
 ## 20250225
 
 - Modified: hadoop-libs 3.3.6.4 -> 3.3.6.5
 
+## 20250123
+
+- Added: icu 75-1, develop ICU tokenizer based on ICU library.
+
+## 20241031
+
+- Modified: hadoop-libs 3.3.6.3 -> 3.3.6.4
+
 ## 20240815
 
 - Modified: arrow 15.0.2 -> 17.0.0
diff --git a/thirdparty/build-thirdparty.sh b/thirdparty/build-thirdparty.sh
index bb3cc427ab3..6084026fd00 100755
--- a/thirdparty/build-thirdparty.sh
+++ b/thirdparty/build-thirdparty.sh
@@ -165,6 +165,12 @@ if [[ "${CC}" == *gcc ]]; then
     warning_array_parameter='-Wno-array-parameter'
     warning_narrowing='-Wno-narrowing'
     warning_dangling_reference='-Wno-dangling-reference'
+
+    gcc_major_version=$("${CC}" -dumpversion | cut -d. -f1)
+    if [[ "${gcc_major_version}" -ge 15 ]]; then
+        warning_deprecated_literal_operator='-Wno-deprecated-literal-operator'
+    fi
+
     boost_toolset='gcc'
 elif [[ "${CC}" == *clang ]]; then
     warning_uninitialized='-Wno-uninitialized'
@@ -758,10 +764,10 @@ build_mysql() {
     fi
 
     if [[ "${KERNEL}" != 'Darwin' ]]; then
-        cflags='-static -pthread -lrt'
+        cflags='-static -pthread -lrt -std=gnu89'
         cxxflags='-static -pthread -lrt'
     else
-        cflags='-pthread'
+        cflags='-pthread -std=gnu89'
         cxxflags='-pthread'
     fi
 
@@ -875,7 +881,7 @@ build_cyrus_sasl() {
     check_if_source_exist "${CYRUS_SASL_SOURCE}"
     cd "${TP_SOURCE_DIR}/${CYRUS_SASL_SOURCE}"
 
-    CFLAGS="-fPIC -Wno-implicit-function-declaration" \
+    CFLAGS="-fPIC -std=gnu89 -Wno-implicit-function-declaration" \
         CPPFLAGS="-I${TP_INCLUDE_DIR}" \
         LDFLAGS="-L${TP_LIB_DIR}" \
         LIBS="-lcrypto" \
@@ -919,7 +925,7 @@ build_odbc() {
 
     cd "${TP_SOURCE_DIR}/${ODBC_SOURCE}"
 
-    CFLAGS="-I${TP_INCLUDE_DIR} -Wno-int-conversion 
-Wno-implicit-function-declaration" \
+    CFLAGS="-I${TP_INCLUDE_DIR} -Wno-int-conversion -std=gnu89 
-Wno-implicit-function-declaration" \
         LDFLAGS="-L${TP_LIB_DIR}" \
         ./configure --prefix="${TP_INSTALL_DIR}" --with-included-ltdl 
--enable-static=yes --enable-shared=no
 
@@ -1052,13 +1058,13 @@ build_arrow() {
         -DBoost_USE_STATIC_RUNTIME=ON \
         -DARROW_GFLAGS_USE_SHARED=OFF \
         -Dgflags_ROOT="${TP_INSTALL_DIR}" \
-        -DGLOG_ROOT="${TP_INSTALL_DIR}" \
-        -DRE2_ROOT="${TP_INSTALL_DIR}" \
+        -Dglog_ROOT="${TP_INSTALL_DIR}" \
+        -Dre2_ROOT="${TP_INSTALL_DIR}" \
         -DZLIB_SOURCE=SYSTEM \
         -DZLIB_LIBRARY="${TP_INSTALL_DIR}/lib/libz.a" 
-DZLIB_INCLUDE_DIR="${TP_INSTALL_DIR}/include" \
         -DRapidJSON_SOURCE=SYSTEM \
         -DRapidJSON_ROOT="${TP_INSTALL_DIR}" \
-        -DORC_ROOT="${TP_INSTALL_DIR}" \
+        -Dorc_ROOT="${TP_INSTALL_DIR}" \
         -Dxsimd_SOURCE=BUNDLED \
         -DBrotli_SOURCE=BUNDLED \
         -DARROW_LZ4_USE_SHARED=OFF \
@@ -1069,7 +1075,7 @@ build_arrow() {
         -Dzstd_SOURCE=SYSTEM \
         -DSnappy_LIB="${TP_INSTALL_DIR}/lib/libsnappy.a" 
-DSnappy_INCLUDE_DIR="${TP_INSTALL_DIR}/include" \
         -DSnappy_SOURCE=SYSTEM \
-        -DBOOST_ROOT="${TP_INSTALL_DIR}" --no-warn-unused-cli \
+        -DBoost_ROOT="${TP_INSTALL_DIR}" --no-warn-unused-cli \
         -DARROW_JEMALLOC=OFF -DARROW_MIMALLOC=OFF \
         -DJEMALLOC_HOME="${TP_INSTALL_DIR}" \
         -DARROW_THRIFT_USE_SHARED=OFF \
@@ -1352,7 +1358,7 @@ build_aws_sdk() {
         -DCMAKE_PREFIX_PATH="${TP_INSTALL_DIR}" -DBUILD_SHARED_LIBS=OFF 
-DENABLE_TESTING=OFF \
         -DCURL_LIBRARY_RELEASE="${TP_INSTALL_DIR}/lib/libcurl.a" 
-DZLIB_LIBRARY_RELEASE="${TP_INSTALL_DIR}/lib/libz.a" \
         -DBUILD_ONLY="core;s3;s3-crt;transfer;identity-management;sts" \
-        -DCMAKE_CXX_FLAGS="-Wno-nonnull -Wno-deprecated-declarations 
${warning_dangling_reference}" -DCPP_STANDARD=17
+        -DCMAKE_CXX_FLAGS="-Wno-nonnull ${warning_deprecated_literal_operator} 
-Wno-deprecated-declarations ${warning_dangling_reference}" -DCPP_STANDARD=17
 
     cd "${BUILD_DIR}"
 
@@ -1471,7 +1477,7 @@ build_krb5() {
         with_crypto_impl='--with-crypto-impl=openssl'
     fi
 
-    CFLAGS="-fcommon -fPIC -I${TP_INSTALL_DIR}/include" 
LDFLAGS="-L${TP_INSTALL_DIR}/lib" \
+    CFLAGS="-fcommon -fPIC -I${TP_INSTALL_DIR}/include -std=gnu89" 
LDFLAGS="-L${TP_INSTALL_DIR}/lib" \
         ../configure --prefix="${TP_INSTALL_DIR}" --disable-shared 
--enable-static \
         --without-keyutils ${with_crypto_impl:+${with_crypto_impl}}
 
@@ -1531,6 +1537,9 @@ build_jemalloc_doris() {
         WITH_LG_PAGE=''
     fi
 
+    # It is not easy to remove `with-jemalloc-prefix`, which may affect the 
compatibility between third-party and old version codes.
+    # Also, will building failed on Mac, it said can't find mallctl symbol. 
because jemalloc's default prefix on macOS is "je_", not "".
+    # Maybe can use alias instead of overwrite.
     CFLAGS="${cflags}" ../configure --prefix="${TP_INSTALL_DIR}" 
--with-install-suffix="_doris" "${WITH_LG_PAGE}" \
         --with-jemalloc-prefix=je --enable-prof --disable-cxx --disable-libdl 
--disable-shared
 
@@ -1744,7 +1753,7 @@ build_jsoncpp() {
     rm -rf "${BUILD_DIR}"
     mkdir -p "${BUILD_DIR}"
     cd "${BUILD_DIR}"
-    "${CMAKE_CMD}" -G "${GENERATOR}" -DBUILD_STATIC_LIBS=ON 
-DBUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=Release 
-DCMAKE_INSTALL_PREFIX="${TP_INSTALL_DIR}" ..
+    "${CMAKE_CMD}" -G "${GENERATOR}" -DJSONCPP_WITH_TESTS=OFF 
-DBUILD_STATIC_LIBS=ON -DBUILD_SHARED_LIBS=OFF -DCMAKE_BUILD_TYPE=Release 
-DCMAKE_INSTALL_PREFIX="${TP_INSTALL_DIR}" ..
     "${BUILD_SYSTEM}" -j "${PARALLEL}"
     "${BUILD_SYSTEM}" install
 }
@@ -1814,7 +1823,7 @@ build_azure() {
         AZURE_PORTS="vcpkg-custom-ports"
         AZURE_MANIFEST_DIR="."
 
-        "${CMAKE_CMD}" -G "${GENERATOR}" -DVCPKG_MANIFEST_MODE=ON 
-DVCPKG_OVERLAY_PORTS="${azure_dir}/${AZURE_PORTS}" 
-DVCPKG_MANIFEST_DIR="${azure_dir}/${AZURE_MANIFEST_DIR}" 
-DWARNINGS_AS_ERRORS=FALSE -DCMAKE_INSTALL_PREFIX="${TP_INSTALL_DIR}" 
-DCMAKE_BUILD_TYPE=Release ..
+        "${CMAKE_CMD}" -G "${GENERATOR}" 
-DCMAKE_CXX_FLAGS="-Wno-maybe-uninitialized" -DDISABLE_RUST_IN_BUILD=ON 
-DVCPKG_MANIFEST_MODE=ON -DVCPKG_OVERLAY_PORTS="${azure_dir}/${AZURE_PORTS}" 
-DVCPKG_MANIFEST_DIR="${azure_dir}/${AZURE_MANIFEST_DIR}" 
-DWARNINGS_AS_ERRORS=FALSE -DCMAKE_INSTALL_PREFIX="${TP_INSTALL_DIR}" 
-DCMAKE_BUILD_TYPE=Release ..
         "${BUILD_SYSTEM}" -j "${PARALLEL}"
         "${BUILD_SYSTEM}" install
     fi
@@ -1882,6 +1891,66 @@ build_pugixml() {
     cp "${TP_SOURCE_DIR}/${PUGIXML_SOURCE}/src/pugiconfig.hpp" 
"${TP_INSTALL_DIR}/include/"
 }
 
+build_openblas() {
+    check_if_source_exist "${OPENBLAS_SOURCE}"
+    cd "${TP_SOURCE_DIR}/${OPENBLAS_SOURCE}"
+
+    rm -rf "${BUILD_DIR}"
+    mkdir -p "${BUILD_DIR}"
+    cd "${BUILD_DIR}"
+    OPENBLAS_CMAKE_OPTIONS=(
+        "-DCMAKE_PREFIX_PATH=${TP_INSTALL_DIR}"
+        "-DCMAKE_INSTALL_PREFIX=${TP_INSTALL_DIR}"
+        "-DCMAKE_BUILD_TYPE=Release"
+        "-DBUILD_WITHOUT_LAPACK=OFF"
+        "-DNO_SHARED=TRUE"
+        "-DNO_AVX512=TRUE"
+        "-DC_LAPACK=TRUE"
+        "-DUSE_OPENMP=TRUE"
+        "-DBUILD_STATIC_LIBS=ON"
+        "-DNOFORTRAN=TRUE"
+        "-DBUILD_TESTING=OFF"
+        "-DBUILD_RELAPACK=ON"
+        "-DBUILD_BENCHMARKS=OFF"
+    )
+
+    echo "Building openblas at $(pwd) with cmake parameters: 
${OPENBLAS_CMAKE_OPTIONS[*]}"
+
+    "${CMAKE_CMD}" -G "${GENERATOR}" "${OPENBLAS_CMAKE_OPTIONS[@]}" ..
+    "${BUILD_SYSTEM}" -j "${PARALLEL}"
+    "${BUILD_SYSTEM}" install
+}
+
+build_faiss() {
+    check_if_source_exist "${FAISS_SOURCE}"
+    echo "Building faiss ${FAISS_SOURCE}"
+    cd "${TP_SOURCE_DIR}"
+    # if faiss dir not exists, create a symlink to faiss source dir
+    # this symlink is necessary since faiss source code must be compiled in a 
directory named faiss.
+    if [[ ! -d "${TP_SOURCE_DIR}/faiss" ]]; then
+        ln -s "${FAISS_SOURCE}" faiss
+    fi
+    cd "${TP_SOURCE_DIR}/faiss"
+
+    rm -rf "${BUILD_DIR}"
+    mkdir -p "${BUILD_DIR}"
+    cd "${BUILD_DIR}"
+
+    FAISS_CMAKE_OPTIONS=(
+        "-DDORIS_THIRD_LIB_INSTALL_DIR=${TP_INSTALL_DIR}"
+        "-DCMAKE_INSTALL_PREFIX=${TP_INSTALL_DIR}"
+        "-DCMAKE_BUILD_TYPE=Release"
+        "-DFAISS_ENABLE_GPU=OFF"
+        "-DFAISS_ENABLE_PYTHON=OFF"
+    )
+
+    echo "Building faiss at $(pwd) with cmake parameters: 
${FAISS_CMAKE_OPTIONS[*]}"
+
+    "${CMAKE_CMD}" -G "${GENERATOR}" "${FAISS_CMAKE_OPTIONS[@]}" ..
+    "${BUILD_SYSTEM}" -j "${PARALLEL}"
+    "${BUILD_SYSTEM}" install
+}
+
 if [[ "${#packages[@]}" -eq 0 ]]; then
     packages=(
         jindofs
diff --git a/thirdparty/download-thirdparty.sh 
b/thirdparty/download-thirdparty.sh
index 5ca4eb44080..54bcf2148d2 100755
--- a/thirdparty/download-thirdparty.sh
+++ b/thirdparty/download-thirdparty.sh
@@ -425,6 +425,7 @@ if [[ " ${TP_ARCHIVES[*]} " =~ " AWS_SDK " ]]; then
                 bash ./prefetch_crt_dependency.sh
             fi
             patch -p1 <"${TP_PATCH_DIR}/aws-sdk-cpp-1.11.119.patch"
+            patch -p1 <"${TP_PATCH_DIR}/aws-sdk-cpp-1.11.119-cmake.patch"
         else
             bash ./prefetch_crt_dependency.sh
         fi
@@ -436,7 +437,7 @@ fi
 
 # patch simdjson, change simdjson::dom::element_type::BOOL to BOOLEAN to avoid 
conflict with odbc macro BOOL
 if [[ " ${TP_ARCHIVES[*]} " =~ " SIMDJSON " ]]; then
-    if [[ "${SIMDJSON_SOURCE}" = "simdjson-3.0.1" ]]; then
+    if [[ "${SIMDJSON_SOURCE}" = "simdjson-3.11.6" ]]; then
         cd "${TP_SOURCE_DIR}/${SIMDJSON_SOURCE}"
         if [[ ! -f "${PATCHED_MARK}" ]]; then
             patch -p1 <"${TP_PATCH_DIR}/simdjson-3.0.1.patch"
@@ -489,6 +490,58 @@ if [[ " ${TP_ARCHIVES[*]} " =~ " BASE64 " ]]; then
     echo "Finished patching ${BASE64_SOURCE}"
 fi
 
+# patch libuuid
+if [[ " ${TP_ARCHIVES[*]} " =~ " LIBUUID " ]]; then
+    if [[ "${LIBUUID_SOURCE}" = "libuuid-1.0.3" ]]; then
+        cd "${TP_SOURCE_DIR}/${LIBUUID_SOURCE}"
+        if [[ ! -f "${PATCHED_MARK}" ]]; then
+            patch -p1 <"${TP_PATCH_DIR}/libuuid-1.0.3.patch"
+            touch "${PATCHED_MARK}"
+        fi
+        cd -
+    fi
+    echo "Finished patching ${LIBUUID_SOURCE}"
+fi
+
+# patch libdivide
+if [[ " ${TP_ARCHIVES[*]} " =~ " LIBDIVIDE " ]]; then
+    if [[ "${LIBDIVIDE_SOURCE}" = "libdivide-5.0" ]]; then
+        cd "${TP_SOURCE_DIR}/${LIBDIVIDE_SOURCE}"
+        if [[ ! -f "${PATCHED_MARK}" ]]; then
+            patch -p1 <"${TP_PATCH_DIR}/libdivide-5.0.patch"
+            touch "${PATCHED_MARK}"
+        fi
+        cd -
+    fi
+    echo "Finished patching ${LIBDIVIDE_SOURCE}"
+fi
+
+# patch grpc
+if [[ " ${TP_ARCHIVES[*]} " =~ " GRPC " ]]; then
+    if [[ "${GRPC_SOURCE}" = "grpc-1.54.3" ]]; then
+        cd "${TP_SOURCE_DIR}/${GRPC_SOURCE}"
+        if [[ ! -f "${PATCHED_MARK}" ]]; then
+            patch -p1 <"${TP_PATCH_DIR}/grpc-1.54.3.patch"
+            touch "${PATCHED_MARK}"
+        fi
+        cd -
+    fi
+    echo "Finished patching ${GRPC_SOURCE}"
+fi
+
+# patch flatbuffer
+if [[ " ${TP_ARCHIVES[*]} " =~ " FLATBUFFERS " ]]; then
+    if [[ "${FLATBUFFERS_SOURCE}" = "flatbuffers-2.0.0" ]]; then
+        cd "${TP_SOURCE_DIR}/${FLATBUFFERS_SOURCE}"
+        if [[ ! -f "${PATCHED_MARK}" ]]; then
+            patch -p1 <"${TP_PATCH_DIR}/flatbuffers-2.0.0.patch"
+            touch "${PATCHED_MARK}"
+        fi
+        cd -
+    fi
+    echo "Finished patching ${FLATBUFFERS_SOURCE}"
+fi
+
 # patch krb
 if [[ " ${TP_ARCHIVES[*]} " =~ " KRB5 " ]]; then
     if [[ "${KRB5_SOURCE}" = "krb5-1.19" ]]; then
@@ -537,6 +590,19 @@ if [[ " ${TP_ARCHIVES[*]} " =~ " THRIFT " ]]; then
     echo "Finished patching ${THRIFT_SOURCE}"
 fi
 
+# patch faiss cmake so that we can use openblas
+if [[ " ${TP_ARCHIVES[*]} " =~ " FAISS " ]]; then
+    if [[ "${FAISS_SOURCE}" = "faiss-1.10.0" ]]; then
+        cd "${TP_SOURCE_DIR}/${FAISS_SOURCE}"
+        if [[ ! -f "${PATCHED_MARK}" ]]; then
+            patch -p2 <"${TP_PATCH_DIR}/faiss-1.10.0.patch"
+            touch "${PATCHED_MARK}"
+        fi
+        cd -
+    fi
+    echo "Finished patching ${FAISS_SOURCE}"
+fi
+
 # patch re2
 if [[ " ${TP_ARCHIVES[*]} " =~ " RE2 " ]]; then
     if [[ "${RE2_SOURCE}" == 're2-2021-02-02' ]]; then
@@ -553,4 +619,15 @@ if [[ " ${TP_ARCHIVES[*]} " =~ " RE2 " ]]; then
     echo "Finished patching ${RE2_SOURCE}"
 fi
 
+# patch azure
+if [[ " ${TP_ARCHIVES[*]} " =~ " AZURE " ]]; then
+    cd "${TP_SOURCE_DIR}/${AZURE_SOURCE}"
+    if [[ ! -f "${PATCHED_MARK}" ]]; then
+        patch -p1 <"${TP_PATCH_DIR}/azure-sdk-for-cpp-azure-core_1.16.0.patch"
+        touch "${PATCHED_MARK}"
+    fi
+    cd -
+    echo "Finished patching ${GRPC_SOURCE}"
+fi
+
 # vim: ts=4 sw=4 ts=4 tw=100:
diff --git a/thirdparty/patches/aws-sdk-cpp-1.11.119-cmake.patch 
b/thirdparty/patches/aws-sdk-cpp-1.11.119-cmake.patch
new file mode 100644
index 00000000000..0f9e38be507
--- /dev/null
+++ b/thirdparty/patches/aws-sdk-cpp-1.11.119-cmake.patch
@@ -0,0 +1,11 @@
+--- a/crt/aws-crt-cpp/crt/aws-c-cal/CMakeLists.txt     2025-01-06 
21:23:51.057566544 +0800
++++ b/crt/aws-crt-cpp/crt/aws-c-cal/CMakeLists.txt     2025-01-06 
16:50:56.480567259 +0800
+@@ -8,7 +8,7 @@
+     cmake_policy(SET CMP0069 NEW) # Enable LTO/IPO if available in the 
compiler, see AwsCFlags
+ endif()
+ 
+-set(CMAKE_FIND_PACKAGE_PREFER_CONFIG TRUE)
++# set(CMAKE_FIND_PACKAGE_PREFER_CONFIG TRUE)
+ 
+ option(BYO_CRYPTO "Set this if you want to provide your own cryptography 
implementation. This will cause the defaults to not be compiled." OFF)
+ option(USE_OPENSSL "Set this if you want to use your system's OpenSSL 
1.0.2/1.1.1 compatible libcrypto" OFF)
diff --git a/thirdparty/patches/azure-sdk-for-cpp-azure-core_1.16.0.patch 
b/thirdparty/patches/azure-sdk-for-cpp-azure-core_1.16.0.patch
new file mode 100644
index 00000000000..c0e8def8f26
--- /dev/null
+++ b/thirdparty/patches/azure-sdk-for-cpp-azure-core_1.16.0.patch
@@ -0,0 +1,24 @@
+From 0c18bd91955f6ad48582c01901ffadd4ad5a149c Mon Sep 17 00:00:00 2001
+From: BiteTheDDDDt <[email protected]>
+Date: Tue, 15 Jul 2025 12:57:25 +0800
+Subject: [PATCH] resolve missing uint8_t define
+
+---
+ .../azure-security-attestation/src/private/crypto/inc/crypto.hpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git 
a/sdk/attestation/azure-security-attestation/src/private/crypto/inc/crypto.hpp 
b/sdk/attestation/azure-security-attestation/src/private/crypto/inc/crypto.hpp
+index 9a98f204..8f338436 100644
+--- 
a/sdk/attestation/azure-security-attestation/src/private/crypto/inc/crypto.hpp
++++ 
b/sdk/attestation/azure-security-attestation/src/private/crypto/inc/crypto.hpp
+@@ -2,6 +2,7 @@
+ // Licensed under the MIT License.
+ 
+ #pragma once
++#include <cstdint>
+ #include <ctime>
+ #include <memory>
+ #include <string>
+-- 
+2.43.5
+
diff --git a/thirdparty/patches/brpc-uuid-string.patch 
b/thirdparty/patches/brpc-uuid-string.patch
new file mode 100644
index 00000000000..99606aefce3
--- /dev/null
+++ b/thirdparty/patches/brpc-uuid-string.patch
@@ -0,0 +1,123 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -110,6 +110,34 @@ set(DEFINE_CLOCK_GETTIME "-DNO_CLOCK_GETTIME_IN_MAC")
+     endif()
+     set(CMAKE_CPP_FLAGS "${CMAKE_CPP_FLAGS} -Wno-deprecated-declarations 
-Wno-inconsistent-missing-override")
++
++    # Check if xcrun exists and get SDK version if it does
++    execute_process(
++        COMMAND which xcrun
++        RESULT_VARIABLE XCRUN_RESULT
++        OUTPUT_QUIET
++        ERROR_QUIET
++    )
++
++    if(XCRUN_RESULT EQUAL 0)
++        # xcrun exists, detect SDK version
++        execute_process(
++            COMMAND xcrun --sdk macosx --show-sdk-version
++            OUTPUT_VARIABLE MACOSX_SDK_VERSION
++            OUTPUT_STRIP_TRAILING_WHITESPACE
++        )
++        message(STATUS "Detected macOS SDK version: ${MACOSX_SDK_VERSION}")
++
++        if(MACOSX_SDK_VERSION VERSION_LESS 10.14)
++            message(STATUS "macOS SDK version < 10.14; not applying 
_DARWIN_C_SOURCE or uuid fix.")
++        else()
++            message(STATUS "macOS SDK version >= 10.14; applying 
Darwin-specific uuid fix.")
++            add_definitions(-D_DARWIN_C_SOURCE)
++            add_definitions(-DUSE_DARWIN_UUID_FIX)
++        endif()
++    else()
++        message(STATUS "xcrun not found; skipping Darwin-specific SDK 
checks.")
++    endif()
+ endif()
+
+ set(CMAKE_CPP_FLAGS "${CMAKE_CPP_FLAGS} ${DEFINE_CLOCK_GETTIME} 
-DBRPC_WITH_GLOG=${WITH_GLOG_VAL} -DBRPC_WITH_RDMA=${WITH_RDMA_VAL} 
-DGFLAGS_NS=${GFLAGS_NS}")
+
+diff --git a/src/brpc/macos_uuid_fix.h b/src/brpc/macos_uuid_fix.h
+new file mode 100644
+index 00000000..623a6454
+--- /dev/null
++++ b/src/brpc/macos_uuid_fix.h
+@@ -0,0 +1,9 @@
++#ifdef __APPLE__
++#ifdef USE_DARWIN_UUID_FIX
++#include <uuid/uuid.h>
++#ifndef _UUID_STRING_T
++#define _UUID_STRING_T
++typedef char uuid_string_t[37];
++#endif
++#endif
++#endif
+
+diff --git a/src/butil/mac/bundle_locations.mm 
b/src/butil/mac/bundle_locations.mm
+--- a/src/butil/mac/bundle_locations.mm
++++ b/src/butil/mac/bundle_locations.mm
+@@ -1,7 +1,8 @@
+ // Copyright (c) 2012 The Chromium Authors. All rights reserved.
+ // Use of this source code is governed by a BSD-style license that can be
+ // found in the LICENSE file.
+
++#include "brpc/macos_uuid_fix.h"
+ #include "butil/mac/bundle_locations.h"
+
+ #include "butil/logging.h"
+
+diff --git a/src/butil/mac/foundation_util.h b/src/butil/mac/foundation_util.h
+--- a/src/butil/mac/foundation_util.h
++++ b/src/butil/mac/foundation_util.h
+@@ -2,6 +2,7 @@
+ // Use of this source code is governed by a BSD-style license that can be
+ // found in the LICENSE file.
+
++#include "brpc/macos_uuid_fix.h"
+ #ifndef BUTIL_MAC_FOUNDATION_UTIL_H_
+ #define BUTIL_MAC_FOUNDATION_UTIL_H_
+
+
+diff --git a/src/butil/mac/foundation_util.mm 
b/src/butil/mac/foundation_util.mm
+--- a/src/butil/mac/foundation_util.mm
++++ b/src/butil/mac/foundation_util.mm
+@@ -2,6 +2,7 @@
+ // Use of this source code is governed by a BSD-style license that can be
+ // found in the LICENSE file.
+
++#include "brpc/macos_uuid_fix.h"
+ #include "butil/mac/foundation_util.h"
+
+ #include <stdlib.h>
+
+diff --git a/src/butil/threading/platform_thread_mac.mm 
b/src/butil/threading/platform_thread_mac.mm
+--- a/src/butil/threading/platform_thread_mac.mm
++++ b/src/butil/threading/platform_thread_mac.mm
+@@ -3,3 +3,4 @@
+ // found in the LICENSE file.
+
++#include "brpc/macos_uuid_fix.h"
+ #include "butil/threading/platform_thread.h"
+
+diff --git a/src/butil/file_util_mac.mm b/src/butil/file_util_mac.mm
+--- a/src/butil/file_util_mac.mm
++++ b/src/butil/file_util_mac.mm
+@@ -2,6 +2,7 @@
+ // Use of this source code is governed by a BSD-style license that can be
+ // found in the LICENSE file.
+
++#include "brpc/macos_uuid_fix.h"
+ #include "butil/file_util.h"
+
+ #import <Foundation/Foundation.h>
+
+diff --git a/src/butil/strings/sys_string_conversions_mac.mm 
b/src/butil/strings/sys_string_conversions_mac.mm
+--- a/src/butil/strings/sys_string_conversions_mac.mm
++++ b/src/butil/strings/sys_string_conversions_mac.mm
+@@ -2,5 +2,6 @@
+ // Use of this source code is governed by a BSD-style license that can be
+ // found in the LICENSE file.
+
++#include "brpc/macos_uuid_fix.h"
+ #include "butil/mac/foundation_util.h"
+ #include "butil/mac/scoped_cftyperef.h"
+
diff --git a/thirdparty/patches/faiss-1.10.0.patch 
b/thirdparty/patches/faiss-1.10.0.patch
new file mode 100644
index 00000000000..8279f4d71a1
--- /dev/null
+++ b/thirdparty/patches/faiss-1.10.0.patch
@@ -0,0 +1,66 @@
+--- src/faiss-1.10.0/faiss/CMakeLists.txt      2025-02-01 05:52:00.000000000 
+0800
++++ src/faiss-1.10.0/faiss/CMakeLists.txt.new  2025-03-28 19:45:37.513624103 
+0800
+@@ -381,19 +381,51 @@
+   target_link_libraries(faiss_avx512 PRIVATE ${MKL_LIBRARIES})
+   target_link_libraries(faiss_avx512_spr PRIVATE ${MKL_LIBRARIES})
+ else()
+-  find_package(BLAS REQUIRED)
+-  target_link_libraries(faiss PRIVATE ${BLAS_LIBRARIES})
+-  target_link_libraries(faiss_avx2 PRIVATE ${BLAS_LIBRARIES})
+-  target_link_libraries(faiss_avx512 PRIVATE ${BLAS_LIBRARIES})
+-  target_link_libraries(faiss_avx512_spr PRIVATE ${BLAS_LIBRARIES})
+-  target_link_libraries(faiss_sve PRIVATE ${BLAS_LIBRARIES})
++  # If not found through find_package, look in the DORIS_THIRD_LIB_INSTALL_DIR
++  if(DEFINED DORIS_THIRD_LIB_INSTALL_DIR)
++    set(OpenBLAS_ROOT ${DORIS_THIRD_LIB_INSTALL_DIR})
++    
++    # Check if libopenblas exists in DORIS_THIRD_LIB_INSTALL_DIR
++    if(EXISTS "${DORIS_THIRD_LIB_INSTALL_DIR}/lib/libopenblas.a")
++      set(OpenBLAS_LIB "${DORIS_THIRD_LIB_INSTALL_DIR}/lib/libopenblas.a")
++    endif()
++    # Terminate if OpenBLAS_LIB is not found
++    if(NOT OpenBLAS_LIB)
++      message(WARNING "OpenBLAS not found in DORIS_THIRD_LIB_INSTALL_DIR: 
${DORIS_THIRD_LIB_INSTALL_DIR}")
++    endif() 
+ 
+-  find_package(LAPACK REQUIRED)
+-  target_link_libraries(faiss PRIVATE ${LAPACK_LIBRARIES})
+-  target_link_libraries(faiss_avx2 PRIVATE ${LAPACK_LIBRARIES})
+-  target_link_libraries(faiss_avx512 PRIVATE ${LAPACK_LIBRARIES})
+-  target_link_libraries(faiss_avx512_spr PRIVATE ${LAPACK_LIBRARIES})
+-  target_link_libraries(faiss_sve PRIVATE ${LAPACK_LIBRARIES})
++    if(OpenBLAS_LIB)
++      set(OpenBLAS_LIBRARIES ${OpenBLAS_LIB})
++      set(OpenBLAS_FOUND TRUE)
++      message(STATUS "Found OpenBLAS in DORIS_THIRD_LIB_INSTALL_DIR: 
${OpenBLAS_LIB}")
++    endif()
++  else()
++    message(WARNING "DORIS_THIRD_LIB_INSTALL_DIR is not defined. Please set 
it to the directory where OpenBLAS is installed.")
++  endif()
++  
++  if(OpenBLAS_FOUND)
++    message(STATUS "Using OpenBLAS: ${OpenBLAS_LIBRARIES}")
++    target_link_libraries(faiss PRIVATE ${OpenBLAS_LIBRARIES})
++    target_link_libraries(faiss_avx2 PRIVATE ${OpenBLAS_LIBRARIES})
++    target_link_libraries(faiss_avx512 PRIVATE ${OpenBLAS_LIBRARIES})
++    target_link_libraries(faiss_avx512_spr PRIVATE ${OpenBLAS_LIBRARIES})
++    target_link_libraries(faiss_sve PRIVATE ${OpenBLAS_LIBRARIES})
++  else()
++    # Fall back to separate BLAS and LAPACK if OpenBLAS is not found
++    find_package(BLAS REQUIRED)
++    target_link_libraries(faiss PRIVATE ${BLAS_LIBRARIES})
++    target_link_libraries(faiss_avx2 PRIVATE ${BLAS_LIBRARIES})
++    target_link_libraries(faiss_avx512 PRIVATE ${BLAS_LIBRARIES})
++    target_link_libraries(faiss_avx512_spr PRIVATE ${BLAS_LIBRARIES})
++    target_link_libraries(faiss_sve PRIVATE ${BLAS_LIBRARIES})
++
++    find_package(LAPACK REQUIRED)
++    target_link_libraries(faiss PRIVATE ${LAPACK_LIBRARIES})
++    target_link_libraries(faiss_avx2 PRIVATE ${LAPACK_LIBRARIES})
++    target_link_libraries(faiss_avx512 PRIVATE ${LAPACK_LIBRARIES})
++    target_link_libraries(faiss_avx512_spr PRIVATE ${LAPACK_LIBRARIES})
++    target_link_libraries(faiss_sve PRIVATE ${LAPACK_LIBRARIES})
++  endif()
+ endif()
+ 
+ install(TARGETS faiss
diff --git a/thirdparty/patches/flatbuffers-2.0.0.patch 
b/thirdparty/patches/flatbuffers-2.0.0.patch
new file mode 100644
index 00000000000..096f9cb7ad4
--- /dev/null
+++ b/thirdparty/patches/flatbuffers-2.0.0.patch
@@ -0,0 +1,11 @@
+--- a/include/flatbuffers/stl_emulation.h      2021-05-11 02:45:16.000000000 
+0800
++++ b/include/flatbuffers/stl_emulation.h      2025-01-06 22:43:47.538175771 
+0800
+@@ -625,7 +625,7 @@
+  private:
+   // This is a naive implementation with 'count_' member even if (Extent != 
dynamic_extent).
+   pointer const data_;
+-  const size_type count_;
++  size_type count_;
+ };
+ 
+  #if !defined(FLATBUFFERS_SPAN_MINIMAL)
diff --git a/thirdparty/patches/grpc-1.54.3.patch 
b/thirdparty/patches/grpc-1.54.3.patch
new file mode 100644
index 00000000000..1f211eac3f7
--- /dev/null
+++ b/thirdparty/patches/grpc-1.54.3.patch
@@ -0,0 +1,11 @@
+--- a/src/core/lib/promise/detail/basic_seq.h  2025-01-06 22:41:37.857651534 
+0800
++++ b/src/core/lib/promise/detail/basic_seq.h  2025-01-06 22:41:42.308703853 
+0800
+@@ -471,7 +471,7 @@
+           cur_ = next;
+           state_.~State();
+           Construct(&state_,
+-                    Traits::template CallSeqFactory(f_, *cur_, 
std::move(arg)));
++                    Traits::CallSeqFactory(f_, *cur_, std::move(arg)));
+           return PollNonEmpty();
+         });
+   }
diff --git a/thirdparty/patches/libdivide-5.0.patch 
b/thirdparty/patches/libdivide-5.0.patch
new file mode 100644
index 00000000000..e5d8b952d75
--- /dev/null
+++ b/thirdparty/patches/libdivide-5.0.patch
@@ -0,0 +1,11 @@
+--- a/libdivide.h      2025-01-06 22:27:33.308725176 +0800
++++ b/libdivide.h      2025-01-06 22:27:41.517821664 +0800
+@@ -3017,7 +3017,7 @@
+     T recover() const { return div.recover(); }
+ 
+     bool operator==(const divider<T, ALGO> &other) const {
+-        return div.denom.magic == other.denom.magic && div.denom.more == 
other.denom.more;
++        return div.denom.magic == other.div.denom.magic && div.denom.more == 
other.div.denom.more;
+     }
+ 
+     bool operator!=(const divider<T, ALGO> &other) const { return !(*this == 
other); }
diff --git a/thirdparty/patches/libuuid-1.0.3.patch 
b/thirdparty/patches/libuuid-1.0.3.patch
new file mode 100644
index 00000000000..30a2cb8f6b4
--- /dev/null
+++ b/thirdparty/patches/libuuid-1.0.3.patch
@@ -0,0 +1,19 @@
+--- a/gen_uuid.c       2025-01-06 21:27:05.241857362 +0800
++++ b/gen_uuid.c       2025-01-06 17:30:03.201419206 +0800
+@@ -38,6 +38,8 @@
+  */
+ #define _SVID_SOURCE
+ 
++#include "c.h"
++
+ #ifdef _WIN32
+ #define _WIN32_WINNT 0x0500
+ #include <windows.h>
+@@ -91,7 +93,6 @@
+ #include "uuidP.h"
+ #include "uuidd.h"
+ #include "randutils.h"
+-#include "c.h"
+ 
+ #ifdef HAVE_TLS
+ #define THREAD_LOCAL static __thread
diff --git a/thirdparty/patches/thrift-0.16-fix_mutex_include.patch 
b/thirdparty/patches/thrift-0.16-fix_mutex_include.patch
new file mode 100644
index 00000000000..ca4315fde3a
--- /dev/null
+++ b/thirdparty/patches/thrift-0.16-fix_mutex_include.patch
@@ -0,0 +1,9 @@
+--- a/lib/cpp/src/thrift/concurrency/Mutex.h
++++ b/lib/cpp/src/thrift/concurrency/Mutex.h
+@@ -19,4 +19,5 @@
+ #ifndef _THRIFT_CONCURRENCY_MUTEX_H_
+ #define _THRIFT_CONCURRENCY_MUTEX_H_ 1
+
++#include <cstdint>
+ #include <memory>
+ #include <thrift/TNonCopyable.h>
diff --git a/thirdparty/vars.sh b/thirdparty/vars.sh
index d694968d86d..bc11d26d6b1 100644
--- a/thirdparty/vars.sh
+++ b/thirdparty/vars.sh
@@ -253,6 +253,8 @@ GRPC_SOURCE=grpc-1.54.3
 GRPC_MD5SUM="af00a2edeae0f02bb25917cc3473b7de"
 
 # arrow
+# Arrow 19.0.1 will MacOS compile error and decimal type error when convert to 
Parquet.
+# https://github.com/apache/doris/pull/51217
 
ARROW_DOWNLOAD="https://github.com/apache/arrow/archive/refs/tags/apache-arrow-17.0.0.tar.gz";
 ARROW_NAME="apache-arrow-17.0.0.tar.gz"
 ARROW_SOURCE="arrow-apache-arrow-17.0.0"
@@ -394,10 +396,10 @@ HDFS3_SOURCE="doris-thirdparty-libhdfs3-v2.3.9"
 HDFS3_MD5SUM="b3eaa03e5b184521e5ad5bf6cabea97e"
 
 #libdivide
-LIBDIVIDE_DOWNLOAD="https://github.com/ridiculousfish/libdivide/archive/5.0.tar.gz";
-LIBDIVIDE_NAME="libdivide-5.0.tar.gz"
-LIBDIVIDE_SOURCE="libdivide-5.0"
-LIBDIVIDE_MD5SUM="7fd16b0bb4ab6812b2e2fdc7bfb81641"
+LIBDIVIDE_DOWNLOAD="https://github.com/ridiculousfish/libdivide/archive/refs/tags/v5.2.0.tar.gz";
+LIBDIVIDE_NAME="libdivide-5.2.0.tar.gz"
+LIBDIVIDE_SOURCE="libdivide-5.2.0"
+LIBDIVIDE_MD5SUM="4ba77777192c295d6de2b86d88f3239a"
 
 #pdqsort
 
PDQSORT_DOWNLOAD="https://raw.githubusercontent.com/orlp/pdqsort/b1ef26a55cdb60d236a5cb199c4234c704f46726/pdqsort.h";
@@ -419,10 +421,10 @@ XSIMD_SOURCE=xsimd-13.0.0
 XSIMD_MD5SUM="c661deb91836e82d3070f81032014fe6"
 
 # simdjson
-SIMDJSON_DOWNLOAD="https://github.com/simdjson/simdjson/archive/refs/tags/v3.0.1.tar.gz";
-SIMDJSON_NAME=simdjson-3.0.1.tar.gz
-SIMDJSON_SOURCE=simdjson-3.0.1
-SIMDJSON_MD5SUM="993576b47249f2bade2bfb2552b2896a"
+SIMDJSON_DOWNLOAD="https://github.com/simdjson/simdjson/archive/refs/tags/v3.11.6.tar.gz";
+SIMDJSON_NAME=simdjson-3.11.6.tar.gz
+SIMDJSON_SOURCE=simdjson-3.11.6
+SIMDJSON_MD5SUM="e7d9c814a4fdd6e47119ce5cf4240f4e"
 
 # nlohmann_json
 
NLOHMANN_JSON_DOWNLOAD="https://github.com/nlohmann/json/archive/refs/tags/v3.10.1.tar.gz";
@@ -461,10 +463,10 @@ FAST_FLOAT_SOURCE=fast_float-3.9.0
 FAST_FLOAT_MD5SUM="5656b0d8b150a3b157cfb092d214f6ea"
 
 # libhdfs
-HADOOP_LIBS_DOWNLOAD="https://github.com/apache/doris-thirdparty/archive/refs/tags/hadoop-3.3.6.5-for-doris.tar.gz";
-HADOOP_LIBS_NAME="hadoop-3.3.6.5-for-doris.tar.gz"
-HADOOP_LIBS_SOURCE="doris-thirdparty-hadoop-3.3.6.5-for-doris"
-HADOOP_LIBS_MD5SUM="c13f90ceb5ef9460b7d736c49d9b79fd"
+HADOOP_LIBS_DOWNLOAD="https://github.com/apache/doris-thirdparty/archive/refs/tags/hadoop-3.3.6.6-for-doris.tar.gz";
+HADOOP_LIBS_NAME="hadoop-3.3.6.6-for-doris.tar.gz"
+HADOOP_LIBS_SOURCE="doris-thirdparty-hadoop-3.3.6.6-for-doris"
+HADOOP_LIBS_MD5SUM="13b66d5f2abffd1740e692b65df5962e"
 
 # AvxToNeon
 
AVX2NEON_DOWNLOAD="https://github.com/kunpengcompute/AvxToNeon/archive/refs/tags/v1.0.0.tar.gz";
@@ -509,10 +511,10 @@ BASE64_SOURCE="base64-0.5.2"
 BASE64_MD5SUM="49e5a6c98bd0192aedd16c16eec39974"
 
 # azure blob
-AZURE_DOWNLOAD="https://github.com/Azure/azure-sdk-for-cpp/archive/azure-core_1.10.3.tar.gz";
-AZURE_NAME="azure-core_1.10.3.tar.gz"
-AZURE_SOURCE="azure-sdk-for-cpp-azure-core_1.10.3"
-AZURE_MD5SUM="aa470cfdba93dd69a6f3112a6958c13c"
+AZURE_DOWNLOAD="https://github.com/Azure/azure-sdk-for-cpp/archive/azure-core_1.16.0.tar.gz";
+AZURE_NAME="azure-core_1.16.0.tar.gz"
+AZURE_SOURCE="azure-sdk-for-cpp-azure-core_1.16.0"
+AZURE_MD5SUM="0fb23eab695dc24b94456bf461e6af3b"
 
 # libdragonbox for faster double/float to string
 
DRAGONBOX_DOWNLOAD="https://github.com/jk-jeon/dragonbox/archive/refs/tags/1.1.3.tar.gz";
@@ -538,6 +540,19 @@ PUGIXML_NAME=pugixml-1.15.tar.gz
 PUGIXML_SOURCE=pugixml-1.15
 PUGIXML_MD5SUM="3b894c29455eb33a40b165c6e2de5895"
 
+# openblas
+OPENBLAS_DOWNLOAD="https://github.com/OpenMathLib/OpenBLAS/releases/download/v0.3.29/OpenBLAS-0.3.29.tar.gz";
+OPENBLAS_NAME="OpenBLAS-0.3.29.tar.gz"
+OPENBLAS_SOURCE="OpenBLAS-0.3.29"
+OPENBLAS_MD5SUM="853a0c5c0747c5943e7ef4bbb793162d"
+
+# faiss
+FAISS_DOWNLOAD="https://github.com/facebookresearch/faiss/archive/refs/tags/v1.10.0.tar.gz";
+FAISS_NAME="faiss-1.10.0.tar.gz"
+FAISS_SOURCE="faiss-1.10.0"
+FAISS_MD5SUM="f31edf2492808b27cc963d0ab316a205"
+
+
 # all thirdparties which need to be downloaded is set in array TP_ARCHIVES
 export TP_ARCHIVES=(
     'LIBEVENT'
@@ -618,6 +633,8 @@ export TP_ARCHIVES=(
     'ICU'
     'JINDOFS'
     'PUGIXML'
+    'OPENBLAS'
+    'FAISS'
 )
 
 if [[ "$(uname -s)" == 'Darwin' ]]; then


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to