NetBSD Problem Report #53719

From www@NetBSD.org  Sat Nov 10 19:20:04 2018
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
	by mollari.NetBSD.org (Postfix) with ESMTPS id 7793A7A1A3
	for <gnats-bugs@gnats.NetBSD.org>; Sat, 10 Nov 2018 19:20:04 +0000 (UTC)
Message-Id: <20181110192002.8E0A97A1C2@mollari.NetBSD.org>
Date: Sat, 10 Nov 2018 19:20:02 +0000 (UTC)
From: thorpej@netbsd.org
Reply-To: thorpej@netbsd.org
To: gnats-bugs@NetBSD.org
Subject: mips64eb fails to build libm with -current sources from 20181109
X-Send-Pr-Version: www-1.0

>Number:         53719
>Category:       port-mips
>Synopsis:       mips64eb fails to build libm with -current sources from 20181109
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    port-mips-maintainer
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Nov 10 19:25:00 +0000 2018
>Closed-Date:    Sat Nov 10 22:28:59 +0000 2018
>Last-Modified:  Sat Nov 10 22:28:59 +0000 2018
>Originator:     Jason Thorpe
>Release:        -current sources from 20181109
>Organization:
NetBSD
>Environment:
Cross-compiled from macOS 10.14.x
>Description:
libm fails to build for mips64eb:

#   compile  libm/fenv.o
/nbsd/tools/bin/mips64--netbsd-gcc -O2   -std=gnu99    -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wno-sign-compare  -Wsystem-headers   -Wno-traditional   -Wa,--fatal-warnings  -Wreturn-type -Wswitch -Wshadow -Wcast-qual -Wwrite-strings -Wextra -Wno-unused-parameter -Wno-sign-compare -Wold-style-definition -Wsign-compare -Wformat=2  -Wno-format-zero-length  -Werror  -Wa,--fatal-warnings -fPIE -fno-strict-aliasing   --sysroot=/nbsd/destdir/evbmips64eb -D_MULTI_LIBM -D_POSIX_MODE -DLIBM_SCCS -I/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/src -I/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/gen  -c    /Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c -o fenv.o
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c:63:29: error: invalid initializer
 const fenv_t __fe_dfl_env = 0;
                             ^
In file included from /Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c:33:0:
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/src/namespace.h:81:21: error: inline function '_fegetexcept' declared but never defined [-Werror]
 #define fegetexcept _fegetexcept
                     ^
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c:78:19: note: in expansion of macro 'fegetexcept'
 extern inline int fegetexcept(void);
                   ^~~~~~~~~~~
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/src/namespace.h:78:25: error: inline function '_fedisableexcept' declared but never defined [-Werror]
 #define fedisableexcept _fedisableexcept
                         ^
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c:77:19: note: in expansion of macro 'fedisableexcept'
 extern inline int fedisableexcept(int __excepts);
                   ^~~~~~~~~~~~~~~
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/src/namespace.h:79:24: error: inline function '_feenableexcept' declared but never defined [-Werror]
 #define feenableexcept _feenableexcept
                        ^
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c:76:19: note: in expansion of macro 'feenableexcept'
 extern inline int feenableexcept(int __excepts);
                   ^~~~~~~~~~~~~~
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/src/namespace.h:90:21: error: inline function '_feupdateenv' declared but never defined [-Werror]
 #define feupdateenv _feupdateenv
                     ^
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c:75:19: note: in expansion of macro 'feupdateenv'
 extern inline int feupdateenv(const fenv_t *__envp);
                   ^~~~~~~~~~~
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/src/namespace.h:86:18: error: inline function '_fesetenv' declared but never defined [-Werror]
 #define fesetenv _fesetenv
                  ^
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c:74:19: note: in expansion of macro 'fesetenv'
 extern inline int fesetenv(const fenv_t *__envp);
                   ^~~~~~~~
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/src/namespace.h:84:22: error: inline function '_feholdexcept' declared but never defined [-Werror]
 #define feholdexcept _feholdexcept
                      ^
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c:73:19: note: in expansion of macro 'feholdexcept'
 extern inline int feholdexcept(fenv_t *__envp);
                   ^~~~~~~~~~~~
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/src/namespace.h:80:18: error: inline function '_fegetenv' declared but never defined [-Werror]
 #define fegetenv _fegetenv
                  ^
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c:72:19: note: in expansion of macro 'fegetenv'
 extern inline int fegetenv(fenv_t *__envp);
                   ^~~~~~~~
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/src/namespace.h:88:20: error: inline function '_fesetround' declared but never defined [-Werror]
 #define fesetround _fesetround
                    ^
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c:71:19: note: in expansion of macro 'fesetround'
 extern inline int fesetround(int __round);
                   ^~~~~~~~~~
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/src/namespace.h:83:20: error: inline function '_fegetround' declared but never defined [-Werror]
 #define fegetround _fegetround
                    ^
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c:70:19: note: in expansion of macro 'fegetround'
 extern inline int fegetround(void);
                   ^~~~~~~~~~
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/src/namespace.h:89:22: error: inline function '_fetestexcept' declared but never defined [-Werror]
 #define fetestexcept _fetestexcept
                      ^
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c:69:19: note: in expansion of macro 'fetestexcept'
 extern inline int fetestexcept(int __excepts);
                   ^~~~~~~~~~~~
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/src/namespace.h:87:25: error: inline function '_fesetexceptflag' declared but never defined [-Werror]
 #define fesetexceptflag _fesetexceptflag
                         ^
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c:67:19: note: in expansion of macro 'fesetexceptflag'
 extern inline int fesetexceptflag(const fexcept_t *__flagp, int __excepts);
                   ^~~~~~~~~~~~~~~
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/src/namespace.h:85:23: error: inline function '_feraiseexcept' declared but never defined [-Werror]
 #define feraiseexcept _feraiseexcept
                       ^
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c:68:19: note: in expansion of macro 'feraiseexcept'
 extern inline int feraiseexcept(int __excepts);
                   ^~~~~~~~~~~~~
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/src/namespace.h:82:25: error: inline function '_fegetexceptflag' declared but never defined [-Werror]
 #define fegetexceptflag _fegetexceptflag
                         ^
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c:66:19: note: in expansion of macro 'fegetexceptflag'
 extern inline int fegetexceptflag(fexcept_t *__flagp, int __excepts);
                   ^~~~~~~~~~~~~~~
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/src/namespace.h:77:23: error: inline function '_feclearexcept' declared but never defined [-Werror]
 #define feclearexcept _feclearexcept
                       ^
/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c:65:19: note: in expansion of macro 'feclearexcept'
 extern inline int feclearexcept(int __excepts);
                   ^~~~~~~~~~~~~
cc1: all warnings being treated as errors

*** Failed target:  fenv.o
*** Failed command: /nbsd/tools/bin/mips64--netbsd-gcc -O2 -std=gnu99 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wno-sign-compare -Wsystem-headers -Wno-traditional -Wa,--fatal-warnings -Wreturn-type -Wswitch -Wshadow -Wcast-qual -Wwrite-strings -Wextra -Wno-unused-parameter -Wno-sign-compare -Wold-style-definition -Wsign-compare -Wformat=2 -Wno-format-zero-length -Werror -Wa,--fatal-warnings -fPIE -fno-strict-aliasing --sysroot=/nbsd/destdir/evbmips64eb -D_MULTI_LIBM -D_POSIX_MODE -DLIBM_SCCS -I/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/src -I/Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/gen -c /Volumes/Data0/Users/thorpej/hack/NetBSD/current/src/lib/libm/arch/mips/fenv.c -o fenv.o
*** Error code 1

>How-To-Repeat:
Just attempt to build an evbmips64-eb distribution.
>Fix:

>Release-Note:

>Audit-Trail:
From: coypu@sdf.org
To: gnats-bugs@netbsd.org
Cc: 
Subject: Re: port-mips/53719: mips64eb fails to build libm with -current
 sources from 20181109
Date: Sat, 10 Nov 2018 20:22:37 +0000

 To spare the amount of blank staring I had to do when looking at it:
 mips64 gcc does (as a builtin)
 #define __mips_soft_float 1

 which affects mips/fenv.h and guards all the definitions.

From: coypu@sdf.org
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: port-mips/53719: mips64eb fails to build libm with -current
Date: Sat, 10 Nov 2018 20:50:03 +0000

 So, this fixes things, as far as my build seems to keep on going, but I
 have QUESTIONS.

 Index: bsd.own.mk
 ===================================================================
 RCS file: /cvsroot/src/share/mk/bsd.own.mk,v
 retrieving revision 1.1079
 diff -u -r1.1079 bsd.own.mk
 --- bsd.own.mk	10 Nov 2018 01:40:46 -0000	1.1079
 +++ bsd.own.mk	10 Nov 2018 20:49:55 -0000
 @@ -980,7 +980,7 @@
  # These platforms use softfloat by default.
  #
  .if ${MACHINE_ARCH} == "mips64eb" || ${MACHINE_ARCH} == "mips64el"
 -MKSOFTFLOAT?=	no
 +MKSOFTFLOAT?=	yes
  .endif

  #

From: "Maya Rashish" <maya@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/53719 CVS commit: src/share/mk
Date: Sat, 10 Nov 2018 22:19:33 +0000

 Module Name:	src
 Committed By:	maya
 Date:		Sat Nov 10 22:19:33 UTC 2018

 Modified Files:
 	src/share/mk: bsd.own.mk

 Log Message:
 Revert part of 1.1079. MKSOFTFLOAT?=yes for mips64*.

 That is most likely an accidental commit.

 PR port-mips/53719


 To generate a diff of this commit:
 cvs rdiff -u -r1.1079 -r1.1080 src/share/mk/bsd.own.mk

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

State-Changed-From-To: open->closed
State-Changed-By: maya@NetBSD.org
State-Changed-When: Sat, 10 Nov 2018 22:28:59 +0000
State-Changed-Why:
should be fine now. thanks for the report.


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.43 2018/01/16 07:36:43 maya Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2017 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.