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

0001 # Copyright 2018-2020 Camilo Higuita <milo.h@aol.com>
0002 # Copyright 2018-2020 Nitrux Latinoamericana S.C.
0003 #
0004 # SPDX-License-Identifier: GPL-3.0-or-later
0005 
0006 include_directories(
0007     ${CMAKE_CURRENT_SOURCE_DIR}/interfaces
0008     ${CMAKE_CURRENT_BINARY_DIR}/interfaces
0009 
0010     ${CMAKE_CURRENT_SOURCE_DIR}/models
0011     ${CMAKE_CURRENT_BINARY_DIR}/models
0012 
0013     ${CMAKE_CURRENT_BINARY_DIR}/models/contacts
0014     ${CMAKE_CURRENT_BINARY_DIR}/models/contacts)
0015 
0016 set(communicator_SRCS
0017     main.cpp
0018     models/contacts/contactsmodel.cpp
0019     interfaces/contactimage.cpp
0020     communicator.cpp)
0021 
0022 set(communicator_HDRS
0023     models/contacts/contactsmodel.h
0024     interfaces/abstractinterface.h
0025     interfaces/contactimage.h
0026     communicator.h)
0027 
0028 if(ANDROID)
0029     set(communicator_android_SRCS
0030         interfaces/androidinterface.cpp)
0031 
0032     set(communicator_android_HDRS
0033         interfaces/androidinterface.h)
0034 else()
0035     set(communicator_linux_SRCS
0036         interfaces/linuxinterface.cpp)
0037 
0038     set(communicator_linux_HDRS
0039         interfaces/linuxinterface.h)
0040 endif()
0041 
0042 set(communicator_ASSETS
0043     assets/communicator_assets.qrc)
0044 
0045 if(QUICK_COMPILER)
0046     qtquick_compiler_add_resources(communicator_QML_QRC qml.qrc)
0047 else()
0048     qt5_add_resources(communicator_QML_QRC qml.qrc)
0049 endif()
0050 
0051 if(ANDROID)
0052     add_library(${PROJECT_NAME} SHARED
0053         ${communicator_SRCS}
0054         ${communicator_android_SRCS}
0055         ${communicator_HDRS}
0056         ${communicator_ASSETS}
0057         ${communicator_QML_QRC})
0058 else()
0059     add_executable(${PROJECT_NAME}
0060         ${communicator_SRCS}
0061         ${communicator_linux_SRCS}
0062         ${communicator_HDRS}
0063         ${communicator_ASSETS}
0064         ${communicator_QML_QRC})
0065 endif()
0066 
0067 target_compile_definitions(${PROJECT_NAME}
0068     PRIVATE $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:QT_QML_DEBUG>)
0069 
0070 target_link_libraries(${PROJECT_NAME}
0071     MauiKit3
0072     MauiKit3::FileBrowsing
0073     Qt5::QuickControls2
0074     Qt5::Qml
0075     Qt5::Concurrent
0076     KF5::I18n
0077     KF5::Service)
0078 
0079 if(ANDROID)
0080     target_link_libraries(${PROJECT_NAME} Qt5::AndroidExtras Qt5::Xml)
0081     kde_source_files_enable_exceptions(${PROJECT_NAME} interfaces/androidinterface.cpp)
0082 else()
0083     target_link_libraries(${PROJECT_NAME} KF5::Contacts KF5::People Qt5::Widgets)
0084 endif()
0085 
0086 if(UNIX AND NOT APPLE AND NOT ANDROID)
0087     install(FILES assets/communicator.svg DESTINATION ${KDE_INSTALL_ICONDIR}/hicolor/scalable/apps)
0088 endif()
0089 
0090