From e005ac22ca5801aeb7b604463eec0acc4d0d9ad4 Mon Sep 17 00:00:00 2001 From: Alopez <alopez@iri.upc.edu> Date: Tue, 2 Jul 2019 17:41:14 +0200 Subject: [PATCH] Adapted to .deb package generation --- .gitlab-ci.yaml | 35 +++++++++++++++++++++++++++++++++++ CMakeLists.txt | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 70 insertions(+) diff --git a/.gitlab-ci.yaml b/.gitlab-ci.yaml index e69de29..4e81bd3 100644 --- a/.gitlab-ci.yaml +++ b/.gitlab-ci.yaml @@ -0,0 +1,35 @@ +image: docker.io/alopeziri/labrobotica + +stages: + - build + - test + - deploy + +build-package: + stage: build + script: +# Uncomment to install dependencies +# - apt update +# - apt -y install iri-<package_name>-dev + - apt update + - apt -y install iri-iriutils-dev iri-comm-dev + - mkdir -pv build + - cd build + - cmake -D CMAKE_BUILD_TYPE=RELEASE -DCPACK_PACKAGE_VERSION=$CI_COMMIT_TAG .. + - make package -j $(nproc) + artifacts: + paths: + - build/*.deb + expire_in: 2 weeks + only: + - tags + +update_repo: + stage: deploy + script: + - cd build + - "scp -i /root/.ssh/iriLabKeyNopwd -r *bno055-imu-driver*.deb irilabo@147.83.76.226:packages/" + - "ssh irilabo@147.83.76.226 -i /root/.ssh/iriLabKeyNopwd -tt /home/irilabo/repo_scripts/update_repo.sh bno055-imu-driver" + only: + - tags + diff --git a/CMakeLists.txt b/CMakeLists.txt index 761b135..040d382 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,6 +9,7 @@ endif(COMMAND cmake_policy) # The project name and the type of project PROJECT(bno055_imu_driver) +SET(PACKAGE_NAME bno055-imu-driver) SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_SOURCE_DIR}/bin) SET(LIBRARY_OUTPUT_PATH ${CMAKE_CURRENT_SOURCE_DIR}/lib) @@ -65,4 +66,38 @@ ELSE(UNIX) ) ENDIF(UNIX) +IF (CMAKE_SYSTEM_PROCESSOR MATCHES "(x86)|(X86)|(amd64)|(AMD64)") + SET (X86 TRUE) + SET(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "amd64") +ELSE () + SET (X86 FALSE) + SET(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "i386") +ENDIF() + + +IF (UNIX) + SET(CPACK_PACKAGE_FILE_NAME "iri-${PACKAGE_NAME}-dev-${CPACK_PACKAGE_VERSION}-${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}") + SET(CPACK_PACKAGE_NAME "iri-${PACKAGE_NAME}-dev") + SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Part of IRI-laboratory libraries. More information at https://gitlab.iri.upc.edu/labrobotica/labrobotica_how_to") + SET(CPACK_PACKAGING_INSTALL_PREFIX /usr) + SET(CPACK_GENERATOR "DEB") + SET(CPACK_DEBIAN_PACKAGE_MAINTAINER "labrobotica - labrobotica@iri.upc.edu") + +# Uncomment to add the necessary mantainer scripts +# SET(CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA "${CMAKE_SOURCE_DIR}/package_scripts/preinst;${CMAKE_SOURCE_DIR}/package_scripts/postinst;${CMAKE_SOURCE_DIR}/package_scripts/prerm;${CMAKE_SOURCE_DIR}/package_scripts/postrm") + +# Uncomment to add dependencies comma separated +# SET(CPACK_DEBIAN_PACKAGE_DEPENDS "iri-<package_name>-dev (>= 1.0~${DISTRIB})") + SET(CPACK_DEBIAN_PACKAGE_DEPENDS "iri-iriutils-dev (>= 1.0~${DISTRIB}), iri-comm-dev (>= 1.0~${DISTRIB})") + + INCLUDE(CPack) +ELSE(UNIX) + ADD_CUSTOM_COMMAND( + COMMENT "packaging only implemented in unix" + TARGET uninstall + ) +ENDIF(UNIX) + + + -- GitLab