kwin/effects/invert/CMakeLists.txt
Martin Gräßlin f9e0a8b597 [kwin] Create one plugin per effect configuration
There are no advantages for the effects KCM to have all the effect
config modules in one plugin.

By having a plugin per effect we can use the KPluginTrader to easily
find the configuration plugin for a given effect and load it.

To make this possible the following changes are done:
* config_builtins.cpp is deleted
* add_subdirectory is used for all effects which have a config module
* toplevel CMakeLists.txt contains the sources again for the effects
  which have a config module, but effects which don't have a config
  module are still included and thus the macro is still used
* plugin created for the config module, name pattern is:
   kwin_effectname_config
* plugin installed to ${PLUGIN_INSTALL_DIR}/kwin/effects/configs
* desktop file adjusted to new plugin name and keyword removed
* desktop file converted to json as meta data and no longer installed
* Uses K_PLUGIN_FACTORY_WITH_JSON
* Macros for config are dropped from kwineffects.h

REVIEW: 116854
2014-03-25 15:37:35 +01:00

39 lines
857 B
CMake

#######################################
# Effect
# .desktop files
install( FILES
invert.desktop
DESTINATION ${SERVICES_INSTALL_DIR}/kwin )
# Data files
install( FILES
data/1.10/invert.frag
DESTINATION ${DATA_INSTALL_DIR}/kwin/shaders/1.10 )
install( FILES
data/1.40/invert.frag
DESTINATION ${DATA_INSTALL_DIR}/kwin/shaders/1.40 )
#######################################
# Config
set(kwin_invert_config_SRCS invert_config.cpp)
add_library(kwin_invert_config MODULE ${kwin_invert_config_SRCS})
target_link_libraries(kwin_invert_config
kwineffects
KF5::ConfigWidgets
KF5::GlobalAccel
KF5::I18n
KF5::Service
KF5::XmlGui
)
kservice_desktop_to_json(kwin_invert_config invert_config.desktop)
install(
TARGETS
kwin_invert_config
DESTINATION
${PLUGIN_INSTALL_DIR}/kwin/effects/configs
)