@@ -20,6 +20,7 @@ if(VERSION_PRERELEASE)
2020 set (VERSION ${VERSION} -${VERSION_PRERELEASE} )
2121endif ()
2222
23+ set (LIBPMEMOBJCPP_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR} )
2324set (LIBPMEMOBJ_REQUIRED_VERSION 1.9)
2425set (LIBPMEM_REQUIRED_VERSION 1.7)
2526# Only pmreorder in ver. >= 1.9 guarantees reliable output
@@ -43,7 +44,7 @@ if(NOT CMAKE_BUILD_TYPE)
4344 set (CMAKE_BUILD_TYPE "Debug" )
4445endif ()
4546
46- set (CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR } /cmake)
47+ set (CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${LIBPMEMOBJCPP_ROOT_DIR } /cmake)
4748
4849# ----------------------------------------------------------------- #
4950## CMake build options
@@ -94,7 +95,7 @@ include(CheckCXXSourceCompiles)
9495include (CheckCXXCompilerFlag)
9596include (GNUInstallDirs)
9697
97- include (${CMAKE_SOURCE_DIR } /cmake/functions.cmake)
98+ include (${LIBPMEMOBJCPP_ROOT_DIR } /cmake/functions.cmake)
9899# set SRCVERSION, it's more accurate and "current" than VERSION
99100set_source_ver(SRCVERSION)
100101
@@ -165,8 +166,8 @@ add_custom_target(cppstyle)
165166add_custom_target (cppformat)
166167add_custom_target (check-whitespace)
167168add_custom_target (check-license
168- COMMAND ${CMAKE_SOURCE_DIR } /utils/check_license/check-headers.sh
169- ${CMAKE_SOURCE_DIR }
169+ COMMAND ${LIBPMEMOBJCPP_ROOT_DIR } /utils/check_license/check-headers.sh
170+ ${LIBPMEMOBJCPP_ROOT_DIR }
170171 BSD-3-Clause)
171172
172173if (CHECK_CPP_STYLE)
@@ -217,8 +218,8 @@ add_cppstyle(include-container-detail ${CMAKE_CURRENT_SOURCE_DIR}/include/libpme
217218add_cppstyle(include -detail ${CMAKE_CURRENT_SOURCE_DIR} /include /libpmemobj++/detail/*.hpp)
218219add_cppstyle(include -experimental ${CMAKE_CURRENT_SOURCE_DIR} /include /libpmemobj++/experimental/*.hpp)
219220
220- add_check_whitespace(main ${CMAKE_SOURCE_DIR } /utils/check_license/*.sh
221- ${CMAKE_SOURCE_DIR} /README .md )
221+ add_check_whitespace(main ${LIBPMEMOBJCPP_ROOT_DIR } /utils/check_license/*.sh
222+ ${LIBPMEMOBJCPP_ROOT_DIR} /* .md )
222223add_check_whitespace(include ${CMAKE_CURRENT_SOURCE_DIR} /include /libpmemobj++/*.hpp)
223224add_check_whitespace(include -container ${CMAKE_CURRENT_SOURCE_DIR} /include /libpmemobj++/container/*.hpp)
224225add_check_whitespace(include -container-detail ${CMAKE_CURRENT_SOURCE_DIR} /include /libpmemobj++/container/detail/*.hpp)
@@ -230,7 +231,7 @@ add_check_whitespace(cmake-helpers ${CMAKE_CURRENT_SOURCE_DIR}/cmake/*.cmake)
230231# ----------------------------------------------------------------- #
231232## Configure make install/uninstall and packages
232233# ----------------------------------------------------------------- #
233- configure_file (${CMAKE_SOURCE_DIR } /cmake/version .hpp.in
234+ configure_file (${LIBPMEMOBJCPP_ROOT_DIR } /cmake/version .hpp.in
234235 ${CMAKE_CURRENT_BINARY_DIR} /version .hpp @ONLY)
235236
236237install (FILES ${CMAKE_CURRENT_BINARY_DIR} /version .hpp
@@ -242,21 +243,21 @@ install(DIRECTORY include/ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
242243install (DIRECTORY examples/ DESTINATION ${CMAKE_INSTALL_DOCDIR} /examples
243244 FILES_MATCHING PATTERN "*.*pp" )
244245
245- configure_file (${CMAKE_SOURCE_DIR } /cmake/libpmemobj++.pc.in
246+ configure_file (${LIBPMEMOBJCPP_ROOT_DIR } /cmake/libpmemobj++.pc.in
246247 ${CMAKE_CURRENT_BINARY_DIR} /libpmemobj++.pc @ONLY)
247248
248249install (FILES ${CMAKE_CURRENT_BINARY_DIR} /libpmemobj++.pc
249250 DESTINATION ${CMAKE_INSTALL_LIBDIR} /pkgconfig)
250251
251252configure_file (
252- "${CMAKE_SOURCE_DIR } /cmake/cmake_uninstall.cmake.in"
253+ "${LIBPMEMOBJCPP_ROOT_DIR } /cmake/cmake_uninstall.cmake.in"
253254 "${CMAKE_CURRENT_BINARY_DIR} /cmake_uninstall.cmake"
254255 IMMEDIATE @ONLY)
255256
256257add_custom_target (uninstall
257258 COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR} /cmake_uninstall.cmake)
258259
259- configure_package_config_file(${CMAKE_SOURCE_DIR } /cmake/libpmemobj++-config.cmake.in
260+ configure_package_config_file(${LIBPMEMOBJCPP_ROOT_DIR } /cmake/libpmemobj++-config.cmake.in
260261 ${CMAKE_CURRENT_BINARY_DIR} /libpmemobj++-config.cmake
261262 INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR} /libpmemobj++/cmake
262263 PATH_VARS CMAKE_INSTALL_LIBDIR CMAKE_INSTALL_INCLUDEDIR)
@@ -275,7 +276,7 @@ include_directories(include)
275276# Run checks for known issues, it's required to enable/disable some tests and examples.
276277# It has to be executed (included) here, when environment is fully set up,
277278# all packages are found and all paths/variables are set.
278- include (${CMAKE_SOURCE_DIR } /cmake/check_compiling_issues.cmake)
279+ include (${LIBPMEMOBJCPP_ROOT_DIR } /cmake/check_compiling_issues.cmake)
279280
280281# ----------------------------------------------------------------- #
281282## Add/include sub-directories if build options enabled them
@@ -305,5 +306,5 @@ elseif(BUILD_EXAMPLES)
305306endif ()
306307
307308if (NOT "${CPACK_GENERATOR} " STREQUAL "" )
308- include (${CMAKE_SOURCE_DIR } /cmake/packages.cmake)
309+ include (${LIBPMEMOBJCPP_ROOT_DIR } /cmake/packages.cmake)
309310endif ()
0 commit comments