aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/FindKDE4.cmake19
-rw-r--r--modules/KDE4Macros.cmake21
-rw-r--r--modules/MacroAddFileDependencies.cmake15
-rw-r--r--modules/MacroAdditionalCleanFiles.cmake15
-rw-r--r--modules/MacroAppendDirectoryProperties.cmake19
-rw-r--r--modules/MacroAppendSourceFilesProperties.cmake21
-rw-r--r--modules/MacroLibrary.cmake6
7 files changed, 57 insertions, 59 deletions
diff --git a/modules/FindKDE4.cmake b/modules/FindKDE4.cmake
index 1c897998..e8dda0a9 100644
--- a/modules/FindKDE4.cmake
+++ b/modules/FindKDE4.cmake
@@ -93,8 +93,10 @@ IF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h)
SET(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH})
SET(KDE4_KALYPTUS_DIR ${CMAKE_SOURCE_DIR}/dcop/dcopidlng/ )
- SET(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/dcopidl2cpp )
- SET(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/kconfig_compiler )
+
+ # CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC
+ SET(KDE4_DCOPIDL2CPP_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/dcopidl2cpp )
+ SET(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler )
ELSE(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h)
@@ -150,10 +152,13 @@ ELSE(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h)
ENDIF(EXISTS ${CMAKE_SOURCE_DIR}/kdecore/kglobal.h)
-# this will move into Windows-cl.cmake
-IF(WIN32 AND CMAKE_C_COMPILER MATCHES "cl\\.exe")
- SET(MSVC TRUE)
-ENDIF(WIN32 AND CMAKE_C_COMPILER MATCHES "cl\\.exe")
+# this is already in cmake cvs and can be removed once we require it
+IF (WIN32)
+ GET_FILENAME_COMPONENT(_tmp_COMPILER_NAME ${CMAKE_CXX_COMPILER} NAME_WE)
+ IF ( _tmp_COMPILER_NAME MATCHES cl )
+ SET(MSVC TRUE)
+ ENDIF ( _tmp_COMPILER_NAME MATCHES cl )
+ENDIF (WIN32)
##################### and now the platform specific stuff ############################
@@ -167,6 +172,8 @@ ENDIF(UNIX AND NOT APPLE)
IF (WIN32)
+
+
IF(CYGWIN)
MESSAGE(FATAL_ERROR "Support for Cygwin not yet implemented, please edit FindKDE4.cmake to enable it")
ENDIF(CYGWIN)
diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake
index 68d45bad..34a528d2 100644
--- a/modules/KDE4Macros.cmake
+++ b/modules/KDE4Macros.cmake
@@ -61,9 +61,9 @@ MACRO(KDE4_ADD_DCOP_SKELS _sources)
ADD_CUSTOM_COMMAND(OUTPUT ${_skel}
COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE}
ARGS --c++-suffix cpp --no-signals --no-stub ${_kidl}
- DEPENDS ${_kidl}
- )
- MACRO_APPEND_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ${_skel_H})
+ DEPENDS ${_kidl} dcopidl2cpp )
+
+ MACRO_ADDITIONAL_CLEAN_FILES( ${_skel_H})
ENDIF (NOT HAVE_${_basename}_SKEL_RULE)
@@ -101,9 +101,9 @@ MACRO(KDE4_ADD_DCOP_STUBS _sources)
ADD_CUSTOM_COMMAND(OUTPUT ${_stub_CPP}
COMMAND ${KDE4_DCOPIDL2CPP_EXECUTABLE}
ARGS --c++-suffix cpp --no-signals --no-skel ${_kidl}
- DEPENDS ${_kidl}
- )
- MACRO_APPEND_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ${_stub_H})
+ DEPENDS ${_kidl} dcopidl2cpp )
+
+ MACRO_ADDITIONAL_CLEAN_FILES( ${_stub_H})
ENDIF (NOT HAVE_${_basename}_STUB_RULE)
@@ -130,7 +130,7 @@ MACRO(KDE4_ADD_KCFG_FILES _sources)
ADD_CUSTOM_COMMAND(OUTPUT ${_src_FILE}
COMMAND ${KDE4_KCFGC_EXECUTABLE}
ARGS ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} ${_tmp_FILE}
- DEPENDS ${_tmp_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} )
+ DEPENDS ${_tmp_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/${_kcfg_FILE} kconfig_compiler )
SET(${_sources} ${${_sources}} ${_src_FILE})
@@ -280,8 +280,7 @@ MACRO(KDE4_AUTOMOC)
DEPENDS ${_header}
)
-# KDE4_ADD_FILE_DEPENDANCY(${_tmp_FILE} ${_moc})
- MACRO_APPEND_SOURCE_FILES_PROPERTIES(${_tmp_FILE} PROPERTIES OBJECT_DEPENDS ${_moc} )
+ MACRO_ADD_FILE_DEPENDENCIES(${_tmp_FILE} ${_moc})
ENDFOREACH (_current_MOC_INC)
ENDIF(_match)
@@ -402,7 +401,7 @@ MACRO(KDE4_CREATE_LIBTOOL_FILE _target _subdir)
FILE(APPEND ${_laname} "libdir='${CMAKE_INSTALL_PREFIX}/${KDE4_LIB_INSTALL_DIR}/${_subdir}'\n")
INSTALL_FILES(${KDE4_LIB_INSTALL_DIR}/${_subdir} FILES ${_laname})
- MACRO_APPEND_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ${_laname})
+ MACRO_ADDITIONAL_CLEAN_FILES( ${_laname})
ENDMACRO(KDE4_CREATE_LIBTOOL_FILE)
@@ -455,7 +454,7 @@ ENDMACRO(KDE4_ADD_PLUGIN _target_NAME _with_PREFIX)
MACRO(KDE4_ADD_KDEINIT_EXECUTABLE _target_NAME )
CONFIGURE_FILE(${KDE4_MODULE_DIR}/kde4init_dummy.cpp.in ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp)
- MACRO_APPEND_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp )
+ MACRO_ADDITIONAL_CLEAN_FILES( ${CMAKE_CURRENT_BINARY_DIR}/${_target_NAME}_dummy.cpp )
# IF (WIN32)
# # under windows, just build a normal executable
diff --git a/modules/MacroAddFileDependencies.cmake b/modules/MacroAddFileDependencies.cmake
new file mode 100644
index 00000000..e263c6b8
--- /dev/null
+++ b/modules/MacroAddFileDependencies.cmake
@@ -0,0 +1,15 @@
+# - MACRO_ADD_FILE_DEPENDENCIES(<_file> depend_files...)
+# MACRO_OPTIONAL_FIND_PACKAGE( <name> [QUIT] )
+
+MACRO(MACRO_ADD_FILE_DEPENDENCIES _file)
+
+ GET_SOURCE_FILE_PROPERTY(_deps ${_file} OBJECT_DEPENDS)
+ IF (_deps)
+ SET(_deps ${_deps} ${ARGN})
+ ELSE (_deps)
+ SET(_deps ${ARGN})
+ ENDIF (_deps)
+
+ SET_SOURCE_FILES_PROPERTIES(${_file} PROPERTIES OBJECT_DEPENDS "${_deps}")
+
+ENDMACRO(MACRO_ADD_FILE_DEPENDENCIES)
diff --git a/modules/MacroAdditionalCleanFiles.cmake b/modules/MacroAdditionalCleanFiles.cmake
new file mode 100644
index 00000000..a3d930dc
--- /dev/null
+++ b/modules/MacroAdditionalCleanFiles.cmake
@@ -0,0 +1,15 @@
+# - MACRO_ADDITIONAL_CLEAN_FILES(files...)
+# MACRO_OPTIONAL_FIND_PACKAGE( <name> [QUIT] )
+
+MACRO(MACRO_ADDITIONAL_CLEAN_FILES)
+ GET_DIRECTORY_PROPERTY(_tmp_DIR_PROPS ADDITIONAL_MAKE_CLEAN_FILES )
+
+ IF (_tmp_DIR_PROPS)
+ SET(_tmp_DIR_PROPS ${_tmp_DIR_PROPS} ${ARGN})
+ ELSE (_tmp_DIR_PROPS)
+ SET(_tmp_DIR_PROPS ${ARGN})
+ ENDIF (_tmp_DIR_PROPS)
+
+ SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${_tmp_DIR_PROPS}")
+ENDMACRO(MACRO_ADDITIONAL_CLEAN_FILES)
+
diff --git a/modules/MacroAppendDirectoryProperties.cmake b/modules/MacroAppendDirectoryProperties.cmake
deleted file mode 100644
index 2fed5a55..00000000
--- a/modules/MacroAppendDirectoryProperties.cmake
+++ /dev/null
@@ -1,19 +0,0 @@
-# - MACRO_APPEND_DIRECTORY_PROPERTIES(PROPERTIES key values...)
-# MACRO_OPTIONAL_FIND_PACKAGE( <name> [QUIT] )
-
-MACRO(MACRO_APPEND_DIRECTORY_PROPERTIES _properties _property)
- GET_DIRECTORY_PROPERTY(_tmp_DIR_PROPS ${_property} )
- IF (NOT _tmp_DIR_PROPS)
- SET(_tmp_DIR_PROPS)
- ENDIF (NOT _tmp_DIR_PROPS)
- FOREACH(_value ${ARGN})
- IF (_tmp_DIR_PROPS)
- SET(_tmp_DIR_PROPS ${_tmp_DIR_PROPS} ${_value})
- ELSE (_tmp_DIR_PROPS)
- SET(_tmp_DIR_PROPS ${_value})
- ENDIF (_tmp_DIR_PROPS)
- ENDFOREACH(_value ${ARGN})
-
- SET_DIRECTORY_PROPERTIES(${_properties} ${_property} "${_tmp_DIR_PROPS}")
-ENDMACRO(MACRO_APPEND_DIRECTORY_PROPERTIES)
-
diff --git a/modules/MacroAppendSourceFilesProperties.cmake b/modules/MacroAppendSourceFilesProperties.cmake
deleted file mode 100644
index 4d387e20..00000000
--- a/modules/MacroAppendSourceFilesProperties.cmake
+++ /dev/null
@@ -1,21 +0,0 @@
-# - MACRO_APPEND_SOURCE_FILES_PROPERTIES(<file> PROPERTIES key values...)
-# MACRO_OPTIONAL_FIND_PACKAGE( <name> [QUIT] )
-
-MACRO(MACRO_APPEND_SOURCE_FILES_PROPERTIES _file _properties _property)
- GET_SOURCE_FILE_PROPERTY(_tmp_FILE_PROPS ${_file} ${_property})
-
- IF (NOT _tmp_FILE_PROPS) # make sure it's empty not e.g. "NOTFOUND" or "FALSE"
- SET(_tmp_FILE_PROPS)
- ENDIF (NOT _tmp_FILE_PROPS)
-
- FOREACH(_value ${ARGN})
- IF (_tmp_FILE_PROPS)
- SET(_tmp_FILE_PROPS ${_tmp_FILE_PROPS} ${_value})
- ELSE (_tmp_FILE_PROPS)
- SET(_tmp_FILE_PROPS ${_value})
- ENDIF (_tmp_FILE_PROPS)
- ENDFOREACH(_value ${ARGN})
-
- SET_SOURCE_FILES_PROPERTIES(${_file} ${_properties} ${_property} "${_tmp_FILE_PROPS}")
-ENDMACRO(MACRO_APPEND_SOURCE_FILES_PROPERTIES)
-
diff --git a/modules/MacroLibrary.cmake b/modules/MacroLibrary.cmake
index 337a1087..f82a5db8 100644
--- a/modules/MacroLibrary.cmake
+++ b/modules/MacroLibrary.cmake
@@ -2,6 +2,8 @@
# OPTIONAL_FIND_PACKAGE( <name> [QUIT] )
INCLUDE (MacroOptionalFindPackage)
-INCLUDE (MacroAppendDirectoryProperties)
-INCLUDE (MacroAppendSourceFilesProperties)
+INCLUDE (MacroAdditionalCleanFiles)
+INCLUDE (MacroAddFileDependencies)
+#INCLUDE (MacroAppendDirectoryProperties)
+#INCLUDE (MacroAppendSourceFilesProperties)