mirror of
https://gitlab.linphone.org/BC/public/linphone-android.git
synced 2026-01-17 11:28:06 +00:00
75 lines
2.3 KiB
Makefile
75 lines
2.3 KiB
Makefile
NDK_PATH=$(shell dirname `which ndk-build`)
|
|
SDK_PATH=$(shell dirname `which android`)
|
|
NUMCPUS=$(shell grep -c '^processor' /proc/cpuinfo || echo "4" )
|
|
TOPDIR=$(shell pwd)
|
|
PATCH_FFMPEG=$(shell cd submodules/externals/ffmpeg && git status | grep neon)
|
|
KEYSTORE=bc-android.keystore
|
|
KEYALIAS=nw8000
|
|
|
|
all: prepare-sources generate-libs generate-apk install-apk run-linphone
|
|
|
|
prepare-ffmpeg:
|
|
ifeq ($(PATCH_FFMPEG),)
|
|
@patch -p0 < $(TOPDIR)/patches/ffmpeg_scalar_product_remove_alignment_hints.patch
|
|
endif
|
|
|
|
prepare-ilbc:
|
|
@cd $(TOPDIR)/submodules/libilbc-rfc3951 && \
|
|
./autogen.sh && \
|
|
./configure && make \
|
|
|| ( echo "iLBC prepare stage failed" ; exit 1 )
|
|
|
|
prepare-vpx:
|
|
@cd $(TOPDIR)/submodules/externals/libvpx && \
|
|
./configure --target=armv7-android-gcc --sdk-path=$(NDK_PATH) --enable-error-concealment && \
|
|
make clean && \
|
|
make asm_com_offsets.asm \
|
|
|| ( echo "VP8 prepare stage failed." ; exit 1 )
|
|
|
|
prepare-silk:
|
|
@cd $(TOPDIR)/submodules/mssilk && \
|
|
./autogen.sh && \
|
|
./configure --host=arm-linux MEDIASTREAMER_CFLAGS=" " MEDIASTREAMER_LIBS=" " && \
|
|
cd sdk && make extract-sources \
|
|
|| ( echo "SILK audio plugin prepare state failed." ; exit 1 )
|
|
|
|
prepare-srtp:
|
|
@cd $(TOPDIR)/submodules/externals/srtp/ && \
|
|
cp ../build/srtp/config.h . \
|
|
|| ( echo "SRTP prepare state failed." ; exit 1 )
|
|
|
|
prepare-mediastreamer2:
|
|
@cd $(TOPDIR)/submodules/linphone/mediastreamer2/src/ && \
|
|
eval `cat Makefile.am | grep xxd | grep yuv2rgb.vs | sed 's/$$$$builddir/./'` && \
|
|
eval `cat Makefile.am | grep xxd | grep yuv2rgb.fs | sed 's/$$$$builddir/./'` && \
|
|
if ! [ -e yuv2rgb.vs.h ]; then echo "yuv2rgb.vs.h creation error (do you have 'xxd' application installed ?)"; exit 1; fi && \
|
|
if ! [ -e yuv2rgb.fs.h ]; then echo "yuv2rgb.fs.h creation error (do you have 'xxd' application installed ?)"; exit 1; fi
|
|
|
|
prepare-sources: prepare-ffmpeg prepare-ilbc prepare-vpx prepare-silk prepare-srtp prepare-mediastreamer2
|
|
|
|
generate-libs:
|
|
$(NDK_PATH)/ndk-build BUILD_SILK=1 BUILD_AMRNB=full -j$(NUMCPUS)
|
|
|
|
update-project:
|
|
$(SDK_PATH)/android update project --path .
|
|
echo "key.store=$(KEYSTORE)" > ant.properties
|
|
echo "key.alias=$(KEYALIAS)" >> ant.properties
|
|
touch default.properties
|
|
|
|
generate-apk:
|
|
ant debug
|
|
|
|
install-apk: generate-apk
|
|
ant installd
|
|
|
|
release: update-project
|
|
ant release
|
|
|
|
run-linphone:
|
|
ant run
|
|
|
|
clean:
|
|
$(NDK_PATH)/ndk-build clean
|
|
ant clean
|
|
|
|
.PHONY: clean
|