source: trunk/test/testcompile.sh @ 474

Last change on this file since 474 was 474, checked in by katerina, 7 years ago

Fix for ticket #372 (Replace obsolete smatch by clang in test suite).

File size: 26.8 KB
Line 
1#! /bin/sh
2
3#
4# Copyright Rainer Wichmann (2006)
5#
6# License Information:
7# This program is free software; you can redistribute it and/or modify
8# it under the terms of the GNU General Public License as published by
9# the Free Software Foundation; either version 2 of the License, or
10# (at your option) any later version.
11#
12# This program is distributed in the hope that it will be useful,
13# but WITHOUT ANY WARRANTY; without even the implied warranty of
14# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15# GNU General Public License for more details.
16#
17# You should have received a copy of the GNU General Public License
18# along with this program; if not, write to the Free Software
19# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20#
21
22# dnmalloc + cppcheck + flawfinder + (38 * 2) - 8
23MAXTEST=79; export MAXTEST
24
25run_dnmalloc ()
26{
27    fail=0
28    if test x$1 = x0; then
29        [ -z "$verbose" ]     ||  log_msg_ok  "configure...";
30        $MAKE clean > /dev/null 2>> test_log
31        $MAKE test_dnmalloc > /dev/null 2>> test_log
32        if test x$? = x0; then
33            [ -z "$verbose" ] || log_msg_ok   "make test_dnmalloc...";
34        else
35            [ -z "$quiet" ] &&   log_msg_fail "make test_dnmalloc...";
36            fail=1
37        fi
38    else
39        [ -z "$quiet" ] &&       log_msg_fail "configure...";
40        if [ x"$3" = xskip ]; then
41            [ -z "$quiet" ] && log_skip $2 ${MAXTEST} "test dnmalloc";
42        fi
43        fail=1
44    fi
45    if [ $fail -eq 1 ]; then
46        [ -z "$quiet" ] && log_fail $2 ${MAXTEST} "test dnmalloc";
47        return 1
48    fi
49    #
50    fail=0
51    ./test_dnmalloc >/dev/null
52    if test x$? = x0; then
53        [ -z "$verbose" ] || log_msg_ok   "run 1 completed...";
54        ./test_dnmalloc 300 12 3000 150000 400 >/dev/null
55        if test x$? = x0; then
56            [ -z "$verbose" ] || log_msg_ok   "run 2 completed...";
57            ./test_dnmalloc 1 1 4000 10000000 1000 >/dev/null
58            if test x$? = x0; then
59                [ -z "$verbose" ] || log_msg_ok   "run 3 completed...";
60                ./test_dnmalloc 1 1 4000 10000000 1000 >/dev/null
61                if test x$? = x0; then
62                    [ -z "$verbose" ] || log_msg_ok   "run 4 completed...";
63                else
64                    fail=1
65                fi
66            else
67                fail=1
68            fi
69        else
70            fail=1
71        fi
72    else
73        fail=1
74    fi
75    #
76    if test x$fail = x0; then
77        [ -z "$quiet" ] &&     log_ok   $2 ${MAXTEST} "test dnmalloc";
78        return 0
79    else
80        [ -z "$quiet" ] && log_fail $2 ${MAXTEST} "test dnmalloc";
81        return 1
82    fi
83}
84
85run_cppcheck ()
86{
87    #
88    CPC=`find_path cppcheck`
89    #
90    if [ -z "$CPC" ]; then
91        log_skip $num ${MAXTEST} 'check w/cppcheck (not in PATH)'
92        return 0
93    fi
94    #
95    cd src/
96    stat=`cppcheck --quiet --inline-suppr --force -j 4 --template="{file},{line},{severity},{id},{message}" -I. -I.. -I../include sh_*.c samhain.c slib.c dnmalloc.c zAVLTree.c trustfile.c rijndael-*.c bignum.c 2>&1 | wc -l`
97    if [ $stat -ne 0 ]; then
98        cppcheck --quiet --inline-suppr --force -j 4 --template="{file},{line},{severity},{id},{message}" -I. -I.. -I../include sh_*.c samhain.c slib.c dnmalloc.c zAVLTree.c trustfile.c rijndael-*.c bignum.c >>../test_log 2>&1
99        retval=1
100        [ -z "$quiet" ] && log_fail $2 ${MAXTEST} "check w/cppcheck";
101    else
102        retval=0
103        [ -z "$quiet" ] &&     log_ok   $2 ${MAXTEST} "check w/cppcheck";
104    fi
105    cd ..
106    return $retval
107}
108
109run_flawfinder ()
110{
111    flawfinder --minlevel=3 --quiet src/s*.c | \
112        egrep '^No hits found.' >/dev/null 2>&1
113    if [ $? -eq 0 ]; then
114        [ -z "$quiet" ] &&     log_ok   $2 ${MAXTEST} "$TEST";
115    else
116        flawfinder --minlevel=3 --quiet src/s*.c >test_log 2>&1
117        [ -z "$quiet" ] && log_fail $2 ${MAXTEST} "$TEST";
118        return 1
119    fi
120}
121
122run_clang () 
123{
124    export CDIR=`pwd`;
125
126    if [ -z "$doall" ]; then
127        [ -z "$quiet" ] && log_skip $2 ${MAXTEST} "$TEST (clang)";
128        return 0
129    fi
130
131    CLANGPATH=`find_path clang`
132    if [ -n "$CLANGPATH" ]; then
133        CLANG_CC="$CLANGPATH"; export CLANG_CC
134    else
135        [ -z "$quiet" ] && log_skip $2 ${MAXTEST} "$TEST (clang)";
136        return 0
137    fi
138
139    SAVE_TEST="$TEST"
140    TEST="$TEST (clang)"
141    testmake $1 $2
142    retval=$?
143    CLANG_CC=""; export CLANG_CC
144    TEST="$SAVE_TEST"
145    return $retval
146}
147
148testmake ()
149{
150        fail=0
151        #
152        # Compiler warnings can be OS specific, but at least
153        # on Linux there should be none
154        #
155        isLinux=0
156        uname -a | grep Linux >/dev/null
157        if [ $? -eq 0 ]; then
158            isLinux=1
159            sed --in-place 's/-Wall/-Wall -Werror/' Makefile
160        fi
161        #
162        if test x$1 = x0; then
163                [ -z "$verbose" ]     ||  log_msg_ok  "configure...  $TEST";
164                $MAKE clean > /dev/null 2>> test_log
165                if [ -z "$CLANG_CC" ]; then
166                    $MAKE cutest > /dev/null 2>> test_log
167                else
168                    sed --in-place 's/-Wno-empty-body/-Wno-empty-body -Wno-invalid-source-encoding/g' Makefile
169                    sed --in-place 's/-fno-strength-reduce//g' Makefile
170                    $MAKE -e CC=$CLANG_CC -e BUILD_CC=$CLANG_CC cutest > /dev/null 2>> test_log
171                fi
172                if test x$? = x0; then
173                    [ -z "$verbose" ] || log_msg_ok   "make cutest... $TEST";
174                else
175                    [ -z "$quiet" ] &&   log_msg_fail "make cutest... $TEST";
176                    fail=1
177                fi
178        else
179                [ -z "$quiet" ] &&       log_msg_fail "configure...   $TEST";
180                if [ x"$3" = xskip ]; then
181                    [ -z "$quiet" ] && log_skip $2 ${MAXTEST} "$TEST";
182                fi
183                fail=1
184        fi
185        if [ $isLinux -eq 1 ]; then
186            sed --in-place 's/-Wall -Werror/-Wall/' Makefile
187        fi
188        if [ $fail -eq 1 ]; then
189            [ -z "$quiet" ] && log_fail $2 ${MAXTEST} "$TEST";
190            return 1
191        fi
192        [ -z "$quiet" ] &&     log_ok   $2 ${MAXTEST} "$TEST";
193        return 0
194}
195
196testcompile ()
197{
198        log_start "COMPILE"
199
200        num=0
201        numfail=0
202
203       
204        C_LOGFILE=""
205
206        ls /lib/libpcre* >/dev/null 2>&1
207        if [ $? -eq 0 ]; then
208            C_LOGFILE=" --enable-logfile-monitor "
209        else
210            ls /usr/lib/libpcre* >/dev/null 2>&1
211            if [ $? -eq 0 ]; then
212                C_LOGFILE=" --enable-logfile-monitor "
213            else
214                ls /usr/lib/*/libpcre* >/dev/null 2>&1
215                if [ $? -eq 0 ]; then
216                    C_LOGFILE=" --enable-logfile-monitor "
217                else
218                    ls /usr/local/lib/libpcre* >/dev/null 2>&1
219                    if [ $? -eq 0 ]; then
220                        C_LOGFILE=" --enable-logfile-monitor "
221                    fi
222                fi
223            fi
224        fi
225        if [ x"${C_LOGFILE}" = x ]; then
226            log_msg_ok  "Not testing  --enable-logfile-monitor";
227        fi
228
229        #
230        # test dnmalloc
231        #
232        TEST="${S}check dnmalloc${E}"
233        #
234        ${TOP_SRCDIR}/configure --quiet > /dev/null 2>> test_log
235        #
236        let "num = num + 1" >/dev/null
237        #
238        run_dnmalloc 0 $num || let "numfail = numfail + 1"  >/dev/null
239        #
240
241        #
242        # test dnmalloc
243        #
244        TEST="${S}check w/cppcheck${E}"
245        #
246        let "num = num + 1" >/dev/null
247        #
248        run_cppcheck 0 $num || let "numfail = numfail + 1"  >/dev/null
249        #
250
251        #
252        # test flawfinder
253        #
254        TEST="${S}check w/flawfinder${E}"
255        #
256        #
257        let "num = num + 1" >/dev/null
258        FLAWFINDER=`find_path flawfinder`
259        #
260        if [ -z "$FLAWFINDER" ]; then
261            log_skip $num $MAXTEST 'check w/flawfinder (not in PATH)'
262        else
263            run_flawfinder 0 $num || let "numfail = numfail + 1"  >/dev/null
264        fi
265        #
266
267        #
268        # test standalone compilation
269        #
270        TEST="${S}standalone w/suidcheck w/procchk${E}"
271        #
272        if test -r "Makefile"; then
273                $MAKE distclean
274        fi
275        #
276        ${TOP_SRCDIR}/configure --quiet  --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test  --enable-suidcheck --enable-process-check > /dev/null 2>> test_log
277        #
278        let "num = num + 1" >/dev/null
279        testmake $? $num || let "numfail = numfail + 1"  >/dev/null
280        let "num = num + 1" >/dev/null
281        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
282
283        #
284        # test standalone compilation
285        #
286        TEST="${S}standalone static w/suidcheck w/procchk${E}"
287        #
288        if test -r "Makefile"; then
289                $MAKE distclean
290        fi
291        #
292        ${TOP_SRCDIR}/configure --quiet  --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test  --enable-static --enable-suidcheck --enable-process-check ${C_LOGFILE} > /dev/null 2>> test_log
293        #
294        let "num = num + 1" >/dev/null
295        testmake $? $num || let "numfail = numfail + 1"  >/dev/null
296        let "num = num + 1" >/dev/null
297        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
298        #
299        # test standalone compilation
300        #
301        TEST="${S}standalone w/procchk w/portchk${E}"
302        #
303        if test -r "Makefile"; then
304                $MAKE distclean
305        fi
306        #
307        ${TOP_SRCDIR}/configure --quiet  --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test  --enable-process-check --enable-port-check > /dev/null 2>> test_log
308        #
309        let "num = num + 1" >/dev/null
310        testmake $? $num || let "numfail = numfail + 1"  >/dev/null
311        let "num = num + 1" >/dev/null
312        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
313
314        #
315        # test standalone compilation
316        #
317        TEST="${S}standalone w/procchk w/portchk w/static${E}"
318        #
319        if test -r "Makefile"; then
320                $MAKE distclean
321        fi
322        #
323        ${TOP_SRCDIR}/configure --quiet  --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test  --enable-process-check --enable-port-check --enable-static > /dev/null 2>> test_log
324        #
325        let "num = num + 1" >/dev/null
326        testmake $? $num || let "numfail = numfail + 1"  >/dev/null
327        let "num = num + 1" >/dev/null
328        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
329        #
330        # test standalone compilation
331        #
332        TEST="${S}standalone w/procchk w/portchk w/stealth${E}"
333        #
334        if test -r "Makefile"; then
335                $MAKE distclean
336        fi
337        #
338        ${TOP_SRCDIR}/configure --quiet  --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test  --enable-stealth=164 --enable-process-check --enable-port-check > /dev/null 2>> test_log
339        #
340        let "num = num + 1" >/dev/null
341        testmake $? $num || let "numfail = numfail + 1"  >/dev/null
342        let "num = num + 1" >/dev/null
343        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
344
345        #
346        # test standalone compilation
347        #
348        TEST="${S}standalone w/mounts-check w/userfiles${E}"
349        #
350        if test -r "Makefile"; then
351                $MAKE distclean
352        fi
353        #
354        ${TOP_SRCDIR}/configure --quiet  --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test  --enable-mounts-check --enable-userfiles  > /dev/null 2>> test_log
355        #
356        let "num = num + 1" >/dev/null
357        testmake $? $num || let "numfail = numfail + 1" >/dev/null
358        let "num = num + 1" >/dev/null
359        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
360
361
362        #
363        # test standalone compilation
364        #
365        TEST="${S}standalone w/timeserver and w/msgqueue${E}"
366        #
367        if test -r "Makefile"; then
368                $MAKE clean
369        fi
370        #
371        ${TOP_SRCDIR}/configure --quiet  --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test  --enable-message-queue --with-timeserver=127.0.0.1 > /dev/null 2>> test_log
372        #
373        let "num = num + 1" >/dev/null
374        testmake $? $num || let "numfail = numfail + 1" >/dev/null
375        let "num = num + 1" >/dev/null
376        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
377
378        #
379        # test standalone compilation with --with-nocl=PW
380        #
381        TEST="${S}standalone w/nocl w/logmon${E}"
382        #
383        if test -r "Makefile"; then
384                $MAKE clean
385        fi
386        #
387        ${TOP_SRCDIR}/configure --quiet  --prefix=$PW_DIR --enable-nocl="owl" --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test ${C_LOGFILE} > /dev/null 2>> test_log   
388        #
389        let "num = num + 1" >/dev/null
390        testmake $? $num || let "numfail = numfail + 1" >/dev/null
391        let "num = num + 1" >/dev/null
392        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
393
394        #
395        # test standalone compilation w/ debug
396        #
397        TEST="${S}standalone w/debug${E}"
398        #
399        if test -r "Makefile"; then
400                $MAKE clean
401        fi
402        #
403        ${TOP_SRCDIR}/configure --quiet --enable-debug  --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test  > /dev/null 2>> test_log 
404        #
405        let "num = num + 1" >/dev/null
406        testmake $? $num || let "numfail = numfail + 1" >/dev/null
407        let "num = num + 1" >/dev/null
408        run_clang $? $num debug || let "numfail = numfail + 1"  >/dev/null
409
410        #
411        # test standalone compilation w/ gpg
412        #
413        TEST="${S}standalone w/gpg${E}"
414        #
415        GPG=`find_path gpg`
416        let "num = num + 1" >/dev/null
417        #
418        if [ -z "$GPG" ]; then
419            log_skip $num $MAXTEST 'gpg not in PATH'
420            let "num = num + 1" >/dev/null
421            log_skip $num $MAXTEST 'gpg not in PATH'
422        else
423            if test -r "Makefile"; then
424                $MAKE clean
425            fi
426            #
427            ${TOP_SRCDIR}/configure --quiet --with-gpg=$GPG  --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test > /dev/null 2>> test_log   
428            #
429            testmake $? $num || let "numfail = numfail + 1" >/dev/null
430            let "num = num + 1" >/dev/null
431            run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
432        fi
433
434        #
435        # test standalone compilation w/stealth
436        #
437        TEST="${S}standalone w/stealth${E}"
438        #
439        if test -r "Makefile"; then
440                $MAKE clean
441        fi
442        #
443        ${TOP_SRCDIR}/configure --quiet --enable-stealth=128 --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test > /dev/null 2>> test_log   
444        #
445        let "num = num + 1" >/dev/null
446        testmake $? $num || let "numfail = numfail + 1" >/dev/null
447        let "num = num + 1" >/dev/null
448        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
449
450        #
451        # test standalone compilation w/loginwatch
452        #
453        TEST="${S}standalone w/login-watch${E}"
454        #
455        if test -r "Makefile"; then
456                $MAKE clean
457        fi
458        #
459        ${TOP_SRCDIR}/configure --quiet --enable-login-watch  --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test > /dev/null 2>> test_log   
460        #
461        let "num = num + 1" >/dev/null
462        testmake $? $num || let "numfail = numfail + 1" >/dev/null
463        let "num = num + 1" >/dev/null
464        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
465
466        #
467        # test standalone compilation w/mysql
468        #
469        TEST="${S}standalone w/mysql${E}"
470        #
471        if test -r "Makefile"; then
472                $MAKE clean
473        fi
474        #
475        ${TOP_SRCDIR}/configure --quiet --enable-xml-log --with-database=mysql  --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test > /dev/null 2>> test_log
476        #
477        let "num = num + 1" >/dev/null
478        testmake $? $num "skip" || let "numfail = numfail + 1" >/dev/null
479        let "num = num + 1" >/dev/null
480        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
481
482        #
483        # test standalone compilation w/mysql and stealth
484        #
485        TEST="${S}standalone w/mysql+stealth${E}"
486        #
487        if test -r "Makefile"; then
488                $MAKE clean
489        fi
490        #
491        ${TOP_SRCDIR}/configure --quiet --enable-xml-log --enable-stealth=128 --with-database=mysql  --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test > /dev/null 2>> test_log
492        #
493        let "num = num + 1" >/dev/null
494        testmake $? $num "skip" || let "numfail = numfail + 1" >/dev/null
495        let "num = num + 1" >/dev/null
496        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
497
498        #
499        # test standalone compilation w/postgresql
500        #
501        TEST="${S}standalone w/postgresql${E}"
502        #
503        if test -r "Makefile"; then
504                $MAKE clean
505        fi
506        #
507        ${TOP_SRCDIR}/configure --quiet --enable-xml-log --with-database=postgresql  --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test > /dev/null 2>> test_log
508        #
509        let "num = num + 1" >/dev/null
510        testmake $? $num "skip" || let "numfail = numfail + 1" >/dev/null
511        let "num = num + 1" >/dev/null
512        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
513
514        #
515        # test standalone compilation w/postgresql+stealth
516        #
517        TEST="${S}standalone w/postgresql+stealth${E}"
518        #
519        if test -r "Makefile"; then
520                $MAKE clean
521        fi
522        #
523        ${TOP_SRCDIR}/configure --quiet --enable-xml-log --enable-stealth=128 --with-database=postgresql  --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test > /dev/null 2>> test_log
524        #
525        let "num = num + 1" >/dev/null
526        testmake $? $num "skip" || let "numfail = numfail + 1" >/dev/null
527        let "num = num + 1" >/dev/null
528        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
529
530        #
531        # test standalone compilation
532        #
533        TEST="${S}standalone w/o mail w/unix_rnd${E}"
534        #
535        if test -r "Makefile"; then
536                $MAKE clean
537        fi
538        #
539        ${TOP_SRCDIR}/configure --quiet --disable-mail --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test --with-rnd=unix > /dev/null 2>> test_log 
540        #
541        let "num = num + 1" >/dev/null
542        testmake $? $num || let "numfail = numfail + 1" >/dev/null
543        let "num = num + 1" >/dev/null
544        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
545
546        #
547        # test standalone compilation
548        #
549        TEST="${S}standalone w/o external${E}"
550        #
551        if test -r "Makefile"; then
552                $MAKE clean
553        fi
554        #
555        ${TOP_SRCDIR}/configure --quiet --disable-external-scripts --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test > /dev/null 2>> test_log   
556        #
557        let "num = num + 1" >/dev/null
558        testmake $? $num || let "numfail = numfail + 1" >/dev/null
559        let "num = num + 1" >/dev/null
560        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
561
562        # echo; echo "${S}__ TEST CLIENT/SERVER __${E}"; echo;
563
564        #
565        # test client/server compilation
566        #
567        TEST="${S}client/server application w/timeserver${E}"
568        #
569        if test -r "Makefile"; then
570                $MAKE clean
571        fi
572        #
573        ${TOP_SRCDIR}/configure --quiet --enable-network=client  --enable-srp --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test   --with-timeserver=127.0.0.1 > /dev/null 2>> test_log   
574        #
575        let "num = num + 1" >/dev/null
576        testmake $? $num || let "numfail = numfail + 1" >/dev/null
577        let "num = num + 1" >/dev/null
578        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
579       
580        if test -r "Makefile"; then
581                $MAKE clean
582        fi
583        #
584        ${TOP_SRCDIR}/configure --quiet --enable-network=server  --enable-srp --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test   --with-timeserver=127.0.0.1 > /dev/null 2>> test_log   
585        #
586        let "num = num + 1" >/dev/null
587        testmake $? $num || let "numfail = numfail + 1" >/dev/null
588        let "num = num + 1" >/dev/null
589        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
590
591        #
592        # test client/server compilation w/prelude
593        #
594        TEST="${S}client/server application w/prelude${E}"
595        #
596        if [ -z "$doall" ]; then
597            let "num = num + 1" >/dev/null
598            [ -z "$quiet" ] && log_skip $num ${MAXTEST} "$TEST";
599            let "num = num + 1" >/dev/null
600            [ -z "$quiet" ] && log_skip $num ${MAXTEST} "$TEST (smatch)";
601
602            let "num = num + 1" >/dev/null
603            [ -z "$quiet" ] && log_skip $num ${MAXTEST} "$TEST";
604            let "num = num + 1" >/dev/null
605            [ -z "$quiet" ] && log_skip $num ${MAXTEST} "$TEST (smatch)";
606        else
607            if test -r "Makefile"; then
608                $MAKE clean
609            fi
610            #
611            ${TOP_SRCDIR}/configure --quiet --enable-network=client  --enable-srp --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test   --with-prelude > /dev/null 2>> test_log   
612            #
613            let "num = num + 1" >/dev/null
614            testmake $? $num || let "numfail = numfail + 1" >/dev/null
615            let "num = num + 1" >/dev/null
616            run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
617           
618            if test -r "Makefile"; then
619                $MAKE clean
620            fi
621            #
622            ${TOP_SRCDIR}/configure --quiet --enable-network=server  --enable-srp --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test   --with-prelude > /dev/null 2>> test_log   
623            #
624            let "num = num + 1" >/dev/null
625            testmake $? $num || let "numfail = numfail + 1" >/dev/null
626            let "num = num + 1" >/dev/null
627            run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
628            #
629        fi
630
631        #
632        # test client/server compilation
633        #
634        TEST="${S}client/server application static w/timeserver${E}"
635        #
636        if test -r "Makefile"; then
637                $MAKE clean
638        fi
639        #
640        ${TOP_SRCDIR}/configure --quiet --enable-network=client  --enable-static --enable-srp --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test   --with-timeserver=127.0.0.1 ${C_LOGFILE} > /dev/null 2>> test_log   
641        #
642        let "num = num + 1" >/dev/null
643        testmake $? $num || let "numfail = numfail + 1" >/dev/null
644        let "num = num + 1" >/dev/null
645        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
646       
647        if test -r "Makefile"; then
648                $MAKE clean
649        fi
650        #
651        ${TOP_SRCDIR}/configure --quiet --enable-network=server  --enable-static --enable-srp --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test   --with-timeserver=127.0.0.1 > /dev/null 2>> test_log   
652        #
653        let "num = num + 1" >/dev/null
654        testmake $? $num || let "numfail = numfail + 1" >/dev/null
655        let "num = num + 1" >/dev/null
656        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
657        #
658        # test c/s compilation w/ gpg
659        #
660        TEST="${S}client/server application w/gpg${E}"
661        #
662        GPG=`find_path gpg`
663        let "num = num + 1" >/dev/null
664        #
665        if [ -z "$GPG" ]; then
666            log_skip $num $MAXTEST 'gpg not in PATH'
667            let "num = num + 1" >/dev/null
668            log_skip $num $MAXTEST 'gpg not in PATH'
669            let "num = num + 1" >/dev/null
670            log_skip $num $MAXTEST 'gpg not in PATH'
671            let "num = num + 1" >/dev/null
672            log_skip $num $MAXTEST 'gpg not in PATH'
673        else
674            if test -r "Makefile"; then
675                $MAKE clean
676            fi
677            #
678            ${TOP_SRCDIR}/configure --quiet --enable-network=server  --enable-srp --with-gpg=$GPG  --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test > /dev/null 2>> test_log   
679            #
680            testmake $? $num || let "numfail = numfail + 1" >/dev/null
681            let "num = num + 1" >/dev/null
682            run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
683            #
684            if test -r "Makefile"; then
685                $MAKE clean
686            fi
687            #
688            ${TOP_SRCDIR}/configure --quiet --enable-network=client  --enable-srp --with-gpg=$GPG  --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test ${C_LOGFILE} > /dev/null 2>> test_log   
689            #
690            let "num = num + 1" >/dev/null
691            testmake $? $num || let "numfail = numfail + 1" >/dev/null
692            let "num = num + 1" >/dev/null
693            run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
694        fi
695
696
697        #
698        # test client/server compilation
699        #
700        TEST="${S}client/server application w/o srp, w/udp${E}"
701        #
702        if test -r "Makefile"; then
703                $MAKE clean
704        fi
705        #
706        ${TOP_SRCDIR}/configure --quiet --enable-network=server --enable-udp --disable-srp --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test > /dev/null 2>> test_log   
707        #
708        let "num = num + 1" >/dev/null
709        testmake $? $num || let "numfail = numfail + 1" >/dev/null
710        let "num = num + 1" >/dev/null
711        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
712        #
713        if test -r "Makefile"; then
714                $MAKE clean
715        fi
716        #
717        ${TOP_SRCDIR}/configure --quiet --enable-network=client --disable-srp --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test > /dev/null 2>> test_log   
718        #
719        let "num = num + 1" >/dev/null
720        testmake $? $num || let "numfail = numfail + 1" >/dev/null
721        let "num = num + 1" >/dev/null
722        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
723
724        #
725        # test client/server compilation w/ debug
726        #
727        TEST="${S}client/server application w/debug${E}"
728        #
729        if test -r "Makefile"; then
730                $MAKE clean
731        fi
732        #
733        ${TOP_SRCDIR}/configure --quiet --enable-network=server --enable-debug --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test > /dev/null 2>> test_log   
734        #
735        let "num = num + 1" >/dev/null
736        testmake $? $num || let "numfail = numfail + 1" >/dev/null
737        let "num = num + 1" >/dev/null
738        run_clang $? $num debug || let "numfail = numfail + 1"  >/dev/null
739        #
740        if test -r "Makefile"; then
741                $MAKE clean
742        fi
743        #
744        ${TOP_SRCDIR}/configure --quiet --enable-network=client --enable-debug --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test ${C_LOGFILE} > /dev/null 2>> test_log   
745        #
746        let "num = num + 1" >/dev/null
747        testmake $? $num || let "numfail = numfail + 1" >/dev/null
748        let "num = num + 1" >/dev/null
749        run_clang $? $num debug || let "numfail = numfail + 1"  >/dev/null
750
751        #
752        # test client/server compilation w/stealth
753        #
754        TEST="${S}client/server application w/stealth${E}"
755        #
756        if test -r "Makefile"; then
757                $MAKE clean
758        fi
759        #
760        ${TOP_SRCDIR}/configure --quiet --enable-network=server  --enable-srp --enable-stealth=128 --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test  > /dev/null 2>> test_log 
761        #
762        let "num = num + 1" >/dev/null
763        testmake $? $num || let "numfail = numfail + 1" >/dev/null
764        let "num = num + 1" >/dev/null
765        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
766        #
767        if test -r "Makefile"; then
768                $MAKE clean
769        fi
770        #
771        ${TOP_SRCDIR}/configure --quiet --enable-network=client  --enable-srp --enable-stealth=128 --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test  > /dev/null 2>> test_log 
772        #
773        let "num = num + 1" >/dev/null
774        testmake $? $num || let "numfail = numfail + 1" >/dev/null
775        let "num = num + 1" >/dev/null
776        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
777
778        #
779        # test  client/server compilation w/logwatch
780        #
781        TEST="${S}client/server application w/login-watch,udp,no_ipv6${E}"
782        #
783        if test -r "Makefile"; then
784                $MAKE clean
785        fi
786        #
787        ${TOP_SRCDIR}/configure --quiet --enable-network=server  --enable-udp --disable-ipv6 --enable-srp --enable-login-watch --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test  > /dev/null 2>> test_log 
788        #
789        let "num = num + 1" >/dev/null
790        testmake $? $num || let "numfail = numfail + 1" >/dev/null
791        let "num = num + 1" >/dev/null
792        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
793        #
794        if test -r "Makefile"; then
795                $MAKE clean
796        fi
797        #
798        ${TOP_SRCDIR}/configure --quiet --enable-network=client  --disable-ipv6 --enable-srp --enable-login-watch --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test  > /dev/null 2>> test_log 
799        #
800        let "num = num + 1" >/dev/null
801        testmake $? $num || let "numfail = numfail + 1" >/dev/null
802        let "num = num + 1" >/dev/null
803        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
804
805        #
806        # test client/server compilation
807        #
808        TEST="${S}client/server application w/o mail${E}"
809        #
810        if test -r "Makefile"; then
811                $MAKE clean
812        fi
813        #
814        ${TOP_SRCDIR}/configure --quiet --enable-network=server  --disable-mail --enable-srp --enable-stealth=128 --enable-debug --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test > /dev/null 2>> test_log   
815        #
816        let "num = num + 1" >/dev/null
817        testmake $? $num || let "numfail = numfail + 1" >/dev/null
818        let "num = num + 1" >/dev/null
819        run_clang $? $num debug || let "numfail = numfail + 1"  >/dev/null
820        #
821        if test -r "Makefile"; then
822                $MAKE clean
823        fi
824        #
825        ${TOP_SRCDIR}/configure --quiet --enable-network=client  --disable-mail --enable-srp --enable-stealth=128 --enable-debug --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test > /dev/null 2>> test_log   
826        #
827        let "num = num + 1" >/dev/null
828        testmake $? $num || let "numfail = numfail + 1" >/dev/null
829        let "num = num + 1" >/dev/null
830        run_clang $? $num debug || let "numfail = numfail + 1"  >/dev/null
831
832        #
833        # test client/server compilation
834        #
835        TEST="${S}client/server application w/o external${E}"
836        #
837        if test -r "Makefile"; then
838                $MAKE clean
839        fi
840        #
841        ${TOP_SRCDIR}/configure --quiet --enable-network=server  --disable-srp --disable-external-scripts --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test > /dev/null 2>> test_log   
842        #
843        let "num = num + 1" >/dev/null
844        testmake $? $num || let "numfail = numfail + 1" >/dev/null
845        let "num = num + 1" >/dev/null
846        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
847        #
848        if test -r "Makefile"; then
849                $MAKE clean
850        fi
851        #
852        ${TOP_SRCDIR}/configure --quiet --enable-network=client  --disable-srp --disable-external-scripts --prefix=$PW_DIR --localstatedir=$PW_DIR --with-config-file=$PW_DIR/samhainrc.test > /dev/null 2>> test_log   
853        #
854        let "num = num + 1" >/dev/null
855        testmake $? $num || let "numfail = numfail + 1" >/dev/null
856        let "num = num + 1" >/dev/null
857        run_clang $? $num || let "numfail = numfail + 1"  >/dev/null
858
859        log_end "COMPILE"
860}
Note: See TracBrowser for help on using the repository browser.