aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc/makefile.texi
diff options
context:
space:
mode:
authorJoseph Myers <jsm28@cam.ac.uk>2001-11-12 15:46:48 +0000
committerJoseph Myers <jsm28@gcc.gnu.org>2001-11-12 15:46:48 +0000
commit73a8ed7ed443bcdcc57cd2d29fe15a44c0cf56cd (patch)
tree7ce809932fcd2257692c59cd13c2e788c4e9896a /gcc/doc/makefile.texi
parent285a5742c0cc7d86f78dca98ee0287ae6511d16d (diff)
downloadgcc-73a8ed7ed443bcdcc57cd2d29fe15a44c0cf56cd.zip
gcc-73a8ed7ed443bcdcc57cd2d29fe15a44c0cf56cd.tar.gz
gcc-73a8ed7ed443bcdcc57cd2d29fe15a44c0cf56cd.tar.bz2
gcc.texi: Move several chapters out to ...
* doc/gcc.texi: Move several chapters out to ... * doc/configterms.texi, doc/fragments.texi, doc/hostconfig.texi, doc/include/linux-and-gnu.texi, doc/interface.texi, doc/makefile.texi, doc/passes.texi, doc/portability.texi: ... here. New files. * doc/gcc.texi, doc/contrib.texi: Move section headings into contrib.texi. * Makefile.in ($(docdir)/gcc.info, gcc.dvi): Update dependencies. From-SVN: r46951
Diffstat (limited to 'gcc/doc/makefile.texi')
-rw-r--r--gcc/doc/makefile.texi104
1 files changed, 104 insertions, 0 deletions
diff --git a/gcc/doc/makefile.texi b/gcc/doc/makefile.texi
new file mode 100644
index 0000000..d4eb9f3
--- /dev/null
+++ b/gcc/doc/makefile.texi
@@ -0,0 +1,104 @@
+@c Copyright (C) 2001 Free Software Foundation, Inc.
+@c This is part of the GCC manual.
+@c For copying conditions, see the file gcc.texi.
+
+@node Makefile
+@chapter Additional Makefile and configure information.
+
+@section Makefile Targets
+@cindex makefile targets
+@cindex targets, makefile
+
+@table @code
+@item all
+This is the default target. Depending on what your build/host/target
+configuration is, it coordinates all the things that need to be built.
+
+@item doc
+Produce info-formatted documentation. Also, @code{make dvi} is
+available for DVI-formatted documentation, and @code{make
+generated-manpages} to generate man pages.
+
+@item mostlyclean
+Delete the files made while building the compiler.
+
+@item clean
+That, and all the other files built by @code{make all}.
+
+@item distclean
+That, and all the files created by @code{configure}.
+
+@item extraclean
+That, and any temporary or intermediate files, like emacs backup files.
+
+@item maintainer-clean
+Distclean plus any file that can be generated from other files. Note
+that additional tools may be required beyond what is normally needed to
+build gcc.
+
+@item install
+Installs gcc.
+
+@item uninstall
+Deletes installed files.
+
+@item check
+Run the testsuite. This creates a @file{testsuite} subdirectory that
+has various @file{.sum} and @file{.log} files containing the results of
+the testing. You can run subsets with, for example, @code{make check-gcc}.
+You can specify specific tests by setting RUNTESTFLAGS to be the name
+of the @file{.exp} file, optionally followed by (for some tests) an equals
+and a file wildcard, like:
+
+@example
+make check-gcc RUNTESTFLAGS="execute.exp=19980413-*"
+@end example
+
+Note that running the testsuite may require additional tools be
+installed, such as TCL or dejagnu.
+
+@item bootstrap
+Builds gcc three times---once with the native compiler, once with the
+native-built compiler it just built, and once with the compiler it built
+the second time. In theory, the last two should produce the same
+results, which @code{make compare} can check. Each step of this process
+is called a ``stage'', and the results of each stage @var{N}
+(@var{N} = 1@dots{}3) are copied to a subdirectory @file{stage@var{N}/}.
+
+@item bootstrap-lean
+Like @code{bootstrap}, except that the various stages are removed once
+they're no longer needed. This saves disk space.
+
+@item bubblestrap
+Once bootstrapped, this incrementally rebuilds each of the three stages,
+one at a time. It does this by ``bubbling'' the stages up from their
+subdirectories, rebuilding them, and copying them back to their
+subdirectories. This will allow you to, for example, quickly rebuild a
+bootstrapped compiler after changing the sources, without having to do a
+full bootstrap.
+
+@item quickstrap
+Rebuilds the most recently built stage. Since each stage requires
+special invocation, using this target means you don't have to keep track
+of which stage you're on or what invocation that stage needs.
+
+@item cleanstrap
+Removed everything (@code{make clean}) and rebuilds (@code{make bootstrap}).
+
+@item stage@var{N} (@var{N} = 1@dots{}4)
+For each stage, moves the appropriate files to the @file{stage@var{N}}
+subdirectory.
+
+@item unstage@var{N} (@var{N} = 1@dots{}4)
+Undoes the corresponding @code{stage@var{N}}.
+
+@item restage@var{N} (@var{N} = 1@dots{}4)
+Undoes the corresponding @code{stage@var{N}} and rebuilds it with the
+appropriate flags.
+
+@item compare
+Compares the results of stages 2 and 3. This ensures that the compiler
+is running properly, since it should produce the same object files
+regardless of how it itself was compiled.
+
+@end table