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

0001 add_library(KF6Contacts)
0002 add_library(KF6::Contacts ALIAS KF6Contacts)
0003 
0004 set_target_properties(KF6Contacts PROPERTIES
0005     VERSION     ${KCONTACTS_VERSION}
0006     SOVERSION   ${KCONTACTS_SOVERSION}
0007     EXPORT_NAME Contacts
0008 )
0009 
0010 target_sources(KF6Contacts PRIVATE
0011     address.cpp
0012     addressee.cpp
0013     addressee.h
0014     addresseehelper.cpp
0015     addresseehelper_p.h
0016     addresseelist.h
0017     addressformat.cpp
0018     addressformatparser.cpp
0019     addressformatscript.cpp
0020     addressformatter.cpp
0021     address.h
0022     calendarurl.cpp
0023     calendarurl.h
0024     clientpidmap.cpp
0025     clientpidmap.h
0026     contactgroup.cpp
0027     contactgroup.h
0028     contactgrouptool.cpp
0029     contactgrouptool.h
0030     converter/ldifconverter.cpp
0031     converter/ldifconverter.h
0032     converter/vcardconverter.cpp
0033     converter/vcardconverter.h
0034     email.cpp
0035     email.h
0036     fieldgroup.cpp
0037     fieldgroup.h
0038     gender.cpp
0039     gender.h
0040     geo.cpp
0041     geo.h
0042     impp.cpp
0043     impp.h
0044     key.cpp
0045     key.h
0046     lang.cpp
0047     lang.h
0048     ldif.cpp
0049     ldif_p.h
0050     namespace.cpp
0051     nickname.cpp
0052     nickname.h
0053     note.cpp
0054     note.h
0055     org.cpp
0056     org.h
0057     parametermap_p.h
0058     phonenumber.cpp
0059     phonenumber.h
0060     picture.cpp
0061     picture.h
0062     related.cpp
0063     related.h
0064     resourcelocatorurl.cpp
0065     resourcelocatorurl.h
0066     role.cpp
0067     role.h
0068     secrecy.cpp
0069     secrecy.h
0070     sound.cpp
0071     sound.h
0072     timezone.cpp
0073     timezone.h
0074     title.cpp
0075     title.h
0076     vcarddrag.cpp
0077     vcarddrag.h
0078     vcardparser/vcard.cpp
0079     vcardparser/vcardline.cpp
0080     vcardparser/vcardline_p.h
0081     vcardparser/vcardparser.cpp
0082     vcardparser/vcardparser_p.h
0083     vcardparser/vcard_p.h
0084     vcardtool.cpp
0085     vcardtool_p.h
0086 
0087 
0088   kcontacts.qrc
0089   improtocols/improtocols.qrc
0090 )
0091 
0092 ecm_qt_declare_logging_category(KF6Contacts
0093     HEADER kcontacts_debug.h
0094     IDENTIFIER KCONTACTS_LOG
0095     CATEGORY_NAME kf.contacts
0096     OLD_CATEGORY_NAMES log_kcontacts org.kde.pim.kcontacts
0097     DESCRIPTION "KContacts"
0098     EXPORT KCONTACTS
0099 )
0100 
0101 ecm_generate_export_header(KF6Contacts
0102     EXPORT_FILE_NAME kcontacts_export.h
0103     BASE_NAME kcontacts
0104     GROUP_BASE_NAME KF
0105     VERSION ${KF_VERSION}
0106     USE_VERSION_HEADER
0107     DEPRECATED_BASE_VERSION 0
0108     DEPRECATION_VERSIONS
0109     EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT}
0110 )
0111 
0112 target_include_directories(KF6Contacts INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/KContacts>")
0113 set(KContacts_BUILD_INCLUDE_DIRS
0114     ${KContacts_SOURCE_DIR}/src
0115     ${KContacts_BINARY_DIR}/src
0116     ${KContacts_SOURCE_DIR}/src/vcardparser
0117 )
0118 target_include_directories(KF6Contacts PUBLIC "$<BUILD_INTERFACE:${KContacts_BUILD_INCLUDE_DIRS}>")
0119 
0120 target_link_libraries(KF6Contacts
0121 PUBLIC
0122     Qt6::Core
0123     Qt6::Gui
0124 PRIVATE
0125     KF6::CoreAddons
0126     KF6::ConfigCore
0127     KF6::I18n
0128     KF6::I18nLocaleData
0129     KF6::Codecs # for the vcard parser
0130 )
0131 
0132 install(TARGETS KF6Contacts EXPORT KF6ContactsTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS})
0133 
0134 ecm_generate_headers(KContacts_CamelCase_HEADERS
0135   HEADER_NAMES
0136   Address
0137   AddressFormat
0138   Addressee
0139   AddresseeList
0140   CalendarUrl
0141   ContactGroup
0142   ContactGroupTool
0143   Email
0144   Geo
0145   Gender
0146   Key
0147   Lang
0148   Namespace
0149   Impp
0150   PhoneNumber
0151   Picture
0152   Related
0153   ResourceLocatorUrl
0154   Secrecy
0155   Sound
0156   TimeZone
0157   Title
0158   Role
0159   Note
0160   Org
0161   NickName
0162   VCardDrag
0163   FieldGroup
0164   ClientPidMap
0165   PREFIX KContacts
0166   REQUIRED_HEADERS KContacts_HEADERS
0167 )
0168 
0169 add_subdirectory(converter)
0170 
0171 install(FILES
0172     ${CMAKE_CURRENT_BINARY_DIR}/kcontacts_export.h
0173     ${KContacts_HEADERS}
0174     DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KContacts/kcontacts
0175     COMPONENT Devel
0176 )
0177 
0178 install(FILES
0179     ${KContacts_CamelCase_HEADERS}
0180     DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KContacts/KContacts
0181     COMPONENT Devel
0182 )
0183 
0184 ecm_qt_install_logging_categories(
0185     EXPORT KCONTACTS
0186     FILE kcontacts.categories
0187     DESTINATION "${KDE_INSTALL_LOGGINGCATEGORIESDIR}"
0188 )
0189 
0190 if(BUILD_QCH)
0191     ecm_add_qch(
0192         KF6Contacts_QCH
0193         NAME KContacts
0194         BASE_NAME KF6Contacts
0195         VERSION ${KCONTACTS_VERSION}
0196         ORG_DOMAIN org.kde
0197         SOURCES # using only public headers, to cover only public API
0198             ${KContacts_HEADERS}
0199             "${CMAKE_SOURCE_DIR}/docs/AddressFormat.md"
0200         MD_MAINPAGE "${CMAKE_SOURCE_DIR}/README.md"
0201         LINK_QCHS
0202             Qt6Core_QCH
0203         INCLUDE_DIRS
0204             ${KContacts_BUILD_INCLUDE_DIRS}
0205         BLANK_MACROS
0206             KCONTACTS_EXPORT
0207             "KCONTACTS_DEPRECATED_VERSION(x, y, t)"
0208             "KCONTACTS_DEPRECATED_VERSION_BELATED(x, y, xt, yt, t)"
0209             "KCONTACTS_ENUMERATOR_DEPRECATED_VERSION(x, y, t)"
0210             "KCONTACTS_ENUMERATOR_DEPRECATED_VERSION_BELATED(x, y, xt, yt, t)"
0211         TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0212         QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0213         COMPONENT Devel
0214     )
0215 endif()