From 26b68dd43ceec71db8fcf95cf48177acdbef82cf Mon Sep 17 00:00:00 2001 From: "Hoa V. DINH" Date: Wed, 23 Nov 2016 10:11:20 -0800 Subject: Fixed build with ndk 13 --- build-android/build.sh | 30 +++++++++++++++++++----------- build-android/jni/Android.mk | 13 ++++++++++--- 2 files changed, 29 insertions(+), 14 deletions(-) diff --git a/build-android/build.sh b/build-android/build.sh index 1ca775dc..274bb632 100755 --- a/build-android/build.sh +++ b/build-android/build.sh @@ -1,16 +1,14 @@ #!/bin/sh -build_version=3 -ANDROID_PLATFORM=android-16 -archs="armeabi armeabi-v7a x86" +build_version=4 package_name=mailcore2-android -ctemplate_build_version=2 -cyrus_sasl_build_version=2 -icu4c_build_version=2 -libetpan_build_version=4 -libxml2_build_version=2 -tidy_html5_build_version=2 -openssl_build_version=2 +ctemplate_build_version=3 +cyrus_sasl_build_version=4 +icu4c_build_version=3 +libetpan_build_version=6 +libxml2_build_version=3 +tidy_html5_build_version=3 +openssl_build_version=3 current_dir="`pwd`" @@ -53,7 +51,8 @@ function build { mkdir -p "$current_dir/bin/jni/$TARGET_ARCH_ABI" cp "$current_dir/libs/$TARGET_ARCH_ABI/libMailCore.so" "$current_dir/bin/jni/$TARGET_ARCH_ABI" - cp "$ANDROID_NDK/sources/cxx-stl/llvm-libc++/libs/$TARGET_ARCH_ABI/libc++_shared.so" "$current_dir/bin/jni/$TARGET_ARCH_ABI" + # cp "$ANDROID_NDK/sources/cxx-stl/llvm-libc++/libs/$TARGET_ARCH_ABI/libc++_shared.so" "$current_dir/bin/jni/$TARGET_ARCH_ABI" + cp "$ANDROID_NDK/sources/cxx-stl/gnu-libstdc++/4.9/libs/$TARGET_ARCH_ABI/libgnustl_shared.so" "$current_dir/bin/jni/$TARGET_ARCH_ABI" rm -rf "$current_dir/obj" rm -rf "$current_dir/libs" } @@ -76,11 +75,20 @@ download_dep "openssl-android" $openssl_build_version download_dep "cyrus-sasl-android" $cyrus_sasl_build_version # Start building. +ANDROID_PLATFORM=android-16 +archs="armeabi armeabi-v7a x86" +for arch in $archs ; do + TARGET_ARCH_ABI=$arch + build +done +ANDROID_PLATFORM=android-21 +archs="arm64-v8a" for arch in $archs ; do TARGET_ARCH_ABI=$arch build done +ANDROID_PLATFORM=android-16 cd "$current_dir/../src/java" mkdir -p "$current_dir/bin" javac -d "$current_dir/bin" -source 1.6 -target 1.6 -classpath $ANDROID_SDK/platforms/$ANDROID_PLATFORM/android.jar com/libmailcore/*.java diff --git a/build-android/jni/Android.mk b/build-android/jni/Android.mk index a7581c99..9b47cf0e 100644 --- a/build-android/jni/Android.mk +++ b/build-android/jni/Android.mk @@ -28,13 +28,17 @@ includes = \ $(LIBXML2_PATH)/include \ $(TIDY_HTML5_PATH)/include \ $(OPENSSL_PATH)/include \ - $(ANDROID_NDK)/sources/cxx-stl/llvm-libc++/libcxx/include \ - $(ANDROID_NDK)/sources/cxx-stl/llvm-libc++abi/libcxxabi/include \ + $(ANDROID_NDK)/sources/cxx-stl/gnu-libstdc++/4.9/include \ + $(ANDROID_NDK)/sources/cxx-stl/gnu-libstdc++/4.9/libs/$(TARGET_ARCH_ABI)/include \ $(addprefix $(src_dir)/, $(subdirs)) +# $(ANDROID_NDK)/sources/cxx-stl/llvm-libc++/libcxx/include +# $(ANDROID_NDK)/sources/cxx-stl/llvm-libc++abi/libcxxabi/include + core_excludes = MCWin32.cpp MCStringWin32.cpp MCMainThreadWin32.cpp MCMainThreadGTK.cpp core_src_files := $(filter-out \ $(addprefix $(src_dir)/core/basetypes/, $(core_excludes)), \ $(wildcard $(src_dir)/core/basetypes/*.cpp) $(wildcard $(src_dir)/core/basetypes/*.c)) + abstract_src_files := $(wildcard $(src_dir)/core/abstract/*.cpp) imap_src_files := $(wildcard $(src_dir)/core/imap/*.cpp) nntp_src_files := $(wildcard $(src_dir)/core/nntp/*.cpp) @@ -117,7 +121,10 @@ LOCAL_SRC_FILES := \ $(async_imap_src_files) $(async_nntp_src_files) $(async_pop_src_files) $(async_smtp_src_files) LOCAL_CPPFLAGS := -frtti LOCAL_CFLAGS := -DNOCRYPT +# LOCAL_LDLIBS := -lz -llog \ +# -lc++_shared -L$(ANDROID_NDK)/sources/cxx-stl/llvm-libc++/libs/$(TARGET_ARCH_ABI) LOCAL_LDLIBS := -lz -llog \ - -lc++_shared -L$(ANDROID_NDK)/sources/cxx-stl/llvm-libc++/libs/$(TARGET_ARCH_ABI) + -lgnustl_shared -L$(ANDROID_NDK)/sources/cxx-stl/gnu-libstdc++/4.9/libs/$(TARGET_ARCH_ABI) +LOCAL_DISABLE_FATAL_LINKER_WARNINGS := true LOCAL_STATIC_LIBRARIES := etpan sasl2 ssl crypto icu4c xml2 tidy ctemplate include $(BUILD_SHARED_LIBRARY) -- cgit v1.2.3