From owner-freebsd-current Tue Jul 29 01:32:29 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id BAA24522 for current-outgoing; Tue, 29 Jul 1997 01:32:29 -0700 (PDT) Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.19]) by hub.freebsd.org (8.8.5/8.8.5) with ESMTP id BAA24515 for ; Tue, 29 Jul 1997 01:32:24 -0700 (PDT) Received: (from bde@localhost) by godzilla.zeta.org.au (8.8.5/8.6.9) id SAA25614; Tue, 29 Jul 1997 18:31:45 +1000 Date: Tue, 29 Jul 1997 18:31:45 +1000 From: Bruce Evans Message-Id: <199707290831.SAA25614@godzilla.zeta.org.au> To: bartol@salk.edu, current@FreeBSD.ORG Subject: Re: make world fails in tcl Sender: owner-freebsd-current@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk >/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 , 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