comparison libtomcrypt/build.sh @ 1471:6dba84798cd5

Update to libtomcrypt 1.18.1, merged with Dropbear changes
author Matt Johnston <matt@ucc.asn.au>
date Fri, 09 Feb 2018 21:44:05 +0800
parents 0cbe8f6dbf9e
children
comparison
equal deleted inserted replaced
1470:8bba51a55704 1471:6dba84798cd5
1 #!/bin/bash 1 #!/bin/bash
2 echo "$1 ($2, $3)..." 2 echo "$1 ($2, $3)..."
3
3 make clean 1>/dev/null 2>/dev/null 4 make clean 1>/dev/null 2>/dev/null
5
4 echo -n "building..." 6 echo -n "building..."
5 CFLAGS="$2 $CFLAGS $4" EXTRALIBS="$5" make -j4 -f $3 test tv_gen 1>gcc_1.txt 2>gcc_2.txt || (echo "build $1 failed see gcc_2.txt for more information" && cat gcc_2.txt && exit 1) 7
8 if [ -f /proc/cpuinfo ]
9 then
10 MAKE_JOBS=$(( ($(cat /proc/cpuinfo | grep -E '^processor[[:space:]]*:' | tail -n -1 | cut -d':' -f2) + 1) * 2 + 1 ))
11 else
12 MAKE_JOBS=8
13 fi
14
15 CFLAGS="$2 $CFLAGS $4" EXTRALIBS="$5" make -j$MAKE_JOBS -f $3 all_test 1>gcc_1.txt 2>gcc_2.txt
16 mret=$?
17 cnt=$(wc -l < gcc_2.txt)
18 # ignore 1 line since ar prints to stderr instead of stdout and ar is called for
19 # $(LIBNAME)
20 if [[ $mret -ne 0 ]] || [[ $cnt -gt 1 ]]; then
21 echo "build $1 failed! printing gcc_2.txt now for convenience"
22 cat gcc_2.txt
23 exit 1
24 fi
25
6 echo -n "testing..." 26 echo -n "testing..."
27
7 if [ -a test ] && [ -f test ] && [ -x test ]; then 28 if [ -a test ] && [ -f test ] && [ -x test ]; then
8 ((./test >test_std.txt 2>test_err.txt && ./tv_gen > tv.txt) && echo "$1 test passed." && echo "y" > testok.txt) || (echo "$1 test failed" && cat test_err.txt && exit 1) 29 ((./test >test_std.txt 2>test_err.txt && ./tv_gen > tv.txt) && echo "$1 test passed." && echo "y" > testok.txt) || (echo "$1 test failed, look at test_err.txt or tv.txt" && exit 1)
9 if find *_tv.txt -type f 1>/dev/null 2>/dev/null ; then 30 if find *_tv.txt -type f 1>/dev/null 2>/dev/null ; then
10 for f in *_tv.txt; do if (diff --ignore-case $f notes/$f) then true; else (echo "tv_gen $f failed" && rm -f testok.txt && exit 1); fi; done 31 for f in *_tv.txt; do
32 # check for lines starting with '<' ($f might be a subset of notes/$f)
33 difftroubles=$(diff -i -w -B $f notes/$f | grep '^<')
34 if [ -n "$difftroubles" ]; then
35 echo "FAILURE: $f"
36 diff -i -w -B $f notes/$f
37 echo "tv_gen $f failed" && rm -f testok.txt && exit 1
38 else
39 true
40 fi
41 done
11 fi 42 fi
12 fi 43 fi
44
45
13 if [ -a testok.txt ] && [ -f testok.txt ]; then 46 if [ -a testok.txt ] && [ -f testok.txt ]; then
47 if [ "$LTC_COVERAGE" != "" ]; then
48 ./coverage_more.sh > test_coverage_more.txt || exit 1
49 lcov_opts="--capture --no-external --directory src -q"
50 lcov_out=$(echo coverage_$1_$2_$3 | tr ' -=+' '_')".info"
51 lcov $lcov_opts --output-file $lcov_out
52 fi
14 exit 0 53 exit 0
15 fi 54 fi
16 exit 1 55 exit 1
17 56
18 # $Source: /cvs/libtom/libtomcrypt/build.sh,v $ 57 # ref: $Format:%D$
19 # $Revision: 1.9 $ 58 # git commit: $Format:%H$
20 # $Date: 2006/03/18 14:10:55 $ 59 # commit time: $Format:%ai$