Lines Matching +full:set +full:- +full:version
1 cmake_minimum_required (VERSION 2.8.12)
11 cmake_policy(SET ${p} NEW)
20 option(BENCHMARK_BUILD_32_BITS "Build a 32 bit version of the library." OFF)
22 …set(BENCHMARK_BUILD_32_BITS OFF CACHE BOOL "Build a 32 bit version of the library - unsupported wh…
28 option(BENCHMARK_DOWNLOAD_DEPENDENCIES "Allow the downloading and in-tree building of unmet depende…
31 # in cases where it is not possible to build or find a valid version of gtest.
34 set(ENABLE_ASSEMBLY_TESTS_DEFAULT OFF)
39 # FIXME: The --coverage flag needs to be removed when building assembly
57 set(LLVM_FILECHECK_EXE "${LLVM_FILECHECK_EXE}" CACHE PATH "llvm filecheck" FORCE)
63 set(ENABLE_ASSEMBLY_TESTS_DEFAULT ON PARENT_SCOPE)
76 # Read the git tags to determine the project version
81 string(REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+" VERSION ${GIT_VERSION})
82 message(STATUS "Version: ${VERSION}")
84 # The version of the libraries
85 set(GENERIC_LIB_VERSION ${VERSION})
86 string(SUBSTRING ${VERSION} 0 1 GENERIC_LIB_SOVERSION)
94 add_required_cxx_compiler_flag(-m32)
99 string(REGEX REPLACE "[-/]W[1-4]" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
100 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4")
101 add_definitions(-D_CRT_SECURE_NO_WARNINGS)
104 add_cxx_compiler_flag(-EHs-)
105 add_cxx_compiler_flag(-EHa-)
106 add_definitions(-D_HAS_EXCEPTIONS=0)
110 set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /GL")
111 set(CMAKE_STATIC_LINKER_FLAGS_RELEASE "${CMAKE_STATIC_LINKER_FLAGS_RELEASE} /LTCG")
112 set(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE} /LTCG")
113 set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /LTCG")
115 set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /GL")
116 …string(REGEX REPLACE "[-/]INCREMENTAL" "/INCREMENTAL:NO" CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO …
117 … set(CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO} /LTCG")
118 …string(REGEX REPLACE "[-/]INCREMENTAL" "/INCREMENTAL:NO" CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO …
119 … set(CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO} /LTCG")
120 …string(REGEX REPLACE "[-/]INCREMENTAL" "/INCREMENTAL:NO" CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "${…
121 set(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO} /LTCG")
123 set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} /GL")
124 set(CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL "${CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL} /LTCG")
125 set(CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL "${CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL} /LTCG")
126 set(CMAKE_EXE_LINKER_FLAGS_MINSIZEREL "${CMAKE_EXE_LINKER_FLAGS_MINSIZEREL} /LTCG")
131 add_cxx_compiler_flag(-std=c++11)
133 add_cxx_compiler_flag(-std=c++0x)
137 add_cxx_compiler_flag(-Wall)
138 add_cxx_compiler_flag(-Wextra)
139 add_cxx_compiler_flag(-Wshadow)
140 add_cxx_compiler_flag(-Werror RELEASE)
141 add_cxx_compiler_flag(-Werror RELWITHDEBINFO)
142 add_cxx_compiler_flag(-Werror MINSIZEREL)
143 add_cxx_compiler_flag(-pedantic)
144 add_cxx_compiler_flag(-pedantic-errors)
145 add_cxx_compiler_flag(-Wshorten-64-to-32)
146 add_cxx_compiler_flag(-fstrict-aliasing)
149 add_cxx_compiler_flag(-Wno-deprecated-declarations)
151 # Intel silently ignores '-Wno-deprecated-declarations',
154 add_cxx_compiler_flag(-wd1786)
156 # Disable deprecation warnings for release builds (when -Werror is enabled).
157 add_cxx_compiler_flag(-Wno-deprecated RELEASE)
158 add_cxx_compiler_flag(-Wno-deprecated RELWITHDEBINFO)
159 add_cxx_compiler_flag(-Wno-deprecated MINSIZEREL)
161 add_cxx_compiler_flag(-fno-exceptions)
165 …if (NOT CMAKE_CXX_COMPILER_ID STREQUAL "Intel") #ICC17u2: Many false positives for Wstrict-aliasing
166 add_cxx_compiler_flag(-Wstrict-aliasing)
171 add_cxx_compiler_flag(-wd654)
172 add_cxx_compiler_flag(-Wthread-safety)
182 add_definitions(-D_GNU_SOURCE=1)
187 add_cxx_compiler_flag(-flto)
189 find_program(GCC_AR gcc-ar)
191 set(CMAKE_AR ${GCC_AR})
193 find_program(GCC_RANLIB gcc-ranlib)
195 set(CMAKE_RANLIB ${GCC_RANLIB})
198 include(llvm-toolchain)
203 set(BENCHMARK_CXX_FLAGS_COVERAGE "${CMAKE_CXX_FLAGS_DEBUG}"
206 set(BENCHMARK_EXE_LINKER_FLAGS_COVERAGE "${CMAKE_EXE_LINKER_FLAGS_DEBUG}"
209 set(BENCHMARK_SHARED_LINKER_FLAGS_COVERAGE "${CMAKE_SHARED_LINKER_FLAGS_DEBUG}"
216 set(CMAKE_BUILD_TYPE "${CMAKE_BUILD_TYPE}" CACHE STRING
218 add_cxx_compiler_flag(--coverage COVERAGE)
223 add_cxx_compiler_flag(-stdlib=libc++)
226 add_cxx_compiler_flag(-nostdinc++)
228 # Adding -nodefaultlibs directly to CMAKE_<TYPE>_LINKER_FLAGS will break
230 list(APPEND BENCHMARK_CXX_LINKER_FLAGS -nodefaultlibs)
231 # -lc++ cannot be added directly to CMAKE_<TYPE>_LINKER_FLAGS because
232 # linker flags appear before all linker inputs and -lc++ must appear after.
235 message(FATAL_ERROR "-DBENCHMARK_USE_LIBCXX:BOOL=ON is not supported for compiler")
255 # Set up directories