/[resiprocate]/main/README
ViewVC logotype

Contents of /main/README

Parent Directory Parent Directory | Revision Log Revision Log


Revision 9954 - (show annotations) (download)
Wed Jan 23 21:56:16 2013 UTC (6 years, 10 months ago) by dpocock
File size: 3232 byte(s)
doc: Update README now that we use autotools
1
2
3
4 IMPORTANT
5
6 - the notes below relate to the legacy build
7 system from reSIProcate <= 1.7.x
8
9 - now, with reSIProcate 1.8.x and beyond,
10 please see:
11
12 http://www.resiprocate.org/AutotoolsBuild
13
14 and
15
16 http://www.resiprocate.org/Configuration_Options
17
18
19 -----------------------------------------------------------
20
21 Notes for the legacy build system:
22
23
24 The legacy reSIProcate build system is derived from
25 the VOCAL build system (http://www.vovida.org).
26
27 Adding New Files to a module
28 ----------------------------
29
30 Example: Adding a new file Foo.cxx to the stack
31
32 1) Edit resip/stack/Makefile
33 2) Add Foo.cxx to the SRC list
34
35 Example: Adding a new file Bar.cxx to rutil
36 1) Edit rutil/Makefile
37 2) Add Bar.cxx to the SRC list
38
39 Notes:
40 - All files noted in SRC list will be added to the target library
41 - Adding a new header file does not need to be noted in the Makefile
42 - To add something to the compile line add to CXXFLAGS.
43 e.g. CXXFLAGS += -DMYSPECIALDEFINE
44 - To add something to the link line add to LDFLAGS and/or LDLIBS
45 e.g. LDFLAGS += -L/usr/local/myspeciallibdir
46 e.g. LDLIBS += -lmyspeciallib
47
48 Creating an application based on the stack:
49
50 Option 1: (Using the resip build system)
51 For example applications using the resip build system look at resip/stack/test or at repro.
52
53 ###########################################################################################
54 # Create a Makefile in the directory with the units with the following template
55 # This should be the path to the build directory of resip (in the sip subdirectory)
56 BUILD = ../../build
57
58 # Includes macros
59 include $(BUILD)/Makefile.pre
60
61 # Add any options that need to be passed to the C++ compiler here
62 #CXXFLAGS += -DMYSPECIALDEFINE
63
64 # Add any options that need to be passed to the C compiler here
65 #CFLAGS += -DMYOTHERDEFINE
66
67 # Add any options that need to be passed to the linker here
68 #LDFLAGS += -L/usr/local/mydir
69
70 # Add any libraries that need to be passed to the linker here
71 #LDLIBS += -lmylib
72
73 # All of these packages are prerequisites for resiprocate
74 PACKAGES += RESIP RUTIL OPENSSL ARES PTHREAD
75
76 # Add an entry to TESTPROGRAMS for each target that has a main in it
77 # On linux this will generate an executable in bin.debug.Linux.i686/main
78 TESTPROGRAMS += main.cxx
79
80 # Add each of the C++ or C files that other than the main
81 # Each main target (from TESTPROGRAMS) will be linked with all of the files in SRC
82 SRC = TestSupport.cxx
83
84 # Includes macros
85 include $(BUILD)/Makefile.post
86 ###########################################################################################
87
88 Option 2: (Using a third party build system)
89
90 Prerequisites:
91 - Install ares library from contrib/ares
92 - cd contrib/ares
93 - ./configure
94 - make
95 - make install
96
97 Pass the following flags to C++ compiler:
98 Assumptions:
99 - have pthreads
100 - have openssl installed
101 - have ares installed
102 - resiprocate library is built and installed
103
104 # Linux Example
105 CXXFLAGS += -Wall -fPIC -Wno-deprecated -march=i686 \
106 -D_REENTRANT -DUSE_SSL -DNEW_MSG_HEADER_SCANNER -DUSE_IPV6 -DUSE_ARES \
107 -I/usr/kerberos/include -I$(RESIP_DIR)/lib.debug.Linux.i686
108 LDFLAGS += -L$(RESIP_DIR)/lib.debug.Linux.i686
109 LDLIBS += -lresip -lrutil -lssl -lcrypto -lares -lpthread
110
111

Properties

Name Value
svn:eol-style native

webmaster AT resiprocate DOT org
ViewVC Help
Powered by ViewVC 1.1.27