x86/vdso: Simplify obj-y addition
authorMasahiro Yamada <masahiroy@kernel.org>
Tue, 21 Nov 2023 23:56:59 +0000 (08:56 +0900)
committerBorislav Petkov (AMD) <bp@alien8.de>
Thu, 8 Feb 2024 12:22:08 +0000 (13:22 +0100)
Add objects to obj-y in a more straightforward way.

CONFIG_X86_32 and CONFIG_IA32_EMULATION are not enabled simultaneously,
but even if they are, Kbuild graciously deduplicates obj-y entries.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Link: https://lore.kernel.org/r/20231121235701.239606-3-masahiroy@kernel.org
arch/x86/entry/vdso/Makefile

index 2038d9c8e5278b7e77f6a0d266f36b019e6422dc..cbfb5aab5e9c73453284feaa708708270bc8528f 100644 (file)
@@ -18,11 +18,6 @@ OBJECT_FILES_NON_STANDARD    := y
 # Prevents link failures: __sanitizer_cov_trace_pc() is not linked in.
 KCOV_INSTRUMENT                := n
 
-VDSO64-$(CONFIG_X86_64)                := y
-VDSOX32-$(CONFIG_X86_X32_ABI)  := y
-VDSO32-$(CONFIG_X86_32)                := y
-VDSO32-$(CONFIG_IA32_EMULATION)        := y
-
 # files to link into the vdso
 vobjs-y := vdso-note.o vclock_gettime.o vgetcpu.o
 vobjs32-y := vdso32/note.o vdso32/system_call.o vdso32/sigreturn.o
@@ -38,11 +33,11 @@ OBJECT_FILES_NON_STANDARD_vma.o             := n
 OBJECT_FILES_NON_STANDARD_extable.o    := n
 
 # vDSO images to build
-vdso_img-$(VDSO64-y)           += 64
-vdso_img-$(VDSOX32-y)          += x32
-vdso_img-$(VDSO32-y)           += 32
+obj-$(CONFIG_X86_64)           += vdso-image-64.o
+obj-$(CONFIG_X86_X32_ABI)      += vdso-image-x32.o
+obj-$(CONFIG_X86_32)           += vdso-image-32.o vdso32-setup.o
+obj-$(CONFIG_IA32_EMULATION)   += vdso-image-32.o vdso32-setup.o
 
-obj-$(VDSO32-y)                                 += vdso32-setup.o
 OBJECT_FILES_NON_STANDARD_vdso32-setup.o := n
 
 vobjs := $(foreach F,$(vobjs-y),$(obj)/$F)
@@ -53,9 +48,6 @@ $(obj)/vdso.o: $(obj)/vdso.so
 targets += vdso.lds $(vobjs-y)
 targets += vdso32/vdso32.lds $(vobjs32-y)
 
-# Build the vDSO image C files and link them in.
-vdso_img_objs := $(vdso_img-y:%=vdso-image-%.o)
-obj-y += $(vdso_img_objs)
 targets += $(foreach x, 64 x32 32, vdso-image-$(x).c vdso$(x).so vdso$(x).so.dbg)
 
 CPPFLAGS_vdso.lds += -P -C