Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: n4ela от Февраль 17, 2010, 17:48



Название: CMake lupdate
Отправлено: n4ela от Февраль 17, 2010, 17:48
Не получается по нормальному использовать lupdate в связки с cmake.
Использую следующий скрипт найденный в гугле, для извлечения текста из исходников.
Код
C++ (Qt)
MACRO (QT4_WRAP_TS lupdate_outputs lrelease_outputs prefix)
   FOREACH (it ${ARGN})
     SET(tsfile ${CMAKE_CURRENT_SOURCE_DIR}/i18n/${prefix}_${it}.ts)
     ADD_CUSTOM_COMMAND(OUTPUT ${tsfile}
       COMMAND ${QT_LUPDATE_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR} -ts ${tsfile}
     )
 
     SET(qmfile ${CMAKE_CURRENT_BINARY_DIR}/${prefix}_${it}.qm)
     ADD_CUSTOM_COMMAND(OUTPUT ${qmfile}
       COMMAND ${QT_LRELEASE_EXECUTABLE} ${tsfile} -qm ${qmfile}
     )
 
     SET(${lupdate_outputs} ${${lupdate_outputs}} ${tsfile})
     SET(${lrelease_outputs} ${${lrelease_outputs}} ${qmfile})
   ENDFOREACH(it)
ENDMACRO (QT4_WRAP_TS)
 
QT4_WRAP_TS(lupdate_outputs lrelease_outputs
 test
 ru
)
 
ADD_CUSTOM_TARGET(lupdate
 DEPENDS ${lupdate_outputs}
)
 
Проблема в том что когда первый раз делаю make lupdate все проходит хорошо.
А вот потом если в программу добавить еще какой то текст, то make lupdate не увидит изменения.
Если снести весь кеш cmake ( в папке сборки rm -rf * ) то make lupdate строчки новые увидит но перетрет все что было переведено до этого.


Название: Re: CMake lupdate
Отправлено: Ytz от Февраль 27, 2010, 13:01
Можешь почитать здесь, как решен этот вопрос: http://www.devexp.ru/2010/01/cmake-i-qt/ (http://www.devexp.ru/2010/01/cmake-i-qt/)