在内核 makefile 的函数中添加注释
Adding comment within a function in kernel makefile
假设内核makefile中有如下函数。
define rule_vmlinux__
:
$(if $(CONFIG_KALLSYMS),,+$(call cmd,vmlinux_version))
$(call cmd,vmlinux__)
$(Q)echo 'cmd_$@ := $(cmd_vmlinux__)' > $(@D)/.$(@F).cmd
$(Q)$(if $($(quiet)cmd_sysmap), \
echo ' $($(quiet)cmd_sysmap) System.map' &&) \
$(cmd_sysmap) $@ System.map; \
if [ $$? -ne 0 ]; then \
rm -f $@; \
/bin/false; \
fi;
$(verify_kallsyms)
$(Q)$(if $($(quiet)cmd_arm1136_cid_scan), \
echo ' $($(quiet)cmd_arm1136_cid_scan)' &&) \
$(cmd_arm1136_cid_scan)
endef
我想在这个函数中评论一些东西(比如 $(verify_kallsyms)
)。我已经尝试过 pound(#)
和 @
但它不起作用。我从 gnu 手册中得到以下句子:
You cannot use comments within variable references or function calls:
any instance of # will be treated literally (rather than as the start
of a comment) inside a variable reference or function call.
是否可以添加评论?
由于不能使用注释来禁用代码,所以必须定义一个新函数opt_verify_kallsyms
。使用标志来控制函数体。如果未设置标志,则将新函数扩展为 $(verify_kallsyms)
。如果设置了标志,则将其展开为空。
假设内核makefile中有如下函数。
define rule_vmlinux__
:
$(if $(CONFIG_KALLSYMS),,+$(call cmd,vmlinux_version))
$(call cmd,vmlinux__)
$(Q)echo 'cmd_$@ := $(cmd_vmlinux__)' > $(@D)/.$(@F).cmd
$(Q)$(if $($(quiet)cmd_sysmap), \
echo ' $($(quiet)cmd_sysmap) System.map' &&) \
$(cmd_sysmap) $@ System.map; \
if [ $$? -ne 0 ]; then \
rm -f $@; \
/bin/false; \
fi;
$(verify_kallsyms)
$(Q)$(if $($(quiet)cmd_arm1136_cid_scan), \
echo ' $($(quiet)cmd_arm1136_cid_scan)' &&) \
$(cmd_arm1136_cid_scan)
endef
我想在这个函数中评论一些东西(比如 $(verify_kallsyms)
)。我已经尝试过 pound(#)
和 @
但它不起作用。我从 gnu 手册中得到以下句子:
You cannot use comments within variable references or function calls: any instance of # will be treated literally (rather than as the start of a comment) inside a variable reference or function call.
是否可以添加评论?
由于不能使用注释来禁用代码,所以必须定义一个新函数opt_verify_kallsyms
。使用标志来控制函数体。如果未设置标志,则将新函数扩展为 $(verify_kallsyms)
。如果设置了标志,则将其展开为空。