Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 6 Apr 2018 02:57:58 +0000 (UTC)
From:      Ed Maste <emaste@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r332090 - head/stand/i386
Message-ID:  <201804060257.w362vwi3023158@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: emaste
Date: Fri Apr  6 02:57:58 2018
New Revision: 332090
URL: https://svnweb.freebsd.org/changeset/base/332090

Log:
  stand: pass --no-rosegment for i386 bits when linking with lld
  
  btxld does not correctly handle input with other than 2 PT_LOAD
  segments.  Passing --no-rosegment lets lld produce output eqivalent to
  ld.bfd: 2 PT_LOAD segments and no PT_GNU_RELRO.
  
  PR:		225775
  MFC after:	3 weeks
  Sponsored by:	The FreeBSD Foundation
  Differential Revision:	https://reviews.freebsd.org/D14956

Modified:
  head/stand/i386/Makefile.inc

Modified: head/stand/i386/Makefile.inc
==============================================================================
--- head/stand/i386/Makefile.inc	Fri Apr  6 02:47:43 2018	(r332089)
+++ head/stand/i386/Makefile.inc	Fri Apr  6 02:57:58 2018	(r332090)
@@ -2,8 +2,13 @@
 #
 # $FreeBSD$
 
+.sinclude <bsd.linker.mk>
+
 LOADER_ADDRESS?=0x200000
 LDFLAGS+=	-nostdlib
+.if defined(LINKER_TYPE) && ${LINKER_TYPE} == "lld"
+LDFLAGS+=	-Wl,--no-rosegment
+.endif
 
 # BTX components
 BTXDIR=		${BOOTOBJ}/i386/btx



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201804060257.w362vwi3023158>