From 950652aeddf12901b78b8536c3eb117338c7e583 Mon Sep 17 00:00:00 2001 From: Miro ILIAS Date: Tue, 10 Nov 2015 09:22:26 +0100 Subject: [PATCH] thorough workaround for CMAKE_CURRENT_LIST_DIR variable - to fix this for CMake 2.8.2 --- modules/boost/boost.cmake | 9 +++++++++ modules/git_info/git_info.cmake | 7 ++----- modules/git_info/git_info_sub.cmake | 4 ++++ 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/modules/boost/boost.cmake b/modules/boost/boost.cmake index 88cbfe7..a4e0b38 100644 --- a/modules/boost/boost.cmake +++ b/modules/boost/boost.cmake @@ -71,6 +71,10 @@ # Underscore-separated version number string(REGEX REPLACE "\\." "_" BOOSTVER ${BOOST_MINIMUM_REQUIRED}) # Where the Boost .zip archive is located +# CMAKE_CURRENT_LIST_DIR is undefined in CMake 2.8.2 +# see https://public.kitware.com/Bug/print_bug_page.php?bug_id=11675 +# workaround: create CMAKE_CURRENT_LIST_DIR +get_filename_component(CMAKE_CURRENT_LIST_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) set(BOOST_ARCHIVE_LOCATION ${CMAKE_CURRENT_LIST_DIR}) set(BOOST_ARCHIVE boost_${BOOSTVER}.zip) @@ -119,6 +123,11 @@ if(BUILD_CUSTOM_BOOST) endif() endif() string(TOLOWER ${CMAKE_BUILD_TYPE} type) + + # CMAKE_CURRENT_LIST_DIR is undefined in CMake 2.8.2 + # see https://public.kitware.com/Bug/print_bug_page.php?bug_id=11675 + # workaround: create CMAKE_CURRENT_LIST_DIR + get_filename_component(CMAKE_CURRENT_LIST_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) include(${CMAKE_CURRENT_LIST_DIR}/boost_unpack.cmake) include(${CMAKE_CURRENT_LIST_DIR}/boost_userconfig.cmake) diff --git a/modules/git_info/git_info.cmake b/modules/git_info/git_info.cmake index 60bbaf3..f33895c 100644 --- a/modules/git_info/git_info.cmake +++ b/modules/git_info/git_info.cmake @@ -12,11 +12,8 @@ # CMAKE_CURRENT_LIST_DIR is undefined in CMake 2.8.2 # see https://public.kitware.com/Bug/print_bug_page.php?bug_id=11675 -# workaround: create CMAKE_CURRENT_LIST_DIR if it doesn't exist -if(NOT DEFINED CMAKE_CURRENT_LIST_DIR) - get_filename_component(CMAKE_CURRENT_LIST_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) -endif() - +# workaround: create CMAKE_CURRENT_LIST_DIR +get_filename_component(CMAKE_CURRENT_LIST_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) add_custom_command( OUTPUT ${PROJECT_BINARY_DIR}/git_info.h COMMAND ${CMAKE_COMMAND} -D_target_dir=${PROJECT_BINARY_DIR} -P git_info_sub.cmake diff --git a/modules/git_info/git_info_sub.cmake b/modules/git_info/git_info_sub.cmake index b60cbc2..7b55f17 100644 --- a/modules/git_info/git_info_sub.cmake +++ b/modules/git_info/git_info_sub.cmake @@ -45,6 +45,10 @@ if(GIT_FOUND) string(STRIP ${_git_branch} _git_branch) endif() +# CMAKE_CURRENT_LIST_DIR is undefined in CMake 2.8.2 +# see https://public.kitware.com/Bug/print_bug_page.php?bug_id=11675 +# workaround: create CMAKE_CURRENT_LIST_DIR +get_filename_component(CMAKE_CURRENT_LIST_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) configure_file( ${CMAKE_CURRENT_LIST_DIR}/git_info.h.in ${_target_dir}/git_info.h