reported by Michael Butler on -current https://lists.freebsd.org/archives/freebsd-current/2025-March/007202.html release/Makefile invokes ${IMAKE} installworld ... MK_TOOLCHAIN=no ... after buildworld executed with default options (i.e., no MK_TOOLCHAIN override). The issue is that at buildworld time we build the LLVM binutils (including llvm-strip) but at install time we set MK_TOOLCHAIN=no which implies MK_LLVM_BINUTILS=no, and we then try to install ELF Tool Chain strip.
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/src/commit/?id=fdc4db57224ce19b867c60fce4c410068be40c27 commit fdc4db57224ce19b867c60fce4c410068be40c27 Author: Ed Maste <emaste@FreeBSD.org> AuthorDate: 2025-03-20 17:47:29 +0000 Commit: Ed Maste <emaste@FreeBSD.org> CommitDate: 2025-03-20 17:59:32 +0000 usr.bin/Makefile: always build ELF Tool Chain strings(1) strings(1) is not conditional on WITH_/WITHOUT_TOOLCHAIN, as it is a small utility that is also useful outside of the toolchain context. As of commit 1cae7121c667 we switched to WITH_LLVM_BINUTILS by default. After this change building world with default options but installing WITHOUT_TOOLCHAIN failed, because we would build LLVM's strings but attempt to install ELF Tool Chain's version, which did not exist. Address this by always including ELF Tool Chain strings in non-install make targets, so that it will be available if options are changed at install time. PR: 285556 Reported by: Michael Butler Reviewed by: brooks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49425 usr.bin/Makefile | 6 ++++++ 1 file changed, 6 insertions(+)
A commit in branch stable/14 references this bug: URL: https://cgit.FreeBSD.org/src/commit/?id=e683e7e0f887216b52dfd64db226f0a6d3ce853a commit e683e7e0f887216b52dfd64db226f0a6d3ce853a Author: Ed Maste <emaste@FreeBSD.org> AuthorDate: 2025-03-20 17:47:29 +0000 Commit: Ed Maste <emaste@FreeBSD.org> CommitDate: 2025-04-01 12:52:53 +0000 usr.bin/Makefile: always build ELF Tool Chain strings(1) strings(1) is not conditional on WITH_/WITHOUT_TOOLCHAIN, as it is a small utility that is also useful outside of the toolchain context. As of commit 1cae7121c667 we switched to WITH_LLVM_BINUTILS by default. After this change building world with default options but installing WITHOUT_TOOLCHAIN failed, because we would build LLVM's strings but attempt to install ELF Tool Chain's version, which did not exist. Address this by always including ELF Tool Chain strings in non-install make targets, so that it will be available if options are changed at install time. PR: 285556 Reported by: Michael Butler Reviewed by: brooks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49425 (cherry picked from commit fdc4db57224ce19b867c60fce4c410068be40c27) usr.bin/Makefile | 6 ++++++ 1 file changed, 6 insertions(+)