Re: [PATCH -mm] replacement for broken kbuild-dont-put-temp-files-in-the-source-tree.patch

From: Oleg Verych
Date: Mon Oct 30 2006 - 09:36:20 EST



On 2006-10-30, Jan Beulich wrote:
>
>>>gcc does not delete files specified with -o - but binutils does.
>>>So using /dev/null in this case is not an option.
>>
>>Hmm. What's the preblem to invoke `as' via the GNU C compiler, then?
>
>Older gas, whether invoked from gcc or the command line or elsewhere,
>deletes its output on error, regardless of whether this is a special file
>(device). gcc can't make gas not do so.

So, how about (using your btmp directory) create symlink to /dev/null in
the (dev) sub-directory and then set no write permission? No tmp,
things are local to build output, old gas's happy:
,__
|olecom@flower:/tmp/_build_2.6.19-rc3/btmp
!__$ mkdir dev
,__
|olecom@flower:/tmp/_build_2.6.19-rc3/btmp
!__$ cd dev ; ln -s /dev/null null ; chmod u-w . ; ls -la
total 0
dr-xr-x--- 2 olecom root 60 2006-10-30 15:34 .
drwxr-x--- 3 olecom root 80 2006-10-30 15:34 ..
lrwxrwxrwx 1 olecom root 9 2006-10-30 15:34 null -> /dev/null
,__
|olecom@flower:/tmp/_build_2.6.19-rc3/btmp/dev
!__$ cd .. ; rm dev/null
rm: cannot remove dev/null': Permission denied
,__
|olecom@flower:/tmp/_build_2.6.19-rc3/btmp
!__$ echo ok > dev/null
,__
|olecom@flower:/tmp/_build_2.6.19-rc3/btmp
!__$

New featured dev/null may be set in some kind of make variable, say
$(null) in scripts/Kbuild.include.
____
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/