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]: --- ld: error: unknown argument: -fstack-protector ld: error: unknown argument: -fPIC ld: error: unable to find library -lc ld: error: unable to find library -lm ld: error: unable to find library -lpthread --- Known issues in this port or in lld that affect this port: (1) Passing compiler flags to the linker, such as -fPIC. (2) lld has no built-in search paths (/lib, /usr/lib). Normally the linker is invoked from the compiler driver, and the search paths are added by the compiler. If lld is invoked directly library search paths must be specified explicitly, with -L/lib -L/usr/lib. 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/invada-studio-plugins-lv2-1.2.0.log
> ld: error: unknown argument: -fstack-protector -fstack-protector is added to LDFLAGS by the framework: > $ make -V LDFLAGS > -fstack-protector You may want to fix it there.
A commit references this bug: Author: yuri Date: Tue Mar 27 20:10:03 UTC 2018 New revision: 465747 URL: https://svnweb.freebsd.org/changeset/ports/465747 Log: audio/invada-studio-plugins-lv2: Remove -fPIC from the linker command line for LLVM's lld linker PR: 226971 Reported by: emaste Changes: head/audio/invada-studio-plugins-lv2/files/patch-plugingui_Makefile
(In reply to Yuri Victorovich from comment #1) LDFLAGS added by bsd.ssp.mk are intended to be passed to the compiler driver used for linking, not to the linker directly; CC'd bdrewery for any further comments.
A commit references this bug: Author: krion Date: Sat Mar 31 18:34:51 UTC 2018 New revision: 466075 URL: https://svnweb.freebsd.org/changeset/ports/466075 Log: Switch to ld.bfd by default as ld.ldd doesn't have built-in default output target. PR: 226971 Submitted by: emaste Approved by: portmgr (LLD_UNSAFE blanket) Changes: head/audio/invada-studio-plugins-lv2/Makefile