Spec-Zone.ru › CMake 3.29

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.

Пути возвращаются с использованием обратных слэшей и без trailing слэшей. Если указан необязательный аргумент 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.

Пути возвращаются с использованием обратных слэшей и без trailing слэшей. Если указан необязательный аргумент 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/v3.29/command/get_filename_component.html

Spec-Zone.ru

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