1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123
|
set(PROJECT lxqt-panel)
# Window Manager backends
add_subdirectory(backends)
set(PRIV_HEADERS
panelpluginsmodel.h
windownotifier.h
lxqtpanel.h
lxqtpanelapplication.h
lxqtpanelapplication_p.h
lxqtpanellayout.h
plugin.h
pluginsettings_p.h
lxqtpanellimits.h
popupmenu.h
pluginmoveprocessor.h
lxqtpanelpluginconfigdialog.h
config/configpaneldialog.h
config/configplacement.h
config/configstyling.h
config/configpluginswidget.h
config/addplugindialog.h
)
# using LXQt namespace in the public headers.
set(PUB_HEADERS
lxqtpanelglobals.h
pluginsettings.h
ilxqtpanelplugin.h
ilxqtpanel.h
)
set(SOURCES
main.cpp
panelpluginsmodel.cpp
windownotifier.cpp
lxqtpanel.cpp
lxqtpanelapplication.cpp
lxqtpanellayout.cpp
plugin.cpp
pluginsettings.cpp
popupmenu.cpp
pluginmoveprocessor.cpp
lxqtpanelpluginconfigdialog.cpp
config/configpaneldialog.cpp
config/configplacement.cpp
config/configstyling.cpp
config/configpluginswidget.cpp
config/addplugindialog.cpp
)
set(UI
config/configplacement.ui
config/configstyling.ui
config/configpluginswidget.ui
config/addplugindialog.ui
)
set(LIBRARIES
lxqt
)
file(GLOB CONFIG_FILES resources/*.conf)
############################################
add_definitions(-DCOMPILE_LXQT_PANEL)
set(PLUGIN_DESKTOPS_DIR "${CMAKE_INSTALL_FULL_DATAROOTDIR}/lxqt/${PROJECT}")
add_definitions(-DPLUGIN_DESKTOPS_DIR=\"${PLUGIN_DESKTOPS_DIR}\")
if (WITH_SCREENSAVER_FALLBACK)
message(STATUS "Building with conversion of deprecated 'screensaver' plugin")
add_definitions(-DWITH_SCREENSAVER_FALLBACK "-DLXQT_LOCK_DESKTOP=\"${CMAKE_INSTALL_FULL_DATAROOTDIR}/applications/lxqt-lockscreen.desktop\"")
endif ()
project(${PROJECT})
set(QTX_LIBRARIES Qt6::Widgets Qt6::Xml Qt6::DBus)
# Translations
lxqt_translate_ts(QM_FILES SOURCES
UPDATE_TRANSLATIONS
${UPDATE_TRANSLATIONS}
SOURCES
${PUB_HEADERS}
${PRIV_HEADERS}
${SOURCES}
${UI}
INSTALL_DIR
"${LXQT_TRANSLATIONS_DIR}/${PROJECT_NAME}"
)
lxqt_app_translation_loader(SOURCES ${PROJECT_NAME})
add_executable(${PROJECT}
${PUB_HEADERS}
${PRIV_HEADERS}
${QM_FILES}
${SOURCES}
${UI}
)
target_link_libraries(${PROJECT}
${LIBRARIES}
${QTX_LIBRARIES}
KF6::WindowSystem
LayerShellQt::Interface
${STATIC_PLUGINS}
lxqt-panel-backend-common
)
set_property(TARGET ${PROJECT} PROPERTY ENABLE_EXPORTS TRUE)
install(TARGETS ${PROJECT} RUNTIME DESTINATION bin)
install(FILES ${CONFIG_FILES} DESTINATION ${CMAKE_INSTALL_DATADIR}/lxqt)
install(FILES ${PUB_HEADERS} DESTINATION include/lxqt)
install(FILES
man/lxqt-panel.1
DESTINATION "${CMAKE_INSTALL_MANDIR}/man1"
COMPONENT Runtime
)
|