Index: unix/configure
===================================================================
RCS file: /cvsroot/tcl/tcl/unix/configure,v
retrieving revision 1.293
diff -u -r1.293 configure
--- unix/configure	27 Aug 2010 00:53:36 -0000	1.293
+++ unix/configure	13 Sep 2010 20:47:49 -0000
@@ -9018,6 +9018,12 @@
 
     if test "${SHARED_BUILD}" = 1 -a "${SHLIB_SUFFIX}" != ""; then
 
+        if test "$GCC" = yes; then
+
+            SHLIB_LD="${SHLIB_LD} -Wl,-Bsymbolic"
+
+fi
+
         LIB_SUFFIX=${SHARED_LIB_SUFFIX}
         MAKE_LIB='${SHLIB_LD} -o $@ ${OBJS} ${SHLIB_LD_LIBS} ${TCL_SHLIB_LD_EXTRAS} ${TK_SHLIB_LD_EXTRAS} ${LD_SEARCH_FLAGS}'
         if test "${SHLIB_SUFFIX}" = ".dll"; then
Index: unix/tcl.m4
===================================================================
RCS file: /cvsroot/tcl/tcl/unix/tcl.m4,v
retrieving revision 1.227
diff -u -r1.227 tcl.m4
--- unix/tcl.m4	27 Aug 2010 00:53:36 -0000	1.227
+++ unix/tcl.m4	13 Sep 2010 20:47:49 -0000
@@ -2081,6 +2081,9 @@
 	DLL_INSTALL_DIR="\$(LIB_INSTALL_DIR)"
 
     AS_IF([test "${SHARED_BUILD}" = 1 -a "${SHLIB_SUFFIX}" != ""], [
+        AS_IF([test "$GCC" = yes], [
+            SHLIB_LD="${SHLIB_LD} -Wl,-Bsymbolic"
+        ])
         LIB_SUFFIX=${SHARED_LIB_SUFFIX}
         MAKE_LIB='${SHLIB_LD} -o [$]@ ${OBJS} ${SHLIB_LD_LIBS} ${TCL_SHLIB_LD_EXTRAS} ${TK_SHLIB_LD_EXTRAS} ${LD_SEARCH_FLAGS}'
         AS_IF([test "${SHLIB_SUFFIX}" = ".dll"], [
