From 682375f5f3de39f0a36d2d5b552c70abb05bcca7 Mon Sep 17 00:00:00 2001 From: Krad Date: Thu, 23 Dec 2021 13:18:14 +0800 Subject: [PATCH] TS logic fix2 --- CMakeLists.txt | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7cb5fc9..9b497f8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -36,14 +36,30 @@ qt5_wrap_ui(ui_FILES ${project_uis}) file(GLOB project_res ./src/*.qrc) set(TS_FILES - ./src/translations/en_US.ts - ./src/translations/zh_CN.ts) -SET_DIRECTORY_PROPERTIES(PROPERTIES CLEAN_NO_CUSTOM TRUE) + src/translations/en_US.ts + src/translations/zh_CN.ts) +foreach(_file ${TS_FILES}) + set(backup ${CMAKE_CURRENT_SOURCE_DIR}/${_file}.bak) + if(NOT EXISTS ${backup}) + file( WRITE ${backup} "") + endif() +endforeach() + find_package(Qt5 COMPONENTS ${REQUIRED_LIBS} LinguistTools REQUIRED) set(cpp_source_all ${project_headers} ${project_cpps} ${project_cxx} ${project_res} ${project_cc} ${project_c} ) - -qt5_create_translation(QM_FILES ${cpp_source_all} ${TS_FILES}) -add_executable(${PROJECT_NAME} ${cpp_source_all} ${ui_FILES} ${QM_FILES} ) +qt5_create_translation(QM_FILES ${cpp_source_all} ${ui_FILES} ${TS_FILES}) +add_executable(${PROJECT_NAME} ${cpp_source_all} ${ui_FILES} ${QM_FILES}) +if(NOT UNIX) +find_program(POWERSHELL_PATH NAMES powershell) +endif() +message(${Qt5_LCONVERT_EXECUTABLE}) +foreach(_file ${TS_FILES}) + set(backup ${CMAKE_CURRENT_SOURCE_DIR}/${_file}.bak) + set(_rfile ${CMAKE_CURRENT_SOURCE_DIR}/${_file}) + message(${backup}) + add_custom_command(TARGET ${PROJECT_NAME} PRE_BUILD COMMAND ${POWERSHELL_PATH} "cp -Force" ${backup} ${_rfile}) + add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD COMMAND ${POWERSHELL_PATH} " cp -Force" ${_rfile} ${backup}) +endforeach() if(UNIX AND USE_SHIMLIB) link_directories(/usr/local/lib64)