• Masahiro Yamada's avatar
    kbuild: store the objtool command in *.cmd files · 92594d56
    Masahiro Yamada authored
    objtool_dep includes include/config/{ORC_UNWINDER,STACK_VALIDATION}
    so that all the objects are rebuilt when CONFIG_ORC_UNWINDER or
    CONFIG_STACK_VALIDATION is toggled.
    
    BTW, the correct option name is not CONFIG_ORC_UNWINDER, but
    CONFIG_UNWINDER_ORC. Commit 11af8474 ("x86/unwind: Rename
    unwinder config options to 'CONFIG_UNWINDER_*'") missed to
    adjust this part. So, this dependency has been broken for a
    long time.
    
    As you can see in 'objtool_args', there are more CONFIG options
    that affect the objtool command line.
    
    Adding more and more include/config/* is ugly and unmaintainable.
    
    Another issue is that non-standard objects are needlessly rebuilt.
    Objects specified as OBJECT_FILES_NON_STANDARD is not processed by
    objtool, but they are rebuilt anyway when CONFIG_STACK_VALIDATION
    is toggled. This is not a big deal, but better to fix.
    
    A cleaner and more precise fix is to include the objtool command in
    *.cmd files so any command change is naturally detected by if_change.
    Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
    Reviewed-by: default avatarNick Desaulniers <ndesaulniers@google.com>
    Reviewed-by: default avatarKees Cook <keescook@chromium.org>
    Acked-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
    92594d56
Makefile.build 19.2 KB