building head -r338675 with devel/amd64-gcc: /usr/local/x86_64-unknown-freebsd12.0/bin/ld: warning: -z ifunc-noplt ignored

Ed Maste emaste at freebsd.org
Fri Sep 21 20:37:30 UTC 2018


On 21 September 2018 at 15:31, Mark Johnston <markj at freebsd.org> wrote:
>
> Perhaps the following?  It's not quite right since it'll still use
> -zifunc-noplt with an external LLVM toolchain, but I can't seem to
> figure out how to define a linker feature for only non-cross toolchains.
> In any case, we're going to upstream the option soon.

I wouldn't worry too much about out-of-tree since it will be upstream
soon as you say, otherwise looks good.

> +.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386"
> +.if defined(LINKER_FEATURES) && ${LINKER_FEATURES:Mifunc} == ""
>  .error amd64/i386 kernel requires linker ifunc support
>  .endif
> +.if defined(LINKER_FEATURES) && ${LINKER_FEATURES:Mifunc-noplt} != ""

Maybe roll && defined(LINKER_FEATURES) into the outer .if?


More information about the freebsd-current mailing list