Warning, /frameworks/kdeclarative/src/kdeclarative/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 
0002 set(kdeclarative_SRCS
0003     configpropertymap.cpp
0004     configpropertymap.h
0005     kdeclarative.cpp
0006     kdeclarative.h
0007     private/kdeclarative_p.h
0008     qmlobject.cpp
0009     qmlobject.h
0010     qmlobjectsharedengine.cpp
0011     qmlobjectsharedengine.h
0012 
0013 )
0014 if(NOT ANDROID)
0015     list(APPEND kdeclarative_SRCS private/kioaccessmanagerfactory.cpp private/kioaccessmanagerfactory_p.h)
0016 endif()
0017 
0018 add_library(KF5Declarative ${kdeclarative_SRCS})
0019 add_library(KF5::Declarative ALIAS KF5Declarative)
0020 ecm_generate_export_header(KF5Declarative
0021     EXPORT_FILE_NAME ${KDeclarative_BINARY_DIR}/kdeclarative/kdeclarative_export.h
0022     BASE_NAME KDeclarative
0023     GROUP_BASE_NAME KF
0024     VERSION ${KF_VERSION}
0025     DEPRECATED_BASE_VERSION 0
0026     DEPRECATION_VERSIONS 5.0 5.45 5.75 5.91 5.95 5.98 5.100
0027     EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT}
0028 )
0029 
0030 # Apps must include <KDeclarative/File> or <kdeclarative/file.h>
0031 target_include_directories(KF5Declarative INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/KDeclarative>")
0032 
0033 target_link_libraries(KF5Declarative
0034   PUBLIC
0035     KF5::ConfigCore # KCoreConfigSkeleton, in ConfigPropertyMap
0036     Qt${QT_MAJOR_VERSION}::Qml
0037     KF5::Package
0038   PRIVATE
0039     Qt${QT_MAJOR_VERSION}::Quick  #QQuickImageProvider
0040     KF5::I18n       #i18n bindings
0041     KF5::KIOWidgets     #KIO::Integration::AccessManager
0042     KF5::IconThemes #KIconProvider
0043 )
0044 set(KDeclarative_BUILD_INCLUDE_DIRS ${KDeclarative_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR})
0045 target_include_directories(KF5Declarative PUBLIC "$<BUILD_INTERFACE:${KDeclarative_BUILD_INCLUDE_DIRS}>")
0046 
0047 set_target_properties(KF5Declarative
0048   PROPERTIES VERSION ${KDECLARATIVE_VERSION}
0049   SOVERSION ${KDECLARATIVE_SOVERSION}
0050   EXPORT_NAME Declarative
0051 )
0052 
0053 # Install files
0054 ecm_generate_headers(KDeclarative_CamelCase_HEADERS
0055   HEADER_NAMES
0056   KDeclarative
0057   QmlObject
0058   QmlObjectSharedEngine
0059   ConfigPropertyMap
0060 
0061   PREFIX KDeclarative
0062   REQUIRED_HEADERS KDeclarative_HEADERS
0063 )
0064 install(FILES ${KDeclarative_CamelCase_HEADERS} DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KDeclarative/KDeclarative COMPONENT Devel)
0065 
0066 install(TARGETS KF5Declarative
0067   EXPORT KF5DeclarativeTargets
0068   ${KF_INSTALL_TARGETS_DEFAULT_ARGS}
0069 )
0070 
0071 install(FILES
0072   ${KDeclarative_BINARY_DIR}/kdeclarative/kdeclarative_export.h
0073   ${KDeclarative_HEADERS}
0074   DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KDeclarative/kdeclarative
0075   COMPONENT Devel
0076 )
0077 
0078 # make available to ecm_add_qch in parent folder
0079 set(KDeclarative_QCH_SOURCES ${KDeclarative_HEADERS} PARENT_SCOPE)
0080 set(KDeclarative_QCH_INCLUDE_DIRS ${KDeclarative_BUILD_INCLUDE_DIRS} PARENT_SCOPE)
0081 
0082 include(ECMGeneratePriFile)
0083 ecm_generate_pri_file(BASE_NAME KDeclarative LIB_NAME KF5Declarative DEPS "qml" FILENAME_VAR PRI_FILENAME INCLUDE_INSTALL_DIR ${KDE_INSTALL_INCLUDEDIR_KF}/KDeclarative)
0084 install(FILES ${PRI_FILENAME} DESTINATION ${ECM_MKSPECS_INSTALL_DIR})