CMAKE_CFG_INTDIR
Справочная информация о подкаталоге выходных данных для каждой конфигурации во время построения.
Для систем построения, поддерживающих несколько конфигураций в дереве построения (таких как Генераторы Visual Studio и Xcode), значение является ссылкой на переменную, определяемую во время построения, задающую имя подкаталога выходных данных для каждой конфигурации. В Генераторах Makefile это значение равно . , поскольку в дереве построения есть только одна конфигурация. Примеры значений:
$(ConfigurationName) = Visual Studio 9 $(Configuration) = Visual Studio 10 $(CONFIGURATION) = Xcode . = Make-based tools
Поскольку эти значения оцениваются системой построения, эта переменная подходит только для использования в командных строках, которые будут оценены во время построения. Пример целевого использования:
add_executable(mytool mytool.c)
add_custom_command(
OUTPUT out.txt
COMMAND ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/mytool
${CMAKE_CURRENT_SOURCE_DIR}/in.txt out.txt
DEPENDS mytool in.txt
)
add_custom_target(drive ALL DEPENDS out.txt)
Обратите внимание, что CMAKE_CFG_INTDIR больше не требуется для этой цели, но оставлен для совместимости со старыми проектами. Вместо этого add_custom_command() распознаёт имена исполняемых целевых объектов в своём COMMAND параметре, поэтому ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/mytool можно заменить просто на mytool.
Эта переменная является только для чтения. Её изменение — неопределённое поведение. В системах построения с несколькими конфигурациями значение этой переменной передаётся как значение препроцессорной переменной CMAKE_INTDIR при компиляции всех исходных файлов.
© 2000–2020 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.14/variable/CMAKE_CFG_INTDIR.html