mirror of
https://github.com/nextcloud/desktop.git
synced 2024-11-24 14:05:58 +03:00
1361c3053a
Get rid of a bunch of such warnings from configuring the Dolphin plugin: CMake Deprecation Warning at /usr/share/ECM/kde-modules/KDEInstallDirs.cmake:345 (message): BIN_INSTALL_DIR is deprecated, use KDE_INSTALL_BINDIR instead. Call Stack (most recent call first): /usr/share/ECM/kde-modules/KDEInstallDirs.cmake:433 (_define_relative) shell_integration/dolphin/CMakeLists.txt:23 (include) Modified from https://github.com/owncloud/client/pull/6922 Original author: Dominik Schmidt <dev@dominik-schmidt.de>
60 lines
2.8 KiB
CMake
60 lines
2.8 KiB
CMake
project(dolphin-owncloud)
|
|
|
|
cmake_minimum_required(VERSION 2.8.12)
|
|
include(FeatureSummary)
|
|
set(QT_MIN_VERSION "5.3.0")
|
|
set(KF5_MIN_VERSION "5.16.0")
|
|
set(KDE_INSTALL_USE_QT_SYS_PATHS ON CACHE BOOL "Install the plugin in the right directory")
|
|
|
|
find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS Core Network)
|
|
|
|
find_package(ECM 1.2.0 REQUIRED CONFIG)
|
|
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
|
|
|
|
find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS CoreAddons KIO)
|
|
|
|
set_package_properties(DolphinVcs PROPERTIES
|
|
DESCRIPTION "the Dolphin plugin library"
|
|
URL "http://dolphin.kde.org/"
|
|
TYPE REQUIRED
|
|
PURPOSE "Provides plugin interfaces for Dolphin."
|
|
)
|
|
|
|
set(KDE_INSTALL_DIRS_NO_DEPRECATED TRUE)
|
|
include(KDEInstallDirs)
|
|
# Before KF5 5.54, kcoreaddons_add_plugin uses deprecated VAR PLUGIN_INSTALL_DIR
|
|
# when that is fixed and you want to remove this workaround,
|
|
# you need to _require_ the new enough kcoreaddons
|
|
set(PLUGIN_INSTALL_DIR "${KDE_INSTALL_PLUGINDIR}")
|
|
include(KDECMakeSettings)
|
|
include(KDECompilerSettings)
|
|
include(ECMMarkNonGuiExecutable)
|
|
include(GenerateExportHeader)
|
|
|
|
include_directories(${CMAKE_CURRENT_BINARY_DIR})
|
|
add_definitions(-DQT_USE_FAST_CONCATENATION -DQT_USE_FAST_OPERATOR_PLUS)
|
|
|
|
if (NOT DEFINED APPLICATION_EXECUTABLE )
|
|
set ( APPLICATION_EXECUTABLE "owncloud" )
|
|
endif()
|
|
|
|
#---HELPER---
|
|
set(OWNCLOUDDOLPHINHELPER ${APPLICATION_EXECUTABLE}dolphinpluginhelper)
|
|
add_library(${OWNCLOUDDOLPHINHELPER} SHARED ownclouddolphinpluginhelper.cpp)
|
|
target_link_libraries(${OWNCLOUDDOLPHINHELPER} Qt5::Network)
|
|
generate_export_header(${OWNCLOUDDOLPHINHELPER} BASE_NAME ownclouddolphinpluginhelper)
|
|
install(TARGETS ${OWNCLOUDDOLPHINHELPER} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
|
|
|
#---OVERLAY PLUGIN---
|
|
set(OWNCLOUDDOLPHINOVERLAYPLUGIN ${APPLICATION_EXECUTABLE}dolphinoverlayplugin)
|
|
kcoreaddons_add_plugin(${OWNCLOUDDOLPHINOVERLAYPLUGIN} INSTALL_NAMESPACE "kf5/overlayicon"
|
|
JSON ownclouddolphinoverlayplugin.json SOURCES ownclouddolphinoverlayplugin.cpp)
|
|
target_link_libraries(${OWNCLOUDDOLPHINOVERLAYPLUGIN} KF5::CoreAddons KF5::KIOCore KF5::KIOWidgets ${OWNCLOUDDOLPHINHELPER})
|
|
|
|
#---ACTION PLUGIN---
|
|
set(OWNCLOUDDOLPHINACTIONPLUGIN ${APPLICATION_EXECUTABLE}dolphinactionplugin)
|
|
add_library(${OWNCLOUDDOLPHINACTIONPLUGIN} MODULE ownclouddolphinactionplugin.cpp)
|
|
target_link_libraries(${OWNCLOUDDOLPHINACTIONPLUGIN} KF5::CoreAddons KF5::KIOCore KF5::KIOWidgets ${OWNCLOUDDOLPHINHELPER})
|
|
configure_file(ownclouddolphinactionplugin.desktop.in ${OWNCLOUDDOLPHINACTIONPLUGIN}.desktop ESCAPE_QUOTES @ONLY)
|
|
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${OWNCLOUDDOLPHINACTIONPLUGIN}.desktop DESTINATION ${KDE_INSTALL_KSERVICES5DIR})
|
|
install(TARGETS ${OWNCLOUDDOLPHINACTIONPLUGIN} DESTINATION ${KDE_INSTALL_PLUGINDIR})
|