forked from Minki/linux
kbuild: split DEBUG_CFLAGS out to scripts/Makefile.debug
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> Reviewed-by: Sedat Dilek <sedat.dilek@gmail.com>
This commit is contained in:
parent
3510c5cf42
commit
6947fd96ae
39
Makefile
39
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
|
||||
|
33
scripts/Makefile.debug
Normal file
33
scripts/Makefile.debug
Normal file
@ -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
|
Loading…
Reference in New Issue
Block a user