“d3364dfdc836468dc37e1ae33c69070bf0d07b08”上不存在“tests/qemucapabilitiesdata/caps_2.12.0.ppc64.xml”
提交 1a998be6 编写于 作者: M Masahiro Yamada

kbuild: check module name conflict for external modules as well

If there are multiple modules with the same name in the same external
module tree, there is ambiguity about which one will be loaded, and
very likely something odd is happening.
Signed-off-by: NMasahiro Yamada <masahiroy@kernel.org>
上级 3ac42b21
......@@ -1459,10 +1459,6 @@ endif
PHONY += modules
modules: $(if $(KBUILD_BUILTIN),vmlinux) modules_check modules_prepare
PHONY += modules_check
modules_check: modules.order
$(Q)$(CONFIG_SHELL) $(srctree)/scripts/modules-check.sh $<
cmd_modules_order = $(AWK) '!x[$$0]++' $(real-prereqs) > $@
modules.order: $(subdir-modorder) FORCE
......@@ -1775,9 +1771,13 @@ PHONY += modules modules_install
ifdef CONFIG_MODULES
modules: $(MODORDER)
modules: modules_check
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
PHONY += modules_check
modules_check: $(MODORDER)
$(Q)$(CONFIG_SHELL) $(srctree)/scripts/modules-check.sh $<
quiet_cmd_depmod = DEPMOD $(MODLIB)
cmd_depmod = $(CONFIG_SHELL) $(srctree)/scripts/depmod.sh $(DEPMOD) \
$(KERNELRELEASE)
......
......@@ -13,10 +13,10 @@ exit_code=0
# Check uniqueness of module names
check_same_name_modules()
{
for m in $(sed 's:.*/::' $1 | sort | uniq -d)
for m in $(sed 's:.*/::' "$1" | sort | uniq -d)
do
echo "error: the following would cause module name conflict:" >&2
sed -n "/\/$m/s:^: :p" modules.order >&2
sed -n "/\/$m/s:^: :p" "$1" >&2
exit_code=1
done
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册