Revision control
++ # Copyright (C) 2022 The Qt Company Ltd.
++ # SPDX-License-Identifier: BSD-3-Clause
++
++ #
++ # CMake script to collect and stage modified .ts files to git
++ #
++
++ if (NOT LCONVERT_BIN)
++ message(FATAL_ERROR "lconvert binary not specified. Use LCONVERT_BIN to pass in a value")
++ endif()
++
++
++ set(output_file ".git_stage_files.txt")
++
++ execute_process(
++ COMMAND git diff-files --name-only "*.ts"
++ OUTPUT_FILE ${output_file}
++ RESULT_VARIABLE git_result
++ OUTPUT_STRIP_TRAILING_WHITESPACE
++ )
++ if (NOT git_result EQUAL 0)
++ message(FATAL_ERROR "'git diff-files --name-only *.ts' exited with non-zero status.")
++ endif()
++
++ file(STRINGS ${output_file} file_list)
++ foreach (file IN LISTS file_list)
++ execute_process(
++ COMMAND ${LCONVERT_BIN} -locations none -i "${file}" -o "${file}"
++ RESULT_VARIABLE lconvert_result
++ COMMAND_ECHO STDOUT
++ )
++ if (NOT lconvert_result EQUAL 0)
++ message(FATAL_ERROR "Command exited with non-zero status.")
++ endif()
++ endforeach()
++
++ execute_process(
++ COMMAND git add ${file_list}
++ RESULT_VARIABLE git_result
++ COMMAND_ECHO STDOUT
++ )
++
++ if (NOT git_result EQUAL 0)
++ message(FATAL_ERROR "Command exited with non-zero status.")
++ endif()
++
++ if (file_list)
++ message("Translation files added to git. Please commit them to finish.")
++ endif()