NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: lib/58674: HEAD fails to build tools on recent Linux (Fedora 40)



The following reply was made to PR lib/58674; it has been noted by GNATS.

From: "David H. Gutteridge" <david%gutteridge.ca@localhost>
To: gnats-bugs%netbsd.org@localhost, lib-bug-people%netbsd.org@localhost,
 gnats-admin%netbsd.org@localhost,  netbsd-bugs%netbsd.org@localhost
Cc: 
Subject: Re: lib/58674: HEAD fails to build tools on recent Linux (Fedora 40)
Date: Wed, 18 Sep 2024 21:34:21 -0400

 On Tue, 2024-09-17 at 13:55 +0000, Robert Elz via gnats wrote:
 > The following reply was made to PR lib/58674; it has been noted by
 > GNATS.
 >=20
 > From: Robert Elz <kre%munnari.OZ.AU@localhost>
 > To: gnats-bugs%netbsd.org@localhost
 > Cc:=20
 > Subject: Re: lib/58674: HEAD fails to build tools on recent Linux
 > (Fedora 40)
 > Date: Tue, 17 Sep 2024 20:52:16 +0700
 >=20
 > =C2=A0=C2=A0=C2=A0=C2=A0 Date:=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =
 Tue, 17 Sep 2024 00:20:00 +0000 (UTC)
 > =C2=A0=C2=A0=C2=A0=C2=A0 From:=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =
 david%gutteridge.ca@localhost
 > =C2=A0=C2=A0=C2=A0=C2=A0 Message-ID:=C2=A0 <20240917002000.AD1831A9244@mo=
 llari.NetBSD.org>
 > =C2=A0
 > =C2=A0=C2=A0 | So, on NetBSD the idea is those various defines are requir=
 ed
 > =C2=A0=C2=A0 | universally, but on Linux "the program ... should do that"=
 . Which
 > is it?
 > =C2=A0
 > =C2=A0Strictly, all programs should say what standard(s) they are being
 > =C2=A0written for, and so which the compiler should apply.
 > =C2=A0
 > =C2=A0However, for normal NetBSD applications we simply set
 > __NetBSD_SOURCE__
 > =C2=A0and allow everything conceivable to be visible (and so used), and
 > then
 > =C2=A0make sure the code doesn't use anything that exposes in incompatibl=
 e
 > ways.
 > =C2=A0
 > =C2=A0The #ifdef __NetBSD__ section you showed is attempting to undo that
 > for
 > =C2=A0tools builds, so we can (hopefully) catch things in the tools build
 > before
 > =C2=A0they get to foreign systems ... but our headers aren't all perfect =
 in
 > =C2=A0what they actually expose, when __NetBSD_SOURCE__ isn't defined.
 
 I see, so it's like there are two layers to this. We're trying to avoid
 NetBSD-specific features, but XOPEN_SOURCE is one of the things then
 set, so if those are indeed correct, we still won't catch everything
 unexpected on other platforms.
 
 Dave
 


Home | Main Index | Thread Index | Old Index