]> git.saurik.com Git - bison.git/blame_incremental - README-hacking
* NEWS (2.3a+): Mention yesterday's state-removal change.
[bison.git] / README-hacking
... / ...
CommitLineData
1-*- outline -*-
2
3These notes intend to help people working on the checked-out sources.
4These requirements do not apply when building from a distribution tarball.
5
6* Requirements
7
8We've opted to keep only the highest-level sources in the repository.
9This eases our maintenance burden, (fewer merges etc.), but imposes more
10requirements on anyone wishing to build from the just-checked-out sources.
11For example, you have to use the latest stable versions of the maintainer
12tools we depend upon, including:
13
14- Automake <http://www.gnu.org/software/automake/>
15- Autoconf <http://www.gnu.org/software/autoconf/>
16- Flex <http://www.gnu.org/software/flex/>
17- Gettext <http://www.gnu.org/software/gettext/>
18- Gzip <http://www.gnu.org/software/gzip/>
19- Tar <http://www.gnu.org/software/tar/>
20- Wget <http://www.gnu.org/software/wget/>
21
22Only building the initial full source tree will be a bit painful.
23Later, after synchronizing from the repository a plain `make' should
24be sufficient.
25
26Valgrind <http://valgrind.org/> is also highly recommended, if
27Valgrind supports your architecture.
28
29Bison is written using Bison grammars, so there are bootstrapping
30issues. The bootstrap script attempts to discover when the C code
31generated from the grammars is out of date, and to bootstrap with an
32out-of-date version of the C code, but the process is not foolproof.
33Also, you may run into similar problems yourself if you modify Bison.
34
35Only building the initial full source tree will be a bit painful,
36later, a plain `cvs update -P && make' should be sufficient.
37
38* First checkout
39
40Obviously, if you are reading these notes, you did manage to check out
41Bison from the repository. For the record, you will find all the
42relevant information on:
43
44 http://savannah.gnu.org/cvs/?group_id=56
45
46The next step is to get other files needed to build, which are
47extracted from other source packages:
48
49 $ ./bootstrap
50
51And there you are! Just
52
53 $ ./configure
54 $ make
55 $ make check
56
57At this point, there should be no difference between your local copy,
58and the master copy:
59
60 $ cvs diff
61
62should output no difference.
63
64Enjoy!
65
66-----
67
68Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 Free Software
69Foundation, Inc.
70
71This file is part of GNU Bison.
72
73GNU Bison is free software; you can redistribute it and/or modify
74it under the terms of the GNU General Public License as published by
75the Free Software Foundation; either version 2, or (at your option)
76any later version.
77
78GNU Bison is distributed in the hope that it will be useful,
79but WITHOUT ANY WARRANTY; without even the implied warranty of
80MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
81GNU General Public License for more details.
82
83You should have received a copy of the GNU General Public License
84along with Bison; see the file COPYING. If not, write to
85the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
86Boston, MA 02110-1301, USA.