diff --git a/kmail/CMakeLists.txt b/kmail/CMakeLists.txt index d3c1d7a7..ad653b82 100644 --- a/kmail/CMakeLists.txt +++ b/kmail/CMakeLists.txt @@ -129,6 +129,24 @@ install( FILES DESTINATION ${DATA_INSTALL_DIR}/kmail/plugins/bodypartformatter ) +##### helper #################################### + +macro( process_kcfg _who _out _path _kcfg _kcfgc ) + add_custom_command( OUTPUT ${CMAKE_BINARY_DIR}/${_path}/${_out} + COMMAND + mkdir -p ${CMAKE_BINARY_DIR}/${_path} + COMMAND ${KDE3_KCFGC_EXECUTABLE} + -d ${CMAKE_BINARY_DIR}/${_path} + ${CMAKE_SOURCE_DIR}/${_path}/${_kcfg} + ${CMAKE_SOURCE_DIR}/${_path}/${_kcfgc} + DEPENDS + ${CMAKE_SOURCE_DIR}/${_path}/${_kcfg} + ${CMAKE_SOURCE_DIR}/${_path}/${_kcfgc} ) + set_property( SOURCE ${_who} APPEND + PROPERTY OBJECT_DEPENDS ${CMAKE_BINARY_DIR}/${_path}/${_out} ) +endmacro() + + ##### kmailprivate (shared) ##################### set( target kmailprivate ) @@ -188,12 +206,23 @@ set( KDE3_DCOPIDL_EXECUTABLE ${KDE3_DCOPIDLNG_EXECUTABLE} ) kde3_add_dcop_skels( ${target}_SRCS kmailIface.h kmailicalIface.h ) tde_restore( KDE3_DCOPIDL_EXECUTABLE ) +process_kcfg( globalsettings.h globalsettings_base.h kmail + kmail.kcfg globalsettings_base.kcfgc ) + +add_custom_target( kmail_settings_base + DEPENDS + ${CMAKE_BINARY_DIR}/kmail/globalsettings_base.h + ${CMAKE_BINARY_DIR}/kmail/customtemplates_base.h + ${CMAKE_BINARY_DIR}/kmail/templatesconfiguration_base.h +) + tde_add_library( ${target} SHARED AUTOMOC SOURCES ${${target}_SRCS} LINK emailfunctions-static kmime-shared kpgp-shared tdepim-shared kpimidentities-shared mimelib-shared ksieve-shared tdehtml-shared ${INDEX_LIBRARY} DESTINATION ${LIB_INSTALL_DIR} + DEPENDENCIES kmail_settings_base ) diff --git a/kontact/plugins/kmail/CMakeLists.txt b/kontact/plugins/kmail/CMakeLists.txt index ef3fa84b..e65a4d88 100644 --- a/kontact/plugins/kmail/CMakeLists.txt +++ b/kontact/plugins/kmail/CMakeLists.txt @@ -35,47 +35,9 @@ install( FILES kcmkmailsummary.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) install( FILES kmailplugin.desktop DESTINATION ${SERVICES_INSTALL_DIR}/kontact ) -##### helper #################################### - -macro( process_kcfg _who _out _path _kcfg _kcfgc ) - add_custom_command( OUTPUT ${CMAKE_BINARY_DIR}/${_path}/${_out} - COMMAND - mkdir -p ${CMAKE_BINARY_DIR}/${_path} - COMMAND ${KDE3_KCFGC_EXECUTABLE} - -d ${CMAKE_BINARY_DIR}/${_path} - ${CMAKE_SOURCE_DIR}/${_path}/${_kcfg} - ${CMAKE_SOURCE_DIR}/${_path}/${_kcfgc} - DEPENDS - ${CMAKE_SOURCE_DIR}/${_path}/${_kcfg} - ${CMAKE_SOURCE_DIR}/${_path}/${_kcfgc} ) - set_property( SOURCE ${_who} APPEND - PROPERTY OBJECT_DEPENDS ${CMAKE_BINARY_DIR}/${_path}/${_out} ) -endmacro() - - ##### libkontact_kmailplugin (module) ########### -set( KDE3_DCOPIDL_EXECUTABLE ${KDE3_DCOPIDLNG_EXECUTABLE} ) - -process_kcfg( kmail_plugin.cpp globalsettings_base.h kmail - kmail.kcfg globalsettings_base.kcfgc ) - -add_custom_command( OUTPUT ${CMAKE_BINARY_DIR}/kmail/templatesconfiguration_base.h - WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/kmail - COMMAND ${CMAKE_COMMAND} - -DUIC_EXECUTABLE:FILEPATH=${UIC_EXECUTABLE} - -DTQT_REPLACE_SCRIPT:FILEPATH=${TQT_REPLACE_SCRIPT} - -DTDE_QTPLUGINS_DIR:FILEPATH=${TDE_QTPLUGINS_DIR} - -DUI_FILE:FILEPATH=${CMAKE_SOURCE_DIR}/kmail/templatesconfiguration_base.ui - -DMASTER_SOURCE_DIR:FILEPATH=${CMAKE_SOURCE_DIR} - -DMASTER_BINARY_DIR:FILEPATH=${CMAKE_BINARY_DIR} - -P ${CMAKE_MODULE_PATH}/tde_uic.cmake - DEPENDS - ${CMAKE_BINARY_DIR}/kmail/globalsettings_base.h - ${CMAKE_SOURCE_DIR}/kmail/templatesconfiguration_base.ui ) - -set_property( SOURCE kmail_plugin.cpp APPEND - PROPERTY OBJECT_DEPENDS ${CMAKE_BINARY_DIR}/kmail/templatesconfiguration_base.h ) +tde_save_and_set( KDE3_DCOPIDL_EXECUTABLE ${KDE3_DCOPIDLNG_EXECUTABLE} ) tde_add_kpart( libkontact_kmailplugin AUTOMOC SOURCES @@ -83,8 +45,11 @@ tde_add_kpart( libkontact_kmailplugin AUTOMOC ${CMAKE_SOURCE_DIR}/kmail/kmailIface.stub LINK kpinterfaces-shared DESTINATION ${PLUGIN_INSTALL_DIR} + DEPENDENCIES kmail_settings_base ) +tde_restore( KDE3_DCOPIDL_EXECUTABLE ) + ##### kcm_kmailsummary (module) #################