Blob Blame History Raw
From 6eff8085980dba0938cea0193b8a0fd3c6b0c4ca Mon Sep 17 00:00:00 2001
From: Sergei Trofimovich <slyfox@gentoo.org>
Date: Thu, 20 May 2021 23:18:48 +0100
Subject: [PATCH] vgasrc: ignore .node.gnu.property (binutils-2.36 support)

Modern binutils unconditionally tracks x86_64 ISA levels in intermediate
files in .note.gnu.property. Custom liker script does not handle the
section and complains about it:

    ld --gc-sections -T out/vgasrc/vgalayout.lds out/vgaccode16.o \
        out/vgaentry.o out/vgaversion.o -o out/vgarom.o
    ld: section .note.gnu.property LMA [0000000000000000,0000000000000027] \
        overlaps section .text LMA [0000000000000000,00000000000098af]

The change ignores .note* sections.

Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
---
 vgasrc/vgalayout.lds.S | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/vgasrc/vgalayout.lds.S b/vgasrc/vgalayout.lds.S
index 533734d..c3e4f60 100644
--- a/vgasrc/vgalayout.lds.S
+++ b/vgasrc/vgalayout.lds.S
@@ -19,5 +19,12 @@ SECTIONS
 
         // Discard regular data sections to force a link error if
         // 16bit code attempts to access data not marked with VAR16.
-        /DISCARD/ : { *(.text*) *(.rodata*) *(.data*) *(.bss*) *(COMMON) }
+        /DISCARD/ : {
+                *(.text*)
+                *(.rodata*)
+                *(.data*)
+                *(.bss*)
+                *(COMMON)
+                *(.note*)
+                }
 }