Как использовать windeployqt в CMake

Команда чтобы получить имя выходного файла
"$<TARGET_FILE:${project_name}>"
Функция которая будет делать деплой для заданнного проекта
04.23.24:
Новая версия:
function(make_windeployqt project_name )
    add_custom_command(
        TARGET ${project_name}
        POST_BUILD
        COMMAND ${WINDEPLOYQT_EXECUTABLE}
            --network
            --compiler-runtime
            --no-translations
            --no-system-d3d-compiler
            --no-opengl-sw
            --dir "${BUILD_DIR}"
            "$<TARGET_FILE:${project_name}>"
        VERBATIM
    )
endfunction()
Старая версия:
function(make_windeployqt project_name )
    set(WINDEPLOYQT "${QTDIR}/bin/windeployqt.exe")
    add_custom_command(
        TARGET ${project_name}
        POST_BUILD
        COMMAND ${WINDEPLOYQT}
            --network
            --compiler-runtime
            --no-translations
            --no-system-d3d-compiler
            --no-opengl-sw
            --dir "${BUILD_DIR}"
            "$<TARGET_FILE:${project_name}>"
        VERBATIM
    )
endfunction()
У себя в CMakeLists.txt можно в конце прописать что-то вроде этого:
if (WIN32)
    make_windeployqt(${PROJECT_NAME})
elseif (UNIX)
    # set stuff for other systems
elseif (APPLE)
    #
endif()             

Комментарии