dnl Check for -rdynamic flag
CFLAGS="${CFLAGS} -rdynamic -Wall -Werror"
-AC_MSG_CHECKING([if \$CC groks -rdynamic without complaining too much])
+AC_MSG_CHECKING([if \$CC miserably fails with the -rdynamic flag])
AC_TRY_COMPILE([],,
LCFLAGS="${LCFLAGS} -rdynamic"
- AC_MSG_RESULT(yes), AC_MSG_RESULT(no))
+ AC_MSG_RESULT(no), AC_MSG_RESULT(yes))
dnl End of the bizarre compilation tests
CFLAGS="${save_CFLAGS}"
dnl default modules
dnl
BUILTINS="${BUILTINS} es ps ts yuv idct idctclassic motion"
+
+dnl
+dnl Accelerated modules
+dnl
case x$host_os in
- xbeos|xnto-qnx)
- ACCEL_PLUGINS="yuvmmx idctmmx motionmmx"
- ;;
xmingw32msvc)
- ACCEL_PLUGINS="idctmmx idctmmxext motionmmx motionmmxext"
+ MMX_PLUGINS="idctmmx motionmmx"
;;
*)
- ACCEL_PLUGINS="yuvmmx idctmmx idctmmxext motionmmx motionmmxext"
+ MMX_PLUGINS="yuvmmx idctmmx motionmmx"
;;
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 (SSE) inline assembly])
+AC_TRY_COMPILE([void quux(){void *p;asm("maskmovq %%mm1,%%mm2"::"r"(p));}],,
+ ACCEL_PLUGINS="${ACCEL_PLUGINS} idctmmxext motionmmxext"
+ 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(linux/cdrom.h)
- AC_EGREP_HEADER(dvd,linux/cdrom.h,[
- AC_DEFINE(LINUX_DVD,1, DVD support for linux)
+ 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.)
])
])