office-gobmx/icu/icu4c-android.patch
Tor Lillqvist cee6c4b193 Use hidden visibility now for Android with icu built statically
Change-Id: I46b97d31f8aac046479d030c988413017c5b940a
2012-11-11 09:15:35 +02:00

74 lines
2.5 KiB
Diff

--- 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
+arm-*-linux-androideabi)
+ GENCCODE_ASSEMBLY="-a gcc-android-arm"
+ ;;
*-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|mips-unknown-linux-android)
+ # 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
--- misc/icu/source/common/unicode/platform.h
+++ misc/build/icu/source/common/unicode/platform.h
@@ -641,7 +641,7 @@
#elif defined(U_STATIC_IMPLEMENTATION)
# define U_EXPORT
#elif defined(__GNUC__)
-# define U_EXPORT __attribute__((visibility("default")))
+# define U_EXPORT
#elif (defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x550) \
|| (defined(__SUNPRO_C) && __SUNPRO_C >= 0x550)
# define U_EXPORT __global