Spec-Zone.ru › CMake

get_filename_component

Получение определенного компонента полного имени файла.

Изменено в версии 3.20: Эта команда заменена командой cmake_path(), за исключением REALPATH, которая теперь доступна в file(REAL_PATH), и PROGRAM, теперь доступна в separate_arguments(PROGRAM).

Изменено в версии 3.24: Недокументированная функция, предоставляющая возможность запроса реестра Windows, заменена командой cmake_host_system_information(QUERY WINDOWS_REGISTRY).

get_filename_component(<var> <FileName> <mode> [CACHE])

Устанавливает <var> в компонент <FileName>, где <mode> является одним из:

DIRECTORY = Directory without file name
NAME      = File name without directory
EXT       = File name longest extension (.b.c from d/a.b.c)
NAME_WE   = File name with neither the directory nor the longest extension
LAST_EXT  = File name last extension (.c from d/a.b.c)
NAME_WLE  = File name with neither the directory nor the last extension
PATH      = Legacy alias for DIRECTORY (use for CMake <= 2.8.11)

Добавлена в версии 3.14: Добавлены режимы LAST_EXT и NAME_WLE.

Пути возвращаются с использованием слешей «/» и без заключительных слешей. Если указан необязательный аргумент CACHE, переменная результата добавляется в кэш.

get_filename_component(<var> <FileName> <mode> [BASE_DIR <dir>] [CACHE])

Добавлена в версии 3.4.

Устанавливает <var> в абсолютный путь к <FileName>, где <mode> является одним из:

ABSOLUTE  = Full path to file
REALPATH  = Full path to existing file with symlinks resolved

Если предоставленный <FileName> является относительным путем, он оценивается относительно заданного базового каталога <dir>. Если базовый каталог не указан, используется базовый каталог по умолчанию CMAKE_CURRENT_SOURCE_DIR.

Пути возвращаются с использованием слешей «/» и без заключительных слешей. Если указан необязательный аргумент CACHE, переменная результата добавляется в кэш.

get_filename_component(<var> <FileName> PROGRAM [PROGRAM_ARGS <arg_var>] [CACHE])

Программа в <FileName> будет найдена в системном пути поиска или оставлена в виде полного пути. Если PROGRAM_ARGS присутствует вместе с PROGRAM, любые аргументы командной строки, присутствующие в строке <FileName>, разделены с именем программы и сохраняются в <arg_var>. Это используется для разделения имени программы от ее аргументов в строке командной строки.

См. также

  • cmake_path()

© 2000–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/command/get_filename_component.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API