In an ongoing effort to accelerate development of GCC and provide an open development environment, we are making our CVS source repository available read-only to the public at large.
That way you can pick up any version (including releases) of GCC that is in our repository or our web pages.
In addition you can browse our CVS history online.
If you don't already have CVS, we recommend you pick up a recent copy from CVShome.org. (Note that CVS versions up to 1.10.4 have "Y2K problems".)
Assuming you have CVS installed on your machine you can check out the GCC sources with the following sequence of commands:
Set CVSROOT in your environment to
:pserver:anoncvs@gcc.gnu.org:/cvs/gcc
Or alternately add
-d :pserver:anoncvs@gcc.gnu.org:/cvs/gcc
in the CVS commands below (place it immediately after cvs
,
i.e., before any other CVS arguments).
Issue the command cvs login
. You will be prompted for
a password; reply with anoncvs
.
Issue the command
cvs -z 9 co gcc
to check out the compiler sources, respectively
cvs -z 9 co wwwdocs
to check out our web pages.
Once you've got the repository checked out, cvs update
will sync your local copy with the repository. See the CVS manual for
additional information on how to use CVS.
Our CVS source tree contains a number of files that are generated
from other source files by build tools such as Bison, Autoconf, and
Gperf. Bison is now required when using CVS to access our sources,
but all other generated files are included in the source tree so that
GCC can be built without these build tools. The CVS checkout and
update operations do not insure that the timestamps of generated files
are later than those of the files they are generated from. The script
contrib/gcc_update
updates the timestamps for all these
generated files. See the comments in that script for instructions on
running it.
GCC's build system (in particular Make) uses file timestamps to
determine if a generated file needs to be updated by running a particular
build tool. Because of this, GCC's build system may believe that
a generated file needs regenerating even though its source has not
changed, and require a particular build tool to rebuild that generated
file. If the appropriate build tool is installed on your system, then
this will not be a problem. If you do not intend to make changes to
the source, you can avoid installing these build tools by running
contrib/gcc_update
.
There has been some discussion of removing these generated files from GCC's CVS source tree (there is no discussion of removing them from them from the released source tarballs). If that happens then building GCC from the CVS source tree would require installing the above mentioned build tools. Installing these build tools is not particularly difficult, but can be time consuming especially if you only occasionally install GCC on a particular system.
The build tools that GCC uses are all available from the GNU Project (see http://www.gnu.org), are often already available on many systems, and can often be found already built for some systems. A partial list of these build tools is: Autoconf, Bison, Xgettext, Automake, and Gperf.
You can check out the latest version of the GCC 2.95 release branch with the following command:
cvs -z 9 co -rgcc-2_95-branch gcc
By changing the -r
argument above you can check out
particular releases or snapshots or the latest snapshot. Other tags/branches
you may want to check out include:
The web pages for the GCC project are also in the CVS repository
and you can check them out, submit patches, etc just like you do for
the compiler itself. Use cvs co wwwdocs
to check out
the web pages.