Spec-Zone.ru › CMake 3.31

CMAKE_SYSTEM_IGNORE_PATH

Список, разделенный точкой с запятой каталогов, которые будут игнорироваться различными find...() командами.

Для find_program(), find_library(), find_file() и find_path(), любой файл, найденный в одном из перечисленных каталогов, будет проигнорирован. Перечисленные каталоги не применяются рекурсивно, поэтому любые подкаталоги, которые нужно проигнорировать, также должны быть явно указаны. CMAKE_SYSTEM_IGNORE_PATH не влияет на поисковые префиксы, используемые этими четырьмя командами. Чтобы проигнорировать отдельные пути в рамках поискового префикса (например, bin, include, lib, и т.д.), каждый путь должен быть указан в CMAKE_SYSTEM_IGNORE_PATH в виде полного абсолютного пути. CMAKE_SYSTEM_IGNORE_PREFIX_PATH предоставляет более подходящий способ игнорирования всего поискового префикса.

find_package() также подвержен влиянию CMAKE_SYSTEM_IGNORE_PATH, но только для поиска в режиме Config. Любой <Name>Config.cmake или <name>-config.cmake файл, найденный в одном из указанных каталогов, будет проигнорирован. Кроме того, любой поисковый префикс, найденный в CMAKE_SYSTEM_IGNORE_PATH, будет пропущен по причинам обратной совместимости, но новый код должен предпочесть использовать CMAKE_SYSTEM_IGNORE_PREFIX_PATH для игнорирования префиксов вместо этого.

Игнорирование мест поиска может быть полезно в кросс-компилируемых средах, где некоторые системные каталоги содержат несовместимые, но, возможно, линковаемые библиотеки. Например, в кросс-компилируемых кластерных средах это позволяет пользователю игнорировать каталоги, содержащие библиотеки, предназначенные для машины фронтального конца.

CMAKE_SYSTEM_IGNORE_PATH заполняется CMake в рамках настройки платформы и инструментария. Его цель — игнорировать места, содержащие несовместимые двоичные файлы, предназначенные для хост-платформы, а не для целевой. Проект или конечный пользователь не должны изменять эту переменную; они должны использовать CMAKE_IGNORE_PATH вместо этого.

См. также следующие переменные:

  • CMAKE_SYSTEM_IGNORE_PREFIX_PATH
  • CMAKE_SYSTEM_PREFIX_PATH
  • CMAKE_SYSTEM_LIBRARY_PATH
  • CMAKE_SYSTEM_INCLUDE_PATH
  • CMAKE_SYSTEM_PROGRAM_PATH

© 2000–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.31/variable/CMAKE_SYSTEM_IGNORE_PATH.html

Spec-Zone.ru

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