You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
102 lines
2.6 KiB
102 lines
2.6 KiB
project(plasmashell) |
|
|
|
|
|
# Tell CMake to run moc when necessary: |
|
set(CMAKE_AUTOMOC ON) |
|
# As moc files are generated in the binary dir, tell CMake |
|
# to always look for includes there: |
|
set(CMAKE_INCLUDE_CURRENT_DIR ON) |
|
|
|
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH}) |
|
|
|
find_package(Qt5Qml REQUIRED) |
|
find_package(Qt5Quick REQUIRED) |
|
find_package(Qt5DBus REQUIRED) |
|
find_package(Qt5Script REQUIRED) |
|
find_package(KF5CoreAddons REQUIRED) |
|
find_package(KF5Crash REQUIRED) |
|
find_package(KF5Solid REQUIRED) |
|
find_package(KF5Activities REQUIRED) |
|
find_package(KF5DBusAddons ${KF5_MIN_VERSION} REQUIRED) |
|
find_package(KF5Declarative ${KF5_MIN_VERSION} REQUIRED) |
|
|
|
configure_file(config-ktexteditor.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-ktexteditor.h ) |
|
|
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config-plasma.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-plasma.h) |
|
|
|
set(scripting_SRC |
|
scripting/appinterface.cpp |
|
scripting/applet.cpp |
|
scripting/containment.cpp |
|
scripting/configgroup.cpp |
|
scripting/i18n.cpp |
|
scripting/panel.cpp |
|
scripting/rect.cpp |
|
scripting/scriptengine.cpp |
|
scripting/widget.cpp |
|
) |
|
|
|
set(plasmashell_dbusXML dbus/org.kde.PlasmaShell.xml) |
|
qt5_add_dbus_adaptor(scripting_SRC ${plasmashell_dbusXML} shellcorona.h ShellCorona plasmashelladaptor) |
|
|
|
set (plasma_shell_SRCS |
|
activity.cpp |
|
alternativeshelper.cpp |
|
main.cpp |
|
containmentconfigview.cpp |
|
currentcontainmentactionsmodel.cpp |
|
desktopview.cpp |
|
kidenticongenerator.cpp |
|
panelview.cpp |
|
panelconfigview.cpp |
|
panelshadows.cpp |
|
shellcorona.cpp |
|
shellmanager.cpp |
|
osd.cpp |
|
${scripting_SRC} |
|
) |
|
|
|
set(krunner_xml ${plasma-workspace_SOURCE_DIR}/krunner/dbus/org.kde.krunner.App.xml) |
|
qt5_add_dbus_interface(plasma_shell_SRCS ${krunner_xml} krunner_interface) |
|
|
|
add_executable(plasmashell |
|
${plasma_shell_SRCS} |
|
) |
|
|
|
target_link_libraries(plasmashell |
|
Qt5::Quick |
|
Qt5::DBus |
|
KF5::KIOCore |
|
KF5::WindowSystem |
|
KF5::Crash |
|
KF5::Plasma |
|
KF5::PlasmaQuick |
|
Qt5::Script |
|
KF5::Solid |
|
KF5::Declarative |
|
KF5::I18n |
|
KF5::IconThemes |
|
KF5::Activities |
|
KF5::GlobalAccel |
|
KF5::DBusAddons |
|
KF5::Screen |
|
KF5::Declarative |
|
KF5::XmlGui |
|
) |
|
target_include_directories(plasmashell PRIVATE "${CMAKE_BINARY_DIR}") |
|
|
|
if(HAVE_X11) |
|
target_link_libraries(plasmashell ${X11_LIBRARIES} XCB::XCB ) |
|
target_link_libraries(plasmashell Qt5::X11Extras) |
|
endif() |
|
|
|
install(TARGETS plasmashell ${INSTALL_TARGETS_DEFAULT_ARGS}) |
|
install(FILES plasmashell.desktop DESTINATION ${AUTOSTART_INSTALL_DIR}) |
|
install( FILES dbus/org.kde.PlasmaShell.xml DESTINATION ${DBUS_INTERFACES_INSTALL_DIR} ) |
|
|
|
install(FILES |
|
scripting/plasma-layout-template.desktop |
|
DESTINATION ${SERVICETYPES_INSTALL_DIR}) |
|
|
|
add_subdirectory(packageplugins) |
|
|
|
|