summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author张杨 <[email protected]>2024-11-12 07:03:25 +0000
committer卢文朋 <[email protected]>2024-11-12 07:03:25 +0000
commit54d3e89e000ad52e8207dbf457df1beb3e3b9ec2 (patch)
tree999584eea05eab1c1c26770ca82eaa792bf860d9
parent66db85d2431ea1aabe1a44d7445bfe2596ac0b14 (diff)
Hasp-tool 支持 aarch64 架构, CI 增加 rocky9 aarch64 rpm 打包, 移除 centos7 打包HEADv1.0.14-20241112develop-1.0
-rw-r--r--.gitlab-ci.yml122
-rw-r--r--cmake/Package.cmake7
-rw-r--r--depend/aksusbd-8.31-1.aarch64.rpmbin0 -> 4672068 bytes
-rw-r--r--lib/libhasp_linux_arm64_25743.abin0 -> 5078330 bytes
-rw-r--r--platform/CMakeLists.txt12
5 files changed, 79 insertions, 62 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 38984a3..067d26a 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -3,18 +3,21 @@ variables:
BUILD_PADDING_PREFIX: /tmp/padding_for_CPACK_RPM_BUILD_SOURCE_DIRS_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX_PREFIX/
INSTALL_PREFIX: "/opt/tsg/hasp-tools"
TESTING_VERSION_BUILD: 0
- BUILD_IMAGE_CENTOS7: "git.mesalab.cn:7443/mesa_platform/build-env:master"
+ # BUILD_IMAGE_CENTOS7: "git.mesalab.cn:7443/mesa_platform/build-env:master"
BUILD_IMAGE_CENTOS8: "git.mesalab.cn:7443/mesa_platform/build-env:rockylinux"
+ # aarch64 build image
+ BUILD_IMAGE_ROCKY8_AARCH64: "git.mesalab.cn:7443/mesa_platform/build-env:rocky8-aarch64"
+ BUILD_IMAGE_ROCKY9_AARCH64: "git.mesalab.cn:7443/mesa_platform/build-env:rocky9-aarch64"
stages:
- build
###############################################################################
-# compile use image: build-env:master
+# compile use image: build-env:rockylinux"
###############################################################################
-.build_by_travis_for_centos7:
- image: $BUILD_IMAGE_CENTOS7
+.build_by_travis_for_centos8:
+ image: $BUILD_IMAGE_CENTOS8
before_script:
- mkdir -p $BUILD_PADDING_PREFIX/$CI_PROJECT_NAMESPACE/
- ln -s $CI_PROJECT_DIR $BUILD_PADDING_PREFIX/$CI_PROJECT_PATH
@@ -27,9 +30,9 @@ stages:
tags:
- share
-branch_build_debug_centos7:
+branch_build_debug_centos8:
stage: build
- extends: .build_by_travis_for_centos7
+ extends: .build_by_travis_for_centos8
variables:
BUILD_TYPE: Debug
except:
@@ -37,26 +40,26 @@ branch_build_debug_centos7:
- /^release-.*$/i
- tags
-branch_build_release_centos7:
+branch_build_release_centos8:
stage: build
variables:
BUILD_TYPE: RelWithDebInfo
- extends: .build_by_travis_for_centos7
+ extends: .build_by_travis_for_centos8
except:
- /^develop-.*$/i
- /^release-.*$/i
- tags
-develop_build_debug_centos7:
+develop_build_debug_centos8:
stage: build
- extends: .build_by_travis_for_centos7
+ extends: .build_by_travis_for_centos8
variables:
TESTING_VERSION_BUILD: 1
#UPLOAD_SYMBOL_FILES: 0
BUILD_TYPE: Debug
PACKAGE: 1
- PULP3_REPO_NAME: tsg-testing-x86_64.el7
- PULP3_DIST_NAME: tsg-testing-x86_64.el7
+ PULP3_REPO_NAME: tsg-testing-x86_64.el8
+ PULP3_DIST_NAME: tsg-testing-x86_64.el8
artifacts:
name: "hasp-tools-develop-$CI_COMMIT_REF_NAME-debug"
paths:
@@ -65,16 +68,16 @@ develop_build_debug_centos7:
- /^develop-.*$/i
- /^release-.*$/i
-develop_build_release_centos7:
+develop_build_release_centos8:
stage: build
- extends: .build_by_travis_for_centos7
+ extends: .build_by_travis_for_centos8
variables:
TESTING_VERSION_BUILD: 1
#UPLOAD_SYMBOL_FILES: 0
BUILD_TYPE: RelWithDebInfo
PACKAGE: 1
- PULP3_REPO_NAME: tsg-testing-x86_64.el7
- PULP3_DIST_NAME: tsg-testing-x86_64.el7
+ PULP3_REPO_NAME: tsg-testing-x86_64.el8
+ PULP3_DIST_NAME: tsg-testing-x86_64.el8
artifacts:
name: "hasp-tools-develop-$CI_COMMIT_REF_NAME-release"
paths:
@@ -83,15 +86,15 @@ develop_build_release_centos7:
- /^develop-.*$/i
- /^release-.*$/i
-release_build_debug_centos7:
+release_build_debug_centos8:
stage: build
variables:
#UPLOAD_SYMBOL_FILES: 0
BUILD_TYPE: Debug
PACKAGE: 1
- PULP3_REPO_NAME: tsg-stable-x86_64.el7
- PULP3_DIST_NAME: tsg-stable-x86_64.el7
- extends: .build_by_travis_for_centos7
+ PULP3_REPO_NAME: tsg-stable-x86_64.el8
+ PULP3_DIST_NAME: tsg-stable-x86_64.el8
+ extends: .build_by_travis_for_centos8
artifacts:
name: "hasp-tools-install-$CI_COMMIT_REF_NAME-debug"
paths:
@@ -99,15 +102,15 @@ release_build_debug_centos7:
only:
- tags
-release_build_release_centos7:
+release_build_release_centos8:
stage: build
variables:
BUILD_TYPE: RelWithDebInfo
#UPLOAD_SYMBOL_FILES: 0
PACKAGE: 1
- PULP3_REPO_NAME: tsg-stable-x86_64.el7
- PULP3_DIST_NAME: tsg-stable-x86_64.el7
- extends: .build_by_travis_for_centos7
+ PULP3_REPO_NAME: tsg-stable-x86_64.el8
+ PULP3_DIST_NAME: tsg-stable-x86_64.el8
+ extends: .build_by_travis_for_centos8
artifacts:
name: "hasp-tools-install-$CI_COMMIT_REF_NAME-release"
paths:
@@ -116,26 +119,27 @@ release_build_release_centos7:
- tags
###############################################################################
-# compile use image: build-env:rockylinux"
+# compile use image: rocky9-aarch64
###############################################################################
-.build_by_travis_for_centos8:
- image: $BUILD_IMAGE_CENTOS8
+.build_by_travis_for_rocky9_aarch64:
+ image: $BUILD_IMAGE_ROCKY9_AARCH64
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 install -y elfutils-libelf-devel
+ - 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 install -y elfutils-libelf-devel
script:
- - yum makecache
- - ./ci/travis.sh
+ - yum makecache
+ - ./ci/travis.sh
tags:
- - share
+ - tsg-os-builder-aarch64 # 修改这里以匹配实际的 runner 标签
-branch_build_debug_centos8:
+# Branch builds for Rocky9 aarch64
+branch_build_debug_rocky9_aarch64:
stage: build
- extends: .build_by_travis_for_centos8
+ extends: .build_by_travis_for_rocky9_aarch64
variables:
BUILD_TYPE: Debug
except:
@@ -143,26 +147,26 @@ branch_build_debug_centos8:
- /^release-.*$/i
- tags
-branch_build_release_centos8:
+branch_build_release_rocky9_aarch64:
stage: build
variables:
BUILD_TYPE: RelWithDebInfo
- extends: .build_by_travis_for_centos8
+ extends: .build_by_travis_for_rocky9_aarch64
except:
- /^develop-.*$/i
- /^release-.*$/i
- tags
-develop_build_debug_centos8:
+# Develop builds for Rocky9 aarch64
+develop_build_debug_rocky9_aarch64:
stage: build
- extends: .build_by_travis_for_centos8
+ extends: .build_by_travis_for_rocky9_aarch64
variables:
TESTING_VERSION_BUILD: 1
- #UPLOAD_SYMBOL_FILES: 0
BUILD_TYPE: Debug
PACKAGE: 1
- PULP3_REPO_NAME: tsg-testing-x86_64.el8
- PULP3_DIST_NAME: tsg-testing-x86_64.el8
+ PULP3_REPO_NAME: tsg-testing-aarch64.el9
+ PULP3_DIST_NAME: tsg-testing-aarch64.el9
artifacts:
name: "hasp-tools-develop-$CI_COMMIT_REF_NAME-debug"
paths:
@@ -171,16 +175,15 @@ develop_build_debug_centos8:
- /^develop-.*$/i
- /^release-.*$/i
-develop_build_release_centos8:
+develop_build_release_rocky9_aarch64:
stage: build
- extends: .build_by_travis_for_centos8
+ extends: .build_by_travis_for_rocky9_aarch64
variables:
TESTING_VERSION_BUILD: 1
- #UPLOAD_SYMBOL_FILES: 0
BUILD_TYPE: RelWithDebInfo
PACKAGE: 1
- PULP3_REPO_NAME: tsg-testing-x86_64.el8
- PULP3_DIST_NAME: tsg-testing-x86_64.el8
+ PULP3_REPO_NAME: tsg-testing-aarch64.el9
+ PULP3_DIST_NAME: tsg-testing-aarch64.el9
artifacts:
name: "hasp-tools-develop-$CI_COMMIT_REF_NAME-release"
paths:
@@ -189,31 +192,30 @@ develop_build_release_centos8:
- /^develop-.*$/i
- /^release-.*$/i
-release_build_debug_centos8:
+# Release builds for Rocky9 aarch64
+release_build_debug_rocky9_aarch64:
stage: build
variables:
- #UPLOAD_SYMBOL_FILES: 0
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
+ PULP3_REPO_NAME: tsg-stable-aarch64.el9
+ PULP3_DIST_NAME: tsg-stable-aarch64.el9
+ extends: .build_by_travis_for_rocky9_aarch64
artifacts:
name: "hasp-tools-install-$CI_COMMIT_REF_NAME-debug"
paths:
- - build/*.rpm
+ - build/*.rpm
only:
- tags
-release_build_release_centos8:
+release_build_release_rocky9_aarch64:
stage: build
variables:
BUILD_TYPE: RelWithDebInfo
- #UPLOAD_SYMBOL_FILES: 0
PACKAGE: 1
- PULP3_REPO_NAME: tsg-stable-x86_64.el8
- PULP3_DIST_NAME: tsg-stable-x86_64.el8
- extends: .build_by_travis_for_centos8
+ PULP3_REPO_NAME: tsg-stable-aarch64.el9
+ PULP3_DIST_NAME: tsg-stable-aarch64.el9
+ extends: .build_by_travis_for_rocky9_aarch64
artifacts:
name: "hasp-tools-install-$CI_COMMIT_REF_NAME-release"
paths:
diff --git a/cmake/Package.cmake b/cmake/Package.cmake
index dcba12e..b970b0c 100644
--- a/cmake/Package.cmake
+++ b/cmake/Package.cmake
@@ -20,6 +20,13 @@ set(CPACK_RPM_PACKAGE_AUTOREQPROV "no")
set(CPACK_RPM_PACKAGE_RELEASE_DIST on)
set(CPACK_RPM_DEBUGINFO_PACKAGE on)
+# set RPM architecture
+if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "aarch64")
+ set(CPACK_RPM_PACKAGE_ARCHITECTURE "aarch64")
+else()
+ set(CPACK_RPM_PACKAGE_ARCHITECTURE "x86_64")
+endif()
+
# Must uninstall the debug package before install release package
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
set(CPACK_RPM_PACKAGE_CONFLICTS "hasp-tools")
diff --git a/depend/aksusbd-8.31-1.aarch64.rpm b/depend/aksusbd-8.31-1.aarch64.rpm
new file mode 100644
index 0000000..dd3b0f0
--- /dev/null
+++ b/depend/aksusbd-8.31-1.aarch64.rpm
Binary files differ
diff --git a/lib/libhasp_linux_arm64_25743.a b/lib/libhasp_linux_arm64_25743.a
new file mode 100644
index 0000000..5d90813
--- /dev/null
+++ b/lib/libhasp_linux_arm64_25743.a
Binary files differ
diff --git a/platform/CMakeLists.txt b/platform/CMakeLists.txt
index 851e073..e8b6579 100644
--- a/platform/CMakeLists.txt
+++ b/platform/CMakeLists.txt
@@ -2,14 +2,22 @@
add_executable(hasp_update src/hasp_update.c)
target_include_directories(hasp_update PUBLIC ${CMAKE_CURRENT_LIST_DIR}/include/)
target_link_libraries(hasp_update pthread)
-target_link_libraries(hasp_update ${CMAKE_SOURCE_DIR}/lib/libhasp_linux_x86_64_25743.a)
+
+# aarch64 or x86_64
+if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "aarch64")
+ set(HASP_LIB "libhasp_linux_arm64_25743.a")
+else()
+ set(HASP_LIB "libhasp_linux_x86_64_25743.a")
+endif()
+
+target_link_libraries(hasp_update ${CMAKE_SOURCE_DIR}/lib/${HASP_LIB})
install(TARGETS hasp_update RUNTIME DESTINATION bin COMPONENT Program)
# compile lib hasp-tools
add_library(hasp-tools SHARED src/hasp_verify.c)
target_include_directories(hasp-tools PUBLIC ${CMAKE_CURRENT_LIST_DIR}/include)
target_link_libraries(hasp-tools pthread rt)
-target_link_libraries(hasp-tools ${CMAKE_SOURCE_DIR}/lib/libhasp_linux_x86_64_25743.a)
+target_link_libraries(hasp-tools ${CMAKE_SOURCE_DIR}/lib/${HASP_LIB})
install(TARGETS hasp-tools LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/ COMPONENT LIBRARIES)
install(FILES include/hasp_verify.h DESTINATION ${CMAKE_INSTALL_PREFIX}/include/ COMPONENT LIBRARIES)