Actually maybe this simpler version is better. I think I just figured out why libdeinterlace wasn't getting the altivec flags, which was that it was listed as deinterlace rather than libdeinterlace.
Doing a build test of it now. --- vlc-2.2.4.orig/configure.ac 2016-05-31 12:11:07.000000000 -0400 +++ vlc-2.2.4/configure.ac 2016-11-04 12:22:02.543265439 -0400 @@ -1422,25 +1422,24 @@ VLC_SAVE_FLAGS AC_CACHE_CHECK([if \$CC groks AltiVec C extensions], [ac_cv_c_altivec], [ - CFLAGS="${CFLAGS} -maltivec" + CFLAGS="${CFLAGS} -maltivec -fno-vectorize" AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ [#include <altivec.h>]], [ [vec_ld(0, (unsigned char *)0);]])], [ - ac_cv_c_altivec="-maltivec" + ac_cv_c_altivec="-maltivec -fno-vectorize" ], [ ac_cv_c_altivec="no" ]) ]) - VLC_RESTORE_FLAGS AS_IF([test "${ac_cv_c_altivec}" != "no"], [ CPPFLAGS="${CPPFLAGS} ${ac_cv_c_altivec}" AC_DEFINE(CAN_COMPILE_C_ALTIVEC, 1, [Define to 1 if C AltiVec extensions are available.]) - VLC_ADD_CFLAGS([libvlccore],[${ac_cv_c_altivec}]) - ALTIVEC_CFLAGS="$ALTIVEC_FLAGS ${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}" - VLC_ADD_CFLAGS([deinterlace],[${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}]) + ALTIVEC_CFLAGS="$ALTIVEC_CFLAGS ${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}" + VLC_ADD_CFLAGS([libdeinterlace],[${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}]) have_altivec="yes" ]) AC_CHECK_HEADERS(altivec.h) + VLC_RESTORE_FLAGS VLC_SAVE_FLAGS LDFLAGS="${LDFLAGS} -Wl,-framework,vecLib" -- Len Sorensen