Add new method to judge whether is needed The original logic will use "typedef vector int t;" to judge whether is needed. altivec.h contains the following statement: #if !defined(__APPLE_ALTIVEC__) #define vector __vector #define pixel __pixel #define bool #endif In gcc-4.3.3, __APPLE_ALTIVEC__ is not defined by compiler, neither as vector, pixel, and bool. In order to make "typedef vector int t;" pass the compilation, we need to include altivec.h. However in gcc-4.5.0, __APPLE_ALTIVEC__ is defined by compiler, so as vector, pixel, and bool. We could not judge whether altivec.h is needed by "typedef vector int t;". Here we include another statement "int tmp = __CR6_EQ;", in which __CR6_EQ is defined in altivec.h. Upstream-Status: Pending Signed-off-by: Dongxiao Xu diff -ruN a/configure.in b/configure.in --- a/configure.ac 2010-09-14 20:55:42.399687663 +0800 +++ b/configure.ac 2010-09-14 20:56:43.403204648 +0800 @@ -79,11 +79,11 @@ CFLAGS="$OPT_CFLAGS $TRY_CFLAGS $CFLAGS" AC_MSG_CHECKING([if is needed]) AC_TRY_COMPILE([], - [typedef vector int t; + [typedef vector int t; int tmp = __CR6_EQ; vec_ld(0, (unsigned char *)0);], [have_altivec=yes; AC_MSG_RESULT(no)], [AC_TRY_COMPILE([#include ], - [typedef vector int t; vec_ld(0, (unsigned char *)0);], + [typedef vector int t; int tmp = __CR6_EQ; vec_ld(0, (unsigned char *)0);], [AC_DEFINE([HAVE_ALTIVEC_H],, [Define to 1 if you have the header.]) have_altivec=yes; AC_MSG_RESULT(yes)],