DEBUG_CFLAGS :=debug-flags-y := -g ifdef CONFIG_DEBUG_INFO_SPLITDEBUG_CFLAGS += -gsplit-dwarfendif debug-flags-$(CONFIG_DEBUG_INFO_DWARF4) += -gdwarf-4debug-flags-$(CONFIG_DEBUG_INFO_DWARF5) += -gdwarf-5ifeq ($(CONFIG_CC_IS_CLANG)$(CONFIG_AS_IS_GNU),yy)# Clang does not pass -g or -gdwarf-* option down to GAS.# Add -Wa, prefix to explicitly specify the flags.KBUILD_AFLAGS += $(addprefix -Wa$(comma), $(debug-flags-y))endifDEBUG_CFLAGS += $(debug-flags-y)KBUILD_AFLAGS += $(debug-flags-y) ifdef CONFIG_DEBUG_INFO_REDUCEDDEBUG_CFLAGS += -fno-var-trackingifdef CONFIG_CC_IS_GCCDEBUG_CFLAGS += -femit-struct-debug-baseonlyendifendif ifdef CONFIG_DEBUG_INFO_COMPRESSEDDEBUG_CFLAGS += -gz=zlibKBUILD_AFLAGS += -gz=zlibKBUILD_LDFLAGS += --compress-debug-sections=zlibendif KBUILD_CFLAGS += $(DEBUG_CFLAGS)export DEBUG_CFLAGS
DEBUG_CFLAGS :=
debug-flags-y := -g
ifdef CONFIG_DEBUG_INFO_SPLIT
DEBUG_CFLAGS += -gsplit-dwarf
endif
debug-flags-$(CONFIG_DEBUG_INFO_DWARF4) += -gdwarf-4
debug-flags-$(CONFIG_DEBUG_INFO_DWARF5) += -gdwarf-5
ifeq ($(CONFIG_CC_IS_CLANG)$(CONFIG_AS_IS_GNU),yy)
# Clang does not pass -g or -gdwarf-* option down to GAS.
# Add -Wa, prefix to explicitly specify the flags.
KBUILD_AFLAGS += $(addprefix -Wa$(comma), $(debug-flags-y))
endif
DEBUG_CFLAGS += $(debug-flags-y)
KBUILD_AFLAGS += $(debug-flags-y)
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