0001
0002
0003
0004 KBUILD_CFLAGS := $(subst $(CC_FLAGS_FTRACE),,$(KBUILD_CFLAGS)) -fpie \
0005 -Os -DDISABLE_BRANCH_PROFILING $(DISABLE_STACKLEAK_PLUGIN) \
0006 $(call cc-option,-mbranch-protection=none) \
0007 -I$(srctree)/scripts/dtc/libfdt -fno-stack-protector \
0008 -include $(srctree)/include/linux/hidden.h \
0009 -D__DISABLE_EXPORTS -ffreestanding -D__NO_FORTIFY \
0010 $(call cc-option,-fno-addrsig)
0011
0012
0013 KBUILD_CFLAGS := $(filter-out $(CC_FLAGS_SCS), $(KBUILD_CFLAGS))
0014
0015 KBUILD_CFLAGS := $(filter-out $(CC_FLAGS_LTO), $(KBUILD_CFLAGS))
0016
0017 GCOV_PROFILE := n
0018 KASAN_SANITIZE := n
0019 KCSAN_SANITIZE := n
0020 UBSAN_SANITIZE := n
0021 KCOV_INSTRUMENT := n
0022
0023 $(obj)/%.pi.o: OBJCOPYFLAGS := --prefix-symbols=__pi_ \
0024 --remove-section=.note.gnu.property \
0025 --prefix-alloc-sections=.init
0026 $(obj)/%.pi.o: $(obj)/%.o FORCE
0027 $(call if_changed,objcopy)
0028
0029 $(obj)/lib-%.o: $(srctree)/lib/%.c FORCE
0030 $(call if_changed_rule,cc_o_c)
0031
0032 obj-y := kaslr_early.pi.o lib-fdt.pi.o lib-fdt_ro.pi.o
0033 extra-y := $(patsubst %.pi.o,%.o,$(obj-y))