All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] kbuild: split DEBUG_CFLAGS out to scripts/Makefile.debug
@ 2021-10-12  3:25 Masahiro Yamada
  2021-10-12 19:07 ` Nick Desaulniers
  2021-10-15 21:09 ` Sedat Dilek
  0 siblings, 2 replies; 3+ messages in thread
From: Masahiro Yamada @ 2021-10-12  3:25 UTC (permalink / raw)
  To: linux-kbuild
  Cc: Masahiro Yamada, Michal Marek, Nick Desaulniers, linux-kernel

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

 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


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] kbuild: split DEBUG_CFLAGS out to scripts/Makefile.debug
  2021-10-12  3:25 [PATCH] kbuild: split DEBUG_CFLAGS out to scripts/Makefile.debug Masahiro Yamada
@ 2021-10-12 19:07 ` Nick Desaulniers
  2021-10-15 21:09 ` Sedat Dilek
  1 sibling, 0 replies; 3+ messages in thread
From: Nick Desaulniers @ 2021-10-12 19:07 UTC (permalink / raw)
  To: Masahiro Yamada; +Cc: linux-kbuild, Michal Marek, linux-kernel

On Mon, Oct 11, 2021 at 8:25 PM 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>

Reviewed-by: Nick Desaulniers <ndesauniers@google.com>

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

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] kbuild: split DEBUG_CFLAGS out to scripts/Makefile.debug
  2021-10-12  3:25 [PATCH] kbuild: split DEBUG_CFLAGS out to scripts/Makefile.debug Masahiro Yamada
  2021-10-12 19:07 ` Nick Desaulniers
@ 2021-10-15 21:09 ` Sedat Dilek
  1 sibling, 0 replies; 3+ messages in thread
From: Sedat Dilek @ 2021-10-15 21:09 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: linux-kbuild, Michal Marek, Nick Desaulniers, linux-kernel

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
>

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-10-15 21:09 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-12  3:25 [PATCH] kbuild: split DEBUG_CFLAGS out to scripts/Makefile.debug Masahiro Yamada
2021-10-12 19:07 ` Nick Desaulniers
2021-10-15 21:09 ` Sedat Dilek

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.