blob: 8daccdf8410566c00c11c63b084e5333a964a3f0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
#!/bin/bash
source /etc/catalyst/catalyst.conf
mydate=`date +%Y%m%d`
prepare_confs() {
local arch=$1
local flavor=$2
for s in 1 2 3; do
cat stage${s}-${arch}_hardfp-${flavor}.conf.template | \
sed -e "s/\(^version_stamp.*$\)/\1-${mydate}/" > stage${s}-${arch}_hardfp-${flavor}.conf
done
}
banner() {
cat << EOF | tee -a zzz.log > stage$1-$2_hardfp-$3.log
************************************************************************
* stage$1-$2_hardfp-$3
************************************************************************"
EOF
}
do_stages() {
local arch=$1
local flavor=$2
for s in 1 2 3; do
local tgpath="${storedir}/builds/${flavor}/${arch}"
local target="stage${s}-${arch}_hardfp-${flavor}-${mydate}.tar.bz2"
local tglink="stage${s}-${arch}_hardfp-${flavor}.tar.bz2"
if [[ ! -f "${tgpath}/${tglink}" ]]; then
touch stage${s}-${arch}_hardfp-${flavor}.log
echo "!!! ${target} at ${tgpath} doesn't exit" \
| tee -a zzz.log \
> stage${s}-${arch}_hardfp-${flavor}.err
return 1
fi
banner ${s} ${arch} ${flavor}
catalyst -f stage${s}-${arch}_hardfp-${flavor}.conf \
| tee -a zzz.log \
> stage${s}-${arch}_hardfp-${flavor}.log \
2> stage${s}-${arch}_hardfp-${flavor}.err
if [[ -f "${tgpath}/${target}" ]]; then
rm -f "${tgpath}/${tglink}"
ln -s ${target} "${tgpath}/${tglink}"
else
echo "!!! ${target} was not generated" \
| tee -a zzz.log \
>stage${s}-${arch}_hardfp-${flavor}.err
return 1
fi
done
return 0
}
#
# approximate timings:
#
# catalyst -s current 3 minutes
# catalyst -f stage1 130 minutes
#
main() {
>zzz.log
catalyst -s current | tee -a zzz.log >snapshot.log 2>snapshot.err
for arch in armv7a; do
for flavor in hardened; do
prepare_confs ${arch} ${flavor}
done
done
for arch in armv7a; do
for flavor in hardened; do
do_stages ${arch} ${flavor}
ret=$?
if [[ $? == 1 ]]; then
echo "FAILURE at ${arch} ${flavor}" | tee zzz.log
return 1
fi
done
done
}
main $1 &
|