diff options
Diffstat (limited to 'libc/docs/dev/source_tree_layout.rst')
| -rw-r--r-- | libc/docs/dev/source_tree_layout.rst | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/libc/docs/dev/source_tree_layout.rst b/libc/docs/dev/source_tree_layout.rst index 0bcedc96a133..8b423a1712cc 100644 --- a/libc/docs/dev/source_tree_layout.rst +++ b/libc/docs/dev/source_tree_layout.rst @@ -14,9 +14,10 @@ directories:: - docs - examples - fuzzing + - hdr - include - lib - - spec + - newhdrgen - src - startup - test @@ -62,6 +63,14 @@ The directory structure within this directory mirrors the directory structure of the top-level ``libc`` directory itself. For more details, see :doc:`fuzzing`. +The ``hdr`` directory +--------------------- + +This directory contains proxy headers which are included from the files in the +src directory. These proxy headers either include our internal type or macro +definitions, or the system's type or macro definitions, depending on if we are +in fullbuild or overlay mode. + The ``include`` directory ------------------------- @@ -80,13 +89,14 @@ The ``lib`` directory This directory contains a ``CMakeLists.txt`` file listing the targets for the public libraries ``libc.a``, ``libm.a`` etc. -The ``spec`` directory ----------------------- +The ``newhdrgen`` directory +--------------------------- -This directory contains the specifications for the types, macros, and entrypoint -functions. These definitions come from the various standards and extensions -LLVM-libc supports, and they are used along with the ``*.h.def`` files and the -config files to generate the headers for fullbuild mode. +This directory contains the sources and specifications for the types, macros +and entrypoint functions. These definitions are organized in the ``yaml`` +subdirectory and match the organization of the ``*.h.def`` files. This folder +also contains the python sources for new headergen, which is what generates the +headers. The ``src`` directory --------------------- |
