X-Git-Url: http://plrg.eecs.uci.edu/git/?p=libcds.git;a=blobdiff_plain;f=CMakeLists.txt;h=31cbcf39d64cc55813a8f266060d6f69da357bc8;hp=7b8c923a46c9a756d881b79b2324bc08d97ce3de;hb=bc277979f85299cd681e5a413d63f0c7f1d67beb;hpb=6cfdd93d10f7fbbf701bad54a907a188236f8a46 diff --git a/CMakeLists.txt b/CMakeLists.txt index 7b8c923a..31cbcf39 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -49,7 +49,7 @@ endif(WITH_BOOST_ATOMIC) if(WITH_ASAN) if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID STREQUAL "Clang") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O1 -fPIC -fsanitize=address,undefined -g -DCDS_ASAN_ENABLED -fno-omit-frame-pointer -fno-optimize-sibling-calls") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O1 -fPIC -fsanitize=address,undefined -g -DCDS_ADDRESS_SANITIZER_ENABLED -fno-omit-frame-pointer -fno-optimize-sibling-calls") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O1 -fsanitize=address,undefined -g -DCDS_ASAN_ENABLED -fno-omit-frame-pointer -fno-optimize-sibling-calls") set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fsanitize=address,undefined -pie") else() @@ -98,7 +98,16 @@ if(NOT CMAKE_BUILD_TYPE) endif() if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID STREQUAL "Clang") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Wextra -pedantic -fno-strict-aliasing") + string(REGEX MATCHALL "-std=[^ ]+" cxx_std_found ${CMAKE_CXX_FLAGS} "dummy@rg") + if(cxx_std_found) + message("C++ std: ${cxx_std_found}") + else() + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") + message("C++ std: -std=c++11 (default)") + endif() + + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -pedantic -fno-strict-aliasing") + if(CMAKE_TARGET_ARCHITECTURE STREQUAL "x86_64") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mcx16") set(LIB_SUFFIX "64") @@ -113,18 +122,24 @@ set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -D_DEBUG") message("Build type -- ${CMAKE_BUILD_TYPE}") message("Compiler version: ${CMAKE_CXX_COMPILER_ID} ${CMAKE_CXX_COMPILER_VERSION}") +message("System: ${CMAKE_SYSTEM_NAME} version: ${CMAKE_SYSTEM_VERSION}") message("Target architecture: ${CMAKE_TARGET_ARCHITECTURE}") if(CMAKE_BUILD_TYPE STREQUAL "DEBUG") message("Compiler flags: ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_DEBUG}") else() message("Compiler flags: ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_RELEASE}") endif() +message("Exe flags: ${CMAKE_EXE_LINKER_FLAGS}") + if(Boost_FOUND) message("Boost: ${Boost_LIB_VERSION} in ${Boost_INCLUDE_DIRS}, lib ${Boost_LIBRARY_DIRS}") else() message("Boost: Using CMake-fied boost") endif() +if(CMAKE_SYSTEM_NAME STREQUAL "AIX") + set(CMAKE_CXX_ARCHIVE_CREATE " -q -c ${CMAKE_STATIC_LINKER_FLAGS} -o ") +endif() include_directories(${PROJECT_SOURCE_DIR})