--- 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