summaryrefslogtreecommitdiffstats
path: root/README-hacking
blob: 563d214161cffabf1008066d6e4f20a686e46d43 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
-*- outline -*-

These notes intend to help people working on the checked-out sources.
These requirements do not apply when building from a distribution tarball.

* Requirements

We've opted to keep only the highest-level sources in the GIT repository.
This eases our maintenance burden, (fewer merges etc.), but imposes more
requirements on anyone wishing to build from the just-checked-out sources.
For example, you have to use the latest stable versions of the maintainer
tools we depend upon, including:

- Automake <http://www.gnu.org/software/automake/>
- Autoconf <http://www.gnu.org/software/autoconf/>
- Bison <http://www.gnu.org/software/bison/>
- Gettext <http://www.gnu.org/software/gettext/>
- Gperf <http://www.gnu.org/software/gperf/>
- Gzip <http://www.gnu.org/software/gzip/>
- Perl <http://www.cpan.org/>
- Rsync <http://samba.anu.edu.au/rsync/>
- Tar <http://www.gnu.org/software/tar/>

Valgrind <http://valgrind.org/> is also highly recommended, if
Valgrind supports your architecture.

Only building the initial full source tree will be a bit painful.
Later, a plain `git pull && make' should be sufficient.

* First GIT checkout

You can get a copy of the source repository like this:

	$ git clone git://git.sv.gnu.org/idutils

The next step is to get other files needed to build, which are
extracted from other source packages:

	$ ./bootstrap

And there you are!  Just

	$ ./configure
	$ make
	$ make check

At this point, there should be no difference between your local copy,
and the GIT master copy:

	$ git diff

should output no difference.

Enjoy!

-----

Copyright (C) 2002-2008 Free Software Foundation, Inc.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.