at91bootstrap.mk 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. #############################################################
  2. #
  3. # at91bootstrap
  4. #
  5. #############################################################
  6. AT91BOOTSTRAP_VERSION:=1.16
  7. AT91BOOTSTRAP_NAME:=AT91Bootstrap$(AT91BOOTSTRAP_VERSION)
  8. AT91BOOTSTRAP_SITE:=http://www.atmel.com/dyn/resources/prod_documents/
  9. AT91BOOTSTRAP_SOURCE:=$(AT91BOOTSTRAP_NAME).zip
  10. AT91BOOTSTRAP_DIR:=$(BUILD_DIR)/at91bootstrap-$(AT91BOOTSTRAP_VERSION)
  11. AT91BOOTSTRAP_BOARD:=$(call qstrip,$(BR2_TARGET_AT91BOOTSTRAP_BOARD))
  12. AT91BOOTSTRAP_MEMORY:=$(call qstrip,$(BR2_TARGET_AT91BOOTSTRAP_MEMORY))
  13. AT91BOOTSTRAP_BINARY:=$(AT91BOOTSTRAP_MEMORY)_$(AT91BOOTSTRAP_BOARD).bin
  14. AT91BOOTSTRAP_BUILD_DIR:=$(AT91BOOTSTRAP_DIR)/board/$(AT91BOOTSTRAP_BOARD)/$(AT91BOOTSTRAP_MEMORY)
  15. AT91BOOTSTRAP_TARGET:=$(AT91BOOTSTRAP_BUILD_DIR)/$(AT91BOOTSTRAP_BINARY)
  16. $(DL_DIR)/$(AT91BOOTSTRAP_SOURCE):
  17. $(call DOWNLOAD,$(AT91BOOTSTRAP_SITE),$(AT91BOOTSTRAP_SOURCE))
  18. $(AT91BOOTSTRAP_DIR)/.unpacked: $(DL_DIR)/$(AT91BOOTSTRAP_SOURCE)
  19. mkdir -p $(BUILD_DIR)
  20. unzip -d $(BUILD_DIR) $(DL_DIR)/$(AT91BOOTSTRAP_SOURCE)
  21. mv $(BUILD_DIR)/Bootstrap-v$(AT91BOOTSTRAP_VERSION) $(AT91BOOTSTRAP_DIR)
  22. touch $@
  23. $(AT91BOOTSTRAP_DIR)/.patched: $(AT91BOOTSTRAP_DIR)/.unpacked
  24. toolchain/patch-kernel.sh $(AT91BOOTSTRAP_DIR) boot/at91bootstrap/ at91bootstrap-$(AT91BOOTSTRAP_VERSION)\*.patch
  25. touch $@
  26. $(AT91BOOTSTRAP_TARGET): $(AT91BOOTSTRAP_DIR)/.patched
  27. $(MAKE) CROSS_COMPILE=$(TARGET_CROSS) \
  28. -C $(AT91BOOTSTRAP_BUILD_DIR)
  29. $(BINARIES_DIR)/$(AT91BOOTSTRAP_BINARY): $(AT91BOOTSTRAP_TARGET)
  30. mkdir -p $(dir $@)
  31. cp $^ $@
  32. at91bootstrap: $(BINARIES_DIR)/$(AT91BOOTSTRAP_BINARY)
  33. at91bootstrap-source: $(DL_DIR)/$(AT91BOOTSTRAP_SOURCE)
  34. at91bootstrap-unpacked: $(AT91BOOTSTRAP_DIR)/.unpacked
  35. at91bootstrap-clean:
  36. make -C $(AT91BOOTSTRAP_BUILD_DIR) clean
  37. at91bootstrap-dirclean:
  38. rm -rf $(AT91BOOTSTRAP_DIR)
  39. #############################################################
  40. #
  41. # Toplevel Makefile options
  42. #
  43. #############################################################
  44. ifeq ($(BR2_TARGET_AT91BOOTSTRAP),y)
  45. TARGETS+=at91bootstrap
  46. # we NEED a board name
  47. ifeq ($(AT91BOOTSTRAP_BOARD),)
  48. $(error No AT91Bootstrap board name set. Check your BR2_TARGET_AT91BOOTSTRAP_BOARD setting)
  49. endif
  50. endif