Spec-Zone.ru › CMake 3.23

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–2022 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.23/variable/CMAKE_SYSTEM_IGNORE_PATH.html

Spec-Zone.ru

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