diff --git a/package/boot/uboot-at91/Makefile b/package/boot/uboot-at91/Makefile new file mode 100644 index 0000000000..bf4d721efc --- /dev/null +++ b/package/boot/uboot-at91/Makefile @@ -0,0 +1,102 @@ +# +# Copyright (C) 2016 Ben Whitten +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=u-boot +PKG_VERSION:=2016.05 +PKG_RELEASE:=1 + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 +PKG_SOURCE_URL:= \ + http://mirror2.openwrt.org/sources \ + ftp://ftp.denx.de/pub/u-boot +PKG_MD5SUM:=3a8613d753dfa707c937991a35404510 + +PKG_LICENSE:=GPL-2.0 GPL-2.0+ +PKG_LICENSE_FILES:=Licenses/README + +PKG_BUILD_PARALLEL:=1 + +include $(INCLUDE_DIR)/package.mk + +define uboot/Default + TITLE:= +endef + +define uboot/at91sam9m10g45ek_nandflash + TITLE:=U-Boot for the AT91SAM9M10G45-EK board (NandFlash) +endef + +define uboot/at91sam9x5ek_nandflash + TITLE:=U-Boot for the AT91SAM9X5-EK board (NandFlash) +endef + +UBOOTS := \ + at91sam9m10g45ek_nandflash \ + at91sam9x5ek_nandflash + +define Package/uboot/template +define Package/uboot-at91-$(1) + SECTION:=boot + CATEGORY:=Boot Loaders + DEPENDS:=@TARGET_at91 + TITLE:=$(2) + URL:=http://www.denx.de/wiki/U-Boot + VARIANT:=$(1) + MAINTAINER:=Ben Whitten +endef +endef + +define BuildUBootPackage + $(eval $(uboot/Default)) + $(eval $(uboot/$(1))) + $(call Package/uboot/template,$(1),$(TITLE)) +endef + +ifdef BUILD_VARIANT +$(eval $(call uboot/$(BUILD_VARIANT))) +UBOOT_CONFIG:=$(if $(CONFIG),$(CONFIG),$(BUILD_VARIANT)) +UBOOT_IMAGE:=$(if $(IMAGE),$(IMAGE),lede-$(BOARD)-$(BUILD_VARIANT)-u-boot.bin) +endif + +define Build/Configure + +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \ + $(UBOOT_CONFIG)_config +endef + +define Build/Compile + +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \ + CROSS_COMPILE=$(TARGET_CROSS) \ + KCFLAGS="$(filter-out -fstack-protector, $(TARGET_CFLAGS))" +endef + +define Package/uboot/install/default + $(INSTALL_DIR) $(BIN_DIR)/uboot-$(BOARD)-$(1) + + $(CP) $(PKG_BUILD_DIR)/u-boot.bin \ + $(BIN_DIR)/uboot-$(BOARD)-$(1)/u-boot.bin + + $(CP) $(PKG_BUILD_DIR)/boot.bin \ + $(BIN_DIR)/uboot-$(BOARD)-$(1)/boot.bin +endef + +define Package/uboot/install/template +define Package/uboot-at91-$(1)/install + $(call Package/uboot/install/default,$(2)) +endef +endef + +$(foreach u,$(UBOOTS), \ + $(eval $(call Package/uboot/install/template,$(u),$(u))) \ +) + +$(foreach u,$(UBOOTS), \ + $(eval $(call BuildUBootPackage,$(u))) \ + $(eval $(call BuildPackage,uboot-at91-$(u))) \ +)