DEBUG_CFLAGS :=DEBUG_RUSTFLAGS := 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-trackingDEBUG_RUSTFLAGS += -Cdebuginfo=1ifdef CONFIG_CC_IS_GCCDEBUG_CFLAGS += -femit-struct-debug-baseonlyendifelseDEBUG_RUSTFLAGS += -Cdebuginfo=2endif ifdef CONFIG_DEBUG_INFO_COMPRESSEDDEBUG_CFLAGS += -gz=zlibKBUILD_AFLAGS += -gz=zlibKBUILD_LDFLAGS += --compress-debug-sections=zlibendif KBUILD_CFLAGS += $(DEBUG_CFLAGS)export DEBUG_CFLAGS KBUILD_RUSTFLAGS += $(DEBUG_RUSTFLAGS)export DEBUG_RUSTFLAGS
DEBUG_CFLAGS :=
DEBUG_RUSTFLAGS :=
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
DEBUG_RUSTFLAGS += -Cdebuginfo=1
ifdef CONFIG_CC_IS_GCC
DEBUG_CFLAGS += -femit-struct-debug-baseonly
endif
else
DEBUG_RUSTFLAGS += -Cdebuginfo=2
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
KBUILD_RUSTFLAGS += $(DEBUG_RUSTFLAGS)
export DEBUG_RUSTFLAGS