From a7860842f1298087fa25030809c63789aa4421c6 Mon Sep 17 00:00:00 2001 From: Renato Golin Date: Fri, 6 Jul 2012 15:18:32 +0100 Subject: [PATCH] Fix gh-2795, noreturn specific to newer compilers --- cmake_modules/commonSetup.cmake | 11 +++++++++++ tools/start-stop-daemon/CMakeLists.txt | 6 +++++- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/cmake_modules/commonSetup.cmake b/cmake_modules/commonSetup.cmake index 20363e59e79..53a87d51fa6 100644 --- a/cmake_modules/commonSetup.cmake +++ b/cmake_modules/commonSetup.cmake @@ -155,6 +155,9 @@ IF ("${COMMONSETUP_DONE}" STREQUAL "") if ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang") set (CMAKE_COMPILER_IS_CLANGXX 1) endif() + if ("${CMAKE_C_COMPILER_ID}" MATCHES "Clang") + set (CMAKE_COMPILER_IS_CLANG 1) + endif() if (CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_CLANGXX) message ("${CMAKE_CXX_COMPILER_ID}") SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -frtti -fPIC -fmessage-length=0 -Wformat -Wformat-security -Wformat-nonliteral -pthread") @@ -175,6 +178,14 @@ IF ("${COMMONSETUP_DONE}" STREQUAL "") endif () endif () + if (CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_CLANG) + execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion OUTPUT_VARIABLE CMAKE_C_COMPILER_VERSION) + endif () + + if (CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_CLANGXX) + execute_process(COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE CMAKE_CXX_COMPILER_VERSION) + endif () + macro(HPCC_ADD_EXECUTABLE target) add_executable(${target} ${ARGN}) endmacro(HPCC_ADD_EXECUTABLE target) diff --git a/tools/start-stop-daemon/CMakeLists.txt b/tools/start-stop-daemon/CMakeLists.txt index 34f8369170e..77cba8afcf5 100644 --- a/tools/start-stop-daemon/CMakeLists.txt +++ b/tools/start-stop-daemon/CMakeLists.txt @@ -17,7 +17,11 @@ project(start-stop-daemon) -add_definitions( -Wno-noreturn ) +if (CMAKE_COMPILER_IS_GNUCC) + if (CMAKE_C_COMPILER_VERSION VERSION_GREATER 4.1) + add_definitions( -Wno-noreturn ) + endif () +endif () set( SRC start-stop-daemon.c ) set( HEADER macros.h )