5ab52360f28f7912b4e7d74314cd3f8655eb9fd5
[openwrt.git] / package / boot / uboot-sunxi / Makefile
1 #
2 # Copyright (C) 2013 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=u-boot
11 PKG_VERSION:=2014.04
12 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
13 PKG_SOURCE_URL:= \
14         http://mirror2.openwrt.org/sources \
15         ftp://ftp.denx.de/pub/u-boot
16 PKG_SOURCE_VERSION:=6d2116d1385a66e9a59742caa9d62a54
17 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
18
19 include $(INCLUDE_DIR)/package.mk
20
21 define uboot/Default
22   TITLE:=
23   CONFIG:=
24   IMAGE:=
25 endef
26
27 define uboot/A10-OLinuXino-Lime
28   TITLE:=U-Boot 2014.04 for the A10 OLinuXino LIME
29 endef
30
31 define uboot/A13-OLinuXino
32   TITLE:=U-Boot 2014.04 for the A13 OlinuXino
33 endef
34
35 define uboot/A20-OLinuXino_MICRO
36   TITLE:=U-Boot 2014.04 for A20 OLinuXino MICRO
37 endef
38
39 define uboot/Bananapi
40   TITLE:=U-Boot 2014.04 for Bananapi
41 endef
42
43 define uboot/Cubieboard
44   TITLE:=U-Boot 2014.04 for Cubieboard
45 endef
46
47 define uboot/Cubieboard2
48   TITLE:=U-Boot 2014.04 for Cubieboard2
49 endef
50
51 define uboot/Cubietruck
52   TITLE:=U-Boot 2014.04 for Cubietruck
53 endef
54
55 define uboot/Hackberry
56   TITLE:=U-Boot 2014.04 for the Hackbeery
57 endef
58
59 define uboot/OLIMEX-A13-SOM
60   TITLE:=U-Boot 2014.04 for the Olimex A13 SOM
61 endef
62
63 define uboot/pcDuino
64   TITLE:=U-Boot 2014.04 for pcDuino
65 endef  
66
67 define uboot/Linksprite_pcDuino3
68   TITLE:=U-Boot 2014.04 for Linksprite pcDuino3
69 endef  
70
71 UBOOTS:=A10-OLinuXino-Lime A13-OLinuXino A20-OLinuXino_MICRO Bananapi Cubieboard Cubieboard2 Cubietruck Hackberry pcDuino Linksprite_pcDuino3 OLIMEX-A13-SOM
72
73 define Package/uboot/template
74 define Package/uboot-sunxi-$(1)
75   SECTION:=boot
76   CATEGORY:=Boot Loaders
77   DEPENDS:=@TARGET_sunxi
78   TITLE:=$(2)
79   URL:=http://www.denx.de/wiki/U-Boot
80   VARIANT:=$(1)
81   MAINTAINER:=Zoltan HERPAI <wigyori@uid0.hu>
82 endef
83 endef
84
85 define BuildUBootPackage
86         $(eval $(uboot/Default))
87         $(eval $(uboot/$(1)))
88         $(call Package/uboot/template,$(1),$(TITLE))
89 endef
90
91 ifdef BUILD_VARIANT
92 $(eval $(call uboot/$(BUILD_VARIANT)))
93 UBOOT_CONFIG:=$(if $(CONFIG),$(CONFIG),$(BUILD_VARIANT))
94 UBOOT_IMAGE:=$(if $(IMAGE),$(IMAGE),openwrt-$(BOARD)-$(BUILD_VARIANT)-u-boot.bin)
95 endif
96
97 define Build/Configure
98         $(MAKE) -C $(PKG_BUILD_DIR) \
99                 USE_PRIVATE_LIBGCC=yes $(UBOOT_CONFIG)_config
100 endef
101
102 define Build/Compile
103         $(MAKE) -C $(PKG_BUILD_DIR) \
104                 CROSS_COMPILE=$(TARGET_CROSS)
105 endef
106
107 define Package/uboot/install/default
108         $(INSTALL_DIR) $(BIN_DIR)/uboot-$(BOARD)-$(1)
109         $(CP) $(PKG_BUILD_DIR)/u-boot.bin \
110                 $(BIN_DIR)/uboot-$(BOARD)-$(1)/openwrt-$(BOARD)-$(1)-u-boot.bin
111         $(CP) $(PKG_BUILD_DIR)/spl/sunxi-spl.bin \
112                 $(BIN_DIR)/uboot-$(BOARD)-$(1)/openwrt-$(BOARD)-$(1)-spl.bin
113         $(CP) $(PKG_BUILD_DIR)/u-boot-sunxi-with-spl.bin \
114                 $(BIN_DIR)/uboot-$(BOARD)-$(1)/openwrt-$(BOARD)-$(1)-u-boot-with-spl.bin
115         $(CP) uEnv.txt \
116                 $(BIN_DIR)/uboot-$(BOARD)-$(1)/openwrt-$(BOARD)-$(1)-uEnv.txt
117 endef
118
119 define Package/uboot/install/template
120 define Package/uboot-sunxi-$(1)/install
121         $(call Package/uboot/install/default,$(2))
122 endef
123 endef
124
125 $(foreach u,$(UBOOTS), \
126         $(eval $(call Package/uboot/install/template,$(u),$(u))) \
127 )
128
129 $(foreach u,$(UBOOTS), \
130         $(eval $(call BuildUBootPackage,$(u))) \
131         $(eval $(call BuildPackage,uboot-sunxi-$(u))) \
132 )