FIND_PROGRAM(DBUS_BINDING_TOOL dbus-binding-tool) IF(DBUS_BINDING_TOOL-NOTFOUND) MESSAGE(FATAL_ERROR "Could not find dbus-binding-tool!") ENDIF(DBUS_BINDING_TOOL-NOTFOUND) ADD_CUSTOM_COMMAND(OUTPUT dbus-server-bindings.h COMMAND ${DBUS_BINDING_TOOL} --prefix=server --mode=glib-server --output=dbus-server-bindings.h ${PROJECT_SOURCE_DIR}/src/dbus/dbus-interface.xml DEPENDS dbus-interface.xml COMMENT "Executing dbus-binding-tool: Generating dbus-server-bindings.h" VERBATIM) ADD_CUSTOM_COMMAND(OUTPUT dbus-client-bindings.h COMMAND ${DBUS_BINDING_TOOL} --prefix=server --mode=glib-client --output=dbus-client-bindings.h ${PROJECT_SOURCE_DIR}/src/dbus/dbus-interface.xml DEPENDS dbus-interface.xml COMMENT "Executing dbus-binding-tool: Generating dbus-client-bindings.h" VERBATIM) ADD_CUSTOM_TARGET(dbus-bindings ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/dbus-server-bindings.h ${CMAKE_CURRENT_BINARY_DIR}/dbus-client-bindings.h) INCLUDE_DIRECTORIES(${GLIB2_INCLUDE_DIRS} ${DBUS_INCLUDE_DIRS} ${GTHREAD2_INCLUDE_DIRS} ${CMAKE_CURRENT_BINARY_DIR}) ADD_LIBRARY(desktopnova-dbus STATIC dbus-server.c)