On Tue, 2018-12-18 at 14:25 +0900, Masahiro Yamada wrote: > For the same reason as commit 25896d073d8a ("x86/build: Fix compiler > support check for CONFIG_RETPOLINE"), you cannot put this $(error ...) > into the parse stage of the top Makefile. > > Perhaps I'd propose a more sophisticated solution later, but this is > the best I can do for now. > > Link: https://lkml.org/lkml/2017/12/25/211 > Reported-by: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx> > Reported-by: Bernd Edlinger <bernd.edlinger@xxxxxxxxxx> > Reported-by: Qian Cai <cai@xxxxxx> > Cc: Josh Poimboeuf <jpoimboe@xxxxxxxxxx> > Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> > --- > Tested-by: Qian Cai <cai@xxxxxx> > Makefile | 13 ++++++++----- > 1 file changed, 8 insertions(+), 5 deletions(-) > > diff --git a/Makefile b/Makefile > index 56d5270..d45856f 100644 > --- a/Makefile > +++ b/Makefile > @@ -962,11 +962,6 @@ ifdef CONFIG_STACK_VALIDATION > ifeq ($(has_libelf),1) > objtool_target := tools/objtool FORCE > else > - ifdef CONFIG_UNWINDER_ORC > - $(error "Cannot generate ORC metadata for CONFIG_UNWINDER_ORC=y, please > install libelf-dev, libelf-devel or elfutils-libelf-devel") > - else > - $(warning "Cannot use CONFIG_STACK_VALIDATION=y, please install libelf- > dev, libelf-devel or elfutils-libelf-devel") > - endif > SKIP_STACK_VALIDATION := 1 > export SKIP_STACK_VALIDATION > endif > @@ -1125,6 +1120,14 @@ uapi-asm-generic: > > PHONY += prepare-objtool > prepare-objtool: $(objtool_target) > +ifeq ($(SKIP_STACK_VALIDATION),1) > +ifdef CONFIG_UNWINDER_ORC > + @echo "error: Cannot generate ORC metadata for CONFIG_UNWINDER_ORC=y, > please install libelf-dev, libelf-devel or elfutils-libelf-devel" >&2 > + @false > +else > + @echo "warning: Cannot use CONFIG_STACK_VALIDATION=y, please install > libelf-dev, libelf-devel or elfutils-libelf-devel" >&2 > +endif > +endif > > # Generate some files > # ---------------------------------------------------------------------------