I'm working on switching to LLVM's lld linker as the FreeBSD system linker (/usr/bin/ld)[1], and the port in this PR is reported as a new failure in the exp-run, PR 214864. An excerpt from the build log[2]: --- BIN2O mozplugger_so_blob.o ld: error: target emulation unknown: -m or at least one .o file required gmake[1]: *** [Makefile:163: mozplugger_so_blob.o] Error 1 --- Known issues in this port or in lld that affect this port: (4) lld does not have a built-in default output target. For the most common use of the linker (linking individual .o objects into an executable or shared object) lld infers the target from the first object file. However, when the linker is used to convert an arbitrary binary file into an ELF object (via -r -b binary) lld must have the output target specified explicitly with -m. FreeBSD 11 and later have lld available as /usr/bin/ld.lld, so one simple option for testing is to just symlink /usr/bin/ld to ld.lld (and restore it to ld.bfd). A port Makefile knob, LLD_UNSAFE=yes, exists to indicate that a port does not work with lld, and requires either /usr/bin/ld.bfd or binutils from ports. This should work for the common case of ports written in C using GNU autoconf; it may have no effect on other ports. [1] https://lists.freebsd.org/pipermail/freebsd-current/2018-March/068985.html [2] http://package18.nyi.freebsd.org/data/headamd64PR214864-default/2018-03-21_17h43m11s/logs/errors/mozplugger-2.1.6.log
Via tobik@ in ports r465725, BINARY_ALIAS=ld=ld.bfd may be an effective workaround if LLD_UNSAFE alone does not work. If BINARY_ALIAS is used it should be in addition to LLD_UNSAFE, so that architectures without a /usr/bin/ld.bfd (arm64) work. If possible LLD_UNSAFE=yes should imply BINARY_ALIAS=ld=ld.bfd, under discussion on the ports mailing list.
A commit references this bug: Author: krion Date: Wed Mar 28 10:11:10 UTC 2018 New revision: 465792 URL: https://svnweb.freebsd.org/changeset/ports/465792 Log: Switch to ld.bfd by default as ld.ldd doesn't have built-in default output target. Pet portlint(1). PR: 226998 Submitted by: emaste Approved by: portmgr (LLD_UNSAFE blanket) Changes: head/www/mozplugger/Makefile