mirror of https://gitee.com/bigwinds/arangodb
113 lines
3.6 KiB
CMake
113 lines
3.6 KiB
CMake
if (NOT(MSVC))
|
|
set(CPACK_SET_DESTDIR ON)
|
|
endif()
|
|
|
|
set(CPACK_PACKAGE_VENDOR ${ARANGODB_PACKAGE_VENDOR})
|
|
set(CPACK_PACKAGE_CONTACT ${ARANGODB_PACKAGE_CONTACT})
|
|
set(CPACK_PACKAGE_VERSION "${ARANGODB_VERSION}")
|
|
# TODO just for rpm?
|
|
if (NOT(MSVC))
|
|
set(CPACK_PACKAGING_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX})
|
|
endif()
|
|
|
|
if (USE_ENTERPRISE)
|
|
set(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/enterprise/LICENSE")
|
|
else ()
|
|
set(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE")
|
|
endif ()
|
|
|
|
set(CPACK_STRIP_FILES "ON")
|
|
|
|
if (${USE_ENTERPRISE})
|
|
set(CPACKG_PACKAGE_CONFLICTS "arangodb3")
|
|
set(CPACK_PACKAGE_NAME "arangodb3e")
|
|
else ()
|
|
set(CPACK_PACKAGE_NAME "arangodb3")
|
|
set(CPACKG_PACKAGE_CONFLICTS "arangodb3e")
|
|
endif ()
|
|
set(ARANGODB_PACKAGE_ARCHITECTURE ${CMAKE_SYSTEM_PROCESSOR})
|
|
# eventually the package string will be modified later on:
|
|
|
|
set(LOGROTATE_GROUP "arangodb")
|
|
if ("${PACKAGING}" STREQUAL "DEB")
|
|
if(CMAKE_TARGET_ARCHITECTURES MATCHES ".*x86_64.*")
|
|
set(ARANGODB_PACKAGE_ARCHITECTURE "amd64")
|
|
elseif(CMAKE_TARGET_ARCHITECTURES MATCHES "aarch64")
|
|
set(ARANGODB_PACKAGE_ARCHITECTURE "arm64")
|
|
elseif(CMAKE_TARGET_ARCHITECTURES MATCHES "armv7")
|
|
set(ARANGODB_PACKAGE_ARCHITECTURE "armhf")
|
|
else()
|
|
set(ARANGODB_PACKAGE_ARCHITECTURE "i386")
|
|
endif()
|
|
|
|
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${ARANGODB_PACKAGE_REVISION}_${ARANGODB_PACKAGE_ARCHITECTURE}")
|
|
|
|
include(packages/deb)
|
|
include(packages/tar)
|
|
if (USE_SNAPCRAFT)
|
|
if(NOT DEFINED SNAP_PORT)
|
|
set(SNAP_PORT 8529)
|
|
endif()
|
|
include(packages/snap)
|
|
endif ()
|
|
elseif ("${PACKAGING}" STREQUAL "RPM")
|
|
set(PACKAGE_VERSION "-${CPACK_PACKAGE_VERSION}-${ARANGODB_PACKAGE_REVISION}.${ARANGODB_PACKAGE_ARCHITECTURE}")
|
|
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}${PACKAGE_VERSION}")
|
|
include(packages/rpm)
|
|
include(packages/tar)
|
|
elseif ("${PACKAGING}" STREQUAL "Bundle")
|
|
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${ARANGODB_PACKAGE_REVISION}.x86_64")
|
|
include(packages/bundle)
|
|
include(packages/tar)
|
|
elseif (MSVC)
|
|
if (${USE_ENTERPRISE})
|
|
set(CPACK_PACKAGE_NAME "ArangoDB3e")
|
|
else()
|
|
set(CPACK_PACKAGE_NAME "ArangoDB3")
|
|
endif()
|
|
if (CMAKE_CL_64)
|
|
SET(ARANGODB_PACKAGE_ARCHITECTURE "win64")
|
|
else ()
|
|
SET(ARANGODB_PACKAGE_ARCHITECTURE "win32")
|
|
endif ()
|
|
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${ARANGODB_PACKAGE_REVISION}_${ARANGODB_PACKAGE_ARCHITECTURE}")
|
|
include(packages/nsis)
|
|
include(packages/tar)
|
|
else ()
|
|
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${ARANGODB_PACKAGE_REVISION}_${ARANGODB_PACKAGE_ARCHITECTURE}")
|
|
include(packages/tar)
|
|
endif ()
|
|
|
|
if (UNIX)
|
|
if (SYSTEMD_FOUND)
|
|
# configure and install logrotate file
|
|
configure_file (
|
|
${ARANGODB_SOURCE_DIR}/Installation/logrotate.d/arangod.systemd
|
|
${PROJECT_BINARY_DIR}/arangod.systemd
|
|
NEWLINE_STYLE UNIX
|
|
)
|
|
install(
|
|
FILES ${PROJECT_BINARY_DIR}/arangod.systemd
|
|
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
|
|
DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/logrotate.d
|
|
RENAME ${SERVICE_NAME}
|
|
)
|
|
else ()
|
|
configure_file (
|
|
${ARANGODB_SOURCE_DIR}/Installation/logrotate.d/arangod.sysv
|
|
${PROJECT_BINARY_DIR}/arangod.sysv
|
|
NEWLINE_STYLE UNIX
|
|
)
|
|
endif ()
|
|
endif ()
|
|
|
|
|
|
configure_file(
|
|
"${CMAKE_SOURCE_DIR}/Installation/cmake/CMakeCPackOptions.cmake.in"
|
|
"${CMAKE_BINARY_DIR}/CMakeCPackOptions.cmake" @ONLY)
|
|
set(CPACK_PROJECT_CONFIG_FILE "${CMAKE_BINARY_DIR}/CMakeCPackOptions.cmake")
|
|
|
|
|
|
# Finally: user cpack
|
|
include(CPack)
|