diff options
author | Volker Krause <vkrause@kde.org> | 2006-04-15 11:03:59 +0000 |
---|---|---|
committer | Volker Krause <vkrause@kde.org> | 2006-04-15 11:03:59 +0000 |
commit | 6904aff03eefeb4cef1ba5f64c30e2eae17d22c6 (patch) | |
tree | de3972712d39772772ff1b42db7274d2fee272ee | |
parent | 5b62e3d0bc6fae79042adf3cf7f6b94612020adc (diff) | |
download | extra-cmake-modules-6904aff03eefeb4cef1ba5f64c30e2eae17d22c6.tar.gz extra-cmake-modules-6904aff03eefeb4cef1ba5f64c30e2eae17d22c6.tar.bz2 |
Add makekdewidgets macro.
svn path=/trunk/KDE/kdelibs/; revision=530095
-rw-r--r-- | modules/FindKDE4Internal.cmake | 4 | ||||
-rw-r--r-- | modules/KDE4Macros.cmake | 26 |
2 files changed, 30 insertions, 0 deletions
diff --git a/modules/FindKDE4Internal.cmake b/modules/FindKDE4Internal.cmake index 0458bf98..a2f957a3 100644 --- a/modules/FindKDE4Internal.cmake +++ b/modules/FindKDE4Internal.cmake @@ -110,6 +110,10 @@ # KDE4_ADD_KCFG_FILES (SRCS_VAR file1.kcfgc ... fileN.kcfgc) # Use this to add KDE config compiler files to your application/library. # +# KDE4_ADD_WIDGET_FILES (SRCS_VAR file1.widgets ... fileN.widgets) +# Use this to add widget description files for the makekdewidgets code generator +# for Qt Designer plugins. +# # KDE4_AUTOMOC(file1 ... fileN) # Call this if you want to have automatic moc file handling. # This means if you include "foo.moc" in the source file foo.cpp diff --git a/modules/KDE4Macros.cmake b/modules/KDE4Macros.cmake index 716d6379..96c64b9d 100644 --- a/modules/KDE4Macros.cmake +++ b/modules/KDE4Macros.cmake @@ -11,6 +11,7 @@ # KDE4_CREATE_FINAL_FILES # KDE4_ADD_KDEINIT_EXECUTABLE # KDE4_ADD_EXECUTABLE +# KDE4_ADD_WIDGET_FILES #neundorf@kde.org @@ -554,3 +555,28 @@ ENDMACRO (KDE4_ADD_LIBRARY _target_NAME _lib_TYPE) MACRO (KDE4_CREATE_DOXYGEN_DOCS) ENDMACRO (KDE4_CREATE_DOXYGEN_DOCS) + +MACRO (KDE4_ADD_WIDGET_FILES _sources) + FOREACH (_current_FILE ${ARGN}) + + GET_FILENAME_COMPONENT(_input ${_current_FILE} ABSOLUTE) + GET_FILENAME_COMPONENT(_basename ${_input} NAME_WE) + SET(_source ${CMAKE_CURRENT_BINARY_DIR}/${_basename}widgets.cpp) + SET(_moc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}widgets.moc) + + # create source file from the .widgets file + ADD_CUSTOM_COMMAND(OUTPUT ${_source} + COMMAND ${KDE4_MAKEKDEWIDGETS_EXECUTABLE} + ARGS -o ${_source} ${_input} + MAIN_DEPENDENCY ${_input}) + + # create moc file + QT4_GENERATE_MOC(${_source} ${_moc} ) + MACRO_ADD_FILE_DEPENDENCIES(${_source} ${_moc}) + + SET(${_sources} ${${_sources}} ${_source}) + + ENDFOREACH (_current_FILE) + +ENDMACRO (KDE4_ADD_WIDGET_FILES) + |