aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMilian Wolff <mail@milianw.de>2013-07-24 21:43:05 +0200
committerMilian Wolff <mail@milianw.de>2013-07-24 21:43:05 +0200
commit5491963843c633e3b9121c1eabbc1cbf9a45d7fc (patch)
tree42421e6635d507d594f9361f979282ee0a4937d3
parent13cc2f944e9ee5621e22f5f66181b262450d1224 (diff)
downloadextra-cmake-modules-5491963843c633e3b9121c1eabbc1cbf9a45d7fc.tar.gz
extra-cmake-modules-5491963843c633e3b9121c1eabbc1cbf9a45d7fc.tar.bz2
Add Clang support to KDECompilerSettings.cmake
This more or less copies what was done for KDE4 in https://git.reviewboard.kde.org/r/111612/. With the changes applied I successfully installed a hello world application. The linker and compiler command lines seem to be correct and include all extended features. I also checked and debugfull also works as expected (-g3 is added). REVIEW: 111661
-rw-r--r--kde-modules/KDECompilerSettings.cmake9
1 files changed, 6 insertions, 3 deletions
diff --git a/kde-modules/KDECompilerSettings.cmake b/kde-modules/KDECompilerSettings.cmake
index d72bd9e6..4a9f760b 100644
--- a/kde-modules/KDECompilerSettings.cmake
+++ b/kde-modules/KDECompilerSettings.cmake
@@ -149,10 +149,9 @@ if (APPLE)
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common")
endif (APPLE)
-
# TODO: why don't we go inside that block on the BSDs ?
if (CMAKE_SYSTEM_NAME MATCHES Linux OR CMAKE_SYSTEM_NAME STREQUAL GNU)
- if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
+ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
# TODO: does the Intel compiler also support --enable-new-dtags ? ...probably since they are only forwarded to the linker....
set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--enable-new-dtags -Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
set ( CMAKE_MODULE_LINKER_FLAGS "-Wl,--enable-new-dtags -Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_MODULE_LINKER_FLAGS}")
@@ -233,6 +232,10 @@ if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
# set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES
# ${CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES} ${_dirs})
+endif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
+
+
+if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
# TODO: why do the other KDE4_ENABLE_EXCEPTIONS not have -UQT_NO_EXCEPTIONS ?
set (KDE4_ENABLE_EXCEPTIONS "-fexceptions -UQT_NO_EXCEPTIONS")
# Select flags.
@@ -288,7 +291,7 @@ if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
endif()
endif()
-endif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
+endif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel")