$OpenBSD: patch-Modules_Qt4Macros_cmake,v 1.1 2010/05/31 06:29:28 dcoppa Exp $
--- Modules/Qt4Macros.cmake.orig	Tue Apr  6 16:45:32 2010
+++ Modules/Qt4Macros.cmake	Sat May 29 14:11:39 2010
@@ -131,6 +131,8 @@ MACRO (QT4_GENERATE_MOC infile outfile )
    GET_FILENAME_COMPONENT(abs_infile ${infile} ABSOLUTE)
    QT4_CREATE_MOC_COMMAND(${abs_infile} ${outfile} "${moc_flags}" "")
    SET_SOURCE_FILES_PROPERTIES(${outfile} PROPERTIES SKIP_AUTOMOC TRUE)  # dont run automoc on this file
+
+   MACRO_ADD_FILE_DEPENDENCIES(${abs_infile} ${outfile})
 ENDMACRO (QT4_GENERATE_MOC)
 
 
@@ -210,9 +212,22 @@ MACRO(QT4_ADD_DBUS_INTERFACE _sources _interface _base
   SET(_impl   ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.cpp)
   SET(_moc    ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.moc)
 
-  # handling more arguments (as in FindQt4.cmake from KDE4) will come soon, then
-  # _params will be used for more than just -m
-  SET(_params -m)
+  GET_SOURCE_FILE_PROPERTY(_nonamespace ${_interface} NO_NAMESPACE)
+  IF ( _nonamespace )
+      SET(_params -N -m)
+  ELSE ( _nonamespace )
+      SET(_params -m)
+  ENDIF ( _nonamespace )
+
+  GET_SOURCE_FILE_PROPERTY(_classname ${_interface} CLASSNAME)
+  IF ( _classname )
+      SET(_params ${_params} -c ${_classname})
+  ENDIF ( _classname )
+
+  GET_SOURCE_FILE_PROPERTY(_include ${_interface} INCLUDE)
+  IF ( _include )
+      SET(_params ${_params} -i ${_include})
+  ENDIF ( _include )
 
   ADD_CUSTOM_COMMAND(OUTPUT ${_impl} ${_header}
       COMMAND ${QT_DBUSXML2CPP_EXECUTABLE} ${_params} -p ${_basename} ${_infile}
