diff options
| author | “pengxuanzheng” <[email protected]> | 2022-02-28 06:29:26 +0000 |
|---|---|---|
| committer | “pengxuanzheng” <[email protected]> | 2022-02-28 08:51:08 +0000 |
| commit | a129c9019c3f922e523efea78a2406051aa41cb1 (patch) | |
| tree | 7cbe86e2fb6ecde122af109445c77590a397f90f | |
| parent | ea9955755ff9e35f5acfdeefee20ea87d4d9a31d (diff) | |
🔧 build(TSG-9686): 适配 rocky linux 8.5v1.0.9
| -rw-r--r-- | .gitlab-ci.yml | 218 | ||||
| -rw-r--r-- | CMakeLists.txt | 3 | ||||
| -rw-r--r-- | ci/travis.sh | 7 | ||||
| -rw-r--r-- | cmake/Package.cmake | 10 | ||||
| -rwxr-xr-x | cmake/changelog.sh | 3 | ||||
| -rw-r--r-- | src/CMakeLists.txt | 3 |
6 files changed, 205 insertions, 39 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index eede6ca..1e5f40f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,6 +1,7 @@ -image: "git.mesalab.cn:7443/mesa_platform/build-env:master" 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_PADDING_PREFIX: /tmp/padding_for_CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX/ INSTALL_PREFIX: "/home/mesasoft/sapp_run/" INSTALL_DEPENDENCY_LIBRARY: libMESA_handle_logger-devel framework_env @@ -10,21 +11,37 @@ stages: - test - build -.build_by_travis: +.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 - script: - yum makecache - ./ci/travis.sh - - cd build + +.build_by_travis_for_centos7: + stage: build + image: $BUILD_IMAGE_CENTOS7 + extends: .build_before_script + script: + - ./ci/travis.sh + - cd build tags: - - share + - share + +.build_by_travis_for_centos8: + stage: build + image: $BUILD_IMAGE_CENTOS8 + extends: .build_before_script + script: + - ./ci/travis.sh + tags: + - share -run_cppcheck: +run_cppcheck_for_centos7: stage: analysis + image: $BUILD_IMAGE_CENTOS7 script: - mkdir build || true - cd build @@ -33,18 +50,41 @@ run_cppcheck: tags: - share -run_test: +run_cppcheck_for_centos8: + stage: analysis + image: $BUILD_IMAGE_CENTOS8 + script: + - mkdir build || true + - cd build + - cmake3 -DCMAKE_EXPORT_COMPILE_COMMANDS=ON .. + - cppcheck --project=compile_commands.json --enable=all --error-exitcode=1 --suppress=unusedFunction --suppress=missingInclude --suppress=uselessAssignmentPtrArg --suppress=unmatchedSuppression + tags: + - share + +run_test_for_centos7: + stage: test + image: $BUILD_IMAGE_CENTOS7 + 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 + image: $BUILD_IMAGE_CENTOS8 + extends: .build_by_travis_for_centos8 script: - yum makecache + - yum install -y libnsl - ./ci/travis.sh - cd build - - ctest --verbose + - ctest3 --verbose -branch_build_debug: +branch_build_debug_for_centos7: stage: build - extends: .build_by_travis + extends: .build_by_travis_for_centos7 variables: BUILD_TYPE: Debug except: @@ -52,54 +92,163 @@ branch_build_debug: - /^master.*$/i - tags -branch_build_release: +branch_build_release_for_centos7: stage: build variables: BUILD_TYPE: RelWithDebInfo - extends: .build_by_travis + extends: .build_by_travis_for_centos7 except: - /^develop.*$/i - /^master.*$/i - tags -develop_build_debug: +develop_build_debug_for_centos7: stage: build - extends: .build_by_travis + extends: .build_by_travis_for_centos7 variables: BUILD_TYPE: Debug PACKAGE: 1 + UPLOAD_RPM: 1 + ASAN_OPTION: ADDRESS + TESTING_VERSION_BUILF: 1 + PULP3_REPO_NAME: framework-testing-x86_64.el7 + PILP3_DIST_NAME: framework-testing-x86_64.el7 artifacts: name: "tsg_lua_module-$CI_COMMIT_REF_NAME-debug" + paths: + - build/*.rpm + only: + - /^dev*.*$/i + - /^rel*.*$/i + - /^master.$/i + +develop_build_release_for_centos7: + stage: build + extends: .build_by_travis_for_centos7 + variables: + BUILD_TYPE: RelWithDebInfo + PACKAGE: 1 + UPLOAD_RPM: 1 + TESTING_VERSION_BUILF: 1 + PULP3_REPO_NAME: framework-testing-x86_64.el7 + PILP3_DIST_NAME: framework-testing-x86_64.el7 + artifacts: + name: "tsg_lua_module-$CI_COMMIT_REF_NAME-debug" + paths: + - build/*.rpm + only: + - /^dev*.*$/i + - /^rel*.*$/i + - /^master.$/i + +release_build_debug_for_centos7: + stage: build + variables: + BUILD_TYPE: Debug + PACKAGE: 1 + UPLOAD_RPM: 1 + UPLOAD_SYMBOL_FILES: 1 + SYMBOL_TARGET: libtsglua + PULP3_REPO_NAME: framework-stable-x86_64.el7 + PULP3_DIST_NAME: framework-stable-x86_64.el7 + extends: .build_by_travis_for_centos7 + artifacts: + name: "tsg_lua_module-$CI_COMMIT_REF_NAME-release" paths: - build/*.rpm only: - - /^develop.*$/i - - /^master.*$/i + - tags -develop_build_release: +release_build_release_for_centos7: stage: build - extends: .build_by_travis variables: BUILD_TYPE: RelWithDebInfo PACKAGE: 1 + UPLOAD_RPM: 1 + UPLOAD_SYMBOL_FILES: 1 + SYMBOL_TARGET: libtsglua + PULP3_REPO_NAME: framework-stable-x86_64.el7 + PULP3_DIST_NAME: framework-stable-x86_64.el7 + extends: .build_by_travis_for_centos7 artifacts: name: "tsg_lua_module-$CI_COMMIT_REF_NAME-release" paths: - build/*.rpm only: - - /^develop.*$/i + - tags + +branch_build_debug_for_centos8: + stage: build + extends: .build_by_travis_for_centos8 + variables: + BUILD_TYPE: Debug + except: + - /^dev*.*$/i + - /^rel*.*$/i - /^master.*$/i + - tags +branch_build_release_for_centos8: + stage: build + variables: + BUILD_TYPE: RelWithDebInfo + extends: .build_by_travis_for_centos8 + except: + - /^dev*.*$/i + - /^rel*.*$/i + - /^master.*$/i + - tags -release_build_release: +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_BUILF: 1 + PULP3_REPO_NAME: framework-testing-x86_64.el8 + PILP3_DIST_NAME: framework-testing-x86_64.el8 + artifacts: + name: "tsg_lua_module-$CI_COMMIT_REF_NAME-debug" + paths: + - build/*.rpm + only: + - /^dev*.*$/i + - /^rel*.*$/i + - /^master*.*$/i + +develop_build_release_for_centos8: + stage: build + extends: .build_by_travis_for_centos8 variables: BUILD_TYPE: RelWithDebInfo PACKAGE: 1 - UPLOAD: 1 - PULP3_REPO_NAME: framework-stable-x86_64.el7 - PULP3_DIST_NAME: framework-stable-x86_64.el7 - extends: .build_by_travis + UPLOAD_RPM: 1 + TESTING_VERSION_BUILF: 1 + PULP3_REPO_NAME: framework-testing-x86_64.el8 + PILP3_DIST_NAME: framework-testing-x86_64.el8 + artifacts: + name: "tsg_lua_module-$CI_COMMIT_REF_NAME-release" + paths: + - build/*.rpm + only: + - /^dev*.*$/i + - /^rel*.*$/i + - /^master*.*$/i + +release_build_debug_for_centos8: + stage: build + variables: + BUILD_TYPE: Debug + PACKAGE: 1 + UPLOAD_RPM: 1 + UPLOAD_SYMBOL_FILES: 1 + SYMBOL_TARGET: libtsglua + PULP3_REPO_NAME: framework-stable-x86_64.el8 + PULP3_DIST_NAME: framework-stable-x86_64.el8 + extends: .build_by_travis_for_centos8 artifacts: name: "tsg_lua_module-$CI_COMMIT_REF_NAME-release" paths: @@ -107,3 +256,22 @@ release_build_release: only: - tags +release_build_release_for_centos8: + stage: build + variables: + BUILD_TYPE: RelWithDebInfo + PACKAGE: 1 + UPLOAD_RPM: 1 + UPLOAD_SYMBOL_FILES: 1 + SYMBOL_TARGET: libtsglua + PULP3_REPO_NAME: framework-stable-x86_64.el8 + PULP3_DIST_NAME: framework-stable-x86_64.el8 + extends: .build_by_travis_for_centos8 + artifacts: + name: "tsg_lua_module-$CI_COMMIT_REF_NAME-release" + paths: + - build/*.rpm + only: + - tags + + diff --git a/CMakeLists.txt b/CMakeLists.txt index 7863164..75dba50 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -36,7 +36,4 @@ add_subdirectory(src) enable_testing() add_subdirectory(gtest) -install(FILES ./src/tsg_lua_interface.h DESTINATION ${CMAKE_INSTALL_PREFIX}/include/MESA COMPONENT HEADER) -install(PROGRAMS ./example/checktools/checktools.lua DESTINATION ${LUAJIT_INSTALL_PREFIX}/bin) - include(Package) diff --git a/ci/travis.sh b/ci/travis.sh index 147803f..abbc30d 100644 --- a/ci/travis.sh +++ b/ci/travis.sh @@ -58,7 +58,8 @@ if [ -n "${UPLOAD}" ]; then fi if [ -n "${UPLOAD_SYMBOL_FILES}" ]; then - rpm -i tfe*debuginfo*.rpm - 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} + rpm -i $SYMBOL_TARGE*debuginfo*.rpm + _symbol_file=`find /usr/lib/debug/ -name "$SYMBOL_TARGET*.so*.debug"` + cp $_symbol_file ${_symbol_file}info.${CI_COMMIT_SHORT_SHA} + sentry-cli upload-dif -t elf ${_symbol_file}info.${CI_COMMIT_SHORT_SHA} fi diff --git a/cmake/Package.cmake b/cmake/Package.cmake index f809415..7779289 100644 --- a/cmake/Package.cmake +++ b/cmake/Package.cmake @@ -12,7 +12,6 @@ set(CPACK_PACKAGE_VERSION_MINOR "${VERSION_MINOR}") set(CPACK_PACKAGE_VERSION_PATCH "${VERSION_PATCH}.${VERSION_BUILD}") set(CPACK_PACKAGING_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}) set(CPACK_PACKAGE_VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}.${VERSION_BUILD}") -execute_process(COMMAND bash -c "echo -ne \"`uname -r | awk -F'.' '{print $5\".\"$6\".\"$7}'`\"" OUTPUT_VARIABLE SYSTEM_VERSION) #execute_process(COMMAND sh changelog.sh WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/cmake) #SET(CPACK_RPM_CHANGELOG_FILE ${PROJECT_SOURCE_DIR}/cmake/changelog.txt) @@ -21,9 +20,8 @@ execute_process(COMMAND bash -c "echo -ne \"`uname -r | awk -F'.' '{print $5\".\ set(CPACK_GENERATOR "RPM") set(CPACK_RPM_PACKAGE_VENDOR "MESA") set(CPACK_RPM_PACKAGE_AUTOREQPROV "yes") -set(CPACK_RPM_PACKAGE_RELEASE_LIBRARY "on") +set(CPACK_RPM_PACKAGE_RELEASE_DIST "on") set(CPACK_RPM_DEBUGINFO_PACKAGE "on") -set(CPACK_RPM_PACKAGE_DEBUG 1) set(CPACK_RPM_COMPONENT_INSTALL ON) set(CPACK_COMPONENTS_IGNORE_GROUPS 1) @@ -35,14 +33,14 @@ set(CPACK_RPM_LIBRARIES_PACKAGE_NAME ${MY_RPM_NAME_PREFIX}) set(CPACK_RPM_LIBRARIES_FILE_NAME "${CPACK_RPM_LIBRARIES_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${SYSTEM_VERSION}.rpm") set(CPACK_RPM_LIBRARIES_DEBUGINFO_FILE_NAME "${CPACK_RPM_LIBRARIES_PACKAGE_NAME}-debuginfo-${CPACK_PACKAGE_VERSION}-${SYSTEM_VERSION}.rpm") -set(CPACK_COMPONENT_LIBRARIES_GROUP "libraries") -set(CPACK_COMPONENT_PROFILE_GROUP "libraries") +set(CPACK_COMPONENT_LIBRARIES_GROUP "LIBRARIES") +set(CPACK_COMPONENT_PROFILE_GROUP "LIBRARIES") set(CPACK_COMPONENT_HEADER_REQUIRED TRUE) set(CPACK_RPM_HEADER_PACKAGE_NAME "${MY_RPM_NAME_PREFIX}-devel") set(CPACK_RPM_HEADER_FILE_NAME "${CPACK_RPM_HEADER_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${SYSTEM_VERSION}.rpm") set(CPACK_RPM_HEADER_DEBUGINFO_FILE_NAME "${CPACK_RPM_HEADER_PACKAGE_NAME}-debuginfo-${CPACK_PACKAGE_VERSION}-${SYSTEM_VERSION}.rpm") -set(CPACK_COMPONENT_HEADER_GROUP "header") +set(CPACK_COMPONENT_HEADER_GROUP "HEADER") set(CPACK_RPM_HEADER_PACKAGE_REQUIRES_PRE ${CPACK_RPM_LIBRARIES_PACKAGE_NAME}) set(CPACK_RPM_HEADER_PACKAGE_CONFLICTS ${CPACK_RPM_HEADER_PACKAGE_NAME}) diff --git a/cmake/changelog.sh b/cmake/changelog.sh index 999d5fc..04e9517 100755 --- a/cmake/changelog.sh +++ b/cmake/changelog.sh @@ -4,6 +4,7 @@ # Created Time: Mon 31 Aug 2020 10:06:56 AM CST ######################################################################### #!/bin/bash +work_path=$1 branch=`git status | grep branch | awk '{print $NF}'` -git log --branches=$branch --no-merges --date=local --show-signature --pretty="* %ad %an %ae %nhash: %H%ncommit:%n%B" | awk -F"-" '{print "- "$0}' | sed 's/- \*/\*/g' | sed 's/- $//g' | sed 's/-/ -/g' | sed 's/[0-9]\{2\}:[0-9]\{2\}:[0-9]\{2\}//g' > changelog.txt +git log --branches=$branch --no-merges --date=local --show-signature --pretty="* %cd %an %ae %nhash: %H%ncommit:%n%B" | awk -F"-" '{print "- "$0}' | sed 's/- \*/\*/g' | sed 's/- $//g' | sed 's/-/ -/g' | sed 's/[0-9]\{2\}:[0-9]\{2\}:[0-9]\{2\}//g' > $work_path/changelog.txt diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index c809e9c..fe1aacf 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -18,5 +18,6 @@ add_library(${lib_name}_shared SHARED ${DIR_LIB_SRCS}) target_link_libraries(${lib_name}_shared dl luajit2-static) set_target_properties(${lib_name}_shared PROPERTIES OUTPUT_NAME ${lib_name}) - install(TARGETS ${lib_name}_shared LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib COMPONENT LIBRARIES) +install(FILES ${CMAKE_SOURCE_DIR}/src/tsg_lua_interface.h DESTINATION ${CMAKE_INSTALL_PREFIX}/include/MESA COMPONENT HEADER) +install(PROGRAMS ${CMAKE_SOURCE_DIR}/example/checktools/checktools.lua DESTINATION ${LUAJIT_INSTALL_PREFIX}/bin COMPONENT LIBRARIES) |
