Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[libc][docs] split up platform and arch support #120125

Merged
merged 4 commits into from
Dec 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions libc/docs/arch_support.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
Architecture Support
====================

The currently continuously tested architectures are:

* aarch64
* amdgpu
* arm
* nvptx
* riscv32
* riscv64
* x86_64

i386 support is [in the works](https://github.com/llvm/llvm-project/issues/93709).

See "`Bringup on a New OS or Architecture <porting.html>`__" for more
information. Please do first file a bug in
`our issue tracker <https://github.com/llvm/llvm-project/labels/libc>`__ before
starting a port that you plan to upstream.
28 changes: 9 additions & 19 deletions libc/docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -35,24 +35,6 @@ LLVM-libc aspires to a unique place in the software ecosystem. The goals are:
algorithms.
- `Fuzzing <https://github.com/llvm/llvm-project/tree/main/libc/fuzzing>`__

Platform Support
================

Most development is currently targeting Linux on x86_64, aarch64, arm, and
RISC-V. Embedded/baremetal targets are supported on arm and RISC-V, and Windows
and MacOS have limited support (may be broken). The Fuchsia platform is
slowly replacing functions from its bundled libc with functions from this
project.

LLVM-libc does not guarantee backward compatibility with operating systems that have reached their EOL.
Compatibility patches for obsolete operating systems will not be accepted.

For Linux, we support kernel versions as listed on `kernel.org <https://kernel.org/>`_, including
``longterm`` (not past EOL date), ``stable``, and ``mainline`` versions. We actively adopt new features
from ``linux-next``.

For Windows, we plan to support products within their lifecycle. Please refer to
`Search Product and Services Lifecycle Information <https://learn.microsoft.com/en-us/lifecycle/products/?products=windows>`_ for more information.

.. toctree::
:hidden:
Expand All @@ -70,10 +52,18 @@ For Windows, we plan to support products within their lifecycle. Please refer to
:maxdepth: 1
:caption: Status

compiler_support
headers/index.rst
c23

.. toctree::
:hidden:
:maxdepth: 1
:caption: Support

arch_support
platform_support
compiler_support

.. toctree::
:hidden:
:maxdepth: 1
Expand Down
22 changes: 22 additions & 0 deletions libc/docs/platform_support.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
Platform Support
================

Development is currently mostly focused on Linux. MacOS and Windows has
partial support, but has bitrot and isn't being tested continuously.

LLVM-libc is currently being integrated into Android and Fuchsia operating
systems via `overlay mode <overlay_mode.html>`__.

For Linux, we support kernel versions as listed on
`kernel.org <https://kernel.org/>`_, including ``longterm`` (not past EOL
date), ``stable``, and ``mainline`` versions. We actively adopt new features
from ``linux-next``.

For Windows, we plan to support products within their lifecycle. Please refer to
`Search Product and Services Lifecycle Information <https://learn.microsoft.com/en-us/lifecycle/products/?products=windows>`_ for more information.

nickdesaulniers marked this conversation as resolved.
Show resolved Hide resolved
LLVM-libc does not guarantee backward compatibility with operating systems that
have reached their EOL. Compatibility patches for obsolete operating systems
will not be accepted.

For GPU, reference `our GPU docs <gpu/index.html>`__.
Loading