During an exp-run for llvm 14 (see bug 261742), it turned out that audio/mumble fails to build with lld 14: c++ -fstack-protector-strong -pie -Wl,--no-add-needed -Wl,-z,relro -Wl,-z,now -shared -Wl,-soname,libcelt0.so.0 -o libcelt0.so.0.7.0 ../../debug/.obj/celt-0.7.0-build/bands.o ../../debug/.obj/celt-0.7.0-build/celt.o ../../debug/.obj/celt-0.7.0-build/cwrs.o ../../debug/.obj/celt-0.7.0-build/entcode.o ../../debug/.obj/celt-0.7.0-build/entdec.o ../../debug/.obj/celt-0.7.0-build/entenc.o ../../debug/.obj/celt-0.7.0-build/header.o ../../debug/.obj/celt-0.7.0-build/kiss_fft.o ../../debug/.obj/celt-0.7.0-build/kiss_fftr.o ../../debug/.obj/celt-0.7.0-build/laplace.o ../../debug/.obj/celt-0.7.0-build/mdct.o ../../debug/.obj/celt-0.7.0-build/modes.o ../../debug/.obj/celt-0.7.0-build/pitch.o ../../debug/.obj/celt-0.7.0-build/psy.o ../../debug/.obj/celt-0.7.0-build/quant_bands.o ../../debug/.obj/celt-0.7.0-build/rangedec.o ../../debug/.obj/celt-0.7.0-build/rangeenc.o ../../debug/.obj/celt-0.7.0-build/rate.o ../../debug/.obj/celt-0.7.0-build/vq.o -L/usr/lib/x86_64-unknown-freebsd14.0/c++11 -L/usr/lib -L/usr/local/lib c++: warning: argument unused during compilation: '-pie' [-Wunused-command-line-argument] ld: error: unknown argument '--no-add-needed' c++: error: linker command failed with exit code 1 (use -v to see invocation) This is because lld upstream removed the deprecated --no-add-needed option, which should be replaced with --no-copy-dt-needed-entries instead. (Note that BFD ld still accepts the --no-add-needed option, but is also deprecated there, so it might go away.)
Created attachment 232979 [details] Replace --no-add-needed with --no-copy-dt-needed-entries
Created attachment 232980 [details] Similar fix, for audio/murmur
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=2e829590a96d69731cc0662d048f38e0dc8d79e7 commit 2e829590a96d69731cc0662d048f38e0dc8d79e7 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2022-04-05 19:41:05 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2022-04-26 19:10:01 +0000 audio/mumble audio/murmur: fix build with lld 14 During an exp-run for llvm 14 (see bug 261742), it turned out that audio/mumble and audio/murmur fail to build with lld 14: c++ -fstack-protector-strong -pie -Wl,--no-add-needed -Wl,-z,relro -Wl,-z,now -shared -Wl,-soname,libcelt0.so.0 -o libcelt0.so.0.7.0 ../../debug/.obj/celt-0.7.0-build/bands.o ../../debug/.obj/celt-0.7.0-build/celt.o ../../debug/.obj/celt-0.7.0-build/cwrs.o ../../debug/.obj/celt-0.7.0-build/entcode.o ../../debug/.obj/celt-0.7.0-build/entdec.o ../../debug/.obj/celt-0.7.0-build/entenc.o ../../debug/.obj/celt-0.7.0-build/header.o ../../debug/.obj/celt-0.7.0-build/kiss_fft.o ../../debug/.obj/celt-0.7.0-build/kiss_fftr.o ../../debug/.obj/celt-0.7.0-build/laplace.o ../../debug/.obj/celt-0.7.0-build/mdct.o ../../debug/.obj/celt-0.7.0-build/modes.o ../../debug/.obj/celt-0.7.0-build/pitch.o ../../debug/.obj/celt-0.7.0-build/psy.o ../../debug/.obj/celt-0.7.0-build/quant_bands.o ../../debug/.obj/celt-0.7.0-build/rangedec.o ../../debug/.obj/celt-0.7.0-build/rangeenc.o ../../debug/.obj/celt-0.7.0-build/rate.o ../../debug/.obj/celt-0.7.0-build/vq.o -L/usr/lib/x86_64-unknown-freebsd14.0/c++11 - L/usr/lib -L/usr/local/lib c++: warning: argument unused during compilation: '-pie' [-Wunused-command-line-argument] ld: error: unknown argument '--no-add-needed' c++: error: linker command failed with exit code 1 (use -v to see invocation) This is because lld upstream removed the deprecated --no-add-needed option, which should be replaced with --no-copy-dt-needed-entries instead. (Note that BFD ld still accepts the --no-add-needed option, but is also deprecated there, so it might go away.) PR: 263071 Approved by: maintainer timeout (2 weeks) MFH: 2022Q2 audio/mumble/Makefile | 1 + audio/murmur/Makefile | 1 + 2 files changed, 2 insertions(+)