|
|
@@ -40,8 +40,17 @@ set(CMAKE_CXX_STANDARD 14)
|
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined")
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wconversion")
|
|
|
+set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -DRELEASE")
|
|
|
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -O0 -g -DDEBUG")
|
|
|
-set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3 -DRELEASE")
|
|
|
+
|
|
|
+if (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
|
|
+ # it seems that -O3 ruins the performance when using clang ...
|
|
|
+ set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O2")
|
|
|
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
|
|
|
+else()
|
|
|
+ # ... on the other side, GCC is incredibly comfortable with it.
|
|
|
+ set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3")
|
|
|
+endif()
|
|
|
|
|
|
#
|
|
|
# CMake configuration
|