linux-kernelorg-stable/scripts
Masahiro Yamada 69bc8d386a kbuild: generate Module.symvers only when vmlinux exists
The external module build shows the following warning if Module.symvers
is missing in the kernel tree.

  WARNING: Symbol version dump "Module.symvers" is missing.
           Modules may not have dependencies or modversions.

I think this is an important heads-up because the resulting modules may
not work as expected. This happens when you did not build the entire
kernel tree, for example, you might have prepared the minimal setups
for external modules by 'make defconfig && make modules_preapre'.

A problem is that 'make modules' creates Module.symvers even without
vmlinux. In this case, that warning is suppressed since Module.symvers
already exists in spite of its incomplete content.

The incomplete (i.e. invalid) Module.symvers should not be created.

This commit changes the second pass of modpost to dump symbols into
modules-only.symvers. The final Module.symvers is created by
concatenating vmlinux.symvers and modules-only.symvers if both exist.

Module.symvers is supposed to collect symbols from both vmlinux and
modules. It might be a bit confusing, and I am not quite sure if it
is an official interface, but presumably it is difficult to rename it
because some tools (e.g. kmod) parse it.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
2021-04-25 05:17:02 +09:00
..
atomic locking/atomics: Regenerate the atomics-check SHA1's 2020-11-07 13:20:41 +01:00
basic kbuild: introduce hostprogs-always-y and userprogs-always-y 2020-08-10 01:32:59 +09:00
clang-tools gen_compile_commands: prune some directories 2021-02-16 22:23:56 +09:00
coccinelle of: Remove of_dev_{get,put}() 2021-02-12 19:23:39 -06:00
dtc Devicetree fixes for v5.12-rc: 2021-03-05 12:12:28 -08:00
dummy-tools kbuild: check the minimum assembler version in Kconfig 2021-04-25 05:14:41 +09:00
gcc-plugins kbuild: rebuild GCC plugins when the compiler is upgraded 2021-03-11 14:40:50 +09:00
gdb scripts/gdb: fix list_for_each 2021-02-26 09:41:05 -08:00
genksyms genksyms: remove useless case DOTS 2021-02-16 12:01:45 +09:00
kconfig kconfig: unify rule of config, menuconfig, nconfig, gconfig, xconfig 2021-02-24 15:12:06 +09:00
ksymoops
mod kbuild: generate Module.symvers only when vmlinux exists 2021-04-25 05:17:02 +09:00
package builddeb: Fix rootless build in setuid/setgid directory 2020-11-02 11:31:00 +09:00
selinux scripts/selinux,selinux: update mdp to enable policy capabilities 2020-08-17 20:42:00 -04:00
tracing tweewide: Fix most Shebang lines 2020-12-08 23:30:04 +09:00
.gitignore kbuild: preprocess module linker script 2020-09-25 00:36:41 +09:00
Kbuild.include kbuild: split cc-option and friends to scripts/Makefile.compiler 2021-04-25 05:09:32 +09:00
Kconfig.include kbuild: check the minimum assembler version in Kconfig 2021-04-25 05:14:41 +09:00
Lindent
Makefile scripts: set proper OpenSSL include dir also for sign-file 2021-02-15 01:54:11 +09:00
Makefile.asm-generic kbuild: prefix $(srctree)/ to some included Makefiles 2021-03-15 19:20:48 +09:00
Makefile.build kbuild: rename multi-used-* to multi-obj-* 2021-04-25 05:12:34 +09:00
Makefile.clean kbuild: prefix $(srctree)/ to some included Makefiles 2021-03-15 19:20:48 +09:00
Makefile.compiler kbuild: split cc-option and friends to scripts/Makefile.compiler 2021-04-25 05:09:32 +09:00
Makefile.dtbinst kbuild: prefix $(srctree)/ to some included Makefiles 2021-03-15 19:20:48 +09:00
Makefile.extrawarn Makefile.extrawarn: remove -Wnested-externs warning 2020-12-08 23:30:05 +09:00
Makefile.gcc-plugins
Makefile.headersinst kbuild: prefix $(srctree)/ to some included Makefiles 2021-03-15 19:20:48 +09:00
Makefile.host kbuild: sort hostprogs before passing it to ifneq 2020-08-10 01:32:59 +09:00
Makefile.kasan kbuild: move CFLAGS_{KASAN,UBSAN,KCSAN} exports to relevant Makefiles 2020-09-25 00:36:50 +09:00
Makefile.kcov kbuild: include scripts/Makefile.* only when relevant CONFIG is enabled 2020-08-10 01:32:59 +09:00
Makefile.kcsan Kbuild updates for v5.10 2020-10-22 13:13:57 -07:00
Makefile.lib kbuild: move $(strip ) to suffix-search definition 2021-04-25 05:12:42 +09:00
Makefile.modfinal kbuild: lto: postpone objtool 2021-02-23 12:46:57 -08:00
Makefile.modinst kbuild: prefix $(srctree)/ to some included Makefiles 2021-03-15 19:20:48 +09:00
Makefile.modpost kbuild: generate Module.symvers only when vmlinux exists 2021-04-25 05:17:02 +09:00
Makefile.modsign kbuild: prefix $(srctree)/ to some included Makefiles 2021-03-15 19:20:48 +09:00
Makefile.package
Makefile.ubsan ubsan: remove overflow checks 2021-02-26 09:41:05 -08:00
Makefile.userprogs
adjust_autoksyms.sh kbuild: do not include include/config/auto.conf from adjust_autoksyms.sh 2021-02-28 15:22:02 +09:00
as-version.sh kbuild: check the minimum assembler version in Kconfig 2021-04-25 05:14:41 +09:00
asn1_compiler.c
bin2c.c
bloat-o-meter scripts: switch explicitly to Python 3 2021-01-22 06:34:44 +09:00
bootgraph.pl
bpf_helpers_doc.py bpf: Add a bpf_sock_from_file helper 2020-12-04 22:32:40 +01:00
cc-can-link.sh
cc-version.sh kbuild: collect minimum tool versions into scripts/min-tool-version.sh 2021-04-25 05:14:26 +09:00
check-sysctl-docs
check_extable.sh
checkincludes.pl
checkkconfigsymbols.py kconfig: remove '---help---' support 2020-08-14 13:30:03 +09:00
checkpatch.pl checkpatch: do not apply "initialise globals to 0" check to BPF progs 2021-02-26 09:41:04 -08:00
checkstack.pl
checksyscalls.sh
checkversion.pl
cleanfile
cleanpatch
coccicheck scripts: coccicheck: Correct usage of make coccicheck 2020-12-24 12:59:43 +01:00
config kconfig: config script: add a little user help 2021-01-04 10:38:11 +09:00
const_structs.checkpatch const_structs.checkpatch: add pinctrl_ops and pinmux_ops 2020-10-16 11:11:21 -07:00
decode_stacktrace.sh scripts/decode_stacktrace.sh: guess path to vmlinux by release name 2020-08-07 11:33:21 -07:00
decodecode scripts/decodecode: add the capability to supply the program counter 2020-10-13 18:38:26 -07:00
depmod.sh depmod: handle the case of /sbin/depmod without /sbin in PATH 2021-01-01 12:26:39 -08:00
dev-needs.sh scripts/dev-needs: Add script to list device dependencies 2020-09-04 18:19:37 +02:00
diffconfig scripts: switch explicitly to Python 3 2021-01-22 06:34:44 +09:00
documentation-file-ref-check
export_report.pl
extract-cert.c extract-cert: add static to local data 2020-08-18 20:16:46 +09:00
extract-ikconfig
extract-module-sig.pl
extract-sys-certs.pl
extract-vmlinux
extract_xc3028.pl
faddr2line
file-size.sh
find-unused-docs.sh
gcc-goto.sh
gcc-ld
gcc-x86_32-has-stack-protector.sh
gcc-x86_64-has-stack-protector.sh
gen_autoksyms.sh kbuild: fix UNUSED_KSYMS_WHITELIST for Clang LTO 2021-02-28 15:19:21 +09:00
gen_ksymdeps.sh
generate_initcall_order.pl init: lto: ensure initcall ordering 2021-01-14 08:21:09 -08:00
get_abi.pl tweewide: Fix most Shebang lines 2020-12-08 23:30:04 +09:00
get_dvb_firmware
get_feat.pl scripts: get_feat.pl: reduce table width for all features output 2020-12-04 14:34:27 -07:00
get_maintainer.pl get_maintainer: exclude MAINTAINERS file(s) from --git-fallback 2020-10-16 11:11:19 -07:00
gfp-translate
headerdep.pl
headers_check.pl
headers_install.sh Merge branch 'work.fdpic' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2020-08-07 13:29:39 -07:00
insert-sys-cert.c
jobserver-exec kbuild: remove PYTHON variable 2021-02-01 10:37:19 +09:00
kallsyms.c kallsyms: fix nonconverging kallsyms table with lld 2021-02-05 17:53:28 +09:00
kernel-doc scripts: kernel-doc: fix array element capture in pointer-to-func parsing 2021-02-22 14:20:36 -07:00
ld-version.sh kbuild: collect minimum tool versions into scripts/min-tool-version.sh 2021-04-25 05:14:26 +09:00
leaking_addresses.pl
link-vmlinux.sh kbuild: apply fixdep logic to link-vmlinux.sh 2021-04-25 05:12:32 +09:00
makelst
markup_oops.pl
min-tool-version.sh kbuild: collect minimum tool versions into scripts/min-tool-version.sh 2021-04-25 05:14:26 +09:00
mkcompile_h kbuild: Use uname for LINUX_COMPILE_HOST detection 2020-10-21 00:46:04 +09:00
mkmakefile
mksysmap
mkuboot.sh
module.lds.S Modules updates for v5.12 2021-02-23 10:15:33 -08:00
modules-check.sh
nsdeps kbuild: do not use scripts/ld-version.sh for checking spatch version 2020-12-12 18:31:29 +01:00
objdiff
parse-maintainers.pl
patch-kernel
profile2linkerlist.pl
prune-kernel
recordmcount.c ftrace: Have recordmcount use w8 to read relp->r_info in arm64_is_fake_mcount 2021-03-02 17:27:18 -05:00
recordmcount.h
recordmcount.pl scripts/recordmcount.pl: support big endian for ARCH sh 2021-02-13 11:42:40 -08:00
setlocalversion scripts/setlocalversion: make git describe output more reliable 2020-09-25 02:28:12 +09:00
show_delta tweewide: Fix most Shebang lines 2020-12-08 23:30:04 +09:00
sign-file.c
sorttable.c
sorttable.h
spdxcheck-test.sh
spdxcheck.py spdxcheck.py: Use Python 3 2021-01-27 14:50:12 +01:00
spelling.txt scripts/spelling.txt: add more spellings to spelling.txt 2021-02-24 13:38:26 -08:00
sphinx-pre-install Docs: drop Python 2 support 2021-02-01 17:17:14 -07:00
split-man.pl tweewide: Fix most Shebang lines 2020-12-08 23:30:04 +09:00
stackdelta
stackusage
subarch.include
syscallhdr.sh scripts: add generic syscallhdr.sh 2021-02-22 08:22:04 +09:00
syscalltbl.sh scripts: add generic syscalltbl.sh 2021-02-22 08:22:03 +09:00
tags.sh Merge branch 'locking/urgent' into locking/core, to pick up fixes 2020-10-09 08:55:17 +02:00
tools-support-relr.sh
unifdef.c
ver_linux ver_linux: Eliminate duplicate code in ldconfig processing logic 2021-01-27 14:54:42 +01:00
xen-hypercalls.sh
xz_wrap.sh