Re: [Announce] Linux-tiny project revival

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Sam Ravnborg
Date: Thursday, September 20, 2007 - 11:29 pm

On Fri, Sep 21, 2007 at 01:06:21AM +0200, Indan Zupancic wrote:
Thats a bit unavoidable as the build system works.
__FILE__ is passed the filename supplied as argument to gcc.

Try:
echo "char *s = __FILE__;" > sam.c

gcc -E sam.c
This gives you:
# 1 "sam.c"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "sam.c"
char *s="sam.c";

gcc -E ~/sam.c
This gives you:
# 1 "/home/sam/sam.c"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "/home/sam/sam.c"
char *s="/home/sam/sam.c";
 
So __FILE__ expand differently depending on the path on
the gcc command line.
I once posted a patch to fix up on this, especialy for BUG_ON and friends.
The solution was to let kbuild generate the filename and to use
this define in the source code.
But a quick grep for __FILE__ in the kernel source made me chicken out.
Simply too much chrunch at that time to justify it.

Googeling a bit I found it here: http://lkml.org/lkml/2006/7/8/22
The better approach would be to use at least the patch inside
the kernel.
This patch should be easy to update to latest kernel if anyone
is up to play with it.

I recall that there was some problems with the path used.
But I cannot remember the details.
Andrew had some inputs from his testing IIRC and google should
be able to tell the full story.

	Sam





-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[Announce] Linux-tiny project revival, Tim Bird, (Wed Sep 19, 11:03 am)
Re: [Announce] Linux-tiny project revival, Luis R. Rodriguez, (Wed Sep 19, 11:47 am)
Re: [Announce] Linux-tiny project revival, Christian MICHON, (Wed Sep 19, 12:01 pm)
Re: [Announce] Linux-tiny project revival, Andi Kleen, (Wed Sep 19, 12:28 pm)
Re: [Announce] Linux-tiny project revival, Tim Bird, (Wed Sep 19, 12:31 pm)
Re: [Announce] Linux-tiny project revival, Tim Bird, (Wed Sep 19, 12:41 pm)
Re: [Announce] Linux-tiny project revival, Valdis.Kletnieks, (Wed Sep 19, 1:45 pm)
Re: [Celinux-dev] [Announce] Linux-tiny project revival, Andrew Morton, (Wed Sep 19, 2:28 pm)
Re: [Announce] Linux-tiny project revival, Tim Bird, (Wed Sep 19, 2:29 pm)
Re: [Announce] Linux-tiny project revival, Michael Opdenacker, (Wed Sep 19, 3:29 pm)
Re: [Celinux-dev] [Announce] Linux-tiny project revival, Michael Opdenacker, (Wed Sep 19, 3:38 pm)
Re: [Celinux-dev] [Announce] Linux-tiny project revival, Andy Whitcroft, (Thu Sep 20, 2:10 am)
Re: [Announce] Linux-tiny project revival, Alexey Dobriyan, (Thu Sep 20, 12:58 pm)
Re: [Announce] Linux-tiny project revival, Joe Perches, (Thu Sep 20, 1:16 pm)
Re: [Announce] Linux-tiny project revival, Rob Landley, (Thu Sep 20, 1:38 pm)
Re: [Announce] Linux-tiny project revival, Jared Hulbert, (Thu Sep 20, 2:22 pm)
Re: [Announce] Linux-tiny project revival, Indan Zupancic, (Thu Sep 20, 2:26 pm)
Re: [Announce] Linux-tiny project revival, Tim Bird, (Thu Sep 20, 2:58 pm)
Re: [Announce] Linux-tiny project revival, Rob Landley, (Thu Sep 20, 3:02 pm)
Re: [Announce] Linux-tiny project revival, Joe Perches, (Thu Sep 20, 3:14 pm)
Re: [Announce] Linux-tiny project revival, Rob Landley, (Thu Sep 20, 3:53 pm)
Re: [Announce] Linux-tiny project revival, Indan Zupancic, (Thu Sep 20, 4:06 pm)
Re: [Announce] Linux-tiny project revival, Rob Landley, (Thu Sep 20, 4:11 pm)
Re: [Announce] Linux-tiny project revival, Rob Landley, (Thu Sep 20, 4:18 pm)
Re: [Announce] Linux-tiny project revival, Joe Perches, (Thu Sep 20, 5:03 pm)
Re: [Announce] Linux-tiny project revival, Rob Landley, (Thu Sep 20, 5:28 pm)
Re: [Announce] Linux-tiny project revival, Sam Ravnborg, (Thu Sep 20, 11:29 pm)
Re: Monster switch for small size (was Linux-tiny revival), Christian MICHON, (Thu Sep 20, 11:35 pm)
Re: [Announce] Linux-tiny project revival, Bill Davidsen, (Fri Sep 21, 5:27 am)
Re: [Announce] Linux-tiny project revival, Valdis.Kletnieks, (Fri Sep 21, 10:16 am)
Re: [Announce] Linux-tiny project revival, Joe Perches, (Fri Sep 21, 10:45 am)
Re: printk proposal - (was Linux-tiny project revival), Alexey Dobriyan, (Fri Sep 21, 12:07 pm)
Re: printk proposal - (was Linux-tiny project revival), Rob Landley, (Fri Sep 21, 1:53 pm)
Re: [Announce] Linux-tiny project revival, Kyle Moffett, (Fri Sep 21, 2:34 pm)
Re: [Announce] Linux-tiny project revival, Joe Perches, (Fri Sep 21, 3:05 pm)
Re: [Announce] Linux-tiny project revival, Kyle Moffett, (Fri Sep 21, 3:57 pm)
Re: [Announce] Linux-tiny project revival, Rob Landley, (Fri Sep 21, 4:05 pm)
Re: [Announce] Linux-tiny project revival, Joe Perches, (Fri Sep 21, 4:08 pm)
Re: [Announce] Linux-tiny project revival, Adrian Bunk, (Mon Sep 24, 11:13 am)
Re: [Celinux-dev] Re: [Announce] Linux-tiny project revival, Geert Uytterhoeven, (Tue Sep 25, 4:43 am)
Re: [Announce] Linux-tiny project revival, Rob Landley, (Tue Sep 25, 11:24 pm)
Re: [Announce] Linux-tiny project revival, Arnd Bergmann, (Thu Sep 27, 12:00 am)
Re: [Announce] Linux-tiny project revival, Indan Zupancic, (Thu Sep 27, 9:35 am)
Re: [Announce] Linux-tiny project revival, Arnd Bergmann, (Thu Sep 27, 3:21 pm)
Re: [Announce] Linux-tiny project revival, Rob Landley, (Thu Sep 27, 5:06 pm)
Re: [Announce] Linux-tiny project revival, Bernd Petrovitsch, (Fri Sep 28, 1:39 am)
Re: [Announce] Linux-tiny project revival, Jörn, (Sun Sep 30, 1:37 pm)