ramips: add preliminary Archer C20i support
[15.05/openwrt.git] / package / boot / uboot-sunxi / Makefile
1 #
2 # Copyright (C) 2013-2014 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 PKG_LICENSE:=GPL-2.0 GPL-2.0+
20 PKG_LICENSE_FILES:=Licenses/README
21
22 include $(INCLUDE_DIR)/package.mk
23
24 define uboot/Default
25   TITLE:=
26   CONFIG:=
27   IMAGE:=
28 endef
29
30 define uboot/A10-OLinuXino-Lime
31   TITLE:=U-Boot for the A10 OLinuXino LIME
32 endef
33
34 define uboot/A13-OLinuXino
35   TITLE:=U-Boot for the A13 OlinuXino
36 endef
37
38 define uboot/A20-OLinuXino_Lime
39   TITLE:=U-Boot for the A20 OLinuXino LIME
40 endef
41
42 define uboot/A20-OLinuXino_MICRO
43   TITLE:=U-Boot for A20 OLinuXino MICRO
44 endef
45
46 define uboot/Bananapi
47   TITLE:=U-Boot for Bananapi
48 endef
49
50 define uboot/Cubieboard
51   TITLE:=U-Boot for Cubieboard
52 endef
53
54 define uboot/Cubieboard2
55   TITLE:=U-Boot for Cubieboard2
56 endef
57
58 define uboot/Cubietruck
59   TITLE:=U-Boot for Cubietruck
60 endef
61
62 define uboot/Hackberry
63   TITLE:=U-Boot for the Hackbeery
64 endef
65
66 define uboot/OLIMEX-A13-SOM
67   TITLE:=U-Boot for the Olimex A13 SOM
68 endef
69
70 define uboot/pcDuino
71   TITLE:=U-Boot for pcDuino
72 endef  
73
74 define uboot/Linksprite_pcDuino3
75   TITLE:=U-Boot for Linksprite pcDuino3
76 endef  
77
78 UBOOTS:= \
79         A10-OLinuXino-Lime \
80         A13-OLinuXino \
81         A20-OLinuXino_Lime \
82         A20-OLinuXino_MICRO \
83         Bananapi \
84         Cubieboard \
85         Cubieboard2 \
86         Cubietruck \
87         Hackberry \
88         OLIMEX-A13-SOM \
89         pcDuino \
90         Linksprite_pcDuino3 \
91
92 define Package/uboot/template
93 define Package/uboot-sunxi-$(1)
94   SECTION:=boot
95   CATEGORY:=Boot Loaders
96   DEPENDS:=@TARGET_sunxi
97   TITLE:=$(2)
98   URL:=http://www.denx.de/wiki/U-Boot
99   VARIANT:=$(1)
100   MAINTAINER:=Zoltan HERPAI <wigyori@uid0.hu>
101 endef
102 endef
103
104 define BuildUBootPackage
105         $(eval $(uboot/Default))
106         $(eval $(uboot/$(1)))
107         $(call Package/uboot/template,$(1),$(TITLE))
108 endef
109
110 ifdef BUILD_VARIANT
111 $(eval $(call uboot/$(BUILD_VARIANT)))
112 UBOOT_CONFIG:=$(if $(CONFIG),$(CONFIG),$(BUILD_VARIANT))
113 UBOOT_IMAGE:=$(if $(IMAGE),$(IMAGE),openwrt-$(BOARD)-$(BUILD_VARIANT)-u-boot.bin)
114 endif
115
116 define Build/Configure
117         $(MAKE) -C $(PKG_BUILD_DIR) \
118                 USE_PRIVATE_LIBGCC=yes $(UBOOT_CONFIG)_config
119 endef
120
121 define Build/Compile
122         $(MAKE) -C $(PKG_BUILD_DIR) \
123                 CROSS_COMPILE=$(TARGET_CROSS)
124 endef
125
126 define Package/uboot/install/default
127         $(INSTALL_DIR) $(BIN_DIR)/uboot-$(BOARD)-$(1)
128         $(CP) $(PKG_BUILD_DIR)/u-boot.bin \
129                 $(BIN_DIR)/uboot-$(BOARD)-$(1)/openwrt-$(BOARD)-$(1)-u-boot.bin
130         $(CP) $(PKG_BUILD_DIR)/spl/sunxi-spl.bin \
131                 $(BIN_DIR)/uboot-$(BOARD)-$(1)/openwrt-$(BOARD)-$(1)-spl.bin
132         $(CP) $(PKG_BUILD_DIR)/u-boot-sunxi-with-spl.bin \
133                 $(BIN_DIR)/uboot-$(BOARD)-$(1)/openwrt-$(BOARD)-$(1)-u-boot-with-spl.bin
134         $(CP) uEnv.txt \
135                 $(BIN_DIR)/uboot-$(BOARD)-$(1)/openwrt-$(BOARD)-$(1)-uEnv.txt
136 endef
137
138 define Package/uboot/install/template
139 define Package/uboot-sunxi-$(1)/install
140         $(call Package/uboot/install/default,$(2))
141 endef
142 endef
143
144 $(foreach u,$(UBOOTS), \
145         $(eval $(call Package/uboot/install/template,$(u),$(u))) \
146 )
147
148 $(foreach u,$(UBOOTS), \
149         $(eval $(call BuildUBootPackage,$(u))) \
150         $(eval $(call BuildPackage,uboot-sunxi-$(u))) \
151 )