summaryrefslogtreecommitdiffstats
path: root/unix
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2018-02-15 15:08:17 (GMT)
committerdgp <dgp@users.sourceforge.net>2018-02-15 15:08:17 (GMT)
commitdda81853f3711f64164099578a14632f549f086a (patch)
tree944418bebbf4be5ef100a3adf7228d0fefbe5791 /unix
parent919808c6a556bf33b5233caf77248456d309df8a (diff)
downloadtcl-dda81853f3711f64164099578a14632f549f086a.zip
tcl-dda81853f3711f64164099578a14632f549f086a.tar.gz
tcl-dda81853f3711f64164099578a14632f549f086a.tar.bz2
Stop seeking out the libieee.a library and linking to it when found.
The latest release of the GNU C library, glibc-2.27 has done away with the libieee.a library. This prompts a review of why Tcl has been using it. Since Tcl 8.4.0, Tcl has stopped using the matherr() machinery, so we don't need it anymore for that. Since Tcl 8.5.0, Tcl post-processes ERANGE for itself when floating point underflow or overflow can sensibly produce a 0.0 or Inf result instead of raising an error. We no longer need to configure the system math library to silence these reports. A conseqeunce of this change is that TCL_LIBS will no longer include the linker option -lieee . This can potentially change the behavior of programs that embed libtcl. If so, though, those same programs are going to also have behavior changed as the new glibc release gets into routine use. We're doing those programs a favor by stopping masking the discovery that they need to be updated.
Diffstat (limited to 'unix')
-rwxr-xr-xunix/configure64
-rw-r--r--unix/tcl.m43
2 files changed, 0 insertions, 67 deletions
diff --git a/unix/configure b/unix/configure
index 3d7fbf4..7d7f002 100755
--- a/unix/configure
+++ b/unix/configure
@@ -4840,8 +4840,6 @@ _ACEOF
#--------------------------------------------------------------------
# On a few very rare systems, all of the libm.a stuff is
# already in libc.a. Set compiler flags accordingly.
- # Also, Linux requires the "ieee" library for math to work
- # right (and it must appear before "-lm").
#--------------------------------------------------------------------
echo "$as_me:$LINENO: checking for sin" >&5
@@ -4940,68 +4938,6 @@ else
MATH_LIBS="-lm"
fi
- echo "$as_me:$LINENO: checking for main in -lieee" >&5
-echo $ECHO_N "checking for main in -lieee... $ECHO_C" >&6
-if test "${ac_cv_lib_ieee_main+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lieee $LIBS"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-
-int
-main ()
-{
-main ();
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag"
- || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- ac_cv_lib_ieee_main=yes
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-ac_cv_lib_ieee_main=no
-fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-echo "$as_me:$LINENO: result: $ac_cv_lib_ieee_main" >&5
-echo "${ECHO_T}$ac_cv_lib_ieee_main" >&6
-if test $ac_cv_lib_ieee_main = yes; then
- MATH_LIBS="-lieee $MATH_LIBS"
-fi
-
#--------------------------------------------------------------------
# Interactive UNIX requires -linet instead of -lsocket, plus it
diff --git a/unix/tcl.m4 b/unix/tcl.m4
index 6ca2047..3535a1b 100644
--- a/unix/tcl.m4
+++ b/unix/tcl.m4
@@ -2470,12 +2470,9 @@ AC_DEFUN([SC_TCL_LINK_LIBS], [
#--------------------------------------------------------------------
# On a few very rare systems, all of the libm.a stuff is
# already in libc.a. Set compiler flags accordingly.
- # Also, Linux requires the "ieee" library for math to work
- # right (and it must appear before "-lm").
#--------------------------------------------------------------------
AC_CHECK_FUNC(sin, MATH_LIBS="", MATH_LIBS="-lm")
- AC_CHECK_LIB(ieee, main, [MATH_LIBS="-lieee $MATH_LIBS"])
#--------------------------------------------------------------------
# Interactive UNIX requires -linet instead of -lsocket, plus it