summaryrefslogtreecommitdiff
path: root/doc/build-automation.texi
blob: 6c152b9161eb7af8215d8ac521e15d203dcfd1bc (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
@node Building gnulib
@section Building gnulib

If you wish to help the gnulib development effort with build logs for
your favorite platform, you may perform these steps:

@enumerate

@item Prerequisites tools

Install the proper development tools.  To build all of Gnulib well,
you will need standard POSIX utilities such as a C compiler,
@command{awk}, @command{make} and @command{sh}.  You will also need
other development tools such as Autoconf, Automake, Bison, Gettext,
Git, Gperf, Libtool, and Perl, although some of these tools are needed
only by some modules.

@item Obtain Gnulib

See @url{https://www.gnu.org/software/gnulib/} for how to get the
current Gnulib sources via Git.

@item Create gnulib directory

On a machine with GNU development tools installed and with a gnulib
git checkout, use

@example
gnulib-tool --create-megatestdir --with-tests --dir=...
@end example

Note: The created directory uses ca. 512 MB on disk.

@item Transfer gnulib directory

Transfer this directory to a build machine (HP-UX, Cygwin, or
whatever).  Often it is easier to transfer one file, and this can be
achieved by running, inside the directory the following commands:

@example
./configure
make dist
@end example

And then transferring the @file{dummy-0.tar.gz} file.

@item Build modules

On the build machine, run ./do-autobuild (or "nohup ./do-autobuild").
It creates a directory @file{logs/} with a log file for each module.

@end enumerate