+dnl
+dnl GNU portable threads
+dnl
+AC_ARG_ENABLE(pth,
+ [ --enable-pth Enable GNU Pth support (default disabled)],
+ [ if test x$enableval = xyes; then
+ AC_CHECK_LIB(pth,pth_init)
+ AC_EGREP_HEADER(pth_init,pth.h,[
+ AC_DEFINE(PTH_INIT_IN_PTH_H, 1,
+ Define if <pth.h> defines pth_init)
+ THREAD_LIB="-lpth"
+ fi])
+])
+
+LIB="${LIB} ${THREAD_LIB}"
+
+dnl
+dnl DVD module: check for installed libdvdcss or local libdvdcss
+dnl
+NEED_LIBDVDCSS=0
+STATIC_LIBDVDCSS=0
+DUMMY_LIBDVDCSS=0
+AC_ARG_WITH(dvdcss,
+ [ --with-dvdcss[=name] way to use libdvdcss, either 'yes' or 'no',
+ or 'local-static', 'local-shared', or a path to
+ another libdvdcss such as '/usr/local'
+ (default 'local-static')],
+ [ case "x${withval}" in
+ xlocal-static|xyes)
+ # local libdvdcss, statically linked
+ if test x${CAN_BUILD_LIBDVDCSS} = x1
+ then
+ NEED_LIBDVDCSS=1
+ STATIC_LIBDVDCSS=1
+ BUILTINS="${BUILTINS} dvd"
+ CFLAGS_DVD="${CFLAGS_DVD} -I../../extras/libdvdcss"
+ LIB_DVD="${LIB_DVD} lib/libdvdcss.a ${LIB_LIBDVDCSS}"
+ LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} ../../lib/libdvdcss.a ${LIB_LIBDVDCSS}"
+ fi
+ ;;
+ xlocal-shared)
+ # local libdvdcss, dynamically linked
+ if test x${CAN_BUILD_LIBDVDCSS} = x1
+ then
+ NEED_LIBDVDCSS=1
+ BUILTINS="${BUILTINS} dvd"
+ CFLAGS_DVD="${CFLAGS_DVD} -I../../extras/libdvdcss"
+ LIB_DVD="${LIB_DVD} -Llib -ldvdcss"
+ LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} -L../../lib -ldvdcss"
+ fi
+ ;;
+ xno)
+ # don't use libdvdcss at all, build a DVD module that can dlopen() it
+ DUMMY_LIBDVDCSS=1
+ BUILTINS="${BUILTINS} dvd"
+ OBJ_DVD="${OBJ_DVD} dummy_dvdcss.o"
+ CFLAGS_DVD="${CFLAGS_DVD} -DGOD_DAMN_DMCA"
+ CFLAGS_DVD="${CFLAGS_DVD} -DLIBDVDCSS_VERSION=\"${LIBDVDCSS_VERSION}\""
+ LIB_DVD="${LIB_DVD} -ldl"
+ LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} -ldl"
+ ;;
+ *)
+ # existing libdvdcss
+ BUILTINS="${BUILTINS} dvd"
+ if test "x$withval" != "xyes"
+ then
+ LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} -L"$withval"/lib"
+ CFLAGS_DVD="${CFLAGS_DVD} -I"$withval"/include"
+ fi
+ LIB_DVD="${LIB_DVD} -ldvdcss"
+ LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} -ldvdcss"
+ esac ],
+ # user didn't decide, we choose to use local libdvdcss and link statically
+ # if libdvdcss is in the archive, or to use the dummy replacement otherwise.
+ [ if test x${CAN_BUILD_LIBDVDCSS} = x1
+ then
+ NEED_LIBDVDCSS=1
+ STATIC_LIBDVDCSS=1
+ BUILTINS="${BUILTINS} dvd"
+ CFLAGS_DVD="${CFLAGS_DVD} -I../../extras/libdvdcss"
+ LIB_DVD="${LIB_DVD} lib/libdvdcss.a ${LIB_LIBDVDCSS}"
+ LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} ../../lib/libdvdcss.a ${LIB_LIBDVDCSS}"
+ else
+ # XXX: no check for libdl is done, don't try this at home !
+ DUMMY_LIBDVDCSS=1
+ BUILTINS="${BUILTINS} dvd"
+ OBJ_DVD="${OBJ_DVD} dummy_dvdcss.o"
+ CFLAGS_DVD="${CFLAGS_DVD} -DGOD_DAMN_DMCA"
+ LIB_DVD="${LIB_DVD} -ldl"
+ LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} -ldl"
+ fi ])
+
+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