|
|
@@ -13,39 +13,43 @@ built-in types. The pre-defined linker types are:
|
|
|
|
|
|
``SYSTEM``
|
|
|
Use the standard linker provided by the platform or toolchain. For example,
|
|
|
- this implies the Microsoft linker for all ``MSVC``-compatible compilers.
|
|
|
+ this implies the Microsoft linker for all MSVC-compatible compilers.
|
|
|
This type is supported for the following platform-compiler combinations:
|
|
|
|
|
|
- * Linux: ``GNU``, ``Clang``, ``LLVMFlang`` and ``NVIDIA`` compilers.
|
|
|
- * All Apple variants: ``AppleClang``, ``Clang`` and ``GNU`` compilers.
|
|
|
- * Windows: ``MSVC``, ``GNU``, ``Clang`` and ``NVIDIA`` compilers.
|
|
|
+ * Linux: ``GNU``, ``Clang``, ``LLVMFlang``, ``NVIDIA``, and ``Swift``
|
|
|
+ compilers.
|
|
|
+ * Apple platforms: ``AppleClang``, ``Clang``, ``GNU``, and ``Swift``
|
|
|
+ compilers.
|
|
|
+ * Windows: ``MSVC``, ``GNU``, ``Clang``, ``NVIDIA``, and ``Swift`` compilers.
|
|
|
|
|
|
``LLD``
|
|
|
Use the ``LLVM`` linker. This type is supported for the following
|
|
|
platform-compiler combinations:
|
|
|
|
|
|
- * Linux: ``GNU``, ``Clang``, ``LLVMFlang`` and ``NVIDIA`` compilers.
|
|
|
- * All Apple variants: ``Clang`` and ``AppleClang`` compilers.
|
|
|
- * Windows: ``GNU``, ``Clang``, ``Clang`` compilers with ``GNU`` front-end,
|
|
|
- ``MSVC`` and ``NVIDIA`` compilers with ``MSVC`` front-end.
|
|
|
+ * Linux: ``GNU``, ``Clang``, ``LLVMFlang``, ``NVIDIA``, and ``Swift``
|
|
|
+ compilers.
|
|
|
+ * Apple platforms: ``Clang``, ``AppleClang``, and ``Swift`` compilers.
|
|
|
+ * Windows: ``GNU``, ``Clang`` with MSVC-like front-end, ``Clang`` with
|
|
|
+ GNU-like front-end, ``MSVC``, ``NVIDIA`` with MSVC-like front-end,
|
|
|
+ and ``Swift``.
|
|
|
|
|
|
``BFD``
|
|
|
Use the ``GNU`` linker. This type is supported for the following
|
|
|
platform-compiler combinations:
|
|
|
|
|
|
- * Linux: ``GNU``, ``Clang``, ``LLVMFlang`` and ``NVIDIA`` compilers.
|
|
|
- * Windows: ``GNU``, ``Clang`` compilers with ``GNU`` front-end.
|
|
|
+ * Linux: ``GNU``, ``Clang``, ``LLVMFlang``, and ``NVIDIA`` compilers.
|
|
|
+ * Windows: ``GNU``, ``Clang`` with GNU-like front-end.
|
|
|
|
|
|
``GOLD``
|
|
|
- Supported on Linux platform with ``GNU``, ``Clang``, ``LLVMFlang`` and
|
|
|
- ``NVIDIA`` compilers.
|
|
|
+ Supported on Linux platform with ``GNU``, ``Clang``, ``LLVMFlang``,
|
|
|
+ ``NVIDIA``, and ``Swift`` compilers.
|
|
|
|
|
|
``MOLD``
|
|
|
Use the `mold linker <https://github.com/rui314/mold>`_. This type is
|
|
|
supported on the following platform-compiler combinations:
|
|
|
|
|
|
- * Linux: ``GNU``, ``Clang``, ``LLVMFlang`` and ``NVIDIA`` compilers.
|
|
|
- * All Apple variants: ``Clang`` and ``AppleClang`` compilers (acts as an
|
|
|
+ * Linux: ``GNU``, ``Clang``, ``LLVMFlang``, and ``NVIDIA`` compilers.
|
|
|
+ * Apple platforms: ``Clang`` and ``AppleClang`` compilers (acts as an
|
|
|
alias to the `sold linker`_).
|
|
|
|
|
|
``SOLD``
|
|
|
@@ -54,11 +58,12 @@ built-in types. The pre-defined linker types are:
|
|
|
|
|
|
``APPLE_CLASSIC``
|
|
|
Use the Apple linker in the classic behavior (i.e. before ``Xcode 15.0``).
|
|
|
- This type is only supported on Apple platforms with ``GNU``, ``Clang`` and
|
|
|
- ``AppleClang`` compilers.
|
|
|
+ This type is only supported on Apple platforms with ``GNU``, ``Clang``,
|
|
|
+ ``AppleClang``, and ``Swift`` compilers.
|
|
|
|
|
|
``MSVC``
|
|
|
Use the Microsoft linker. This type is only supported on the Windows
|
|
|
- platform with ``MSVC`` and ``Clang`` compiler with ``MSVC`` front-end.
|
|
|
+ platform with ``MSVC``, ``Clang`` with MSVC-like front-end, and ``Swift``
|
|
|
+ compilers.
|
|
|
|
|
|
.. _sold linker: https://github.com/bluewhalesystems/sold
|