diff --git a/.ci/Dockerfile.bionic b/.ci/Dockerfile.bionic index 4c28eb97..6af02f5d 100644 --- a/.ci/Dockerfile.bionic +++ b/.ci/Dockerfile.bionic @@ -11,6 +11,7 @@ RUN apt-get update && apt-get install -y \ libeigen3-dev \ libpoco-dev \ rename \ + rpm \ valgrind \ lsb-release \ dpkg \ diff --git a/.ci/Dockerfile.focal b/.ci/Dockerfile.focal index 92a7a609..a149c8ce 100644 --- a/.ci/Dockerfile.focal +++ b/.ci/Dockerfile.focal @@ -12,6 +12,7 @@ RUN apt-get update && apt-get install -y \ libeigen3-dev \ libpoco-dev \ rename \ + rpm \ valgrind \ lsb-release \ dpkg \ diff --git a/CMakeLists.txt b/CMakeLists.txt index 905e8ebf..f99fc0dd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -176,13 +176,35 @@ endif() ## Packaging set(CPACK_PACKAGE_VENDOR "Franka Emika GmbH") -set(CPACK_GENERATOR "DEB;TGZ") +set(CPACK_GENERATOR "DEB;TGZ;RPM") set(CPACK_PACKAGE_VERSION ${libfranka_VERSION}) set(CPACK_SYSTEM_NAME ${CMAKE_HOST_SYSTEM_PROCESSOR}) -# Debian versions require a dash -set(CPACK_DEBIAN_PACKAGE_VERSION ${CPACK_PACKAGE_VERSION}-1) -set(CPACK_DEBIAN_PACKAGE_MAINTAINER "Franka Emika GmbH") +# Default permissions for directories created implicitly during installation of files by install() and file(INSTALL). +set(CMAKE_INSTALL_DEFAULT_DIRECTORY_PERMISSIONS + OWNER_READ + OWNER_WRITE + OWNER_EXECUTE + GROUP_READ + GROUP_EXECUTE + WORLD_READ + WORLD_EXECUTE +) + +# shared package info +set(PACKAGE_RELEASE 1) # adds build info MAJOR.MINOR.PATCH-RELEASE +set(PACKAGE_MAINTAINER "Franka Emika GmbH") + +# RPM package info +set(CPACK_RPM_PACKAGE_RELEASE_DIST "%{dist}") +set(CPACK_RPM_PACKAGE_RELEASE ${PACKAGE_RELEASE}) +set(CPACK_RPM_PACKAGE_MAINTAINER ${PACKAGE_MAINTAINER}) +set(CPACK_RPM_PACKAGE_DEPENDS "poco-devel") +set(CPACK_RPM_PACKAGE_CONFLICTS "ros-libfranka-devel") + +# Debian +set(CPACK_DEBIAN_PACKAGE_RELEASE ${PACKAGE_RELEASE}) +set(CPACK_DEBIAN_PACKAGE_MAINTAINER ${PACKAGE_MAINTAINER}) set(CPACK_DEBIAN_PACKAGE_DEPENDS "libpoco-dev") set(CPACK_DEBIAN_PACKAGE_CONFLICTS "ros-kinetic-libfranka, ros-melodic-libfranka, ros-noetic-libfranka, ros-foxy-libfranka") include(CPack)