+
+dnl
+dnl default modules
+dnl
+BUILTINS="${BUILTINS} es ps ts yuv idct idctclassic motion imdct downmix"
+
+dnl
+dnl Accelerated modules
+dnl
+case x$host_os in
+ xmingw32msvc)
+ MMX_PLUGINS="idctmmx motionmmx"
+ MMXEXT_PLUGINS="idctmmxext motionmmxext imdct3dn"
+ ;;
+ *)
+ MMX_PLUGINS="yuvmmx idctmmx motionmmx"
+ MMXEXT_PLUGINS="idctmmxext motionmmxext imdct3dn imdctsse downmix3dn downmixsse"
+ ;;
+esac
+
+AC_MSG_CHECKING([if \$CC groks MMX inline assembly])
+AC_TRY_COMPILE([void quux(){void *p;asm("packuswb %%mm1,%%mm2"::"r"(p));}],,
+ ACCEL_PLUGINS="${ACCEL_PLUGINS} ${MMX_PLUGINS}"
+ AC_MSG_RESULT(yes), AC_MSG_RESULT(no))
+
+AC_MSG_CHECKING([if \$CC groks MMX EXT or SSE inline assembly])
+AC_TRY_COMPILE([void quux(){void *p;asm("maskmovq %%mm1,%%mm2"::"r"(p));}],,
+ ACCEL_PLUGINS="${ACCEL_PLUGINS} ${MMXEXT_PLUGINS}"
+ AC_MSG_RESULT(yes), AC_MSG_RESULT(no))
+
+dnl
+dnl DVD module: check for DVD ioctls
+dnl
+AC_CHECK_HEADERS(sys/ioctl.h,[
+ BUILTINS="${BUILTINS} dvd"
+ AC_CHECK_HEADERS(sys/cdio.h sys/dvdio.h linux/cdrom.h)
+ BSD_DVD_STRUCT=0
+ dnl
+ dnl Old FreeBSD: sys/cdio.h
+ dnl
+ AC_EGREP_HEADER(dvd_struct,sys/dvdio.h,[
+ AC_DEFINE(DVD_STRUCT_IN_SYS_DVDIO_H, 1,
+ Define if <sys/dvdio.h> defines dvd_struct.)
+ BSD_DVD_STRUCT=1
+ ])
+ dnl
+ dnl Newer FreeBSD: sys/dvdio.h
+ dnl
+ AC_EGREP_HEADER(dvd_struct,sys/cdio.h,[
+ AC_DEFINE(DVD_STRUCT_IN_SYS_CDIO_H, 1,
+ Define if <sys/cdio.h> defines dvd_struct.)
+ BSD_DVD_STRUCT=1
+ ])
+ if test x$BSD_DVD_STRUCT = x1; then
+ AC_DEFINE(HAVE_BSD_DVD_STRUCT, 1,
+ Define if BSD-like dvd_struct is defined.)
+ fi
+ dnl
+ dnl Linux: linux/cdrom.h
+ dnl
+ AC_EGREP_HEADER(dvd_struct,linux/cdrom.h,[
+ AC_DEFINE(DVD_STRUCT_IN_LINUX_CDROM_H, 1,
+ Define if <linux/cdrom.h> defines DVD_STRUCT.)
+ ])
+])
+
+dnl
+dnl dummy plugin
+dnl
+AC_ARG_ENABLE(dummy,
+ [ --disable-dummy dummy module (default enabled)])
+if test x$enable_dummy != xno; then
+ BUILTINS="${BUILTINS} dummy"; fi
+
+dnl
+dnl null plugin
+dnl
+AC_ARG_ENABLE(null,
+ [ --disable-null Null module (default enabled)])
+if test x$enable_null != xno; then
+ BUILTINS="${BUILTINS} null"; fi
+
+dnl
+dnl rc plugin
+dnl
+AC_ARG_ENABLE(rc,
+ [ --disable-rc rc module (default enabled)])
+if test x$enable_rc != xno; then
+ BUILTINS="${BUILTINS} rc"; fi
+
+dnl
+dnl PentiumPro acceleration
+dnl