Как установить выходной путь команды cmake / qt4 QT4_WRAP_UI - PullRequest
5 голосов
/ 25 октября 2010

Я использую команду cmake QT4_WRAP_UI.Есть ли возможность контролировать путь вывода сгенерированных заголовочных файлов?

Ответы [ 3 ]

6 голосов
/ 25 октября 2010

Вот исходный код QT4_WRAP_UI:

MACRO (QT4_WRAP_UI outfiles )
  QT4_EXTRACT_OPTIONS(ui_files ui_options ${ARGN})

  FOREACH (it ${ui_files})
    GET_FILENAME_COMPONENT(outfile ${it} NAME_WE)
    GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE)
    SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/ui_${outfile}.h) # Here we set output
    ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
      COMMAND ${QT_UIC_EXECUTABLE}
      ARGS ${ui_options} -o ${outfile} ${infile}
      MAIN_DEPENDENCY ${infile})
    SET(${outfiles} ${${outfiles}} ${outfile})
  ENDFOREACH (it)

ENDMACRO (QT4_WRAP_UI)

Как видите, переменная outfile построена из переменной CMAKE_CURRENT_BINARY_DIR.Вы можете создать собственный макрос, который заменит эту строку.

3 голосов
/ 17 февраля 2014

Я должен был найти решение для этого.Я создал собственный макрос, но я думаю, что было бы лучше, если бы макрос в cmake upstream обрабатывал это автоматически.

См. Мое предложение здесь

0 голосов
/ 17 июня 2011

Вы можете просто добавить ${CMAKE_CURRENT_BINARY_DIR} во включаемый каталог:

include_directories(${CMAKE_CURRENT_BINARY_DIR})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...