Date: Tue, 29 Jul 1997 18:31:45 +1000 From: Bruce Evans <bde@zeta.org.au> To: bartol@salk.edu, current@FreeBSD.ORG Subject: Re: make world fails in tcl Message-ID: <199707290831.SAA25614@godzilla.zeta.org.au>
next in thread | raw e-mail | index | archive | help
>/usr/src/lib/libtcl/../../contrib/tcl/unix/tclMtherr.c:80: `DOMAIN' >undeclared (first use this function) >... >/usr/src/lib/libtcl/../../contrib/tcl/unix/tclMtherr.c:80: `SING' >undeclared (first use this function) >*** Error code 1 >... >The problem seems to arise from the following code in tclMtherr.c: > >/* > * The following definitions allow matherr to compile on systems > * that don't really support it. The compiled procedure is bogus, > * but it will never be executed on these systems anyway. > */ > >#ifndef NEED_MATHERR >struct exception { > int type; >}; >#define DOMAIN 0 >#define SING 0 >#endif > > > >Which never gets used because the Makefile in src/lib/libtcl does a >-DNEED_MATHERR=1 within the CFLAGS definition. Therefore SING and DOMAIN >are undefined. SING and DOMAIN are defined in <math.h>, provided the standard math library (src/lib/msun) is used. The old math library (src/lib/libm) has various problems and should normally not be used. The standard math library is configured to never call matherr(). To enable matherr(), recompile the library to support multiple modes and switch to SYSV mode. You shouldn't want this mode (except possibly for matherr()). Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199707290831.SAA25614>