CMakeLists.txt 1.58 KB
Newer Older
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
set(libkdecoration2Private_SRCS
    decoratedclientprivate.cpp
    decorationbridge.cpp
    decorationsettingsprivate.cpp
)

add_library(kdecorations2private SHARED ${libkdecoration2Private_SRCS})

generate_export_header(
    kdecorations2private
BASE_NAME
    KDECORATIONS_PRIVATE
EXPORT_FILE_NAME
    kdecoration2/private/kdecoration2_private_export.h
)

add_library(KDecoration2::KDecorationPrivate ALIAS kdecorations2private)

target_link_libraries(kdecorations2private
    PUBLIC
        Qt5::Core
        Qt5::Gui
)

target_include_directories(kdecorations2private INTERFACE "$<INSTALL_INTERFACE:${KDECORATION2_INCLUDEDIR}>" )

set_target_properties(kdecorations2private PROPERTIES VERSION   ${KDECORATION2_VERSION_STRING}
28
                                                      SOVERSION 7
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
                                                      EXPORT_NAME KDecoration2Private
)

ecm_generate_headers(KDecoration2Private_CamelCase_HEADERS
  HEADER_NAMES
    DecoratedClientPrivate
    DecorationBridge
    DecorationSettingsPrivate
  PREFIX
    KDecoration2/Private
  REQUIRED_HEADERS KDecoration2Private_HEADERS
)
install(FILES ${KDecoration2Private_CamelCase_HEADERS}
        DESTINATION ${KDECORATION2_INCLUDEDIR}/KDecoration2/Private
        COMPONENT Devel)

install(TARGETS kdecorations2private EXPORT KDecoration2Targets ${KF5_INSTALL_TARGETS_DEFAULT_ARGS})

install(
    FILES
49
        ${CMAKE_CURRENT_BINARY_DIR}/kdecoration2/private/kdecoration2_private_export.h
50
51
52
53
54
55
        ${KDecoration2Private_HEADERS}
    DESTINATION
        ${KDECORATION2_INCLUDEDIR}/kdecoration2/private
    COMPONENT
        Devel
)