Chris Zankel | 4bedea9 | 2005-06-23 22:01:12 -0700 | [diff] [blame] | 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 | |
Milton Miller | 437374e | 2007-10-20 03:58:03 -0500 | [diff] [blame] | 11 | # KBUILD_CFLAGS used when building rest of boot (takes effect recursively) |
| 12 | KBUILD_CFLAGS += -fno-builtin -Iarch/$(ARCH)/boot/include |
Chris Zankel | 4bedea9 | 2005-06-23 22:01:12 -0700 | [diff] [blame] | 13 | HOSTFLAGS += -Iarch/$(ARCH)/boot/include |
| 14 | |
Max Filippov | 123f15e | 2013-08-22 18:09:47 +0400 | [diff] [blame] | 15 | BIG_ENDIAN := $(shell echo __XTENSA_EB__ | $(CC) -E - | grep -v "\#") |
Chris Zankel | 4bedea9 | 2005-06-23 22:01:12 -0700 | [diff] [blame] | 16 | |
matt mooney | 3996eab | 2011-01-14 06:12:34 -0800 | [diff] [blame] | 17 | export ccflags-y |
Chris Zankel | 4bedea9 | 2005-06-23 22:01:12 -0700 | [diff] [blame] | 18 | export BIG_ENDIAN |
| 19 | |
Chris Zankel | e7d163f | 2005-06-30 02:58:59 -0700 | [diff] [blame] | 20 | subdir-y := lib |
| 21 | |
Chris Zankel | 4bedea9 | 2005-06-23 22:01:12 -0700 | [diff] [blame] | 22 | # Subdirs for the boot loader(s) |
| 23 | |
Max Filippov | 9a736fc | 2016-12-25 04:58:57 -0800 | [diff] [blame] | 24 | boot-$(CONFIG_XTENSA_PLATFORM_ISS) += Image |
| 25 | boot-$(CONFIG_XTENSA_PLATFORM_XT2000) += Image zImage uImage |
| 26 | boot-$(CONFIG_XTENSA_PLATFORM_XTFPGA) += Image zImage uImage |
Chris Zankel | 4bedea9 | 2005-06-23 22:01:12 -0700 | [diff] [blame] | 27 | |
Max Filippov | 9a736fc | 2016-12-25 04:58:57 -0800 | [diff] [blame] | 28 | all: $(boot-y) |
| 29 | Image: boot-elf |
| 30 | zImage: boot-redboot |
| 31 | uImage: $(obj)/uImage |
Chris Zankel | 4bedea9 | 2005-06-23 22:01:12 -0700 | [diff] [blame] | 32 | |
Max Filippov | 9a736fc | 2016-12-25 04:58:57 -0800 | [diff] [blame] | 33 | boot-elf boot-redboot: $(addprefix $(obj)/,$(subdir-y)) \ |
| 34 | $(addprefix $(obj)/,$(host-progs)) |
Chris Zankel | 4bedea9 | 2005-06-23 22:01:12 -0700 | [diff] [blame] | 35 | $(Q)$(MAKE) $(build)=$(obj)/$@ $(MAKECMDGOALS) |
| 36 | |
Max Filippov | 3f5ec29 | 2012-11-05 09:10:00 +0400 | [diff] [blame] | 37 | OBJCOPYFLAGS = --strip-all -R .comment -R .note.gnu.build-id -O binary |
| 38 | |
| 39 | vmlinux.bin: vmlinux FORCE |
| 40 | $(call if_changed,objcopy) |
| 41 | |
| 42 | vmlinux.bin.gz: vmlinux.bin FORCE |
| 43 | $(call if_changed,gzip) |
| 44 | |
| 45 | boot-elf: vmlinux.bin |
| 46 | boot-redboot: vmlinux.bin.gz |
Max Filippov | 9a736fc | 2016-12-25 04:58:57 -0800 | [diff] [blame] | 47 | |
| 48 | UIMAGE_LOADADDR = $(CONFIG_KERNEL_LOAD_ADDRESS) |
| 49 | UIMAGE_COMPRESSION = gzip |
| 50 | |
| 51 | $(obj)/uImage: vmlinux.bin.gz FORCE |
| 52 | $(call if_changed,uimage) |
| 53 | $(Q)$(kecho) ' Kernel: $@ is ready' |