mirror of
https://gitlab.kitware.com/cmake/cmake.git
synced 2026-10-07 04:02:23 +03:00
Help: Transform CMAKE_SYSTEM_NAME tables into lists
Changes: - Added some initial operating system family categories (Apple, UNIX, Windows). - Used list instead of table. Unlike the tables, lists provide documenting additional info and CMake versions. - Added CMake versions to most values where they were introduced or could be determined from the Git log. - Additionally added the OHOS value to the list (introduced via #25987) - Emscripten name was used by toolchain files also before CMake 4.2 but documented with this version.
This commit is contained in:
1 parent
3a4811fdac
commit
45296cde2d
1 file changed
+253
-79
@@ -28,96 +28,270 @@ System Names Known to CMake
|
||||
The following is a list of possible values, each associated with corresponding
|
||||
operating systems or environments.
|
||||
|
||||
=========================== ======================================================
|
||||
Value Name
|
||||
=========================== ======================================================
|
||||
``ADSP`` Analog Devices Audio Digital Signal Processing
|
||||
``AIX`` IBM Unix operating system
|
||||
``Android`` Android operating system
|
||||
``ARTOS`` Operating system for microcontrollers
|
||||
``BeOS`` Operating system for personal computers (discontinued)
|
||||
``BlueGeneL`` Blue Gene/L static environment
|
||||
``BlueGeneP-dynamic`` Blue Gene/P dynamic environment
|
||||
``BlueGeneP-static`` Blue Gene/P static environment
|
||||
``BlueGeneQ-dynamic`` Blue Gene/Q dynamic environment
|
||||
``BlueGeneQ-static`` Blue Gene/Q static environment
|
||||
``BSDOS`` BSD operating system (discontinued)
|
||||
``Catamount`` Operating system for Cray XT series
|
||||
``CrayLinuxEnvironment`` Cray Linux Environment
|
||||
``CYGWIN`` Cygwin environment for Windows
|
||||
``Darwin`` Apple stationary operating systems (macOS, OS X, etc.)
|
||||
``DOS`` MS-DOS or compatible
|
||||
``DragonFly`` BSD-derived operating system
|
||||
``eCos`` Real-time embedded operating system
|
||||
``Emscripten`` Compiler toolchain to WebAssembly
|
||||
``Euros`` Real-time operating system for embedded devices
|
||||
``FreeBSD`` FreeBSD operating system
|
||||
``Fuchsia`` Operating system by Google based on the Zircon kernel
|
||||
``Generic-ADSP`` Generic ADSP (Audio DSP) environment
|
||||
``Generic-ELF`` Generic ELF (Executable and Linkable Format) environment
|
||||
``Generic`` Some platforms, e.g. bare metal embedded devices
|
||||
``GHS-MULTI`` Green Hills Software MULTI environment
|
||||
``GNU`` GNU/Hurd-based operating system
|
||||
``Haiku`` Unix operating system inspired by BeOS
|
||||
``HP-UX`` Hewlett Packard Unix (discontinued)
|
||||
``iOS`` Apple mobile phone operating system
|
||||
``Linux`` All Linux-based distributions
|
||||
``Midipix`` POSIX-compatible layer for Windows
|
||||
``MirBSD`` MirOS BSD operating system
|
||||
``MP-RAS`` MP-RAS UNIX operating system
|
||||
``MSYS`` MSYS environment (MSYSTEM=MSYS)
|
||||
``NetBSD`` NetBSD operating systems
|
||||
``OpenBSD`` OpenBSD operating systems
|
||||
``OpenVMS`` OpenVMS operating system by HP
|
||||
``OS2`` OS/2 operating system
|
||||
``OSF1`` Compaq Tru64 UNIX (formerly DEC OSF/1, Digital Unix) (discontinued)
|
||||
``QNX`` Unix-like operating system by BlackBerry
|
||||
``RISCos`` RISC OS operating system
|
||||
``SCO_SV`` SCO OpenServer 5
|
||||
``SerenityOS`` Unix-like operating system
|
||||
``SINIX`` SINIX operating system
|
||||
``SunOS`` Oracle Solaris and all illumos operating systems
|
||||
``syllable`` Syllable operating system
|
||||
``Tru64`` Compaq Tru64 UNIX (formerly DEC OSF/1) operating system
|
||||
``tvOS`` Apple TV operating system
|
||||
``ULTRIX`` Unix operating system (discontinued)
|
||||
``UNIX_SV`` SCO UnixWare (pre release 7)
|
||||
``UnixWare`` SCO UnixWare 7
|
||||
``visionOS`` Apple mixed reality operating system
|
||||
``WASI`` WebAssembly System Interface
|
||||
``watchOS`` Apple watch operating system
|
||||
``Windows`` Windows stationary operating systems
|
||||
``WindowsCE`` Windows Embedded Compact
|
||||
``WindowsKernelModeDriver`` Windows Kernel-Mode Driver
|
||||
``WindowsPhone`` Windows mobile phone operating system
|
||||
``WindowsStore`` Universal Windows Platform applications
|
||||
``Xenix`` SCO Xenix Unix operating system (discontinued)
|
||||
=========================== ======================================================
|
||||
Apple Platforms
|
||||
"""""""""""""""
|
||||
|
||||
Platform-specific notes:
|
||||
``Darwin``
|
||||
Apple stationary operating systems (macOS, OS X, etc.)
|
||||
|
||||
* MSYS2's ``msys/cmake`` package (``/usr/bin/cmake``) works only under
|
||||
``iOS``
|
||||
.. versionadded:: 3.14
|
||||
|
||||
Apple mobile phone operating system
|
||||
|
||||
``tvOS``
|
||||
.. versionadded:: 3.14
|
||||
|
||||
Apple TV operating system
|
||||
|
||||
``visionOS``
|
||||
.. versionadded:: 3.28
|
||||
|
||||
Apple mixed reality operating system
|
||||
|
||||
``watchOS``
|
||||
.. versionadded:: 3.14
|
||||
|
||||
Apple watch operating system
|
||||
|
||||
UNIX Platforms
|
||||
""""""""""""""
|
||||
|
||||
``ADSP``
|
||||
Analog Devices Audio Digital Signal Processing
|
||||
|
||||
``AIX``
|
||||
IBM Unix operating system
|
||||
|
||||
``Android``
|
||||
.. versionadded:: 3.1
|
||||
|
||||
Android operating system
|
||||
|
||||
``ARTOS``
|
||||
.. versionadded:: 3.4
|
||||
|
||||
Operating system for microcontrollers
|
||||
|
||||
``BeOS``
|
||||
Operating system for personal computers (discontinued)
|
||||
|
||||
``BlueGeneL``
|
||||
Blue Gene/L static environment
|
||||
|
||||
``BlueGeneP-dynamic``
|
||||
Blue Gene/P dynamic environment
|
||||
|
||||
``BlueGeneP-static``
|
||||
Blue Gene/P static environment
|
||||
|
||||
``BlueGeneQ-dynamic``
|
||||
.. versionadded:: 3.3
|
||||
|
||||
Blue Gene/Q dynamic environment
|
||||
|
||||
``BlueGeneQ-static``
|
||||
.. versionadded:: 3.3
|
||||
|
||||
Blue Gene/Q static environment
|
||||
|
||||
``BSDOS``
|
||||
BSD operating system (discontinued)
|
||||
|
||||
``Catamount``
|
||||
Operating system for Cray XT series
|
||||
|
||||
``CrayLinuxEnvironment``
|
||||
.. versionadded:: 3.5
|
||||
|
||||
Cray Linux Environment
|
||||
|
||||
``DragonFly``
|
||||
BSD-derived operating system
|
||||
|
||||
``eCos``
|
||||
Real-time embedded operating system
|
||||
|
||||
``Emscripten``
|
||||
.. versionadded:: 4.2
|
||||
|
||||
Compiler toolchain to WebAssembly.
|
||||
|
||||
``Euros``
|
||||
.. versionadded:: 3.4
|
||||
|
||||
Real-time operating system for embedded devices
|
||||
|
||||
``FreeBSD``
|
||||
FreeBSD operating system
|
||||
|
||||
``Fuchsia``
|
||||
.. versionadded:: 3.8
|
||||
|
||||
Operating system by Google based on the Zircon kernel
|
||||
|
||||
``Generic-ADSP``
|
||||
Generic ADSP (Audio DSP) environment
|
||||
|
||||
``Generic-ELF``
|
||||
.. versionadded:: 3.23
|
||||
|
||||
Generic ELF (Executable and Linkable Format) environment
|
||||
|
||||
``Generic``
|
||||
Some platforms, e.g. bare metal embedded devices
|
||||
|
||||
``GHS-MULTI``
|
||||
.. versionadded:: 3.3
|
||||
|
||||
Green Hills Software MULTI environment
|
||||
|
||||
``GNU``
|
||||
GNU/Hurd-based operating system
|
||||
|
||||
``Haiku``
|
||||
Unix operating system inspired by BeOS
|
||||
|
||||
``HP-UX``
|
||||
Hewlett Packard Unix (discontinued)
|
||||
|
||||
``Linux``
|
||||
All Linux-based distributions
|
||||
|
||||
``MirBSD``
|
||||
MirOS BSD operating system
|
||||
|
||||
``MP-RAS``
|
||||
MP-RAS UNIX operating system
|
||||
|
||||
``NetBSD``
|
||||
NetBSD operating systems
|
||||
|
||||
``OHOS``
|
||||
.. versionadded:: 3.30
|
||||
|
||||
OpenHarmony family of operating systems (e.g., HarmonyOS)
|
||||
|
||||
Toolchain file can set this value when targeting OpenHarmony operating
|
||||
systems.
|
||||
|
||||
``OpenBSD``
|
||||
OpenBSD operating systems
|
||||
|
||||
``OpenVMS``
|
||||
OpenVMS operating system by HP
|
||||
|
||||
``OS2``
|
||||
.. versionadded:: 3.18
|
||||
|
||||
OS/2 operating system
|
||||
|
||||
``OSF1``
|
||||
Compaq Tru64 UNIX (formerly DEC OSF/1, Digital Unix) (discontinued)
|
||||
|
||||
``QNX``
|
||||
Unix-like operating system by BlackBerry
|
||||
|
||||
``RISCos``
|
||||
RISC OS operating system
|
||||
|
||||
``SCO_SV``
|
||||
SCO OpenServer 5
|
||||
|
||||
``SerenityOS``
|
||||
.. versionadded:: 3.25
|
||||
|
||||
Unix-like operating system
|
||||
|
||||
``SINIX``
|
||||
SINIX operating system
|
||||
|
||||
``SunOS``
|
||||
Oracle Solaris and all illumos operating systems
|
||||
|
||||
``syllable``
|
||||
Syllable operating system
|
||||
|
||||
``Tru64``
|
||||
Compaq Tru64 UNIX (formerly DEC OSF/1) operating system
|
||||
|
||||
``ULTRIX``
|
||||
Unix operating system (discontinued)
|
||||
|
||||
``UNIX_SV``
|
||||
SCO UnixWare (pre release 7)
|
||||
|
||||
``UnixWare``
|
||||
SCO UnixWare 7
|
||||
|
||||
``WASI``
|
||||
.. versionadded:: 3.31
|
||||
|
||||
WebAssembly System Interface
|
||||
|
||||
``Xenix``
|
||||
SCO Xenix Unix operating system (discontinued)
|
||||
|
||||
Windows Platforms
|
||||
"""""""""""""""""
|
||||
|
||||
``CYGWIN``
|
||||
Cygwin environment for Windows
|
||||
|
||||
Cygwin's ``cmake`` package (``/usr/bin/cmake``) uses system name ``CYGWIN``.
|
||||
A non-cygwin CMake on Windows (e.g. ``$PROGRAMFILES/CMake/bin/cmake``)
|
||||
uses system name ``Windows`` even when it runs under a Cygwin environment.
|
||||
|
||||
``DOS``
|
||||
MS-DOS or compatible
|
||||
|
||||
``Midipix``
|
||||
.. versionadded:: 3.10
|
||||
|
||||
POSIX-compatible layer for Windows
|
||||
|
||||
``MSYS``
|
||||
MSYS environment (MSYSTEM=MSYS)
|
||||
|
||||
MSYS2's ``msys/cmake`` package (``/usr/bin/cmake``) works only under
|
||||
``MSYSTEM=MSYS`` environments, with system name ``MSYS``. Under other
|
||||
environments like ``MSYSTEM=MINGW64``, use another package such
|
||||
as ``mingw64/mingw-w64-x86_64-cmake`` (``/mingw64/bin/cmake``),
|
||||
which targets ``MSYSTEM=MINGW64`` with system name ``Windows``.
|
||||
|
||||
* Cygwin's ``cmake`` package (``/usr/bin/cmake``) uses system name ``CYGWIN``.
|
||||
A non-cygwin CMake on Windows (e.g. ``$PROGRAMFILES/CMake/bin/cmake``)
|
||||
uses system name ``Windows`` even when it runs under a Cygwin environment.
|
||||
``Windows``
|
||||
Windows stationary operating systems
|
||||
|
||||
* When building drivers for Kernel-Mode Driver Framework on Windows, toolchain
|
||||
file can set ``CMAKE_SYSTEM_NAME`` value to ``WindowsKernelModeDriver``. See
|
||||
also the :variable:`CMAKE_WINDOWS_KMDF_VERSION` variable.
|
||||
``WindowsCE``
|
||||
Windows Embedded Compact
|
||||
|
||||
``WindowsKernelModeDriver``
|
||||
.. versionadded:: 4.1
|
||||
|
||||
Windows Kernel-Mode Driver
|
||||
|
||||
When building drivers for Kernel-Mode Driver Framework on Windows, toolchain
|
||||
file can set this value. See also the :variable:`CMAKE_WINDOWS_KMDF_VERSION`
|
||||
variable.
|
||||
|
||||
``WindowsPhone``
|
||||
.. versionadded:: 3.1
|
||||
|
||||
Windows mobile phone operating system
|
||||
|
||||
``WindowsStore``
|
||||
.. versionadded:: 3.1
|
||||
|
||||
Universal Windows Platform applications
|
||||
|
||||
Removed Platforms
|
||||
^^^^^^^^^^^^^^^^^
|
||||
"""""""""""""""""
|
||||
|
||||
The following platforms were once supported by CMake and got removed either due
|
||||
to platform's EOL, or other incompatibilities:
|
||||
|
||||
========================= ===================================== ================
|
||||
Value Name Removed in CMake
|
||||
========================= ===================================== ================
|
||||
``kFreeBSD`` FreeBSD kernel with a GNU userland 4.1
|
||||
========================= ===================================== ================
|
||||
``kFreeBSD``
|
||||
.. versionchanged:: 4.1
|
||||
Removed from CMake.
|
||||
|
||||
FreeBSD kernel with a GNU userland
|
||||
Reference in new issue
Block a user