-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME.subversion
149 lines (125 loc) · 6.28 KB
/
README.subversion
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
Generic guide to install Pioneers from the Subversion repository
For the impatient
=================
If all dependencies (see below) are installed on your computer, the following
will build and install Pioneers:
./autogen.sh
make
sudo make install
A minimal setup
===============
You will need a valid build environment.
You'll need at least gcc, intltool, libtool, autoconf, automake-1.9, make,
pkgconfig and the development packages for glib and gettext.
To build the graphical applications, you'll also need the gtk+-2.0 development
packages, scrollkeeper, gnome-common, rsvg or ImageMagick, the base package for
ghostscript, and netpbm.
Netpbm 10.30 does not work correctly, use version 10.29 instead.
(This has been confirmed for Cygwin and Gentoo)
For a more complete and detailed list of packages, look in README.Cygwin
Building Pioneers
=================
Pioneers is very flexible and will exclude certain programs when they cannot
be built.
First, you must run
./autogen.sh
This will generate "configure", and immediately run it with the arguments
specified on the commandline of autogen.sh, plus --enable-maintainer-mode.
When finished, configure will print a summary about what will be built when
you do "make".
If you don't want to run configure yet, set the variable NOCONFIGURE to a
non-empty value:
NOCONFIGURE=true ./autogen.sh
This must also be used if you want to build outside the source directory
(in which case configure must be run from there).
Commandline options
===================
configure supports many options, of which many are standard for autoconf
projects. For a full list, run configure with the --help option.
Interesting options are:
--prefix=[directory]
Specify where the program should be installed when running "make
install". The default is "/usr/local", which means the programs are
installed in /usr/local/bin, and the data (mostly) in
/usr/local/share/games/pioneers/. This can be used when full rights
to the file system are not available, for example to install in a
user's home directory. The specified directory must be a full path,
so it must start with a /.
Note that this is the only proper way to install in a particular
place. Using for example "make DESTDIR=/path install" will put the
executables in the same place, but they will be looking for their data
files in the wrong place. It is advised to run "make clean" after
configure with a different prefix than before was run, to make sure
all files with paths in them are rebuilt.
--enable-maintainer-mode
This has four effects:
- It changes the defaults for warnings, deprecation-checks, debug, and
logging to "yes" (but they can be overridden again by using
--disable-warnings, etc).
- It will add rules to the Makefile to rebuild and rerun configure if its
source files have changed (configure.ac, Makefile.am).
- It will enable the generation of Microsoft Windows icons.
- 'make dist' will be enabled.
Note that --enable-maintainer-mode is automatically passed to configure
when it is run from autogen.sh.
--without-ms-icons
Turns off the generation of the icons. Only useful in conjunction with
--enable-maintainer-mode. As a side effect 'make dist' is disabled.
--enable-warnings=[yes|no|full]
Turn on compiler warnings (some gcc specific)
The default is no, unless --enable-maintainer-mode is used.
If specified without a value, "yes" is assumed.
The option 'full' is experimental and gives (too) many (useless) warnings.
--enable-debug
Add full debugging information to the executables.
The default is not to specify any flags to the compiler. This means that
no extra debugging information is added, but the executables are not
stripped either. If you want to install stripped executables, use "make
install-strip" instead of "make install".
This option is on by default when --enable-maintainer-mode is used.
--enable-deprecation-checks
Enable strict checks for the functions in the libraries Pioneers uses.
This option is turned off by default, unless --enable-maintainer-mode is
specified.
--enable-admin-gtk
This will turn on very old, unmaintained code.
Turn on at your own risk.
--enable-protocol=[IPv4|unspecified (default)]
This will force the network code to create sockets for IPv4 only or
possibly IPv6 too. Some operating systems do bridge incoming IPv4
connections to IPv6 and should use IPv4 here.
--without-gtk
Turn off the building of the (graphical) executables that depend on Gtk+.
Even when the library is present, those executables will not be built.
--without-help
Turn off the building of the online help. This removes the dependency on
scrollkeeper and libgnome.
Some musings
============
The package gnome-common is not strictly needed, a copy of the only file
that is needed (gnome-autogen.sh) is included in the macros directory.
You need to have either rsvg or ImageMagick installed. It is used to render
the .svg images to bitmaps. When the configure.ac script was written, rsvg
gave the best results, so it is preferred over ImageMagick.
You'll need ghostscript-base for the rendering of the fonts in the .svg
images.
Even though the .ico (Microsoft Windows icons) are only required for Microsoft
Windows, they are included in the tarball because they are generated and need
special programs to rebuild them.
The icons can be rebuilt with netpbm. However, version 10.30 has a (known) bug
that makes it useless for building Pioneers. Downgrade to 10.29 (or use the
Debian variant)
For the inclusion of help in pioneers, you need scrollkeeper and libgnome.
Alternatively you need xmlto, and go to the client/help/C directory and run
'make html', to get the help rendered in html format.
The build system uses the default paths that autoconf provides. This is not
conform the FHS (2.3) in two cases: bindir ($(prefix)/bin by default, should
be $(prefix)/games) and mandir ($(prefix)/man by default, should be
$(prefix)/share/man). If all the files should be in their proper places,
specify these options to the configure (or autogen.sh) command line:
./configure --mandir='$(prefix)/share/man' --bindir='$(exec_prefix)/games'
The single quotes are important to make sure the shell doesn't perform
substitutions on the values.
Roland Clobus
Bas Wijnen
2006-08-15 (Pioneers 0.10.1)