Spec-Zone.ru › CMake 3.17

CMP0063

Уважать свойства видимости для всех типов целевых объектов.

Свойства целевых объектов <LANG>_VISIBILITY_PRESET и VISIBILITY_INLINES_HIDDEN влияют на видимость символов во время динамической компоновки. При первом введении эти свойства влияли только на компиляцию исходных кодов в разделяемых библиотеках, модульных библиотеках и исполняемых файлах с установленным свойством ENABLE_EXPORTS. Этого было достаточно для базовых случаев использования разделяемых библиотек и исполняемых файлов с плагинами. Однако некоторые исходные коды могут компилироваться как часть статических библиотек или библиотек объектов, а затем подключаться к разделяемой библиотеке позже. CMake 3.3 и выше предпочитают учитывать эти свойства для исходных кодов, скомпилированных во всех типах целевых объектов. Эта политика сохраняет совместимость для проектов, ожидающих работы свойств только для некоторых типов целевых объектов.

Поведение OLD для этой политики заключается в игнорировании свойств видимости для статических библиотек, библиотек объектов и исполняемых файлов без экспорта. Поведение NEW для этой политики заключается в соблюдении свойств видимости для всех типов целевых объектов.

Эта политика была введена в CMake версии 3.3. CMake версии 3.17.5 выдает предупреждение, если политика не установлена, и использует OLD поведение. Используйте команду cmake_policy(), чтобы явно установить ее в OLD или NEW.

Примечание

Поведение OLD политики deprecated by definition и может быть удалено в будущих версиях CMake.

© 2000–2020 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.17/policy/CMP0063.html

Spec-Zone.ru

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