cmake_minimum_required(VERSION 3.16.0) project(friendiqa VERSION 0.6 LANGUAGES CXX) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) set(CMAKE_AUTOUIC ON) if(CMAKE_VERSION VERSION_LESS "3.7.0") set(CMAKE_INCLUDE_CURRENT_DIR ON) endif() find_package(Qt6 REQUIRED COMPONENTS Core Widgets Quick QuickControls2 Sql DBus NetworkAuth REQUIRED) qt_standard_project_setup() set(MOC_SOURCES common/uploadableimage.h common/xhr.h common/filesystem.h common/updatenews.h common/alarm.h common/oauth.h common/documenthandler.h) set(SOURCES common/friendiqa.cpp common/uploadableimage.cpp common/xhr.cpp common/filesystem.cpp common/updatenews.cpp common/alarmlinux.cpp common/oauth.cpp common/documenthandler.cpp) include_directories(common) qt_add_executable(friendiqa ${SOURCES} ${MOC_SOURCES} application.qrc) target_link_libraries(friendiqa PRIVATE Qt6::Core) target_link_libraries(friendiqa PRIVATE Qt6::Widgets) target_link_libraries(friendiqa PRIVATE Qt6::Quick) target_link_libraries(friendiqa PRIVATE Qt6::QuickControls2) target_link_libraries(friendiqa PRIVATE Qt6::Sql) target_link_libraries(friendiqa PRIVATE Qt6::DBus) target_link_libraries(friendiqa PRIVATE Qt6::NetworkAuth) install(TARGETS friendiqa DESTINATION ${CMAKE_INSTALL_BINDIR}) install(FILES images/de.manic.Friendiqa.desktop DESTINATION share/applications) install(FILES images/de.manic.Friendiqa.svg DESTINATION share/icons/hicolor/scalable/apps)