diff --git a/.gitignore b/.gitignore index 86134f36cf607f6c6793931846f20affcf3b3f5c..51b507c15bdf780137594acc9061a3e807f6dd2a 100644 --- a/.gitignore +++ b/.gitignore @@ -25,6 +25,7 @@ RPM tags extra/txt2c extra/bin2c +extra/dist/tarantoolctl extra/dist/tarantoolctl.1 extra/dist/tarantool.logrotate extra/dist/tarantool.service diff --git a/cmake/pod2man.cmake b/cmake/pod2man.cmake index c53090771827967cbe0443b77ef972b2916fd4c9..9e3959f52d9f4ca6ad698c4f01224b0c44f0e65c 100644 --- a/cmake/pod2man.cmake +++ b/cmake/pod2man.cmake @@ -11,6 +11,9 @@ endif(NOT POD2MAN) macro(pod2man PODFILE NAME SECTION CENTER) set(PODFILE_FULL "${CMAKE_CURRENT_SOURCE_DIR}/${PODFILE}") set(MANFILE_FULL "${CMAKE_CURRENT_BINARY_DIR}/${NAME}.${SECTION}") + if(NOT EXISTS ${PODFILE_FULL}) + set(PODFILE_FULL "${CMAKE_CURRENT_BINARY_DIR}/${PODFILE}") + endif(NOT EXISTS ${PODFILE_FULL}) if(NOT EXISTS ${PODFILE_FULL}) message(FATAL ERROR "Could not find pod file ${PODFILE_FULL} to generate man page") endif(NOT EXISTS ${PODFILE_FULL}) diff --git a/extra/dist/CMakeLists.txt b/extra/dist/CMakeLists.txt index 58ceb727daf03f33fea7b9c292db2390941f3414..f8024526f63a14ae3ad0036ffaa82adfe464432b 100644 --- a/extra/dist/CMakeLists.txt +++ b/extra/dist/CMakeLists.txt @@ -32,7 +32,8 @@ else() set(SYSCONFIG_DEFAULT "sysconfig") endif() configure_file(default/tarantool.in default/tarantool @ONLY) -install (FILES ${PROJECT_BINARY_DIR}/extra/dist/default/tarantool DESTINATION +configure_file(tarantoolctl.in tarantoolctl @ONLY) +install (FILES ${CMAKE_CURRENT_BINARY_DIR}/default/tarantool DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/${SYSCONFIG_DEFAULT}/ PERMISSIONS OWNER_READ OWNER_WRITE @@ -40,7 +41,7 @@ install (FILES ${PROJECT_BINARY_DIR}/extra/dist/default/tarantool DESTINATION WORLD_READ) # tarantoolctl itself -install (FILES tarantoolctl DESTINATION ${CMAKE_INSTALL_BINDIR} +install (FILES ${CMAKE_CURRENT_BINARY_DIR}/tarantoolctl DESTINATION ${CMAKE_INSTALL_BINDIR} PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE @@ -74,7 +75,7 @@ install(DIRECTORY DESTINATION ${TARANTOOL_RUNDIR}) if (NOT TARGET_OS_FREEBSD) # logrotate files configure_file(tarantool.logrotate.in tarantool.logrotate @ONLY) -install (FILES ${PROJECT_BINARY_DIR}/extra/dist/tarantool.logrotate +install (FILES ${CMAKE_CURRENT_BINARY_DIR}/tarantool.logrotate DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/logrotate.d/ RENAME "tarantool" PERMISSIONS @@ -101,14 +102,14 @@ if (WITH_SYSTEMD) set(SYSV_INITD_DIR ${CMAKE_INSTALL_PREFIX}/lib/tarantool) configure_file("tarantool@.service.in" "tarantool@.service" @ONLY) - install (FILES ${PROJECT_BINARY_DIR}/extra/dist/tarantool@.service + install (FILES ${CMAKE_CURRENT_BINARY_DIR}/tarantool@.service DESTINATION ${SYSTEMD_UNIT_DIR} PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ GROUP_READ WORLD_READ WORLD_READ) configure_file(tarantool.tmpfiles.conf.in tarantool.tmpfiles.conf @ONLY) - install (FILES "${PROJECT_BINARY_DIR}/extra/dist/tarantool.tmpfiles.conf" + install (FILES "${CMAKE_CURRENT_BINARY_DIR}/tarantool.tmpfiles.conf" DESTINATION "${SYSTEMD_TMPFILES_DIR}" RENAME "tarantool.conf" PERMISSIONS diff --git a/extra/dist/tarantoolctl b/extra/dist/tarantoolctl.in similarity index 99% rename from extra/dist/tarantoolctl rename to extra/dist/tarantoolctl.in index 85d7e41360aaf7601f8d26263adcdbcc808d6956..aedb13bc85a594b030dac97cc5fd074dfae7b979 100755 --- a/extra/dist/tarantoolctl +++ b/extra/dist/tarantoolctl.in @@ -238,9 +238,7 @@ local function find_default_file() -- usermode = false local config_list = { - '/etc/sysconfig/tarantool', - '/etc/default/tarantool', - '/usr/local/etc/tarantool/default/tarantool', + '@CMAKE_INSTALL_FULL_SYSCONFDIR@/@SYSCONFIG_DEFAULT@/tarantool' } for _, c in pairs(config_list) do if fio.stat(c) then