1# 2# arch/xtensa/boot/Makefile 3# 4# This file is subject to the terms and conditions of the GNU General Public 5# License. See the file "COPYING" in the main directory of this archive 6# for more details. 7# 8# 9 10 11# KBUILD_CFLAGS used when building rest of boot (takes effect recursively) 12KBUILD_CFLAGS += -fno-builtin -Iarch/$(ARCH)/boot/include 13HOSTFLAGS += -Iarch/$(ARCH)/boot/include 14 15BIG_ENDIAN := $(shell echo -e __XTENSA_EB__ | $(CC) -E - | grep -v "\#") 16 17export ccflags-y 18export BIG_ENDIAN 19 20subdir-y := lib 21 22# Subdirs for the boot loader(s) 23 24bootdir-$(CONFIG_XTENSA_PLATFORM_ISS) += boot-elf 25bootdir-$(CONFIG_XTENSA_PLATFORM_XT2000) += boot-redboot boot-elf boot-uboot 26bootdir-$(CONFIG_XTENSA_PLATFORM_XTFPGA) += boot-redboot boot-elf boot-uboot 27 28 29BUILTIN_DTB := $(patsubst "%",%,$(CONFIG_BUILTIN_DTB)).dtb.o 30ifneq ($(CONFIG_BUILTIN_DTB),"") 31obj-$(CONFIG_OF) += $(BUILTIN_DTB) 32endif 33 34# Rule to build device tree blobs 35$(obj)/%.dtb: $(src)/dts/%.dts FORCE 36 $(call if_changed_dep,dtc) 37 38clean-files := *.dtb.S 39 40zImage Image: $(bootdir-y) 41 42$(bootdir-y): $(addprefix $(obj)/,$(subdir-y)) \ 43 $(addprefix $(obj)/,$(host-progs)) 44 $(Q)$(MAKE) $(build)=$(obj)/$@ $(MAKECMDGOALS) 45 46OBJCOPYFLAGS = --strip-all -R .comment -R .note.gnu.build-id -O binary 47 48vmlinux.bin: vmlinux FORCE 49 $(call if_changed,objcopy) 50 51vmlinux.bin.gz: vmlinux.bin FORCE 52 $(call if_changed,gzip) 53 54boot-elf: vmlinux.bin 55boot-redboot: vmlinux.bin.gz 56boot-uboot: vmlinux.bin.gz 57