diff --git a/CMakeLists.txt b/CMakeLists.txt index 4d3dd0c6c38..9f644900723 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -152,6 +152,14 @@ if(WIN32) set(_gRPC_PLATFORM_WINDOWS ON) endif() + # Use C99 standard +set(CMAKE_C_STANDARD 99) + +# Add c++11 flags +set(CMAKE_CXX_STANDARD 11) +set(CMAKE_CXX_STANDARD_REQUIRED ON) +set(CMAKE_CXX_EXTENSIONS OFF) + set(CMAKE_POSITION_INDEPENDENT_CODE TRUE) set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules") @@ -201,11 +209,6 @@ include(cmake/ssl.cmake) include(cmake/upb.cmake) include(cmake/zlib.cmake) -if(NOT MSVC) - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") -endif() - if(_gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_IOS) set(_gRPC_ALLTARGETS_LIBRARIES ${CMAKE_DL_LIBS} m pthread) elseif(_gRPC_PLATFORM_ANDROID) diff --git a/templates/CMakeLists.txt.template b/templates/CMakeLists.txt.template index b5b1ae30811..1a5c81f5357 100644 --- a/templates/CMakeLists.txt.template +++ b/templates/CMakeLists.txt.template @@ -242,6 +242,14 @@ set(_gRPC_PLATFORM_WINDOWS ON) endif() + # Use C99 standard + set(CMAKE_C_STANDARD 99) + + # Add c++11 flags + set(CMAKE_CXX_STANDARD 11) + set(CMAKE_CXX_STANDARD_REQUIRED ON) + set(CMAKE_CXX_EXTENSIONS OFF) + ## Some libraries are shared even with BUILD_SHARED_LIBRARIES=OFF set(CMAKE_POSITION_INDEPENDENT_CODE TRUE) set(CMAKE_MODULE_PATH "<%text>${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules") @@ -292,11 +300,6 @@ include(cmake/upb.cmake) include(cmake/zlib.cmake) - if(NOT MSVC) - set(CMAKE_C_FLAGS "<%text>${CMAKE_C_FLAGS} -std=c99") - set(CMAKE_CXX_FLAGS "<%text>${CMAKE_CXX_FLAGS} -std=c++11") - endif() - if(_gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_IOS) set(_gRPC_ALLTARGETS_LIBRARIES <%text>${CMAKE_DL_LIBS} m pthread) elseif(_gRPC_PLATFORM_ANDROID)