svn commit: r333470 - in head: share/mk sys/conf

Ed Maste emaste at freebsd.org
Fri May 11 01:26:50 UTC 2018


On 10 May 2018 at 20:38, Warner Losh <imp at bsdimp.com> wrote:
>
> It's a shame we can't get a link-time error if a too-old ld is used rather
> than silent failure.

That's what this commit does:

+.if defined(LINKER_FEATURES) && ${LINKER_FEATURES:Mifunc} == ""
+.error amd64 kernel requires linker ifunc support
+.endif

Making ld.bfd itself error out (e.g., if it encounters STT_GNU_IFUNC
as an unknown symbol type) could be done but would require that the
patched ld.bfd be installed, defeating the purpose.

The test has a possible false negative (producing a broken kernel
instead of an error), if LINKER_FEATURES is not defined due to some
unusual configuration. We could just drop the defined(LINKER_FEATURES)
to avoid that, and introduce a possible false positive error.


More information about the svn-src-head mailing list