1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
--- misc/icu/source/config/mh-linux
+++ misc/build/icu/source/config/mh-linux
@@ -30,7 +30,7 @@
## Compiler switch to embed a library name
# The initial tab in the next line is to prevent icu-config from reading it.
- LD_SONAME = -Wl,-soname -Wl,$(notdir $(MIDDLE_SO_TARGET))
+# LD_SONAME = -Wl,-soname -Wl,$(notdir $(MIDDLE_SO_TARGET))
#SH# # We can't depend on MIDDLE_SO_TARGET being set.
#SH# LD_SONAME=
--- misc/icu/source/configure
+++ misc/build/icu/source/configure
@@ -5053,7 +5053,7 @@
else
icu_cv_host_frag=mh-linux-va
fi ;;
-*-*-linux*|*-*-gnu|*-*-k*bsd*-gnu|*-*-kopensolaris*-gnu) icu_cv_host_frag=mh-linux ;;
+*-*-linux*|*-*-gnu|*-*-k*bsd*-gnu|*-*-kopensolaris*-gnu|*-*-*-androideabi*) icu_cv_host_frag=mh-linux ;;
*-*-cygwin|*-*-mingw32)
if test "$GCC" = yes; then
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -6127,6 +6127,9 @@
# Check to see if genccode can generate simple assembly.
GENCCODE_ASSEMBLY=
case "${host}" in
+*-*-linux-androideabi)
+ GENCCODE_ASSEMBLY="-a gcc-android"
+ ;;
*-linux*|*-kfreebsd*-gnu*|i*86-*-*bsd*|i*86-pc-gnu)
if test "$GCC" = yes; then
# We're using gcc, and the simple -a gcc command line works for genccode
@@ -7200,6 +7203,10 @@
# wchar_t can be used
CHECK_UTF16_STRING_RESULT="available"
;;
+*-*-*-androideabi*)
+ # no UTF-16 strings thanks, I think, this is to avoid the -std=c++0x which causes trouble with uint64_t
+ CHECK_UTF16_STRING_RESULT="nope"
+ ;;
*)
;;
esac
--- misc/icu/source/common/putilimp.h
+++ misc/build/icu/source/common/putilimp.h
@@ -86,6 +86,8 @@
/* Use the predefined value. */
#elif U_PLATFORM_HAS_WIN32_API
# define U_HAVE_NL_LANGINFO_CODESET 0
+#elif defined(__ANDROID__)
+# define U_HAVE_NL_LANGINFO_CODESET 0
#else
# define U_HAVE_NL_LANGINFO_CODESET 1
#endif
@@ -114,6 +114,8 @@
#ifdef U_TIMEZONE
/* Use the predefined value. */
+#elif defined(__ANDROID__)
+# define U_TIMEZONE timezone
#elif U_PLATFORM_IS_LINUX_BASED
# define U_TIMEZONE __timezone
#elif U_PLATFORM_USES_ONLY_WIN32_API
|