Warning, /pim/akonadi/src/private/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 add_subdirectory(protocolgen)
0002 
0003 if(NOT XMLLINT_EXECUTABLE)
0004   message(STATUS "xmllint not found, skipping protocol.xml validation")
0005 else()
0006   add_test(AkonadiPrivate-protocol-xmllint ${XMLLINT_EXECUTABLE} --noout ${CMAKE_CURRENT_SOURCE_DIR}/protocol.xml)
0007 endif()
0008 
0009 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/protocol_gen.cpp
0010                           ${CMAKE_CURRENT_BINARY_DIR}/protocol_gen.h
0011     COMMAND protocolgen ${CMAKE_CURRENT_SOURCE_DIR}/protocol.xml
0012     DEPENDS protocolgen ${CMAKE_CURRENT_SOURCE_DIR}/protocol.xml
0013     COMMENT "Generating Protocol implementation"
0014 )
0015 
0016 add_custom_target(generate_protocol DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/protocol_gen.cpp)
0017 
0018 set(akonadiprivate_SRCS
0019     imapparser.cpp
0020     imapset.cpp
0021     instance.cpp
0022     compressionstream.cpp
0023     datastream_p.cpp
0024     externalpartstorage.cpp
0025     protocol.cpp
0026     scope.cpp
0027     tristate.cpp
0028     standarddirs.cpp
0029     dbus.cpp
0030     imapset_p.h
0031     instance_p.h
0032     compressionstream_p.h
0033     externalpartstorage_p.h
0034     protocol_p.h
0035     scope_p.h
0036     tristate_p.h
0037     standarddirs_p.h
0038     dbus_p.h
0039 )
0040 
0041 ecm_qt_declare_logging_category(akonadiprivate_SRCS HEADER akonadiprivate_debug.h IDENTIFIER AKONADIPRIVATE_LOG CATEGORY_NAME org.kde.pim.akonadiprivate
0042         DESCRIPTION "akonadi (Akonadi Private Library)"
0043         OLD_CATEGORY_NAMES akonadiprivate_log
0044         EXPORT AKONADI
0045     )
0046 
0047 add_library(KPim6AkonadiPrivate SHARED ${akonadiprivate_SRCS})
0048 if (COMPILE_WITH_UNITY_CMAKE_SUPPORT)
0049     set_target_properties(KPim6AkonadiPrivate PROPERTIES UNITY_BUILD ON)
0050 endif()
0051 
0052 add_library(KPim6::AkonadiPrivate ALIAS KPim6AkonadiPrivate)
0053 add_dependencies(KPim6AkonadiPrivate generate_protocol)
0054 target_link_libraries(KPim6AkonadiPrivate
0055 PUBLIC
0056     Qt::Core
0057     Qt::DBus
0058 PRIVATE
0059     Qt::Network
0060     LibLZMA::LibLZMA
0061 )
0062 generate_export_header(KPim6AkonadiPrivate BASE_NAME akonadiprivate)
0063 
0064 target_compile_definitions(KPim6AkonadiPrivate PRIVATE CONFIG_INSTALL_DIR=\"${KDE_INSTALL_FULL_CONFDIR}\")
0065 
0066 set_target_properties(KPim6AkonadiPrivate PROPERTIES
0067     VERSION ${AKONADI_VERSION}
0068     SOVERSION ${AKONADI_SOVERSION}
0069     EXPORT_NAME AkonadiPrivate
0070 )
0071 
0072 target_include_directories(KPim6AkonadiPrivate INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR}/KPim6/Akonadi>")
0073 
0074 
0075 install(TARGETS
0076     KPim6AkonadiPrivate
0077     EXPORT KPim6AkonadiTargets
0078     ${KDE_INSTALL_TARGETS_DEFAULT_ARGS}
0079 )
0080 
0081 install(FILES
0082     ${CMAKE_CURRENT_BINARY_DIR}/akonadiprivate_export.h
0083     standarddirs_p.h
0084     dbus_p.h
0085     imapparser_p.h
0086     imapset_p.h
0087     instance_p.h
0088     externalpartstorage_p.h
0089     protocol_p.h
0090     ${CMAKE_CURRENT_BINARY_DIR}/protocol_gen.h
0091     protocol_exception_p.h
0092     capabilities_p.h
0093     scope_p.h
0094     tristate_p.h
0095     compressionstream_p.h
0096     DESTINATION ${KDE_INSTALL_INCLUDEDIR}/KPim6/Akonadi/akonadi/private
0097 )