summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author刘畅 <[email protected]>2024-11-25 09:01:28 +0000
committer刘畅 <[email protected]>2024-11-25 09:01:28 +0000
commitaf7a7f0fc8cb9704533fec7b0d15c0593ea6df7d (patch)
treee653162da45eab3e5307feaa619c0cb0bf2cb90a
parentd515a961bc6916356bb519fc5738e49168fc558a (diff)
parent5a57ba9f21473bab083ead229a8423c942254fea (diff)
Merge branch 'feature-support-aarch64' into 'main'HEADv1.0.4main
Feature support aarch64 See merge request liuchang/mesa_sts!7
-rw-r--r--.gitlab-ci.yml159
-rw-r--r--CMakeLists.txt32
-rw-r--r--vendor/CMakeLists.txt2
3 files changed, 81 insertions, 112 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 31d91a7..1549248 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,10 +1,10 @@
variables:
GIT_STRATEGY: "clone"
- BUILD_IMAGE_CENTOS7: "git.mesalab.cn:7443/mesa_platform/build-env:master"
- BUILD_IMAGE_CENTOS8: "git.mesalab.cn:7443/mesa_platform/build-env:rockylinux"
+ BUILD_IMAGE_X86_64_ROCKY8: "git.mesalab.cn:7443/mesa_platform/build-env:rockylinux"
+ BUILD_IMAGE_AARCH64_ROCKY9: "git.mesalab.cn:7443/mesa_platform/build-env:rocky9-aarch64"
BUILD_PADDING_PREFIX: /tmp/padding_for_CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX/
INSTALL_DEPENDENCY_LIBRARY: libasan sudo
- INSTALL_DEPENDENCY_FRAMEWORK: sapp-devel libMESA_handle_logger-devel libcjson-devel libMESA_field_stat2-devel framework_env libMESA_prof_load-devel libbreakpad_mini-devel libMESA_htable-devel libMESA_jump_layer libMESA_htable libnsl
+ INSTALL_DEPENDENCY_FRAMEWORK: sapp-devel libMESA_handle_logger-devel libcjson-devel libMESA_field_stat2-devel framework_env libMESA_prof_load-devel libbreakpad_mini-devel libMESA_htable-devel libMESA_htable libnsl
INSTALL_PREFIX: "/opt/MESA/"
stages:
@@ -12,60 +12,38 @@ stages:
- test
- package
-run_test_for_centos7:
- stage: test
- extends: .build_by_travis_for_centos7
- script:
- - yum makecache
- - ./ci/travis.sh
- - cd build
- - ctest --verbose
-
-run_test_for_centos8:
- stage: test
- extends: .build_by_travis_for_centos8
- script:
- - yum makecache
- - ./ci/travis.sh
- - cd build
- - ctest3 --verbose
-
.build_before_script:
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
- - yum makecache
- - yum install -y elfutils-libelf-devel
-
-.build_by_travis_for_centos7:
+###############################################################################
+# build on x86_64 Rocky8
+###############################################################################
+.build_by_travis_for_x86_64_rocky8:
stage: build
- image: $BUILD_IMAGE_CENTOS7
+ image: $BUILD_IMAGE_X86_64_ROCKY8
extends: .build_before_script
script:
- - yum install -y libmnl-devel
- - yum install -y libnfnetlink-devel
- ./ci/travis.sh
- - cd build
tags:
- - share
+ - tsg-os-builder-el8
-.build_by_travis_for_centos8:
- stage: build
- image: $BUILD_IMAGE_CENTOS8
- extends: .build_before_script
+run_test_for_x86_64_rocky8:
+ stage: test
+ image: $BUILD_IMAGE_X86_64_ROCKY8
+ extends: .build_by_travis_for_x86_64_rocky8
script:
- - dnf --enablerepo=powertools install -y libmnl-devel
- - dnf --enablerepo=powertools install -y libnfnetlink-devel
+ - yum makecache
- ./ci/travis.sh
- tags:
- - share
+ - cd build
+ - ctest3 --verbose
-branch_build_debug_for_centos7:
+branch_build_debug_for_x86_64_rocky8:
stage: build
- extends: .build_by_travis_for_centos7
+ extends: .build_by_travis_for_x86_64_rocky8
variables:
BUILD_TYPE: Debug
except:
@@ -73,27 +51,27 @@ branch_build_debug_for_centos7:
- /^master.*$/i
- tags
-branch_build_release_for_centos7:
+branch_build_release_for_x86_64_rocky8:
stage: build
variables:
BUILD_TYPE: RelWithDebInfo
- extends: .build_by_travis_for_centos7
+ extends: .build_by_travis_for_x86_64_rocky8
except:
- /^develop.*$/i
- /^master.*$/i
- tags
-develop_build_debug_for_centos7:
+develop_build_debug_for_x86_64_rocky8:
stage: build
- extends: .build_by_travis_for_centos7
+ extends: .build_by_travis_for_x86_64_rocky8
variables:
BUILD_TYPE: Debug
PACKAGE: 1
UPLOAD_RPM: 1
ASAN_OPTION: ADDRESS
TESTING_VERSION_BUILD: 1
- PULP3_REPO_NAME: framework-testing-x86_64.el7
- PULP3_DIST_NAME: framework-testing-x86_64.el7
+ PULP3_REPO_NAME: framework-testing-x86_64.el8
+ PULP3_DIST_NAME: framework-testing-x86_64.el8
artifacts:
name: "MESA_sts-$CI_COMMIT_REF_NAME-debug"
paths:
@@ -102,16 +80,16 @@ develop_build_debug_for_centos7:
- /^develop.*$/i
- /^master.*$/i
-develop_build_release_for_centos7:
+develop_build_release_for_x86_64_rocky8:
stage: build
- extends: .build_by_travis_for_centos7
+ extends: .build_by_travis_for_x86_64_rocky8
variables:
BUILD_TYPE: RelWithDebInfo
PACKAGE: 1
UPLOAD_RPM: 1
TESTING_VERSION_BUILD: 1
- PULP3_REPO_NAME: framework-testing-x86_64.el7
- PULP3_DIST_NAME: framework-testing-x86_64.el7
+ PULP3_REPO_NAME: framework-testing-x86_64.el8
+ PULP3_DIST_NAME: framework-testing-x86_64.el8
artifacts:
name: "MESA_sts-$CI_COMMIT_REF_NAME-release"
paths:
@@ -120,15 +98,15 @@ develop_build_release_for_centos7:
- /^develop.*$/i
- /^master.*$/i
-release_build_debug_for_centos7:
+release_build_debug_for_x86_64_rocky8:
stage: package
variables:
BUILD_TYPE: Debug
PACKAGE: 1
UPLOAD_RPM: 1
- PULP3_REPO_NAME: framework-stable-x86_64.el7
- PULP3_DIST_NAME: framework-stable-x86_64.el7
- extends: .build_by_travis_for_centos7
+ PULP3_REPO_NAME: framework-stable-x86_64.el8
+ PULP3_DIST_NAME: framework-stable-x86_64.el8
+ extends: .build_by_travis_for_x86_64_rocky8
artifacts:
name: "MESA_sts-$CI_COMMIT_REF_NAME-debug"
paths:
@@ -136,7 +114,7 @@ release_build_debug_for_centos7:
only:
- tags
-release_build_release_for_centos7:
+release_build_release_for_x86_64_rocky8:
stage: package
variables:
BUILD_TYPE: RelWithDebInfo
@@ -144,9 +122,9 @@ release_build_release_for_centos7:
UPLOAD_RPM: 1
UPLOAD_SYMBOL_FILES: 1
SYMBOL_TARGET: libMESA_sts
- PULP3_REPO_NAME: framework-stable-x86_64.el7
- PULP3_DIST_NAME: framework-stable-x86_64.el7
- extends: .build_by_travis_for_centos7
+ PULP3_REPO_NAME: framework-stable-x86_64.el8
+ PULP3_DIST_NAME: framework-stable-x86_64.el8
+ extends: .build_by_travis_for_x86_64_rocky8
artifacts:
name: "MESA_sts-$CI_COMMIT_REF_NAME-release"
paths:
@@ -154,9 +132,32 @@ release_build_release_for_centos7:
only:
- tags
-branch_build_debug_for_centos8:
+
+###############################################################################
+# build on aarch64 Rocky9
+###############################################################################
+.build_by_travis_for_aarch64_rocky9:
+ stage: build
+ image: $BUILD_IMAGE_AARCH64_ROCKY9
+ extends: .build_before_script
+ script:
+ - ./ci/travis.sh
+ tags:
+ - tsg-os-builder-aarch64
+
+run_test_for_aarch64_rocky9:
+ stage: test
+ image: $BUILD_IMAGE_AARCH64_ROCKY9
+ extends: .build_by_travis_for_aarch64_rocky9
+ script:
+ - yum makecache
+ - ./ci/travis.sh
+ - cd build
+ - ctest3 --verbose
+
+branch_build_debug_for_aarch64_rocky9:
stage: build
- extends: .build_by_travis_for_centos8
+ extends: .build_by_travis_for_aarch64_rocky9
variables:
BUILD_TYPE: Debug
except:
@@ -164,27 +165,27 @@ branch_build_debug_for_centos8:
- /^master.*$/i
- tags
-branch_build_release_for_centos8:
+branch_build_release_for_aarch64_rocky9:
stage: build
variables:
BUILD_TYPE: RelWithDebInfo
- extends: .build_by_travis_for_centos8
+ extends: .build_by_travis_for_aarch64_rocky9
except:
- /^develop.*$/i
- /^master.*$/i
- tags
-develop_build_debug_for_centos8:
+develop_build_debug_for_aarch64_rocky9:
stage: build
- extends: .build_by_travis_for_centos8
+ extends: .build_by_travis_for_aarch64_rocky9
variables:
BUILD_TYPE: Debug
PACKAGE: 1
UPLOAD_RPM: 1
ASAN_OPTION: ADDRESS
TESTING_VERSION_BUILD: 1
- PULP3_REPO_NAME: framework-testing-x86_64.el8
- PULP3_DIST_NAME: framework-testing-x86_64.el8
+ PULP3_REPO_NAME: framework-testing-aarch64.el9
+ PULP3_DIST_NAME: framework-testing-aarch64.el9
artifacts:
name: "MESA_sts-$CI_COMMIT_REF_NAME-debug"
paths:
@@ -193,16 +194,16 @@ develop_build_debug_for_centos8:
- /^develop.*$/i
- /^master.*$/i
-develop_build_release_for_centos8:
+develop_build_release_for_aarch64_rocky9:
stage: build
- extends: .build_by_travis_for_centos8
+ extends: .build_by_travis_for_aarch64_rocky9
variables:
BUILD_TYPE: RelWithDebInfo
PACKAGE: 1
UPLOAD_RPM: 1
TESTING_VERSION_BUILD: 1
- PULP3_REPO_NAME: framework-testing-x86_64.el8
- PULP3_DIST_NAME: framework-testing-x86_64.el8
+ PULP3_REPO_NAME: framework-testing-aarch64.el9
+ PULP3_DIST_NAME: framework-testing-aarch64.el9
artifacts:
name: "MESA_sts-$CI_COMMIT_REF_NAME-release"
paths:
@@ -211,15 +212,15 @@ develop_build_release_for_centos8:
- /^develop.*$/i
- /^master.*$/i
-release_build_debug_for_centos8:
+release_build_debug_for_aarch64_rocky9:
stage: package
variables:
BUILD_TYPE: Debug
PACKAGE: 1
UPLOAD_RPM: 1
- PULP3_REPO_NAME: framework-stable-x86_64.el8
- PULP3_DIST_NAME: framework-stable-x86_64.el8
- extends: .build_by_travis_for_centos8
+ PULP3_REPO_NAME: framework-stable-aarch64.el9
+ PULP3_DIST_NAME: framework-stable-aarch64.el9
+ extends: .build_by_travis_for_aarch64_rocky9
artifacts:
name: "MESA_sts-$CI_COMMIT_REF_NAME-debug"
paths:
@@ -227,7 +228,7 @@ release_build_debug_for_centos8:
only:
- tags
-release_build_release_for_centos8:
+release_build_release_for_aarch64_rocky9:
stage: package
variables:
BUILD_TYPE: RelWithDebInfo
@@ -235,12 +236,12 @@ release_build_release_for_centos8:
UPLOAD_RPM: 1
UPLOAD_SYMBOL_FILES: 1
SYMBOL_TARGET: libMESA_sts
- PULP3_REPO_NAME: framework-stable-x86_64.el8
- PULP3_DIST_NAME: framework-stable-x86_64.el8
- extends: .build_by_travis_for_centos8
+ PULP3_REPO_NAME: framework-stable-aarch64.el9
+ PULP3_DIST_NAME: framework-stable-aarch64.el9
+ extends: .build_by_travis_for_aarch64_rocky9
artifacts:
name: "MESA_sts-$CI_COMMIT_REF_NAME-release"
paths:
- build/*.rpm
only:
- - tags
+ - tags \ No newline at end of file
diff --git a/CMakeLists.txt b/CMakeLists.txt
index eec516b..7da9926 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -16,38 +16,6 @@ if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
set(CMAKE_INSTALL_PREFIX "/opt/MESA" CACHE PATH "default install path" FORCE)
endif()
-find_program(CMAKE_CXX_CPPCHECK NAMES cppcheck)
-if (CMAKE_CXX_CPPCHECK)
- list(
- APPEND CMAKE_CXX_CPPCHECK
- "--enable=all"
- "--error-exitcode=1"
- "--suppress=unreachableCode"
- "--suppress=unusedFunction"
- "--suppress=missingInclude"
- "--suppress=uselessAssignmentPtrArg"
- "--suppress=unmatchedSuppression"
- "--suppress=internalAstError"
- "--suppress=unmatchedSuppression"
- "--suppress=unreadVariable"
- "--suppress=memleakOnRealloc"
- "--suppress=redundantAssignment"
- "--suppress=constParameter"
- "--suppress=unsignedLessThanZero"
- "--suppress=variableScope"
- "--suppress=cstyleCast"
- "--suppress=objectIndex"
- "--suppress=shadowVariable"
- "--suppress=nullPointerRedundantCheck"
- "--suppress=ctunullpointer"
- "--suppress=shadowFunction"
- "--suppress=unusedStructMember"
- )
- set(CMAKE_C_CPPCHECK ${CMAKE_CXX_CPPCHECK})
-else()
- message(FATAL_ERROR "Could not find the program cppcheck.")
-endif()
-
#for ASAN
set(ASAN_OPTION "OFF" CACHE STRING " set asan type chosen by the user, using OFF as default")
set_property(CACHE ASAN_OPTION PROPERTY STRINGS OFF ADDRESS THREAD)
diff --git a/vendor/CMakeLists.txt b/vendor/CMakeLists.txt
index 0035fd9..e212a50 100644
--- a/vendor/CMakeLists.txt
+++ b/vendor/CMakeLists.txt
@@ -5,7 +5,7 @@ include(ExternalProject)
ExternalProject_Add(libgtest PREFIX libgtest
URL ${CMAKE_SOURCE_DIR}/vendor/googletest-release-1.10.0.tar.gz
URL_MD5 ecd1fa65e7de707cd5c00bdac56022cd
- CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR> -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE})
+ CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR> -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DCMAKE_CXX_FLAGS=-Wno-maybe-uninitialized)
ExternalProject_Get_Property(libgtest INSTALL_DIR)
file(MAKE_DIRECTORY ${INSTALL_DIR}/include)
add_library(gtest-static STATIC IMPORTED GLOBAL)