lkml.org 
[lkml]   [2021]   [Oct]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH] kbuild: split DEBUG_CFLAGS out to scripts/Makefile.debug
On Tue, Oct 12, 2021 at 5:25 AM Masahiro Yamada <masahiroy@kernel.org> 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@kernel.org>

Nice.

Reviewed-by: Sedat Dilek <sedat.dilek@gmail.com>

- Sedat -

> ---
>
> 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
>

\
 
 \ /
  Last update: 2021-10-15 23:11    [W:0.312 / U:0.956 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site