/[resiprocate]/branches/b-directory-reorg/resip/README.autotools
ViewVC logotype

Contents of /branches/b-directory-reorg/resip/README.autotools

Parent Directory Parent Directory | Revision Log Revision Log


Revision 5272 - (show annotations) (download)
Thu Aug 18 23:49:50 2005 UTC (14 years, 5 months ago) by jason
File size: 2893 byte(s)
initial reorg - more to come
1 2004.02.22
2 Updated 2005.08.07
3
4 USING AUTOTOOLS WITH RESIPROCATE
5 ================================
6
7 You are seeing this file because you have checked out a 'HEAD' version of
8 reSIProcate. In order to use reSIProcate with the autotools, you'll need to run
9 the 'use-autotools.sh' script in this directory. This script will remove the
10 'old' build system in 'build' and update the required files for autotools by
11 moving them to the b-autotools branch.
12
13 You will need fairly recent autotools to make this all work.
14
15 This documentation will be updated shortly.
16
17 After running use-autotools.sh, you need to run 'autogen.sh' in the sip
18 directory to 'bootstrap' the autotools files.
19
20 You should run autogen.sh in it's own sub-shell:
21
22 % bash autogen.sh
23
24 Once this step is complete, you no longer need to mess around with
25 autogen.sh. A simple autoreconf will do in case you add files to the
26 Makefile.am's.
27
28 NOTE: You need to build ares PRIOR to compiling resiprocate. The ares build
29 system does NOT support independent directories for object files are this time.
30
31 To compile repro with autotools too, you need to change to the repro directory
32 and execute
33
34 % bash autogen.sh
35
36 one more time.
37
38 Note: resiprocate needs to be compiled and installed first, which is not
39 verified yet by configure, before you can compile repro.
40
41 MULTI ARCHITECTURE BUILDS or BUILDING WITH SEPARATE OBJECT DIRECTORIES
42 ----------------------------------------------------------------------
43
44 When done properly, autotools-based builds will permit the source
45 files to be elsewhere when you build. In order to take advantage
46 of this, you may choose to run 'configure' from a different directory.
47 (This directory will be the build directory and will contain a heirarchy
48 of directories analogous to the source tree.) All files that are the result
49 of the build process (object, library and dependancy files for example) will
50 be in these directories, leaving the source directories untouched.
51
52 This is an excellent way to have several architectures or optimization levels
53 building from the same source base.
54
55 For example:
56
57 cd sip
58 $ mkdir PowerPC.Darwin
59 $ cd PowerPC.Darwin
60 $ ../configure --disable-static --enable-maintainer-mode -C ....
61 $ make
62 ...
63
64 There are several options that you can provide the autotools to speed up the
65 build process. Since by default autotools builds both static and shared
66 libraries it takes up to 4 compilation passes per source file. With the heavy
67 use of templates in reSIProcate, this results in very long compile times. If
68 you specific only shared or only static compilations, your can half the compile
69 time. (--disable-static or --disable-shared).
70
71
72 If you are building just a single time (for the purposes of USING resiprocate)
73 then you can also disable dependancy tracking (see configure --help) for the
74 syntax).
75
76
77 Any questions, please mail the devel list
78
79 resiprocate-devel@list.sipfoundry.org
80

webmaster AT resiprocate DOT org
ViewVC Help
Powered by ViewVC 1.1.27