if you include altivec.h after stdbool.h, things will fail ... this is the case of vlc and deinterlace.c moving altivec.h include above the vlc includes (right after config.h), things build just fine make[2]: Entering directory `/var/tmp/portage/media-video/vlc-0.9.0_alpha20080524/work/vlc-0.9.0-git/modules/video_filter' /bin/sh ../../libtool --tag=CC --mode=compile powerpc-unknown-linux-gnu-gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../.. -DSYS_LINUX -I../../include -I../../include `top_builddir="../.." ../../vlc-config --cflags plugin libdeinterlace_plugin_la-deinterlace.lo` -Wall -O2 -mcpu=970 -pipe -g -Wall -Wextra -Wsign-compare -Wundef -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wmissing-prototypes -Wvolatile-register-var -MT libdeinterlace_plugin_la-deinterlace.lo -MD -MP -MF .deps/libdeinterlace_plugin_la-deinterlace.Tpo -c -o libdeinterlace_plugin_la-deinterlace.lo `test -f 'deinterlace.c' || echo './'`deinterlace.c powerpc-unknown-linux-gnu-gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../.. -DSYS_LINUX -I../../include -I../../include -D_FILE_OFFSET_BITS=64 -D__USE_UNIX98 -D_LARGEFILE64_SOURCE -D_REENTRANT -D_THREAD_SAFE -D__LIBVLC__ -D__PLUGIN__ -DMODULE_NAME=deinterlace -DMODULE_NAME_IS_deinterlace -DMODULE_STRING=\"deinterlace\" -O0 -fvisibility=hidden -maltivec -Wall -O2 -mcpu=970 -pipe -g -Wall -Wextra -Wsign-compare -Wundef -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wmissing-prototypes -Wvolatile-register-var -MT libdeinterlace_plugin_la-deinterlace.lo -MD -MP -MF .deps/libdeinterlace_plugin_la-deinterlace.Tpo -c deinterlace.c -fPIC -DPIC -o .libs/libdeinterlace_plugin_la-deinterlace.o deinterlace.c: In function ‘Create’: deinterlace.c:207: error: incompatible types in assignment deinterlace.c: In function ‘SetFilterMethod’: deinterlace.c:278: error: incompatible types in assignment deinterlace.c:283: error: incompatible types in assignment deinterlace.c:290: error: incompatible types in assignment deinterlace.c:296: error: incompatible types in assignment deinterlace.c:301: error: incompatible types in assignment deinterlace.c:306: error: incompatible types in assignment deinterlace.c: In function ‘Render’: deinterlace.c:501: error: invalid operands to binary != (have ‘__vector __bool int’ and ‘int’) make[2]: *** [libdeinterlace_plugin_la-deinterlace.lo] Error 1
fixed, thanks ! I was wondering why it failed to build on my G5 and couldn't find any reasonable solution... now its fine ;)