[PATCH} H8/300 update (2/9) ldscripts fix

From: Yoshinori Sato
Date: Tue May 11 2004 - 12:00:20 EST


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

--
Yoshinori Sato
<ysato@xxxxxxxxxxxxxxxxxxxx>

diff -Nru linux-2.6.6/arch/h8300/kernel/vmlinux.lds.S linux-2.6.6-h8300/arch/h8300/kernel/vmlinux.lds.S
--- linux-2.6.6/arch/h8300/kernel/vmlinux.lds.S 2004-05-11 14:30:44.000000000 +0900
+++ linux-2.6.6-h8300/arch/h8300/kernel/vmlinux.lds.S 2004-05-11 21:04:14.000000000 +0900
@@ -1,3 +1,5 @@
+#include <asm-generic/vmlinux.lds.h>
+#include <asm/thread_info.h>
#include <linux/config.h>

#ifdef CONFIG_H8300H_GENERIC
diff -Nru linux-2.6.6/include/asm-generic/vmlinux.lds.h linux-2.6.6-h8300/include/asm-generic/vmlinux.lds.h
--- linux-2.6.6/include/asm-generic/vmlinux.lds.h 2004-05-11 14:30:47.000000000 +0900
+++ linux-2.6.6-h8300/include/asm-generic/vmlinux.lds.h 2004-05-11 23:03:42.000000000 +0900
@@ -1,7 +1,15 @@
+#include <linux/config.h>
+
#ifndef LOAD_OFFSET
#define LOAD_OFFSET 0
#endif

+#if defined(CONFIG_H8300) || defined(CONFIG_V850)
+#define SYMBOL(_sym_) _##_sym_
+#else
+#define SYMBOL(_sym_) _sym_
+#endif
+
#define RODATA \
.rodata : AT(ADDR(.rodata) - LOAD_OFFSET) { \
*(.rodata) *(.rodata.*) \
@@ -14,30 +22,30 @@
\
/* Kernel symbol table: Normal symbols */ \
__ksymtab : AT(ADDR(__ksymtab) - LOAD_OFFSET) { \
- __start___ksymtab = .; \
+ SYMBOL(__start___ksymtab) = .; \
*(__ksymtab) \
- __stop___ksymtab = .; \
+ SYMBOL(__stop___ksymtab) = .; \
} \
\
/* Kernel symbol table: GPL-only symbols */ \
__ksymtab_gpl : AT(ADDR(__ksymtab_gpl) - LOAD_OFFSET) { \
- __start___ksymtab_gpl = .; \
+ SYMBOL(__start___ksymtab_gpl) = .; \
*(__ksymtab_gpl) \
- __stop___ksymtab_gpl = .; \
+ SYMBOL(__stop___ksymtab_gpl) = .; \
} \
\
/* Kernel symbol table: Normal symbols */ \
__kcrctab : AT(ADDR(__kcrctab) - LOAD_OFFSET) { \
- __start___kcrctab = .; \
+ SYMBOL(__start___kcrctab) = .; \
*(__kcrctab) \
- __stop___kcrctab = .; \
+ SYMBOL(__stop___kcrctab) = .; \
} \
\
/* Kernel symbol table: GPL-only symbols */ \
__kcrctab_gpl : AT(ADDR(__kcrctab_gpl) - LOAD_OFFSET) { \
- __start___kcrctab_gpl = .; \
+ SYMBOL(__start___kcrctab_gpl) = .; \
*(__kcrctab_gpl) \
- __stop___kcrctab_gpl = .; \
+ SYMBOL(__stop___kcrctab_gpl) = .; \
} \
\
/* Kernel symbol table: strings */ \
@@ -47,12 +55,12 @@

#define SECURITY_INIT \
.security_initcall.init : { \
- __security_initcall_start = .; \
+ SYMBOL(__security_initcall_start) = .; \
*(.security_initcall.init) \
__security_initcall_end = .; \
}

#define SCHED_TEXT \
- __scheduling_functions_start_here = .; \
+ SYMBOL(__scheduling_functions_start_here) = .; \
*(.sched.text) \
- __scheduling_functions_end_here = .;
+ SYMBOL(__scheduling_functions_end_here) = .;
-
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/