summaryrefslogtreecommitdiffstats
path: root/Help/variable/LINK_LIBRARY_PREDEFINED_FEATURES.txt
diff options
context:
space:
mode:
authorMarc Chevrier <marc.chevrier@gmail.com>2022-02-21 16:30:29 (GMT)
committerMarc Chevrier <marc.chevrier@gmail.com>2022-03-05 12:57:45 (GMT)
commit9fb1dff0708792ba275fa841459d6d3875613cfa (patch)
tree3a2d591ca44cf279cde8e1252bf72065b468d85a /Help/variable/LINK_LIBRARY_PREDEFINED_FEATURES.txt
parent93a153bc7ffc217181ba56eadc35f1103f902038 (diff)
downloadCMake-9fb1dff0708792ba275fa841459d6d3875613cfa.zip
CMake-9fb1dff0708792ba275fa841459d6d3875613cfa.tar.gz
CMake-9fb1dff0708792ba275fa841459d6d3875613cfa.tar.bz2
LINK_LIBRARY: Add features for library support on Apple
Diffstat (limited to 'Help/variable/LINK_LIBRARY_PREDEFINED_FEATURES.txt')
-rw-r--r--Help/variable/LINK_LIBRARY_PREDEFINED_FEATURES.txt37
1 files changed, 30 insertions, 7 deletions
diff --git a/Help/variable/LINK_LIBRARY_PREDEFINED_FEATURES.txt b/Help/variable/LINK_LIBRARY_PREDEFINED_FEATURES.txt
index 82c406a..936bd31 100644
--- a/Help/variable/LINK_LIBRARY_PREDEFINED_FEATURES.txt
+++ b/Help/variable/LINK_LIBRARY_PREDEFINED_FEATURES.txt
@@ -1,6 +1,7 @@
**Features available in all environments**
-* ``DEFAULT``: This feature enables default link expression. This is mainly
+``DEFAULT``
+ This feature enables default link expression. This is mainly
useful with :prop_tgt:`LINK_LIBRARY_OVERRIDE` and
:prop_tgt:`LINK_LIBRARY_OVERRIDE_<LIBRARY>` target properties.
@@ -9,21 +10,27 @@
It is assumed that the linker used is the one provided by `XCode` or is
compatible with it.
-* ``FRAMEWORK``: This option tells the linker to search for the specified
+Framework support
+
+``FRAMEWORK``
+ This option tells the linker to search for the specified
framework (use linker option ``-framework``).
-* ``NEEDED_FRAMEWORK``: This is the same as the ``FRAMEWORK`` feature but means
+``NEEDED_FRAMEWORK``
+ This is the same as the ``FRAMEWORK`` feature but means
to really link with the framework even if no symbols are used from it (use
linker option ``-needed_framework``).
-* ``REEXPORT_FRAMEWORK``: This is the same as the ``FRAMEWORK`` feature but
+``REEXPORT_FRAMEWORK``
+ This is the same as the ``FRAMEWORK`` feature but
also specifies that all symbols in that framework should be available to
clients linking to the library being created (use linker option
``-reexport_framework``).
-* ``WEAK_FRAMEWORK``: This is the same as the ``FRAMEWORK`` feature but forces
+``WEAK_FRAMEWORK``
+ This is the same as the ``FRAMEWORK`` feature but forces
the framework and all references to it to be marked as weak imports (use
linker option ``-weak_framework``).
-Features for framework linking have a special handling in ``CMake``: the
-framework can be specified as a ``CMake`` framework target or file path. In the
+Features for framework linking have a special handling in CMake: the
+framework can be specified as a CMake framework target or file path. In the
first case, the target must have the :prop_tgt:`FRAMEWORK` target property set
as ``TRUE`` to enable framework handling. In the later case, if the path
includes a directory part, this one will be specified as framework search path
@@ -45,3 +52,19 @@ at link step.
* (/path/to/)?FwName(.framework)?
* (/path/to/)?FwName.framework/FwName
* (/path/to/)?FwName.framework/Versions/\*/FwName
+
+Library support
+
+``NEEDED_LIBRARY``
+ This is the same as specifying a link item (target or
+ library) but means to really link with the item even if no symbols are used
+ from it (use linker option ``-needed_library`` or ``-needed-l``).
+``REEXPORT_LIBRARY``
+ This is the same as specifying a link item (target or
+ library) but also specifies that all symbols in that item should be available
+ to clients linking to the library being created (use linker option
+ ``-reexport_library`` or ``-reexport-l``).
+``WEAK_LIBRARY``
+ This is the same as specifying a link item (target or
+ library) but forces the item and all references to it to be marked as weak
+ imports (use linker option ``-weak_library`` or ``-weak-l``).