summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2011-04-06 14:51:57 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2011-04-06 14:51:57 (GMT)
commit963b72a978e2d4330b46c084effc90fd45b503d5 (patch)
tree3d13794e12e1ee15347be0e543ef3b522c41bfa0
parent7207d9a57abd342956e228d594c8e4a70a03030a (diff)
downloadtcl-963b72a978e2d4330b46c084effc90fd45b503d5.zip
tcl-963b72a978e2d4330b46c084effc90fd45b503d5.tar.gz
tcl-963b72a978e2d4330b46c084effc90fd45b503d5.tar.bz2
Don't use -fvisibility=hidden with static libraries (--disable-shared)
-rw-r--r--ChangeLog2
-rwxr-xr-xunix/configure7
-rw-r--r--unix/tcl.m42
3 files changed, 4 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 3ac06bd..15cc7a8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,8 @@
* unix/tclAppInit.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-06 Donal K. Fellows <dkf@users.sf.net>
diff --git a/unix/configure b/unix/configure
index 8701f7e..4fdddd4 100755
--- a/unix/configure
+++ b/unix/configure
@@ -6479,7 +6479,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
@@ -6550,11 +6550,6 @@ _ACEOF
else
-
-cat >>confdefs.h <<\_ACEOF
-#define NO_VIZ
-_ACEOF
-
hold_cflags=$CFLAGS; CFLAGS="$CFLAGS -Werror"
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
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)