summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorluwenpeng <[email protected]>2024-11-13 15:08:03 +0800
committerluwenpeng <[email protected]>2024-11-15 18:40:04 +0800
commit2e69e0edd8d2574952fd5fe779f9604cb7ed6ead (patch)
tree94b91e279ee807a6950ef98d6b527b2c850d3d59
parent595167dcf811fdb0c61f9d80df7fa0cd5cbe25e8 (diff)
TSG-23335 TFE适配AArch64架构v4.11.1-20241115
-rw-r--r--.gitlab-ci.yml141
-rw-r--r--CMakeLists.txt2
-rw-r--r--bpf/bpf_obj.cpp31
-rw-r--r--ci/travis.sh21
-rw-r--r--cmake/PostInstall.in4
-rw-r--r--cmake/PostUninstall.in4
-rw-r--r--cmake/PreUninstall.in3
-rw-r--r--platform/CMakeLists.txt3
-rw-r--r--platform/src/main.cpp1
-rw-r--r--plugin/business/doh/src/pub.cpp2
-rw-r--r--plugin/business/tsg-http/src/tsg_logger.cpp8
-rw-r--r--plugin/protocol/http2/src/http2_stream.cpp2
-rw-r--r--vendor/CMakeLists.txt62
-rw-r--r--vendor/MESA_prof_load-3b2bfd.tar.gzbin8125 -> 0 bytes
-rw-r--r--vendor/ctemplate-2.3.tar.gzbin720717 -> 0 bytes
-rw-r--r--vendor/ctemplate-ctemplate-2.4.tar.gzbin0 -> 391923 bytes
-rw-r--r--vendor/librdkafka-0.11.5.tar.gzbin1984510 -> 0 bytes
-rw-r--r--vendor/openssl-1.1.1g.tar.gzbin9801502 -> 0 bytes
18 files changed, 191 insertions, 93 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index fb2c8b7..02b3e41 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -3,7 +3,8 @@ variables:
BUILD_PADDING_PREFIX: /tmp/padding_for_CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX/
INSTALL_PREFIX: "/opt/tsg/tfe"
TESTING_VERSION_BUILD: 0
- BUILD_IMAGE_CENTOS8: "git.mesalab.cn:7443/mesa_platform/build-env:rockylinux"
+ BUILD_IMAGE_X86_64_EL8: "git.mesalab.cn:7443/mesa_platform/build-env:rockylinux"
+ BUILD_IMAGE_AARCH64_EL9: "git.mesalab.cn:7443/mesa_platform/build-env:rocky9-aarch64"
stages:
- build
@@ -17,9 +18,112 @@ stages:
- yum makecache
- yum install -y elfutils-libelf-devel
-.build_by_travis_for_centos8:
+###############################################################################
+# compile for el9
+###############################################################################
+
+.build_by_travis_for_aarch64_el9:
+ stage: build
+ image: $BUILD_IMAGE_AARCH64_EL9
+ extends: .build_before_script
+ script:
+ - dnf install -y libmnl-devel
+ - dnf install -y libnfnetlink-devel
+ - dnf install -y clang
+ - dnf install -y llvm
+ - dnf install -y libbpf-devel
+ - dnf install -y liburing-devel
+ - ./ci/travis.sh
+ tags:
+ - tsg-os-builder-aarch64
+
+branch_build_debug_for_aarch64_el9:
+ extends: .build_by_travis_for_aarch64_el9
+ variables:
+ BUILD_TYPE: Debug
+ except:
+ - /^develop-.*$/i
+ - /^release-.*$/i
+ - tags
+
+branch_build_release_for_aarch64_el9:
+ variables:
+ BUILD_TYPE: RelWithDebInfo
+ extends: .build_by_travis_for_aarch64_el9
+ except:
+ - /^develop-.*$/i
+ - /^release-.*$/i
+ - tags
+
+develop_build_debug_for_aarch64_el9:
+ extends: .build_by_travis_for_aarch64_el9
+ variables:
+ TESTING_VERSION_BUILD: 1
+ BUILD_TYPE: Debug
+ # ASAN_OPTION: ADDRESS
+ PACKAGE: 1
+ PULP3_REPO_NAME: tfe-testing-aarch64.el9
+ PULP3_DIST_NAME: tfe-testing-aarch64.el9
+ artifacts:
+ name: "tfe-develop-$CI_COMMIT_REF_NAME-debug"
+ paths:
+ - build/*.rpm
+ only:
+ - /^develop-.*$/i
+ - /^release-.*$/i
+
+develop_build_release_for_aarch64_el9:
+ extends: .build_by_travis_for_aarch64_el9
+ variables:
+ TESTING_VERSION_BUILD: 1
+ # ASAN_OPTION: ADDRESS
+ BUILD_TYPE: RelWithDebInfo
+ PACKAGE: 1
+ PULP3_REPO_NAME: tfe-testing-aarch64.el9
+ PULP3_DIST_NAME: tfe-testing-aarch64.el9
+ artifacts:
+ name: "tfe-develop-$CI_COMMIT_REF_NAME-release"
+ paths:
+ - build/*.rpm
+ only:
+ - /^develop-.*$/i
+ - /^release-.*$/i
+
+release_build_debug_for_aarch64_el9:
+ variables:
+ BUILD_TYPE: Debug
+ PACKAGE: 1
+ PULP3_REPO_NAME: tfe-stable-aarch64.el9
+ PULP3_DIST_NAME: tfe-stable-aarch64.el9
+ extends: .build_by_travis_for_aarch64_el9
+ artifacts:
+ name: "tfe-install-$CI_COMMIT_REF_NAME-debug"
+ paths:
+ - build/*.rpm
+ only:
+ - tags
+
+release_build_release_for_aarch64_el9:
+ variables:
+ BUILD_TYPE: RelWithDebInfo
+ PACKAGE: 1
+ PULP3_REPO_NAME: tfe-stable-aarch64.el9
+ PULP3_DIST_NAME: tfe-stable-aarch64.el9
+ extends: .build_by_travis_for_aarch64_el9
+ artifacts:
+ name: "tfe-install-$CI_COMMIT_REF_NAME-release"
+ paths:
+ - build/*.rpm
+ only:
+ - tags
+
+###############################################################################
+# compile for el8
+###############################################################################
+
+.build_by_travis_for_x86_64_el8:
stage: build
- image: $BUILD_IMAGE_CENTOS8
+ image: $BUILD_IMAGE_X86_64_EL8
extends: .build_before_script
script:
- dnf --enablerepo=powertools install -y libmnl-devel
@@ -32,12 +136,9 @@ stages:
tags:
- share
-###############################################################################
-# compile use image: build-env:rockylinux
-###############################################################################
-branch_build_debug_for_centos8:
- extends: .build_by_travis_for_centos8
+branch_build_debug_for_x86_64_el8:
+ extends: .build_by_travis_for_x86_64_el8
variables:
BUILD_TYPE: Debug
except:
@@ -45,20 +146,19 @@ branch_build_debug_for_centos8:
- /^release-.*$/i
- tags
-branch_build_release_for_centos8:
+branch_build_release_for_x86_64_el8:
variables:
BUILD_TYPE: RelWithDebInfo
- extends: .build_by_travis_for_centos8
+ extends: .build_by_travis_for_x86_64_el8
except:
- /^develop-.*$/i
- /^release-.*$/i
- tags
-develop_build_debug_for_centos8:
- extends: .build_by_travis_for_centos8
+develop_build_debug_for_x86_64_el8:
+ extends: .build_by_travis_for_x86_64_el8
variables:
TESTING_VERSION_BUILD: 1
- #UPLOAD_SYMBOL_FILES: 1
BUILD_TYPE: Debug
# ASAN_OPTION: ADDRESS
PACKAGE: 1
@@ -72,11 +172,10 @@ develop_build_debug_for_centos8:
- /^develop-.*$/i
- /^release-.*$/i
-develop_build_release_for_centos8:
- extends: .build_by_travis_for_centos8
+develop_build_release_for_x86_64_el8:
+ extends: .build_by_travis_for_x86_64_el8
variables:
TESTING_VERSION_BUILD: 1
- #UPLOAD_SYMBOL_FILES: 1
# ASAN_OPTION: ADDRESS
BUILD_TYPE: RelWithDebInfo
PACKAGE: 1
@@ -90,14 +189,13 @@ develop_build_release_for_centos8:
- /^develop-.*$/i
- /^release-.*$/i
-release_build_debug_for_centos8:
+release_build_debug_for_x86_64_el8:
variables:
- #UPLOAD_SYMBOL_FILES: 1
BUILD_TYPE: Debug
PACKAGE: 1
PULP3_REPO_NAME: tfe-stable-x86_64.el8
PULP3_DIST_NAME: tfe-stable-x86_64.el8
- extends: .build_by_travis_for_centos8
+ extends: .build_by_travis_for_x86_64_el8
artifacts:
name: "tfe-install-$CI_COMMIT_REF_NAME-debug"
paths:
@@ -105,14 +203,13 @@ release_build_debug_for_centos8:
only:
- tags
-release_build_release_for_centos8:
+release_build_release_for_x86_64_el8:
variables:
BUILD_TYPE: RelWithDebInfo
- #UPLOAD_SYMBOL_FILES: 1
PACKAGE: 1
PULP3_REPO_NAME: tfe-stable-x86_64.el8
PULP3_DIST_NAME: tfe-stable-x86_64.el8
- extends: .build_by_travis_for_centos8
+ extends: .build_by_travis_for_x86_64_el8
artifacts:
name: "tfe-install-$CI_COMMIT_REF_NAME-release"
paths:
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d1b1432..398d62d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -10,7 +10,7 @@ set(CMAKE_CXX_STANDARD 11)
set(CMAKE_C_STANDARD 11)
if (CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang")
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mavx2")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native")
elseif (CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MT")
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd")
diff --git a/bpf/bpf_obj.cpp b/bpf/bpf_obj.cpp
index dde48cd..3aeff20 100644
--- a/bpf/bpf_obj.cpp
+++ b/bpf/bpf_obj.cpp
@@ -55,11 +55,42 @@ struct bpf_obj_ctx *bpf_obj_load(const char *obj_file, uint32_t queue_num, uint3
bpf_config_set_hash_mode(&ctx->config, hash_mode);
bpf_config_set_debug_log(&ctx->config, debug_log);
+#if (LIBBPF_MAJOR_VERSION > 0 || (LIBBPF_MAJOR_VERSION == 0 && LIBBPF_MINOR_VERSION >= 7))
+ struct bpf_program *prog;
+ ctx->prog_obj = bpf_object__open_file(ctx->obj_file, NULL);
+ if (ctx->prog_obj == NULL)
+ {
+ printf("ERROR: Unable to open bpf object %s, %s.\n", ctx->obj_file, strerror(errno));
+ goto error;
+ }
+
+ prog = bpf_object__find_program_by_name(ctx->prog_obj, "bpf_tun_rss_steering");
+ if (!prog)
+ {
+ printf("ERROR: Unable to get bpf program from object %s, %s.\n", ctx->obj_file, strerror(errno));
+ goto error;
+ }
+
+ bpf_program__set_type(prog, BPF_PROG_TYPE_SOCKET_FILTER);
+ if (bpf_object__load(ctx->prog_obj))
+ {
+ printf("ERROR: Unable to load bpf object %s, %s.\n", ctx->obj_file, strerror(errno));
+ goto error;
+ }
+
+ ctx->prog_fd = bpf_program__fd(prog);
+ if (ctx->prog_fd < 0)
+ {
+ printf("ERROR: Unable to get bpf program fd from object %s, %s.\n", ctx->obj_file, strerror(errno));
+ goto error;
+ }
+#else
if (bpf_prog_load(ctx->obj_file, BPF_PROG_TYPE_SOCKET_FILTER, &ctx->prog_obj, &ctx->prog_fd) < 0)
{
printf("ERROR: Unable to load bpf object %s, %s.\n", ctx->obj_file, strerror(errno));
goto error;
}
+#endif
if (bpf_config_update_map(&ctx->config, ctx->prog_obj) == -1)
{
diff --git a/ci/travis.sh b/ci/travis.sh
index 8f8b149..d3b04a6 100644
--- a/ci/travis.sh
+++ b/ci/travis.sh
@@ -33,13 +33,19 @@ env | sort
: "${COMPILER_IS_GNUCXX:=OFF}"
# Install dependency from YUM
-yum install -y mrzcpd-corei7-4.* numactl-devel zlib-devel librdkafka-devel-1.2.2.1218b3c-1.el8.x86_64 librdkafka-1.2.2.1218b3c-1.el8.x86_64 systemd-devel
-yum install -y libcjson-devel libmaatframe-devel libMESA_field_stat2-devel libfieldstat4-devel libMESA_handle_logger-devel libelua-devel
-yum install -y libMESA_htable-devel libMESA_prof_load-devel libwiredcfg-devel libWiredLB-devel sapp-devel libbreakpad_mini-devel
+if [[ `arch` =~ 'x86_64' ]];then
+ yum install -y mrzcpd-corei7
+elif [[ `arch` =~ 'aarch64' ]];then
+ yum install -y mrzcpd
+fi
+yum install -y numactl-devel zlib-devel librdkafka-devel librdkafka systemd-devel
+yum install -y libcjson-devel libmaatframe-devel libfieldstat4-devel libMESA_handle_logger-devel libelua-devel
+yum install -y libMESA_htable-devel libMESA_prof_load-devel sapp-devel libbreakpad_mini-devel
yum install -y libasan
yum install -y numactl-libs # required by mrzcpd
yum install -y libibverbs # required by mrzcpd
yum install -y libuuid-devel
+yum install -y perl
if [ $ASAN_OPTION ];then
source /opt/rh/devtoolset-7/enable
@@ -62,11 +68,4 @@ if [ -n "${PACKAGE}" ]; then
make package
cp ~/rpm_upload_tools.py ./
python3 rpm_upload_tools.py ${PULP3_REPO_NAME} ${PULP3_DIST_NAME} *.rpm
-fi
-
-if [ -n "${UPLOAD_SYMBOL_FILES}" ]; then
- rpm -i tfe*debuginfo*.rpm
- ls -ahl /usr/lib/debug/opt/tsg/tfe/bin/
- cp /usr/lib/debug/opt/tsg/tfe/bin/tfe*debug /tmp/tfe.debuginfo.${CI_COMMIT_SHORT_SHA}
- sentry-cli upload-dif -t elf /tmp/tfe.debuginfo.${CI_COMMIT_SHORT_SHA}
-fi
+fi \ No newline at end of file
diff --git a/cmake/PostInstall.in b/cmake/PostInstall.in
deleted file mode 100644
index 3924da1..0000000
--- a/cmake/PostInstall.in
+++ /dev/null
@@ -1,4 +0,0 @@
-%systemd_post tfe-env.service tfe-env-tun-mode.service tfe.service
-%sysctl_apply
-%tmpfiles_create
-/sbin/ldconfig
diff --git a/cmake/PostUninstall.in b/cmake/PostUninstall.in
deleted file mode 100644
index 86b5159..0000000
--- a/cmake/PostUninstall.in
+++ /dev/null
@@ -1,4 +0,0 @@
-%systemd_postun_with_restart tfe-env.service tfe-env-tun-mode.service tfe.service
-%sysctl_apply
-%tmpfiles_create
-/sbin/ldconfig
diff --git a/cmake/PreUninstall.in b/cmake/PreUninstall.in
deleted file mode 100644
index 0e04afa..0000000
--- a/cmake/PreUninstall.in
+++ /dev/null
@@ -1,3 +0,0 @@
-%systemd_preun tfe-env.service tfe-env-tun-mode.service tfe.service
-%sysctl_apply
-%tmpfiles_create
diff --git a/platform/CMakeLists.txt b/platform/CMakeLists.txt
index d7bfdd4..d9cf3ce 100644
--- a/platform/CMakeLists.txt
+++ b/platform/CMakeLists.txt
@@ -25,8 +25,7 @@ target_link_libraries(tfe pthread dl nfnetlink
cjson
libcurl-static
hiredis-static
- MESA_htable wiredcfg
- MESA_field_stat
+ MESA_htable
fieldstat4
breakpad_mini
${SYSTEMD_LIBRARIES})
diff --git a/platform/src/main.cpp b/platform/src/main.cpp
index dacdd6a..e10b1db 100644
--- a/platform/src/main.cpp
+++ b/platform/src/main.cpp
@@ -12,4 +12,3 @@
#include <tfe_utils.h>
#include <MESA/MESA_handle_logger.h>
#include <MESA/MESA_prof_load.h>
-#include <MESA/wired_cfg.h>
diff --git a/plugin/business/doh/src/pub.cpp b/plugin/business/doh/src/pub.cpp
index 36c98c5..f932067 100644
--- a/plugin/business/doh/src/pub.cpp
+++ b/plugin/business/doh/src/pub.cpp
@@ -3,7 +3,7 @@
static const char base64[] =
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
-static const char index_64[128] =
+static const signed char index_64[128] =
{
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
diff --git a/plugin/business/tsg-http/src/tsg_logger.cpp b/plugin/business/tsg-http/src/tsg_logger.cpp
index 5511200..6a79ffb 100644
--- a/plugin/business/tsg-http/src/tsg_logger.cpp
+++ b/plugin/business/tsg-http/src/tsg_logger.cpp
@@ -43,13 +43,13 @@ enum _log_action
#define get_time_ms(tv) ((long long)(tv.tv_sec) * 1000 + (long long)(tv.tv_usec) / 1000)
-#include "uuid_v4.h"
-UUIDv4::UUIDGenerator<std::mt19937_64> uuidGenerator;
+// #include "uuid_v4.h"
+// UUIDv4::UUIDGenerator<std::mt19937_64> uuidGenerator;
void get_http_body_uuid(char *uuid)
{
- UUIDv4::UUID uid = uuidGenerator.getUUID();
- uid.str(uuid);
+ // UUIDv4::UUID uid = uuidGenerator.getUUID();
+ // uid.str(uuid);
return;
}
diff --git a/plugin/protocol/http2/src/http2_stream.cpp b/plugin/protocol/http2/src/http2_stream.cpp
index a722eb8..636952a 100644
--- a/plugin/protocol/http2/src/http2_stream.cpp
+++ b/plugin/protocol/http2/src/http2_stream.cpp
@@ -2417,7 +2417,7 @@ static int http2_server_on_data_chunk_recv(nghttp2_session *session, uint8_t fla
if (req->h2_payload.encode_type != HTTP2_CONTENT_ENCODING_NONE){
ret = http2_decompress_stream(input, input_len, &uncompr, &uncompr_len,
&req->h2_payload.inflate, req->h2_payload.encode_type);
- if (((ret == Z_STREAM_END) || (ret == Z_OK)) && uncompr > 0){
+ if (((ret == Z_STREAM_END) || (ret == Z_OK)) && uncompr_len > 0){
input = (const uint8_t*)uncompr;
input_len = uncompr_len;
}
diff --git a/vendor/CMakeLists.txt b/vendor/CMakeLists.txt
index c6eb3ff..2c16fef 100644
--- a/vendor/CMakeLists.txt
+++ b/vendor/CMakeLists.txt
@@ -3,10 +3,16 @@
include(ExternalProject)
### OpenSSL 1.1.1
+if (CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64")
+ set(OPENSSL_COMPILE_ARCH linux-x86_64)
+elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64")
+ set(OPENSSL_COMPILE_ARCH linux-aarch64)
+endif()
+
ExternalProject_Add(OpenSSL PREFIX openssl
URL ${CMAKE_CURRENT_SOURCE_DIR}/openssl-1.1.1l.tar.gz
URL_MD5 ac0d4387f3ba0ad741b0580dd45f6ff3
- CONFIGURE_COMMAND ./Configure enable-ssl3 enable-ssl3-method enable-weak-ssl-ciphers linux-x86_64 --prefix=<INSTALL_DIR> --openssldir=<INSTALL_DIR>/lib/ssl
+ CONFIGURE_COMMAND ./Configure enable-ssl3 enable-ssl3-method enable-weak-ssl-ciphers ${OPENSSL_COMPILE_ARCH} --prefix=<INSTALL_DIR> --openssldir=<INSTALL_DIR>/lib/ssl
enable-ec_nistp_64_gcc_128 no-shared
BUILD_COMMAND ${MAKE_COMMAND}
INSTALL_COMMAND make install_sw
@@ -122,8 +128,6 @@ set_property(TARGET gmock PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/
set(MESA_FRAMEWORK_LIB_DIR /opt/MESA/lib)
set(MESA_FRAMEWORK_INCLUDE_DIR /opt/MESA/include)
-set(MRZCPD_LIB_DIR /opt/tsg/mrzcpd/corei7/lib)
-set(MRZCPD_INCLUDE_DIR /opt/tsg/mrzcpd/corei7/include)
add_library(MESA_handle_logger SHARED IMPORTED GLOBAL)
set_property(TARGET MESA_handle_logger PROPERTY IMPORTED_LOCATION ${MESA_FRAMEWORK_LIB_DIR}/libMESA_handle_logger.so)
@@ -133,38 +137,30 @@ add_library(MESA_prof_load SHARED IMPORTED GLOBAL)
set_property(TARGET MESA_prof_load PROPERTY IMPORTED_LOCATION ${MESA_FRAMEWORK_LIB_DIR}/libMESA_prof_load.so)
set_property(TARGET MESA_prof_load PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${MESA_FRAMEWORK_INCLUDE_DIR})
-add_library(wiredcfg SHARED IMPORTED GLOBAL)
-set_property(TARGET wiredcfg PROPERTY IMPORTED_LOCATION ${MESA_FRAMEWORK_LIB_DIR}/libwiredcfg.so)
-set_property(TARGET wiredcfg PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${MESA_FRAMEWORK_INCLUDE_DIR})
-
add_library(MESA_htable SHARED IMPORTED GLOBAL)
set_property(TARGET MESA_htable PROPERTY IMPORTED_LOCATION ${MESA_FRAMEWORK_LIB_DIR}/libMESA_htable.so)
set_property(TARGET MESA_htable PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${MESA_FRAMEWORK_INCLUDE_DIR})
-add_library(wiredLB SHARED IMPORTED GLOBAL)
-set_property(TARGET wiredLB PROPERTY IMPORTED_LOCATION ${MESA_FRAMEWORK_LIB_DIR}/libWiredLB.so)
-set_property(TARGET wiredLB PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${MESA_FRAMEWORK_INCLUDE_DIR})
-
add_library(maatframe SHARED IMPORTED GLOBAL)
set_property(TARGET maatframe PROPERTY IMPORTED_LOCATION ${MESA_FRAMEWORK_LIB_DIR}/libmaatframe.so)
set_property(TARGET maatframe PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${MESA_FRAMEWORK_INCLUDE_DIR})
-add_library(MESA_field_stat SHARED IMPORTED GLOBAL)
-set_property(TARGET MESA_field_stat PROPERTY IMPORTED_LOCATION ${MESA_FRAMEWORK_LIB_DIR}/libMESA_field_stat2.so)
-set_property(TARGET MESA_field_stat PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${MESA_FRAMEWORK_INCLUDE_DIR})
-
add_library(fieldstat4 SHARED IMPORTED GLOBAL)
set_property(TARGET fieldstat4 PROPERTY IMPORTED_LOCATION ${MESA_FRAMEWORK_LIB_DIR}/libfieldstat4.so)
set_property(TARGET fieldstat4 PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${MESA_FRAMEWORK_INCLUDE_DIR})
-add_library(rdkafka SHARED IMPORTED GLOBAL)
-set_property(TARGET rdkafka PROPERTY IMPORTED_LOCATION ${MESA_FRAMEWORK_LIB_DIR}/librdkafka.so)
-set_property(TARGET rdkafka PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${MESA_FRAMEWORK_INCLUDE_DIR}/MESA)
-
add_library(tsglua SHARED IMPORTED GLOBAL)
set_property(TARGET tsglua PROPERTY IMPORTED_LOCATION ${MESA_FRAMEWORK_LIB_DIR}/libelua.so)
set_property(TARGET tsglua PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${MESA_FRAMEWORK_INCLUDE_DIR})
+# MRZCPD
+if (CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64")
+ set(MRZCPD_LIB_DIR /opt/tsg/mrzcpd/corei7/lib)
+ set(MRZCPD_INCLUDE_DIR /opt/tsg/mrzcpd/corei7/include)
+elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64")
+ set(MRZCPD_LIB_DIR /opt/tsg/mrzcpd/aarch64/lib)
+ set(MRZCPD_INCLUDE_DIR /opt/tsg/mrzcpd/aarch64/include)
+endif()
add_library(mrzcpd SHARED IMPORTED GLOBAL)
set_property(TARGET mrzcpd PROPERTY IMPORTED_LOCATION ${MRZCPD_LIB_DIR}/libmarsio.so)
set_property(TARGET mrzcpd PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${MRZCPD_INCLUDE_DIR})
@@ -189,28 +185,16 @@ add_dependencies(cjson cJSON)
set_property(TARGET cjson PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib64/libcjson.a)
set_property(TARGET cjson PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include)
-#### librdkafka
-#ExternalProject_Add(librdkafka PREFIX librdkafka
-# URL ${CMAKE_CURRENT_SOURCE_DIR}/librdkafka-0.11.5.tar.gz
-# URL_MD5 90bb43499252317ae55723d32ccacf18
-# CONFIGURE_COMMAND ./configure --prefix=<INSTALL_DIR>
-# BUILD_IN_SOURCE 1)
-#ExternalProject_Get_Property(librdkafka INSTALL_DIR)
-#file(MAKE_DIRECTORY ${INSTALL_DIR}/include)
-#
-#add_library(librdkafka-static STATIC IMPORTED GLOBAL)
-#add_dependencies(librdkafka-static librdkafka)
-#set_property(TARGET librdkafka-static PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib/librdkafka.a)
-#set_property(TARGET librdkafka-static PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include)
-#set_property(TARGET librdkafka-static PROPERTY INTERFACE_LINK_LIBRARIES ssl crypto sasl2 m z dl pthread rt)
-
### ctemplate
+if (CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64")
+ set(CTEMPLATE_COMPILE_ARCH x86_64)
+elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64")
+ set(CTEMPLATE_COMPILE_ARCH arm)
+endif()
ExternalProject_Add(ctemplate PREFIX ctemplate
- URL ${CMAKE_CURRENT_SOURCE_DIR}/ctemplate-2.3.tar.gz
- URL_MD5 3b91f3c1e7aa55cb4c2957acf77d6b9a
- PATCH_COMMAND patch -p1 < ${CMAKE_CURRENT_LIST_DIR}/patch/compile_ctemplate_use_centos8_with_gcc7.patch
- BUILD_COMMAND sh autogen.sh
- CONFIGURE_COMMAND ./configure --prefix=<INSTALL_DIR>
+ URL ${CMAKE_CURRENT_SOURCE_DIR}/ctemplate-ctemplate-2.4.tar.gz
+ URL_MD5 4dae8e9d3329d20826a94dcc092ce65e
+ CONFIGURE_COMMAND sh autogen.sh && ./configure --prefix=<INSTALL_DIR> --build=${CTEMPLATE_COMPILE_ARCH}
BUILD_IN_SOURCE 1)
ExternalProject_Get_Property(ctemplate INSTALL_DIR)
diff --git a/vendor/MESA_prof_load-3b2bfd.tar.gz b/vendor/MESA_prof_load-3b2bfd.tar.gz
deleted file mode 100644
index 8004fa3..0000000
--- a/vendor/MESA_prof_load-3b2bfd.tar.gz
+++ /dev/null
Binary files differ
diff --git a/vendor/ctemplate-2.3.tar.gz b/vendor/ctemplate-2.3.tar.gz
deleted file mode 100644
index 6ec1a72..0000000
--- a/vendor/ctemplate-2.3.tar.gz
+++ /dev/null
Binary files differ
diff --git a/vendor/ctemplate-ctemplate-2.4.tar.gz b/vendor/ctemplate-ctemplate-2.4.tar.gz
new file mode 100644
index 0000000..ce280b5
--- /dev/null
+++ b/vendor/ctemplate-ctemplate-2.4.tar.gz
Binary files differ
diff --git a/vendor/librdkafka-0.11.5.tar.gz b/vendor/librdkafka-0.11.5.tar.gz
deleted file mode 100644
index 74e93c8..0000000
--- a/vendor/librdkafka-0.11.5.tar.gz
+++ /dev/null
Binary files differ
diff --git a/vendor/openssl-1.1.1g.tar.gz b/vendor/openssl-1.1.1g.tar.gz
deleted file mode 100644
index e768f9e..0000000
--- a/vendor/openssl-1.1.1g.tar.gz
+++ /dev/null
Binary files differ