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