Browse code

Try to make a difference between failing to link the bzip2 testcase and the testcase failing (bb #1240)

git-svn: trunk@4306

Török Edvin authored on 2008/10/30 04:19:48
Showing 4 changed files
... ...
@@ -1,3 +1,9 @@
1
+Wed Oct 29 21:48:03 EET 2008 (edwin)
2
+------------------------------------
3
+ * configure, configure.in, m4/acinclude.m4: Try to make a difference
4
+ between failing to link the bzip2 testcase and the testcase failing
5
+ (bb #1240)
6
+
1 7
 Wed Oct 29 21:40:20 EET 2008 (edwin)
2 8
 ------------------------------------
3 9
  * configure, configure.in: fix message: it is enough to use a lower
... ...
@@ -16311,7 +16311,13 @@ echo "$as_me: failed program was:" >&5
16311 16311
 sed 's/^/| /' conftest.$ac_ext >&5
16312 16312
 
16313 16313
 ( exit $ac_status )
16314
-ac_cv_c_cve_2008_1372=bugged
16314
+
16315
+if test $? -gt 127; then
16316
+	ac_cv_c_cve_2008_1372=bugged
16317
+else
16318
+	ac_cv_c_cve_2008_1372=linkfailed
16319
+fi
16320
+
16315 16321
 fi
16316 16322
 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
16317 16323
 fi
... ...
@@ -16336,9 +16342,19 @@ echo "$as_me: WARNING: ****** We strongly suggest you to update to bzip2 1.0.5."
16336 16336
 		{ echo "$as_me:$LINENO: WARNING: ****** Please do not report stability problems to the ClamAV developers!" >&5
16337 16337
 echo "$as_me: WARNING: ****** Please do not report stability problems to the ClamAV developers!" >&2;}
16338 16338
 	fi
16339
+	if test "$ac_cv_c_cve_2008_1372" = "linkfailed"; then
16340
+						{ echo "$as_me:$LINENO: WARNING: ****** Unable to link bzip2 testcase" >&5
16341
+echo "$as_me: WARNING: ****** Unable to link bzip2 testcase" >&2;}
16342
+		{ echo "$as_me:$LINENO: WARNING: ****** You may be affected by CVE-2008-1372 bug, but I need to be able to link a testcase to verify" >&5
16343
+echo "$as_me: WARNING: ****** You may be affected by CVE-2008-1372 bug, but I need to be able to link a testcase to verify" >&2;}
16344
+		{ echo "$as_me:$LINENO: WARNING: ****** It is recommended to fix your build environment so that we can run the testcase!" >&5
16345
+echo "$as_me: WARNING: ****** It is recommended to fix your build environment so that we can run the testcase!" >&2;}
16346
+		{ echo "$as_me:$LINENO: WARNING: ****** Please do not report stability problems to the ClamAV developers!" >&5
16347
+echo "$as_me: WARNING: ****** Please do not report stability problems to the ClamAV developers!" >&2;}
16348
+	fi
16339 16349
 
16340 16350
 	case "$ac_cv_c_cve_2008_1372" in
16341
-	ok|bugged)
16351
+	ok|bugged|linkfailed)
16342 16352
 		LIBCLAMAV_LIBS="$LIBCLAMAV_LIBS $LTLIBBZ2"
16343 16353
 
16344 16354
 cat >>confdefs.h <<\_ACEOF
... ...
@@ -544,9 +544,17 @@ then
544 544
 		AC_MSG_WARN([****** We strongly suggest you to update to bzip2 1.0.5.])
545 545
 		AC_MSG_WARN([****** Please do not report stability problems to the ClamAV developers!])
546 546
 	fi
547
+	if test "$ac_cv_c_cve_2008_1372" = "linkfailed"; then
548
+		dnl This shouldn't happen
549
+		dnl We failed to link but libtool may still be able to link, so don't disable bzip2 just yet
550
+		AC_MSG_WARN([****** Unable to link bzip2 testcase])
551
+		AC_MSG_WARN([****** You may be affected by CVE-2008-1372 bug, but I need to be able to link a testcase to verify])
552
+		AC_MSG_WARN([****** It is recommended to fix your build environment so that we can run the testcase!])
553
+		AC_MSG_WARN([****** Please do not report stability problems to the ClamAV developers!])
554
+	fi
547 555
 
548 556
 	case "$ac_cv_c_cve_2008_1372" in
549
-	ok|bugged)
557
+	ok|bugged|linkfailed)
550 558
 		LIBCLAMAV_LIBS="$LIBCLAMAV_LIBS $LTLIBBZ2"
551 559
 		AC_DEFINE([HAVE_BZLIB_H],1,[have bzip2])
552 560
 		;;
... ...
@@ -683,7 +683,13 @@ int main (int argc, char **argv) {
683 683
         BZ2_bzDecompressEnd(&bz);
684 684
         return 0;
685 685
 }
686
-], [ac_cv_c_cve_2008_1372=ok], [ac_cv_c_cve_2008_1372=bugged], [ac_cv_c_cve_2008_1372=ok])
686
+], [ac_cv_c_cve_2008_1372=ok], [
687
+if test $? -gt 127; then 
688
+	ac_cv_c_cve_2008_1372=bugged
689
+else
690
+	ac_cv_c_cve_2008_1372=linkfailed
691
+fi
692
+], [ac_cv_c_cve_2008_1372=ok])
687 693
 LIBS="$save_LIBS"
688 694
 ])
689 695
 ])