kbuild: do not redirect the first prerequisite for filechk

Currently, filechk unconditionally opens the first prerequisite and
redirects it as the stdin of a filechk_* rule.  Hence, every target
using $(call filechk,...) must list something as the first prerequisite
even if it is unneeded.

'< $<' is actually unneeded in most cases.  Each rule can explicitly
adds it if necessary.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
This commit is contained in:
Masahiro Yamada 2018-07-25 14:16:11 +09:00
parent 6b0709f5a5
commit 43fee2b238
5 changed files with 7 additions and 7 deletions

View File

@ -1117,7 +1117,7 @@ define filechk_version.h
echo '#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))';) echo '#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))';)
endef endef
$(version_h): $(srctree)/Makefile FORCE $(version_h): FORCE
$(call filechk,version.h) $(call filechk,version.h)
$(Q)rm -f $(old_version_h) $(Q)rm -f $(old_version_h)

View File

@ -25,15 +25,15 @@ _dummy := $(shell [ -d '$(uapi)' ] || mkdir -p '$(uapi)') \
$(shell [ -d '$(kapi)' ] || mkdir -p '$(kapi)') $(shell [ -d '$(kapi)' ] || mkdir -p '$(kapi)')
define filechk_syshdr define filechk_syshdr
$(CONFIG_SHELL) '$(systbl)' -H -a $(syshdr_abi_$(basetarget)) -f "$2" $(CONFIG_SHELL) '$(systbl)' -H -a $(syshdr_abi_$(basetarget)) -f "$2" < $<
endef endef
define filechk_sysnr define filechk_sysnr
$(CONFIG_SHELL) '$(systbl)' -N -a $(sysnr_abi_$(basetarget)) $(CONFIG_SHELL) '$(systbl)' -N -a $(sysnr_abi_$(basetarget)) < $<
endef endef
define filechk_syscalls define filechk_syscalls
$(CONFIG_SHELL) '$(systbl)' -S $(CONFIG_SHELL) '$(systbl)' -S < $<
endef endef
syshdr_abi_unistd_32 := common,32 syshdr_abi_unistd_32 := common,32

View File

@ -169,7 +169,7 @@ define filechk_gen-asm-offsets
echo " *"; \ echo " *"; \
echo " */"; \ echo " */"; \
echo ""; \ echo ""; \
sed -ne "/^->/{s:^->\([^ ]*\) [\$$#]*\([^ ]*\) \(.*\):#define \1 \2 /* \3 */:; s:->::; p;}"; \ sed -ne "/^->/{s:^->\([^ ]*\) [\$$#]*\([^ ]*\) \(.*\):#define \1 \2 /* \3 */:; s:->::; p;}" < $<; \
echo ""; ) echo ""; )
endef endef

View File

@ -56,7 +56,7 @@ kecho := $($(quiet)kecho)
define filechk define filechk
$(Q)set -e; \ $(Q)set -e; \
mkdir -p $(dir $@); \ mkdir -p $(dir $@); \
$(filechk_$(1)) < $< > $@.tmp; \ $(filechk_$(1)) > $@.tmp; \
if [ -r $@ ] && cmp -s $@ $@.tmp; then \ if [ -r $@ ] && cmp -s $@ $@.tmp; then \
rm -f $@.tmp; \ rm -f $@.tmp; \
else \ else \

View File

@ -415,7 +415,7 @@ define filechk_offsets
echo " * This file was generated by Kbuild"; \ echo " * This file was generated by Kbuild"; \
echo " */"; \ echo " */"; \
echo ""; \ echo ""; \
sed -ne $(sed-offsets); \ sed -ne $(sed-offsets) < $<; \
echo ""; \ echo ""; \
echo "#endif" ) echo "#endif" )
endef endef