From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31016 invoked by alias); 23 Mar 2017 06:59:05 -0000 Mailing-List: contact newlib-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: newlib-owner@sourceware.org Received: (qmail 30974 invoked by uid 89); 23 Mar 2017 06:59:02 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: Yes, score=6.3 required=5.0 tests=AWL,BAYES_50,FOREIGN_BODY,RCVD_IN_DNSWL_NONE,SPF_PASS,T_FILL_THIS_FORM_SHORT autolearn=no version=3.3.2 spammy=UD:ieeefp.h, H*f:sk:854be01, H*i:sk:854be01, ieeefph X-HELO: dedi548.your-server.de Received: from dedi548.your-server.de (HELO dedi548.your-server.de) (85.10.215.148) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 23 Mar 2017 06:59:00 +0000 Received: from [78.47.166.52] (helo=sslproxy04.your-server.de) by dedi548.your-server.de with esmtpsa (TLSv1.2:DHE-RSA-AES256-GCM-SHA384:256) (Exim 4.85_2) (envelope-from ) id 1cqwi2-0003py-5m; Thu, 23 Mar 2017 07:58:58 +0100 Received: from [82.135.62.35] (helo=mail.embedded-brains.de) by sslproxy04.your-server.de with esmtpsa (TLSv1.2:DHE-RSA-AES256-GCM-SHA384:256) (Exim 4.84_2) (envelope-from ) id 1cqwhw-00060y-Qs; Thu, 23 Mar 2017 07:58:53 +0100 Received: from localhost (localhost.localhost [127.0.0.1]) by mail.embedded-brains.de (Postfix) with ESMTP id 4E34F2A1663; Thu, 23 Mar 2017 07:59:20 +0100 (CET) Received: from mail.embedded-brains.de ([127.0.0.1]) by localhost (zimbra.eb.localhost [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id Ge3g3xXNbyVo; Thu, 23 Mar 2017 07:59:18 +0100 (CET) Received: from localhost (localhost.localhost [127.0.0.1]) by mail.embedded-brains.de (Postfix) with ESMTP id 1118F2A1664; Thu, 23 Mar 2017 07:59:18 +0100 (CET) Received: from mail.embedded-brains.de ([127.0.0.1]) by localhost (zimbra.eb.localhost [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id wCv8DQpagDHC; Thu, 23 Mar 2017 07:59:17 +0100 (CET) Received: from [192.168.96.129] (unknown [192.168.96.129]) by mail.embedded-brains.de (Postfix) with ESMTPSA id E42D52A1663; Thu, 23 Mar 2017 07:59:17 +0100 (CET) Subject: Re: newlib ieeefp.h again To: Andrew Johnson , Joel Sherrill , howland@LGSInnovations.com References: <854be012-0f1f-b0bf-b7a8-bc615452fa0e@aps.anl.gov> Cc: newlib@sourceware.org From: Sebastian Huber Message-ID: <58D37229.70306@embedded-brains.de> Date: Thu, 23 Mar 2017 06:59:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.0 MIME-Version: 1.0 In-Reply-To: <854be012-0f1f-b0bf-b7a8-bc615452fa0e@aps.anl.gov> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes X-SW-Source: 2017/txt/msg00212.txt.bz2 On 23/03/17 00:17, Andrew Johnson wrote: > Hi Joel & Craig, > > Hopefully you remember this email conversation from November: > > https://sourceware.org/ml/newlib/2016/msg01117.html > > I just built the RTEMS master branch for the uC5282 BSP, and found the > same problem with the ieeefp.h header when building EPICS Base using the > result. I think I can explain what's happening. > > Newlib's setting for _LDBL_EQ_DBL (in newlib.h) needs to change based on > the particular CPU being compiled for. Here's some evidence: Yes, this definition of _LDBL_EQ_DBL is wrong, since it depends on the=20 multilib. For example we have in the GCC build tree: grep _LDBL_EQ_DBL `find -name newlib.h` ./m68k-rtems4.12/m68040/softfp/newlib/newlib.h:/* #undef _LDBL_EQ_DBL */ ./m68k-rtems4.12/m68040/newlib/newlib.h:/* #undef _LDBL_EQ_DBL */ ./m68k-rtems4.12/m5208/newlib/newlib.h:#define _LDBL_EQ_DBL 1 ./m68k-rtems4.12/m5329/newlib/newlib.h:#define _LDBL_EQ_DBL 1 ./m68k-rtems4.12/m5206/newlib/newlib.h:#define _LDBL_EQ_DBL 1 ./m68k-rtems4.12/m5407/newlib/newlib.h:#define _LDBL_EQ_DBL 1 ./m68k-rtems4.12/softfp/newlib/newlib.h:/* #undef _LDBL_EQ_DBL */ ./m68k-rtems4.12/m68000/newlib/targ-include/newlib.h:/* #undef=20 _LDBL_EQ_DBL */ ./m68k-rtems4.12/m68000/newlib/newlib.h:/* #undef _LDBL_EQ_DBL */ ./m68k-rtems4.12/newlib/targ-include/newlib.h:/* #undef _LDBL_EQ_DBL */ ./m68k-rtems4.12/newlib/newlib.h:/* #undef _LDBL_EQ_DBL */ ./m68k-rtems4.12/m5475/softfp/newlib/newlib.h:#define _LDBL_EQ_DBL 1 ./m68k-rtems4.12/m5475/newlib/newlib.h:#define _LDBL_EQ_DBL 1 ./m68k-rtems4.12/m68060/softfp/newlib/newlib.h:/* #undef _LDBL_EQ_DBL */ ./m68k-rtems4.12/m68060/newlib/newlib.h:/* #undef _LDBL_EQ_DBL */ ./m68k-rtems4.12/mcpu32/newlib/newlib.h:/* #undef _LDBL_EQ_DBL */ ./m68k-rtems4.12/m5307/newlib/newlib.h:#define _LDBL_EQ_DBL 1 In the installation tree: grep _LDBL_EQ_DBL `find -name newlib.h` ./m68k-rtems4.12/include/newlib.h:/* #undef _LDBL_EQ_DBL */ So, only one random newlib.h is copied to the installation tree,=20 therefore all newlib.h of the build tree must be identical. I would move the _LDBL_EQ_DBL definition to based on compiler=20 provided defines. --=20 Sebastian Huber, embedded brains GmbH Address : Dornierstr. 4, D-82178 Puchheim, Germany Phone : +49 89 189 47 41-16 Fax : +49 89 189 47 41-09 E-Mail : sebastian.huber@embedded-brains.de PGP : Public key available on request. Diese Nachricht ist keine gesch=C3=A4ftliche Mitteilung im Sinne des EHUG.