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:
libffilibrary, used as part of the Java runtime library.
libibertylibrary, used for portability and for some generally useful data structures and algorithms. See Introduction, for more information about this library.
libmudflaplibrary, used for instrumenting pointer and array dereferencing operations.
zlibcompression library, used by the Java front end and as part of the Java runtime library.
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.