Re: [PATCH] Detect GNU/kFreeBSD in user-visible kernel headers

From: John Baldwin <jhb_at_freebsd.org>
Date: Thu, 17 Nov 2011 16:32:34 -0500
On Thursday, November 17, 2011 2:02:02 pm Robert Millan wrote:
> 2011/11/17 John Baldwin <jhb_at_freebsd.org>:
> > I recall the discussion from earlier.  I can't recall if I had replied to it
> > though. :-/  In my current opinion, I think it would be fine to define
> > __FreeBSD_kernel__ on FreeBSD and to do it in <sys/param.h> for now until all
> > the compilers we use have been updated to define it automatically (which may
> > be a long time).  I think it will also be fine to patch in-system headers to
> > use __FreeBSD_kernel__ once <sys/param.h> is defined.  Unfortunately headers
> > in 3rd party software are going to have to check for both __FreeBSD__ and
> > __FreeBSD_kernel__ to support both GNU/kFreeBSD and older FreeBSD for the
> > foreseeable future.  I think that is fine, but that the sooner we add
> > __FreeBSD_kernel__ on FreeBSD the sooner we get the clock started for a day
> > when those extra checks can go away.  I would also be fine with MFC'ing the
> > addition of __FreeBSD_kernel__ to older branches (at least 7 - 9) as well.
> 
> Well, here's a patch then.  I wrote a comment in it trying to explain
> the situation.  Please let me know what you think.

Hmm, I wonder if it's better to use the #ifndef approach rather than #undef
so that when compilers are updated to DTRT we will honor their settings?

(And eventually this could be maybe removed from param.h altogether.)

-- 
John Baldwin
Received on Thu Nov 17 2011 - 20:32:36 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:20 UTC