mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2025-04-21 12:27:27 +03:00
Initial revision
git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@197 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
See http://sources.redhat.com/ml/binutils/2004-08/msg00256.html
|
||||
|
||||
Date: Fri, 20 Aug 2004 21:13:43 -0400
|
||||
From: Daniel Jacobowitz <drow at false dot org>
|
||||
To: binutils at sources dot redhat dot com
|
||||
Subject: Re: Handle SEC_LINK_DUPLICATES_SAME_CONTENTS for arm-linux
|
||||
Message-ID: <20040821011342.GA30319@nevyn.them.org>
|
||||
Mail-Followup-To: binutils at sources dot redhat dot com
|
||||
References: <20040818145518.GA9774@nevyn.them.org> <20040819055040.GA11820@lucon.org> <20040819080034.GE21716@bubble.modra.org> <20040820173240.GA17678@nevyn.them.org> <20040821003737.GB16016@bubble.modra.org>
|
||||
In-Reply-To: <20040821003737 dot GB16016 at bubble dot modra dot org>
|
||||
|
||||
On Sat, Aug 21, 2004 at 10:07:38AM +0930, Alan Modra wrote:
|
||||
> On Fri, Aug 20, 2004 at 01:32:40PM -0400, Daniel Jacobowitz wrote:
|
||||
> > Thanks. How's this?
|
||||
>
|
||||
> As you might have guessed from my rather slack review of your previous
|
||||
> patch, I trust you enough to give the OK without proper review. But
|
||||
> since you asked... :)
|
||||
|
||||
Checked in as so.
|
||||
|
||||
--
|
||||
Daniel Jacobowitz
|
||||
|
||||
[ rediffed against binutils-2.15.91.0.2, with some elbow grease ]
|
||||
|
||||
2004-08-20 Daniel Jacobowitz <dan@debian.org>
|
||||
|
||||
* elflink.c (_bfd_elf_section_already_linked): Handle
|
||||
SEC_LINK_DUPLICATES_SAME_CONTENTS.
|
||||
--- binutils-2.15.91.0.2/bfd/elflink.c.old 2004-07-27 21:36:08.000000000 -0700
|
||||
+++ binutils-2.15.91.0.2/bfd/elflink.c 2004-08-26 06:38:07.000000000 -0700
|
||||
@@ -9359,6 +9359,35 @@
|
||||
(_("%s: %s: warning: duplicate section `%s' has different size\n"),
|
||||
bfd_archive_filename (abfd), name);
|
||||
break;
|
||||
+ case SEC_LINK_DUPLICATES_SAME_CONTENTS:
|
||||
+ if (sec->size != l->sec->size)
|
||||
+ (*_bfd_error_handler)
|
||||
+ (_("%B: duplicate section `%A' has different size\n"),
|
||||
+ bfd_archive_filename (abfd), sec);
|
||||
+ else if (sec->size != 0)
|
||||
+ {
|
||||
+ bfd_byte *sec_contents, *l_sec_contents;
|
||||
+
|
||||
+ if (!bfd_malloc_and_get_section (abfd, sec, &sec_contents))
|
||||
+ (*_bfd_error_handler)
|
||||
+ (_("%B: warning: could not read contents of section `%A'\n"),
|
||||
+ bfd_archive_filename (abfd), sec);
|
||||
+ else if (!bfd_malloc_and_get_section (l->sec->owner, l->sec,
|
||||
+ &l_sec_contents))
|
||||
+ (*_bfd_error_handler)
|
||||
+ (_("%B: warning: could not read contents of section `%A'\n"),
|
||||
+ bfd_archive_filename(l->sec->owner), l->sec);
|
||||
+ else if (memcmp (sec_contents, l_sec_contents, sec->size) != 0)
|
||||
+ (*_bfd_error_handler)
|
||||
+ (_("%B: warning: duplicate section `%A' has different contents\n"),
|
||||
+ bfd_archive_filename (abfd), sec);
|
||||
+
|
||||
+ if (sec_contents)
|
||||
+ free (sec_contents);
|
||||
+ if (l_sec_contents)
|
||||
+ free (l_sec_contents);
|
||||
+ }
|
||||
+ break;
|
||||
}
|
||||
|
||||
/* Set the output_section field so that lang_add_section
|
||||
Reference in New Issue
Block a user