在内核makefile中的函数中添加注释

时间:2017-01-26 09:14:21

标签: linux makefile linux-kernel gnu

假设在内核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手册中得到了以下句子:

  

您不能在变量引用或函数调用中使用注释:   任何#的实例都将按字面意思处理(而不是作为开头   在变量引用或函数调用中。

是否可以添加评论或没有?

1 个答案:

答案 0 :(得分:1)

由于您无法使用注释来禁用代码,因此您必须定义新函数opt_verify_kallsyms。使用标志来控制函数的主体。如果未设置标志,请将新功能展开为$(verify_kallsyms)。如果设置了标志,则将其展开为空。