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

0001 # mingw can't handle exported explicit template instantiations in a DLL
0002 if (MINGW)
0003   set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--export-all-symbols ${CMAKE_SHARED_LINKER_FLAGS}")
0004 endif (MINGW)
0005 
0006 configure_file(version.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/version.h)
0007 
0008 add_library(KF6Attica)
0009 add_library(KF6::Attica ALIAS KF6Attica)
0010 
0011 set_target_properties(KF6Attica PROPERTIES
0012     VERSION     ${ATTICA_VERSION}
0013     SOVERSION   ${ATTICA_SOVERSION}
0014     EXPORT_NAME "Attica"
0015 )
0016 
0017 target_sources(KF6Attica PRIVATE
0018    accountbalance.cpp
0019    accountbalanceparser.cpp
0020    achievement.cpp
0021    achievementparser.cpp
0022    buildservice.cpp
0023    buildserviceparser.cpp
0024    buildservicejob.cpp
0025    buildservicejobparser.cpp
0026    buildservicejoboutput.cpp
0027    buildservicejoboutputparser.cpp
0028    activity.cpp
0029    activityparser.cpp
0030    atticabasejob.cpp
0031    atticautils.cpp
0032    privatedata.cpp
0033    privatedataparser.cpp
0034    category.cpp
0035    categoryparser.cpp
0036    comment.cpp
0037    commentparser.cpp
0038    config.cpp
0039    configparser.cpp
0040    content.cpp
0041    contentparser.cpp
0042    deletejob.cpp
0043    distribution.cpp
0044    distributionparser.cpp
0045    downloaddescription.cpp
0046    downloaditem.cpp
0047    downloaditemparser.cpp
0048    event.cpp
0049    eventparser.cpp
0050    folder.cpp
0051    folderparser.cpp
0052    forum.cpp
0053    forumparser.cpp
0054    getjob.cpp
0055    homepageentry.cpp
0056    homepagetype.cpp
0057    homepagetypeparser.cpp
0058    icon.cpp
0059    itemjob.cpp
0060    knowledgebaseentry.cpp
0061    knowledgebaseentryparser.cpp
0062    license.cpp
0063    licenseparser.cpp
0064    listjob_inst.cpp
0065    message.cpp
0066    messageparser.cpp
0067    metadata.cpp
0068    parser.cpp
0069    person.cpp
0070    personparser.cpp
0071    platformdependent_v2.cpp
0072    postfiledata.cpp
0073    postjob.cpp
0074    project.cpp
0075    projectparser.cpp
0076    putjob.cpp
0077    remoteaccount.cpp
0078    remoteaccountparser.cpp
0079    provider.cpp
0080    providermanager.cpp
0081    publisher.cpp
0082    publisherparser.cpp
0083    publisherfield.cpp
0084    publisherfieldparser.cpp
0085    qtplatformdependent.cpp
0086    topic.cpp
0087    topicparser.cpp
0088 )
0089 
0090 ecm_qt_declare_logging_category(KF6Attica
0091     HEADER attica_debug.h
0092     IDENTIFIER ATTICA
0093     CATEGORY_NAME kf.attica
0094     OLD_CATEGORY_NAMES org.kde.attica
0095     DESCRIPTION "Attica"
0096     EXPORT ATTICA
0097 )
0098 
0099 file(GLOB TEST_FILES "*.cpp" "*.h")
0100 ecm_check_outbound_license(
0101     LICENSES LGPL-2.1-only LGPL-3.0-only
0102     TEST_NAME KF6Attica
0103     FILES ${TEST_FILES}
0104 )
0105 
0106 ecm_generate_export_header(KF6Attica
0107     BASE_NAME Attica
0108     GROUP_BASE_NAME KF
0109     VERSION ${KF_VERSION}
0110     USE_VERSION_HEADER
0111     DEPRECATED_BASE_VERSION 0
0112     DEPRECATION_VERSIONS
0113     EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT}
0114 )
0115 
0116 target_link_libraries(KF6Attica
0117 PUBLIC
0118   Qt6::Core
0119   Qt6::Network
0120 )
0121 target_include_directories(KF6Attica INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/Attica>")
0122 
0123 
0124 ecm_generate_headers(Attica_CamelCase_HEADERS
0125   HEADER_NAMES
0126   Activity
0127   AccountBalance
0128   Achievement
0129   Comment
0130   Config
0131   Content
0132   Category
0133   DeleteJob
0134   Distribution
0135   DownloadDescription
0136   DownloadItem
0137   Event
0138   Folder
0139   Forum
0140   GetJob
0141   HomePageEntry
0142   HomePageType
0143   Icon
0144   ItemJob
0145   KnowledgeBaseEntry
0146   ListJob
0147   License
0148   Message
0149   Metadata
0150   Person
0151   PrivateData
0152   PostJob
0153   Project
0154   PutJob
0155   RemoteAccount
0156   BuildService
0157   BuildServiceJob
0158   BuildServiceJobOutput
0159   ProviderManager
0160   Provider
0161   Publisher
0162   PublisherField
0163   Topic
0164 
0165   PREFIX Attica
0166   REQUIRED_HEADERS Attica_HEADERS
0167 )
0168 
0169 set(Attica_HEADERS
0170     ${Attica_HEADERS}
0171     atticabasejob.h # TODO: rename to basejob.h, add atticabasejob.h forwarding to basejob.h for compat
0172     atticautils.h   # TODO: not exported, this should probably NOT be installed at all?
0173     #interface for external platform plugins
0174     platformdependent.h
0175     platformdependent_v2.h
0176 )
0177 
0178 install(FILES ${Attica_CamelCase_HEADERS} DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/Attica/Attica COMPONENT Devel)
0179 
0180 install(TARGETS KF6Attica
0181         EXPORT KF6AtticaTargets
0182         ${KF_INSTALL_TARGETS_DEFAULT_ARGS})
0183 
0184 install(FILES
0185     ${Attica_HEADERS}
0186     ${CMAKE_CURRENT_BINARY_DIR}/version.h
0187     ${CMAKE_CURRENT_BINARY_DIR}/attica_export.h
0188     DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/Attica/attica
0189     COMPONENT Devel
0190 )
0191 
0192 ecm_qt_install_logging_categories(
0193     EXPORT ATTICA
0194     FILE attica.categories
0195     DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR}
0196 )
0197 
0198 if(BUILD_QCH)
0199     ecm_add_qch(
0200         KF6Attica_QCH
0201         NAME Attica
0202         BASE_NAME KF6Attica
0203         VERSION ${KF_VERSION}
0204         ORG_DOMAIN org.kde
0205         SOURCES # using only public headers, to cover only public API
0206             ${Attica_HEADERS}
0207         MD_MAINPAGE "${CMAKE_SOURCE_DIR}/README.md"
0208         LINK_QCHS
0209             Qt6Core_QCH
0210             Qt6Network_QCH
0211         INCLUDE_DIRS
0212             ${CMAKE_CURRENT_BINARY_DIR}
0213         BLANK_MACROS
0214             ATTICA_EXPORT
0215             ATTICA_DEPRECATED
0216             ATTICA_DEPRECATED_EXPORT
0217             "ATTICA_DEPRECATED_VERSION(x, y, t)"
0218         TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0219         QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0220         COMPONENT Devel
0221     )
0222 endif()
0223 
0224 # Install package config file
0225 if(NOT WIN32)
0226     ecm_generate_pkgconfig_file(BASE_NAME KF6Attica
0227         LIB_NAME KF6Attica
0228         INCLUDE_INSTALL_DIR ${KDE_INSTALL_INCLUDEDIR_KF}/Attica
0229         DEPS Qt6Core Qt6Network
0230         DESCRIPTION "Qt library to access Open Collaboration Services"
0231         INSTALL
0232     )
0233 endif(NOT WIN32)
0234