Makefile 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. CONFIG_NAND_SPL = y
  2. PAD_TO := 2048
  3. include $(TOPDIR)/config.mk
  4. nandobj := $(OBJTREE)/nand_spl/
  5. LDSCRIPT= $(TOPDIR)/nand_spl/board/$(BOARDDIR)/u-boot.lds
  6. LSTSCRIPT= $(nandobj)/board/$(BOARDDIR)/u-boot.lst
  7. LDFLAGS := -T $(nandobj)u-boot.lds -Ttext $(CONFIG_SYS_TEXT_BASE) $(LDFLAGS) \
  8. $(LDFLAGS_FINAL)
  9. AFLAGS += -DCONFIG_SPL_BUILD -DCONFIG_NAND_SPL
  10. CFLAGS += -DCONFIG_SPL_BUILD -DCONFIG_NAND_SPL
  11. SOBJS = start.o crt0.o lowlevel_init.o
  12. COBJS = nand_boot_fsl_nfc.o
  13. SRCS := $(SRCTREE)/nand_spl/nand_boot_fsl_nfc.c
  14. SRCS += $(SRCTREE)/arch/arm/cpu/arm1136/start.S
  15. SRCS += $(SRCTREE)/arch/arm/lib/crt0.S
  16. SRCS += $(SRCTREE)/board/freescale/mx31pdk/lowlevel_init.S
  17. OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS))
  18. __OBJS := $(SOBJS) $(COBJS)
  19. LNDIR := $(nandobj)board/$(BOARDDIR)
  20. ALL = $(nandobj)u-boot-spl $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin
  21. all: $(obj).depend $(ALL)
  22. $(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl
  23. $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@
  24. $(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl
  25. $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
  26. $(nandobj)u-boot-spl: $(OBJS) $(nandobj)u-boot.lds
  27. cd $(LNDIR) && $(LD) $(LDFLAGS) $(__OBJS) \
  28. -Map $(nandobj)u-boot-spl.map \
  29. -o $@
  30. # The following line expands into whole rule which generates $(LSTSCRIPT),
  31. # the file containing u-boots LG-array linker section. This is included into
  32. # $(LDSCRIPT). The function make_u_boot_list is defined in helper.mk file.
  33. $(eval $(call make_u_boot_list, $(LSTSCRIPT), $(OBJS)))
  34. $(nandobj)u-boot.lds: $(LDSCRIPT) $(LSTSCRIPT)
  35. $(CPP) $(CPPFLAGS) $(LDPPFLAGS) -I$(nandobj)/board/$(BOARDDIR) \
  36. -ansi -D__ASSEMBLY__ -P - <$< >$@
  37. #########################################################################
  38. $(obj)%.o: $(SRCTREE)/arch/arm/cpu/arm1136/%.S
  39. $(CC) $(AFLAGS) -c -o $@ $<
  40. $(obj)%.o: $(SRCTREE)/arch/arm/lib/%.S
  41. $(CC) $(AFLAGS) -c -o $@ $<
  42. $(obj)%.o: $(SRCTREE)/board/freescale/mx31pdk/%.S
  43. $(CC) $(AFLAGS) -c -o $@ $<
  44. $(obj)%.o: $(SRCTREE)/nand_spl/%.c
  45. $(CC) $(CFLAGS) -c -o $@ $<
  46. # defines $(obj).depend target
  47. include $(SRCTREE)/rules.mk
  48. sinclude $(obj).depend
  49. #########################################################################