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

Robert Millan rmh at freebsd.org
Wed Nov 16 18:26:10 UTC 2011

2011/11/16 Xin LI <delphij at delphij.net>:
> Just my $0.02 -- I think we should probably do it in a more
> centralized place -- otherwise in case someone imported some new code,
> they have to do the same defined(__FreeBSD__) ||
> defined(__FreeBSD_kernel__)?

How about something like:

#if defined(__FreeBSD__) && !defined(__FreeBSD_kernel__)
#define __FreeBSD_kernel__

it can be placed at beginning of each header, then the rest becomes
much simpler.

Note this has the side-effect of defining __FreeBSD_kernel__ on
FreeBSD, which I suspect some people won't be fond of.  An alternative
could be to come up with an ad-hoc macro that means "this system is
either FreeBSD or uses the same kernel as FreeBSD" and define it where

More information about the freebsd-current mailing list