Enable building with Clang in Linux

This commit is contained in:
Carles Fernandez 2017-08-07 11:08:05 +02:00
parent 7bb3581f4b
commit 3dd3c2f444
4 changed files with 18 additions and 8 deletions

View File

@ -1351,11 +1351,16 @@ endif(ENABLE_GPROF)
if(CMAKE_COMPILER_IS_GNUCXX AND NOT WIN32)
set(MY_CXX_FLAGS "${MY_CXX_FLAGS} -std=c++11 -Wall -Wextra") #Add warning flags: For "-Wall" see http://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html
endif(CMAKE_COMPILER_IS_GNUCXX AND NOT WIN32)
# Enable C++11 support in Clang and use lib++ if working in macOS
if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
set(MY_CXX_FLAGS "${MY_CXX_FLAGS} -std=c++11 -stdlib=libc++")
set(MY_CXX_FLAGS "${MY_CXX_FLAGS} -std=c++11")
if(CMAKE_BUILD_TYPE MATCHES "Release")
set(MY_CXX_FLAGS "${MY_CXX_FLAGS} -Wno-unused-private-field")
endif(CMAKE_BUILD_TYPE MATCHES "Release")
if(OS_IS_MACOSX)
set(MY_CXX_FLAGS "${MY_CXX_FLAGS} -stdlib=libc++")
endif(OS_IS_MACOSX)
endif(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
# Processor-architecture related flags

View File

@ -34,11 +34,14 @@ include_directories(
${Boost_INCLUDE_DIRS}
)
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
set(Clang_required_link "c++")
elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
set(Clang_required_link "")
endif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
set(Clang_required_link "")
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
set(Clang_required_link "c++")
endif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
endif(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
if(ORC_FOUND)
set(orc_lib ${ORC_LIBRARIES})

View File

@ -71,7 +71,7 @@ add_definitions( -DGNSS_SDR_VERSION="${VERSION}" )
if(OS_IS_MACOSX)
if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
set(MAC_LIBRARIES "-stdlib=libc++ -std=c++11 -framework Accelerate -lc++")
set(MAC_LIBRARIES "-framework Accelerate -lc++")
endif(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
endif(OS_IS_MACOSX)

View File

@ -141,7 +141,9 @@ if(OPENSSL_FOUND)
endif(OPENSSL_FOUND)
if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
set(CLANG_FLAGS "-stdlib=libc++ -std=c++11 -lc++")
if(OS_IS_MACOSX)
set(CLANG_FLAGS "-stdlib=libc++ -lc++")
endif(OS_IS_MACOSX)
endif(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
if(OPENCL_FOUND)