Warning, /utilities/kclock/src/kclockd/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 # 0002 # Copyright 2020 Han Young <hanyoung@protonmail.com> 0003 # Copyright 2020 Devin Lin <espidev@gmail.com> 0004 # 0005 # SPDX-License-Identifier: GPL-2.0-or-later 0006 # 0007 0008 set(kclockd_SRCS 0009 utilities.cpp 0010 utilities.h 0011 alarm.cpp 0012 alarm.h 0013 alarmmodel.cpp 0014 alarmmodel.h 0015 alarmwaitworker.cpp 0016 alarmwaitworker.h 0017 alarmplayer.cpp 0018 alarmplayer.h 0019 timermodel.cpp 0020 timermodel.h 0021 timer.cpp 0022 timer.h 0023 xdgportal.cpp 0024 xdgportal.h 0025 ) 0026 # generate KConfig class from xml 0027 kconfig_add_kcfg_files(kclockd_SRCS kclockdsettings.kcfgc GENERATE_MOC) 0028 0029 # use generated KConfig header file to generate DBus adaptor xml 0030 set(kclockd_SRCS 0031 ${kclockd_SRCS} 0032 ${CMAKE_CURRENT_BINARY_DIR}/org.kde.kclockd.KClockSettings.xml 0033 ) 0034 0035 qt_generate_dbus_interface( 0036 ${CMAKE_CURRENT_BINARY_DIR}/kclockdsettings.h 0037 org.kde.kclockd.KClockSettings.xml 0038 OPTIONS -S -P 0039 ) 0040 qt_generate_dbus_interface( 0041 ${CMAKE_CURRENT_SOURCE_DIR}/alarm.h 0042 org.kde.kclockd.Alarm.xml 0043 OPTIONS -s -m -P 0044 ) 0045 qt_generate_dbus_interface( 0046 ${CMAKE_CURRENT_SOURCE_DIR}/alarmmodel.h 0047 org.kde.kclockd.AlarmModel.xml 0048 OPTIONS -s -m 0049 ) 0050 qt_generate_dbus_interface( 0051 ${CMAKE_CURRENT_SOURCE_DIR}/timermodel.h 0052 org.kde.kclockd.TimerModel.xml 0053 OPTIONS -s -m -p 0054 ) 0055 0056 qt_generate_dbus_interface( 0057 ${CMAKE_CURRENT_SOURCE_DIR}/timer.h 0058 org.kde.kclockd.Timer.xml 0059 OPTIONS -s -m -P 0060 ) 0061 0062 qt_generate_dbus_interface( 0063 ${CMAKE_CURRENT_SOURCE_DIR}/utilities.h 0064 org.kde.kclockd.Utility.xml 0065 OPTIONS -s -m -P 0066 ) 0067 # use generated DBus adapator xml to generate adaptor source code 0068 qt_add_dbus_adaptor(kclockd_SRCS ${CMAKE_CURRENT_BINARY_DIR}/org.kde.kclockd.KClockSettings.xml 0069 ${CMAKE_CURRENT_BINARY_DIR}/kclockdsettings.h KClockSettings) 0070 qt_add_dbus_adaptor(kclockd_SRCS ${CMAKE_CURRENT_BINARY_DIR}/org.kde.kclockd.Alarm.xml 0071 ${CMAKE_CURRENT_SOURCE_DIR}/alarm.h Alarm) 0072 qt_add_dbus_adaptor(kclockd_SRCS ${CMAKE_CURRENT_BINARY_DIR}/org.kde.kclockd.AlarmModel.xml 0073 ${CMAKE_CURRENT_SOURCE_DIR}/alarmmodel.h AlarmModel) 0074 qt_add_dbus_adaptor(kclockd_SRCS ${CMAKE_CURRENT_BINARY_DIR}/org.kde.kclockd.TimerModel.xml 0075 ${CMAKE_CURRENT_SOURCE_DIR}/timermodel.h TimerModel) 0076 qt_add_dbus_adaptor(kclockd_SRCS ${CMAKE_CURRENT_BINARY_DIR}/org.kde.kclockd.Timer.xml 0077 ${CMAKE_CURRENT_SOURCE_DIR}/timer.h Timer) 0078 qt_add_dbus_adaptor(kclockd_SRCS ${CMAKE_CURRENT_BINARY_DIR}/org.kde.kclockd.Utility.xml 0079 ${CMAKE_CURRENT_SOURCE_DIR}/utilities.h Utilities) 0080 0081 qt_add_dbus_interface(kclockd_SRCS systeminterfaces/org.mpris.MediaPlayer2.Player.xml generated/systeminterfaces/mprisplayer) 0082 0083 # install DBus interface xml to dbus interface directory 0084 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/org.kde.kclockd.KClockSettings.xml DESTINATION ${KDE_INSTALL_DBUSINTERFACEDIR}) 0085 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/org.kde.kclockd.Alarm.xml DESTINATION ${KDE_INSTALL_DBUSINTERFACEDIR}) 0086 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/org.kde.kclockd.AlarmModel.xml DESTINATION ${KDE_INSTALL_DBUSINTERFACEDIR}) 0087 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/org.kde.kclockd.TimerModel.xml DESTINATION ${KDE_INSTALL_DBUSINTERFACEDIR}) 0088 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/org.kde.kclockd.Timer.xml DESTINATION ${KDE_INSTALL_DBUSINTERFACEDIR}) 0089 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/org.kde.kclockd.Utility.xml DESTINATION ${KDE_INSTALL_DBUSINTERFACEDIR}) 0090 0091 add_executable(kclockd main.cpp ${kclockd_SRCS} ) 0092 target_link_libraries(kclockd PRIVATE 0093 Qt6::Multimedia 0094 Qt6::Widgets 0095 KF6::I18n 0096 KF6::ConfigCore 0097 KF6::ConfigGui 0098 KF6::CoreAddons 0099 KF6::Notifications 0100 KF6::DBusAddons 0101 KF6::StatusNotifierItem 0102 ) 0103 0104 target_include_directories(kclockd PRIVATE ${CMAKE_BINARY_DIR}) 0105 install(TARGETS kclockd ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})