From owner-freebsd-current Thu May 30 16: 2:52 2002 Delivered-To: freebsd-current@freebsd.org Received: from evilpete.dyndns.org (12-232-26-46.client.attbi.com [12.232.26.46]) by hub.freebsd.org (Postfix) with ESMTP id 230D837B403; Thu, 30 May 2002 16:02:31 -0700 (PDT) Received: from overcee.wemm.org ([10.0.0.3]) by evilpete.dyndns.org (8.11.6/8.11.6) with ESMTP id g4UN2U170696; Thu, 30 May 2002 16:02:30 -0700 (PDT) (envelope-from peter@wemm.org) Received: from wemm.org (localhost [127.0.0.1]) by overcee.wemm.org (Postfix) with ESMTP id 2A9E9380F; Thu, 30 May 2002 16:02:30 -0700 (PDT) (envelope-from peter@wemm.org) X-Mailer: exmh version 2.5 07/13/2001 with nmh-1.0.4 To: Martin Blapp Cc: "Bruce A. Mah" , obrien@FreeBSD.ORG, current@FreeBSD.ORG Subject: Re: Solved: libstdc++ problem with recent CURRENT In-Reply-To: <20020530233512.N18017-100000@levais.imp.ch> Date: Thu, 30 May 2002 16:02:30 -0700 From: Peter Wemm Message-Id: <20020530230230.2A9E9380F@overcee.wemm.org> Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Martin Blapp wrote: > If we add this patch, we should also add the bits in libm: > > #ifndef HAVE_SQRTL > long double > sqrtl(long double x) > { > return sqrt((double) x); > } > #endif [..] > or we just compile stubs.c in and the gcc provided bits. > But I guess we would also not to link against libm then. > > root@fuchur:/usr/src# diff -ruN gnu/lib/libstdc++/Makefile.orig > gnu/lib/libstdc++/Makefile > --- gnu/lib/libstdc++/Makefile.orig Thu May 30 23:35:38 2002 > +++ gnu/lib/libstdc++/Makefile Thu May 30 23:32:19 2002 > @@ -32,7 +32,7 @@ > valarray-inst.cc ext-inst.cc > > # C parts of math > -SRCS+= nan.c signbit.c signbitf.c signbitl.c # stubs.c > +SRCS+= nan.c signbit.c signbitf.c signbitl.c stubs.c > > # Embedded copy of libsupc++ > SRCS+= del_op.cc del_opnt.cc del_opv.cc del_opvnt.cc \ > > But now it's working ... You know, I think I'd rather activate the stubs.c file than patch libm. If libm is going to provide real "long double" functions, then it should provide real ones, not faked lower precision ones. stubs.c fills in the blanks for the parts that libm doesn't provide, according to config.h. We can even add ifdefs to the config.h file if we have some arches that provide the long double versions and others that do not. To be sure we're all on the same page, simply uncommenting stubs.c solves your problem with no libm changes, right? Cheers, -Peter -- Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com "All of this is for nothing if we don't go to the stars" - JMS/B5 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message