diff options
| author | Alan Jenkins <alan-jenkins@tuffmail.co.uk> | 2009-11-07 21:03:54 +0000 | 
|---|---|---|
| committer | Rusty Russell <rusty@rustcorp.com.au> | 2009-12-15 16:28:26 +1030 | 
| commit | 9e1b9b80721661bd63b3662453767b22cd614fe7 (patch) | |
| tree | e1b53708f4b65c990db3b8b732dc3d984574c756 /include/asm-generic/vmlinux.lds.h | |
| parent | 3e7b19efe621bcf8bfef896c9c4cc5c99c52c3ec (diff) | |
| download | linux-9e1b9b80721661bd63b3662453767b22cd614fe7.tar.bz2 | |
module: make MODULE_SYMBOL_PREFIX into a CONFIG option
The next commit will require the use of MODULE_SYMBOL_PREFIX in
.tmp_exports-asm.S.  Currently it is mixed in with C structure
definitions in "asm/module.h".  Move the definition of this arch option
into Kconfig, so it can be easily accessed by any code.
This also lets modpost.c use the same definition.  Previously modpost
relied on a hardcoded list of architectures in mk_elfconfig.c.
A build test for blackfin, one of the two MODULE_SYMBOL_PREFIX archs,
showed the generated code was unchanged.  vmlinux was identical save
for build ids, and an apparently randomized suffix on a single "__key"
symbol in the kallsyms data).
Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
Acked-by: Mike Frysinger <vapier@gentoo.org> (blackfin)
CC: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Diffstat (limited to 'include/asm-generic/vmlinux.lds.h')
| -rw-r--r-- | include/asm-generic/vmlinux.lds.h | 8 | 
1 files changed, 6 insertions, 2 deletions
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h index b6e818f4b247..67e652068e0e 100644 --- a/include/asm-generic/vmlinux.lds.h +++ b/include/asm-generic/vmlinux.lds.h @@ -52,8 +52,12 @@  #define LOAD_OFFSET 0  #endif -#ifndef VMLINUX_SYMBOL -#define VMLINUX_SYMBOL(_sym_) _sym_ +#ifndef SYMBOL_PREFIX +#define VMLINUX_SYMBOL(sym) sym +#else +#define PASTE2(x,y) x##y +#define PASTE(x,y) PASTE2(x,y) +#define VMLINUX_SYMBOL(sym) PASTE(SYMBOL_PREFIX, sym)  #endif  /* Align . to a 8 byte boundary equals to maximum function alignment. */  |