fat: update
[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.4.1/bin/arm-none-linux-gnueabi-
20                 CROSS_COMPILER=/scratchbox/compilers/arm-linux-gnueabi-gcc4.4.1-glibc2.10.1-2009q3-93/bin/arm-none-linux-gnueabi-
21                 JOBS="-j 4"
22         fi
23         if [ "$USER" = "dofmind" ]; then
24                 CROSS_COMPILER=arm-none-linux-gnueabi-
25                 JOBS="-j 5"
26         fi
27         if [ "$USER" = "prom" ]; then
28                 CROSS_COMPILER=/opt/toolchains/arm-2009q3/bin/arm-none-linux-gnueabi-
29                 JOBS="-j 5"
30         fi
31         if [ "$USER" = "jaehoon" ]; then
32                 CROSS_COMPILER=/usr/local/arm/arm-2009q3/bin/arm-none-linux-gnueabi-
33                 JOBS="-j 5"
34         fi
35         if [ "$USER" = "leedonghwa" ]; then
36                 CROSS_COMPILER=/opt/toolchains/scratchbox/compilers/arm-linux-gnueabi-gcc4.4.1-glibc2.10.1-2009q3-93/bin/arm-none-linux-gnueabi-
37                 JOBS="-j 5"
38         fi
39         if [ "$USER" = "riverful" ]; then
40                 CROSS_COMPILER=/opt/arm-2009q3/bin/arm-none-linux-gnueabi-
41                 JOBS="-j 5"
42         fi
43         if [ "$USER" = "cwchoi00" ]; then
44                 CROSS_COMPILER=/opt/arm-2009q3/bin/arm-none-linux-gnueabi-
45                 JOBS="-j 5"
46         fi
47         if [ "$USER" = "donggeun" ]; then
48                 CROSS_COMPILER=/scratchbox/compilers/arm-linux-gnueabi-gcc4.4.1-glibc2.10.1-2009q3-93/bin/arm-none-linux-gnueabi-
49                 JOBS="-j 5"
50         fi
51         if [ "$USER" = "marek" ]; then
52                 CROSS_COMPILER=/home/marek/dev//arm-2009q3/bin/arm-none-linux-gnueabi-
53                 TARGET=${TARGET:-s5pc110}
54                 if [ ! -z "$DOCONFIG" ] ; then
55                         make clean clobber unconfig mrproper
56                         make ${TARGET}_universal_config
57                 fi
58                 JOBS="-j 2"
59         fi
60         if [ "$USER" = "lukma" ]; then
61                 CROSS_COMPILER=/home/lukma/work/arm-2009q3/bin/arm-none-eabi-
62                 JOBS="-j 5"
63         fi
64         if [ "$USER" = "mzx" ]; then
65                 CROSS_COMPILER=/opt/toolchains/arm-2009q3/bin/arm-none-linux-gnueabi-
66                 JOBS="-j 4"
67         fi
68 }
69
70 check_ipl()
71 {
72         if [ "$1" = "mmc" ]; then
73                 IPL="mmc"
74         else
75                 IPL="onenand"
76         fi
77 }
78
79 build_uboot()
80 {
81         if [ "$1" != "mmc" ]; then
82                 OPT=$*
83         fi
84         make ARCH=arm CROSS_COMPILE="$CCACHE $CROSS_COMPILER" $JOBS $OPT
85 }
86
87 make_evt_image()
88 {
89         set -x
90         SOC=`grep BOARD include/config.mk | awk -F'_' '{print $2}'`
91         IPL_PREFIX=${IPL}_ipl/${IPL}-ipl
92
93         if [ "$SOC" = "c210" ]; then
94                 echo "Use the s-boot instead"
95         elif [ "$SOC" = "c110" ]; then
96                 # C110
97                 cat ${IPL_PREFIX}-16k-evt0.bin u-boot.bin > u-boot-"$IPL"-evt0.bin
98                 cat ${IPL_PREFIX}-16k-fused.bin u-boot.bin > u-boot-"$IPL"-evt1-fused.bin
99                 if [ "$IPL" = "mmc" ]; then
100                         cat ${IPL_PREFIX}-8k-fused.bin u-boot.bin > u-boot-"$IPL"-evt1-fused.bin
101                 fi
102                 # To distinguish previous u-boot-onenand.bin, it uses the evt1 suffix
103                 cp u-boot-"$IPL".bin u-boot-"$IPL"-evt1.bin
104         fi
105 }
106
107 check_size()
108 {
109         SIZEFILE=".oldsize"
110         if [ -e "$PWD/$SIZEFILE" ]; then
111                 OLDSIZE=`cat $SIZEFILE`
112         else
113                 OLDSIZE=0
114         fi
115         SIZE=`ls -al u-boot.bin | awk -F' ' '{printf $5}'`
116         if [ "$SIZE" -gt "$OLDSIZE" ]; then
117                 echo "New size $SIZE is bigger than prev $OLDSIZE"
118                 echo "$SIZE" > $SIZEFILE
119         elif [ "$SIZE" -lt "$OLDSIZE" ]; then
120                 echo "Good reduced size $SIZE is less than prev $OLDSIZE"
121                 echo "$SIZE" > $SIZEFILE
122         else
123                 echo "Size is $SIZE"
124         fi
125 }
126
127 check_ccache
128 check_users
129 #check_ipl $1
130
131 build_uboot $*
132
133 #make_evt_image
134 check_size
135
136 if [ "$IPL" != "mmc" -a -e "$PWD/u-boot-onenand.bin" ]; then
137         size=`ls -al u-boot-onenand.bin | awk -F' ' '{printf $5}'`
138         if [ "$size" -ge "262144" ]; then
139                 echo "u-boot-onenand.bin execced the 256KiB 262144 -> $size"
140         fi
141 fi
142
143 if [ "$USER" = "kmpark" ]; then
144         ls -al u-boot*.bin
145         cp -f u-boot.bin /tftpboot
146         pushd ../images
147         ./system.sh
148         popd
149 elif [ "$USER" = "dofmind" ]; then
150         tar cvf system_uboot.tar u-boot.bin
151         mv -f system_uboot*.tar /home/release
152 elif [ "$USER" = "prom" ]; then
153         tar cvf system_uboot.tar u-boot.bin
154         mv -f system_uboot* /home/share/Work/bin
155 elif [ "$USER" = "jaehoon" ]; then
156         tar cvf system_uboot.tar u-boot.bin
157         mv -f system_uboot* /home/jaehoon/shared/new/
158 elif [ "$USER" = "leedonghwa" ]; then
159         tar cvf system_uboot.tar u-boot.bin
160         mv -f system_uboot* /home/leedonghwa/Build-Binaries/
161 elif [ "$USER" = "cwchoi00" ]; then
162         tar cvf system_uboot.tar u-boot.bin
163 elif [ "$USER" = "donggeun" ]; then
164         tar cvf system_uboot.tar u-boot.bin
165         mv -f system_uboot*.tar /home/donggeun/workspace/images
166 elif [ "$USER" = "marek" ]; then
167         BOARD=`grep BOARD include/config.mk | awk -F'= ' '{printf $2}'`
168         DATE=`date +%Y%m%d`
169         tar cvf system_uboot.tar u-boot.bin
170         echo $BOARD
171         if [ "$BOARD" = "universal_c110" ] ; then
172                 cp system_uboot.tar ../image/w1/uboot-c110-`date +%Y%m%d`-g`git log --pretty=oneline -1 --abbrev-commit | cut -c 1-7`.tar
173         fi
174         if [ "$BOARD" = "universal_c210" ] ; then
175                 cp system_uboot.tar ../image/w1/uboot-c210-`date +%Y%m%d`-g`git log --pretty=oneline -1 --abbrev-commit | cut -c 1-7`.tar
176         fi
177 elif [ "$USER" = "lukma" ]; then
178         tar cvf system_uboot.tar u-boot.bin
179         cp system_uboot.tar ../image/w1/uboot-g`git log --pretty=oneline -1 --abbrev-commit | cut -c 1-7`-`date +%Y%m%d`.tar
180 elif [ "$USER" = "mzx" ]; then
181         tar cvf u-boot-system.tar u-boot.bin
182         cp u-boot-system.tar /home/smb/
183 fi