3ce4cee203
The indicator can show the KCM, which uses QML now Make sure we have the right style set on all platforms
67 lines
2.7 KiB
CMake
67 lines
2.7 KiB
CMake
add_definitions(-DTRANSLATION_DOMAIN=\"kdeconnect-indicator\")
|
|
|
|
qt_add_resources(kdeconnect_custom_icons_SRCS ${CMAKE_SOURCE_DIR}/icons/custom_icons.qrc)
|
|
|
|
set(indicator_SRCS
|
|
main.cpp
|
|
deviceindicator.cpp
|
|
${kdeconnect_custom_icons_SRCS}
|
|
${CMAKE_CURRENT_SOURCE_DIR}/systray_actions/battery_action.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/systray_actions/connectivity_action.cpp
|
|
)
|
|
|
|
include(ECMAddAppIcon)
|
|
|
|
ecm_add_app_icon(indicator_SRCS ICONS
|
|
${CMAKE_SOURCE_DIR}/icons/app/sc-apps-kdeconnect.svg
|
|
${CMAKE_SOURCE_DIR}/icons/app/16-apps-kdeconnect.png
|
|
${CMAKE_SOURCE_DIR}/icons/app/24-apps-kdeconnect.png
|
|
${CMAKE_SOURCE_DIR}/icons/app/32-apps-kdeconnect.png
|
|
${CMAKE_SOURCE_DIR}/icons/app/48-apps-kdeconnect.png
|
|
${CMAKE_SOURCE_DIR}/icons/app/64-apps-kdeconnect.png
|
|
${CMAKE_SOURCE_DIR}/icons/app/128-apps-kdeconnect.png
|
|
${CMAKE_SOURCE_DIR}/icons/app/256-apps-kdeconnect.png
|
|
${CMAKE_SOURCE_DIR}/icons/app/1024-apps-kdeconnect.png
|
|
)
|
|
|
|
if (WIN32)
|
|
list(APPEND indicator_SRCS indicatorhelper_win.cpp)
|
|
elseif (APPLE)
|
|
list(APPEND indicator_SRCS indicatorhelper_mac.cpp serviceregister_mac.mm)
|
|
else ()
|
|
list(APPEND indicator_SRCS indicatorhelper.cpp)
|
|
endif()
|
|
|
|
add_executable(kdeconnect-indicator ${indicator_SRCS})
|
|
|
|
ecm_qt_declare_logging_category(kdeconnect-indicator
|
|
HEADER indicator_debug.h
|
|
IDENTIFIER KDECONNECT_INDICATOR CATEGORY_NAME kdeconnect.indicator
|
|
DEFAULT_SEVERITY Warning
|
|
EXPORT kdeconnect-kde DESCRIPTION "kdeconnect (indicator)")
|
|
|
|
|
|
target_include_directories(kdeconnect-indicator PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/systray_actions)
|
|
|
|
target_link_libraries(kdeconnect-indicator Qt::Widgets Qt::QuickControls2 KF6::CoreAddons KF6::I18n KF6::Notifications KF6::DBusAddons KF6::KCMUtils KF6::Crash kdeconnectinterfaces kdeconnectcore kdeconnectversion)
|
|
|
|
if (WIN32)
|
|
target_link_libraries(kdeconnect-indicator windowsapp)
|
|
else()
|
|
target_link_libraries(kdeconnect-indicator KF6::StatusNotifierItem)
|
|
endif()
|
|
|
|
if (APPLE)
|
|
# Apple frameworks
|
|
target_link_libraries(kdeconnect-indicator "-framework AppKit")
|
|
# Apple app package
|
|
set_target_properties(kdeconnect-indicator PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist)
|
|
set_target_properties(kdeconnect-indicator PROPERTIES
|
|
MACOSX_BUNDLE_BUNDLE_NAME "KDE Connect"
|
|
MACOSX_BUNDLE_LONG_VERSION_STRING "${KDECONNECT_VERSION_STRING}"
|
|
MACOSX_BUNDLE_SHORT_VERSION_STRING "${KDECONNECT_VERSION_MAJOR}.${KDECONNECT_VERSION_MINOR}.${KDECONNECT_VERSION_PATCH}"
|
|
MACOSX_BUNDLE_GUI_IDENTIFIER "org.kde.kdeconnect")
|
|
endif()
|
|
|
|
install(TARGETS kdeconnect-indicator ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
|
|
install(PROGRAMS org.kde.kdeconnect.nonplasma.desktop DESTINATION ${KDE_INSTALL_APPDIR})
|