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

yiguolei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new 0f555e90cb [deps](brpc) Upgrade Brpc to 1.2.0 fix `_dl_sym undefined 
reference` on new verison of glibc (#11688)
0f555e90cb is described below

commit 0f555e90cb387284c41a0357a867edc6a635313a
Author: Zhengguo Yang <yangz...@gmail.com>
AuthorDate: Fri Aug 12 09:07:57 2022 +0800

    [deps](brpc) Upgrade Brpc to 1.2.0 fix `_dl_sym undefined reference` on new 
verison of glibc (#11688)
---
 thirdparty/CHANGELOG.md                     |   7 +-
 thirdparty/download-thirdparty.sh           |  13 -
 thirdparty/patches/brpc-1.1.0-_dl_sym.patch |  28 --
 thirdparty/patches/brpc-1.1.0.patch         | 461 ----------------------------
 thirdparty/vars.sh                          |   8 +-
 5 files changed, 9 insertions(+), 508 deletions(-)

diff --git a/thirdparty/CHANGELOG.md b/thirdparty/CHANGELOG.md
index 44c09c76e5..dd5818aa1f 100644
--- a/thirdparty/CHANGELOG.md
+++ b/thirdparty/CHANGELOG.md
@@ -2,7 +2,10 @@
 
 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}`
 
-## v20220812
+## v20220811
+- Modified: brpc 1.1.0 -> 1.2.0 fix _dl_sym undefined reference on Ubuntu22.04
+
+## v20220802
 
 - Modified: libhdfs3 2.3.1 -> 2.3.2
 
@@ -15,7 +18,7 @@ This file contains version of the third-party dependency 
libraries in the build-
 - Added: vectorscan 5.4.7, and a patch for compilation
 
 ## v20220613
-- Modified: update libhdfs3 from 2.3.0 to 2.3.1  fix client uuid set error
+- Modified: update libhdfs3 from 2.3.0 to 2.3.1 fix client uuid set error
 
 ## v20220608
 - Remove: remove libhdfs3 without kerberos support
diff --git a/thirdparty/download-thirdparty.sh 
b/thirdparty/download-thirdparty.sh
index 251124810e..dadf48a7b0 100755
--- a/thirdparty/download-thirdparty.sh
+++ b/thirdparty/download-thirdparty.sh
@@ -366,16 +366,3 @@ if [ ! -f $PATCHED_MARK ]; then
 fi
 cd -
 echo "Finished patching $AWS_SDK_SOURCE"
-
-cd "${TP_SOURCE_DIR}/${BRPC_SOURCE}"
-if [[ ! -f $PATCHED_MARK ]]; then
-    if [[ "$(uname -s)" == 'Darwin' ]]; then
-        patch -p1 <"${TP_PATCH_DIR}/brpc-1.1.0.patch"
-        touch ${PATCHED_MARK}
-    else
-        patch -p0 <"$TP_PATCH_DIR/brpc-1.1.0-_dl_sym.patch"
-        touch ${PATCHED_MARK}
-    fi
-fi
-cd -
-echo "Finished patching ${BRPC_SOURCE}"
diff --git a/thirdparty/patches/brpc-1.1.0-_dl_sym.patch 
b/thirdparty/patches/brpc-1.1.0-_dl_sym.patch
deleted file mode 100644
index 35d06b7708..0000000000
--- a/thirdparty/patches/brpc-1.1.0-_dl_sym.patch
+++ /dev/null
@@ -1,28 +0,0 @@
---- src/bthread/mutex.cpp      2022-08-10 13:14:11.792739916 +0800
-+++ src/bthread/mutex.cpp      2022-08-10 13:04:54.644764937 +0800
-@@ -44,7 +44,7 @@
- #include "bthread/log.h"
- 
- extern "C" {
--extern void* _dl_sym(void* handle, const char* symbol, void* caller);
-+extern void* __attribute__((weak)) _dl_sym(void* handle, const char* symbol, 
void* caller);
- }
- 
- namespace bthread {
-@@ -408,8 +408,14 @@ static void init_sys_mutex_lock() {
- #if defined(OS_LINUX)
-     // TODO: may need dlvsym when GLIBC has multiple versions of a same 
symbol.
-     // 
http://blog.fesnel.com/blog/2009/08/25/preloading-with-multiple-symbol-versions
--    sys_pthread_mutex_lock = (MutexOp)_dl_sym(RTLD_NEXT, 
"pthread_mutex_lock", (void*)init_sys_mutex_lock);
--    sys_pthread_mutex_unlock = (MutexOp)_dl_sym(RTLD_NEXT, 
"pthread_mutex_unlock", (void*)init_sys_mutex_lock);
-+    if (_dl_sym) {
-+        sys_pthread_mutex_lock = (MutexOp)_dl_sym(RTLD_NEXT, 
"pthread_mutex_lock", (void*)init_sys_mutex_lock);
-+        sys_pthread_mutex_unlock = (MutexOp)_dl_sym(RTLD_NEXT, 
"pthread_mutex_unlock", (void*)init_sys_mutex_lock);
-+    } else {
-+        // _dl_sym may be undefined reference in some system, fallback to 
dlsym
-+        sys_pthread_mutex_lock = (MutexOp)dlsym(RTLD_NEXT, 
"pthread_mutex_lock");
-+        sys_pthread_mutex_unlock = (MutexOp)dlsym(RTLD_NEXT, 
"pthread_mutex_unlock");
-+    }
- #elif defined(OS_MACOSX)
-     // TODO: look workaround for dlsym on mac
-     sys_pthread_mutex_lock = (MutexOp)dlsym(RTLD_NEXT, "pthread_mutex_lock");
diff --git a/thirdparty/patches/brpc-1.1.0.patch 
b/thirdparty/patches/brpc-1.1.0.patch
deleted file mode 100644
index fd9a177a70..0000000000
--- a/thirdparty/patches/brpc-1.1.0.patch
+++ /dev/null
@@ -1,461 +0,0 @@
-diff --git a/Makefile b/Makefile
-index 3538e47c..e2e1a6b2 100644
---- a/Makefile
-+++ b/Makefile
-@@ -41,13 +41,15 @@ endif
- 
- #required by butil/crc32.cc to boost performance for 10x
- ifeq ($(shell test $(GCC_VERSION) -ge 40400; echo $$?),0)
--      CXXFLAGS+=-msse4 -msse4.2
-+  ifeq ($(shell uname -p),i386)  #note: i386 is processor family type, not 
the 32-bit x86 arch
-+    CXXFLAGS+=-msse4 -msse4.2
-+  endif
- endif
- #not solved yet
- ifeq ($(CC),gcc)
-- ifeq ($(shell test $(GCC_VERSION) -ge 70000; echo $$?),0)
--      CXXFLAGS+=-Wno-aligned-new
-- endif
-+  ifeq ($(shell test $(GCC_VERSION) -ge 70000; echo $$?),0)
-+    CXXFLAGS+=-Wno-aligned-new
-+  endif
- endif
- 
- BUTIL_SOURCES = \
-diff --git a/config_brpc.sh b/config_brpc.sh
-index f52911db..842f100f 100755
---- a/config_brpc.sh
-+++ b/config_brpc.sh
-@@ -154,16 +154,21 @@ find_dir_of_header_or_die() {
- }
- 
- if [ "$SYSTEM" = "Darwin" ]; then
--    OPENSSL_LIB="/usr/local/opt/openssl/lib"
--    OPENSSL_HDR="/usr/local/opt/openssl/include"
--else
--    # User specified path of openssl, if not given it's empty
--    OPENSSL_LIB=$(find_dir_of_lib ssl)
--    # Inconvenient to check these headers in baidu-internal
--    #PTHREAD_HDR=$(find_dir_of_header_or_die pthread.h)
--    OPENSSL_HDR=$(find_dir_of_header_or_die openssl/ssl.h 
mesalink/openssl/ssl.h)
-+    if [ -d "/usr/local/opt/openssl" ]; then
-+        LIBS_IN="/usr/local/opt/openssl/lib $LIBS_IN"
-+        HDRS_IN="/usr/local/opt/openssl/include $HDRS_IN"
-+    elif [ -d "/opt/homebrew/Cellar" ]; then
-+        LIBS_IN="/opt/homebrew/Cellar $LIBS_IN"
-+        HDRS_IN="/opt/homebrew/Cellar $HDRS_IN"
-+    fi
- fi
- 
-+# User specified path of openssl, if not given it's empty
-+OPENSSL_LIB=$(find_dir_of_lib ssl)
-+# Inconvenient to check these headers in baidu-internal
-+#PTHREAD_HDR=$(find_dir_of_header_or_die pthread.h)
-+OPENSSL_HDR=$(find_dir_of_header_or_die openssl/ssl.h mesalink/openssl/ssl.h)
-+
- if [ $WITH_MESALINK != 0 ]; then
-     MESALINK_HDR=$(find_dir_of_header_or_die mesalink/openssl/ssl.h)
-     OPENSSL_HDR="$OPENSSL_HDR\n$MESALINK_HDR"
-diff --git a/docs/cn/getting_started.md b/docs/cn/getting_started.md
-index 53ef0f50..b4af85a5 100644
---- a/docs/cn/getting_started.md
-+++ b/docs/cn/getting_started.md
-@@ -20,7 +20,7 @@ brpc有如下依赖:
- ## Ubuntu/LinuxMint/WSL
- ### 依赖准备
- 
--安装通用依赖,[gflags](https://github.com/gflags/gflags), 
[protobuf](https://github.com/google/protobuf), 
[leveldb](https://github.com/google/leveldb):
-+安装依赖:
- ```shell
- sudo apt-get install -y git g++ make libssl-dev libgflags-dev libprotobuf-dev 
libprotoc-dev protobuf-compiler libleveldb-dev
- ```
-@@ -113,14 +113,9 @@ CentOS一般需要安装EPEL,否则很多包都默认不可用。
- sudo yum install epel-release
- ```
- 
--安装通用依赖:
-+安装依赖:
- ```shell
--sudo yum install git gcc-c++ make openssl-devel
--```
--
--安装 [gflags](https://github.com/gflags/gflags), 
[protobuf](https://github.com/google/protobuf), 
[leveldb](https://github.com/google/leveldb):
--```shell
--sudo yum install gflags-devel protobuf-devel protobuf-compiler leveldb-devel
-+sudo yum install git gcc-c++ make openssl-devel gflags-devel protobuf-devel 
protobuf-compiler leveldb-devel
- ```
- 
- 如果你要在样例中启用cpu/heap的profiler:
-@@ -216,18 +211,13 @@ $ make
- 
- ## MacOS
- 
--注意:在相同运行环境下,当前Mac版brpc的性能比Linux版差2.5倍。如果你的服务是性能敏感的,请不要使用MacOs作为你的生产环境。
-+注意:在相同硬件条件下,MacOS版brpc的性能可能明显差于Linux版。如果你的服务是性能敏感的,请不要使用MacOS作为你的生产环境。
- 
- ### 依赖准备
- 
--安装通用依赖:
--```shell
--brew install openssl git gnu-getopt coreutils
--```
--
--安装[gflags](https://github.com/gflags/gflags),[protobuf](https://github.com/google/protobuf),[leveldb](https://github.com/google/leveldb):
-+安装依赖:
- ```shell
--brew install gflags protobuf leveldb
-+brew install openssl git gnu-getopt coreutils gflags protobuf leveldb
- ```
- 
- 如果你要在样例中启用cpu/heap的profiler:
-@@ -241,6 +231,17 @@ git clone https://github.com/google/googletest -b 
release-1.10.0 && cd googletes
- ```
- 
在编译完成后,复制include/和lib/目录到/usr/local/include和/usr/local/lib目录中,以便于让所有应用都能使用gtest。
- 
-+### Monterey
-+Monterey中openssl的安装位置可能不再位于`/usr/local/opt/openssl`,很可能会在`/opt/homebrew/Cellar`目录下,如果编译时报告找不到openssl,可考虑设置软链如下:
-+```shell
-+sudo ln -s /opt/homebrew/Cellar/openssl@3/3.0.3 /usr/local/opt/openssl
-+```
-+请注意上述命令中openssl的目录可能随环境变化而变化,你可以通过`brew info openssl`查看。
-+
-+### Apple Silicon
-+
-+master HEAD已支持M1系列芯片,M2未测试过。欢迎通过issues向我们报告遗留的warning/error。
-+
- ### 使用config_brpc.sh编译brpc
- git克隆brpc,进入到项目目录然后运行:
- ```shell
-diff --git a/docs/en/getting_started.md b/docs/en/getting_started.md
-index 4d24f2d7..03e34cf6 100644
---- a/docs/en/getting_started.md
-+++ b/docs/en/getting_started.md
-@@ -215,18 +215,13 @@ Same with [here](#compile-brpc-with-cmake)
- 
- ## MacOS
- 
--Note: In the same running environment, the performance of the current Mac 
version is about 2.5 times worse than the Linux version. If your service is 
performance-critical, do not use MacOS as your production environment.
-+Note: With same environment, the performance of the MacOS version is worse 
than the Linux version. If your service is performance-critical, do not use 
MacOS as your production environment.
- 
- ### Prepare deps
- 
--Install common deps:
-+Install dependencies:
- ```shell
--brew install openssl git gnu-getopt coreutils
--```
--
--Install [gflags](https://github.com/gflags/gflags), 
[protobuf](https://github.com/google/protobuf), 
[leveldb](https://github.com/google/leveldb):
--```shell
--brew install gflags protobuf leveldb
-+brew install openssl git gnu-getopt coreutils gflags protobuf leveldb
- ```
- 
- If you need to enable cpu/heap profilers in examples:
-@@ -240,6 +235,20 @@ git clone https://github.com/google/googletest -b 
release-1.10.0 && cd googletes
- ```
- After the compilation, copy include/ and lib/ into /usr/local/include and 
/usr/local/lib respectively to expose gtest to all apps
- 
-+### Monterey
-+
-+openssl installed in Monterey may not be found at `/usr/local/opt/openssl`, 
instead it's probably put under `/opt/homebrew/Cellar`. If the compiler cannot 
find openssl, consider making a soft link like below:
-+
-+```shell
-+sudo ln -s /opt/homebrew/Cellar/openssl@3/3.0.3 /usr/local/opt/openssl
-+```
-+
-+Please note that the directory of installed openssl in above command may be 
different in different environments, you could check it  out by running `brew 
info openssl`.
-+
-+### Apple Silicon
-+
-+The code at master HEAD already supports M1 series chips. M2 series are not 
tested yet. Please feel free to report remaining warnings/errors to us by 
issues.
-+
- ### Compile brpc with config_brpc.sh
- git clone brpc, cd into the repo and run
- ```shell
-diff --git a/src/brpc/span.h b/src/brpc/span.h
-index 07771649..43ede3d5 100644
---- a/src/brpc/span.h
-+++ b/src/brpc/span.h
-@@ -34,7 +34,7 @@
- #include "brpc/span.pb.h"
- 
- namespace bthread {
--extern thread_local bthread::LocalStorage tls_bls;
-+extern __thread bthread::LocalStorage tls_bls;
- }
- 
- 
-diff --git a/src/bthread/context.cpp b/src/bthread/context.cpp
-index 5098bc39..b89d432a 100644
---- a/src/bthread/context.cpp
-+++ b/src/bthread/context.cpp
-@@ -713,3 +713,100 @@ __asm (
- );
- 
- #endif
-+
-+
-+#if defined(BTHREAD_CONTEXT_PLATFORM_apple_arm64) && 
defined(BTHREAD_CONTEXT_COMPILER_gcc)
-+__asm (
-+".text\n"
-+".globl _bthread_jump_fcontext\n"
-+".balign 16\n"
-+"_bthread_jump_fcontext:\n"
-+"    ; prepare stack for GP + FPU\n"
-+"    sub  sp, sp, #0xb0\n"
-+"#if (defined(__VFP_FP__) && !defined(__SOFTFP__))\n"
-+"    ; test if fpu env should be preserved\n"
-+"    cmp  w3, #0\n"
-+"    b.eq  1f\n"
-+"    ; save d8 - d15\n"
-+"    stp  d8,  d9,  [sp, #0x00]\n"
-+"    stp  d10, d11, [sp, #0x10]\n"
-+"    stp  d12, d13, [sp, #0x20]\n"
-+"    stp  d14, d15, [sp, #0x30]\n"
-+"1:\n"
-+"#endif\n"
-+"    ; save x19-x30\n"
-+"    stp  x19, x20, [sp, #0x40]\n"
-+"    stp  x21, x22, [sp, #0x50]\n"
-+"    stp  x23, x24, [sp, #0x60]\n"
-+"    stp  x25, x26, [sp, #0x70]\n"
-+"    stp  x27, x28, [sp, #0x80]\n"
-+"    stp  fp,  lr,  [sp, #0x90]\n"
-+"    ; save LR as PC\n"
-+"    str  lr, [sp, #0xa0]\n"
-+"    ; store RSP (pointing to context-data) in first argument (x0).\n"
-+"    ; STR cannot have sp as a target register\n"
-+"    mov  x4, sp\n"
-+"    str  x4, [x0]\n"
-+"    ; restore RSP (pointing to context-data) from A2 (x1)\n"
-+"    mov  sp, x1\n"
-+"#if (defined(__VFP_FP__) && !defined(__SOFTFP__))\n"
-+"    ; test if fpu env should be preserved\n"
-+"    cmp  w3, #0\n"
-+"    b.eq  2f\n"
-+"    ; load d8 - d15\n"
-+"    ldp  d8,  d9,  [sp, #0x00]\n"
-+"    ldp  d10, d11, [sp, #0x10]\n"
-+"    ldp  d12, d13, [sp, #0x20]\n"
-+"    ldp  d14, d15, [sp, #0x30]\n"
-+"2:\n"
-+"#endif\n"
-+"    ; load x19-x30\n"
-+"    ldp  x19, x20, [sp, #0x40]\n"
-+"    ldp  x21, x22, [sp, #0x50]\n"
-+"    ldp  x23, x24, [sp, #0x60]\n"
-+"    ldp  x25, x26, [sp, #0x70]\n"
-+"    ldp  x27, x28, [sp, #0x80]\n"
-+"    ldp  fp,  lr,  [sp, #0x90]\n"
-+"    ; use third arg as return value after jump\n"
-+"    ; and as first arg in context function\n"
-+"    mov  x0, x2\n"
-+"    ; load pc\n"
-+"    ldr  x4, [sp, #0xa0]\n"
-+"    ; restore stack from GP + FPU\n"
-+"    add  sp, sp, #0xb0\n"
-+"    ret x4\n"
-+);
-+
-+#endif
-+
-+#if defined(BTHREAD_CONTEXT_PLATFORM_apple_arm64) && 
defined(BTHREAD_CONTEXT_COMPILER_gcc)
-+__asm (
-+".text\n"
-+".globl _bthread_make_fcontext\n"
-+".balign 16\n"
-+"_bthread_make_fcontext:\n"
-+"    ; shift address in x0 (allocated stack) to lower 16 byte boundary\n"
-+"    and x0, x0, ~0xF\n"
-+"    ; reserve space for context-data on context-stack\n"
-+"    sub  x0, x0, #0xb0\n"
-+"    ; third arg of make_fcontext() == address of context-function\n"
-+"    ; store address as a PC to jump in\n"
-+"    str  x2, [x0, #0xa0]\n"
-+"    ; compute abs address of label finish\n"
-+"    ; 0x0c = 3 instructions * size (4) before label 'finish'\n"
-+"    ; TODO: Numeric offset since llvm still does not support labels in ADR. 
Fix:\n"
-+"    ;       http:\n"
-+"    adr  x1, 0x0c\n"
-+"    ; save address of finish as return-address for context-function\n"
-+"    ; will be entered after context-function returns (LR register)\n"
-+"    str  x1, [x0, #0x98]\n"
-+"    ret  lr ; return pointer to context-data (x0)\n"
-+"finish:\n"
-+"    ; exit code is zero\n"
-+"    mov  x0, #0\n"
-+"    ; exit application\n"
-+"    bl  __exit\n"
-+);
-+
-+#endif
-+
-diff --git a/src/bthread/context.h b/src/bthread/context.h
-index 8ff027df..ef98e458 100644
---- a/src/bthread/context.h
-+++ b/src/bthread/context.h
-@@ -23,9 +23,9 @@
- 
- #if defined(__GNUC__) || defined(__APPLE__)
- 
--    #define BTHREAD_CONTEXT_COMPILER_gcc
-+  #define BTHREAD_CONTEXT_COMPILER_gcc
- 
--    #if defined(__linux__)
-+  #if defined(__linux__)
-       #ifdef __x86_64__
-           #define BTHREAD_CONTEXT_PLATFORM_linux_x86_64
-           #define BTHREAD_CONTEXT_CALL_CONVENTION
-@@ -41,27 +41,30 @@
-           #define BTHREAD_CONTEXT_CALL_CONVENTION
-       #endif
- 
--    #elif defined(__MINGW32__) || defined (__MINGW64__)
-+  #elif defined(__MINGW32__) || defined (__MINGW64__)
-       #if defined(__x86_64__)
-           #define BTHREAD_CONTEXT_COMPILER_gcc
-           #define BTHREAD_CONTEXT_PLATFORM_windows_x86_64
-           #define BTHREAD_CONTEXT_CALL_CONVENTION
--      #endif
--
--      #if defined(__i386__)
-+      #elif defined(__i386__)
-           #define BTHREAD_CONTEXT_COMPILER_gcc
-           #define BTHREAD_CONTEXT_PLATFORM_windows_i386
-           #define BTHREAD_CONTEXT_CALL_CONVENTION __cdecl
-       #endif
--    #elif defined(__APPLE__) && defined(__MACH__)
-+
-+  #elif defined(__APPLE__) && defined(__MACH__)
-       #if defined (__i386__)
-           #define BTHREAD_CONTEXT_PLATFORM_apple_i386
-           #define BTHREAD_CONTEXT_CALL_CONVENTION
-       #elif defined (__x86_64__)
-           #define BTHREAD_CONTEXT_PLATFORM_apple_x86_64
-           #define BTHREAD_CONTEXT_CALL_CONVENTION
--      #endif
-+      #elif defined (__aarch64__)
-+          #define BTHREAD_CONTEXT_PLATFORM_apple_arm64
-+          #define BTHREAD_CONTEXT_CALL_CONVENTION
-     #endif
-+  #endif
-+
- #endif
- 
- #if defined(_WIN32_WCE)
-diff --git a/src/bthread/key.cpp b/src/bthread/key.cpp
-index 53f7594f..a4a08407 100644
---- a/src/bthread/key.cpp
-+++ b/src/bthread/key.cpp
-@@ -34,7 +34,7 @@ class KeyTable;
- 
- // defined in task_group.cpp
- extern __thread TaskGroup* tls_task_group;
--extern thread_local LocalStorage tls_bls;
-+extern __thread LocalStorage tls_bls;
- static __thread bool tls_ever_created_keytable = false;
- 
- // We keep thread specific data in a two-level array. The top-level array
-diff --git a/src/bthread/task_group.cpp b/src/bthread/task_group.cpp
-index 9f6d42fb..b8ead163 100644
---- a/src/bthread/task_group.cpp
-+++ b/src/bthread/task_group.cpp
-@@ -61,7 +61,7 @@ __thread TaskGroup* tls_task_group = NULL;
- // Sync with TaskMeta::local_storage when a bthread is created or destroyed.
- // During running, the two fields may be inconsistent, use tls_bls as the
- // groundtruth.
--thread_local LocalStorage tls_bls = BTHREAD_LOCAL_STORAGE_INITIALIZER;
-+__thread LocalStorage tls_bls = BTHREAD_LOCAL_STORAGE_INITIALIZER;
- 
- // defined in bthread/key.cpp
- extern void return_keytable(bthread_keytable_pool_t*, KeyTable*);
-diff --git a/src/butil/time.h b/src/butil/time.h
-index b288d8e4..00949f8e 100644
---- a/src/butil/time.h
-+++ b/src/butil/time.h
-@@ -215,6 +215,7 @@ inline int64_t monotonic_time_s() {
- 
- namespace detail {
- inline uint64_t clock_cycles() {
-+#if defined(__x86_64__) || defined(__amd64__)
-     unsigned int lo = 0;
-     unsigned int hi = 0;
-     // We cannot use "=A", since this would use %rax on x86_64
-@@ -223,6 +224,31 @@ inline uint64_t clock_cycles() {
-         : "=a" (lo), "=d" (hi)
-         );
-     return ((uint64_t)hi << 32) | lo;
-+#elif defined(__aarch64__)
-+    uint64_t virtual_timer_value;
-+    asm volatile("mrs %0, cntvct_el0" : "=r"(virtual_timer_value));
-+    return virtual_timer_value;
-+#elif defined(__ARM_ARCH)
-+  #if (__ARM_ARCH >= 6)
-+    unsigned int pmccntr;
-+    unsigned int pmuseren;
-+    unsigned int pmcntenset;
-+    // Read the user mode perf monitor counter access permissions.
-+    asm volatile ("mrc p15, 0, %0, c9, c14, 0" : "=r" (pmuseren));
-+    if (pmuseren & 1) {  // Allows reading perfmon counters for user mode 
code.
-+        asm volatile ("mrc p15, 0, %0, c9, c12, 1" : "=r" (pmcntenset));
-+        if (pmcntenset & 0x80000000ul) {  // Is it counting?
-+            asm volatile ("mrc p15, 0, %0, c9, c13, 0" : "=r" (pmccntr));
-+            // The counter is set up to count every 64th cycle
-+            return static_cast<uint64_t>(pmccntr) * 64;  // Should optimize 
to << 6
-+        }
-+    }
-+  #else
-+    #error "unsupported arm_arch"
-+  #endif
-+#else
-+  #error "unsupported arch"
-+#endif
- }
- extern int64_t read_invariant_cpu_frequency();
- // Be positive iff:
-diff --git a/test/BUILD b/test/BUILD.bazel
-similarity index 100%
-rename from test/BUILD
-rename to test/BUILD.bazel
-diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
-index 7c274ef5..f3e0c9bb 100644
---- a/test/CMakeLists.txt
-+++ b/test/CMakeLists.txt
-@@ -58,7 +58,7 @@ use_cxx11()
- 
- if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
-     #required by butil/crc32.cc to boost performance for 10x
--    if(NOT (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.4))
-+    if((CMAKE_SYSTEM_PROCESSOR MATCHES "(x86)|(X86)|(amd64)|(AMD64)") AND NOT 
(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.4))
-         set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse4 -msse4.2")
-     endif()
-     if(NOT (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.0))
-diff --git a/test/Makefile b/test/Makefile
-index a6e035f4..99f7b4f7 100644
---- a/test/Makefile
-+++ b/test/Makefile
-@@ -23,7 +23,9 @@ CXXFLAGS=$(CPPFLAGS) -pipe -Wall -W -fPIC -fstrict-aliasing 
-Wno-invalid-offseto
- 
- #required by butil/crc32.cc to boost performance for 10x
- ifeq ($(shell test $(GCC_VERSION) -ge 40400; echo $$?),0)
--      CXXFLAGS+=-msse4 -msse4.2
-+  ifeq ($(shell uname -p),i386)  #note: i386 is processor family type, not 
the 32-bit x86 arch
-+    CXXFLAGS+=-msse4 -msse4.2
-+  endif
- endif
- #not solved yet
- ifeq ($(CC),gcc)
-diff --git a/test/endpoint_unittest.cpp b/test/endpoint_unittest.cpp
-index ba9a4ee6..8b515ef3 100644
---- a/test/endpoint_unittest.cpp
-+++ b/test/endpoint_unittest.cpp
-@@ -384,6 +384,8 @@ TEST(EndPointTest, endpoint_sockaddr_conv_ipv6) {
-     in6_addr expect_in6_addr;
-     bzero(&expect_in6_addr, sizeof(expect_in6_addr));
-     expect_in6_addr.__in6_u.__u6_addr8[15] = 1;
-+    // jge: mac monterey上应该这样,但准确判定条件不明
-+    //expect_in6_addr.__u6_addr.__u6_addr8[15] = 1;
- 
-     sockaddr_storage ss;
-     const sockaddr_in6* sa6 = (sockaddr_in6*) &ss;
diff --git a/thirdparty/vars.sh b/thirdparty/vars.sh
index b00600b9eb..0ed5f039e4 100644
--- a/thirdparty/vars.sh
+++ b/thirdparty/vars.sh
@@ -196,10 +196,10 @@ LEVELDB_SOURCE=leveldb-1.23
 LEVELDB_MD5SUM="afbde776fb8760312009963f09a586c7"
 
 # brpc
-BRPC_DOWNLOAD="https://github.com/apache/incubator-brpc/archive/refs/tags/1.1.0.tar.gz";
-BRPC_NAME="incubator-brpc-1.1.0.tar.gz"
-BRPC_SOURCE="incubator-brpc-1.1.0"
-BRPC_MD5SUM="e1439fd70e37a2bcffcf05b2526cacdd"
+BRPC_DOWNLOAD="https://github.com/apache/incubator-brpc/archive/refs/tags/1.2.0.tar.gz";
+BRPC_NAME="incubator-brpc-1.2.0.tar.gz"
+BRPC_SOURCE="incubator-brpc-1.2.0"
+BRPC_MD5SUM="556c024d5f770dbd2336ca4541ae8c96"
 
 # rocksdb
 ROCKSDB_DOWNLOAD="https://github.com/facebook/rocksdb/archive/v5.14.2.tar.gz";


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to