git: binutils221: final solution to start/stop label generation
John Marino
marino at crater.dragonflybsd.org
Thu Apr 7 15:18:39 PDT 2011
commit c358eb24ed69d493089dc69ed5b81a7d5f804fa1
Author: John Marino <draco at marino.st>
Date: Fri Apr 8 00:14:07 2011 +0200
binutils221: final solution to start/stop label generation
During discussion on binutils mail list about preserving the
__start_* and __stop_* section labels, Dimitry Andric indicated that
FreeBSD had the same exact issue when they recently upgraded to
binutils 2.17.50. The solution they chose was to declare these section
labels as global symbols, and the stock version of ld will retain them.
This commit implements the FreeBSD solution. Besides the obvious
benefit of having minimalist shared objects, it also "fixes" binutils
2.20 which, until this commit, failed to generate the start/stop section
labels.
Commit f070647cc5317c4924be4dd60563fc39c18094cf has been reverted to
convert binutils 2.21 to a completely stock ld. Some whitespace cleanup
of linker_set.h was done while modifying __MAKE_SET macro.
Summary of changes:
contrib/binutils-2.21/README.DRAGONFLY | 1 -
contrib/binutils-2.21/ld/ldlang.c | 23 +++++++----------------
sys/sys/cdefs.h | 8 ++++++++
sys/sys/linker_set.h | 6 ++++--
usr.sbin/mfiutil/mfiutil.h | 2 ++
5 files changed, 21 insertions(+), 19 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/c358eb24ed69d493089dc69ed5b81a7d5f804fa1
--
DragonFly BSD source repository
More information about the Commits
mailing list