--- ./configure.orig 2013-11-04 05:03:01.000000000 -0500 +++ ./configure 2013-11-04 05:46:05.000000000 -0500 @@ -19206,9 +19206,9 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if symbol visibility is supported" >&5 $as_echo_n "checking if symbol visibility is supported... " >&6; } visibility_cflags="" -case `basename $CC` in - *gcc*) - gccversion="` ${CC} --version | head -1 | ${SED} 's/.*\([0-9]\.[0-9]\.[0-9]*\).*/\1/' `" +case ${COMPILER_TYPE} in + gcc) + gccversion="` ${CC} --version | head -1 | ${SED} 's/.*\([0-9]\.[0-9]\.[0-9]*\).*/\1/' `" case $gccversion in 4.*) # Activate -fvisibility=hidden only for explicit 4.x gcc @@ -19228,8 +19228,25 @@ ;; esac ;; + clang) + clangversion="` ${CC} --version | head -1 | ${SED} 's/.*\([0-9]\.[0-9]*\).*/\1/' `" + case $clangversion in + 3.*|4.*) + # Activate -fvisibility=hidden for clang 3.x + visibility_supported="yes, clang-${clangversion}" + +$as_echo "#define GCC_WITH_VISIBILITY_ATTRIBUTE 1" >>confdefs.h + + visibility_cflags="-fvisibility=hidden" + ;; + *) + # Default: -fvisibility=hidden not activated. + visibility_supported="no (needs clang >=3.1, you have clang-${clangversion})" + ;; + esac + ;; *) - visibility_supported="no (needs gcc >=4.0, you use $CC)" + visibility_supported="no (needs gcc >=4.0 or clang >=3.1, you use $CC)" ;; esac