diff options
author | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-01-10 16:04:23 +0000 |
---|---|---|
committer | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-01-10 16:04:23 +0000 |
commit | a2e68e6d9acb4a212ffc31354e6c14322ebd7adb (patch) | |
tree | 1b51c9c6d40a0aa3d4f51db20a7b7e22c18fbf6d /gcc/doc/configfiles.texi | |
parent | 349662372a93f011a9881ab109c60620da232d11 (diff) | |
download | gcc-a2e68e6d9acb4a212ffc31354e6c14322ebd7adb.tar.gz |
* Makefile.in ($(docdir)/gccint.info, gccint.dvi): Add additional
dependencies.
* doc/languages.texi, doc/sourcebuild.texi: New files.
* doc/configfiles.texi: Make a subsubsection. Update.
* doc/configterms.texi: Add @node. Remove warning that this isn't
instructions for building GCC.
* doc/makefile.texi: Make a subsection.
* doc/gccint.texi: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48731 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/doc/configfiles.texi')
-rw-r--r-- | gcc/doc/configfiles.texi | 90 |
1 files changed, 60 insertions, 30 deletions
diff --git a/gcc/doc/configfiles.texi b/gcc/doc/configfiles.texi index 58aaf572d28..c6c60bbe802 100644 --- a/gcc/doc/configfiles.texi +++ b/gcc/doc/configfiles.texi @@ -1,44 +1,74 @@ -@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 +@file{mklibgcc}, a shell script to create a Makefile to build libgcc, +is constructed from @file{mklibgcc.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{hconfig.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{hconfig.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 |