For runtest-writev.
[nethome.git] / bin / build
1 #! /bin/bash
2
3 output=
4 opts=
5 if [ "$1" = "-v" ];then
6         opts="-v"
7         shift
8 else
9         output="/tmp/build-`date --iso`"
10         exec >>$output 2>&1
11 fi
12
13 PS1=x
14 . $HOME/.bashrc
15
16 set -x
17 echo "$0 `date --iso=seconds` start"
18 I=Build
19
20 # FIXME: Running tasks get broken.
21 find $HOME/.hammock-result -mindepth 1 -maxdepth 1 -type d | xargs rm -rf
22
23 function run
24 {
25   mockrun fedora-15-x86_64 "cd $PWD; $*"
26 }
27
28 for i in gdb binutils;do
29   new=$i-cvs-master-new
30   cd $HOME/redhat
31   rm -rf $new
32   mkdir $new
33   cd $new
34   cvs -d :ext:jkratoch@sourceware.org:/cvs/src co $i
35   rc=$?
36   cd ..
37   if [ $rc -eq 0 -a "`echo $new/*`" = "$new/src" ];then
38     rm -rf $i-cvs-master
39     mv $new/src $i-cvs-master
40     rmdir $new
41   fi
42   cd $HOME/redhat/$i-cvs-master
43   cvs update -A
44   cd ..
45   rm -rf $i-cvs-clean
46   cp -a $i-cvs-master $i-cvs-clean
47   cd $i-cvs-clean
48   run errs12
49   ctags
50 done
51
52 cd $HOME/redhat/binutils-master
53 git pull
54
55 cd $HOME/redhat/binutils-clean
56 git pull
57 ctags
58 run make
59
60 cd $HOME/redhat/binutils-clean-m32
61 git pull
62 ctags
63 run make
64
65 cd $HOME/redhat/archer-master
66 git pull origin
67 git pull gdb
68
69 for i in 71 70;do
70         cd $HOME/redhat/gdb-master$i
71         git pull
72 done
73
74 for i in "" 72;do       # 71 70
75         cd $HOME/redhat/gdb-master$i
76         git pull
77
78         cd $HOME/redhat/gdb-clean$i
79         git pull
80         ctags
81         (cd gdb; ctags)
82         run make
83         rm -f gdb/gdb-clean
84         cp -p gdb/gdb gdb/gdb-clean
85 done
86
87 cd $HOME/redhat/gdb-clean-m32
88 git pull
89 ctags
90 (cd gdb; ctags)
91 run make
92 rm -f gdb/gdb-clean
93 cp -p gdb/gdb gdb/gdb-clean
94
95 cd $HOME/redhat/glibc
96 git pull
97 (cd $HOME/redhat/glibc; ctags)
98 rm -rf $HOME/redhat/glibc-build
99 mkdir $HOME/redhat/glibc-build
100 (cd $HOME/redhat/glibc-build
101  set -e
102  run ../glibc/configure --prefix=$HOME/redhat/glibc-root
103  run make
104  rm -rf $HOME/redhat/glibc-root
105  mkdir $HOME/redhat/glibc-root
106  run make install
107  )
108
109 for d in f15 f14 f13 rawhide;do
110         hammock -c fedoragdb -i $I-fedoragdb-$d -d $d
111 done
112 ### hammock -c fedoragdb -d rawhide --cd f12! -i $I-fedoragdb-f12-on-rawhide
113
114 ### hammock -c rhelgdb -i $I-rhelgdb-rhel6 -d rhel6
115
116 cd
117 for i in \
118         gdbcvs                                  \
119         binutilscvs                             \
120         archer-jankratochvil-watchpoint2        \
121         archer-jankratochvil-vla                \
122 ; do
123         hammock -c $i -i $I-$i-f15 -d f15
124 done
125 #       archer-tromey-threaded-dwarf            \
126 #       archer-tromey-python                    \
127 #       archer-pmuldoon-next-over-throw2        \
128 #       archer-jankratochvil-ifunc              \
129
130 for d in f15 f14 f13 rawhide;do
131         hammock -c gdbcvs -i $I-gdbcvs-$d -d $d
132 done
133
134 ### for d in f13 f12;do
135 ###     hammock -c gdbcvs --branch gdb_7_1-branch -i $I-gdb71cvs-f12 -d f12
136 ### done
137
138 ### for d in f13 rawhide rhel6;do
139 ### for i in \
140 ###     gdbcvs                                  \
141 ###     archer-jankratochvil-fedora13           \
142 ### ; do
143 ###     hammock -c $i -i $I-$i-$d -d $d
144 ### done
145 ### done
146
147 cd $HOME/redhat/linux-2.6
148 git fetch --all
149 git pull
150 ctags
151
152 cd $HOME/redhat/gccgit
153 git pull
154 ctags
155 (cd gcc;ctags)
156
157 for gcc in gcchead gcc46 gcc45 gcc44;do
158 (
159 set -e
160 cd $HOME/redhat/${gcc}
161 svn update
162 svn status
163 ctags
164 cd gcc; ctags
165 root=$HOME/redhat/${gcc}-root
166 rm -rf $HOME/redhat/${gcc}-build
167 mkdir $HOME/redhat/${gcc}-build
168 # -j1 for: /usr/bin/install: cannot create regular file `/home/jkratoch/redhat/${gcc}-root/lib/../lib64/./libiberty.an': File exists
169 # mockrun fedora-rawhide-x86_64 "cd $HOME/redhat/${gcc}-build; errs12 --origss -m ../${gcc}/configure --prefix=$root --disable-werror --enable-languages=c,c++,fortran; rm -rf $root; mkdir $root; errs3 -j1"
170 cd $HOME/redhat/${gcc}-build
171 # gcc44+gcc45: sinput.adb:776:19: deallocation from empty storage pool
172 # /usr/bin/ld: libbackend.a(graphite.o): undefined reference to symbol 'ppl_finalize' + /usr/bin/ld: note: 'ppl_finalize' is defined in DSO /usr/lib64/libppl_c.so.4 so try adding it to the linker command line
173 run errs12 --origss -m ../${gcc}/configure --prefix=$root --disable-werror --enable-languages=c,c++,fortran,java$(test $gcc = gcchead -o $gcc = gcc46 && echo ,ada) $(test $gcc = gcc44 && echo --without-cloog) --with-ecj-jar=/usr/share/java/eclipse-ecj.jar
174 rm -rf $root
175 mkdir $root
176 run errs3 -j1
177
178 cd
179 # hammock -c gdbcvs -i $I-gdbcvs${gcc}-f14 -d f14 -p $root/bin -a x86_64
180 )
181 done
182
183 #hammock -c gdbcvs -i $I-gdbcvs-valgrind-f15 -d f15 --valgrind
184
185 diffgdbdaymail
186
187 echo "$0 `date --iso=seconds` done"