summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorluwenpeng <[email protected]>2024-11-12 09:26:28 +0800
committerluwenpeng <[email protected]>2024-11-12 16:58:19 +0800
commit1372b3999443463bbb8f719f4728a6d0f8105dfe (patch)
treee86a8bc48036bb7710104b856b6f6a30aa0b94be
parent6aa82aeea6bdf4ded2f2523868199d7da3131dd5 (diff)
TSG-23336 SCE适配AArch64架构v1.4.0-20241112
-rw-r--r--.gitlab-ci.yml140
-rw-r--r--ci/travis.sh16
-rw-r--r--common/src/kafka.cpp2
-rw-r--r--test/CMakeLists.txt7
-rw-r--r--vendor/CMakeLists.txt14
5 files changed, 142 insertions, 37 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index efc174b..fe45446 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -3,17 +3,121 @@ variables:
BUILD_PADDING_PREFIX: /tmp/padding_for_CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX/
INSTALL_PREFIX: "/opt/tsg/sce"
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
###############################################################################
-# compile use image: build-env:rockylinux
+# compile for el9
###############################################################################
-.build_by_travis_for_centos8:
- image: $BUILD_IMAGE_CENTOS8
+.build_by_travis_for_aarch64_el9:
+ image: $BUILD_IMAGE_AARCH64_EL9
+ before_script:
+ - mkdir -p $BUILD_PADDING_PREFIX/$CI_PROJECT_NAMESPACE/
+ - ln -s $CI_PROJECT_DIR $BUILD_PADDING_PREFIX/$CI_PROJECT_PATH
+ - cd $BUILD_PADDING_PREFIX/$CI_PROJECT_PATH
+ - chmod +x ./ci/travis.sh
+ script:
+ - yum makecache
+ - ./ci/travis.sh
+ tags:
+ - tsg-os-builder-aarch64
+
+branch_build_debug_for_aarch64_el9:
+ stage: build
+ extends: .build_by_travis_for_aarch64_el9
+ variables:
+ BUILD_TYPE: Debug
+ except:
+ - /^develop-.*$/i
+ - /^release-.*$/i
+ - tags
+
+branch_build_release_for_aarch64_el9:
+ stage: build
+ variables:
+ BUILD_TYPE: RelWithDebInfo
+ extends: .build_by_travis_for_aarch64_el9
+ except:
+ - /^develop-.*$/i
+ - /^release-.*$/i
+ - tags
+
+develop_build_debug_for_aarch64_el9:
+ stage: build
+ extends: .build_by_travis_for_aarch64_el9
+ variables:
+ TESTING_VERSION_BUILD: 1
+ BUILD_TYPE: Debug
+ #ASAN_OPTION: ADDRESS
+ PACKAGE: 1
+ PULP3_REPO_NAME: tsg-testing-aarch64.el9
+ PULP3_DIST_NAME: tsg-testing-aarch64.el9
+ artifacts:
+ name: "sce-develop-$CI_COMMIT_REF_NAME-debug"
+ paths:
+ - build/*.rpm
+ only:
+ - /^develop-.*$/i
+ - /^release-.*$/i
+
+develop_build_release_for_aarch64_el9:
+ stage: build
+ extends: .build_by_travis_for_aarch64_el9
+ variables:
+ TESTING_VERSION_BUILD: 1
+ #ASAN_OPTION: ADDRESS
+ BUILD_TYPE: RelWithDebInfo
+ PACKAGE: 1
+ PULP3_REPO_NAME: tsg-testing-aarch64.el9
+ PULP3_DIST_NAME: tsg-testing-aarch64.el9
+ artifacts:
+ name: "sce-develop-$CI_COMMIT_REF_NAME-release"
+ paths:
+ - build/*.rpm
+ only:
+ - /^develop-.*$/i
+ - /^release-.*$/i
+
+release_build_debug_for_aarch64_el9:
+ stage: build
+ variables:
+ BUILD_TYPE: Debug
+ PACKAGE: 1
+ PULP3_REPO_NAME: tsg-stable-aarch64.el9
+ PULP3_DIST_NAME: tsg-stable-aarch64.el9
+ extends: .build_by_travis_for_aarch64_el9
+ artifacts:
+ name: "sce-install-$CI_COMMIT_REF_NAME-debug"
+ paths:
+ - build/*.rpm
+ only:
+ - tags
+
+release_build_release_for_aarch64_el9:
+ stage: build
+ variables:
+ BUILD_TYPE: RelWithDebInfo
+ PACKAGE: 1
+ PULP3_REPO_NAME: tsg-stable-aarch64.el9
+ PULP3_DIST_NAME: tsg-stable-aarch64.el9
+ extends: .build_by_travis_for_aarch64_el9
+ artifacts:
+ name: "sce-install-$CI_COMMIT_REF_NAME-release"
+ paths:
+ - build/*.rpm
+ only:
+ - tags
+
+###############################################################################
+# compile for el8
+###############################################################################
+
+.build_by_travis_for_x86_64_el8:
+ image: $BUILD_IMAGE_X86_64_EL8
before_script:
- mkdir -p $BUILD_PADDING_PREFIX/$CI_PROJECT_NAMESPACE/
- ln -s $CI_PROJECT_DIR $BUILD_PADDING_PREFIX/$CI_PROJECT_PATH
@@ -25,9 +129,9 @@ stages:
tags:
- share
-branch_build_debug_for_centos8:
+branch_build_debug_for_x86_64_el8:
stage: build
- extends: .build_by_travis_for_centos8
+ extends: .build_by_travis_for_x86_64_el8
variables:
BUILD_TYPE: Debug
except:
@@ -35,22 +139,21 @@ branch_build_debug_for_centos8:
- /^release-.*$/i
- tags
-branch_build_release_for_centos8:
+branch_build_release_for_x86_64_el8:
stage: build
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:
+develop_build_debug_for_x86_64_el8:
stage: build
- extends: .build_by_travis_for_centos8
+ 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
@@ -64,12 +167,11 @@ develop_build_debug_for_centos8:
- /^develop-.*$/i
- /^release-.*$/i
-develop_build_release_for_centos8:
+develop_build_release_for_x86_64_el8:
stage: build
- extends: .build_by_travis_for_centos8
+ 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
@@ -83,15 +185,14 @@ develop_build_release_for_centos8:
- /^develop-.*$/i
- /^release-.*$/i
-release_build_debug_for_centos8:
+release_build_debug_for_x86_64_el8:
stage: build
variables:
- #UPLOAD_SYMBOL_FILES: 1
BUILD_TYPE: Debug
PACKAGE: 1
PULP3_REPO_NAME: tsg-stable-x86_64.el8
PULP3_DIST_NAME: tsg-stable-x86_64.el8
- extends: .build_by_travis_for_centos8
+ extends: .build_by_travis_for_x86_64_el8
artifacts:
name: "sce-install-$CI_COMMIT_REF_NAME-debug"
paths:
@@ -99,15 +200,14 @@ release_build_debug_for_centos8:
only:
- tags
-release_build_release_for_centos8:
+release_build_release_for_x86_64_el8:
stage: build
variables:
BUILD_TYPE: RelWithDebInfo
- #UPLOAD_SYMBOL_FILES: 1
PACKAGE: 1
PULP3_REPO_NAME: tsg-stable-x86_64.el8
PULP3_DIST_NAME: tsg-stable-x86_64.el8
- extends: .build_by_travis_for_centos8
+ extends: .build_by_travis_for_x86_64_el8
artifacts:
name: "sce-install-$CI_COMMIT_REF_NAME-release"
paths:
diff --git a/ci/travis.sh b/ci/travis.sh
index 163f398..708beb4 100644
--- a/ci/travis.sh
+++ b/ci/travis.sh
@@ -33,8 +33,12 @@ env | sort
: "${COMPILER_IS_GNUCXX:=OFF}"
# Install dependency from YUM
+if [[ `arch` =~ 'x86_64' ]];then
+ yum install -y mrzcpd-corei7
+elif [[ `arch` =~ 'aarch64' ]];then
+ yum install -y mrzcpd
+fi
yum install -y libasan
-yum install -y mrzcpd-corei7-4.*
yum install -y libmaatframe-devel
yum install -y libMESA_handle_logger-devel
yum install -y libMESA_prof_load-devel
@@ -42,8 +46,8 @@ yum install -y libfieldstat4-devel
yum install -y numactl-libs # required by mrzcpd
yum install -y libibverbs # required by mrzcpd
yum install -y libbreakpad_mini-devel
-yum install -y librdkafka-1.2.2.1218b3c
-yum install -y librdkafka-devel-1.2.2.1218b3c
+yum install -y librdkafka
+yum install -y librdkafka-devel
yum install -y libuuid-devel
yum install -y jq
@@ -68,9 +72,3 @@ if [ -n "${PACKAGE}" ]; then
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 sce*debuginfo*.rpm
- cp /usr/lib/debug/opt/tsg/sce/bin/sce*debug /tmp/sce.debuginfo.${CI_COMMIT_SHORT_SHA}
- sentry-cli upload-dif -t elf /tmp/sce.debuginfo.${CI_COMMIT_SHORT_SHA}
-fi
diff --git a/common/src/kafka.cpp b/common/src/kafka.cpp
index 737a2e2..e16f392 100644
--- a/common/src/kafka.cpp
+++ b/common/src/kafka.cpp
@@ -5,7 +5,7 @@
#include "utils.h"
#include "kafka.h"
#include <MESA/MESA_prof_load.h>
-#include <MESA/librdkafka/rdkafka.h>
+#include <librdkafka/rdkafka.h>
#define MAX_SYMBOL_LEN 128
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index c9105b8..5398670 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -3,7 +3,12 @@
###############################################################################
add_library(gmock_marsio gmock_marsio.cpp)
-target_include_directories(gmock_marsio PUBLIC /opt/tsg/mrzcpd/corei7/include)
+
+if (CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64")
+ target_include_directories(gmock_marsio PUBLIC /opt/tsg/mrzcpd/corei7/include)
+elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64")
+ target_include_directories(gmock_marsio PUBLIC /opt/tsg/mrzcpd/aarch64/include)
+endif()
###############################################################################
# temp_platform
diff --git a/vendor/CMakeLists.txt b/vendor/CMakeLists.txt
index 62d1592..6c41481 100644
--- a/vendor/CMakeLists.txt
+++ b/vendor/CMakeLists.txt
@@ -40,10 +40,6 @@ set_property(TARGET cjson PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/
set(MESA_FRAMEWORK_LIB_DIR /opt/MESA/lib)
set(MESA_FRAMEWORK_INCLUDE_DIR /opt/MESA/include)
-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})
-
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)
set_property(TARGET MESA_handle_logger PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${MESA_FRAMEWORK_INCLUDE_DIR})
@@ -60,8 +56,14 @@ 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})
-set(MRZCPD_LIB_DIR /opt/tsg/mrzcpd/corei7/lib)
-set(MRZCPD_INCLUDE_DIR /opt/tsg/mrzcpd/corei7/include)
+# 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)