* From: David Woodhouse
* Date: Thu, 24 May 2007 11:32:45 -0400
> On Wed, 2007-05-23 at 13:29 +0100, Jonathan Underwood wrote:
>> Dear Kernel list,
>> I've noticed in the past that unifdef is used in kernel package
>> building. I wonder if you're aware of a maintained and more
>> featureful program, Sunifdef, which has evolved from unifdef (which
>> seems mostly unmaintained). It's packaged for Fedora, and has a
>> website here.
> The kernel no longer uses an external unifdef -- it has its own in
> scripts/unifdef.c. If you want to work with the upstream kernel to
> change that to sunifdef, go ahead.
> Can 'sunifdef -U__KERNEL__' fix up stuff like...
> #if defined(__KERNEL__) && defined(__FOO__)
>  and
> #if defined(__KERNEL__) || defined(__BAR__)
> ... by treating them as '#if 0' (and eliding completely) and by
> rewriting to just #ifdef __BAR__, respectively? If so, changing the
> upstream kernel seems like it would be useful.

If, what you've wrote would be policy (with watchdog script in the git),
i think, simple (sed) scripts can be written to unifdef __KERNEL__ for
userspace headers, with further sed'ing them(compiler.h), without any
need of external or internal *programs*.

Linux coding standards got rid of many C obfustications, happily.

[EMAIL PROTECTED]:/tmp$ grep -e __KERNEL /usr/include/linux/soundcard.h | grep 
#if (!defined(__KERNEL__) && !defined(KERNEL) && !defined(INKERNEL) && 
!defined(_KERNEL)) || defined(USE_SEQ_MACROS)
Even this one is simple regex, but anyway, policy would be good.

> -- 
> dwmw2

This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
kbuild-devel mailing list

Reply via email to