145
|
1 @c Copyright (C) 1988-2020 Free Software Foundation, Inc.
|
0
|
2 @c This is part of the GCC manual.
|
|
3 @c For copying conditions, see the file gcc.texi.
|
|
4
|
|
5 @node Configuration Files
|
|
6 @subsubsection Files Created by @code{configure}
|
|
7
|
|
8 Here we spell out what files will be set up by @file{configure} in the
|
|
9 @file{gcc} directory. Some other files are created as temporary files
|
|
10 in the configuration process, and are not used in the subsequent
|
|
11 build; these are not documented.
|
|
12
|
|
13 @itemize @bullet
|
|
14 @item
|
|
15 @file{Makefile} is constructed from @file{Makefile.in}, together with
|
|
16 the host and target fragments (@pxref{Fragments, , Makefile
|
|
17 Fragments}) @file{t-@var{target}} and @file{x-@var{host}} from
|
|
18 @file{config}, if any, and language Makefile fragments
|
|
19 @file{@var{language}/Make-lang.in}.
|
|
20 @item
|
|
21 @file{auto-host.h} contains information about the host machine
|
|
22 determined by @file{configure}. If the host machine is different from
|
|
23 the build machine, then @file{auto-build.h} is also created,
|
|
24 containing such information about the build machine.
|
|
25 @item
|
|
26 @file{config.status} is a script that may be run to recreate the
|
|
27 current configuration.
|
|
28 @item
|
|
29 @file{configargs.h} is a header containing details of the arguments
|
|
30 passed to @file{configure} to configure GCC, and of the thread model
|
|
31 used.
|
|
32 @item
|
|
33 @file{cstamp-h} is used as a timestamp.
|
|
34 @item
|
|
35 If a language @file{config-lang.in} file (@pxref{Front End Config, ,
|
|
36 The Front End @file{config-lang.in} File}) sets @code{outputs}, then
|
|
37 the files listed in @code{outputs} there are also generated.
|
|
38 @end itemize
|
|
39
|
|
40 The following configuration headers are created from the Makefile,
|
|
41 using @file{mkconfig.sh}, rather than directly by @file{configure}.
|
|
42 @file{config.h}, @file{bconfig.h} and @file{tconfig.h} all contain the
|
|
43 @file{xm-@var{machine}.h} header, if any, appropriate to the host,
|
|
44 build and target machines respectively, the configuration headers for
|
|
45 the target, and some definitions; for the host and build machines,
|
|
46 these include the autoconfigured headers generated by
|
|
47 @file{configure}. The other configuration headers are determined by
|
|
48 @file{config.gcc}. They also contain the typedefs for @code{rtx},
|
|
49 @code{rtvec} and @code{tree}.
|
|
50
|
|
51 @itemize @bullet
|
|
52 @item
|
|
53 @file{config.h}, for use in programs that run on the host machine.
|
|
54 @item
|
|
55 @file{bconfig.h}, for use in programs that run on the build machine.
|
|
56 @item
|
|
57 @file{tconfig.h}, for use in programs and libraries for the target
|
|
58 machine.
|
|
59 @item
|
|
60 @file{tm_p.h}, which includes the header @file{@var{machine}-protos.h}
|
111
|
61 that contains prototypes for functions in the target
|
131
|
62 @file{@var{machine}.c} file. The
|
|
63 @file{@var{machine}-protos.h} header is included after the @file{rtl.h}
|
|
64 and/or @file{tree.h} would have been included.
|
|
65 The @file{tm_p.h} also
|
111
|
66 includes the header @file{tm-preds.h} which is generated by
|
|
67 @file{genpreds} program during the build to define the declarations
|
|
68 and inline functions for the predicate functions.
|
0
|
69 @end itemize
|