diff --git a/storage/innobase/include/univ.i b/storage/innobase/include/univ.i index ac87942f255..5a5af76e175 100644 --- a/storage/innobase/include/univ.i +++ b/storage/innobase/include/univ.i @@ -254,8 +254,10 @@ by one. */ option off; also some ibuf tests are suppressed */ /* Linkage specifier for non-static InnoDB symbols (variables and functions) -that are only referenced from within InnoDB, not from MySQL */ -#if defined(__GNUC__) && (__GNUC__ >= 4) || defined(__INTEL_COMPILER) +that are only referenced from within InnoDB, not from MySQL. We disable the +GCC visibility directive on all Sun operating systems because there is no +easy way to get it to work. See http://bugs.mysql.com/bug.php?id=52263. */ +#if defined(__GNUC__) && (__GNUC__ >= 4) && !defined(sun) || defined(__INTEL_COMPILER) # define UNIV_INTERN __attribute__((visibility ("hidden"))) #else # define UNIV_INTERN