blob: 916df2e2fa8e06a741533a77e363fe42c5d07256 (
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
|
#!/bin/bash
log_file="$(pwd)/tests.log"
dir=../..
argument=( --without-cli --with-cli=linenoise --with-cli=editline --enable-debug --with-mini-gmp
--enable-man-doc --with-xtables --with-json)
ok=0
failed=0
[ -f "$log_file" ] && rm -rf "$log_file"
tmpdir=$(mktemp -d)
if [ ! -w "$tmpdir" ] ; then
echo "Failed to create tmp file" >&2
exit 0
fi
git clone "$dir" "$tmpdir" &>>"$log_file"
cd "$tmpdir" || exit
if ! autoreconf -fi &>>"$log_file" ; then
echo "Something went wrong. Check the log '${log_file}' for details."
exit 1
fi
if ! ./configure &>>"$log_file" ; then
echo "Something went wrong. Check the log '${log_file}' for details."
exit 1
fi
echo "Testing build with distcheck"
if ! make distcheck &>>"$log_file" ; then
echo "Something went wrong. Check the log '${log_file}' for details."
exit 1
fi
echo -en "\033[1A\033[K"
echo "Build works. Now, testing compile options"
for var in "${argument[@]}" ; do
echo "[EXECUTING] Testing compile option $var"
./configure "$var" &>>"$log_file"
make -j 8 &>>"$log_file"
rt=$?
echo -en "\033[1A\033[K" # clean the [EXECUTING] foobar line
if [ $rt -eq 0 ] ; then
echo "[OK] Compile option $var works."
((ok++))
else
echo "[FAILED] Compile option $var does not work. Check log for details."
((failed++))
fi
done
rm -rf "$tmpdir"
echo "results: [OK] $ok [FAILED] $failed [TOTAL] $((ok+failed))"
[ "$failed" -eq 0 ]
|