summaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
authorMasahiro Yamada <masahiroy@kernel.org>2020-06-01 14:56:59 +0900
committerMasahiro Yamada <masahiroy@kernel.org>2020-06-03 13:22:07 +0900
commitf0d50ca045e44dd7b423c2ae69f6a598f07d93e3 (patch)
tree68f084523ba44e6ba177233c876c9a3e6d9a0e27 /Makefile
parent95fb6317b3ab827aa35e7e52cb3a535b0cc6ec7e (diff)
downloadlinux-f0d50ca045e44dd7b423c2ae69f6a598f07d93e3.tar.bz2
kbuild: refactor KBUILD_VMLINUX_{OBJS,LIBS} calculation
Do not overwrite core-y or drivers-y. Remove libs-y1 and libs-y2. Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile17
1 files changed, 8 insertions, 9 deletions
diff --git a/Makefile b/Makefile
index c0c086d06753..24cf37c21cba 100644
--- a/Makefile
+++ b/Makefile
@@ -1069,19 +1069,18 @@ vmlinux-alldirs := $(sort $(vmlinux-dirs) Documentation \
build-dirs := $(vmlinux-dirs)
clean-dirs := $(vmlinux-alldirs)
-core-y := $(patsubst %/, %/built-in.a, $(core-y))
-drivers-y := $(patsubst %/, %/built-in.a, $(drivers-y))
-libs-y2 := $(patsubst %/, %/built-in.a, $(filter %/, $(libs-y)))
+# Externally visible symbols (used by link-vmlinux.sh)
+KBUILD_VMLINUX_OBJS := $(head-y) $(patsubst %/,%/built-in.a, $(core-y))
+KBUILD_VMLINUX_OBJS += $(addsuffix built-in.a, $(filter %/, $(libs-y)))
ifdef CONFIG_MODULES
-libs-y1 := $(filter-out %/, $(libs-y))
-libs-y2 += $(patsubst %/, %/lib.a, $(filter %/, $(libs-y)))
+KBUILD_VMLINUX_OBJS += $(patsubst %/, %/lib.a, $(filter %/, $(libs-y)))
+KBUILD_VMLINUX_LIBS := $(filter-out %/, $(libs-y))
else
-libs-y1 := $(patsubst %/, %/lib.a, $(libs-y))
+KBUILD_VMLINUX_LIBS := $(patsubst %/,%/lib.a, $(libs-y))
endif
+KBUILD_VMLINUX_OBJS += $(patsubst %/,%/built-in.a, $(drivers-y))
-# Externally visible symbols (used by link-vmlinux.sh)
-export KBUILD_VMLINUX_OBJS := $(head-y) $(core-y) $(libs-y2) $(drivers-y)
-export KBUILD_VMLINUX_LIBS := $(libs-y1)
+export KBUILD_VMLINUX_OBJS KBUILD_VMLINUX_LIBS
export KBUILD_LDS := arch/$(SRCARCH)/kernel/vmlinux.lds
export LDFLAGS_vmlinux
# used by scripts/Makefile.package