[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070721221627.GN475@flower.upol.cz>
Date: Sun, 22 Jul 2007 00:16:27 +0200
From: Oleg Verych <olecom@...wer.upol.cz>
To: Sam Ravnborg <sam@...nborg.org>
Cc: Mike Frysinger <vapier.adi@...il.com>,
Andrew Morton <akpm@...ux-foundation.org>,
kbuild-devel@...ts.sourceforge.net, linux-kernel@...r.kernel.org
Subject: More effective processing (Re: [PATCH 25/33] kbuild: use POSIX BRE in headers install target)
On Sat, Jul 21, 2007 at 10:39:16PM +0200, Sam Ravnborg wrote:
> On Sat, Jul 21, 2007 at 03:21:43PM -0400, Mike Frysinger wrote:
[]
> > while you could try and make a claim against memory/cpu effeciency, i
> > fail to see how the first or last claims could possibly be backed up
Less \{\(\\n\t\+\)\} [0] stuff make readings regex much easier. My
confusion shows that i didn't used \{ much, because have another ways
so far. And even after my quick testing i didn't realize that there
was unrelated to main task whitespace cleanup.
[0] http://sed.sf.net/grabbag/tutorials/lookup_tables.txt
> > but again, if you feel that strongly about it, you're certainly free
> > to post a patch
>
> I would much more prefer this functionality to be integrated into unifdef.
> There is no good reason to have two different preprocesisng methonds, one
> being the sed based one and the other the unidef one.
Clear definition of the task will help to design a solution. I can do
the job, but figuring out all possible corner cases from current
solutions, mixed in Makefiles or everywhere else is not option.
> A sinlge dedicated program that contian the sum of the functionality would
> be faster too.
What do you think about this one? I want to propose to remove
scripts/unifdef.c but to make clear policy about how to mark __KERNEL__
sections in header files. We know how obfuscated C can be, and this also
applies to preprocessing. There's known CodingStyle about some points.
The thing is to specify rules, that will be easy for `sed` to do cleaup
job.
./linux/soundcard.h:#if (!defined(__KERNEL__) && !defined(KERNEL) && !defined(INKERNEL)
&& !defined(_KERNEL)) || defined(USE_SEQ_MACROS)
./linux/stat.h:#if defined(__KERNEL__) || !defined(__GLIBC__) || (__GLIBC__ < 2)
Split __KERNEL__ check, make only positive, i.e.
#if defined(__KERNEL__)
#ifdef __KERNEL__
./linux/stat.h:#ifdef __KERNEL__
No `#else` and ending part to contain comment:
./linux/smb_fs_sb.h:#endif /* __KERNEL__ */
Simple enough:
sed '/^#if[^_]*__KERNEL__/,/^#end[^_]*__KERNEL__/d'
____
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists