Skip to content

Commit

Permalink
Makefile.inc1: Reinstate kbdcontrol bootstrap for BUILD_WITH_STRICT_T…
Browse files Browse the repository at this point in the history
…MPPATH

During BUILD_WITH_STRICT_TMPPATH builds we need to symlink the host's
kbdcontrol into WORLDTMP/legacy/bin so that it can be used. For
completeness, also check if the host has it, since technically the host
could have been built with WITHOUT_LEGACY_CONSOLE (though given nobody's
screamed since this code was removed that's likely not something that
gets hit in practice), and handle BOOTSTRAP_ALL_TOOLS (especially since
that case will cover cross-building if and when kbdcontrol can be built
on non-FreeBSD).

This allows a BUILD_WITH_STRICT_TMPPATH tinderbox to pass.

This partially reverts commit 33550b4.

Reviewed by:	imp, emaste
Differential Revision:	https://reviews.freebsd.org/D41202
  • Loading branch information
jrtc27 committed Jul 27, 2023
1 parent 2463644 commit 2a4d73f
Showing 1 changed file with 13 additions and 0 deletions.
13 changes: 13 additions & 0 deletions Makefile.inc1
Original file line number Diff line number Diff line change
Expand Up @@ -2374,6 +2374,19 @@ _crunchgen= usr.sbin/crunch/crunchgen
_bootstrap_tools_links+=crunchgen
.endif

# The ATKBD_DFLT_KEYMAP, UKBD_DFLT_KEYMAP and KBDMUX_DFLT_KEYMAP kernel options
# require kbdcontrol. Note that, even on FreeBSD, the host will lack kbdcontrol
# if built with WITHOUT_LEGACY_CONSOLE.
#
# XXX: kbdcontrol cannot currently be bootstrapped on non-FreeBSD systems
.if !defined(CROSSBUILD_HOST)
.if defined(BOOTSTRAP_ALL_TOOLS) || !exists(/usr/sbin/kbdcontrol)
_kbdcontrol= usr.sbin/kbdcontrol
.else
_bootstrap_tools_links+=kbdcontrol
.endif
.endif

.if ${MK_DISK_IMAGE_TOOLS_BOOTSTRAP} != "no"
_etdump= usr.bin/etdump
_makefs= usr.sbin/makefs
Expand Down

0 comments on commit 2a4d73f

Please sign in to comment.