
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)

set(kshutdown_SRC
	bookmarks.cpp
	commandline.cpp
	config.cpp
	fileshortcut.cpp
	infowidget.cpp
	kshutdown.cpp
	log.cpp
	main.cpp
	mainwindow.cpp
	mod.cpp
	password.cpp
	plugins.cpp
	preferences.cpp
	progressbar.cpp
	udialog.cpp
	ulabel.cpp
	usystemtray.cpp
	utils.cpp
	actions/bootentry.cpp
	actions/extras.cpp
	actions/lock.cpp
	actions/test.cpp
	actions/unlock.cpp
	triggers/datetime.cpp
	triggers/filemonitor.cpp
	triggers/idlemonitor.cpp
	triggers/processmonitor.cpp
)

add_executable(kshutdown ${kshutdown_SRC} ${kshutdown_MOC_SOURCES} kshutdown.qrc)

set(ks_libs)

list(APPEND ks_libs
	Qt::DBus
	Qt::Widgets
)

if (KF6_FOUND)
	list(APPEND ks_libs
		KF6::ConfigCore
		KF6::ConfigWidgets
		KF6::CoreAddons
		KF6::Crash
		KF6::DBusAddons
		KF6::GlobalAccel
		KF6::I18n
		KF6::IdleTime
		KF6::Notifications
		KF6::NotifyConfig
		KF6::StatusNotifierItem
		KF6::XmlGui
	)
endif()

if (KF5_FOUND)
	list(APPEND ks_libs
		KF5::ConfigCore
		KF5::ConfigWidgets
		KF5::Crash
		KF5::DBusAddons
		KF5::GlobalAccel
		KF5::I18n
		KF5::IdleTime
		KF5::Notifications
		KF5::NotifyConfig
		KF5::XmlGui
	)
endif()

target_link_libraries(kshutdown ${ks_libs})

# TODO: create symlink to "kshutdown-qt" for compat. with Qt5 Build (?)
install(TARGETS kshutdown DESTINATION bin)
install(FILES kshutdown.desktop DESTINATION ${XDG_APPS_INSTALL_DIR})

if(KS_KF5)
	install(FILES kshutdown.notifyrc DESTINATION ${KNOTIFYRC_INSTALL_DIR})
endif()

add_subdirectory(actions)
add_subdirectory(images)
add_subdirectory(triggers)
