6.2 Top Level Source Directory
The top level source directory in a GCC distribution contains several
files and directories that are shared with other software
distributions such as that of GNU Binutils.  It also contains several
subdirectories that contain parts of GCC and its runtime libraries:
     
- boehm-gc
- The Boehm conservative garbage collector, used as part of the Java
runtime library.
     
 
- config
- Autoconf macros and Makefile fragments used throughout the tree.
     
 
- contrib
- Contributed scripts that may be found useful in conjunction with GCC. 
One of these, contrib/texi2pod.pl, is used to generate man
pages from Texinfo manuals as part of the GCC build process.
     
 
- fixincludes
- The support for fixing system headers to work with GCC.  See
fixincludes/README for more information.  The headers fixed by
this mechanism are installed in libsubdir/include-fixed. 
Along with those headers, README-fixinc is also installed, as
libsubdir/include-fixed/README.
     
 
- gcc
- The main sources of GCC itself (except for runtime libraries),
including optimizers, support for different target architectures,
language front ends, and testsuites.  See The gcc Subdirectory, for details.
     
 
- gnattools
- Support tools for GNAT.
     
 
- include
- Headers for the libibertylibrary.
 
- intl
- GNU libintl, from GNUgettext, for systems which do not
include it inlibc.
 
- libada
- The Ada runtime library.
     
 
- libatomic
- The runtime support library for atomic operations (e.g. for __syncand__atomic).
 
- libcpp
- The C preprocessor library.
     
 
- libdecnumber
- The Decimal Float support library.
     
 
- libffi
- The libffilibrary, used as part of the Java runtime library.
 
- libgcc
- The GCC runtime library.
     
 
- libgfortran
- The Fortran runtime library.
     
 
- libgo
- The Go runtime library.  The bulk of this library is mirrored from the
master Go repository.
     
 
- libgomp
- The GNU Offloading and Multi Processing Runtime Library.
     
 
- libiberty
- The libibertylibrary, used for portability and for some
generally useful data structures and algorithms.  See Introduction, for more information
about this library.
 
- libitm
- The runtime support library for transactional memory.
     
 
- libjava
- The Java runtime library.
     
 
- libobjc
- The Objective-C and Objective-C++ runtime library.
     
 
- libquadmath
- The runtime support library for quad-precision math operations.
     
 
- libssp
- The Stack protector runtime library.
     
 
- libstdc++-v3
- The C++ runtime library.
     
 
- lto-plugin
- Plugin used by the linker if link-time optimizations are enabled.
     
 
- maintainer-scripts
- Scripts used by the gccadminaccount ongcc.gnu.org.
 
- zlib
- The zlibcompression library, used by the Java front end, as
part of the Java runtime library, and for compressing and uncompressing
GCC's intermediate language in LTO object files.
The build system in the top level directory, including how recursion
into subdirectories works and how building runtime libraries for
multilibs is handled, is documented in a separate manual, included
with GNU Binutils.  See GNU configure and build system, for details.