Date: Thu, 18 Jan 2024 22:31:45 GMT From: John Baldwin <jhb@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Subject: git: 2fbed5e9ea84 - stable/14 - Make kldxref a bootstrap tool and use unconditionally Message-ID: <202401182231.40IMVjnn005302@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch stable/14 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=2fbed5e9ea843c6747fba6d3cd209c3d5860617a commit 2fbed5e9ea843c6747fba6d3cd209c3d5860617a Author: Jessica Clarke <jrtc27@FreeBSD.org> AuthorDate: 2023-12-13 21:43:10 +0000 Commit: John Baldwin <jhb@FreeBSD.org> CommitDate: 2024-01-18 22:30:06 +0000 Make kldxref a bootstrap tool and use unconditionally Now that kldxref is a generic cross tool and can be built on non-FreeBSD we can bootstrap it during the build and thus remove the condition for whether it exists. We also need to make sure to add it to the METALOG for -DNO_ROOT builds. Reviewed by: brooks, imp Differential Revision: https://reviews.freebsd.org/D43051 (cherry picked from commit ff7c12c1f17e52337169d8ce48433fae96a9c9db) --- Makefile.inc1 | 5 +++++ sys/conf/kmod.mk | 9 +++++---- sys/modules/Makefile | 9 +++++---- tools/build/Makefile | 2 ++ 4 files changed, 17 insertions(+), 8 deletions(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index 857aed8e703c..3537cf5ac579 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -2409,8 +2409,12 @@ _bootstrap_tools_links+=m4 lex _elftoolchain_libs= lib/libelf lib/libdwarf lib/libzstd ${_bt}-lib/libelf: ${_bt_m4_depend} ${_bt}-lib/libdwarf: ${_bt_m4_depend} +_bt_libelf_depend=${_bt}-lib/libelf .endif +_kldxref= usr.sbin/kldxref +${_bt}-usr.sbin/kldxref: ${_bt_libelf_depend} + # flua is required to regenerate syscall files. It first appeared during the # 13.0-CURRENT cycle, thus needs to be built on -older releases and stable # branches. @@ -2672,6 +2676,7 @@ bootstrap-tools: ${_bt}-links .PHONY ${_cat} \ ${_kbdcontrol} \ ${_elftoolchain_libs} \ + ${_kldxref} \ lib/libopenbsd \ usr.bin/mandoc \ usr.bin/rpcgen \ diff --git a/sys/conf/kmod.mk b/sys/conf/kmod.mk index ce1e7a31a865..48872f88932d 100644 --- a/sys/conf/kmod.mk +++ b/sys/conf/kmod.mk @@ -361,10 +361,11 @@ afterinstall: _kldxref .ORDER: realinstall _kldxref .ORDER: _installlinks _kldxref _kldxref: .PHONY - @if type kldxref >/dev/null 2>&1; then \ - ${ECHO} ${KLDXREF_CMD} ${DESTDIR}${KMODDIR}; \ - ${KLDXREF_CMD} ${DESTDIR}${KMODDIR}; \ - fi + ${KLDXREF_CMD} ${DESTDIR}${KMODDIR} +.if defined(NO_ROOT) && defined(METALOG) + echo ".${DISTBASE}${KMODDIR}/linker.hints type=file mode=0644 uname=root gname=wheel" | \ + cat -l >> ${METALOG} +.endif .endif .endif # !target(realinstall) diff --git a/sys/modules/Makefile b/sys/modules/Makefile index 4b98c7ed6e0d..b34d20dd9147 100644 --- a/sys/modules/Makefile +++ b/sys/modules/Makefile @@ -909,10 +909,11 @@ SUBDIR:= ${SUBDIR:N${reject}} .if !defined(NO_XREF) .MAKEFLAGS+= -DNO_XREF afterinstall: .PHONY - @if type kldxref >/dev/null 2>&1; then \ - ${ECHO} ${KLDXREF_CMD} ${DESTDIR}${KMODDIR}; \ - ${KLDXREF_CMD} ${DESTDIR}${KMODDIR}; \ - fi + ${KLDXREF_CMD} ${DESTDIR}${KMODDIR} +.if defined(NO_ROOT) && defined(METALOG) + echo ".${DISTBASE}${KMODDIR}/linker.hints type=file mode=0644 uname=root gname=wheel" | \ + cat -l >> ${METALOG} +.endif .endif SUBDIR:= ${SUBDIR:u:O} diff --git a/tools/build/Makefile b/tools/build/Makefile index bd573a38fc75..92f7d396825c 100644 --- a/tools/build/Makefile +++ b/tools/build/Makefile @@ -295,6 +295,8 @@ SYSINCS+= ${SRCTOP}/sys/sys/elf.h SYSINCS+= ${SRCTOP}/sys/sys/ctf.h # for kbdcontrol: SYSINCS+= ${SRCTOP}/sys/sys/kbio.h +# for kldxref: +SYSINCS+= ${SRCTOP}/sys/sys/module.h # We want to run the build with only ${WORLDTMP} in $PATH to ensure we don't # accidentally run tools that are incompatible but happen to be in $PATH.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202401182231.40IMVjnn005302>