diff options
| author | Ed Maste <emaste@FreeBSD.org> | 2026-03-06 14:46:18 +0000 |
|---|---|---|
| committer | Ed Maste <emaste@FreeBSD.org> | 2026-05-01 23:33:51 +0000 |
| commit | c4f08d46c7f717cc8c66bf702c006765a5b6b1a9 (patch) | |
| tree | 7bcbcc2e73282a28749c0377d0316dadeea30fbd | |
| parent | 0de6295af231aa5c13e1da2f40b29106962b6363 (diff) | |
llvm-*: Move all LLVM_BINUTILS symlinks to toolchain package
Some of the LLVM binary utilities were included in the Clang package
(because they did not set an explicit PACKAGE).
Add a new Makefile under clang/toolchain to create the symlinks and man
links for ar, c++filt, nm, and so on (without the llvm-* prefix) when
LLVM_BINUTILS is enabled (as it is by default).
PR: 293610
Reviewed by: bapt, ivy, brooks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55692
| -rw-r--r-- | Makefile.inc1 | 3 | ||||
| -rw-r--r-- | packages/toolchain/Makefile | 6 | ||||
| -rw-r--r-- | usr.bin/clang/Makefile | 2 | ||||
| -rw-r--r-- | usr.bin/clang/llvm-ar/Makefile | 7 | ||||
| -rw-r--r-- | usr.bin/clang/llvm-cxxfilt/Makefile | 5 | ||||
| -rw-r--r-- | usr.bin/clang/llvm-nm/Makefile | 6 | ||||
| -rw-r--r-- | usr.bin/clang/llvm-objcopy/Makefile | 7 | ||||
| -rw-r--r-- | usr.bin/clang/llvm-readobj/Makefile | 5 | ||||
| -rw-r--r-- | usr.bin/clang/llvm-size/Makefile | 6 | ||||
| -rw-r--r-- | usr.bin/clang/llvm-symbolizer/Makefile | 5 | ||||
| -rw-r--r-- | usr.bin/clang/toolchain/Makefile | 35 |
11 files changed, 45 insertions, 42 deletions
diff --git a/Makefile.inc1 b/Makefile.inc1 index 3c93159645fd..b07b5f9c1a65 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -3052,7 +3052,8 @@ _clang_libs= lib/clang _llvm_binutils= usr.bin/clang/llvm-ar \ usr.bin/clang/llvm-nm \ usr.bin/clang/llvm-objcopy \ - usr.bin/clang/llvm-size + usr.bin/clang/llvm-size \ + usr.bin/clang/toolchain .endif .if ${MK_USB} != "no" _usb_tools= stand/usb/tools diff --git a/packages/toolchain/Makefile b/packages/toolchain/Makefile index 344f0d250b79..b47d931c2c10 100644 --- a/packages/toolchain/Makefile +++ b/packages/toolchain/Makefile @@ -1,7 +1,13 @@ +.include <src.opts.mk> + WORLDPACKAGE= toolchain SUBPACKAGES= dbg dev man COMPAT_PKGS= dev PKG_SETS= devel +.if ${MK_LLVM_BINUTILS} != "no" +PKG_DEPS.toolchain+= llvm +.endif + .include <bsd.pkg.mk> diff --git a/usr.bin/clang/Makefile b/usr.bin/clang/Makefile index ac92b08a54cb..d86508829533 100644 --- a/usr.bin/clang/Makefile +++ b/usr.bin/clang/Makefile @@ -22,6 +22,8 @@ SUBDIR+= llvm-readobj SUBDIR+= llvm-size SUBDIR+= llvm-strings SUBDIR+= llvm-symbolizer +SUBDIR+= .WAIT +SUBDIR+= toolchain .endif .if ${MK_CLANG_EXTRAS} != "no" diff --git a/usr.bin/clang/llvm-ar/Makefile b/usr.bin/clang/llvm-ar/Makefile index ee776a7c0d9e..10cd46bad4dc 100644 --- a/usr.bin/clang/llvm-ar/Makefile +++ b/usr.bin/clang/llvm-ar/Makefile @@ -1,6 +1,5 @@ .include <src.opts.mk> -PACKAGE= toolchain PROG_CXX= llvm-ar MAN= llvm-ar.1 llvm-ranlib.1 @@ -10,10 +9,4 @@ SRCS+= llvm-ar.cpp LINKS+= ${BINDIR}/llvm-ar ${BINDIR}/llvm-ranlib -.if ${MK_LLVM_BINUTILS} != "no" -SYMLINKS+= llvm-ar ${BINDIR}/ar -SYMLINKS+= llvm-ranlib ${BINDIR}/ranlib -MLINKS+= llvm-ar.1 ar.1 llvm-ar.1 ranlib.1 -.endif - .include "../llvm.prog.mk" diff --git a/usr.bin/clang/llvm-cxxfilt/Makefile b/usr.bin/clang/llvm-cxxfilt/Makefile index 26a5d9e8975d..7d49ccb0a8d0 100644 --- a/usr.bin/clang/llvm-cxxfilt/Makefile +++ b/usr.bin/clang/llvm-cxxfilt/Makefile @@ -22,9 +22,4 @@ DEPENDFILES+= ${TGHDRS:C/$/.d/} DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} -.if ${MK_LLVM_BINUTILS} != "no" -SYMLINKS= llvm-cxxfilt ${BINDIR}/c++filt -MLINKS= llvm-cxxfilt.1 c++filt.1 -.endif - .include "../llvm.prog.mk" diff --git a/usr.bin/clang/llvm-nm/Makefile b/usr.bin/clang/llvm-nm/Makefile index 333513246cb6..68033ce3874f 100644 --- a/usr.bin/clang/llvm-nm/Makefile +++ b/usr.bin/clang/llvm-nm/Makefile @@ -1,6 +1,5 @@ .include <src.opts.mk> -PACKAGE= toolchain PROG_CXX= llvm-nm SRCDIR= llvm/tools/llvm-nm @@ -23,9 +22,4 @@ DEPENDFILES+= ${TGHDRS:C/$/.d/} DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} -.if ${MK_LLVM_BINUTILS} != "no" -SYMLINKS+= llvm-nm ${BINDIR}/nm -MLINKS+= llvm-nm.1 nm.1 -.endif - .include "../llvm.prog.mk" diff --git a/usr.bin/clang/llvm-objcopy/Makefile b/usr.bin/clang/llvm-objcopy/Makefile index 13bbab97899f..ee9b13b18f13 100644 --- a/usr.bin/clang/llvm-objcopy/Makefile +++ b/usr.bin/clang/llvm-objcopy/Makefile @@ -26,11 +26,4 @@ CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} LINKS= ${BINDIR}/llvm-objcopy ${BINDIR}/llvm-strip -.if ${MK_LLVM_BINUTILS} != "no" -SYMLINKS+= llvm-objcopy ${BINDIR}/objcopy \ - llvm-strip ${BINDIR}/strip -MLINKS= llvm-objcopy.1 objcopy.1 \ - llvm-objcopy.1 strip.1 -.endif - .include "../llvm.prog.mk" diff --git a/usr.bin/clang/llvm-readobj/Makefile b/usr.bin/clang/llvm-readobj/Makefile index 3f705431e509..b669e4398fc3 100644 --- a/usr.bin/clang/llvm-readobj/Makefile +++ b/usr.bin/clang/llvm-readobj/Makefile @@ -35,9 +35,4 @@ CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} LINKS+= ${BINDIR}/llvm-readobj ${BINDIR}/llvm-readelf -.if ${MK_LLVM_BINUTILS} != "no" -SYMLINKS+= llvm-readelf ${BINDIR}/readelf -MLINKS+= llvm-readelf.1 readelf.1 -.endif - .include "../llvm.prog.mk" diff --git a/usr.bin/clang/llvm-size/Makefile b/usr.bin/clang/llvm-size/Makefile index 1991065b61b2..c1b7c770acfb 100644 --- a/usr.bin/clang/llvm-size/Makefile +++ b/usr.bin/clang/llvm-size/Makefile @@ -1,6 +1,5 @@ .include <src.opts.mk> -PACKAGE= toolchain PROG_CXX= llvm-size SRCDIR= llvm/tools/llvm-size @@ -23,9 +22,4 @@ DEPENDFILES+= ${TGHDRS:C/$/.d/} DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} -.if ${MK_LLVM_BINUTILS} != "no" -SYMLINKS+= llvm-size ${BINDIR}/size -MLINKS+= llvm-size.1 size.1 -.endif - .include "../llvm.prog.mk" diff --git a/usr.bin/clang/llvm-symbolizer/Makefile b/usr.bin/clang/llvm-symbolizer/Makefile index 1a3a65c774c9..231aeec849c2 100644 --- a/usr.bin/clang/llvm-symbolizer/Makefile +++ b/usr.bin/clang/llvm-symbolizer/Makefile @@ -25,9 +25,4 @@ CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} LINKS+= ${BINDIR}/llvm-symbolizer ${BINDIR}/llvm-addr2line -.if ${MK_LLVM_BINUTILS} != "no" -SYMLINKS+= llvm-addr2line ${BINDIR}/addr2line -MLINKS+= llvm-addr2line.1 addr2line.1 -.endif - .include "../llvm.prog.mk" diff --git a/usr.bin/clang/toolchain/Makefile b/usr.bin/clang/toolchain/Makefile new file mode 100644 index 000000000000..1a7db32274e3 --- /dev/null +++ b/usr.bin/clang/toolchain/Makefile @@ -0,0 +1,35 @@ +.include <src.opts.mk> + +.if ${MK_LLVM_BINUTILS} == yes +PACKAGE= toolchain + +SYMLINKS+= llvm-ar ${BINDIR}/ar +SYMLINKS+= llvm-ranlib ${BINDIR}/ranlib +MLINKS+= llvm-ar.1 ar.1 llvm-ar.1 ranlib.1 + +SYMLINKS+= llvm-cov ${BINDIR}/gcov + +SYMLINKS+= llvm-cxxfilt ${BINDIR}/c++filt +MLINKS+= llvm-cxxfilt.1 c++filt.1 + +SYMLINKS+= llvm-nm ${BINDIR}/nm +MLINKS+= llvm-nm.1 nm.1 + +SYMLINKS+= llvm-objcopy ${BINDIR}/objcopy +SYMLINKS+= llvm-strip ${BINDIR}/strip +MLINKS+= llvm-objcopy.1 objcopy.1 +MLINKS+= llvm-objcopy.1 strip.1 + +SYMLINKS+= llvm-objdump ${BINDIR}/objdump + +SYMLINKS+= llvm-readelf ${BINDIR}/readelf +MLINKS+= llvm-readelf.1 readelf.1 + +SYMLINKS+= llvm-size ${BINDIR}/size +MLINKS+= llvm-size.1 size.1 + +SYMLINKS+= llvm-addr2line ${BINDIR}/addr2line +MLINKS+= llvm-addr2line.1 addr2line.1 +.endif + +.include <bsd.prog.mk> |
