fixed more uClibc issues
[strongswan.git] / HACKING
1                  -------------------------
2                   strongSwan - Development
3                  -------------------------
4
5 Subversion repository
6 ---------------------
7
8 For interested developers, we have a public repository. To check out and 
9 compile the code, you need the following tools:
10
11     - Subversion (1.3.1)
12     - a recent GNU C complier (gcc-3.4.6)
13     - recent autotools (autoconf-2.59, automake-1.9.6, libtool-1.5.22)
14     - the usual strongSwan dependencies (gmp >= 4.1.4, optional curl, ldap)
15     - perl (5.8.8)
16     - lex (flex-2.5.33)
17     - yacc (bison-2.1)
18     - gperf (3.0.1)
19     - Doxygen (1.4.6)
20
21 The numbers in brackets represent the versions used on our development systems,
22 other version MAY work, too. Not all tools are checked by the configure script,
23 as they are not needed in the tarball distributions, so check them manually.
24
25 To check out the trunk, use:
26
27     svn co http://www.strongswan.org/ikev2/trunk strongswan
28
29 After a successful check out, give the autotools a try:
30
31     cd strongswan/
32     ./autogen.sh
33
34 Then you're in, start the build as usual:
35
36     ./configure [options]
37     make
38     make install
39
40
41 uClibc support
42 --------------
43
44 Support for uClibc is still work in progress. To get startet with strongSwan
45 on uClibc, yoou need version which supports getifaddrs ( > 0.9.28).
46 Additionally, you need the at least the following options:
47
48 String and Stdio Support --->
49   [*] Support glibc's register_printf_function()
50   [*] Support the '%m' specifier in printf format strings
51 General Library Settings --->
52   [*] Support global constructors and destructors
53
54 We must reduce the number of printf handlers, as uClibc only supports 10 of
55 them. It is fairly untested yet, so don't except to get it running without
56 further tweaks.