blob: 6cbe2c4e7aa92b49d8090d7c61961656ae7d5ded [file] [log] [blame]
sfl android42fcf7a2012-08-06 15:45:32 -04001This repository is meant for the porting of SFLphone to Android.
2
3
4To build SFLphone and all its dependencies, make sure that Android's NDK and SDK
5are properly installed on your system.
6
7You have also to make sure that the following environment variables are defined:
8
Tristan Matthewsd8aa4322013-07-17 10:51:54 -04009export ANDROID_NDK=$HOME/path/to/android-ndk-r*b
10export ANDROID_SDK=$HOME/path/to/android-sdk-linux
sfl android42fcf7a2012-08-06 15:45:32 -040011
12The path to the required Android's build executable must be also specified:
13
14export PATH=$PATH:$ANDROID_NDK
Emeric Vigier9701e032012-09-12 12:38:01 -040015
16BUILD
17-----
Emeric Vigiercca7f562012-09-20 14:22:30 -040018install swig-2.0.6 or later and python-2.7 or later on your system
Emeric Vigier9701e032012-09-12 12:38:01 -040019
20$ cd sflphone-android
21
22Check that following files are executable:
23 jni/sflphone/daemon/src/JavaJNI2CJNI_Load.py
24 make-swig.sh
25
Adrien Béraud432f0672013-02-27 17:06:36 -050026Compile pjsip-android
Alexandre Lision7c6f4a62013-09-05 13:27:01 -040027$ pushd jni/pjproject-android/
Alexandre Lision7a0401d2013-09-30 14:08:29 -040028$ ./configure-android --disable-sound --disable-oss --disable-video --enable-ext-sound --disable-speex-aec --disable-g711-codec --disable-l16-codec --disable-gsm-codec --disable-g722-codec --disable-g7221-codec --disable-speex-codec --disable-ilbc-codec --disable-sdl --disable-ffmpeg --disable-v4l2
alisionf4571d92013-07-04 17:11:35 -040029
alisionf76de3b2013-04-16 15:35:22 -040030$ make dep && make
31$ popd
32
33
34Generate dbus interface
Alexandre Lision7c6f4a62013-09-05 13:27:01 -040035$ ./make-swig.sh
36
37Compile libsndfile-1.0.25
38$ pushd jni/libsndfile-1.0.25/
39$ ./configure --disable-alsa --disable-external-libs
40$ popd
alisionf76de3b2013-04-16 15:35:22 -040041
Adrien Béraud432f0672013-02-27 17:06:36 -050042
Emeric Vigierc30b71d2012-09-12 14:51:47 -040043$ ndk-build -j4
Emeric Vigier9701e032012-09-12 12:38:01 -040044
Emeric Vigierc30b71d2012-09-12 14:51:47 -040045Check that no errors occurred. In particular, following files should have been generated by make-swig.sh:
Emeric Vigier9701e032012-09-12 12:38:01 -040046 sflphoneservice_loader.c
47 callmanager_wrap.cpp
48 sflphoneservice.java
49 sflphoneserviceJNI.java
50 ManagerImpl.java
51
alisionf76de3b2013-04-16 15:35:22 -040052
53Add compatibility library to libs folder
54$ cp $ANDROID_SDK/extras/android/support/v13/android-support-v13.jar ./libs/
55
56
Emeric Vigier9701e032012-09-12 12:38:01 -040057Then build android project with your favorite JDK: eclipse or ant.