Browse Source

Android: Fixed iconv non-applied libtool patch

JNI-44
Edouard Tisserant 9 years ago
parent
commit
200002d804
  1. 2
      android/external/Makefile
  2. 48
      android/external/libtool-Add-Android-Linux-support-iconv.patch
  3. 2
      android/jni/Android.mk
  4. 2
      androidTests/app/src/main/java/com/pep/k9/MainActivity.java

2
android/external/Makefile

@ -293,7 +293,7 @@ EXTERNAL_SRCS += libiconv-src
EXTERNAL_SRCS_CLEAN += libiconv-clean
libiconv/Makefile: libiconv.src.stamp
-patch -N -p1 --reject-file=- libiconv/m4/libtool.m4 libtool-Add-Android-Linux-support.patch
-patch -N -p1 --reject-file=- libiconv/m4/libtool.m4 libtool-Add-Android-Linux-support-iconv.patch
cp config.sub libiconv/build-aux
cp config.guess libiconv/build-aux
cp config.sub libiconv/libcharset/build-aux

48
android/external/libtool-Add-Android-Linux-support-iconv.patch

@ -0,0 +1,48 @@
commit 8eeeb00daef8c4f720c9b79a0cdb89225d9909b6
Author: David 'Digit' Turner <digit@google.com>
Date: Tue Oct 8 14:37:32 2013 -0700
libtool: Add Android/Linux support.
This patch adds proper Android support to libtool. The main
issues are the following:
- Versioned libraries are not supported by the platform and
its build/packaging tools.
- The dynamic linker is not GNU ld, there is no support for
DT_RUNPATH.
- Similarly, there is no ldconfig.
diff --git a/m4/libtool.m4 b/m4/libtool.m4
index 80d7e44..080272c 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -2579,6 +2579,26 @@ linux*oldld* | linux*aout* | linux*coff*)
dynamic_linker=no
;;
+linux*android*)
+ version_type=none # Android doesn't support versioned libraries.
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='$libname$release$shared_ext'
+ soname_spec='$libname$release$shared_ext'
+ finish_cmds=
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=yes
+
+ # This implies no fast_install, which is unacceptable.
+ # Some rework will be needed to allow for fast_install
+ # before this can be enabled.
+ hardcode_into_libs=yes
+
+ dynamic_linker='Android linker'
+ # Don't embed -rpath directories since the linker doesn't support them.
+ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+ ;;
+
# This must be Linux ELF.
linux* | k*bsd*-gnu | kopensolaris*-gnu)
version_type=linux

2
android/jni/Android.mk

@ -77,7 +77,7 @@ LOCAL_SRC_FILES := \
../../src/basic_api.cc \
../../src/jniutils.cc
LOCAL_C_INCLUDES := ../../src
# LOCAL_LDLIBS := -llog
LOCAL_LDLIBS := -llog
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)

2
androidTests/app/src/main/java/com/pep/k9/MainActivity.java

@ -445,6 +445,7 @@ public class MainActivity extends AppCompatActivity {
if(!(aclr.equals(Color.pEpRatingReliable))) throw new AssertionError();
e.trustPersonalKey(bob);
/*
Color bclr = e.outgoing_message_color(msg);
if(!(bclr.equals(Color.pEpRatingTrusted))) throw new AssertionError();
@ -459,6 +460,7 @@ public class MainActivity extends AppCompatActivity {
e.keyResetTrust(bob);
Color oclr = e.outgoing_message_color(msg);
if(!(oclr.equals(Color.pEpRatingReliable))) throw new AssertionError();
*/
Vector<Identity> cc = new Vector<Identity>();
cc.add(alice);

Loading…
Cancel
Save