kbuild: get rid of kernel/ prefix from in-tree modules.{order,builtin}
Removing the 'kernel/' prefix will make our life easier because we can simply do 'cat modules.order' to get all built modules with full paths. Currently, we parse the first line of '*.mod' files in $(MODVERDIR). Since we have duplicated functionality here, I plan to remove MODVERDIR entirely. In fact, modules.order is generated also for external modules in a broken format. It adds the 'kernel/' prefix to the absolute path of the module, like this: kernel//path/to/your/external/module/foo.ko This is fine for now since modules.order is not used for external modules. However, I want to sanitize the format everywhere towards the goal of removing MODVERDIR. We cannot change the format of installed module.{order,builtin}. So, 'make modules_install' will add the 'kernel/' prefix while copying them to $(MODLIB)/. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
This commit is contained in:
parent
7e13191879
commit
1bd9a46801
4
Makefile
4
Makefile
|
@ -1329,8 +1329,8 @@ _modinst_:
|
|||
rm -f $(MODLIB)/build ; \
|
||||
ln -s $(CURDIR) $(MODLIB)/build ; \
|
||||
fi
|
||||
@cp -f $(objtree)/modules.order $(MODLIB)/
|
||||
@cp -f $(objtree)/modules.builtin $(MODLIB)/
|
||||
@sed 's:^:kernel/:' modules.order > $(MODLIB)/modules.order
|
||||
@sed 's:^:kernel/:' modules.builtin > $(MODLIB)/modules.builtin
|
||||
@cp -f $(objtree)/modules.builtin.modinfo $(MODLIB)/
|
||||
$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modinst
|
||||
|
||||
|
|
|
@ -426,7 +426,7 @@ endif # builtin-target
|
|||
modorder-cmds = \
|
||||
$(foreach m, $(modorder), \
|
||||
$(if $(filter %/modules.order, $m), \
|
||||
cat $m;, echo kernel/$m;))
|
||||
cat $m;, echo $m;))
|
||||
|
||||
$(modorder-target): $(subdir-ym) FORCE
|
||||
$(Q)(cat /dev/null; $(modorder-cmds)) > $@
|
||||
|
|
|
@ -40,7 +40,7 @@ __modbuiltin: $(modbuiltin-target) $(subdir-ym)
|
|||
@:
|
||||
|
||||
$(modbuiltin-target): $(subdir-ym) FORCE
|
||||
$(Q)(for m in $(modbuiltin-mods); do echo kernel/$$m; done; \
|
||||
$(Q)(for m in $(modbuiltin-mods); do echo $$m; done; \
|
||||
cat /dev/null $(modbuiltin-subdirs)) > $@
|
||||
|
||||
PHONY += FORCE
|
||||
|
|
|
@ -9,7 +9,7 @@ check_same_name_modules()
|
|||
for m in $(sed 's:.*/::' modules.order | sort | uniq -d)
|
||||
do
|
||||
echo "warning: same module names found:" >&2
|
||||
sed -n "/\/$m/s:^kernel/: :p" modules.order >&2
|
||||
sed -n "/\/$m/s:^: :p" modules.order >&2
|
||||
done
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue