Warning, /plasma/oxygen/liboxygen/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 add_definitions(-DTRANSLATION_DOMAIN=\"liboxygenstyleconfig\")
0002
0003 ################# configuration #################
0004 configure_file(config-liboxygen.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-liboxygen.h)
0005
0006 ################# liboxygenstyle #################
0007 set(oxygenstyle_LIB_SRCS
0008 oxygenanimation.cpp
0009 oxygenhelper.cpp
0010 oxygenitemmodel.cpp
0011 oxygenshadowcache.cpp
0012 oxygentileset.cpp)
0013
0014 kconfig_add_kcfg_files(oxygenstyle_LIB_SRCS
0015 oxygenactiveshadowconfiguration.kcfgc
0016 oxygeninactiveshadowconfiguration.kcfgc
0017 )
0018
0019 add_library(oxygenstyle${QT_MAJOR_VERSION} ${oxygenstyle_LIB_SRCS})
0020
0021 generate_export_header(oxygenstyle${QT_MAJOR_VERSION} BASE_NAME oxygen EXPORT_FILE_NAME oxygen_export.h)
0022
0023 # NB: although we install no headers, we still need to have a link
0024 # interface, since other Oxygen targets link to this library
0025 target_link_libraries(oxygenstyle${QT_MAJOR_VERSION}
0026 PUBLIC
0027 Qt${QT_MAJOR_VERSION}::Core
0028 Qt${QT_MAJOR_VERSION}::Gui
0029 Qt${QT_MAJOR_VERSION}::Widgets
0030 KF${QT_MAJOR_VERSION}::ConfigCore
0031 KF${QT_MAJOR_VERSION}::ConfigWidgets
0032 KF${QT_MAJOR_VERSION}::WindowSystem
0033 PRIVATE
0034 KF${QT_MAJOR_VERSION}::GuiAddons
0035 )
0036
0037 target_include_directories(oxygenstyle${QT_MAJOR_VERSION} PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>")
0038
0039 if(OXYGEN_HAVE_X11)
0040 target_link_libraries(oxygenstyle${QT_MAJOR_VERSION} PRIVATE XCB::XCB)
0041 if (QT_MAJOR_VERSION EQUAL "5")
0042 target_link_libraries(oxygenstyle5 PRIVATE Qt5::X11Extras)
0043 else()
0044 target_link_libraries(oxygenstyle6 PRIVATE Qt6::GuiPrivate)
0045 endif()
0046 endif()
0047
0048 set_target_properties(oxygenstyle${QT_MAJOR_VERSION} PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION ${PROJECT_VERSION_MAJOR})
0049 if(WIN32)
0050 # As stated in http://msdn.microsoft.com/en-us/library/4hwaceh6.aspx M_PI only gets defined
0051 # when using MSVC if _USE_MATH_DEFINES is defined (this is needed for angle.cpp)
0052 target_compile_definitions(oxygenstyle${QT_MAJOR_VERSION} PRIVATE _USE_MATH_DEFINES _GNU_SOURCE)
0053 endif()
0054 install(TARGETS oxygenstyle${QT_MAJOR_VERSION} ${KDE_INSTALL_TARGETS_DEFAULT_ARGS} LIBRARY NAMELINK_SKIP)
0055
0056 ################# liboxygenstyleconfig #################
0057 set(oxygenstyleconfig_LIB_SRCS
0058 oxygenanimationconfigitem.cpp
0059 oxygenbaseanimationconfigwidget.cpp
0060 oxygengenericanimationconfigitem.cpp
0061 oxygenshadowconfigwidget.cpp
0062 )
0063
0064 set(oxygenstyleconfig_LIB_FORMS
0065 ui/oxygenanimationconfigitem.ui
0066 ui/oxygenanimationconfigwidget.ui
0067 ui/oxygengenericanimationconfigbox.ui
0068 ui/oxygenshadowconfigurationui.ui
0069 )
0070
0071 ki18n_wrap_ui(oxygenstyleconfig_LIB_FORMS_HEADERS ${oxygenstyleconfig_LIB_FORMS})
0072
0073 kconfig_add_kcfg_files(oxygenstyleconfig_LIB_SRCS
0074 oxygenactiveshadowconfiguration.kcfgc
0075 oxygeninactiveshadowconfiguration.kcfgc
0076 )
0077
0078 add_library(oxygenstyleconfig${QT_MAJOR_VERSION} SHARED
0079 ${oxygenstyleconfig_LIB_SRCS}
0080 ${oxygenstyleconfig_LIB_FORMS_HEADERS})
0081
0082 generate_export_header(oxygenstyleconfig${QT_MAJOR_VERSION} BASE_NAME oxygen_config EXPORT_FILE_NAME oxygen_config_export.h)
0083
0084 # NB: although we install no headers, we still need to have a link
0085 # interface, since other Oxygen targets link to this library
0086 target_link_libraries(oxygenstyleconfig${QT_MAJOR_VERSION}
0087 PUBLIC
0088 oxygenstyle${QT_MAJOR_VERSION}
0089 Qt${QT_MAJOR_VERSION}::Core
0090 Qt${QT_MAJOR_VERSION}::Gui
0091 Qt${QT_MAJOR_VERSION}::Widgets
0092 PRIVATE
0093 KF${QT_MAJOR_VERSION}::I18n
0094 )
0095
0096 set_target_properties(oxygenstyleconfig${QT_MAJOR_VERSION} PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION ${PROJECT_VERSION_MAJOR})
0097 install(TARGETS oxygenstyleconfig${QT_MAJOR_VERSION} ${KDE_INSTALL_TARGETS_DEFAULT_ARGS} LIBRARY NAMELINK_SKIP)
0098 # Note: no headers installed