diff --git a/Makefile b/Makefile index 58ba284712be8f633c89429b8b6fff410b16cbee..8d05653e4de43e4d1d19ca2923d0570dbde1d385 100644 --- a/Makefile +++ b/Makefile @@ -7,14 +7,10 @@ ARCH = $(ANDROID_ABI) SRC=sflphone-android JAVA_SOURCES=$(SRC)/src/org/sflphone/*.java JNI_SOURCES=$(SRC)/jni/*.c $(SRC)/jni/*.h -LIBVLCJNI= \ - $(SRC)/obj/local/$(ARCH)/libsflphone.so \ +LIBVLCJNI=$(SRC)/obj/local/$(ARCH)/libsflphone.so \ LIBVLCJNI_H=$(SRC)/jni/libvlcjni.h -PRIVATE_LIBDIR=android-libs -PRIVATE_LIBS=$(PRIVATE_LIBDIR)/libstagefright.so $(PRIVATE_LIBDIR)/libmedia.so $(PRIVATE_LIBDIR)/libutils.so $(PRIVATE_LIBDIR)/libbinder.so - ifneq ($(V),) ANT_OPTS += -v VERBOSE = @@ -60,14 +56,8 @@ $(LIBVLCJNI_H): BUILTINS="$$BUILTINS NULL\n};\n"; \ printf "/* Autogenerated from the list of modules */\n $$DEFINITION\n $$BUILTINS\n" > $@ -$(PRIVATE_LIBDIR)/%.so: $(PRIVATE_LIBDIR)/%.c - $(GEN)$(TARGET_TUPLE)-gcc $< -shared -o $@ --sysroot=$(ANDROID_NDK)/platforms/android-9/arch-$(PLATFORM_SHORT_ARCH) - -$(PRIVATE_LIBDIR)/%.c: $(PRIVATE_LIBDIR)/%.symbols - $(VERBOSE)rm -f $@ - $(GEN)for s in `cat $<`; do echo "void $$s() {}" >> $@; done -$(LIBVLCJNI): $(JNI_SOURCES) $(LIBVLCJNI_H) $(PRIVATE_LIBS) +$(LIBVLCJNI): $(JNI_SOURCES) $(LIBVLCJNI_H) @if [ -z "$(SFLPHONE_BUILD_DIR)" ]; then echo "SFLPHONE_BUILD_DIR not defined" ; exit 1; fi @if [ -z "$(ANDROID_NDK)" ]; then echo "ANDROID_NDK not defined" ; exit 1; fi @echo @@ -95,7 +85,6 @@ apkclean: lightclean: cd $(SRC) && rm -rf libs obj bin $(SFLPHONE_APK) - rm -f $(PRIVATE_LIBDIR)/*.so $(PRIVATE_LIBDIR)/*.c clean: lightclean rm -rf $(SRC)/gen java-libs/*/gen java-libs/*/bin .sdk vlc-sdk/ vlc-sdk.7z diff --git a/sflphone-android/Makefile b/sflphone-android/Makefile deleted file mode 100644 index 2fb9f3c307252222cbcdff22dc3c5a71e23c86df..0000000000000000000000000000000000000000 --- a/sflphone-android/Makefile +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/sh - -APP=bin/SFLPhoneHome-debug.apk -all: local.properties - ndk-build -C jni -j4 - ant debug - -local.properties: - android update project -p . - -# You may want to specify a device with -s SERIAL NUMBER -install: $(APP) - adb install -r $^ - -uninstall: - adb uninstall org.sflphone - -clean: - ant clean - rm -rf obj $(APP) diff --git a/sflphone-android/adb-push-sflphone.sh b/sflphone-android/adb-push-sflphone.sh deleted file mode 100755 index 2e1ea75eaf6acd1d48d59158d6fa1057118ff339..0000000000000000000000000000000000000000 --- a/sflphone-android/adb-push-sflphone.sh +++ /dev/null @@ -1,85 +0,0 @@ -#!/bin/bash -# -# Copyright (C) 2004-2012 Savoir-Faire Linux Inc. -# -# Author: Alexandre Savard <alexandre.savard@savoirfairelinux.com> -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -# -# Additional permission under GNU GPL version 3 section 7: -# -# If you modify this program, or any covered work, by linking or -# combining it with the OpenSSL project's OpenSSL library (or a -# modified version of that library), containing parts covered by the -# terms of the OpenSSL or SSLeay licenses, Savoir-Faire Linux Inc. -# grants you additional permission to convey the resulting work. -# Corresponding Source for a non-source form of such a combination -# shall include the source code for the parts of OpenSSL used as well -# as that of the covered work. -# - -ANDROID_REMT_CMD="abd remount" -ANDROID_PUSH_CMD="adb push" - -ANDROID_SYSTEM="/system" -ANDROID_SYSTEM_BIN="$ANDROID_SYSTEM/bin" -ANDROID_SYSTEM_XBN="$ANDROID_SYSTEM/xbin" -ANDROID_SYSTEM_LIB="$ANDROID_SYSTEM/lib" -ANDROID_SYSTEM_ETC="$ANDROID_SYSTEM/etc" - -ANDROID_DATA_DATA="/data/data" -ANDROID_DATA_CODECS="$ANDROID_DATA_DATA/codecs" -ANDROID_DATA_CONFIG="$ANDROID_DATA_DATA/org.sflphone.service" - -LOCAL_BIN_PATH="$PWD/obj/local/armeabi" - -DBUS_SESSION_D=/system/etc/session.d - - -adb remount - -adb shell mkdir $ANDROID_DATA_CODECS -adb shell mkdir $ANDROID_DATA_CONFIG -adb shell mkdir $DBUS_SESSION_D - -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/busybox $ANDROID_SYSTEM_XBN" - -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/dbus-daemon $ANDROID_SYSTEM_BIN" -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/dbus-send $ANDROID_SYSTEM_BIN" -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/dbus-monitor $ANDROID_SYSTEM_BIN" - -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/libccgnu2.so $ANDROID_SYSTEM_LIB" -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/libcrypto.so $ANDROID_SYSTEM_LIB" -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/libdbus.so $ANDROID_SYSTEM_LIB" -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/libgnustl_shared.so $ANDROID_SYSTEM_LIB" -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/libspeexresampler.so $ANDROID_SYSTEM_LIB" -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/libcodec_ulaw.so $ANDROID_SYSTEM_LIB" -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/libcodec_alaw.so $ANDROID_SYSTEM_LIB" -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/libccrtp1.so $ANDROID_SYSTEM_LIB" -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/libdbus-c++-1.so $ANDROID_SYSTEM_LIB" -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/libexpat.so $ANDROID_SYSTEM_LIB" -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/libsamplerate.so $ANDROID_SYSTEM_LIB" -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/libssl.so $ANDROID_SYSTEM_LIB" -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/libyaml.so $ANDROID_SYSTEM_LIB" -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/libsflphone.so $ANDROID_SYSTEM_LIB" - -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/session.conf $ANDROID_SYSTEM_ETC" - -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/libcodec_ulaw.so $ANDROID_DATA_CODECS" -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/libcodec_alaw.so $ANDROID_DATA_CODECS" - -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/sflphoned.yml $ANDROID_DATA_CONFIG" - -eval "$ANDROID_PUSH_CMD $LOCAL_BIN_PATH/sflphoned $ANDROID_SYSTEM_BIN" diff --git a/sflphone-android/jni/Android.mk b/sflphone-android/jni/Android.mk index 4da248b3d3b2653cf91535849869c9df5d6527e2..f6051da0438af32bd50fea10b786cabfb2770148 100644 --- a/sflphone-android/jni/Android.mk +++ b/sflphone-android/jni/Android.mk @@ -1,7 +1,7 @@ # Copyright (C) 2004-2014 Savoir-Faire Linux Inc. # - # Author: Alexandre Lision <alexandre.lision@savoirfairelinux.com> - # Adrien Beraud <adrien.beraud@gmail.com> + # Author: Alexandre Lision <alexandre.lision@savoirfairelinux.com> + # Adrien Beraud <adrien.beraud@gmail.com> # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -188,7 +188,7 @@ LOCAL_LDLIBS += -lz \ # LOCAL_STATIC_LIBRARIES (NDK documentation) # The list of static libraries modules (built with BUILD_STATIC_LIBRARY) -# that should be linked to this module. +# that should be linked to this module. LOCAL_STATIC_LIBRARIES += pjsip \ pjnath \ pjmedia \ @@ -207,8 +207,8 @@ LOCAL_STATIC_LIBRARIES += pjsip \ libspeexresampler \ libyaml \ libiax2 - - + + include $(BUILD_SHARED_LIBRARY) @@ -301,158 +301,3 @@ LOCAL_CPPFLAGS += $(NETWORKMANAGER) \ include $(BUILD_SHARED_LIBRARY) -############# libgsm ############### - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := $(LOCAL_CODECS_PATH)/gsmcodec.cpp \ - $(LOCAL_CODECS_PATH)/audiocodec.cpp \ - - -LOCAL_C_INCLUDES += $(LOCAL_CODECS_PATH)/.. \ - $(LOCAL_CODECS_PATH)/../.. \ - $(LOCAL_CODECS_PATH)/../../.. \ - $(APP_PROJECT_PATH)/jni/$(MY_LIBGSM)/inc \ - -LOCAL_MODULE := libcodec_gsm - -LOCAL_STATIC_LIBRARIES = libgsm - -LOCAL_LDLIBS := -llog - -LOCAL_CPPFLAGS += $(NETWORKMANAGER) \ - -DCCPP_PREFIX \ - -DCODECS_DIR=\"/usr/lib/sflphone/audio/codec\" \ - -DPREFIX=\"$(MY_PREFIX)\" \ - -DPROGSHAREDIR=\"${MY_DATADIR}/sflphone\" \ - -DHAVE_CONFIG_H \ - -std=c++11 -frtti -fpermissive -fexceptions \ - -DAPP_NAME=\"codecfactory\" - -include $(BUILD_SHARED_LIBRARY) - -############# libcodec_opus ############### - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := $(LOCAL_CODECS_PATH)/opuscodec.cpp \ - $(LOCAL_CODECS_PATH)/audiocodec.cpp - -LOCAL_C_INCLUDES += $(LOCAL_PATH)/.. \ - $(LOCAL_PATH)/../.. \ - $(LOCAL_PATH)/../../.. \ - $(APP_PROJECT_PATH)/jni/sflphone/daemon/src \ - $(APP_PROJECT_PATH)/jni/$(MY_COMMONCPP)/inc - -LOCAL_MODULE := libcodec_opus - -LOCAL_LDLIBS := -llog - -LOCAL_CPPFLAGS += $(NETWORKMANAGER) \ - -DCCPP_PREFIX \ - -DCODECS_DIR=\"/usr/lib/sflphone/audio/codec\" \ - -DPREFIX=\"$(MY_PREFIX)\" \ - -DPROGSHAREDIR=\"${MY_DATADIR}/sflphone\" \ - -DHAVE_CONFIG_H \ - -std=c++11 -frtti -fpermissive -fexceptions \ - -DAPP_NAME=\"codecfactory\" - -LOCAL_STATIC_LIBRARIES := libopus - -include $(BUILD_SHARED_LIBRARY) - - -############# speex_nb ############### - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := $(LOCAL_CODECS_PATH)/speexcodec_nb.cpp \ - $(LOCAL_CODECS_PATH)/audiocodec.cpp - -LOCAL_C_INCLUDES += $(LOCAL_SRC_PATH) \ - $(MY_SPEEX)/include/speex \ - $(MY_SPEEX)/include \ - $(APP_PROJECT_PATH)/jni/$(MY_CCRTP)/src \ - $(APP_PROJECT_PATH)/jni/$(MY_COMMONCPP)/inc \ - $(APP_PROJECT_PATH)/jni/sflphone/daemon - -LOCAL_MODULE := libcodec_speex_nb - -LOCAL_LDLIBS := -llog - -LOCAL_STATIC_LIBRARIES := libspeex - -LOCAL_CPPFLAGS += $(NETWORKMANAGER) \ - -DCCPP_PREFIX \ - -DCODECS_DIR=\"/usr/lib/sflphone/audio/codec\" \ - -DPREFIX=\"$(MY_PREFIX)\" \ - -DPROGSHAREDIR=\"${MY_DATADIR}/sflphone\" \ - -DHAVE_CONFIG_H \ - -std=c++11 -frtti -fpermissive -fexceptions \ - -DAPP_NAME=\"codecfactory\" - -include $(BUILD_SHARED_LIBRARY) - - - -############# speex_ub ############### - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := $(LOCAL_CODECS_PATH)/speexcodec_ub.cpp \ - $(LOCAL_CODECS_PATH)/audiocodec.cpp - -LOCAL_C_INCLUDES += $(LOCAL_SRC_PATH) \ - $(MY_SPEEX)/include/speex \ - $(MY_SPEEX)/include \ - $(APP_PROJECT_PATH)/jni/$(MY_CCRTP)/src \ - $(APP_PROJECT_PATH)/jni/$(MY_COMMONCPP)/inc \ - $(APP_PROJECT_PATH)/jni/sflphone/daemon - -LOCAL_MODULE := libcodec_speex_ub - -LOCAL_LDLIBS := -llog - -LOCAL_STATIC_LIBRARIES := libspeex - -LOCAL_CPPFLAGS += $(NETWORKMANAGER) \ - -DCCPP_PREFIX \ - -DCODECS_DIR=\"/usr/lib/sflphone/audio/codec\" \ - -DPREFIX=\"$(MY_PREFIX)\" \ - -DPROGSHAREDIR=\"${MY_DATADIR}/sflphone\" \ - -DHAVE_CONFIG_H \ - -std=c++11 -frtti -fpermissive -fexceptions \ - -DAPP_NAME=\"codecfactory\" - -include $(BUILD_SHARED_LIBRARY) - -############# speex_wb ############### - -include $(CLEAR_VARS) - -LOCAL_SRC_FILES := $(LOCAL_CODECS_PATH)/speexcodec_wb.cpp \ - $(LOCAL_CODECS_PATH)/audiocodec.cpp - -LOCAL_C_INCLUDES += $(LOCAL_SRC_PATH) \ - $(MY_SPEEX)/include/speex \ - $(MY_SPEEX)/include \ - $(APP_PROJECT_PATH)/jni/$(MY_CCRTP)/src \ - $(APP_PROJECT_PATH)/jni/$(MY_COMMONCPP)/inc \ - $(APP_PROJECT_PATH)/jni/sflphone/daemon - -LOCAL_MODULE := libcodec_speex_wb - -LOCAL_LDLIBS := -llog - -LOCAL_STATIC_LIBRARIES := libspeex - -LOCAL_CPPFLAGS += $(NETWORKMANAGER) \ - -DCCPP_PREFIX \ - -DCODECS_DIR=\"/usr/lib/sflphone/audio/codec\" \ - -DPREFIX=\"$(MY_PREFIX)\" \ - -DPROGSHAREDIR=\"${MY_DATADIR}/sflphone\" \ - -DHAVE_CONFIG_H \ - -std=c++11 -frtti -fpermissive -fexceptions \ - -DAPP_NAME=\"codecfactory\" - -include $(BUILD_SHARED_LIBRARY) diff --git a/sflphone-android/jni/Application.mk b/sflphone-android/jni/Application.mk index fed84e1fffc6b2c57596be0f0e883bb15126f782..5d933ee798a7075b5180c209a21011862958c27e 100644 --- a/sflphone-android/jni/Application.mk +++ b/sflphone-android/jni/Application.mk @@ -1,7 +1,7 @@ # Copyright (C) 2004-2014 Savoir-Faire Linux Inc. # - # Author: Alexandre Lision <alexandre.lision@savoirfairelinux.com> - # Adrien Beraud <adrien.beraud@gmail.com> + # Author: Alexandre Lision <alexandre.lision@savoirfairelinux.com> + # Adrien Beraud <adrien.beraud@gmail.com> # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -28,33 +28,16 @@ # as that of the covered work. -BASE_PJSIP_FLAGS := -DPJ_ANDROID=1 -# about codecs -BASE_PJSIP_FLAGS += -DPJMEDIA_HAS_G729_CODEC=0 -DPJMEDIA_HAS_G726_CODEC=0 \ - -DPJMEDIA_HAS_ILBC_CODEC=0 -DPJMEDIA_HAS_G722_CODEC=0 \ - -DPJMEDIA_HAS_SPEEX_CODEC=0 -DPJMEDIA_HAS_GSM_CODEC=0 \ - -DPJMEDIA_HAS_SILK_CODEC=0 -DPJMEDIA_HAS_CODEC2_CODEC=0 \ - -DPJMEDIA_HAS_G7221_CODEC=0 -DPJMEDIA_HAS_WEBRTC_CODEC=0 \ - -DPJMEDIA_HAS_OPUS_CODEC=0 -# TLS ZRTP -BASE_PJSIP_FLAGS += -DPJ_HAS_SSL_SOCK=1 -DPJMEDIA_HAS_ZRTP=1 - -NDK_TOOLCHAIN_VERSION := 4.8 APP_PLATFORM := android-14 APP_OPTIM := debug NDK_DEBUG := 1 APP_STL := gnustl_shared APP_ABI := armeabi-v7a x86 - +NDK_TOOLCHAIN_VERSION := 4.8 APP_MODULES += libcodec_ulaw APP_MODULES += libcodec_alaw APP_MODULES += libcodec_g722 -APP_MODULES += libcodec_opus -APP_MODULES += libcodec_gsm -APP_MODULES += libcodec_speex_nb -APP_MODULES += libcodec_speex_ub -APP_MODULES += libcodec_speex_wb APP_MODULES += libsflphone diff --git a/sflphone-android/launch-sflphone.sh b/sflphone-android/launch-sflphone.sh deleted file mode 100755 index e064ba9fec9c6b5c8cd1e3e9afe98cc0cb788259..0000000000000000000000000000000000000000 --- a/sflphone-android/launch-sflphone.sh +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/bash -# -# Copyright (C) 2004-2014 Savoir-Faire Linux Inc. -# -# Author: Alexandre Lision <alexandre.lision@savoirfairelinux.com> -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -# -# Additional permission under GNU GPL version 3 section 7: -# -# If you modify this program, or any covered work, by linking or -# combining it with the OpenSSL project's OpenSSL library (or a -# modified version of that library), containing parts covered by the -# terms of the OpenSSL or SSLeay licenses, Savoir-Faire Linux Inc. -# grants you additional permission to convey the resulting work. -# Corresponding Source for a non-source form of such a combination -# shall include the source code for the parts of OpenSSL used as well -# as that of the covered work. -# - -# Meant to be run on the target platform using adb shell - -cd jni/ -ndk-build -j4 -cd .. - -$ANT_HOME clean -$ANT_HOME debug - -adb install -r bin/SFLphone-debug.apk - -adb shell am start -n org.sflphone/org.sflphone.client.HomeActivity