Also use formerly gcc-only flags with clang: https://github.com/pothosware/SoapyRTLSDR/commit/448c9d0d326c2600905b7ce84222ff9d72ba2189 --- CMakeLists.txt.orig +++ CMakeLists.txt @@ -1,7 +1,7 @@ ######################################################################## # Build Soapy SDR support module for RTL-SDR Devices ######################################################################## -cmake_minimum_required(VERSION 2.8.7) +cmake_minimum_required(VERSION 2.8.12) project(SoapyRTLSDR CXX) find_package(SoapySDR "0.4.0" NO_MODULE REQUIRED) @@ -22,7 +22,7 @@ include_directories(${RTLSDR_INCLUDE_DIRS}) #enable c++11 features -if(CMAKE_COMPILER_IS_GNUCXX) +if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang") #C++11 is a required language feature for this project include(CheckCXXCompilerFlag) @@ -37,9 +37,8 @@ list(APPEND RTLSDR_LIBRARIES -pthread) #disable warnings for unused parameters - add_definitions(-Wno-unused-parameter) - -endif(CMAKE_COMPILER_IS_GNUCXX) + add_compile_options(-Wall -Wextra -Wno-unused-parameter) +endif() if (APPLE) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wc++11-extensions")