Spec-Zone.ru › CMake 3.28

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/latest/variable/CMAKE_SYSTEM_IGNORE_PATH.html

Spec-Zone.ru

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