Fix compilation using ndk r9 and ndk r10c on macosx

This commit is contained in:
Sylvain Berfini 2014-11-06 13:32:06 +01:00
parent ee09e0afe2
commit 3c90daf184
3 changed files with 19 additions and 28 deletions

View file

@ -1,4 +1,3 @@
NDK_PATH=$(shell dirname `which ndk-build`)
SDK_PATH=$(shell dirname `which android`)
SDK_PLATFORM_TOOLS_PATH=$(shell dirname `which adb`)
@ -140,19 +139,31 @@ $(FFMPEG_SRC_DIR)/non_versioned_soname_patch_applied.txt:
@patch -p0 < $(TOPDIR)/patches/ffmpeg_non_versioned_soname.patch
touch $@
$(FFMPEG_BUILD_DIR)/arm/libavcodec/libavcodec-linphone-arm.so:
$(FFMPEG_BUILD_DIR)/arm/config.h:
mkdir -p $(FFMPEG_BUILD_DIR)/arm && \
cd $(FFMPEG_BUILD_DIR)/arm && \
$(FFMPEG_SRC_DIR)/configure $(FFMPEG_CONFIGURE_OPTIONS) $(FFMPEG_ARM_CONFIGURE_OPTIONS)
patch_config_h_arm:
sed -i.bak 's/#define HAVE_SYSCTL 1/#define HAVE_SYSCTL 0/g' $(FFMPEG_BUILD_DIR)/arm/config.h
sed -i.bak 's/#define HAVE_GETHRTIME 1/#define HAVE_GETHRTIME 0/g' $(FFMPEG_BUILD_DIR)/arm/config.h
$(FFMPEG_BUILD_DIR)/arm/libavcodec/libavcodec-linphone-arm.so: $(FFMPEG_BUILD_DIR)/arm/config.h patch_config_h_arm
cd $(FFMPEG_BUILD_DIR)/arm && \
$(FFMPEG_SRC_DIR)/configure $(FFMPEG_CONFIGURE_OPTIONS) $(FFMPEG_ARM_CONFIGURE_OPTIONS) && \
patch -p0 < $(TOPDIR)/patches/ffmpeg_configh.patch && \
make -j ${NUMCPUS} \
|| ( echo "Build of ffmpeg for arm failed." ; exit 1 )
$(FFMPEG_BUILD_DIR)/x86/libavcodec/libavcodec-linphone-x86.so:
$(FFMPEG_BUILD_DIR)/x86/config.h:
mkdir -p $(FFMPEG_BUILD_DIR)/x86 && \
cd $(FFMPEG_BUILD_DIR)/x86 && \
$(FFMPEG_SRC_DIR)/configure $(FFMPEG_CONFIGURE_OPTIONS) $(FFMPEG_X86_CONFIGURE_OPTIONS)
patch_config_h_x86:
sed -i.bak 's/#define HAVE_SYSCTL 1/#define HAVE_SYSCTL 0/g' $(FFMPEG_BUILD_DIR)/x86/config.h
sed -i.bak 's/#define HAVE_GETHRTIME 1/#define HAVE_GETHRTIME 0/g' $(FFMPEG_BUILD_DIR)/x86/config.h
$(FFMPEG_BUILD_DIR)/x86/libavcodec/libavcodec-linphone-x86.so: $(FFMPEG_BUILD_DIR)/x86/config.h patch_config_h_x86
cd $(FFMPEG_BUILD_DIR)/x86 && \
$(FFMPEG_SRC_DIR)/configure $(FFMPEG_CONFIGURE_OPTIONS) $(FFMPEG_X86_CONFIGURE_OPTIONS) && \
patch -p0 < $(TOPDIR)/patches/ffmpeg_configh.patch && \
make -j ${NUMCPUS} \
|| ( echo "Build of ffmpeg for x86 failed." ; exit 1 )

2
README
View file

@ -3,7 +3,7 @@
To build liblinphone for Android, you must:
0) download the Android sdk with platform-tools and tools updated to latest revision (at least API 16 is needed), then add both 'tools' and 'platform-tools' folders in your path.
1) download the Android ndk (>=10c) from google and add it to your path (no symlink !!!).
1) download the Android ndk (=r9d or =r10c) from google and add it to your path (no symlink !!!).
2) install yasm, nasm, curl, ant, rsync and the autotools: autoconf, automake, aclocal, libtoolize, pkgconfig
On 64 bits linux systems you'll need the ia32-libs package
With the latest Debian (multiarch), you need this:

View file

@ -1,20 +0,0 @@
--- config.h2 2014-11-05 11:24:36.723553170 +0100
+++ config.h 2014-11-05 11:36:45.418743875 +0100
@@ -182,7 +182,7 @@
#define HAVE_FCNTL 1
#define HAVE_FORK 1
#define HAVE_GETADDRINFO 0
-#define HAVE_GETHRTIME 1
+#define HAVE_GETHRTIME 0
#define HAVE_GETOPT 1
#define HAVE_GETPROCESSAFFINITYMASK 0
#define HAVE_GETPROCESSMEMORYINFO 0
@@ -254,7 +254,7 @@
#define HAVE_SYMVER_ASM_LABEL 0
#define HAVE_SYMVER_GNU_ASM 1
#define HAVE_SYSCONF 1
-#define HAVE_SYSCTL 1
+#define HAVE_SYSCTL 0
#define HAVE_SYS_MMAN_H 1
#define HAVE_SYS_PARAM_H 1
#define HAVE_SYS_RESOURCE_H 1