Commit 9a243995 authored by François Grisez's avatar François Grisez

Update README.md

parent 6b6b8828
# Belle-sip
Belle-sip
=========
## Overview
Overview
--------
Belle-sip is a SIP (RFC3261) implementation written in C, with an object oriented API.
Please check "NEWS" file for an overview of current features.
......@@ -10,68 +12,56 @@ Belle-sip is distributed to everyone under the GNU GPLv2 (see COPYING file for d
Incorporating belle-sip within a closed source project is not possible under the GPL.
Commercial licensing can be purchased for that purpose from [Belledonne Communications](http://www.belledonne-communications.com).
## Build prerequisite
Dependencies
------------
* [Java SE](http://www.oracle.com/technetwork/java/javase/downloads/index.html) on openJDK
This is required to generate a C sourcefile from SIP grammar using [antlr3](http://www.antlr3.org/) generator.
### Build-time dependencies
### Dependencies
These are required to generate a C sourcefile from SIP grammar using [antlr3](http://www.antlr3.org/) generator:
* libtool
* intltool
* pkg-config
* libantlr3c-3.2 or 3.4
* antlr3-3.4
* bctoolbox (see below)
* C++ compiler (for instance g++ or clang++)
* (optional) BCUnit
* [Java SE](http://www.oracle.com/technetwork/java/javase/downloads/index.html) or OpenJDK
* [antlr 3.4](https://github.com/antlr/website-antlr3/blob/gh-pages/download/antlr-3.4-complete.jar)
#### Under Debian/Ubuntu
apt-get install libtool intltool pkg-config libantlr3c-dev antlr3 g++ make
#and for optional dependencies
apt-get install libbcunit1-dev libpolarssl-dev
### Runtime dependencies
#### Under MacOS X using HomeBrew
- *libantlr3c* version 3.2 or 3.4
- *bctoolbox* (git://git.linphone.org/bctoolbox.git or <http://www.linphone.org/releases/sources/bctoolbox/>)
brew install intltool libtool pkg-config automake libantlr3.4c homebrew/versions/antlr3
ln -s /usr/local/bin/glibtoolize /usr/local/bin/libtoolize
#### Under Windows using mingw and Visual Studio
### Under Debian/Ubuntu
The procedure is tested for Visual Studio Express 2012.
apt-get install libantlr3c-dev antlr3
* Compile and install libantlr3c, BCUnit with ./configure && make && make install
* get antlr3 from linphone's git server (see above). This version contains up to date visual studio project and solution files.
* get BCUnit from linphone's git server (see above). This version contains up to date visual studio project and solution files.
* put belle-sip next to antlr3 and to bcunit (in the same directory).
* open belle-sip/build/windows/belle-sip-tester/belle-sip-tester.sln or belle-sip/build/windows/belle-sip/belle-sip.sln
* Build the solution (antlr3 and bcunit are built automatically)
#### Building bctoolbox
### Under MacOS X using HomeBrew
bctoolbox build system is Cmake only, but provides pkg-config file for integration with autotools.
git://git.linphone.org/bctoolbox.git
brew install libantlr3.4c homebrew/versions/antlr3
#### Known issues
1. Antlr3 on windows
On windows you have to edit /usr/local/include/antl3defs.h replace:
#include <winsock.h>
with:
#include <winsock2.h>
Or get the source code from linphone's git (linphone branch):
git clone -b linphone git://git.linphone.org/antlr3.git
git clone -b linphone git://git.linphone.org/bcunit.git
Building bctoolbox with CMake
-----------------------------
cmake . -DCMAKE_INSTALL_PREFIX=<prefix> -DCMAKE_PREFIX_PATH=<search_prefix>
make
make install
Build options
-------------
* `CMAKE_INSTALL_PREFIX=<string>` : install prefix.
* `CMAKE_PREFIX_PATH=<string>` : column-separated list of prefixes where to find dependencies.
* `ENABLE_TESTS=NO` : disable non-regression tests.
* `ENABLE_STRICT=NO` : build without strict build options like `-Wall -Werror`
* `ENABLE_SHARED=NO` : do not build the shared library
* `ENABLE_STATIC=NO` : do not build the static library
Note for packagers
------------------
Our CMake scripts may automatically add some paths into research paths of generated binaries.
To ensure that the installed binaries are striped of any rpath, use `-DCMAKE_SKIP_INSTALL_RPATH=ON`
while you invoke cmake.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment