Fix build of some modules for some kernel configs.

Namely, vmm.ko cannot be compiled without 'option SMP', the code uses
IPIs and LAPIC.
Recently systrace was forced over any configs, check for KDTRACE_HOOK
before compiling the dtrace/ modules.

Reviewed by:	markj
Discussed with:	mjg
Tested by:	se (previous version)
Sponsored by:	The FreeBSD Foundation (kib)
Differential revision:	https://reviews.freebsd.org/D23699
This commit is contained in:
Konstantin Belousov 2020-02-16 15:43:28 +00:00
parent 30fd7f5487
commit 2ec8d574eb
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=358002

View File

@ -8,6 +8,8 @@ SUBDIR_PARALLEL=
# Modules that include binary-only blobs of microcode should be selectable by
# MK_SOURCELESS_UCODE option (see below).
.include "${SYSDIR}/conf/config.mk"
.if defined(MODULES_OVERRIDE) && !defined(ALL_MODULES)
SUBDIR=${MODULES_OVERRIDE}
.else
@ -396,8 +398,10 @@ _autofs= autofs
.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
.if (${MACHINE_CPUARCH} != "arm" || ${MACHINE_ARCH:Marmv[67]*} != "") && \
${MACHINE_CPUARCH} != "mips"
.if ${KERN_OPTS:MKDTRACE_HOOKS}
SUBDIR+= dtrace
.endif
.endif
SUBDIR+= opensolaris
.endif
@ -712,9 +716,11 @@ _sgx_linux= sgx_linux
_smartpqi= smartpqi
.if ${MK_BHYVE} != "no" || defined(ALL_MODULES)
.if ${KERN_OPTS:MSMP}
_vmm= vmm
.endif
.endif
.endif
.if ${MACHINE_CPUARCH} == "i386"
# XXX some of these can move to the general case when de-i386'ed
@ -799,8 +805,6 @@ afterinstall: .PHONY
fi
.endif
.include "${SYSDIR}/conf/config.mk"
SUBDIR:= ${SUBDIR:u:O}
.include <bsd.subdir.mk>