]> git.saurik.com Git - bison.git/blame_incremental - README-hacking
-D, --define.
[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- Perl <http://www.cpan.org/>
20- Rsync <http://samba.anu.edu.au/rsync/>
21- Tar <http://www.gnu.org/software/tar/>
22
23Valgrind <http://valgrind.org/> is also highly recommended, if
24Valgrind supports your architecture.
25
26Bison is written using Bison grammars, so there are bootstrapping
27issues. The bootstrap script attempts to discover when the C code
28generated from the grammars is out of date, and to bootstrap with an
29out-of-date version of the C code, but the process is not foolproof.
30Also, you may run into similar problems yourself if you modify Bison.
31
32Only building the initial full source tree will be a bit painful.
33Later, after synchronizing from the repository a plain `make' should
34be sufficient.
35
36* First checkout
37
38Obviously, if you are reading these notes, you did manage to check out
39this package from the repository. For the record, you will find all the
40relevant information on:
41
42 http://savannah.gnu.org/cvs/?group_id=56
43
44The next step is to get other files needed to build, which are
45extracted from other source packages:
46
47 $ ./bootstrap
48
49And there you are! Just
50
51 $ ./configure
52 $ make
53 $ make check
54
55At this point, there should be no difference between your local copy,
56and the master copy:
57
58 $ cvs diff
59
60should output no difference.
61
62Enjoy!
63
64-----
65
66Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 Free Software
67Foundation, Inc.
68
69This program is free software: you can redistribute it and/or modify
70it under the terms of the GNU General Public License as published by
71the Free Software Foundation, either version 3 of the License, or
72(at your option) any later version.
73
74This program is distributed in the hope that it will be useful,
75but WITHOUT ANY WARRANTY; without even the implied warranty of
76MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
77GNU General Public License for more details.
78
79You should have received a copy of the GNU General Public License
80along with this program. If not, see <http://www.gnu.org/licenses/>.