mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-06 05:40:54 -06:00
Merge topic 'doc-sections'
22aac6669bHelp: install: use bullet lists to sort out target kindsb3f4d50348Help: ifw.rst: Add toc; mv "Hints" section -> subsection of "Variables"c671966c20Help: CPackComponent: Sectioning and rewording05e56b1897Help: FetchContent, ExternalProject: Command sections -> subsections Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4367
This commit is contained in:
@@ -126,31 +126,38 @@ Installing Targets
|
||||
)
|
||||
|
||||
The ``TARGETS`` form specifies rules for installing targets from a
|
||||
project. There are several kinds of target files that may be installed:
|
||||
project. There are several kinds of target :ref:`Output Artifacts`
|
||||
that may be installed:
|
||||
|
||||
``ARCHIVE``
|
||||
Static libraries are treated as ``ARCHIVE`` targets, except those
|
||||
marked with the ``FRAMEWORK`` property on macOS (see ``FRAMEWORK``
|
||||
below.) For DLL platforms (all Windows-based systems including
|
||||
Cygwin), the DLL import library is treated as an ``ARCHIVE`` target.
|
||||
On AIX, the linker import file created for executables with
|
||||
:prop_tgt:`ENABLE_EXPORTS` is treated as an ``ARCHIVE`` target.
|
||||
Target artifacts of this kind include:
|
||||
|
||||
* *Static libraries*
|
||||
(except on macOS when marked as ``FRAMEWORK``, see below);
|
||||
* *DLL import libraries*
|
||||
(on all Windows-based systems including Cygwin; they have extension
|
||||
``.lib``, in contrast to the ``.dll`` libraries that go to ``RUNTIME``);
|
||||
* On AIX, the *linker import file* created for executables with
|
||||
:prop_tgt:`ENABLE_EXPORTS` enabled.
|
||||
|
||||
``LIBRARY``
|
||||
Module libraries are always treated as ``LIBRARY`` targets. For non-
|
||||
DLL platforms shared libraries are treated as ``LIBRARY`` targets,
|
||||
except those marked with the ``FRAMEWORK`` property on macOS (see
|
||||
``FRAMEWORK`` below.)
|
||||
Target artifacts of this kind include:
|
||||
|
||||
* *Shared libraries*, except
|
||||
|
||||
- DLLs (these go to ``RUNTIME``, see below),
|
||||
- on macOS when marked as ``FRAMEWORK`` (see below).
|
||||
|
||||
``RUNTIME``
|
||||
Executables are treated as ``RUNTIME`` objects, except those marked
|
||||
with the ``MACOSX_BUNDLE`` property on macOS (see ``BUNDLE`` below.)
|
||||
For DLL platforms (all Windows-based systems including Cygwin), the
|
||||
DLL part of a shared library is treated as a ``RUNTIME`` target.
|
||||
Target artifacts of this kind include:
|
||||
|
||||
* *Executables*
|
||||
(except on macOS when marked as ``MACOSX_BUNDLE``, see ``BUNDLE`` below);
|
||||
* DLLs (on all Windows-based systems including Cygwin; note that the
|
||||
accompanying import libraries are of kind ``ARCHIVE``).
|
||||
|
||||
``OBJECTS``
|
||||
Object libraries (a simple group of object files) are always treated
|
||||
as ``OBJECTS`` targets.
|
||||
Object files associated with *object libraries*.
|
||||
|
||||
``FRAMEWORK``
|
||||
Both static and shared libraries marked with the ``FRAMEWORK``
|
||||
|
||||
Reference in New Issue
Block a user