summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Neundorf <neundorf@kde.org>2009-05-12 19:11:16 (GMT)
committerAlexander Neundorf <neundorf@kde.org>2009-05-12 19:11:16 (GMT)
commitea8c04a4f89c0e86e58fae3b5b746fd5a067d566 (patch)
treea59f4af1cdb474c85bffccc06e3e3562f883ea7c
parentc28926de5d5c3cf40a98a89af31f742d5502663b (diff)
downloadCMake-ea8c04a4f89c0e86e58fae3b5b746fd5a067d566.zip
CMake-ea8c04a4f89c0e86e58fae3b5b746fd5a067d566.tar.gz
CMake-ea8c04a4f89c0e86e58fae3b5b746fd5a067d566.tar.bz2
STYLE: rename the files from CMake<GENERATOR>.cmake to
CMakeFind<GENERATOR>.cmake, so it is more consistent e.g. with CMakeFindXcode.cmake Alex
-rw-r--r--Modules/CMakeFindCodeBlocks.cmake9
-rw-r--r--Modules/CMakeFindEclipseCDT4.cmake39
-rw-r--r--Modules/CMakeFindKDevelop3.cmake9
-rw-r--r--Modules/CMakeLists.txt2
-rw-r--r--Modules/CMakeSystemSpecificInformation.cmake4
5 files changed, 60 insertions, 3 deletions
diff --git a/Modules/CMakeFindCodeBlocks.cmake b/Modules/CMakeFindCodeBlocks.cmake
new file mode 100644
index 0000000..8f54b75
--- /dev/null
+++ b/Modules/CMakeFindCodeBlocks.cmake
@@ -0,0 +1,9 @@
+# This file is included in CMakeSystemSpecificInformation.cmake if
+# the CodeBlocks extra generator has been selected.
+
+FIND_PROGRAM(CMAKE_CODEBLOCKS_EXECUTABLE NAMES codeblocks DOC "The CodeBlocks executable")
+
+IF(CMAKE_CODEBLOCKS_EXECUTABLE)
+ SET(CMAKE_OPEN_PROJECT_COMMAND "${CMAKE_CODEBLOCKS_EXECUTABLE} <PROJECT_FILE>" )
+ENDIF(CMAKE_CODEBLOCKS_EXECUTABLE)
+
diff --git a/Modules/CMakeFindEclipseCDT4.cmake b/Modules/CMakeFindEclipseCDT4.cmake
new file mode 100644
index 0000000..db466fc
--- /dev/null
+++ b/Modules/CMakeFindEclipseCDT4.cmake
@@ -0,0 +1,39 @@
+# This file is included in CMakeSystemSpecificInformation.cmake if
+# the Eclipse CDT4 extra generator has been selected.
+
+FIND_PROGRAM(CMAKE_ECLIPSE_EXECUTABLE NAMES eclipse DOC "The Eclipse executable")
+
+
+# The Eclipse generator needs to know the standard include path
+# so that Eclipse ca find the headers at runtime and parsing etc. works better
+# This is done here by actually running gcc with the options so it prints its
+# system include directories, which are parsed then and stored in the cache.
+MACRO(_DETERMINE_GCC_SYSTEM_INCLUDE_DIRS _lang _result)
+ SET(${_result})
+ SET(_gccOutput)
+ FILE(WRITE "${CMAKE_BINARY_DIR}/CMakeFiles/dummy" "\n" )
+ EXECUTE_PROCESS(COMMAND ${CMAKE_C_COMPILER} -v -E -x ${_lang} dummy
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/CMakeFiles
+ ERROR_VARIABLE _gccOutput
+ OUTPUT_QUIET )
+ FILE(REMOVE "${CMAKE_BINARY_DIR}/CMakeFiles/dummy")
+
+ IF( "${_gccOutput}" MATCHES "> search starts here[^\n]+\n *(.+) *\n *End of (search) list" )
+ SET(${_result} ${CMAKE_MATCH_1})
+ STRING(REPLACE "\n" " " ${_result} "${${_result}}")
+ SEPARATE_ARGUMENTS(${_result})
+ ENDIF( "${_gccOutput}" MATCHES "> search starts here[^\n]+\n *(.+) *\n *End of (search) list" )
+ENDMACRO(_DETERMINE_GCC_SYSTEM_INCLUDE_DIRS _lang)
+
+# Now check for C
+IF ("${CMAKE_C_COMPILER_ID}" MATCHES GNU AND NOT CMAKE_ECLIPSE_C_SYSTEM_INCLUDE_DIRS)
+ _DETERMINE_GCC_SYSTEM_INCLUDE_DIRS(c _dirs)
+ SET(CMAKE_ECLIPSE_C_SYSTEM_INCLUDE_DIRS "${_dirs}" CACHE INTERNAL "C compiler system include directories")
+ENDIF ("${CMAKE_C_COMPILER_ID}" MATCHES GNU AND NOT CMAKE_ECLIPSE_C_SYSTEM_INCLUDE_DIRS)
+
+# And now the same for C++
+IF ("${CMAKE_CXX_COMPILER_ID}" MATCHES GNU AND NOT CMAKE_ECLIPSE_CXX_SYSTEM_INCLUDE_DIRS)
+ _DETERMINE_GCC_SYSTEM_INCLUDE_DIRS(c++ _dirs)
+ SET(CMAKE_ECLIPSE_CXX_SYSTEM_INCLUDE_DIRS "${_dirs}" CACHE INTERNAL "CXX compiler system include directories")
+ENDIF ("${CMAKE_CXX_COMPILER_ID}" MATCHES GNU AND NOT CMAKE_ECLIPSE_CXX_SYSTEM_INCLUDE_DIRS)
+
diff --git a/Modules/CMakeFindKDevelop3.cmake b/Modules/CMakeFindKDevelop3.cmake
new file mode 100644
index 0000000..32f39c2
--- /dev/null
+++ b/Modules/CMakeFindKDevelop3.cmake
@@ -0,0 +1,9 @@
+# This file is included in CMakeSystemSpecificInformation.cmake if
+# the KDevelop3 extra generator has been selected.
+
+FIND_PROGRAM(CMAKE_KDEVELOP3_EXECUTABLE NAMES kdevelop DOC "The KDevelop3 executable")
+
+IF(CMAKE_KDEVELOP3_EXECUTABLE)
+ SET(CMAKE_OPEN_PROJECT_COMMAND "${CMAKE_KDEVELOP3_EXECUTABLE} <PROJECT_FILE>" )
+ENDIF(CMAKE_KDEVELOP3_EXECUTABLE)
+
diff --git a/Modules/CMakeLists.txt b/Modules/CMakeLists.txt
index 4ce6118..312da06 100644
--- a/Modules/CMakeLists.txt
+++ b/Modules/CMakeLists.txt
@@ -1,5 +1,5 @@
# just install the modules
-# new file added, force rerunning cmake
+## new file added, force rerunning cmake
SUBDIRS(Platform)
INSTALL_FILES(${CMAKE_DATA_DIR}/Modules .*\\.cmake$)
diff --git a/Modules/CMakeSystemSpecificInformation.cmake b/Modules/CMakeSystemSpecificInformation.cmake
index 5aa83b3..e7a4e6c 100644
--- a/Modules/CMakeSystemSpecificInformation.cmake
+++ b/Modules/CMakeSystemSpecificInformation.cmake
@@ -36,10 +36,10 @@ ENDIF(NOT _INCLUDED_SYSTEM_INFO_FILE)
# optionally include a file which can do extra-generator specific things, e.g.
-# CMakeEclipseCDT4.cmake asks gcc for the system include dirs for the Eclipse CDT4 generator
+# CMakeFindEclipseCDT4.cmake asks gcc for the system include dirs for the Eclipse CDT4 generator
IF(CMAKE_EXTRA_GENERATOR)
STRING(REPLACE " " "" _CMAKE_EXTRA_GENERATOR_NO_SPACES ${CMAKE_EXTRA_GENERATOR} )
- INCLUDE("CMake${_CMAKE_EXTRA_GENERATOR_NO_SPACES}" OPTIONAL)
+ INCLUDE("CMakeFind${_CMAKE_EXTRA_GENERATOR_NO_SPACES}" OPTIONAL)
ENDIF(CMAKE_EXTRA_GENERATOR)