cmake_minimum_required(VERSION 3.19)
project(NerveSaver3000 LANGUAGES CXX)

find_package(Qt6 6.5 REQUIRED COMPONENTS Core Widgets)

qt_standard_project_setup()

set(app_icon_resource_windows "${CMAKE_CURRENT_SOURCE_DIR}/resources/NerveSaver3000.rc")

qt_add_executable(NerveSaver3000
    WIN32 MACOSX_BUNDLE
    main.cpp
    mainwindow.cpp
    mainwindow.h
    mainwindow.ui
    interval.h interval.cpp
    config.h
    ${app_icon_resource_windows}
)

target_link_libraries(NerveSaver3000
    PRIVATE
        Qt::Core
        Qt::Widgets
)


if(true)
    # 1. Nájdeme kde v systéme sa nachádza nástroj windeployqt
    find_program(WINDEPLOYQT_EXECUTABLE windeployqt HINTS "${Qt6_DIR}/../../../bin")

    if(WINDEPLOYQT_EXECUTABLE)
        # 2. Povieme CMake, aby po skompilovaní spustil tento nástroj
        add_custom_command(TARGET NerveSaver3000 POST_BUILD
            COMMAND ${WINDEPLOYQT_EXECUTABLE}
                --verbose 1
                --compiler-runtime   # Pridá aj DLL kompilátora (msvcp140.dll atď.)
                --dir "${CMAKE_CURRENT_BINARY_DIR}" # Kam to má sypať (k tvojmu .exe)
                "$<TARGET_FILE:NerveSaver3000>"
            COMMENT "Spúšťam automatický windeployqt pre zozbieranie všetkých DLL súborov..."
        )
    endif()
endif()


include(GNUInstallDirs)

qt_generate_deploy_app_script(
    TARGET NerveSaver3000
    OUTPUT_SCRIPT deploy_script
    NO_UNSUPPORTED_PLATFORM_ERROR
)
install(SCRIPT ${deploy_script})
