source: trunk/test/testcompile.sh@ 498

Last change on this file since 498 was 481, checked in by katerina, 9 years ago

Enhancements and fixes for tickets #374, #375, #376, #377, #378, and #379.

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 -Wpointer-arith -Wcast-qual/' 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.