| Index: third_party/google_benchmark/cmake/CXXFeatureCheck.cmake
|
| diff --git a/third_party/google_benchmark/cmake/CXXFeatureCheck.cmake b/third_party/google_benchmark/cmake/CXXFeatureCheck.cmake
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..6efe6a84ee4936867167774654743159ad61e18a
|
| --- /dev/null
|
| +++ b/third_party/google_benchmark/cmake/CXXFeatureCheck.cmake
|
| @@ -0,0 +1,44 @@
|
| +# - Compile and run code to check for C++ features
|
| +#
|
| +# This functions compiles a source file under the `cmake` folder
|
| +# and adds the corresponding `HAVE_[FILENAME]` flag to the CMake
|
| +# environment
|
| +#
|
| +# cxx_feature_check(<FLAG> [<VARIANT>])
|
| +#
|
| +# - Example
|
| +#
|
| +# include(CXXFeatureCheck)
|
| +# cxx_feature_check(STD_REGEX)
|
| +# Requires CMake 2.8.12+
|
| +
|
| +if(__cxx_feature_check)
|
| + return()
|
| +endif()
|
| +set(__cxx_feature_check INCLUDED)
|
| +
|
| +function(cxx_feature_check FILE)
|
| + string(TOLOWER ${FILE} FILE)
|
| + string(TOUPPER ${FILE} VAR)
|
| + string(TOUPPER "HAVE_${VAR}" FEATURE)
|
| + if (DEFINED HAVE_${VAR})
|
| + return()
|
| + endif()
|
| + 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})
|
| + if(RUN_${FEATURE} EQUAL 0)
|
| + message("-- Performing Test ${FEATURE} -- success")
|
| + set(HAVE_${VAR} 1 CACHE INTERNAL "Feature test for ${FILE}" PARENT_SCOPE)
|
| + add_definitions(-DHAVE_${VAR})
|
| + else()
|
| + if(NOT COMPILE_${FEATURE})
|
| + message("-- Performing Test ${FEATURE} -- failed to compile")
|
| + else()
|
| + message("-- Performing Test ${FEATURE} -- compiled but failed to run")
|
| + endif()
|
| + endif()
|
| +endfunction()
|
| +
|
|
|