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