aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLexi Winter <ivy@FreeBSD.org>2026-05-04 13:49:20 +0000
committerLexi Winter <ivy@FreeBSD.org>2026-05-04 13:49:20 +0000
commit045a9ef829fa30c2ba7af47ab34d3b2443024207 (patch)
tree330d24942072c97dca73265fd37bda4d2704b9e0
parent8acc4c16c6635c3cd8871d0ee1221b62d48d71b9 (diff)
llvm: Don't install /usr/bin/{gcov,objdump} twice
Commit c4f08d46c7f7 moved the symlinks for the LLVM binutils from LLVM itself to the toolchain (usr.bin/clang/toolchain), but did not remove the links for /usr/bin/gcov and /usr/bin/objdump from the llvm version, meaning we installed them twice, once in the clang package and once in the toolchain package. Remove the links from the llvm version and move the MLINKs to toolchain, which is where the other MLINKs dwell. While here, fix toolchain to use the correct build option for llvm-cov, MK_LLVM_COV. Fixes: c4f08d46c7f7 ("llvm-*: Move all LLVM_BINUTILS symlinks to toolchain package") Reported by: jrm Reviewed by: jrm, dim, emaste Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D56788
-rw-r--r--usr.bin/clang/Makefile1
-rw-r--r--usr.bin/clang/llvm-cov/Makefile2
-rw-r--r--usr.bin/clang/llvm-objdump/Makefile3
-rw-r--r--usr.bin/clang/toolchain/Makefile4
4 files changed, 5 insertions, 5 deletions
diff --git a/usr.bin/clang/Makefile b/usr.bin/clang/Makefile
index d86508829533..1d80fad2936f 100644
--- a/usr.bin/clang/Makefile
+++ b/usr.bin/clang/Makefile
@@ -65,6 +65,7 @@ SUBDIR+= lldb-server
.if ${MK_LLVM_COV} != "no"
SUBDIR+= llvm-cov
SUBDIR+= llvm-profdata
+SUBDIR_DEPEND_toolchain= llvm-cov
.endif
.endif # TOOLS_PREFIX
diff --git a/usr.bin/clang/llvm-cov/Makefile b/usr.bin/clang/llvm-cov/Makefile
index 3c02d4b7d144..67a93fa593bb 100644
--- a/usr.bin/clang/llvm-cov/Makefile
+++ b/usr.bin/clang/llvm-cov/Makefile
@@ -1,8 +1,6 @@
.include <src.opts.mk>
PROG_CXX= llvm-cov
-SYMLINKS= llvm-cov ${BINDIR}/gcov
-MLINKS= llvm-cov.1 gcov.1
SRCDIR= llvm/tools/llvm-cov
SRCS+= CodeCoverage.cpp
diff --git a/usr.bin/clang/llvm-objdump/Makefile b/usr.bin/clang/llvm-objdump/Makefile
index 86281217ee0a..c0c201b68085 100644
--- a/usr.bin/clang/llvm-objdump/Makefile
+++ b/usr.bin/clang/llvm-objdump/Makefile
@@ -29,7 +29,4 @@ DEPENDFILES+= ${TGHDRS:C/$/.d/}
DPSRCS+= ${TGHDRS}
CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/}
-SYMLINKS= llvm-objdump ${BINDIR}/objdump
-MLINKS= llvm-objdump.1 objdump.1
-
.include "../llvm.prog.mk"
diff --git a/usr.bin/clang/toolchain/Makefile b/usr.bin/clang/toolchain/Makefile
index 1a7db32274e3..5f66ae1433b1 100644
--- a/usr.bin/clang/toolchain/Makefile
+++ b/usr.bin/clang/toolchain/Makefile
@@ -7,7 +7,10 @@ SYMLINKS+= llvm-ar ${BINDIR}/ar
SYMLINKS+= llvm-ranlib ${BINDIR}/ranlib
MLINKS+= llvm-ar.1 ar.1 llvm-ar.1 ranlib.1
+.if ${MK_LLVM_COV} != "no"
SYMLINKS+= llvm-cov ${BINDIR}/gcov
+MLINKS= llvm-cov.1 gcov.1
+.endif
SYMLINKS+= llvm-cxxfilt ${BINDIR}/c++filt
MLINKS+= llvm-cxxfilt.1 c++filt.1
@@ -21,6 +24,7 @@ MLINKS+= llvm-objcopy.1 objcopy.1
MLINKS+= llvm-objcopy.1 strip.1
SYMLINKS+= llvm-objdump ${BINDIR}/objdump
+MLINKS= llvm-objdump.1 objdump.1
SYMLINKS+= llvm-readelf ${BINDIR}/readelf
MLINKS+= llvm-readelf.1 readelf.1