Merge branch 'master' of http://git.denx.de/u-boot
[kernel/u-boot.git] / build.sh
1 #!/bin/sh
2
3 # Set default cross compiler
4 CROSS_COMPILER=/opt/toolchains/arm-2008q3/bin/arm-none-linux-gnueabi-
5
6 # Check this system has ccache
7 check_ccache()
8 {
9         type ccache
10         if [ "$?" -eq "0" ]; then
11                 CCACHE=ccache
12         fi
13 }
14
15 check_users()
16 {
17         USER=`whoami`
18         if [ "$USER" = "kmpark" ]; then
19                 CROSS_COMPILER=/pub/toolchains/gcc-4.3.2/bin/arm-none-linux-gnueabi-
20                 JOBS="-j 4"
21         fi
22         if [ "$USER" = "dofmind" ]; then
23                 CROSS_COMPILER=/opt/toolchains/arm-2008q3/bin/arm-none-linux-gnueabi-
24                 JOBS="-j 5"
25         fi
26         if [ "$USER" = "prom" ]; then
27                 CROSS_COMPILER=/opt/toolchains/arm-2008q3/bin/arm-none-linux-gnueabi-
28                 JOBS="-j 5"
29         fi
30         if [ "$USER" = "jaehoon" ]; then
31                 CROSS_COMPILER=/usr/local/arm/arm-2008q3/bin/arm-none-linux-gnueabi-
32                 JOBS="-j 5"
33         fi
34 }
35
36 build_uboot()
37 {
38         make ARCH=arm CROSS_COMPILE="$CCACHE $CROSS_COMPILER" $JOBS $*
39 }
40
41 make_evt_image()
42 {
43         cat onenand_ipl/onenand-ipl-16k-evt0.bin u-boot.bin > u-boot-onenand-evt0.bin
44         # To distinguish previous u-boot-onenand.bin, it uses the evt1 suffix
45         cp u-boot-onenand.bin u-boot-onenand-evt1.bin
46 }
47
48 check_ccache
49 check_users
50
51 build_uboot $*
52
53 make_evt_image
54
55 size=`ls -al u-boot-onenand.bin | awk -F' ' '{printf $5}'`
56 if [ "$size" -ge "262144" ]; then
57         echo "u-boot-onenand.bin execced the 256KiB 262144 -> $size"
58         exit
59 fi
60
61 if [ "$USER" = "kmpark" ]; then
62         ls -al u-boot.bin u-boot-onenand.bin u-boot-onenand-evt0.bin
63         # To prevent wrong program
64         cp -f u-boot-onenand-evt0.bin u-boot-onenand.bin
65         cp -f u-boot.bin u-boot-onenand.bin u-boot-onenand-evt0.bin /tftpboot
66         ls -al onenand_ipl
67         pushd ../images
68         ./system.sh
69         popd
70 elif [ "$USER" = "dofmind" ]; then
71         tar cvf system_uboot_evt0.tar u-boot-onenand-evt0.bin
72         tar cvf system_uboot_evt1.tar u-boot-onenand-evt1.bin
73         mv -f system_uboot_*.tar /home/work
74 elif [ "$USER" = "prom" ]; then
75         tar cvf system_uboot_evt0.tar u-boot-onenand-evt0.bin
76         tar cvf system_uboot_evt1.tar u-boot-onenand-evt1.bin
77         mv -f system_uboot* /home/share/Work/bin
78 fi