Commit 105ac14b by Yangqing Jia Committed by Dominic Hamon

Add caching for cxx_feature_check (#573)

parent 64d4805d
...@@ -27,25 +27,27 @@ function(cxx_feature_check FILE) ...@@ -27,25 +27,27 @@ function(cxx_feature_check FILE)
return() return()
endif() endif()
message("-- Performing Test ${FEATURE}") if (NOT DEFINED COMPILE_${FEATURE})
if(CMAKE_CROSSCOMPILING) message("-- Performing Test ${FEATURE}")
try_compile(COMPILE_${FEATURE} if(CMAKE_CROSSCOMPILING)
${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/${FILE}.cpp try_compile(COMPILE_${FEATURE}
CMAKE_FLAGS ${BENCHMARK_CXX_LINKER_FLAGS} ${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/${FILE}.cpp
LINK_LIBRARIES ${BENCHMARK_CXX_LIBRARIES}) CMAKE_FLAGS ${BENCHMARK_CXX_LINKER_FLAGS}
if(COMPILE_${FEATURE}) LINK_LIBRARIES ${BENCHMARK_CXX_LIBRARIES})
message(WARNING if(COMPILE_${FEATURE})
"If you see build failures due to cross compilation, try setting HAVE_${VAR} to 0") message(WARNING
set(RUN_${FEATURE} 0) "If you see build failures due to cross compilation, try setting HAVE_${VAR} to 0")
set(RUN_${FEATURE} 0)
else()
set(RUN_${FEATURE} 1)
endif()
else() else()
set(RUN_${FEATURE} 1) message("-- Performing Test ${FEATURE}")
try_run(RUN_${FEATURE} COMPILE_${FEATURE}
${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/${FILE}.cpp
CMAKE_FLAGS ${BENCHMARK_CXX_LINKER_FLAGS}
LINK_LIBRARIES ${BENCHMARK_CXX_LIBRARIES})
endif() endif()
else()
message("-- Performing Test ${FEATURE}")
try_run(RUN_${FEATURE} COMPILE_${FEATURE}
${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/${FILE}.cpp
CMAKE_FLAGS ${BENCHMARK_CXX_LINKER_FLAGS}
LINK_LIBRARIES ${BENCHMARK_CXX_LIBRARIES})
endif() endif()
if(RUN_${FEATURE} EQUAL 0) if(RUN_${FEATURE} EQUAL 0)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment