From 8551c3836e4ae70648162b2d534a5abf8e27bbbd Mon Sep 17 00:00:00 2001 From: Andreas Streichardt Date: Mon, 4 Jul 2016 11:48:12 +0200 Subject: [PATCH] Use standard GNU install dirs --- cmake/ArangoDBMacros.cmake | 56 ++++++++------------------------------ scripts/build-deb.sh | 2 +- 2 files changed, 13 insertions(+), 45 deletions(-) diff --git a/cmake/ArangoDBMacros.cmake b/cmake/ArangoDBMacros.cmake index 97b31e0b5b..4b09b41f30 100644 --- a/cmake/ArangoDBMacros.cmake +++ b/cmake/ArangoDBMacros.cmake @@ -1,3 +1,7 @@ +if(NOT DEFINED CMAKE_INSTALL_SYSCONFDIR) + set(CMAKE_INSTALL_SYSCONFDIR "etc/arangodb3" CACHE PATH "read-only single-machine data (etc)") +endif() + include(GNUInstallDirs) # install the visual studio runtime: @@ -8,45 +12,9 @@ if (MSVC) INSTALL(FILES ${CMAKE_INSTALL_SYSTEM_RUNTIME_COMPONENT} DESTINATION bin COMPONENT Libraries) endif() -# etc ------------------------------- -set(ETCDIR "" CACHE path "System configuration directory (defaults to prefix/etc)") - -# /etc ------------------------------- -if (ETCDIR STREQUAL "") - set(ETCDIR_NATIVE "${CMAKE_INSTALL_PREFIX}/etc/arangodb3") - set(ETCDIR_INSTALL "etc/arangodb3") -else () - set(ETCDIR_NATIVE "${ETCDIR}/arangodb3") - set(ETCDIR_INSTALL "${ETCDIR}/arangodb3") -endif () - -# MS stuff --------------------------- -if (MSVC) - file(TO_NATIVE_PATH "${ETCDIR_INSTALL}" ETCDIR_INSTALL) - STRING(REGEX REPLACE "\\\\" "\\\\\\\\" ETCDIR_ESCAPED "${ETCDIR_INSTALL}") -else () - file(TO_NATIVE_PATH "${ETCDIR_NATIVE}" ETCDIR_NATIVE) - STRING(REGEX REPLACE "\\\\" "\\\\\\\\" ETCDIR_ESCAPED "${ETCDIR_NATIVE}") -endif () - +STRING(REGEX REPLACE "\\\\" "\\\\\\\\" ETCDIR_ESCAPED "${CMAKE_INSTALL_FULL_SYSCONFDIR}") add_definitions("-D_SYSCONFDIR_=\"${ETCDIR_ESCAPED}\"") -# /var -set(VARDIR "" - CACHE path - "System configuration directory (defaults to prefix/var/arangodb3)" -) - -if (VARDIR STREQUAL "") - set(VARDIR_NATIVE "${CMAKE_INSTALL_PREFIX}/var") - set(VARDIR_INSTALL "var") -else () - set(VARDIR_NATIVE "${VARDIR}") - set(VARDIR_INSTALL "${VARDIR}") -endif () - -file(TO_NATIVE_PATH "${VARDIR_NATIVE}" VARDIR_NATIVE) - # database directory FILE(MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/var/lib/arangodb3") @@ -57,7 +25,7 @@ FILE(MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/var/lib/arangodb3-apps") FILE(MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/var/log/arangodb3") # package -set(TRI_PKGDATADIR "${CMAKE_INSTALL_PREFIX}/share/arangodb3") +set(TRI_PKGDATADIR "${CMAKE_INSTALL_FULL_DATAROOTDIR}/arangodb3") # resources set(TRI_RESOURCEDIR "resources") @@ -133,7 +101,7 @@ macro (generate_path_config name) FILE(READ ${PROJECT_SOURCE_DIR}/etc/arangodb3/${name}.conf.in FileContent) STRING(REPLACE "@PKGDATADIR@" "${TRI_PKGDATADIR}" FileContent "${FileContent}") - STRING(REPLACE "@LOCALSTATEDIR@" "${VARDIR_NATIVE}" + STRING(REPLACE "@LOCALSTATEDIR@" "${CMAKE_INSTALL_FULL_LOCALSTATEDIR}" FileContent "${FileContent}") FILE(WRITE ${PROJECT_BINARY_DIR}/etc/arangodb3/${name}.conf "${FileContent}") endmacro () @@ -147,7 +115,7 @@ macro (install_config name) endif () install( FILES ${PROJECT_BINARY_DIR}/etc/arangodb3/${name}.conf - DESTINATION ${ETCDIR_INSTALL}) + DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}) endmacro () # installs a readme file converting EOL ---------------------------------------- @@ -374,7 +342,7 @@ if (NOT(MSVC OR DARWIN)) install( FILES ${PROJECT_SOURCE_DIR}/Installation/debian/arangodb.init PERMISSIONS OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE - DESTINATION ${ETCDIR}/init.d + DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/init.d RENAME arangodb3 COMPONENT debian-extras ) @@ -421,7 +389,7 @@ install( install( DIRECTORY ${PROJECT_BINARY_DIR}/var/log/arangodb3 - DESTINATION ${VARDIR_INSTALL}/log) + DESTINATION ${CMAKE_INSTALL_FULL_LOCALSTATEDIR}/log) ################################################################################ ### @brief install database directory @@ -429,7 +397,7 @@ install( install( DIRECTORY ${PROJECT_BINARY_DIR}/var/lib/arangodb3 - DESTINATION ${VARDIR_INSTALL}/lib) + DESTINATION ${CMAKE_INSTALL_FULL_LOCALSTATEDIR}/lib) ################################################################################ ### @brief install apps directory @@ -437,4 +405,4 @@ install( install( DIRECTORY ${PROJECT_BINARY_DIR}/var/lib/arangodb3-apps - DESTINATION ${VARDIR_INSTALL}/lib) + DESTINATION ${CMAKE_INSTALL_FULL_LOCALSTATEDIR}/lib) diff --git a/scripts/build-deb.sh b/scripts/build-deb.sh index b07c79d7cf..c3ac4d5eca 100755 --- a/scripts/build-deb.sh +++ b/scripts/build-deb.sh @@ -4,7 +4,7 @@ set -e mkdir -p build-debian cd build-debian -CFLAGS="-g -static-libgcc -O3 -fomit-frame-pointer" CXXFLAGS="-g -static-libgcc -static-libstdc++ -O3 -fomit-frame-pointer" V8_CFLAGS="-static-libgcc" V8_CXXFLAGS="-static-libgcc -static-libstdc++" V8_LDFLAGS="-static-libgcc -static-libstdc++" cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_SKIP_RPATH=On -DUSE_OPTIMIZE_FOR_ARCHITECTURE=Off -DETCDIR=/etc -DCMAKE_INSTALL_PREFIX=/usr -DVARDIR=/var -DUSE_JEMALLOC=On .. +CFLAGS="-g -static-libgcc -O3 -fomit-frame-pointer" CXXFLAGS="-g -static-libgcc -static-libstdc++ -O3 -fomit-frame-pointer" V8_CFLAGS="-static-libgcc" V8_CXXFLAGS="-static-libgcc -static-libstdc++" V8_LDFLAGS="-static-libgcc -static-libstdc++" cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_SKIP_RPATH=On -DUSE_OPTIMIZE_FOR_ARCHITECTURE=Off -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LOCALSTATEDIR=/var -DCMAKE_INSTALL_SYSCONFDIR=/etc/arangodb3 -DUSE_JEMALLOC=On .. make -j12 make prepare_debian cpack -G DEB --verbose