Russian Qt Forum
Ноябрь 24, 2024, 08:43 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: CMake lupdate  (Прочитано 4448 раз)
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 строчки новые увидит но перетрет все что было переведено до этого.
Записан
Ytz
Гость
« Ответ #1 : Февраль 27, 2010, 13:01 »

Можешь почитать здесь, как решен этот вопрос: http://www.devexp.ru/2010/01/cmake-i-qt/
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.073 секунд. Запросов: 21.