summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author刘学利 <[email protected]>2022-03-02 02:13:29 +0000
committer刘学利 <[email protected]>2022-03-02 02:13:29 +0000
commit2c9143de9519dd329bf88153b094ee47c9265f7f (patch)
tree084f4aca9e0b319fb4b9d08fc4a29a4b993845d0
parent4b8dd6d069741b4803697226d2dabda7a92d4ee4 (diff)
parent597eb517552b4604a4d58c47e6c97b4a2d62dab6 (diff)
Merge branch 'feature-adapt-rocky-linux8.5' into 'master'v1.2.1
TSG-9690: 适配Rocky Linux8.5 See merge request vendor/rdkafka!2
-rw-r--r--.gitlab-ci.yml177
-rw-r--r--ci/travis.sh2
-rw-r--r--cmake/Package.cmake20
3 files changed, 150 insertions, 49 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 91a1fda..2da75aa 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,56 +1,75 @@
-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: "/opt/MESA/lib/"
- INSTALL_DEPENDENCY_LIBRARY: framework_env
+ INSTALL_DEPENDENCY_LIBRARY: libasan framework_env
stages:
- 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
+ - yum makecache
+ - yum install -y elfutils-libelf-devel
+
+
+.build_by_travis_for_centos7:
+ stage: build
+ image: $BUILD_IMAGE_CENTOS7
+ extends: .build_before_script
script:
- - yum makecache fast
- - ./ci/travis.sh
- - cd build
+ - yum install -y libmnl-devel
+ - yum install -y libnfnetlink-devel
+ - ./ci/travis.sh
+ - cd build
tags:
- share
-branch_build_debug:
+.build_by_travis_for_centos8:
stage: build
- extends: .build_by_travis
+ image: $BUILD_IMAGE_CENTOS8
+ extends: .build_before_script
+ script:
+ - dnf --enablerepo=powertools install -y libmnl-devel
+ - dnf --enablerepo=powertools install -y libnfnetlink-devel
+ - ./ci/travis.sh
+ tags:
+ - share
+
+branch_build_debug_for_centos7:
+ stage: build
+ extends: .build_by_travis_for_centos7
variables:
BUILD_TYPE: Debug
except:
- - /^dev*.*$/i
- - /^rel*.*$/i
+ - /^develop.*$/i
- /^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:
- - /^dev*.*$/i
- - /^rel*.*$/i
+ - /^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: 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
artifacts:
@@ -58,18 +77,17 @@ develop_build_debug:
paths:
- build/*.rpm
only:
- - /^dev*.*$/i
- - /^rel*.*$/i
+ - /^develop.*$/i
- /^master.*$/i
-develop_build_release:
+develop_build_release_for_centos7:
stage: build
- extends: .build_by_travis
+ extends: .build_by_travis_for_centos7
variables:
BUILD_TYPE: RelWithDebInfo
PACKAGE: 1
- UPLOAD: 1
- ASAN_OPTION: "OFF"
+ UPLOAD_RPM: 1
+ TESTING_VERSION_BUILD: 1
PULP3_REPO_NAME: framework-testing-x86_64.el7
PULP3_DIST_NAME: framework-testing-x86_64.el7
artifacts:
@@ -77,20 +95,36 @@ develop_build_release:
paths:
- build/*.rpm
only:
- - /^dev*.*$/i
- - /^rel*.*$/i
+ - /^develop.*$/i
- /^master.*$/i
+release_build_debug_for_centos7:
+ stage: build
+ 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
+ artifacts:
+ name: "librdkafka-$CI_COMMIT_REF_NAME-debug"
+ paths:
+ - build/*.rpm
+ only:
+ - tags
-release_build_release:
+release_build_release_for_centos7:
stage: build
variables:
BUILD_TYPE: RelWithDebInfo
PACKAGE: 1
- UPLOAD: 1
+ UPLOAD_RPM: 1
+ UPLOAD_SYMBOL_FILES: 1
+ SYMBOL_TARGET: librdkafka
PULP3_REPO_NAME: framework-stable-x86_64.el7
PULP3_DIST_NAME: framework-stable-x86_64.el7
- extends: .build_by_travis
+ extends: .build_by_travis_for_centos7
artifacts:
name: "librdkafka-$CI_COMMIT_REF_NAME-release"
paths:
@@ -98,15 +132,90 @@ release_build_release:
only:
- tags
-release_build_release_devel:
+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: 1
- PULP3_REPO_NAME: framework-stable-x86_64.el7
- PULP3_DIST_NAME: framework-stable-x86_64.el7
- extends: .build_by_travis
+ 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: "librdkafka-$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: "librdkafka-$CI_COMMIT_REF_NAME-release"
+ paths:
+ - build/*.rpm
+ only:
+ - /^develop.*$/i
+ - /^master.*$/i
+
+release_build_debug_for_centos8:
+ stage: build
+ 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: "librdkafka-$CI_COMMIT_REF_NAME-debug"
+ paths:
+ - build/*.rpm
+ only:
+ - tags
+
+release_build_release_for_centos8:
+ stage: build
+ variables:
+ BUILD_TYPE: RelWithDebInfo
+ PACKAGE: 1
+ UPLOAD_RPM: 1
+ UPLOAD_SYMBOL_FILES: 1
+ SYMBOL_TARGET: librdkafka
+ PULP3_REPO_NAME: framework-stable-x86_64.el8
+ PULP3_DIST_NAME: framework-stable-x86_64.el8
+ extends: .build_by_travis_for_centos8
artifacts:
name: "librdkafka-$CI_COMMIT_REF_NAME-release"
paths:
diff --git a/ci/travis.sh b/ci/travis.sh
index 7461b08..cea944b 100644
--- a/ci/travis.sh
+++ b/ci/travis.sh
@@ -38,7 +38,7 @@ if [ -n "${INSTALL_DEPENDENCY_LIBRARY}" ]; then
source /etc/profile.d/framework.sh
fi
-if [ $ASAN_OPTION ];then
+if [ $ASAN_OPTION ] && [ -f "/opt/rh/devtoolset-7/enable" ] ;then
source /opt/rh/devtoolset-7/enable
fi
diff --git a/cmake/Package.cmake b/cmake/Package.cmake
index 9dc7817..028fc6a 100644
--- a/cmake/Package.cmake
+++ b/cmake/Package.cmake
@@ -12,18 +12,18 @@ 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 ${CMAKE_BINARY_DIR} WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/cmake)
SET(CPACK_RPM_CHANGELOG_FILE ${CMAKE_BINARY_DIR}/changelog.txt)
# RPM Build
set(CPACK_GENERATOR "RPM")
+set(CPACK_RPM_AUTO_GENERATED_FILE_NAME ON)
+set(CPACK_RPM_FILE_NAME "RPM-DEFAULT")
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)
@@ -32,26 +32,18 @@ set(CPACK_COMPONENT_HEADER_DISPLAY_NAME "develop")
set(CPACK_COMPONENT_LIBRARIES_REQUIRED TRUE)
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})
set(CPACK_COMPONENTS_ALL LIBRARIES HEADER PROFILE)
-#SET(CPACK_RPM_LIBRARIES_PRE_INSTALL_SCRIPT_FILE "${PROJECT_SOURCE_DIR}/cmake/preInstall.sh")
-#SET(CPACK_RPM_LIBRARIES_PRE_UNINSTALL_SCRIPT_FILE "${PROJECT_SOURCE_DIR}/cmake/preUninstall.sh")
-
set(CPACK_BUILD_SOURCE_DIRS "${CMAKE_SOURCE_DIR}")
# Must uninstall the debug package before install release package