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