Spec-Zone.ru › CMake

WINDOWS_EXPORT_ALL_SYMBOLS

Добавлен в версии 3.4.

Это свойство реализовано только для инструментов, совместимых с MS, на Windows.

Включите это логическое свойство, чтобы автоматически создать файл определения модуля (.def) со всеми глобальными символами, найденными в входных файлах .obj для библиотеки SHARED (или исполняемого файла с ENABLE_EXPORTS) на Windows. Файл определения модуля будет передан компоновщику, вызывая экспорт всех символов из .dll. Для глобальных символов данных, __declspec(dllimport) по-прежнему необходимо использовать при компиляции против кода в .dll. Все остальные символы функций будут автоматически экспортироваться и импортироваться вызывающими сторонами. Это упрощает портирование проектов на Windows, уменьшая необходимость в явном dllexport разметке, даже в C++ классах.

Когда это свойство включено, могут быть указаны один или несколько файлов .def как исходные файлы целевого объекта. Экспорты, названные в этих файлах, будут объединены с экспортами, обнаруженными из объектных файлов, чтобы сгенерировать один файл определения модуля, который будет передан компоновщику. Это можно использовать для экспорта символов из .dll, которые не находятся ни в одном из его объектных файлов, но добавляются компоновщиком из зависимостей (например, msvcrt.lib).

Это свойство инициализируется значением переменной CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS, если она установлена при создании целевого объекта.

© 2000–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/prop_tgt/WINDOWS_EXPORT_ALL_SYMBOLS.html

Spec-Zone.ru

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