CMP0063
Новое в версии 3.3.
Уважение свойств видимости для всех типов целей.
Свойства цели <LANG>_VISIBILITY_PRESET и VISIBILITY_INLINES_HIDDEN влияют на видимость символов во время динамической компоновки. При первом введении эти свойства влияли только на компиляцию исходных кодов в разделяемых библиотеках, библиотеках модулей и исполняемых файлах со свойством ENABLE_EXPORTS. Этого было достаточно для основных случаев использования разделяемых библиотек и исполняемых файлов с плагинами. Однако некоторые исходные коды могут быть скомпилированы как часть статических библиотек или библиотек объектов, а затем связаны в разделяемую библиотеку позднее. CMake 3.3 и выше предпочитают учитывать эти свойства для исходных кодов, скомпилированных во всех типах целей. Данная политика сохраняет совместимость для проектов, ожидающих, что свойства будут работать только для некоторых типов целей.
Поведение OLD для этой политики заключается в игнорировании свойств видимости для статических библиотек, библиотек объектов и исполняемых файлов без экспорта. Поведение NEW для этой политики заключается в уважении свойств видимости для всех типов целей.
Эта политика была введена в CMake версии 3.3. CMake версии 3.24.2 предупреждает, если политика не задана, и использует поведение OLD. Используйте команду cmake_policy() для явного задания значения OLD или NEW.
Примечание
Поведение OLD политики deprecated by definition и может быть удалено в будущей версии CMake.
© 2000–2022 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.24/policy/CMP0063.html