|
@@ -607,6 +607,13 @@ else
|
|
|
include/config/auto.conf: ;
|
|
|
endif # $(dot-config)
|
|
|
|
|
|
+# For the kernel to actually contain only the needed exported symbols,
|
|
|
+# we have to build modules as well to determine what those symbols are.
|
|
|
+# (this can be evaluated only once include/config/auto.conf has been included)
|
|
|
+ifdef CONFIG_TRIM_UNUSED_KSYMS
|
|
|
+ KBUILD_MODULES := 1
|
|
|
+endif
|
|
|
+
|
|
|
# The all: target is the default when no target is given on the
|
|
|
# command line.
|
|
|
# This allow a user to issue only 'make' to build a kernel including modules
|
|
@@ -944,7 +951,7 @@ ifdef CONFIG_GDB_SCRIPTS
|
|
|
endif
|
|
|
ifdef CONFIG_TRIM_UNUSED_KSYMS
|
|
|
$(Q)$(CONFIG_SHELL) $(srctree)/scripts/adjust_autoksyms.sh \
|
|
|
- "$(MAKE) KBUILD_MODULES=1 -f $(srctree)/Makefile vmlinux_prereq"
|
|
|
+ "$(MAKE) -f $(srctree)/Makefile vmlinux"
|
|
|
endif
|
|
|
|
|
|
# standalone target for easier testing
|