On Mon, Oct 11, 2021 at 8:25 PM Masahiro Yamada <masahiroy@xxxxxxxxxx> wrote: > > To slim down the top Makefile, split out the code block surrounded by > ifdef CONFIG_DEBUG_INFO ... endif. > > Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx> Reviewed-by: Nick Desaulniers <ndesauniers@xxxxxxxxxx> > --- > > Makefile | 39 +-------------------------------------- > scripts/Makefile.debug | 33 +++++++++++++++++++++++++++++++++ > 2 files changed, 34 insertions(+), 38 deletions(-) > create mode 100644 scripts/Makefile.debug > > diff --git a/Makefile b/Makefile > index ee5896261d2f..8e3224470dc1 100644 > --- a/Makefile > +++ b/Makefile > @@ -847,44 +847,6 @@ ifdef CONFIG_ZERO_CALL_USED_REGS > KBUILD_CFLAGS += -fzero-call-used-regs=used-gpr > endif > > -DEBUG_CFLAGS := > - > -ifdef CONFIG_DEBUG_INFO > - > -ifdef CONFIG_DEBUG_INFO_SPLIT > -DEBUG_CFLAGS += -gsplit-dwarf > -else > -DEBUG_CFLAGS += -g > -endif > - > -ifndef CONFIG_AS_IS_LLVM > -KBUILD_AFLAGS += -Wa,-gdwarf-2 > -endif > - > -ifndef CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT > -dwarf-version-$(CONFIG_DEBUG_INFO_DWARF4) := 4 > -dwarf-version-$(CONFIG_DEBUG_INFO_DWARF5) := 5 > -DEBUG_CFLAGS += -gdwarf-$(dwarf-version-y) > -endif > - > -ifdef CONFIG_DEBUG_INFO_REDUCED > -DEBUG_CFLAGS += -fno-var-tracking > -ifdef CONFIG_CC_IS_GCC > -DEBUG_CFLAGS += -femit-struct-debug-baseonly > -endif > -endif > - > -ifdef CONFIG_DEBUG_INFO_COMPRESSED > -DEBUG_CFLAGS += -gz=zlib > -KBUILD_AFLAGS += -gz=zlib > -KBUILD_LDFLAGS += --compress-debug-sections=zlib > -endif > - > -endif # CONFIG_DEBUG_INFO > - > -KBUILD_CFLAGS += $(DEBUG_CFLAGS) > -export DEBUG_CFLAGS > - > ifdef CONFIG_FUNCTION_TRACER > ifdef CONFIG_FTRACE_MCOUNT_USE_CC > CC_FLAGS_FTRACE += -mrecord-mcount > @@ -1033,6 +995,7 @@ KBUILD_CPPFLAGS += $(call cc-option,-fmacro-prefix-map=$(srctree)/=) > > # include additional Makefiles when needed > include-y := scripts/Makefile.extrawarn > +include-$(CONFIG_DEBUG_INFO) += scripts/Makefile.debug > include-$(CONFIG_KASAN) += scripts/Makefile.kasan > include-$(CONFIG_KCSAN) += scripts/Makefile.kcsan > include-$(CONFIG_UBSAN) += scripts/Makefile.ubsan > diff --git a/scripts/Makefile.debug b/scripts/Makefile.debug > new file mode 100644 > index 000000000000..9f39b0130551 > --- /dev/null > +++ b/scripts/Makefile.debug > @@ -0,0 +1,33 @@ > +DEBUG_CFLAGS := > + > +ifdef CONFIG_DEBUG_INFO_SPLIT > +DEBUG_CFLAGS += -gsplit-dwarf > +else > +DEBUG_CFLAGS += -g > +endif > + > +ifndef CONFIG_AS_IS_LLVM > +KBUILD_AFLAGS += -Wa,-gdwarf-2 > +endif > + > +ifndef CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT > +dwarf-version-$(CONFIG_DEBUG_INFO_DWARF4) := 4 > +dwarf-version-$(CONFIG_DEBUG_INFO_DWARF5) := 5 > +DEBUG_CFLAGS += -gdwarf-$(dwarf-version-y) > +endif > + > +ifdef CONFIG_DEBUG_INFO_REDUCED > +DEBUG_CFLAGS += -fno-var-tracking > +ifdef CONFIG_CC_IS_GCC > +DEBUG_CFLAGS += -femit-struct-debug-baseonly > +endif > +endif > + > +ifdef CONFIG_DEBUG_INFO_COMPRESSED > +DEBUG_CFLAGS += -gz=zlib > +KBUILD_AFLAGS += -gz=zlib > +KBUILD_LDFLAGS += --compress-debug-sections=zlib > +endif > + > +KBUILD_CFLAGS += $(DEBUG_CFLAGS) > +export DEBUG_CFLAGS > -- > 2.30.2 > -- Thanks, ~Nick Desaulniers