From: Yoshinori Sato <ysato@users.sourceforge.jp>

- symbol prefix (use h8300 and v850) support
- include headers


---

 25-akpm/arch/h8300/kernel/vmlinux.lds.S   |    3 +++
 25-akpm/arch/v850/kernel/vmlinux.lds.S    |    1 +
 25-akpm/include/asm-generic/vmlinux.lds.h |   28 ++++++++++++++++------------
 3 files changed, 20 insertions(+), 12 deletions(-)

diff -puN arch/h8300/kernel/vmlinux.lds.S~h8-300-update-2-9-ldscripts-fix arch/h8300/kernel/vmlinux.lds.S
--- 25/arch/h8300/kernel/vmlinux.lds.S~h8-300-update-2-9-ldscripts-fix	2004-05-12 12:46:34.447516768 -0700
+++ 25-akpm/arch/h8300/kernel/vmlinux.lds.S	2004-05-12 12:46:34.452516008 -0700
@@ -1,3 +1,6 @@
+#define VMLINUX_SYMBOL(_sym_) _##_sym_
+#include <asm-generic/vmlinux.lds.h>
+#include <asm/thread_info.h>
 #include <linux/config.h>
 
 #ifdef CONFIG_H8300H_GENERIC
diff -puN arch/v850/kernel/vmlinux.lds.S~h8-300-update-2-9-ldscripts-fix arch/v850/kernel/vmlinux.lds.S
--- 25/arch/v850/kernel/vmlinux.lds.S~h8-300-update-2-9-ldscripts-fix	2004-05-12 12:46:34.448516616 -0700
+++ 25-akpm/arch/v850/kernel/vmlinux.lds.S	2004-05-12 12:46:34.453515856 -0700
@@ -12,6 +12,7 @@
  */
 
 #include <linux/config.h>
+#define VMLINUX_SYMBOL(_sym_) _##_sym_
 #include <asm-generic/vmlinux.lds.h>
 
 /* For most platforms, this will define useful things like RAM addr/size.  */
diff -puN include/asm-generic/vmlinux.lds.h~h8-300-update-2-9-ldscripts-fix include/asm-generic/vmlinux.lds.h
--- 25/include/asm-generic/vmlinux.lds.h~h8-300-update-2-9-ldscripts-fix	2004-05-12 12:46:34.449516464 -0700
+++ 25-akpm/include/asm-generic/vmlinux.lds.h	2004-05-12 12:46:34.454515704 -0700
@@ -2,6 +2,10 @@
 #define LOAD_OFFSET 0
 #endif
 
+#ifndef VMLINUX_SYMBOL
+#define VMLINUX_SYMBOL(_sym_) _sym_
+#endif
+
 #define RODATA								\
 	.rodata           : AT(ADDR(.rodata) - LOAD_OFFSET) {		\
 		*(.rodata) *(.rodata.*)					\
@@ -14,30 +18,30 @@
 									\
 	/* Kernel symbol table: Normal symbols */			\
 	__ksymtab         : AT(ADDR(__ksymtab) - LOAD_OFFSET) {		\
-		__start___ksymtab = .;					\
+		VMLINUX_SYMBOL(__start___ksymtab) = .;			\
 		*(__ksymtab)						\
-		__stop___ksymtab = .;					\
+		VMLINUX_SYMBOL(__stop___ksymtab) = .;			\
 	}								\
 									\
 	/* Kernel symbol table: GPL-only symbols */			\
 	__ksymtab_gpl     : AT(ADDR(__ksymtab_gpl) - LOAD_OFFSET) {	\
-		__start___ksymtab_gpl = .;				\
+		VMLINUX_SYMBOL(__start___ksymtab_gpl) = .;		\
 		*(__ksymtab_gpl)					\
-		__stop___ksymtab_gpl = .;				\
+		VMLINUX_SYMBOL(__stop___ksymtab_gpl) = .;		\
 	}								\
 									\
 	/* Kernel symbol table: Normal symbols */			\
 	__kcrctab         : AT(ADDR(__kcrctab) - LOAD_OFFSET) {		\
-		__start___kcrctab = .;					\
+		VMLINUX_SYMBOL(__start___kcrctab) = .;			\
 		*(__kcrctab)						\
-		__stop___kcrctab = .;					\
+		VMLINUX_SYMBOL(__stop___kcrctab) = .;			\
 	}								\
 									\
 	/* Kernel symbol table: GPL-only symbols */			\
 	__kcrctab_gpl     : AT(ADDR(__kcrctab_gpl) - LOAD_OFFSET) {	\
-		__start___kcrctab_gpl = .;				\
+		VMLINUX_SYMBOL(__start___kcrctab_gpl) = .;		\
 		*(__kcrctab_gpl)					\
-		__stop___kcrctab_gpl = .;				\
+		VMLINUX_SYMBOL(__stop___kcrctab_gpl) = .;		\
 	}								\
 									\
 	/* Kernel symbol table: strings */				\
@@ -47,12 +51,12 @@
 
 #define SECURITY_INIT							\
 	.security_initcall.init : {					\
-		__security_initcall_start = .;				\
+		VMLINUX_SYMBOL(__security_initcall_start) = .;		\
 		*(.security_initcall.init) 				\
-		__security_initcall_end = .;				\
+		VMLINUX_SYMBOL(__security_initcall_end) = .;		\
 	}
 
 #define SCHED_TEXT							\
-		__sched_text_start = .;					\
+		VMLINUX_SYMBOL(__sched_text_start) = .;			\
 		*(.sched.text)						\
-		__sched_text_end = .;
+		VMLINUX_SYMBOL(__sched_text_end) = .;

_