project(googletasksresource)

set(TASKS_RESOURCE_VERSION 0.1)

cmake_minimum_required(VERSION 2.8)

add_definitions(-DRESOURCE_VERSION="\\"${TASKS_RESOURCE_VERSION}\\"")
if (XSLTPROC_EXECUTABLE)
  macro(kcfg_generate_dbus_interface _kcfg _name)
    add_custom_command(
      OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_name}.xml
      COMMAND ${XSLTPROC_EXECUTABLE} --stringparam interfaceName ${_name}
	      ${KDEPIMLIBS_DATA_DIR}/akonadi-kde/kcfg2dbus.xsl
	      ${_kcfg}
	      > ${CMAKE_CURRENT_BINARY_DIR}/${_name}.xml
      DEPENDS ${KDEPIMLIBS_DATA_DIR}/akonadi-kde/kcfg2dbus.xsl
	      ${_kcfg}
  )
  endmacro(kcfg_generate_dbus_interface)
endif (XSLTPROC_EXECUTABLE)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${KDE4_ENABLE_EXCEPTIONS}" )

set(tasksresource_SRCS
    tasksresource.cpp
    settings.cpp
    settingsdialog.cpp 
)

kde4_add_ui_files(tasksresource_SRCS settingsdialog.ui)
kde4_add_kcfg_files(tasksresource_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/settingsbase.kcfgc)
kcfg_generate_dbus_interface(${CMAKE_CURRENT_SOURCE_DIR}/settingsbase.kcfg org.kde.Akonadi.GoogleTasks.Settings)
qt4_add_dbus_adaptor(tasksresource_SRCS
		     ${CMAKE_CURRENT_BINARY_DIR}/org.kde.Akonadi.GoogleTasks.Settings.xml 
		     ${CMAKE_CURRENT_SOURCE_DIR}/settings.h Settings)
kde4_add_executable(akonadi_googletasks_resource RUN_UNINSTALLED ${tasksresource_SRCS})

target_link_libraries(akonadi_googletasks_resource
		      ${KDEPIMLIBS_AKONADI_LIBS}
                      ${KCALENDAR_LIBRARIES}
		      ${KDEPIMLIBS_KMIME_LIBS}
		      ${QT_QTCORE_LIBRARY}
		      ${QT_QTGUI_LIBRARY}
		      ${QT_QTDBUS_LIBRARY}
		      ${QT_QTNETWORK_LIBRARY}
		      ${KDE4_KDECORE_LIBS}
		      ${KDE4_KDEWEBKIT_LIBS}
		      ${QJSON_LIBRARIES}
		      kgoogle
)

install(TARGETS akonadi_googletasks_resource ${INSTALL_TARGETS_DEFAULT_ARGS})
install(FILES googletasksresource.desktop DESTINATION "${CMAKE_INSTALL_PREFIX}/share/akonadi/agents" )
