Merge with /home/tur/proj/v38b/u-boot
[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         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          alpr            AP1000          AR405           \
78         ASH405          bamboo          bubinga         CANBT           \
79         CMS700          CPCI2DP         CPCI405         CPCI4052        \
80         CPCI405AB       CPCI405DT       CPCI440         CPCIISER4       \
81         CRAYL1          csb272          csb472          DASA_SIM        \
82         DP405           DU405           ebony           ERIC            \
83         EXBITGEN        G2000           HH405           HUB405          \
84         JSE             KAREF           luan            METROBOX        \
85         MIP405          MIP405T         ML2             ml300           \
86         ocotea          OCRTC           ORSG            p3p440          \
87         PCI405          pcs440ep        PIP405          PLU405          \
88         PMC405          PPChameleonEVB  sbc405          sequoia         \
89         sequoia_nand    VOH405          VOM405          W7OLMC          \
90         W7OLMG          walnut          WUH405          XPEDITE1K       \
91         yellowstone     yosemite        yucca                           \
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     MPC8349ITX      MPC8360EMDS     \
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         p3m7448         PCIPPC2         PCIPPC6         ZUMA            \
155 "
156
157 LIST_7xx="      \
158         BAB7xx          CPCI750         ELPPC           p3m750          \
159         ppmc7xx                                                         \
160 "
161
162 LIST_ppc="${LIST_5xx}  ${LIST_5xxx}             \
163           ${LIST_8xx}                           \
164           ${LIST_8220} ${LIST_824x} ${LIST_8260} \
165           ${LIST_83xx}                          \
166           ${LIST_85xx}                          \
167           ${LIST_4xx}                           \
168           ${LIST_74xx} ${LIST_7xx}"
169
170 #########################################################################
171 ## StrongARM Systems
172 #########################################################################
173
174 LIST_SA="assabet dnp1110 gcplus lart shannon"
175
176 #########################################################################
177 ## ARM7 Systems
178 #########################################################################
179
180 LIST_ARM7="     \
181         armadillo       B2              ep7312          evb4510         \
182         impa7           integratorap    ap7             ap720t          \
183         modnet50                                                        \
184 "
185
186 #########################################################################
187 ## ARM9 Systems
188 #########################################################################
189
190 LIST_ARM9="     \
191         at91rm9200dk    cmc_pu2                                         \
192         ap920t          ap922_XA10      ap926ejs        ap946es         \
193         ap966           cp920t          cp922_XA10      cp926ejs        \
194         cp946es         cp966           lpd7a400        mp2usb          \
195         mx1ads          mx1fs2          netstar         omap1510inn     \
196         omap1610h2      omap1610inn     omap730p2       sbc2410x        \
197         scb9328         smdk2400        smdk2410        trab            \
198         VCMA9           versatile       versatileab     versatilepb     \
199         voiceblue                                                       \
200 "
201
202 #########################################################################
203 ## ARM10 Systems
204 #########################################################################
205 LIST_ARM10="    \
206         integratorcp    cp1026                                          \
207 "
208
209 #########################################################################
210 ## ARM11 Systems
211 #########################################################################
212 LIST_ARM11="    \
213         cp1136          omap2420h4                                      \
214 "
215
216 #########################################################################
217 ## Xscale Systems
218 #########################################################################
219
220 LIST_pxa="      \
221         adsvix          cerf250         cradle          csb226          \
222         delta           innokom         lubbock         pleb2           \
223         pxa255_idp      wepep250        xaeniax         xm250           \
224         xsengine        zylonite                                        \
225 "
226
227 LIST_ixp="ixdp425       ixdpg425        pdnb3"
228
229
230 LIST_arm="      \
231         ${LIST_SA}                                                      \
232         ${LIST_ARM7} ${LIST_ARM9} ${LIST_ARM10} ${LIST_ARM11}           \
233         ${LIST_pxa} ${LIST_ixp}                                         \
234 "
235
236 #########################################################################
237 ## MIPS Systems         (default = big endian)
238 #########################################################################
239
240 LIST_mips4kc="incaip"
241
242 LIST_mips5kc="purple"
243
244 LIST_au1xx0="dbau1000 dbau1100 dbau1500 dbau1550 dbau1550_el gth2"
245
246 LIST_mips="${LIST_mips4kc} ${LIST_mips5kc} ${LIST_au1xx0}"
247
248 #########################################################################
249 ## MIPS Systems         (little endian)
250 #########################################################################
251
252 LIST_mips4kc_el=""
253
254 LIST_mips5kc_el=""
255
256 LIST_au1xx0_el="dbau1550_el"
257
258 LIST_mips_el="${LIST_mips4kc_el} ${LIST_mips5kc_el} ${LIST_au1xx0_el}"
259
260 #########################################################################
261 ## i386 Systems
262 #########################################################################
263
264 LIST_I486="sc520_cdp sc520_spunk sc520_spunk_rel"
265
266 LIST_x86="${LIST_I486}"
267
268 #########################################################################
269 ## NIOS Systems
270 #########################################################################
271
272 LIST_nios="     \
273         ADNPESC1                ADNPESC1_base_32                        \
274         ADNPESC1_DNPEVA2_base_32                                        \
275         DK1C20                  DK1C20_standard_32                      \
276         DK1S10                  DK1S10_standard_32 DK1S10_mtx_ldk_20    \
277 "
278
279 #########################################################################
280 ## Nios-II Systems
281 #########################################################################
282
283 LIST_nios2="    \
284         EP1C20          EP1S10          EP1S40                          \
285         PCI5441         PK1C20                                          \
286 "
287
288 #########################################################################
289 ## MicroBlaze Systems
290 #########################################################################
291
292 LIST_microblaze="       \
293         suzaku
294 "
295
296 #########################################################################
297 ## ColdFire Systems
298 #########################################################################
299
300 LIST_coldfire=" \
301         cobra5272       EB+MCF-EV123    EB+MCF-EV123_internal           \
302         idmr            M5271EVB        M5272C3         M5282EVB        \
303         TASREG          r5200           M5271EVB                        \
304 "
305
306 #########################################################################
307 ## AVR32 Systems
308 #########################################################################
309
310 LIST_avr32="atstk1002"
311
312 #-----------------------------------------------------------------------
313
314 #----- for now, just run PPC by default -----
315 [ $# = 0 ] && set $LIST_ppc
316
317 #-----------------------------------------------------------------------
318
319 build_target() {
320         target=$1
321
322         ${MAKE} distclean >/dev/null
323         ${MAKE} ${target}_config
324
325         ${MAKE} ${JOBS} all 2>&1 >${LOG_DIR}/$target.MAKELOG \
326                                 | tee ${LOG_DIR}/$target.ERR
327
328         ${CROSS_COMPILE:-ppc_8xx-}size ${BUILD_DIR}/u-boot \
329                                 | tee -a ${LOG_DIR}/$target.MAKELOG
330 }
331
332 #-----------------------------------------------------------------------
333
334
335 for arg in $@
336 do
337         case "$arg" in
338         ppc|5xx|5xxx|8xx|8220|824x|8260|83xx|85xx|4xx|7xx|74xx| \
339         arm|SA|ARM7|ARM9|ARM10|ARM11|pxa|ixp| \
340         microblaze| \
341         mips|mips_el| \
342         nios|nios2| \
343         x86|I486| \
344         coldfire| \
345         avr32)
346                         for target in `eval echo '$LIST_'${arg}`
347                         do
348                                 build_target ${target}
349                         done
350                         ;;
351         *)              build_target ${arg}
352                         ;;
353         esac
354 done