Макрос лингвиста QT5 в cmake

Несмотря на то, что я был довольно новичком в cmake, мне удалось создать новый проект, включающий Qt5LinguistTools и.ts файл, содержащий мои переводы. Я добавил раздел в мой файл cmake для вызова lupdate и lrelease для моих файлов, используя определенный макрос QT5_CREATE_TRANSLATION,

На самом деле он вызывает lupdate, с моим ts-файлом и моими другими заданными параметрами, но всегда также включает дополнительный параметр

@<my_project_build_dir>/<tsfilename>_lst_file

(сказать lupdate дополнительные исходные каталоги).
Я предполагал, что мой исходный каталог является контентом, но на удивление он содержит все пути включения, используемые в проекте:

Например, поскольку я также использую библиотеку boost, мой boost_dir также включен. Это кажется мне очень странным.

Я проанализировал макрос, где создается файл lst_file, поэтому для меня это выглядит как ошибка в макросе cmake.

Как отключить этот lst_file, не трогая макрос из qt?

1 ответ

Qt-Macro, очевидно, включает в себя все пути, установленные через INCLUDE_DIRECTORIES(...), Чтобы избежать этого, объявите эти пути через

SET_TARGET_PROPERTIES( ${PROJECT_NAME} PROPERTIES INCLUDE_DIRECTORIES "") target_include_directories( ${PROJECT_NAME} ... ),

Другие вопросы по тегам