Merge branch 'feature-support-aarch64' into 'main'
Feature support aarch64 See merge request liuchang/mesa_sts!7
This commit is contained in:
293
.gitlab-ci.yml
293
.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,152 @@ 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
|
||||
tags:
|
||||
- tsg-os-builder-el8
|
||||
|
||||
run_test_for_x86_64_rocky8:
|
||||
stage: test
|
||||
image: $BUILD_IMAGE_X86_64_ROCKY8
|
||||
extends: .build_by_travis_for_x86_64_rocky8
|
||||
script:
|
||||
- yum makecache
|
||||
- ./ci/travis.sh
|
||||
- cd build
|
||||
tags:
|
||||
- share
|
||||
- ctest3 --verbose
|
||||
|
||||
.build_by_travis_for_centos8:
|
||||
branch_build_debug_for_x86_64_rocky8:
|
||||
stage: build
|
||||
image: $BUILD_IMAGE_CENTOS8
|
||||
extends: .build_by_travis_for_x86_64_rocky8
|
||||
variables:
|
||||
BUILD_TYPE: Debug
|
||||
except:
|
||||
- /^develop.*$/i
|
||||
- /^master.*$/i
|
||||
- tags
|
||||
|
||||
branch_build_release_for_x86_64_rocky8:
|
||||
stage: build
|
||||
variables:
|
||||
BUILD_TYPE: RelWithDebInfo
|
||||
extends: .build_by_travis_for_x86_64_rocky8
|
||||
except:
|
||||
- /^develop.*$/i
|
||||
- /^master.*$/i
|
||||
- tags
|
||||
|
||||
develop_build_debug_for_x86_64_rocky8:
|
||||
stage: build
|
||||
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.el8
|
||||
PULP3_DIST_NAME: framework-testing-x86_64.el8
|
||||
artifacts:
|
||||
name: "MESA_sts-$CI_COMMIT_REF_NAME-debug"
|
||||
paths:
|
||||
- build/*.rpm
|
||||
only:
|
||||
- /^develop.*$/i
|
||||
- /^master.*$/i
|
||||
|
||||
develop_build_release_for_x86_64_rocky8:
|
||||
stage: build
|
||||
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.el8
|
||||
PULP3_DIST_NAME: framework-testing-x86_64.el8
|
||||
artifacts:
|
||||
name: "MESA_sts-$CI_COMMIT_REF_NAME-release"
|
||||
paths:
|
||||
- build/*.rpm
|
||||
only:
|
||||
- /^develop.*$/i
|
||||
- /^master.*$/i
|
||||
|
||||
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.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:
|
||||
- build/*.rpm
|
||||
only:
|
||||
- tags
|
||||
|
||||
release_build_release_for_x86_64_rocky8:
|
||||
stage: package
|
||||
variables:
|
||||
BUILD_TYPE: RelWithDebInfo
|
||||
PACKAGE: 1
|
||||
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_x86_64_rocky8
|
||||
artifacts:
|
||||
name: "MESA_sts-$CI_COMMIT_REF_NAME-release"
|
||||
paths:
|
||||
- build/*.rpm
|
||||
only:
|
||||
- tags
|
||||
|
||||
|
||||
###############################################################################
|
||||
# build on aarch64 Rocky9
|
||||
###############################################################################
|
||||
.build_by_travis_for_aarch64_rocky9:
|
||||
stage: build
|
||||
image: $BUILD_IMAGE_AARCH64_ROCKY9
|
||||
extends: .build_before_script
|
||||
script:
|
||||
- dnf --enablerepo=powertools install -y libmnl-devel
|
||||
- dnf --enablerepo=powertools install -y libnfnetlink-devel
|
||||
- ./ci/travis.sh
|
||||
tags:
|
||||
- share
|
||||
- tsg-os-builder-aarch64
|
||||
|
||||
branch_build_debug_for_centos7:
|
||||
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_centos7
|
||||
extends: .build_by_travis_for_aarch64_rocky9
|
||||
variables:
|
||||
BUILD_TYPE: Debug
|
||||
except:
|
||||
@@ -73,27 +165,27 @@ branch_build_debug_for_centos7:
|
||||
- /^master.*$/i
|
||||
- tags
|
||||
|
||||
branch_build_release_for_centos7:
|
||||
branch_build_release_for_aarch64_rocky9:
|
||||
stage: build
|
||||
variables:
|
||||
BUILD_TYPE: RelWithDebInfo
|
||||
extends: .build_by_travis_for_centos7
|
||||
extends: .build_by_travis_for_aarch64_rocky9
|
||||
except:
|
||||
- /^develop.*$/i
|
||||
- /^master.*$/i
|
||||
- tags
|
||||
|
||||
develop_build_debug_for_centos7:
|
||||
develop_build_debug_for_aarch64_rocky9:
|
||||
stage: build
|
||||
extends: .build_by_travis_for_centos7
|
||||
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.el7
|
||||
PULP3_DIST_NAME: framework-testing-x86_64.el7
|
||||
PULP3_REPO_NAME: framework-testing-aarch64.el9
|
||||
PULP3_DIST_NAME: framework-testing-aarch64.el9
|
||||
artifacts:
|
||||
name: "MESA_sts-$CI_COMMIT_REF_NAME-debug"
|
||||
paths:
|
||||
@@ -102,16 +194,16 @@ develop_build_debug_for_centos7:
|
||||
- /^develop.*$/i
|
||||
- /^master.*$/i
|
||||
|
||||
develop_build_release_for_centos7:
|
||||
develop_build_release_for_aarch64_rocky9:
|
||||
stage: build
|
||||
extends: .build_by_travis_for_centos7
|
||||
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.el7
|
||||
PULP3_DIST_NAME: framework-testing-x86_64.el7
|
||||
PULP3_REPO_NAME: framework-testing-aarch64.el9
|
||||
PULP3_DIST_NAME: framework-testing-aarch64.el9
|
||||
artifacts:
|
||||
name: "MESA_sts-$CI_COMMIT_REF_NAME-release"
|
||||
paths:
|
||||
@@ -120,15 +212,15 @@ develop_build_release_for_centos7:
|
||||
- /^develop.*$/i
|
||||
- /^master.*$/i
|
||||
|
||||
release_build_debug_for_centos7:
|
||||
release_build_debug_for_aarch64_rocky9:
|
||||
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-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:
|
||||
@@ -136,7 +228,7 @@ release_build_debug_for_centos7:
|
||||
only:
|
||||
- tags
|
||||
|
||||
release_build_release_for_centos7:
|
||||
release_build_release_for_aarch64_rocky9:
|
||||
stage: package
|
||||
variables:
|
||||
BUILD_TYPE: RelWithDebInfo
|
||||
@@ -144,100 +236,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
|
||||
artifacts:
|
||||
name: "MESA_sts-$CI_COMMIT_REF_NAME-release"
|
||||
paths:
|
||||
- build/*.rpm
|
||||
only:
|
||||
- tags
|
||||
|
||||
branch_build_debug_for_centos8:
|
||||
stage: build
|
||||
extends: .build_by_travis_for_centos8
|
||||
variables:
|
||||
BUILD_TYPE: Debug
|
||||
except:
|
||||
- /^develop.*$/i
|
||||
- /^master.*$/i
|
||||
- tags
|
||||
|
||||
branch_build_release_for_centos8:
|
||||
stage: build
|
||||
variables:
|
||||
BUILD_TYPE: RelWithDebInfo
|
||||
extends: .build_by_travis_for_centos8
|
||||
except:
|
||||
- /^develop.*$/i
|
||||
- /^master.*$/i
|
||||
- tags
|
||||
|
||||
develop_build_debug_for_centos8:
|
||||
stage: build
|
||||
extends: .build_by_travis_for_centos8
|
||||
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
|
||||
artifacts:
|
||||
name: "MESA_sts-$CI_COMMIT_REF_NAME-debug"
|
||||
paths:
|
||||
- build/*.rpm
|
||||
only:
|
||||
- /^develop.*$/i
|
||||
- /^master.*$/i
|
||||
|
||||
develop_build_release_for_centos8:
|
||||
stage: build
|
||||
extends: .build_by_travis_for_centos8
|
||||
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
|
||||
artifacts:
|
||||
name: "MESA_sts-$CI_COMMIT_REF_NAME-release"
|
||||
paths:
|
||||
- build/*.rpm
|
||||
only:
|
||||
- /^develop.*$/i
|
||||
- /^master.*$/i
|
||||
|
||||
release_build_debug_for_centos8:
|
||||
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
|
||||
artifacts:
|
||||
name: "MESA_sts-$CI_COMMIT_REF_NAME-debug"
|
||||
paths:
|
||||
- build/*.rpm
|
||||
only:
|
||||
- tags
|
||||
|
||||
release_build_release_for_centos8:
|
||||
stage: package
|
||||
variables:
|
||||
BUILD_TYPE: RelWithDebInfo
|
||||
PACKAGE: 1
|
||||
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:
|
||||
|
||||
@@ -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)
|
||||
|
||||
2
vendor/CMakeLists.txt
vendored
2
vendor/CMakeLists.txt
vendored
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user