cmake_minimum_required(VERSION 3.18) project(LCDLLN_Client VERSION 1.0.0 LANGUAGES CXX) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED ON) # Include directories include_directories( ${CMAKE_CURRENT_SOURCE_DIR}/include ) # Find Qt6 find_package(Qt6 COMPONENTS Widgets REQUIRED) # External libraries find_package(OpenSSL REQUIRED) find_package(Argon2 REQUIRED) find_package(spdlog REQUIRED) # Sources file(GLOB CLIENT_SOURCES "src/*.cpp") add_executable(lcdlln ${CLIENT_SOURCES}) target_link_libraries(lcdlln PRIVATE Qt6::Widgets OpenSSL::SSL OpenSSL::Crypto spdlog::spdlog argon2) # Windows: copy Qt DLLs automatically if(WIN32) set(QT_DLLS_DIR $ENV{QTDIR}/bin) add_custom_command(TARGET lcdlln POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different "${QT_DLLS_DIR}/Qt6Core.dll" "$" ) add_custom_command(TARGET lcdlln POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different "${QT_DLLS_DIR}/Qt6Widgets.dll" "$" ) endif()