티스토리 뷰
google의 benchmark에서 모르는 부분이 너무 많다
benchmark는 cmake 폴더의 CXXFeatureCheck, AddCXXCompilerFlag를 이용해 컴파일러에 맞춰 설정을 진행한다
cmake_minimum_required (VERSION 3.5.1)
set(CMAKE_C_COMPILER "gcc")
set(CMAKE_CXX_COMPILER "g++")
project (benchmark CXX)
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
include(CXXFeatureCheck)
cxx_feature_check(THREAD_SAFETY_ATTRIBUTES)
add_executable(benchmark "main.cpp")
cmake 폴더 추가하고, CXXFeatureCheck.cmake 를 포함하고
그 뒤에, cmake 폴더의 thread_safety_attributes.cpp 파일을 컴파일 해보고 define을 설정해 준다
앞에는 prefix로 HAVE_를 붙여주는데, 'AddCXXCompilerFlag'도 마찬가지다
CMakeLists.txt 파일내의 코드와 달리, thread_safety_attributes.cpp는
newpolaris@Donghyuns-MacBook-Pro out % cmake ..
-- Performing Test HAVE_THREAD_SAFETY_ATTRIBUTES -- success
-- Configuring done
-- Generating done
-- Build files have been written to:
success 표시는 cache의 내용만 다시 표시해주는 것. CMakeCache.txt 파일을 삭제하거나 다시 생성 필요
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크