3f1a9bc5d8
Commit c33621b4c5
("x86/virt/tdx: Wire up basic SEAMCALL functions")
introduced a new instance of core-y instead of the standardized obj-y
syntax.
X86 Makefiles descend into subdirectories of arch/x86/virt inconsistently;
into arch/x86/virt/ via core-y defined in arch/x86/Makefile, but into
arch/x86/virt/svm/ via obj-y defined in arch/x86/Kbuild.
This is problematic when you build a single object in parallel because
multiple threads attempt to build the same file.
$ make -j$(nproc) arch/x86/virt/vmx/tdx/seamcall.o
[ snip ]
AS arch/x86/virt/vmx/tdx/seamcall.o
AS arch/x86/virt/vmx/tdx/seamcall.o
fixdep: error opening file: arch/x86/virt/vmx/tdx/.seamcall.o.d: No such file or directory
make[4]: *** [scripts/Makefile.build:362: arch/x86/virt/vmx/tdx/seamcall.o] Error 2
Use the obj-y syntax, as it works correctly.
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Link: https://lore.kernel.org/r/20240330060554.18524-1-masahiroy@kernel.org
35 lines
575 B
Makefile
35 lines
575 B
Makefile
# SPDX-License-Identifier: GPL-2.0
|
|
obj-$(CONFIG_ARCH_HAS_CC_PLATFORM) += coco/
|
|
|
|
obj-y += entry/
|
|
|
|
obj-$(CONFIG_PERF_EVENTS) += events/
|
|
|
|
obj-$(CONFIG_KVM) += kvm/
|
|
|
|
# Xen paravirtualization support
|
|
obj-$(CONFIG_XEN) += xen/
|
|
|
|
obj-$(CONFIG_PVH) += platform/pvh/
|
|
|
|
# Hyper-V paravirtualization support
|
|
obj-$(subst m,y,$(CONFIG_HYPERV)) += hyperv/
|
|
|
|
obj-y += realmode/
|
|
obj-y += kernel/
|
|
obj-y += mm/
|
|
|
|
obj-y += crypto/
|
|
|
|
obj-$(CONFIG_IA32_EMULATION) += ia32/
|
|
|
|
obj-y += platform/
|
|
obj-y += net/
|
|
|
|
obj-$(CONFIG_KEXEC_FILE) += purgatory/
|
|
|
|
obj-y += virt/
|
|
|
|
# for cleaning
|
|
subdir- += boot tools
|