summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2011-04-06 14:54:06 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2011-04-06 14:54:06 (GMT)
commite536b3536ed366b76ba05f7b6bbfddbba3127965 (patch)
treec67ac77da328b014485f7794aab500dece201863
parent4f7e6a5909b4916bc504be0ddecfa1e9b647bf4d (diff)
downloadtk-e536b3536ed366b76ba05f7b6bbfddbba3127965.zip
tk-e536b3536ed366b76ba05f7b6bbfddbba3127965.tar.gz
tk-e536b3536ed366b76ba05f7b6bbfddbba3127965.tar.bz2
Don't use -fvisibility=hidden with static libraries (--disable-shared)
-rw-r--r--ChangeLog2
-rwxr-xr-xunix/configure2
-rw-r--r--unix/tcl.m42
3 files changed, 4 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 3e5c1a4..bf42b33 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,8 @@
* unix/tkAppInit.c: Make symbols "main" and "Tcl_AppInit"
MODULE_SCOPE: there is absolutely no reason for exporting them.
+ * unix/tcl.m4: Don't use -fvisibility=hidden with static
+ * unix/configure libraries (--disable-shared)
2011-04-04 Peter Spjuth <peter.spjuth@gmail.com>
diff --git a/unix/configure b/unix/configure
index e44463a..79eff52 100755
--- a/unix/configure
+++ b/unix/configure
@@ -4316,7 +4316,7 @@ if test "${tcl_cv_cc_visibility_hidden+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
- if test "$GCC" = yes; then
+ if test "$GCC" = yes -a "$SHARED_BUILD" = 1; then
hold_cflags=$CFLAGS; CFLAGS="$CFLAGS -fvisibility=hidden -Werror"
cat >conftest.$ac_ext <<_ACEOF
diff --git a/unix/tcl.m4 b/unix/tcl.m4
index 8c9eaf0..9a02e4c 100644
--- a/unix/tcl.m4
+++ b/unix/tcl.m4
@@ -1044,7 +1044,7 @@ AC_DEFUN([SC_CONFIG_CFLAGS], [
AC_CACHE_CHECK([if compiler supports visibility "hidden"],
tcl_cv_cc_visibility_hidden, [
- AS_IF([test "$GCC" = yes], [
+ AS_IF([test "$GCC" = yes -a "$SHARED_BUILD" = 1], [
hold_cflags=$CFLAGS; CFLAGS="$CFLAGS -fvisibility=hidden -Werror"
AC_TRY_COMPILE(,, tcl_cv_cc_visibility_hidden=yes,
tcl_cv_cc_visibility_hidden=no)