[syslinux:master] dos/dosexe.ld: Work around linker issue in binutils 2.21.51

syslinux-bot for H. Peter Anvin hpa at zytor.com
Wed Mar 16 13:18:37 PDT 2011


Commit-ID:  3bead6fddbbb82d853fc6650839e27e8d56d8d5b
Gitweb:     http://syslinux.zytor.com/commit/3bead6fddbbb82d853fc6650839e27e8d56d8d5b
Author:     H. Peter Anvin <hpa at zytor.com>
AuthorDate: Wed, 16 Mar 2011 13:07:04 -0700
Committer:  H. Peter Anvin <hpa at zytor.com>
CommitDate: Wed, 16 Mar 2011 13:07:04 -0700

dos/dosexe.ld: Work around linker issue in binutils 2.21.51

binutils 2.21.51 seems to have problem subtracting two
section-relative symbols, so make them global.

Signed-off-by: H. Peter Anvin <hpa at zytor.com>


---
 dos/dosexe.ld |   11 ++++++-----
 1 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/dos/dosexe.ld b/dos/dosexe.ld
index c67c506..833368a 100644
--- a/dos/dosexe.ld
+++ b/dos/dosexe.ld
@@ -27,11 +27,11 @@ SECTIONS
 	__payload_lma = .;
 
 	. = 0x100000000 - syslinux_ldlinux_size;
+	__payload_start = .;
 	.payload : AT (__payload_lma) {
-		 __payload_start = .;
 		 *(.payload)
-		 __payload_end = .;
 	}
+	__payload_end = .;
 	__payload_len = __payload_end - __payload_start;
 	__payload_dwords = __payload_len >> 2;
 
@@ -39,9 +39,10 @@ SECTIONS
 	__payload_sseg = (__payload_lma - __text_lma) >> 4;
 	_exe_text_seg  = (__text_lma - __header_size) >> 4;
 
-	__assert1 = ASSERT((__payload_len == syslinux_ldlinux_size),
-	"syslinux_ldlinux_size must equal the size of .payload");
-
+/*
+ *	__assert1 = ASSERT((__payload_len == syslinux_ldlinux_size),
+ *	"syslinux_ldlinux_size must equal the size of .payload");
+ */
 	. = 0;
 	.text : AT (__text_lma) {
 		*(.text .stub .text.* .gnu.linkonce.t.*)



More information about the Syslinux-commits mailing list