add_definitions( -DQT_BUILD_DBUS_LIB -DDBUS_API_SUBJECT_TO_CHANGE ) set(EXTRA_DBUS_LIBS KtCore KtXml ${DBUS_LIBRARIES}) set(DBUS_PUBLIC_HEADERS ${DBUS_PUBLIC_HEADERS} QDBusAbstractAdaptor QDBusAbstractInterface QDBusArgument QDBusConnection QDBusConnectionInterface QDBusContext QDBusError QDBusInterface QDBusMessage QDBusMetaType QDBusPendingCall QDBusPendingReply QDBusReply QDBusServer QDBusServiceWatcher QDBusUnixFileDescriptor QDBusVirtualObject # mixed QDBusObjectPath QDBusPendingCallWatcher ) set(DBUS_HEADERS ${DBUS_HEADERS} ${CMAKE_CURRENT_SOURCE_DIR}/qdbusargument.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusconnectioninterface.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusmacros.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbuserror.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusextratypes.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusmessage.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusserver.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusconnection.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusabstractinterface.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusinterface.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusabstractadaptor.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusreply.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusmetatype.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbuspendingcall.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbuspendingreply.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbuscontext.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusvirtualobject.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusconnection_p.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusmessage_p.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusinterface_p.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusxmlparser_p.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusabstractadaptor_p.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusargument_p.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusutil_p.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusabstractinterface_p.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbuscontext_p.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusthreaddebug_p.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusintegrator_p.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbuspendingcall_p.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbus_symbols_p.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusmetaobject_p.h ${CMAKE_CURRENT_SOURCE_DIR}//qdbusintrospection_p.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusservicewatcher.h ${CMAKE_CURRENT_SOURCE_DIR}/qdbusunixfiledescriptor.h ) set(DBUS_SOURCES ${DBUS_SOURCES} ${CMAKE_CURRENT_SOURCE_DIR}/qdbusconnection.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusconnectioninterface.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbuserror.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusintegrator.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusmessage.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusserver.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusabstractinterface.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusinterface.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusxmlparser.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusutil.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusintrospection.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusabstractadaptor.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusinternalfilters.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusmetaobject.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusxmlgenerator.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusmisc.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusargument.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusreply.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusmetatype.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusextratypes.cpp # FIXME: why is this causing mulitple dfinitions? # ${CMAKE_CURRENT_SOURCE_DIR}/qdbusmarshaller.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbuscontext.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbuspendingcall.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbuspendingreply.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusservicewatcher.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusunixfiledescriptor.cpp ${CMAKE_CURRENT_SOURCE_DIR}/qdbusvirtualobject.cpp ) include_directories( ${CMAKE_BINARY_DIR}/include ${CMAKE_BINARY_DIR}/privateinclude ${CMAKE_BINARY_DIR}/include/QtCore ${CMAKE_BINARY_DIR}/privateinclude/QtCore ${CMAKE_BINARY_DIR}/include/QtXml ${CMAKE_BINARY_DIR}/privateinclude/QtXml ${CMAKE_CURRENT_SOURCE_DIR} ${DBUS_INCLUDES} ) if(KATIE_PLATFORM STREQUAL "win32") set(EXTRA_DBUS_LIBS ${EXTRA_DBUS_LIBS} ws2_32 advapi32 netapi32 user32 ) elseif(KATIE_PLATFORM STREQUAL "wince") set(EXTRA_DBUS_LIBS ${EXTRA_DBUS_LIBS} ws2 ) endif() katie_generate_misc("${DBUS_HEADERS}" QtDBus) katie_generate_public("${DBUS_PUBLIC_HEADERS}" QtDBus) katie_generate_map(QtDBus Q_DBUS_EXPORT) katie_resources(${DBUS_SOURCES} ${DBUS_HEADERS}) katie_setup_flags() add_library(KtDBus ${KATIE_TYPE} ${DBUS_SOURCES} ${DBUS_HEADERS}) target_link_libraries(KtDBus ${EXTRA_DBUS_LIBS}) set_target_properties(KtDBus PROPERTIES VERSION ${KATIE_MAJOR}.${KATIE_MINOR} SOVERSION ${KATIE_VERSION} EXPORT_NAME DBus ) katie_generate_package(KtDBus "" "${EXTRA_DBUS_LIBS}" "KtCore KtXml") install( TARGETS KtDBus EXPORT KatieLibraryTargets ${INSTALL_TARGETS_DEFAULT_ARGS} DESTINATION ${QT_LIBRARIES_PATH_INST} ) install( DIRECTORY ${CMAKE_BINARY_DIR}/include/QtDBus DESTINATION ${QT_HEADERS_PATH_INST} COMPONENT Devel ) katie_optimize_headers(${QT_HEADERS_PATH}/QtDBus)