OSDN Git Service

* doc/extend.texi (Other Builtins): Add decimal float variants
[pf3gnuchains/gcc-fork.git] / gcc / doc / configfiles.texi
index 58aaf57..726a76a 100644 (file)
@@ -1,44 +1,71 @@
-@c Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
+@c Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
+@c 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
 @c This is part of the GCC manual.
 @c For copying conditions, see the file gcc.texi.
 
 @node Configuration Files
-@chapter Files Created by @code{configure}
+@subsubsection Files Created by @code{configure}
 
-Here we spell out what files will be set up by @code{configure}.  Normally
-you need not be concerned with these files.
+Here we spell out what files will be set up by @file{configure} in the
+@file{gcc} directory.  Some other files are created as temporary files
+in the configuration process, and are not used in the subsequent
+build; these are not documented.
 
 @itemize @bullet
 @item
-A file named @file{config.h} is created that contains a @samp{#include}
-of the top-level config file for the machine you will run the compiler
-on (@pxref{Config}).  This file is responsible for defining information
-about the host machine.  It includes @file{tm.h}.
-
-The top-level config file is located in the subdirectory @file{config}.
-Its name is always @file{xm-@var{something}.h}; usually
-@file{xm-@var{machine}.h}, but there are some exceptions.
+@file{Makefile} is constructed from @file{Makefile.in}, together with
+the host and target fragments (@pxref{Fragments, , Makefile
+Fragments}) @file{t-@var{target}} and @file{x-@var{host}} from
+@file{config}, if any, and language Makefile fragments
+@file{@var{language}/Make-lang.in}.
+@item
+@file{auto-host.h} contains information about the host machine
+determined by @file{configure}.  If the host machine is different from
+the build machine, then @file{auto-build.h} is also created,
+containing such information about the build machine.
+@item
+@file{config.status} is a script that may be run to recreate the
+current configuration.
+@item
+@file{configargs.h} is a header containing details of the arguments
+passed to @file{configure} to configure GCC, and of the thread model
+used.
+@item
+@file{cstamp-h} is used as a timestamp.
+@item
+@file{fixinc/Makefile} is constructed from @file{fixinc/Makefile.in}.
+@item
+@file{gccbug}, a script for reporting bugs in GCC, is constructed from
+@file{gccbug.in}.
+@item
+@file{intl/Makefile} is constructed from @file{intl/Makefile.in}.
+@item
+If a language @file{config-lang.in} file (@pxref{Front End Config, ,
+The Front End @file{config-lang.in} File}) sets @code{outputs}, then
+the files listed in @code{outputs} there are also generated.
+@end itemize
 
-If your system does not support symbolic links, you might want to
-set up @file{config.h} to contain a @samp{#include} command which
-refers to the appropriate file.
+The following configuration headers are created from the Makefile,
+using @file{mkconfig.sh}, rather than directly by @file{configure}.
+@file{config.h}, @file{bconfig.h} and @file{tconfig.h} all contain the
+@file{xm-@var{machine}.h} header, if any, appropriate to the host,
+build and target machines respectively, the configuration headers for
+the target, and some definitions; for the host and build machines,
+these include the autoconfigured headers generated by
+@file{configure}.  The other configuration headers are determined by
+@file{config.gcc}.  They also contain the typedefs for @code{rtx},
+@code{rtvec} and @code{tree}.
 
+@itemize @bullet
 @item
-A file named @file{tconfig.h} is created which includes the top-level config
-file for your target machine.  This is used for compiling certain
-programs to run on that machine.
-
+@file{config.h}, for use in programs that run on the host machine.
 @item
-A file named @file{tm.h} is created which includes the
-machine-description macro file for your target machine.  It should be in
-the subdirectory @file{config} and its name is often
-@file{@var{machine}.h}.
-
+@file{bconfig.h}, for use in programs that run on the build machine.
+@item
+@file{tconfig.h}, for use in programs and libraries for the target
+machine.
 @item
-The command file @file{configure} also constructs the file
-@file{Makefile} by adding some text to the template file
-@file{Makefile.in}.  The additional text comes from files in the
-@file{config} directory, named @file{t-@var{target}} and
-@file{x-@var{host}}.  If these files do not exist, it means nothing
-needs to be added for a given target or host.
+@file{tm_p.h}, which includes the header @file{@var{machine}-protos.h}
+that contains prototypes for functions in the target @file{.c} file.
+FIXME: why is such a separate header necessary?
 @end itemize