4409f2b3441c7cc89f77d0d73151bb3b83ef0338
[platform/kernel/u-boot.git] / MAKEALL
1 #!/bin/sh
2
3 : ${JOBS:=}
4
5 if [ "${CROSS_COMPILE}" ] ; then
6         MAKE="make CROSS_COMPILE=${CROSS_COMPILE}"
7 else
8         MAKE=make
9 fi
10
11 if [ "${MAKEALL_LOGDIR}" ] ; then
12         LOG_DIR=${MAKEALL_LOGDIR}
13 else
14         LOG_DIR="LOG"
15 fi
16
17 if [ ! "${BUILD_DIR}" ] ; then
18         BUILD_DIR="."
19 fi
20
21 [ -d ${LOG_DIR} ] || mkdir ${LOG_DIR} || exit 1
22
23 LIST=""
24
25 #########################################################################
26 ## MPC5xx Systems
27 #########################################################################
28
29 LIST_5xx="      \
30         cmi_mpc5xx                                                      \
31 "
32
33 #########################################################################
34 ## MPC5xxx Systems
35 #########################################################################
36
37 LIST_5xxx="     \
38         BC3450          cpci5200        EVAL5200        fo300           \
39         icecube_5100    icecube_5200    lite5200b       mcc200          \
40         o2dnt           pf5200          PM520           TB5200          \
41         Total5100       Total5200       Total5200_Rev2  TQM5200         \
42         TQM5200_B       TQM5200S        v38b                            \
43 "
44
45 #########################################################################
46 ## MPC8xx Systems
47 #########################################################################
48 LIST_8xx="      \
49         Adder87x        GENIETV         MBX860T         R360MPI         \
50         AdderII         GTH             MHPC            RBC823          \
51         ADS860          hermes          MPC86xADS       rmu             \
52         AMX860          IAD210          MPC885ADS       RPXClassic      \
53         c2mon           ICU862_100MHz   MVS1            RPXlite         \
54         CCM             IP860           NETPHONE        RPXlite_DW      \
55         cogent_mpc8xx   IVML24          NETTA           RRvision        \
56         ELPT860         IVML24_128      NETTA2          SM850           \
57         EP88x           IVML24_256      NETTA_ISDN      spc1920         \
58         ESTEEM192E      IVMS8           NETVIA          SPD823TS        \
59         ETX094          IVMS8_128       NETVIA_V2       svm_sc8xx       \
60         FADS823         IVMS8_256       NX823           SXNI855T        \
61         FADS850SAR      KUP4K           pcu_e           TOP860          \
62         FADS860T        KUP4X           QS823           TQM823L         \
63         FLAGADM         LANTEC          QS850           TQM823L_LCD     \
64         FPS850L         lwmon           QS860T          TQM850L         \
65         GEN860T         MBX             quantum         TQM855L         \
66         GEN860T_SC                                      TQM860L         \
67                                                         TQM885D         \
68                                                         uc100           \
69                                                         v37             \
70 "
71
72 #########################################################################
73 ## PPC4xx Systems
74 #########################################################################
75
76 LIST_4xx="      \
77         ADCIOP          AP1000          AR405           ASH405          \
78         bamboo          bubinga         CANBT           CMS700          \
79         CPCI2DP         CPCI405         CPCI4052        CPCI405AB       \
80         CPCI405DT       CPCI440         CPCIISER4       CRAYL1          \
81         csb272          csb472          DASA_SIM        DP405           \
82         DU405           ebony           ERIC            EXBITGEN        \
83         G2000           HH405           HUB405          JSE             \
84         KAREF           luan            METROBOX        MIP405          \
85         MIP405T         ML2             ml300           ocotea          \
86         OCRTC           ORSG            p3p440          PCI405          \
87         pcs440ep        PIP405          PLU405          PMC405          \
88         PPChameleonEVB  sbc405          sequoia         sequoia_nand    \
89         VOH405          VOM405          W7OLMC          W7OLMG          \
90         walnut          WUH405          XPEDITE1K       yellowstone     \
91         yosemite        yucca           bamboo          \
92 "
93
94 #########################################################################
95 ## MPC8220 Systems
96 #########################################################################
97
98 LIST_8220="     \
99         Alaska8220      Yukon8220                                       \
100 "
101
102 #########################################################################
103 ## MPC824x Systems
104 #########################################################################
105
106 LIST_824x="     \
107         A3000           barco           BMW             CPC45           \
108         CU824           debris          eXalion         HIDDEN_DRAGON   \
109                         MOUSSE          MUSENKI         MVBLUE          \
110         OXC             PN62            Sandpoint8240   Sandpoint8245   \
111         sbc8240         SL8245          utx8245                         \
112 "
113
114 #########################################################################
115 ## MPC8260 Systems (includes 8250, 8255 etc.)
116 #########################################################################
117
118 LIST_8260="     \
119         atc             cogent_mpc8260  CPU86           CPU87           \
120         ep8248          ep8260          ep82xxm         gw8260          \
121         hymod           IPHASE4539      ISPAN           MPC8260ADS      \
122         MPC8266ADS      MPC8272ADS      PM826           PM828           \
123         ppmc8260        Rattler8248     RPXsuper        rsdproto        \
124         sacsng          sbc8260         SCM             TQM8260_AC      \
125         TQM8260_AD      TQM8260_AE      ZPC1900                         \
126 "
127
128 #########################################################################
129 ## MPC83xx Systems (includes 8349, etc.)
130 #########################################################################
131
132 LIST_83xx="     \
133         TQM834x         MPC8349EMDS                                     \
134 "
135
136
137 #########################################################################
138 ## MPC85xx Systems (includes 8540, 8560 etc.)
139 #########################################################################
140
141 LIST_85xx="     \
142         MPC8540ADS      MPC8540EVAL     MPC8541CDS      MPC8548CDS      \
143         MPC8555CDS      MPC8560ADS      PM854           PM856           \
144         sbc8540         sbc8560         stxgp3          TQM8540         \
145         TQM8541         TQM8555         TQM8560                         \
146 "
147
148 #########################################################################
149 ## 74xx/7xx Systems
150 #########################################################################
151
152 LIST_74xx="     \
153         DB64360         DB64460         EVB64260        P3G4            \
154         PCIPPC2         PCIPPC6         ZUMA                            \
155 "
156
157 LIST_7xx="      \
158         BAB7xx          CPCI750         ELPPC           ppmc7xx         \
159 "
160
161 LIST_ppc="${LIST_5xx}  ${LIST_5xxx}             \
162           ${LIST_8xx}                           \
163           ${LIST_8220} ${LIST_824x} ${LIST_8260} \
164           ${LIST_83xx}                          \
165           ${LIST_85xx}                          \
166           ${LIST_4xx}                           \
167           ${LIST_74xx} ${LIST_7xx}"
168
169 #########################################################################
170 ## StrongARM Systems
171 #########################################################################
172
173 LIST_SA="assabet dnp1110 gcplus lart shannon"
174
175 #########################################################################
176 ## ARM7 Systems
177 #########################################################################
178
179 LIST_ARM7="     \
180         armadillo       B2              ep7312          evb4510         \
181         impa7           integratorap    ap7             ap720t          \
182         modnet50                                                        \
183 "
184
185 #########################################################################
186 ## ARM9 Systems
187 #########################################################################
188
189 LIST_ARM9="     \
190         at91rm9200dk    cmc_pu2                                         \
191         ap920t          ap922_XA10      ap926ejs        ap946es         \
192         ap966           cp920t          cp922_XA10      cp926ejs        \
193         cp946es         cp966           lpd7a400        mp2usb          \
194         mx1ads          mx1fs2          netstar         omap1510inn     \
195         omap1610h2      omap1610inn     omap730p2       sbc2410x        \
196         scb9328         smdk2400        smdk2410        trab            \
197         VCMA9           versatile       versatileab     versatilepb     \
198         voiceblue                                                       \
199 "
200
201 #########################################################################
202 ## ARM10 Systems
203 #########################################################################
204 LIST_ARM10="    \
205         integratorcp    cp1026                                          \
206 "
207
208 #########################################################################
209 ## ARM11 Systems
210 #########################################################################
211 LIST_ARM11="    \
212         cp1136          omap2420h4                                      \
213 "
214
215 #########################################################################
216 ## Xscale Systems
217 #########################################################################
218
219 LIST_pxa="      \
220         adsvix          cerf250         cradle          csb226          \
221         delta           innokom         lubbock         pleb2           \
222         pxa255_idp      wepep250        xaeniax         xm250           \
223         xsengine        zylonite                                        \
224 "
225
226 LIST_ixp="ixdp425       ixdpg425        pdnb3"
227
228
229 LIST_arm="      \
230         ${LIST_SA}                                                      \
231         ${LIST_ARM7} ${LIST_ARM9} ${LIST_ARM10} ${LIST_ARM11}           \
232         ${LIST_pxa} ${LIST_ixp}                                         \
233 "
234
235 #########################################################################
236 ## MIPS Systems         (default = big endian)
237 #########################################################################
238
239 LIST_mips4kc="incaip"
240
241 LIST_mips5kc="purple"
242
243 LIST_au1xx0="dbau1000 dbau1100 dbau1500 dbau1550 dbau1550_el gth2"
244
245 LIST_mips="${LIST_mips4kc} ${LIST_mips5kc} ${LIST_au1xx0}"
246
247 #########################################################################
248 ## MIPS Systems         (little endian)
249 #########################################################################
250
251 LIST_mips4kc_el=""
252
253 LIST_mips5kc_el=""
254
255 LIST_au1xx0_el="dbau1550_el"
256
257 LIST_mips_el="${LIST_mips4kc_el} ${LIST_mips5kc_el} ${LIST_au1xx0_el}"
258
259 #########################################################################
260 ## i386 Systems
261 #########################################################################
262
263 LIST_I486="sc520_cdp sc520_spunk sc520_spunk_rel"
264
265 LIST_x86="${LIST_I486}"
266
267 #########################################################################
268 ## NIOS Systems
269 #########################################################################
270
271 LIST_nios="     \
272         ADNPESC1                ADNPESC1_base_32                        \
273         ADNPESC1_DNPEVA2_base_32                                        \
274         DK1C20                  DK1C20_standard_32                      \
275         DK1S10                  DK1S10_standard_32 DK1S10_mtx_ldk_20    \
276 "
277
278 #########################################################################
279 ## Nios-II Systems
280 #########################################################################
281
282 LIST_nios2="    \
283         EP1C20          EP1S10          EP1S40                          \
284         PCI5441         PK1C20                                          \
285 "
286
287 #########################################################################
288 ## MicroBlaze Systems
289 #########################################################################
290
291 LIST_microblaze="       \
292         suzaku
293 "
294
295 #########################################################################
296 ## ColdFire Systems
297 #########################################################################
298
299 LIST_coldfire=" \
300         cobra5272       EB+MCF-EV123    EB+MCF-EV123_internal           \
301         M5271EVB        M5272C3         M5282EVB        TASREG          \
302         r5200           M5271EVB                                        \
303 "
304
305 #-----------------------------------------------------------------------
306
307 #----- for now, just run PPC by default -----
308 [ $# = 0 ] && set $LIST_ppc
309
310 #-----------------------------------------------------------------------
311
312 build_target() {
313         target=$1
314
315         ${MAKE} distclean >/dev/null
316         ${MAKE} ${target}_config
317
318         ${MAKE} ${JOBS} all 2>&1 >${LOG_DIR}/$target.MAKELOG \
319                                 | tee ${LOG_DIR}/$target.ERR
320
321         ${CROSS_COMPILE:-ppc_8xx-}size ${BUILD_DIR}/u-boot \
322                                 | tee -a ${LOG_DIR}/$target.MAKELOG
323 }
324
325 #-----------------------------------------------------------------------
326
327
328 for arg in $@
329 do
330         case "$arg" in
331         ppc|5xx|5xxx|8xx|8220|824x|8260|83xx|85xx|4xx|7xx|74xx| \
332         arm|SA|ARM7|ARM9|ARM10|ARM11|pxa|ixp| \
333         microblaze| \
334         mips|mips_el| \
335         nios|nios2| \
336         x86|I486| \
337         coldfire)
338                         for target in `eval echo '$LIST_'${arg}`
339                         do
340                                 build_target ${target}
341                         done
342                         ;;
343         *)              build_target ${arg}
344                         ;;
345         esac
346 done