Bug 244771

Summary: emulators/qemu-powernv: Fix build with lld 10.0.0
Product: Ports & Packages Reporter: Dimitry Andric <dim>
Component: Individual Port(s)Assignee: Kevin Bowling <kbowling>
Status: New ---    
Severity: Affects Some People Keywords: buildisok
Priority: --- Flags: bugzilla: maintainer-feedback? (kbowling)
Version: Latest   
Hardware: Any   
OS: Any   
Bug Depends on:    
Bug Blocks: 244251    
Description Flags
Fix emulators/qemu-powernv build with lld 10.0.0 none

Description Dimitry Andric freebsd_committer 2020-03-12 20:51:03 UTC
Created attachment 212361 [details]
Fix emulators/qemu-powernv build with lld 10.0.0

As reported in bug 244251, with clang and lld 10.0.0 the emulators/qemu port fails in the configure stage:

===>  Configuring for qemu-powernv-3.0.50_2

ERROR: We need to link the QEMU user mode binaries at a
       specific text address. Unfortunately your linker
       doesn't support either the -Ttext-segment option or
       printing the default linker script with --verbose.
       If you don't want the user mode binaries, pass the
       --disable-user option to configure.

===>  Script "configure" failed unexpectedly.
Please report the problem to kbowling@FreeBSD.org [maintainer] and attach the
including the output of the failure of your make command. Also, it might be
a good idea to provide an overview of all packages installed on your system
(e.g. a /usr/local/sbin/pkg-static info -g -Ea).
*** Error code 1

This is because lld 10.0.0 no longer supports the -Ttext-segment option, and uses --image-base for similar functionality.

I am proposing a patch that makes the configure script check for the --image-base option first, then the -Ttext-segment option.
Comment 1 Automation User 2020-03-27 02:56:48 UTC
Build info is available at https://gitlab.com/swills/freebsd-ports/pipelines/130209216