aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Neundorf <neundorf@kde.org>2006-04-26 20:34:40 +0000
committerAlexander Neundorf <neundorf@kde.org>2006-04-26 20:34:40 +0000
commit6a3973d0089eb03cf6b56d8cded6441d55a7db1c (patch)
tree34aa9fc0a75b62ca51223a6daafcbeae22329cd8
parent3862d6ce313b4525242c859645ad13b1047054af (diff)
downloadextra-cmake-modules-6a3973d0089eb03cf6b56d8cded6441d55a7db1c.tar.gz
extra-cmake-modules-6a3973d0089eb03cf6b56d8cded6441d55a7db1c.tar.bz2
-move the test for a compiler flag into an own generic cmake module: CheckCXXCompilerFlag.cmake
-add a comment about removing CheckTypeSize.cmake once we require cmake 2.4.1 Alex svn path=/trunk/KDE/kdelibs/; revision=534314
-rw-r--r--modules/CheckCXXCompilerFlag.cmake16
-rw-r--r--modules/CheckTypeSize.cmake2
-rw-r--r--modules/FindKDE4Internal.cmake9
3 files changed, 21 insertions, 6 deletions
diff --git a/modules/CheckCXXCompilerFlag.cmake b/modules/CheckCXXCompilerFlag.cmake
new file mode 100644
index 00000000..74af207b
--- /dev/null
+++ b/modules/CheckCXXCompilerFlag.cmake
@@ -0,0 +1,16 @@
+# - Check whether the compiler supports a given flag.
+# CHECK_CXX_COMPILER_FLAG(FLAG VARIABLE)
+#
+# FLAG - the compiler flag
+# VARIABLE - variable to store the result
+#
+
+INCLUDE(CheckCXXSourceCompiles)
+
+MACRO (CHECK_CXX_COMPILER_FLAG _FLAG _RESULT)
+ SET(SAFE_CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS}")
+ SET(CMAKE_REQUIRED_DEFINITIONS "${_FLAG}")
+ CHECK_CXX_SOURCE_COMPILES("int main() { return 0;}" ${_RESULT})
+ SET (CMAKE_REQUIRED_DEFINITIONS "${SAFE_CMAKE_REQUIRED_DEFINITIONS}")
+ENDMACRO (CHECK_CXX_COMPILER_FLAG)
+
diff --git a/modules/CheckTypeSize.cmake b/modules/CheckTypeSize.cmake
index 87de1a76..46288031 100644
--- a/modules/CheckTypeSize.cmake
+++ b/modules/CheckTypeSize.cmake
@@ -4,6 +4,8 @@
# exists, the size will be stored to the variable.
# VARIABLE - variable to store size if the type exists.
# HAVE_${VARIABLE} - does the variable exists or NOT
+#
+# remove once we require cmake 2.4.1
MACRO (CHECK_TYPE_SIZE TYPE VARIABLE)
SET(CMAKE_ALLOW_UNKNOWN_VARIABLE_READ_ACCESS 1)
diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake
index 6a3d31fb..d35dc1d1 100644
--- a/modules/FindKDE4Internal.cmake
+++ b/modules/FindKDE4Internal.cmake
@@ -185,7 +185,7 @@ set(QT_MIN_VERSION "4.1.1")
find_package(Qt4 REQUIRED)
include (MacroLibrary)
-include (CheckCXXSourceCompiles)
+include (CheckCXXCompilerFlag)
#add some KDE specific stuff
@@ -558,13 +558,10 @@ if (CMAKE_COMPILER_IS_GNUCXX)
endif (CMAKE_SYSTEM_NAME MATCHES Linux)
# visibility support
- set (SAFE_CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS}")
- set (CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -fvisibility=hidden")
- CHECK_CXX_SOURCE_COMPILES("int main() { return 0; }" __KDE_HAVE_GCC_VISIBILITY)
+ check_cxx_compiler_flag(-fvisibility=hidden __KDE_HAVE_GCC_VISIBILITY)
if (__KDE_HAVE_GCC_VISIBILITY)
- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
endif (__KDE_HAVE_GCC_VISIBILITY)
- set (CMAKE_REQUIRED_FLAGS "${SAFE_CMAKE_REQUIRED_FLAGS}")
endif (CMAKE_COMPILER_IS_GNUCXX)