fix u-boot linking failure with an EABI toolchain
SVN-Revision: 18207
This commit is contained in:
		
							
								
								
									
										52
									
								
								target/linux/at91/image/u-boot/patches/015-eabi_fixes.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								target/linux/at91/image/u-boot/patches/015-eabi_fixes.patch
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,52 @@
 | 
			
		||||
Index: git/lib_arm/div0.c
 | 
			
		||||
===================================================================
 | 
			
		||||
--- git.orig/lib_arm/div0.c
 | 
			
		||||
+++ git/lib_arm/div0.c
 | 
			
		||||
@@ -22,9 +22,3 @@
 | 
			
		||||
  */
 | 
			
		||||
 
 | 
			
		||||
 /* Replacement (=dummy) for GNU/Linux division-by zero handler */
 | 
			
		||||
-void __div0 (void)
 | 
			
		||||
-{
 | 
			
		||||
-	extern void hang (void);
 | 
			
		||||
-
 | 
			
		||||
-	hang();
 | 
			
		||||
-}
 | 
			
		||||
Index: git/Makefile
 | 
			
		||||
===================================================================
 | 
			
		||||
--- git.orig/Makefile
 | 
			
		||||
+++ git/Makefile
 | 
			
		||||
@@ -225,7 +225,7 @@ LIBS := $(addprefix $(obj),$(LIBS))
 | 
			
		||||
 .PHONY : $(LIBS)
 | 
			
		||||
 
 | 
			
		||||
 # Add GCC lib
 | 
			
		||||
-PLATFORM_LIBS += -L $(shell dirname `$(CC) $(CFLAGS) -print-libgcc-file-name`) -lgcc
 | 
			
		||||
+PLATFORM_LIBS += -L $(shell dirname `$(CC) $(CFLAGS) -print-libgcc-file-name`) -lgcc -lgcc_eh
 | 
			
		||||
 
 | 
			
		||||
 # The "tools" are needed early, so put this first
 | 
			
		||||
 # Don't include stuff already done in $(LIBS)
 | 
			
		||||
--- a/board/vlink/vlink.c	2009-10-29 16:40:33.000000000 +0100
 | 
			
		||||
+++ b/board/vlink/vlink.c	2009-10-29 16:43:27.000000000 +0100
 | 
			
		||||
@@ -33,6 +33,9 @@
 | 
			
		||||
  * Miscelaneous platform dependent initialisations
 | 
			
		||||
  */
 | 
			
		||||
 
 | 
			
		||||
+void raise() {}
 | 
			
		||||
+void abort() {}
 | 
			
		||||
+
 | 
			
		||||
 int board_init (void)
 | 
			
		||||
 {
 | 
			
		||||
 	DECLARE_GLOBAL_DATA_PTR;
 | 
			
		||||
--- a/board/vlink/u-boot.lds	2009-10-29 16:40:33.000000000 +0100
 | 
			
		||||
+++ b/board/vlink/u-boot.lds	2009-10-29 16:43:57.000000000 +0100
 | 
			
		||||
@@ -38,6 +38,10 @@
 | 
			
		||||
 
 | 
			
		||||
 	. = ALIGN(4);
 | 
			
		||||
 	.rodata : { *(.rodata) }
 | 
			
		||||
+	.ARM.extab   : { *(.ARM.extab* .gnu.linkonce.armextab.*) }
 | 
			
		||||
+	__exidx_start = .;
 | 
			
		||||
+	.ARM.exidx   : { *(.ARM.exidx* .gnu.linkonce.armexidx.*) }
 | 
			
		||||
+	__exidx_end = .;
 | 
			
		||||
 
 | 
			
		||||
 	. = ALIGN(4);
 | 
			
		||||
 	.data : { *(.data) }
 | 
			
		||||
		Reference in New Issue
	
	Block a user