diff options
-rw-r--r-- | modules/FindKDE4.cmake | 19 | ||||
-rw-r--r-- | modules/KDE4Macros.cmake | 21 | ||||
-rw-r--r-- | modules/MacroAddFileDependencies.cmake | 15 | ||||
-rw-r--r-- | modules/MacroAdditionalCleanFiles.cmake | 15 | ||||
-rw-r--r-- | modules/MacroAppendDirectoryProperties.cmake | 19 | ||||
-rw-r--r-- | modules/MacroAppendSourceFilesProperties.cmake | 21 | ||||
-rw-r--r-- | modules/MacroLibrary.cmake | 6 |
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) |