dnl Autoconf settings for vlc
-AC_INIT(vlc,0.6.0-test1)
+AC_INIT(vlc,0.6.0-test3)
CONFIGURE_LINE="$0 $*"
-CODENAME="Natalya"
+CODENAME="Trevelyan"
AC_PREREQ(2.50)
AC_CONFIG_SRCDIR(src/libvlc.c)
dnl XXX: we don't put any flags here, because automake 1.5 doesn't support
dnl them. And we need the comma otherwize automake will choke on it.
-AM_INIT_AUTOMAKE(vlc,0.6.0-test1)
+AM_INIT_AUTOMAKE(vlc,0.6.0-test3)
AM_CONFIG_HEADER(config.h)
dnl
;;
xbeos)
SYS=beos
- CFLAGS_save="${CFLAGS_save} -Wno-multichar -Wno-ctor-dtor-privacy -Woverloaded-virtual"; CFLAGS="${CFLAGS_save}"
- CXXFLAGS_save="${CXXFLAGS_save} -Wno-multichar -Wno-ctor-dtor-privacy -Woverloaded-virtual"; CXXFLAGS="${CXXFLAGS_save}"
+ CFLAGS_save="${CFLAGS_save} -Wno-multichar"; CFLAGS="${CFLAGS_save}"
+ CXXFLAGS_save="${CXXFLAGS_save} -Wno-multichar"; CXXFLAGS="${CXXFLAGS_save}"
LDFLAGS_vlc="${LDFLAGS_vlc} -lbe"
- LDFLAGS_plugins="${LDFLAGS_plugins} -nostart"
- LDFLAGS_beos="${LDFLAGS_beos} -lbe -lmedia -lroot -ltracker -lstdc++.r4 -ltranslation -lgame"
- dnl BONE or not BONE ? only BONE has libbind.so
- AC_CHECK_LIB( bind, inet_ntoa,
- [ LDFLAGS_access_mms="${LDFLAGS_access_mms} -lsocket -lbind"
- LDFLAGS_ipv4="${LDFLAGS_ipv4} -lsocket -lbind"
- LDFLAGS_httpd="${LDFLAGS_httpd} -lsocket -lbind"],
- [])
+ LDFLAGS_beos="${LDFLAGS_beos} -lbe -lmedia -ltranslation -ltracker -lgame -lstdc++.r4"
+ dnl Check if we have BONE (old net_server doesn't have libsocket.so)
+ AC_CHECK_LIB( socket, connect,
+ LDFLAGS_vlc="${LDFLAGS_vlc} -lsocket -lbind"
+ LDFLAGS_access_mms="${LDFLAGS_access_mms} -lsocket -lbind"
+ LDFLAGS_ipv4="${LDFLAGS_ipv4} -lsocket -lbind"
+ LDFLAGS_httpd="${LDFLAGS_httpd} -lsocket -lbind" )
;;
x*)
SYS="${target_os}"
else
AC_CHECK_FUNCS(textdomain,,[
AC_CHECK_LIB(intl,textdomain,
- LDFLAGS_vlc="${LDFLAGS_vlc} ${LIBINTL}"
- LDFLAGS_plugins="${LDFLAGS_plugins} ${LIBINTL}",,
+ LDFLAGS_vlc="${LDFLAGS_vlc} ${LIBINTL}",,
${LIBINTL}
)
])
dnl Check for system libs needed
need_libc=false
-AC_CHECK_FUNCS(gettimeofday select strerror strtod strtol isatty vasprintf swab sigrelse getpwuid memalign posix_memalign gethostbyname2 atoll getenv putenv setenv)
+AC_CHECK_FUNCS(gettimeofday select strerror strtod strtol isatty vasprintf swab sigrelse getpwuid memalign posix_memalign gethostbyname2 if_nametoindex atoll getenv putenv setenv)
dnl Check for usual libc functions
AC_CHECK_FUNCS(strdup strndup atof lseek)
ac_cv_type_socklen_t=yes,
ac_cv_type_socklen_t=no)])
if test x$ac_cv_type_socklen_t != xno; then
- AC_DEFINE(HAVE_SOCKLEN_T, 1,
- Define if <sys/socket.h> defines socklen_t.)
+ AC_DEFINE(HAVE_SOCKLEN_T, 1, [Define if <sys/socket.h> defines socklen_t.])
+fi
+
+dnl Check for va_copy
+AC_CACHE_CHECK([for va_copy], ac_cv_c_va_copy,
+ AC_TRY_LINK(
+ [#include <stdarg.h>],
+ [va_list ap1, ap2; va_copy(ap1,ap2);],
+ [ac_cv_c_va_copy="yes"],
+ [ac_cv_c_va_copy="no"]))
+if test "$ac_cv_c_va_copy" = "yes"; then
+ AC_DEFINE(HAVE_VA_COPY, 1, [Define if <stdarg.h> defines va_copy.])
+fi
+AC_CACHE_CHECK([for __va_copy], ac_cv_c___va_copy,
+ AC_TRY_LINK(
+ [#include <stdarg.h>],
+ [va_list ap1, ap2; __va_copy(ap1,ap2);],
+ [ac_cv_c___va_copy="yes"],
+ [ac_cv_c___va_copy="no"]))
+if test "$ac_cv_c___va_copy" = "yes"; then
+ AC_DEFINE(HAVE___VA_COPY, 1, [Define if <stdarg.h> defines __va_copy.])
fi
AC_CHECK_FUNCS(inet_aton,,[
dnl build the qte plugin ?
NEED_QTE_MAIN=no
-dnl Check for DPMS
-if test "x${SYS}" != "xmingw32"
-then
- CPPFLAGS="${CPPFLAGS_save} -I${x_includes}"
- AC_CHECK_HEADERS(X11/extensions/dpms.h, [
- AC_MSG_CHECKING(for DPMSInfo in X11/extensions/dpms.h)
- AC_EGREP_HEADER(DPMSInfo,X11/extensions/dpms.h,[
- AC_MSG_RESULT(yes)
- AC_DEFINE(DPMSINFO_IN_DPMS_H, 1,
- Define if <X11/extensions/dpms.h> defines DPMSInfo.)
- ],[
- AC_MSG_RESULT(no)
- ])
- ],,[
- #include <X11/Xlib.h>
- ])
- CPPFLAGS="${CPPFLAGS_save}"
-fi
-
dnl Check for ntohl, etc.
AC_CACHE_CHECK([for ntohl in sys/param.h],
[ac_cv_c_ntohl_sys_param_h],
fi
dnl Check for standard plugin linking flags
-AC_CACHE_CHECK([if \$CC accepts -shared],
- [ac_cv_ld_plugins],
- [CFLAGS="${CFLAGS_save} -shared"
- AC_TRY_COMPILE([],, ac_cv_ld_plugins=yes, ac_cv_ld_plugins=no)])
-if test "x${ac_cv_ld_plugins}" != "xno"; then
- LDFLAGS_plugins="${LDFLAGS_plugins} -shared"
+dnl BeOS' gcc needs -nostart instead of -shared, even if -shared isn't harmful (just a warning)
+if test "x${SYS}" = "xbeos"; then
+ LDFLAGS_plugins="${LDFLAGS_plugins} -nostart"
+else
+ AC_CACHE_CHECK([if \$CC accepts -shared],
+ [ac_cv_ld_plugins],
+ [CFLAGS="${CFLAGS_save} -shared"
+ AC_TRY_COMPILE([],, ac_cv_ld_plugins=yes, ac_cv_ld_plugins=no)])
+ if test "x${ac_cv_ld_plugins}" != "xno"; then
+ LDFLAGS_plugins="${LDFLAGS_plugins} -shared"
+ fi
fi
dnl Check for variadic macros
case "${ARCH}" in
hppa64)
- CFLAGS_mpeg_video="${CFLAGS_mpeg_video} -ffunction-sections"
+ CFLAGS_mpeg_video_old="${CFLAGS_mpeg_video_old} -ffunction-sections"
;;
esac
dnl
dnl default modules
dnl
-#BUILTINS="${BUILTINS} mpeg_video idct idctclassic motion"
+#BUILTINS="${BUILTINS} mpeg_video_old idct idctclassic motion"
PLUGINS="${PLUGINS} dummy rc logger gestures memcpy"
PLUGINS="${PLUGINS} es audio m4v mpeg_system ps ts avi asf aac mp4 rawdv"
PLUGINS="${PLUGINS} spudec mpeg_audio lpcm a52 dts cinepak"
PLUGINS="${PLUGINS} access_file access_udp access_http ipv4 access_mms"
PLUGINS="${PLUGINS} access_ftp access_directory sap httpd http"
+dnl
+dnl Switch to enable a version of VLC where most modules will be builtin
+dnl
+AC_ARG_ENABLE(mostly-builtin,
+[ --enable-mostly-builtin most modules will be built-in (default disabled)])
+if test "x${enable_mostly_builtin}" = "xyes"; then
+ BUILTINS="${BUILTINS} ${PLUGINS}"
+ PLUGINS=""
+fi
+
dnl
dnl Some plugins aren't useful on some platforms
dnl
dnl dvdplay module: check for libdvdplay
dnl
AC_ARG_ENABLE(dvdplay,
-[ --enable-dvdplay dvdplay input module (default disabled)])
+[ --enable-dvdplay dvdplay input module (default enabled)])
if test "x${enable_dvdplay}" != "xno"
then
AC_ARG_WITH(dvdplay,
],[])
fi
+dnl
+dnl special access module for Hauppauge PVR cards
+dnl
+AC_ARG_ENABLE(pvr,
+ [ --enable-pvr PVR cards access module (default disabled)])
+if test "x${enable_pvr}" = "xyes"
+then
+ PLUGINS="${PLUGINS} pvr"
+fi
+
dnl
dnl VCD module
dnl
dnl mad plugin
dnl
AC_ARG_ENABLE(mad,
- [ --enable-mad libmad module (default disabled)])
+ [ --enable-mad libmad module (default enabled)])
if test "x${enable_mad}" != "xno"
then
AC_ARG_WITH(mad,
CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mpgatofixed32}"
LDFLAGS="${LDFLAGS_save} ${LDFLAGS_mpgatofixed32}"
AC_CHECK_HEADERS(mad.h, ,
- [ AC_MSG_ERROR([Cannot find development headers for libmad...]) ])
+ [ AC_MSG_ERROR([Could not find libmad on your system: you may get it from http://www.underbit.com/products/mad/. Alternatively you can use --disable-mad to disable the mad plugin.]) ])
AC_CHECK_LIB(mad, mad_bit_init, [
PLUGINS="${PLUGINS} mpgatofixed32"
LDFLAGS_mpgatofixed32="${LDFLAGS_mpgatofixed32} -lmad" ],
dnl ffmpeg decoder plugin
dnl
AC_ARG_ENABLE(ffmpeg,
-[ --enable-ffmpeg ffmpeg codec (default disabled)])
-if test "x${enable_ffmpeg}" = "xyes"
+[ --enable-ffmpeg ffmpeg codec (default enabled)])
+if test "x${enable_ffmpeg}" != "xno"
then
AC_ARG_WITH(ffmpeg-tree,
[ --with-ffmpeg-tree=PATH ffmpeg tree for static linking])
dnl XXX: we don't link with -lavcodec a 2nd time because the OS X
dnl linker would miserably barf on multiple definitions.
LDFLAGS_stream_out_transcode="${LDFLAGS_stream_out_transcode}" ],
- [ AC_MSG_ERROR([Cannot find libavcodec library...]) ])
+ [ AC_MSG_ERROR([Could not find ffmpeg on your system: you may get it from http://ffmpeg.sf.net/ (cvs version is recommended). Alternatively you can use --disable-ffmpeg to disable the ffmpeg plugins.]) ])
LDFLAGS="${LDFLAGS_save}"
CPPFLAGS="${CPPFLAGS_save}"
fi
CPPFLAGS_encoder_ffmpeg="${CPPFLAGS_ffmpeg}"
dnl XXX: we don't link with -lavcodec blah blah blah
#LDFLAGS_encoder_ffmpeg="${LDFLAGS_ffmpeg}"
-
- dnl Add postprocessing modules
- PLUGINS="${PLUGINS} postprocessing_c"
- if test "x${ac_cv_mmx_inline}" != "xno"; then
- PLUGINS="${PLUGINS} postprocessing_mmx"
- fi
-
- if test "x${ac_cv_mmxext_inline}" != "xno"; then
- PLUGINS="${PLUGINS} postprocessing_mmxext"
- fi
fi
dnl
[ --enable-faad faad codec (default disabled)])
if test "x${enable_faad}" = "xyes"
then
- AC_ARG_WITH(faad,
- [ --with-faad=PATH path to faad installation],[],[])
- if test "x${with_faad}" != "xno" -a "x${with_faad}" != "x"
- then
- CPPFLAGS_faad="${CPPFLAGS_faad} -I${with_faad}/include"
- LDFLAGS_faad="${LDFLAGS_faad} -L${with_faad}/lib"
- fi
- LDFLAGS_faad="${LDFLAGS_faad}"
-
AC_ARG_WITH(faad-tree,
[ --with-faad-tree=PATH faad tree for static linking])
if test "x${with_faad_tree}" != "x"
BUILTINS="${BUILTINS} faad"
LDFLAGS_faad="${LDFLAGS_faad} -L${real_faad_tree}/libfaad/.libs -lfaad"
CPPFLAGS_faad="${CPPFLAGS_faad} -I${real_faad_tree}/include"
+ CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_faad}"
+ LDFLAGS="${LDFLAGS_save} ${LDFLAGS_faad}"
+ AC_TRY_COMPILE([#include <faad.h>],
+ [faacDecHandle a; faacDecFrameInfo *b; unsigned char *c;
+ unsigned long d; faacDecDecode(a,b,c,d);],
+ [], [AC_DEFINE(HAVE_OLD_FAAD2, 1, Define if FAAD2 < 1.2)])
+ LDFLAGS="${LDFLAGS_save}"
+ CPPFLAGS="${CPPFLAGS_save}"
else
dnl The given libfaad wasn't built
AC_MSG_RESULT(no)
[ AC_MSG_ERROR([Cannot find development headers for libfaad...]) ])
AC_CHECK_LIB(faad, faacDecOpen, [
PLUGINS="${PLUGINS} faad"
- LDFLAGS_faad="${LDFLAGS_faad} -lfaad" ],
+ LDFLAGS_faad="${LDFLAGS_faad} -lfaad"
+ AC_TRY_COMPILE([#include <faad.h>],
+ [faacDecHandle a; faacDecFrameInfo *b; unsigned char *c;
+ unsigned long d; faacDecDecode(a,b,c,d);],
+ [], [AC_DEFINE(HAVE_OLD_FAAD2, 1, Define if FAAD2 < 1.2)]) ],
[ AC_MSG_ERROR([Cannot find libfaad library...]) ])
LDFLAGS="${LDFLAGS_save}"
CPPFLAGS="${CPPFLAGS_save}"
dnl DV plugin
dnl
AC_ARG_ENABLE(dv,
- [ --enable-dv DV decoder support (default disabled)])
+ [ --enable-dv DV decoder support (deprecated in favor of ffmpeg) (default disabled)])
if test "x${enable_dv}" = "xyes"
then
AC_CHECK_HEADERS(libdv/dv.h, [
AC_MSG_RESULT(no)
AC_MSG_ERROR([cannot find ${real_libmpeg2_tree}/libmpeg2/.libs/libmpeg2.a, make sure you compiled libmpeg2 in ${with_libmpeg2_tree}])
fi
- elif test "x${with_libmpeg2_prefix}" != "x"
- then
- # check for cross-compiling
- AC_ARG_WITH(libmpeg2-prefix,
- [ --with-libmpeg2-prefix=PATH path to installed libmpeg2 (needed for cross-compiling),
- e.g use as:
- --with-libmpeg2-prefix=/usr/local/arm/2.95.3/arm-linux/usr)],[],[])
- if test "x${with_libmpeg2_prefix}" != "xno" -a "x${with_libmpeg2_prefix}" != "x"
- then
- AC_MSG_CHECKING(for libmpeg2.a in ${with_libmpeg2_prefix})
- AC_MSG_RESULT(${with_libmpeg2_prefix}/lib/libmpeg2.a)
- PLUGINS="${PLUGINS} libmpeg2"
- LDFLAGS_libmpeg2="${LDFLAGS_libmpeg2} -L${with_libmpeg2_prefix}/lib -lmpeg2"
- CFLAGS_libmpeg2="${CFLAGS_libmpeg2} -I${with_libmpeg2_prefix}/include"
- fi
else
AC_CHECK_HEADERS(mpeg2dec/mpeg2.h, [
AC_MSG_CHECKING(for libmpeg2 version >= 0.3.2)
AC_ARG_WITH(,[Video plugins:])
+dnl Check for DPMS
+if test "x${SYS}" != "xmingw32"
+then
+ CPPFLAGS="${CPPFLAGS_save} -I${x_includes}"
+ AC_CHECK_HEADERS(X11/extensions/dpms.h, [
+ AC_MSG_CHECKING(for DPMSInfo in X11/extensions/dpms.h)
+ AC_EGREP_HEADER(DPMSInfo,X11/extensions/dpms.h,[
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(DPMSINFO_IN_DPMS_H, 1,
+ Define if <X11/extensions/dpms.h> defines DPMSInfo.)
+ ],[
+ AC_MSG_RESULT(no)
+ ])
+ ],,[
+ #include <X11/Xlib.h>
+ ])
+ CPPFLAGS="${CPPFLAGS_save}"
+fi
+
dnl
dnl X11 module
dnl (enabled by default except on win32)
PLUGINS="${PLUGINS} x11"
LDFLAGS_x11="${LDFLAGS_x11} -L${x_libraries} -lX11 -lXext"
CPPFLAGS_x11="${CPPFLAGS_x11} -I${x_includes}"
+ AC_CHECK_HEADERS(X11/extensions/Xinerama.h, [
+ CFLAGS="${CFLAGS_save} -L${x_libraries} -lX11 -lXext"
+ AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
+ AC_DEFINE(HAVE_XINERAMA,1,[Define this if you have libXinerama installed])
+ LDFLAGS_x11="${LDFLAGS_x11} -lXinerama")
+ CFLAGS="${CFLAGS_save}"
+ ])
])
CPPFLAGS="${CPPFLAGS_save}"
fi
:
)
)
+ AC_CHECK_HEADERS(X11/extensions/Xinerama.h, [
+ AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
+ AC_DEFINE(HAVE_XINERAMA,1,[Define this if you have libXinerama installed])
+ LDFLAGS_xvideo="${LDFLAGS_xvideo} -lXinerama")
+ ])
CFLAGS="${CFLAGS_save}"
]
CPPFLAGS="${CPPFLAGS_save}")
LDFLAGS_skins="${LDFLAGS_skins} -loleaut32 -lwinspool -lwinmm -lshell32 -lctl3d32 -ladvapi32 -lwsock32 -lstdc++ -lgdi32 -lcomdlg32 -lole32 -luuid -lcomctl32"
else
if test "x${enable_skins}" = "xyes"; then
- PKG_CHECK_MODULES(GTK2, [gtk+-2.0 >= 2.0.0, gthread-2.0])
+ IMLIB2_PATH="${PATH}"
+ AC_PATH_PROG(IMLIB2_CONFIG_SKINS, imlib2-config, no, ${IMLIB2_PATH})
+ if test "x${IMLIB2_CONFIG_SKINS}" = "xno"; then
+ AC_MSG_ERROR([Couldn't find the imlib2 package. You can download imlib2 from http://enlightenment.org/, or configure with --disable-skins.])
+ fi
+
+ PLUGINS="${PLUGINS} skins"
+ CPPFLAGS_skins="${CPPFLAGS_skins} -O2 -fno-rtti -Imodules/gui/skins -I${x_includes} `${IMLIB2_CONFIG_SKINS} --cflags` -DX11_SKINS"
+ LDFLAGS_skins="${LDFLAGS_skins} -lstdc++ -L${x_libraries} -lXext -lX11 `${IMLIB2_CONFIG_SKINS} --libs`"
PLUGINS="${PLUGINS} skins"
- CPPFLAGS_skins="${CPPFLAGS_skins} -O2 -fno-rtti -Imodules/gui/skins ${GTK2_CFLAGS} -DGTK2_SKINS"
- LDFLAGS_skins="${LDFLAGS_skins} -lstdc++ ${GTK2_LIBS}"
fi
fi
fi
[ --enable-basic-skins Skins interface module without wxWindows dialogs (default disabled)])
if test "x${enable_basic_skins}" = "xyes"; then
if test "x${SYS}" = "xmingw32" -o "x${SYS}" = "xcygwin"; then
- PLUGINS="${PLUGINS} basic_skins"
+
CPPFLAGS_basic_skins="${CPPFLAGS_basic_skins} -O2 -U_OFF_T_ -U_off_t -fno-rtti -Imodules/gui/skins"
LDFLAGS_basic_skins="${LDFLAGS_basic_skins} -loleaut32 -lwinspool -lwinmm -lshell32 -lctl3d32 -ladvapi32 -lwsock32 -lstdc++ -lgdi32 -lcomdlg32 -lole32 -luuid -lcomctl32"
+
else
- PKG_CHECK_MODULES(GTK2, [gtk+-2.0 >= 2.0.0, gthread-2.0])
- PLUGINS="${PLUGINS} basic_skins"
- CPPFLAGS_basic_skins="${CPPFLAGS_basic_skins} -O2 -fno-rtti -Imodules/gui/skins ${GTK2_CFLAGS} -DGTK2_SKINS"
- LDFLAGS_basic_skins="${LDFLAGS_basic_skins} -lstdc++ ${GTK2_LIBS}"
+ IMLIB2_PATH="${PATH}"
+ AC_PATH_PROG(IMLIB2_CONFIG_SKINS, imlib2-config, no, ${IMLIB2_PATH})
+ if test "x${IMLIB2_CONFIG_SKINS}" = "xno"; then
+ AC_MSG_ERROR([Couldn't find the imlib2 package. You can download imlib2 from http://enlightenment.org/, or configure with --disable-basic-skins.])
+ fi
+
+ CPPFLAGS_basic_skins="${CPPFLAGS_basic_skins} -O2 -fno-rtti -Imodules/gui/skins -I${x_includes} `${IMLIB2_CONFIG_SKINS} --cflags` -DX11_SKINS"
+ LDFLAGS_basic_skins="${LDFLAGS_basic_skins} -lstdc++ -L${x_libraries} -lXext -lX11 `${IMLIB2_CONFIG_SKINS} --libs`"
fi
+
+ PLUGINS="${PLUGINS} basic_skins"
CPPFLAGS_basic_skins="${CPPFLAGS_basic_skins} -DBASIC_SKINS"
fi
])
fi
-dnl
-dnl Windows native interface module, built with Borland C++ Builder
-dnl
-AC_ARG_ENABLE(intfwin,
-[ --enable-intfwin Win32 interface support (default disabled)],
-[ if test "x${enable_intfwin}" != "xno"
- then
- AC_CHECK_TOOL(BPR2MAK, bpr2mak, AC_ERROR(bpr2mak not found))
- AC_CHECK_TOOL(BCMAKE, bcmake, AC_ERROR(bcmake not found))
- PLUGINS="${PLUGINS} win32"
- fi ])
-
dnl
dnl ncurses module
dnl