This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
PATCH.DOC: reconfiguring gcc
- From: Basile STARYNKEVITCH <basile at starynkevitch dot net>
- To: gcc-patches at gcc dot gnu dot org
- Date: Fri, 1 Dec 2006 18:09:14 +0100
- Subject: PATCH.DOC: reconfiguring gcc
Hello
The following patch (after my sig, to revision 119401 of trunk) add a
few sentences (mostly from stuff I wrote on the Wiki)
ChangeLog:
2006-12-01 Basile Starynkevitch <basile@starynkevitch.net>
* gcc/doc/sourcebuild.tex (Top Level): documenting reconfiguration
(Config Hints to Developers): new stuff about reconfiguration
PS. my copyright assignment (for CEA) has been recieved & processed
and this is my very first patch under it.
--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faïencerie, 92340 Bourg La Reine, France
*** opinions {are only mines, sont seulement les miennes} ***
Index: gcc/doc/sourcebuild.texi
===================================================================
--- gcc/doc/sourcebuild.texi (revision 119401)
+++ gcc/doc/sourcebuild.texi (working copy)
@@ -95,6 +95,30 @@
with GNU Binutils. @xref{Top, , GNU configure and build system,
configure, The GNU configure and build system}, for details.
+The top level directory is configured with version @emph{2.13} of
+autoconf, and the top level @file{Makefile.in} file is generated by
+@file{autogen} from files @file{Makefile.def} and @file{Makefile.tpl}.
+The @file{Makefile.tpl} is a template generating the top level
+@file{Makefile.in}. For example, developers wishing to use additional
+external libraries or configurable features inside the compiler may
+need to edit files @file{Makefile.def} and @file{configure.in} in the
+top level directory. Notice that the GCC user (building GCC from
+sources) is only configuring at the top level, hence some
+configuration options have to be passed to subdirectories (notably
+@file{gcc}). See also the @uref{http://gcc.gnu.org/wiki, GCC wiki}.
+
+To regenerate the @file{Makefile.in} and @file{configure} file at the
+top level, run the following commands there :
+
+@example
+autogen Makefile.def
+autoconf-2.13
+@end example
+
+The above commands should not produce any error sor warnings. Usually,
+you will also need to regenerate files inside the @file{gcc}
+subdirectory. See also @xref{Config Hints to Developers}.
+
@node gcc Directory
@section The @file{gcc} Subdirectory
@@ -188,6 +212,7 @@
* System Config:: The @file{config.build}, @file{config.host}, and
@file{config.gcc} files.
* Configuration Files:: Files created by running @file{configure}.
+* Config Hints to Developers:: Additional hints for developers contributing to GCC.
@end menu
@node Config Fragments
@@ -241,6 +266,26 @@
@include configfiles.texi
+@node Config Hints to Developers
+@subsubsection Additional hints for developers contributing to GCC.
+
+The @file{configure} script inside the @file{gcc} subdirectory is
+generated by autoconf version @emph{2.59} from @file{configure.ac}. It
+is not explicitly run by the user compiling GCC, but is lauched by the
+top level. Hence most user options are transmitted from the top level
+to this @file{gcc} subdirectory. See @xref{Top Level}.
+
+Contributors to GCC adding new features (or required libraries) to GCC
+may want to edit within the @file{gcc} source subdirectory the
+@file{configure.ac} and @file{Makefile.in} files (and usually some
+files at the top level). To regenerate the @file{gcc/configure} file,
+they could run the following commands in the @file{gcc} subdirectory:
+
+@example
+autoheader-2.59
+autoconf-2.59
+@end example
+
@node Build
@subsection Build System in the @file{gcc} Directory