diff -ru a/icu4c/source/common/udata.cpp b/icu4c/source/common/udata.cpp --- a/icu4c/source/common/udata.cpp 2019-04-17 12:03:04.000000000 +0000 +++ b/icu4c/source/common/udata.cpp 2020-07-14 23:49:37.836668741 +0000 @@ -18,11 +18,10 @@ #include "unicode/utypes.h" /* U_PLATFORM etc. */ -#ifdef __GNUC__ -/* if gcc -#define ATTRIBUTE_WEAK __attribute__ ((weak)) -might have to #include some other header -*/ +#if defined(__GNUC__) || defined(__SUNPRO_CC) +# define ATTRIBUTE_WEAK __attribute__ ((weak)) +#else +# define ATTRIBUTE_WEAK #endif #include "unicode/putil.h" @@ -649,10 +648,9 @@ * partial-data-library access functions where each returns a pointer * to its data package, if it is linked in. */ -/* -extern const void *uprv_getICUData_collation(void) ATTRIBUTE_WEAK; -extern const void *uprv_getICUData_conversion(void) ATTRIBUTE_WEAK; -*/ +U_CDECL_BEGIN +const void *uprv_getICUData_conversion(void) ATTRIBUTE_WEAK; +U_CDECL_END /*----------------------------------------------------------------------* * * @@ -710,10 +708,11 @@ if (uprv_getICUData_collation) { setCommonICUDataPointer(uprv_getICUData_collation(), FALSE, pErrorCode); } + */ if (uprv_getICUData_conversion) { setCommonICUDataPointer(uprv_getICUData_conversion(), FALSE, pErrorCode); } - */ + #if U_PLATFORM_HAS_WINUWP_API == 0 // Windows UWP Platform does not support dll icu data at this time setCommonICUDataPointer(&U_ICUDATA_ENTRY_POINT, FALSE, pErrorCode); { diff -ru a/icu4c/source/common/unicode/uconfig.h b/icu4c/source/common/unicode/uconfig.h --- a/icu4c/source/common/unicode/uconfig.h 2019-04-17 12:03:04.000000000 +0000 +++ b/icu4c/source/common/unicode/uconfig.h 2020-07-14 23:49:37.836668741 +0000 @@ -55,6 +55,11 @@ #include "uconfig_local.h" #endif +// Tensorflow is statically linked on all platforms. +#ifndef U_STATIC_IMPLEMENTATION +#define U_STATIC_IMPLEMENTATION +#endif + /** * \def U_DEBUG * Determines whether to include debugging code.