mirror of
https://github.com/unicode-org/icu.git
synced 2025-04-10 07:39:16 +00:00
ICU-5279 Some pre-gcc 4 and gcc compatible compilers support this feature too.
X-SVN-Rev: 21618
This commit is contained in:
parent
90b396cbde
commit
61cc1e07c8
3 changed files with 11 additions and 2 deletions
|
@ -276,7 +276,7 @@ typedef unsigned int uint32_t;
|
|||
/* Symbol import-export control */
|
||||
/*===========================================================================*/
|
||||
|
||||
#if defined(__GNUC__) && (__GNUC__ >= 4)
|
||||
#if @U_USE_GCC_VISIBILITY_ATTRIBUTE@
|
||||
#define U_EXPORT __attribute__((visibility("default")))
|
||||
#else
|
||||
#define U_EXPORT
|
||||
|
|
7
icu4c/source/configure
vendored
7
icu4c/source/configure
vendored
|
@ -309,7 +309,7 @@ ac_includes_default="\
|
|||
# include <unistd.h>
|
||||
#endif"
|
||||
|
||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS PACKAGE VERSION LIB_VERSION LIB_VERSION_MAJOR UNICODE_VERSION build build_cpu build_vendor build_os host host_cpu host_vendor host_os CPPFLAGS CC CFLAGS LDFLAGS ac_ct_CC EXEEXT OBJEXT CXX CXXFLAGS ac_ct_CXX INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA U_MAKE DOXYGEN ARFLAGS COMPILE_LINK_ENVVAR LIB_M ENABLE_SHARED ENABLE_STATIC ENABLE_DEBUG ENABLE_RELEASE U_DEFAULT_SHOW_DRAFT RANLIB ac_ct_RANLIB AR U_DISABLE_RENAMING U_ENABLE_TRACING ENABLE_RPATH U_INLINE THREADS_TRUE ICU_USE_THREADS HAVE_MMAP GENCCODE_ASSEMBLY CPP EGREP U_HAVE_INTTYPES_H U_IOSTREAM_SOURCE U_IS_BIG_ENDIAN U_HAVE_NL_LANGINFO_CODESET U_NL_LANGINFO_CODESET U_HAVE_NAMESPACE U_OVERRIDE_CXX_ALLOCATION U_HAVE_PLACEMENT_NEW U_HAVE_POPEN U_HAVE_TZSET U_TZSET U_HAVE_TZNAME U_TZNAME U_HAVE_TIMEZONE U_TIMEZONE U_HAVE_DAYLIGHT U_DAYLIGHT HAVE_INT8_T HAVE_UINT8_T HAVE_INT16_T HAVE_UINT16_T HAVE_INT32_T HAVE_UINT32_T HAVE_INT64_T HAVE_UINT64_T U_HAVE_WCHAR_H U_HAVE_WCSCPY U_SIZEOF_WCHAR_T U_CHECK_UTF16_STRING EXTRAS_TRUE ICUIO_TRUE LAYOUT_TRUE pkgicudatadir thepkgicudatadir DATA_PACKAGING_MODE ICULIBSUFFIX U_HAVE_LIB_SUFFIX ICULIBSUFFIXCNAME TESTS_TRUE SAMPLES_TRUE ICUDATA_CHAR platform platform_make_fragment_name platform_make_fragment LIBOBJS LTLIBOBJS'
|
||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS PACKAGE VERSION LIB_VERSION LIB_VERSION_MAJOR UNICODE_VERSION build build_cpu build_vendor build_os host host_cpu host_vendor host_os CPPFLAGS CC CFLAGS LDFLAGS ac_ct_CC EXEEXT OBJEXT CXX CXXFLAGS ac_ct_CXX INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA U_MAKE DOXYGEN ARFLAGS COMPILE_LINK_ENVVAR LIB_M ENABLE_SHARED ENABLE_STATIC ENABLE_DEBUG ENABLE_RELEASE U_DEFAULT_SHOW_DRAFT U_USE_GCC_VISIBILITY_ATTRIBUTE RANLIB ac_ct_RANLIB AR U_DISABLE_RENAMING U_ENABLE_TRACING ENABLE_RPATH U_INLINE THREADS_TRUE ICU_USE_THREADS HAVE_MMAP GENCCODE_ASSEMBLY CPP EGREP U_HAVE_INTTYPES_H U_IOSTREAM_SOURCE U_IS_BIG_ENDIAN U_HAVE_NL_LANGINFO_CODESET U_NL_LANGINFO_CODESET U_HAVE_NAMESPACE U_OVERRIDE_CXX_ALLOCATION U_HAVE_PLACEMENT_NEW U_HAVE_POPEN U_HAVE_TZSET U_TZSET U_HAVE_TZNAME U_TZNAME U_HAVE_TIMEZONE U_TIMEZONE U_HAVE_DAYLIGHT U_DAYLIGHT HAVE_INT8_T HAVE_UINT8_T HAVE_INT16_T HAVE_UINT16_T HAVE_INT32_T HAVE_UINT32_T HAVE_INT64_T HAVE_UINT64_T U_HAVE_WCHAR_H U_HAVE_WCSCPY U_SIZEOF_WCHAR_T U_CHECK_UTF16_STRING EXTRAS_TRUE ICUIO_TRUE LAYOUT_TRUE pkgicudatadir thepkgicudatadir DATA_PACKAGING_MODE ICULIBSUFFIX U_HAVE_LIB_SUFFIX ICULIBSUFFIXCNAME TESTS_TRUE SAMPLES_TRUE ICUDATA_CHAR platform platform_make_fragment_name platform_make_fragment LIBOBJS LTLIBOBJS'
|
||||
ac_subst_files=''
|
||||
|
||||
# Initialize some variables set by options.
|
||||
|
@ -3652,6 +3652,7 @@ fi
|
|||
echo "$as_me:$LINENO: checking for library API export" >&5
|
||||
echo $ECHO_N "checking for library API export... $ECHO_C" >&6
|
||||
SHAREDLIBEXPORT=no
|
||||
U_USE_GCC_VISIBILITY_ATTRIBUTE=0
|
||||
if test "$ac_cv_c_compiler_gnu" = yes; then
|
||||
OLD_CFLAGS="${CFLAGS}"
|
||||
OLD_CXXFLAGS="${CXXFLAGS}"
|
||||
|
@ -3705,11 +3706,14 @@ rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
|
|||
if test "$SHAREDLIBEXPORT" = no; then
|
||||
CFLAGS="${OLD_CFLAGS}"
|
||||
CXXFLAGS="${OLD_CXXFLAGS}"
|
||||
else
|
||||
U_USE_GCC_VISIBILITY_ATTRIBUTE=1
|
||||
fi
|
||||
fi
|
||||
echo "$as_me:$LINENO: result: $SHAREDLIBEXPORT" >&5
|
||||
echo "${ECHO_T}$SHAREDLIBEXPORT" >&6
|
||||
|
||||
|
||||
if test -n "$ac_tool_prefix"; then
|
||||
# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
|
||||
set dummy ${ac_tool_prefix}ranlib; ac_word=$2
|
||||
|
@ -8669,6 +8673,7 @@ s,@ENABLE_STATIC@,$ENABLE_STATIC,;t t
|
|||
s,@ENABLE_DEBUG@,$ENABLE_DEBUG,;t t
|
||||
s,@ENABLE_RELEASE@,$ENABLE_RELEASE,;t t
|
||||
s,@U_DEFAULT_SHOW_DRAFT@,$U_DEFAULT_SHOW_DRAFT,;t t
|
||||
s,@U_USE_GCC_VISIBILITY_ATTRIBUTE@,$U_USE_GCC_VISIBILITY_ATTRIBUTE,;t t
|
||||
s,@RANLIB@,$RANLIB,;t t
|
||||
s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
|
||||
s,@AR@,$AR,;t t
|
||||
|
|
|
@ -183,6 +183,7 @@ AC_SUBST(U_DEFAULT_SHOW_DRAFT)
|
|||
dnl Check if we can hide variables from
|
||||
AC_MSG_CHECKING([for library API export])
|
||||
SHAREDLIBEXPORT=no
|
||||
U_USE_GCC_VISIBILITY_ATTRIBUTE=0
|
||||
if test "$ac_cv_c_compiler_gnu" = yes; then
|
||||
OLD_CFLAGS="${CFLAGS}"
|
||||
OLD_CXXFLAGS="${CXXFLAGS}"
|
||||
|
@ -193,9 +194,12 @@ if test "$ac_cv_c_compiler_gnu" = yes; then
|
|||
if test "$SHAREDLIBEXPORT" = no; then
|
||||
CFLAGS="${OLD_CFLAGS}"
|
||||
CXXFLAGS="${OLD_CXXFLAGS}"
|
||||
else
|
||||
U_USE_GCC_VISIBILITY_ATTRIBUTE=1
|
||||
fi
|
||||
fi
|
||||
AC_MSG_RESULT($SHAREDLIBEXPORT)
|
||||
AC_SUBST(U_USE_GCC_VISIBILITY_ATTRIBUTE)
|
||||
|
||||
AC_PROG_RANLIB
|
||||
AC_PATH_PROG(AR,ar,[echo archiver ar not found re-run configure ; false],$PATH:/bin:/usr/bin:/usr/ccs/bin)
|
||||
|
|
Loading…
Add table
Reference in a new issue