From d371534cbe25fd7776dd8d1b4d3f073694584fae Mon Sep 17 00:00:00 2001 From: =?utf8?q?=EB=B0=95=EC=A2=85=ED=98=84/=EB=8F=99=EC=9E=91=EC=A0=9C?= =?utf8?q?=EC=96=B4Lab=28SR=29/Senior=20Engineer/=EC=82=BC=EC=84=B1?= =?utf8?q?=EC=A0=84=EC=9E=90?= Date: Thu, 26 Apr 2018 10:56:19 +0900 Subject: [PATCH] Define 'nncc_find_package' as macro (#149) In CMake, function creates a new scope, and thus it interfers the behavior of 'find_package' command if its wrapper ('nncc_find_package') is implemented as a function. This commit rewrites 'nncc_find_package' as a macro (which does not create a new scope) to avoid scope issue, and updates existing configurations accordingly. Signed-off-by: Jonghyun Park --- CMakeLists.txt | 4 ++-- cmake/packages/ExternalSourceToolsConfig.cmake | 2 +- cmake/packages/GTestConfig.cmake | 4 ++-- cmake/packages/OptionToolsConfig.cmake | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 694d8fd..434fc2a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -10,9 +10,9 @@ else(CMAKE_VERSION VERSION_LESS 3.1.0) set(CMAKE_CXX_STANDARD 11) endif(CMAKE_VERSION VERSION_LESS 3.1.0) -function(nncc_find_package PREFIX) +macro(nncc_find_package PREFIX) find_package(${PREFIX} CONFIG NO_DEFAULT_PATH PATHS ${CMAKE_SOURCE_DIR}/cmake/packages ${ARGN}) -endfunction(nncc_find_package) +endmacro(nncc_find_package) ### ### Configuration diff --git a/cmake/packages/ExternalSourceToolsConfig.cmake b/cmake/packages/ExternalSourceToolsConfig.cmake index d1001eb..5fe4e0e 100644 --- a/cmake/packages/ExternalSourceToolsConfig.cmake +++ b/cmake/packages/ExternalSourceToolsConfig.cmake @@ -46,4 +46,4 @@ function(ExternalSource_Download PREFIX URL) set(${PREFIX}_SOURCE_DIR "${OUT_DIR}" PARENT_SCOPE) endfunction(ExternalSource_Download) -set(ExternalSourceTools_FOUND TRUE PARENT_SCOPE) +set(ExternalSourceTools_FOUND TRUE) diff --git a/cmake/packages/GTestConfig.cmake b/cmake/packages/GTestConfig.cmake index 5328c64..f868727 100644 --- a/cmake/packages/GTestConfig.cmake +++ b/cmake/packages/GTestConfig.cmake @@ -10,7 +10,7 @@ if(${BUILD_GTEST}) add_subdirectory(${GTEST_SOURCE_DIR} externals/gtest) endif(NOT TARGET gtest_main) - set(GTest_FOUND TRUE PARENT_SCOPE) + set(GTest_FOUND TRUE) return() endif(${BUILD_GTEST}) @@ -32,5 +32,5 @@ if(${GTEST_FOUND} AND TARGET Threads::Threads) target_link_libraries(gtest_main INTERFACE ${GTEST_MAIN_LIBRARIES}) endif(NOT TARGET gtest_main) - set(GTest_FOUND TRUE PARENT_SCOPE) + set(GTest_FOUND TRUE) endif(${GTEST_FOUND} AND TARGET Threads::Threads) diff --git a/cmake/packages/OptionToolsConfig.cmake b/cmake/packages/OptionToolsConfig.cmake index caf735f..066d530 100644 --- a/cmake/packages/OptionToolsConfig.cmake +++ b/cmake/packages/OptionToolsConfig.cmake @@ -8,4 +8,4 @@ function(envoption PREFIX DEFAULT_VALUE) set(${PREFIX} ${VALUE} PARENT_SCOPE) endfunction(envoption) -set(OptionTools_FOUND TRUE PARENT_SCOPE) +set(OptionTools_FOUND TRUE) -- 2.7.4