kbuild: factor out OBJECT_FILES_NON_STANDARD check into a macro
authorMasahiro Yamada <masahiroy@kernel.org>
Tue, 31 Aug 2021 07:39:55 +0000 (16:39 +0900)
committerMasahiro Yamada <masahiroy@kernel.org>
Wed, 22 Sep 2021 00:26:25 +0000 (09:26 +0900)
The OBJECT_FILES_NON_STANDARD check is quite long.

Factor it out into a new macro, objtool-enabled, to not repeat it.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Kees Cook <keescook@chromium.org>
Acked-by: Josh Poimboeuf <jpoimboe@redhat.com>
scripts/Makefile.build

index 021ae0146913227c85ee50a93a0697a6a62cc557..720a86642f488ec13eafa8116bbe198a06147f0d 100644 (file)
@@ -241,12 +241,12 @@ ifndef CONFIG_LTO_CLANG
 # 'OBJECT_FILES_NON_STANDARD := y': skip objtool checking for a directory
 # 'OBJECT_FILES_NON_STANDARD_foo.o := 'y': skip objtool checking for a file
 # 'OBJECT_FILES_NON_STANDARD_foo.o := 'n': override directory skip for a file
-cmd_objtool = $(if $(patsubst y%,, \
-       $(OBJECT_FILES_NON_STANDARD_$(basetarget).o)$(OBJECT_FILES_NON_STANDARD)n), \
-       ; $(objtool) $(objtool_args) $@)
-objtool_obj = $(if $(patsubst y%,, \
-       $(OBJECT_FILES_NON_STANDARD_$(basetarget).o)$(OBJECT_FILES_NON_STANDARD)n), \
-       $(objtool))
+
+objtool-enabled = $(if $(filter-out y%, \
+       $(OBJECT_FILES_NON_STANDARD_$(basetarget).o)$(OBJECT_FILES_NON_STANDARD)n),y)
+
+cmd_objtool = $(if $(objtool-enabled), ; $(objtool) $(objtool_args) $@)
+objtool_obj = $(if $(objtool-enabled), $(objtool))
 
 endif # CONFIG_LTO_CLANG
 endif # CONFIG_STACK_VALIDATION