X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac;h=07f859d091aa3162cfd77698a658072e02750d24;hb=0a11f3b2f649b5a1a5da2e7be9b8d00c24436b16;hp=6c8a5623752523db77568a86d0f508696bb13693;hpb=698853e41d9689751ae298f2a1bf16264ac94c40;p=vlc diff --git a/configure.ac b/configure.ac index 6c8a562375..07f859d091 100644 --- a/configure.ac +++ b/configure.ac @@ -1,6 +1,6 @@ dnl Autoconf settings for vlc -AC_COPYRIGHT([Copyright 2002-2010 the VideoLAN team]) +AC_COPYRIGHT([Copyright 2002-2011 the VideoLAN team]) AC_INIT(vlc, 1.2.0-git) VERSION_MAJOR="1" @@ -12,7 +12,7 @@ AC_SUBST(PKGDIR) CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`" CODENAME="Twoflower" -COPYRIGHT_YEARS="1996-2010" +COPYRIGHT_YEARS="1996-2011" AC_CONFIG_SRCDIR(src/libvlc.c) AC_CONFIG_AUX_DIR(autotools) @@ -94,6 +94,24 @@ AS_IF([test -n "${with_binary_version}"],[ [Binary specific version]) ]) +dnl Check how we are asked to build +AS_IF([test "${enable_shared}" = "no" -a "${enable_vlc}" != "no"], [ + AC_MSG_ERROR([VLC is based on plugins. Shared libraries cannot be disabled.]) +]) + +AC_ARG_ENABLE(static-modules, + [ --enable-static-modules Allow module to be linked statically. This produces a non working vlc.]) +AS_IF([test "${enable_static_modules}" = yes], [ + enable_shared="no" + enable_static="yes" + VLC_DEFAULT_PLUGIN_TYPE="builtin" + AS_IF([test "${enable_vlc}" != "no"], + [AC_MSG_WARN([Building modules as static. VLC will not work.])]) +], [ + VLC_DEFAULT_PLUGIN_TYPE="plugin" +]) + +AC_SUBST(VLC_DEFAULT_PLUGIN_TYPE) dnl dnl Check for the contrib directory @@ -138,9 +156,6 @@ AS_IF([test "${with_contrib}" != "no"],[ if test "${SYS}" = "darwin"; then export LD_LIBRARY_PATH="${CONTRIB_DIR}/lib:$LD_LIBRARY_PATH" export DYLD_LIBRARY_PATH="${CONTRIB_DIR}/lib:$DYLD_LIBRARY_PATH" - elif test "${SYS}" = "beos"; then - export LIBRARY_PATH="${CONTRIB_DIR}/lib:$LIBRARY_PATH" - export BELIBRARIES="${CONTRIB_DIR}/lib:$BELIBRARIES" fi ],[ AC_MSG_RESULT([no]) @@ -313,9 +328,9 @@ case "${host_os}" in # add ws2_32 for closesocket, select, recv VLC_ADD_LIBS([libvlccore],[-lws2_32 -lnetapi32 -lwinmm]) VLC_ADD_LDFLAGS([vlc],[-mwindows]) - VLC_ADD_LIBS([activex win32text],[-lgdi32]) + VLC_ADD_LIBS([win32text],[-lgdi32]) VLC_ADD_LIBS([cdda vcdx sdl_image aout_sdl vout_sdl],[-lwinmm]) - VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout access_output_rtmp sap oldhttp stream_out_standard stream_out_rtp stream_out_raop vod_rtsp access_realrtsp rtp oldrc netsync gnutls growl_udp flac ts audioscrobbler lua remoteosd zvbi audiobargraph_a netsync],[-lws2_32]) + VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout access_output_rtmp sap oldhttp stream_out_standard stream_out_select stream_out_rtp stream_out_raop vod_rtsp access_realrtsp rtp oldrc netsync gnutls growl_udp flac ts audioscrobbler lua remoteosd zvbi audiobargraph_a netsync],[-lws2_32]) VLC_ADD_LIBS([filesystem], [-lshlwapi]) dnl dnl DEP and ASLR options @@ -323,7 +338,7 @@ case "${host_os}" in AC_ARG_ENABLE(peflags, [ --enable-peflags peflags use (default enabled on Windows)]) if test "${enable_peflags}" != "no" ; then - AC_CHECK_TOOL(PEFLAGS, peflags, :) + AC_PATH_TOOL(PEFLAGS, peflags, :) fi AC_CHECK_PROGS(U2D, [unix2dos todos], unix2dos) ac_default_prefix="`pwd`/_win32" @@ -346,7 +361,7 @@ case "${host_os}" in fi if test "${SYS}" = "mingwce"; then # add ws2 for closesocket, select, recv - VLC_ADD_LIBS([libvlccore access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_rtmp sap oldhttp netsync audioscrobbler growl rtp stream_out_standard stream_out_rtp remoteosd ts audiobargraph_a netsync],[-lws2]) + VLC_ADD_LIBS([libvlccore access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_rtmp sap oldhttp netsync audioscrobbler growl rtp stream_out_standard stream_out_select stream_out_rtp remoteosd ts audiobargraph_a netsync],[-lws2]) VLC_ADD_LIBS([libvlccore],[-lmmtimer]) AC_CHECK_PROGS(U2D, [unix2dos todos], unix2dos) ac_default_prefix="`pwd`/_wince" @@ -362,32 +377,19 @@ case "${host_os}" in hpux*) SYS=hpux ;; - beos) - SYS=beos - CFLAGS_save="${CFLAGS_save} -Wno-multichar"; CFLAGS="${CFLAGS_save}" - CXXFLAGS_save="${CXXFLAGS_save} -Wno-multichar"; CXXFLAGS="${CXXFLAGS_save}" - VLC_ADD_CXXFLAGS([beos],[]) - VLC_ADD_LIBS([vlc libvlccore logger],[-lbe]) - VLC_ADD_LIBS([dvdnav dvdread],[-ldl]) - VLC_ADD_LIBS([filesystem],[-lpoll]) - LDFLAGS_save="${LDFLAGS_save} -lintl"; LDFLAGS="${LDFLAGS_save}" - dnl Check for BONE - if test -f /boot/beos/system/lib/libbind.so; then - VLC_ADD_LIBS([filesystem access_ftp access_mms access_output_udp netsync sap libvlccore growl_udp],[-lbind -lsocket]) - else - VLC_ADD_LIBS([filesystem access_ftp access_mms access_output_udp netsync sap libvlccore growl_udp],[-lnet]) - fi + symbian*) + SYS=symbian ;; *) SYS="${host_os}" ;; esac -AM_CONDITIONAL(HAVE_BEOS, test "${SYS}" = "beos") AM_CONDITIONAL(HAVE_DARWIN, test "${SYS}" = "darwin") AM_CONDITIONAL(HAVE_LINUX, [test "${SYS}" = "linux"]) AM_CONDITIONAL(HAVE_WIN32, test "${SYS}" = "mingw32") AM_CONDITIONAL(HAVE_WIN64, test "${HAVE_WIN64}" = "1") AM_CONDITIONAL(HAVE_WINCE, test "${SYS}" = "mingwce") +AM_CONDITIONAL(HAVE_SYMBIAN, test "${SYS}" = "symbian") AM_CONDITIONAL(USE_PEFLAGS, [test "${enable_peflags}" = "yes"]) dnl @@ -427,10 +429,6 @@ m4_defun([AC_DEPLIBS_CHECK_METHOD],[]) lt_cv_deplibs_check_method=pass_all -AS_IF([test "${enable_shared}" = "no"], [ - AC_MSG_ERROR([VLC is based on plugins. Shared libraries cannot be disabled.]) -]) - dnl dnl Gettext stuff dnl @@ -549,19 +547,20 @@ dnl Check for system libs needed need_libc=false dnl Check for usual libc functions -AC_CHECK_FUNCS([daemon fcntl fdopendir fstatvfs fork getenv getpwuid_r gettimeofday isatty lstat memalign openat posix_fadvise posix_madvise posix_memalign setenv setlocale stricmp strnicmp tdestroy uselocale]) -AC_REPLACE_FUNCS([asprintf atof atoll getcwd getdelim getpid gmtime_r lldiv localtime_r nrand48 rewind strcasecmp strcasestr strdup strlcpy strncasecmp strndup strnlen strsep strtof strtok_r strtoll swab vasprintf]) +AC_CHECK_FUNCS([daemon fcntl fdopendir fstatvfs fork getenv getpwuid_r gettimeofday isatty lstat memalign mmap openat pread posix_fadvise posix_madvise posix_memalign setlocale stricmp strnicmp uselocale]) +AC_REPLACE_FUNCS([asprintf atof atoll getcwd getdelim getpid gmtime_r lldiv localtime_r nrand48 rewind setenv strcasecmp strcasestr strdup strlcpy strncasecmp strndup strnlen strsep strtof strtok_r strtoll swab tdestroy vasprintf]) AC_CHECK_FUNCS(fdatasync,, [AC_DEFINE(fdatasync, fsync, [Alias fdatasync() to fsync() if missing.]) ]) +# Windows CE doesn't have strcoll() +AC_FUNC_STRCOLL + dnl Check for non-standard system calls -AC_CHECK_FUNCS([accept4 dup3 eventfd vmsplice sched_getaffinity]) +AC_CHECK_FUNCS([accept4 pipe2 eventfd vmsplice sched_getaffinity]) AH_BOTTOM([#include ]) -AC_CHECK_FUNCS(mmap, [VLC_ADD_PLUGIN([access_mmap])]) - SOCKET_LIBS="" AC_CHECK_FUNCS(connect,,[ AC_CHECK_LIB(socket,connect,[ @@ -722,14 +721,6 @@ if test "${ac_cv_have_plugins}" = "no"; then fi fi -# BeOS style -if test "${ac_cv_have_plugins}" = "no"; then - AC_CHECK_HEADERS(image.h) - AC_CHECK_FUNCS(load_add_on, - [AC_DEFINE(HAVE_DL_BEOS, 1, [Define if you have the BeOS dl]) - ac_cv_have_plugins=yes]) -fi - # Only test for dlopen() if the others didn't work LIBDL="" if test "${ac_cv_have_plugins}" = "no" -o "${SYS}" = "darwin"; then @@ -805,6 +796,7 @@ AC_EGREP_HEADER(strncasecmp,strings.h,[ AC_MSG_RESULT(no)]) dnl Check for headers +AC_CHECK_HEADERS([search.h]) AC_CHECK_HEADERS(getopt.h strings.h locale.h xlocale.h) AC_CHECK_HEADERS(fcntl.h sys/time.h sys/ioctl.h sys/stat.h) AC_CHECK_HEADERS([arpa/inet.h netinet/in.h netinet/udplite.h sys/eventfd.h]) @@ -888,7 +880,7 @@ AC_CHECK_HEADERS(zlib.h, [ have_zlib=yes ], [ have_zlib=no ]) AM_CONDITIONAL(HAVE_ZLIB, [ test "${have_zlib}" = "yes" ]) if test "${have_zlib}" = "yes" then - VLC_ADD_LIBS([access_http gme mp4 skins2 sap mkv unzip zip],[-lz]) + VLC_ADD_LIBS([access_http mp4 skins2 sap mkv unzip zip],[-lz]) PKG_CHECK_MODULES([MINIZIP], [minizip] , [ have_minizip=yes ], [ AC_CHECK_HEADERS([unzip.h], [ have_minizip=yes @@ -1043,16 +1035,12 @@ if test "${ac_cv_c_fast_math}" != "no"; then fi dnl Check for -funroll-loops -dnl Disabled on BeOS because BeOS' gcc is buggy and may crash with it -if test "${SYS}" != "beos" -then - AC_CACHE_CHECK([if \$CC accepts -funroll-loops], - [ac_cv_c_unroll_loops], - [CFLAGS="${CFLAGS_save} -funroll-loops" - AC_TRY_COMPILE([],,ac_cv_c_unroll_loops=yes, ac_cv_c_unroll_loops=no)]) - if test "${ac_cv_c_unroll_loops}" != "no"; then - CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -funroll-loops" - fi +AC_CACHE_CHECK([if \$CC accepts -funroll-loops], + [ac_cv_c_unroll_loops], + [CFLAGS="${CFLAGS_save} -funroll-loops" + AC_TRY_COMPILE([],,ac_cv_c_unroll_loops=yes, ac_cv_c_unroll_loops=no)]) +if test "${ac_cv_c_unroll_loops}" != "no"; then + CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -funroll-loops" fi dnl Check for -fomit-frame-pointer @@ -1139,7 +1127,7 @@ dnl dnl Some plugins aren't useful on some platforms dnl if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then - VLC_ADD_PLUGIN([dynamicoverlay]) + VLC_ADD_PLUGIN([dynamicoverlay access_shm]) elif test "${SYS}" != "mingwce"; then VLC_ADD_PLUGIN([access_smb dmo globalhotkeys]) VLC_ADD_LIBS([dmo],[-lole32 -luuid]) @@ -1493,8 +1481,10 @@ if test -n "${with_tuning}"; then CFLAGS_TUNING="-mtune=${with_tuning}" fi else - if test "${SYS}" = "darwin" -a "${host_cpu}" != "powerpc"; then + if test "${SYS}" = "darwin" -a "${host_cpu}" = "i686"; then CFLAGS_TUNING="-march=prescott -mtune=generic" + elif test "${SYS}" = "darwin" -a "${host_cpu}" = "x86_64"; then + CFLAGS_TUNING="-march=core2 -mtune=core2" elif test "${host_cpu}" = "i686" -o "${host_cpu}" = "i586" -o "${host_cpu}" = "i486" -o "${host_cpu}" = "i386"; then CFLAGS_TUNING="-mtune=pentium2" elif test "${host_cpu}" = "x86_64"; then @@ -1698,7 +1688,7 @@ AS_IF([test "${enable_growl}" != "no"], [ dnl dnl Libnotify notification plugin dnl -PKG_ENABLE_MODULES_VLC([NOTIFY], [], [libnotify], [libnotify notification], [auto]) +PKG_ENABLE_MODULES_VLC([NOTIFY], [], [libnotify gtk+-2.0], [libnotify notification], [auto]) dnl dnl Taglibplugin @@ -1851,15 +1841,32 @@ fi dnl dnl - special access module for dc1394 input dnl - dv module: digital video module check for libraw1394 +dnl - linsys modules: access module check for libzvbi dnl PKG_ENABLE_MODULES_VLC([DC1394], [], [libraw1394 >= 2.0.1 libdc1394-2 >= 2.1.0], [dc1394 access module], [auto]) PKG_ENABLE_MODULES_VLC([DV], [access_dv], [libraw1394 >= 2.0.1 libavc1394 >= 0.5.3], [DV input module], [auto]) +AC_ARG_ENABLE(linsys, + [ --enable-linsys Linux Linear Systems Ltd. SDI and HD-SDI input cards (default enabled)]) +case "${SYS}" in + linux*) +if test "${enable_linsys}" != "no" -a "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then + VLC_ADD_PLUGIN([linsys_hdsdi]) + PKG_CHECK_MODULES(LINSYS_SDI, zvbi-0.2 >= 0.2.28, + [ VLC_ADD_LIBS([linsys_sdi],[$LINSYS_SDI_LIBS]) + VLC_ADD_CFLAGS([linsys_sdi],[$LINSYS_SDI_CFLAGS]) + VLC_ADD_PLUGIN([linsys_sdi]) ], + [AC_MSG_WARN([Couldn't find zvbi >= 0.2.28, install libzvbi-dev ?])] + ) +fi +;; +esac + dnl dnl dvdread module: check for libdvdread dnl dnl prepend -ldvdcss on OS that need it -AS_CASE(["${SYS}"], [mingw32|darwin|beos], [VLC_ADD_LIBS([dvdread], [-ldvdcss])]) +AS_CASE(["${SYS}"], [mingw32|darwin], [VLC_ADD_LIBS([dvdread], [-ldvdcss])]) PKG_ENABLE_MODULES_VLC([DVDREAD], [], [dvdread], [dvdread input module], [auto]) dnl @@ -1870,28 +1877,19 @@ AC_ARG_ENABLE(dvdnav, if test "${enable_dvdnav}" != "no" then dnl prepend -ldvdcss on OS that need it - AS_CASE(["${SYS}"], [mingw32|darwin|beos], [VLC_ADD_LIBS([dvdnav], [-ldvdcss])]) + AS_CASE(["${SYS}"], [mingw32|darwin], [VLC_ADD_LIBS([dvdnav], [-ldvdcss])]) - DVDNAV_PATH="${PATH}" - AC_ARG_WITH(dvdnav-config-path, - [ --with-dvdnav-config-path=PATH dvdnav-config path (default search in \$PATH)], - [ if test "${with_dvdnav_config_path}" != "no" - then - DVDNAV_PATH="${with_dvdnav_config_path}:${PATH}" - fi ]) - AC_PATH_PROG(DVDNAV_CONFIG, dvdnav-config, no, ${DVDNAV_PATH}) - if test "${DVDNAV_CONFIG}" != "no" - then + PKG_CHECK_MODULES(DVDNAV, dvdnav, [ VLC_ADD_PLUGIN([dvdnav]) - VLC_ADD_CFLAGS([dvdnav],[`${DVDNAV_CONFIG} --cflags`]) - VLC_ADD_LIBS([dvdnav],[`${DVDNAV_CONFIG} --libs`]) + VLC_ADD_CFLAGS([dvdnav],[${DVDNAV_CFLAGS}]) + VLC_ADD_LIBS([dvdnav],[${DVDNAV_LIBS}]) AC_CHECK_LIB(dvdnav, dvdnav_get_video_resolution, - AC_DEFINE(HAVE_DVDNAV_GET_VIDEO_RESOLUTION, 1, [Define if you have dvdnav_get_video_resolution.]), - [], [${LIBS_dvdnav}]) + AC_DEFINE(HAVE_DVDNAV_GET_VIDEO_RESOLUTION, 1, [Define if you have dvdnav_get_video_resolution.]), + [], [${LIBS_dvdnav}]) AC_CHECK_LIB(dvdnav, dvdnav_describe_title_chapters, - AC_DEFINE(HAVE_DVDNAV_DESCRIBE_TITLE_CHAPTERS, 1, [Define if you have dvdnav_describe_title_chapters.]), - [], [${LIBS_dvdnav}]) - fi + AC_DEFINE(HAVE_DVDNAV_DESCRIBE_TITLE_CHAPTERS, 1, [Define if you have dvdnav_describe_title_chapters.]), + [], [${LIBS_dvdnav}])], + [AC_MSG_WARN(dvdnav library not found)]) fi dnl @@ -1933,12 +1931,12 @@ fi dnl dnl Blu-ray Disc Support with libbluray dnl -PKG_ENABLE_MODULES_VLC([BLURAY], [libbluray], [libbluray], (libbluray for Blu-ray disc support ) ) +PKG_ENABLE_MODULES_VLC([BLURAY], [libbluray], [libbluray >= 0.2 ], (libbluray for Blu-ray disc support ) ) dnl dnl OpenCV wrapper and example filters dnl -PKG_ENABLE_MODULES_VLC([OPENCV], [opencv_example], [opencv], (OpenCV (computer vision) filter), [off]) +PKG_ENABLE_MODULES_VLC([OPENCV], [opencv_example opencv_wrapper], [opencv], (OpenCV (computer vision) filter), [off]) dnl @@ -1971,109 +1969,38 @@ fi dnl dnl libdvbpsi ts demux/mux dnl -AC_ARG_ENABLE(dvbpsi, - [ --enable-dvbpsi dvbpsi ts mux and demux module (default enabled)]) +AC_ARG_ENABLE(dvb, + [ --enable-dvb MPEG-TS and DVB support (default auto)]) have_dvbpsi=no -if test "${enable_dvbpsi}" != "no" -then - AC_ARG_WITH(dvbpsi, - [ --with-dvbpsi=PATH libdvbpsi headers and libraries]) - AC_ARG_WITH(dvbpsi, - [ --with-dvbpsi-tree=PATH libdvbpsi tree for static linking]) - case "${with_dvbpsi}" in - ""|yes) - if test -z "${with_dvbpsi_tree}" - then - AC_CHECK_HEADERS(dvbpsi/dr.h, - [ VLC_ADD_PLUGIN([ts]) - if test "${enable_sout}" != "no"; then - VLC_ADD_PLUGIN([mux_ts]) - fi - VLC_ADD_LIBS([mux_ts ts dvb],[-ldvbpsi]) - have_dvbpsi=yes], - [ AC_MSG_WARN([cannot find libdvbpsi headers]) ], - [#if defined( HAVE_STDINT_H ) -# include -#elif defined( HAVE_INTTYPES_H ) -# include -#endif -#include -#include -#include -#include ]) - else - AC_MSG_CHECKING(for libdvbpsi.a in ${with_dvbpsi_tree}) - real_dvbpsi_tree="`cd ${with_dvbpsi_tree} 2>/dev/null && pwd`" - if test -z "${real_dvbpsi_tree}" - then - dnl The given directory can't be found - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot cd to ${with_dvbpsi_tree}]) - fi - if test -f "${real_dvbpsi_tree}/src/.libs/libdvbpsi.a" - then - dnl Use a custom libdvbpsi - AC_MSG_RESULT(${real_dvbpsi_tree}/src/.libs/libdvbpsi.a) - VLC_ADD_PLUGIN([ts]) - if test "${enable_sout}" != "no"; then - VLC_ADD_PLUGIN([mux_ts]) - fi - VLC_ADD_CPPFLAGS([mux_ts ts dvb],[-I${real_dvbpsi_tree}/src]) - VLC_ADD_LIBS([mux_ts ts dvb],[${real_dvbpsi_tree}/src/.libs/libdvbpsi.a]) - have_dvbpsi=yes - else - dnl The given libdvbpsi wasn't built - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${real_dvbpsi_tree}/src/.libs/libdvbpsi.a, make sure you compiled libdvbpsi in ${with_dvbpsi_tree}]) - fi - fi - ;; - no) - dnl Compile without dvbpsi - ;; - *) - AC_MSG_CHECKING(for dvbpsi headers in ${with_dvbpsi}) - if test -z "${with_dvbpsi}" - then - LDFLAGS_test="" - CPPFLAGS_test="" - else - LDFLAGS_test="-L${with_dvbpsi}/lib" - CPPFLAGS_test="-I${with_dvbpsi}/include" - fi - CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test}" +AS_IF([test "${enable_dvb}" != "no"], [ AC_CHECK_HEADERS([dvbpsi/dr.h],[ VLC_ADD_PLUGIN([ts]) if test "${enable_sout}" != "no"; then - AC_CHECK_LIB(dvbpsi, dvbpsi_SDTServiceAddDescriptor, - [VLC_ADD_PLUGIN([mux_ts])], [], [${LDFLAGS_test} -ldvbpsi]) + AC_CHECK_LIB(dvbpsi, dvbpsi_SDTServiceAddDescriptor, [VLC_ADD_PLUGIN([mux_ts])], [], [-ldvbpsi]) fi - VLC_ADD_CPPFLAGS([mux_ts ts dvb],[${CPPFLAGS_test}]) - VLC_ADD_LIBS([mux_ts ts dvb],[${LDFLAGS_test} -ldvbpsi]) + VLC_ADD_LIBS([mux_ts ts dvb],[-ldvbpsi]) have_dvbpsi=yes - ],[ - if test -n "${enable_dvbpsi}" - then - AC_MSG_ERROR([Could not find libdvbpsi on your system: you may get it from www.videolan.org, you'll need at least version 0.1.6]) - fi - ], - [#if defined( HAVE_STDINT_H ) -# include -#elif defined( HAVE_INTTYPES_H ) -# include -#endif -#include -#include -#include -#include ]) - CPPFLAGS="${CPPFLAGS_save}" - ;; - esac - AC_CHECK_LIB(dvbpsi, dvbpsi_GenSDTSections, [ - AC_DEFINE(HAVE_DVBPSI_SDT, 1, [Define if you have dvbpsi_GenSDTSections.]) - ], [], [${LIBS_ts}]) -fi + AC_CHECK_LIB(dvbpsi, dvbpsi_GenSDTSections, [ + AC_DEFINE(HAVE_DVBPSI_SDT, 1, [Define if you have dvbpsi_GenSDTSections.]) + ], [], [${LIBS_ts}]) + ],[ + AS_IF([test -n "${enable_dvb}"], [ + AC_MSG_ERROR([Could not find libdvbpsi on your system: you need at least version 0.1.6]) + ], [ + AC_MSG_WARN([Could not find libdvbpsi on your system: you need at least version 0.1.6]) + ]) + ],[ #if defined( HAVE_STDINT_H ) + # include + #elif defined( HAVE_INTTYPES_H ) + # include + #endif + #include + #include + #include + #include + ]) +]) dnl dnl Video4Linux2 plugin @@ -2119,31 +2046,31 @@ AC_ARG_ENABLE(pvr, if test "${enable_pvr}" = "yes" then VLC_ADD_PLUGIN([pvr]) - AC_ARG_WITH(videodev2, - [ --with-videodev2=FILE Location of videodev2.h file (default /usr/include/linux/videodev2.h)],[],[]) - if test "${with_videodev2}" != "no" -a -n "${with_videodev2}" - then - AC_DEFINE_UNQUOTED(VIDEODEV2_H_FILE, "${with_videodev2}", [Location of videodev2.h]) - fi +fi - AC_CACHE_CHECK([for new linux/videodev2.h], - [ac_cv_new_linux_videodev2_h], - [AC_TRY_COMPILE([ - #include - # ifdef VIDEODEV2_H_FILE - # include VIDEODEV2_H_FILE - # else - # include - # endif - ], - [struct v4l2_ext_controls ctrls; ctrls.ctrl_class = V4L2_CTRL_CLASS_MPEG; ], - ac_cv_new_linux_videodev2_h=yes, - ac_cv_new_linux_videodev2_h=no)]) - if test "${ac_cv_new_linux_videodev2_h}" != "no"; then - AC_DEFINE(HAVE_NEW_LINUX_VIDEODEV2_H, 1, [Define if new linux/videodev2.h present]) +dnl +dnl special access module for Blackmagic SDI cards +dnl +AC_ARG_ENABLE(decklink, + [ --enable-decklink Blackmagic DeckLink SDI access module (default enabled)]) +if test "${enable_decklink}" != "no" +then + AC_ARG_WITH(decklink_sdk, + [ --with-decklink-sdk=DIR Location of Blackmagic DeckLink SDI SDK],[],[]) + if test "${with_decklink_sdk}" != "no" -a -n "${with_decklink_sdk}" + then + VLC_ADD_CPPFLAGS([decklink],[-I${with_decklink_sdk}/include]) fi + CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_decklink}" + AC_LANG_PUSH(C++) + AC_CHECK_HEADERS(DeckLinkAPIDispatch.cpp, [ + VLC_ADD_PLUGIN([decklink]) + ],[AC_MSG_WARN(Blackmagic DeckLink SDI include files not found, decklink disabled)]) + AC_LANG_POP(C++) + CPPFLAGS="${CPPFLAGS_save}" fi + dnl dnl gnomeVFS access module dnl @@ -2230,29 +2157,13 @@ then fi dnl -dnl DVB-S/DVB-T/DVB-C satellite/teresterial/cable input using v4l2 +dnl DVB-S/DVB-T/DVB-C satellite/teresterial/cable input dnl -AC_ARG_ENABLE(dvb, - [ --enable-dvb DVB-S/T/C card support (default enabled)]) - -if test "${enable_dvb}" != "no" -then - AS_IF([test "${have_dvbpsi}" = "yes" ],[ - AC_ARG_WITH(dvb, - [ --with-dvb=PATH path to a dvb- and v4l2-enabled kernel tree],[],[]) - if test "${with_dvb}" != "no" -a -n "${with_dvb}" - then - VLC_ADD_CFLAGS([dvb],[-I${with_dvb}/include]) - fi - CPPFLAGS="${CPPFLAGS_save} -I${with_dvb}/include" - AC_CHECK_HEADERS(linux/dvb/version.h linux/dvb/frontend.h, [ - VLC_ADD_PLUGIN([dvb]) - ],[AC_MSG_WARN(linux-dvb headers not found, dvb disabled)]) - CPPFLAGS="${CPPFLAGS_save}" - ],[ - AC_MSG_WARN([the dvb access module requires libdvbpsi]) - ]) -fi +AS_IF([test "${have_dvbpsi}" = "yes" ], [ + AC_CHECK_HEADER([linux/dvb/version.h], [ + VLC_ADD_PLUGIN([dvb]) + ]) +]) dnl dnl Screen capture module @@ -2272,10 +2183,6 @@ if test "${enable_screen}" != "no"; then VLC_ADD_LIBS([screen],[-lgdi32]) elif test "${SYS}" = "mingwce"; then CPPFLAGS="${CPPFLAGS_save}" - elif test "${SYS}" = "beos"; then - VLC_ADD_PLUGIN([screen]) - VLC_ADD_CXXFLAGS([screen],[]) - VLC_ADD_LIBS([screen],[-lbe]) fi fi @@ -2295,6 +2202,29 @@ AC_CHECK_FUNCS(inet_ntop,[ AC_DEFINE(HAVE_INET_NTOP, 1, [Define to 1 if you have inet_ntop().])]) +dnl +dnl GME demux plugin +dnl +AC_ARG_ENABLE(gme, + [ --enable-gme Game Music Emu support (default auto)]) +AS_IF([test "${enable_gme}" != "no"], [ + AC_CHECK_HEADER([gme/gme.h], [ + VLC_ADD_LIBS([gme], [-lgme]) + VLC_ADD_PLUGIN([gme]) + ], [ + AS_IF([test "x${enable_gme}" != "x"], [ + AC_MSG_ERROR([GME cannot be found. Please install the development files.]) + ]) + ]) +]) + + +dnl +dnl SIDPlay plugin +dnl +PKG_ENABLE_MODULES_VLC([SID], [], [libsidplay2], [C64 sid demux support], [auto], [], [-lresid-builder]) + + dnl dnl ogg demux plugin dnl @@ -2343,14 +2273,14 @@ if test "${enable_mkv}" != "no" -a "${CXX}" != ""; then AC_CHECK_LIB(ebml_pic, main, [ VLC_ADD_PLUGIN([mkv]) VLC_ADD_LIBS([mkv],[-lmatroska -lebml_pic]) - ], + ],[ AC_CHECK_LIB(ebml, main, [ VLC_ADD_PLUGIN([mkv]) VLC_ADD_LIBS([mkv],[-lmatroska -lebml]) ]) - ) - ], - [AC_MSG_RESULT([no]) + ]) + ], [ + AC_MSG_RESULT([no]) AC_MSG_ERROR([Your libmatroska is too old: you may get a more recent one from http://dl.matroska.org/downloads/libmatroska/. Alternatively you can use --disable-mkv to disable the matroska plugin.]) ]) ]) @@ -2394,44 +2324,6 @@ then VLC_ADD_LIBS([mpc],[-lmpcdec])])]) fi -dnl -dnl game music emu demux plugin -dnl -AC_ARG_ENABLE(gme, - [ --enable-gme Game Music Emu demux support (default enabled)]) -if test "${enable_gme}" != "no" -a "${CXX}" != ""; -then - AC_LANG_PUSH(C++) - AC_ARG_WITH(gme-tree, - [ --with-gme-tree=PATH gme tree for static linking]) - if test -n "${with_gme_tree}" - then - AC_MSG_CHECKING(for libgme.a in ${with_mod_tree}) - real_gme_tree="`cd ${with_gme_tree} 2>/dev/null && pwd`" - if test -z "${real_gme_tree}" - then - dnl The given directory can't be found - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot cd to ${with_gme_tree}]) - fi - if test -f "${real_gme_tree}/gme/libgme.a" - then - dnl Use a custom gme - AC_MSG_RESULT(${real_gme_tree}/gme/libgme.a) - VLC_ADD_PLUGIN([gme]) - VLC_ADD_LIBS([gme],[${real_gme_tree}/gme/libgme.a]) - VLC_ADD_CXXFLAGS([gme],[-I${real_gme_tree}/gme]) - else - dnl The given gme wasn't built - AC_MSG_RESULT(no) - AC_MSG_ERROR([cannot find ${real_mod_tree}/gme/libgme.a, make sure you compiled gme in ${with_gme_tree}]) - fi - else - AC_MSG_WARN([only static linking is available, you must provide a gme-tree]) - fi - AC_LANG_POP(C++) -fi - dnl dnl Codec plugins dnl @@ -2469,6 +2361,35 @@ then VLC_ADD_LIBS([omxil], [$LIBDL]) fi +dnl +dnl CrystalHD codec plugin +dnl +AC_ARG_ENABLE(crystalhd, + [ --enable-crystalhd crystalhd codec plugin (default auto)]) +if test "${enable_crystalhd}" != "no"; then + AC_CHECK_HEADER(libcrystalhd/libcrystalhd_if.h, [ + VLC_ADD_PLUGIN([crystalhd]) + VLC_ADD_LIBS([crystalhd], [-lcrystalhd]) + ],[ + if test "${SYS}" = "mingw32" ; then + AC_CHECK_HEADERS(libcrystalhd/bc_dts_defs.h, [ + VLC_ADD_PLUGIN([crystalhd]) + AC_CHECK_HEADERS(libcrystalhd/bc_drv_if.h, [ + VLC_ADD_LIBS([crystalhd], [-lbcmDIL]) + ]) + ],[ + AS_IF([test x"${enable_crystalhd}" = "xyes"], + [AC_MSG_ERROR("Could not find CrystalHD development headers")], + [AC_MSG_WARN("Could not find CrystalHD development headers")]) + ],[#define __LINUX_USER__ + #include + ]) + fi + ],[ + #include + ]) +fi + dnl dnl mad plugin dnl @@ -2552,8 +2473,8 @@ AS_IF([test "${enable_avcodec}" != "no"], [ VLC_SAVE_FLAGS CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}" CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}" - AC_CHECK_HEADERS(libavcodec/avcodec.h ffmpeg/avcodec.h) - AC_CHECK_HEADERS(libavutil/avutil.h ffmpeg/avutil.h) + AC_CHECK_HEADERS(libavcodec/avcodec.h) + AC_CHECK_HEADERS(libavutil/avutil.h) VLC_ADD_PLUGIN([avcodec]) VLC_ADD_LIBS([avcodec],[$AVCODEC_LIBS]) AS_IF([test "${ac_cv_ld_bsymbolic}" != "no"], [ @@ -2669,8 +2590,8 @@ then VLC_SAVE_FLAGS CPPFLAGS="${CPPFLAGS} ${AVFORMAT_CFLAGS}" CFLAGS="${CFLAGS} ${AVFORMAT_CFLAGS}" - AC_CHECK_HEADERS(libavformat/avformat.h ffmpeg/avformat.h) - AC_CHECK_HEADERS(libavutil/avutil.h ffmpeg/avutil.h) + AC_CHECK_HEADERS(libavformat/avformat.h libavformat/avio.h) + AC_CHECK_HEADERS(libavutil/avutil.h) AS_IF([test "$enable_merge_ffmpeg" = "no"], [ VLC_ADD_PLUGIN([avformat access_avio]) VLC_ADD_LIBS([avformat access_avio],[$AVFORMAT_LIBS $AVUTIL_LIBS]) @@ -2702,7 +2623,7 @@ then VLC_SAVE_FLAGS CPPFLAGS="${CPPFLAGS} ${SWSCALE_CFLAGS}" CFLAGS="${CFLAGS} ${SWSCALE_CFLAGS}" - AC_CHECK_HEADERS(libswscale/swscale.h ffmpeg/swscale.h) + AC_CHECK_HEADERS(libswscale/swscale.h) VLC_ADD_PLUGIN([swscale]) VLC_ADD_LIBS([swscale],[$SWSCALE_LIBS]) VLC_ADD_CFLAGS([swscale],[$SWSCALE_CFLAGS]) @@ -2825,18 +2746,6 @@ if test "${enable_realrtsp}" = "yes"; then VLC_ADD_PLUGIN([access_realrtsp]) fi -dnl -dnl skins2 module -dnl -AC_ARG_ENABLE(libtar, - [ --enable-libtar libtar support for skins2 (default enabled)]) - -AS_IF([test "${enable_libtar}" != "no"],[ - AC_CHECK_HEADERS(libtar.h, [ - VLC_ADD_LIBS([skins2],[-ltar]) - ] ) -]) - dnl dnl A52/AC3 decoder plugin dnl @@ -2965,7 +2874,7 @@ PKG_ENABLE_MODULES_VLC([DIRAC], [], [dirac >= 0.10.0], [dirac encoder], [auto]) dnl dnl schroedinger decoder plugin (for dirac format video) dnl -PKG_ENABLE_MODULES_VLC([SCHROEDINGER], [], [schroedinger-1.0 >= 1.0.6], [dirac decoder using schroedinger], [auto]) +PKG_ENABLE_MODULES_VLC([SCHROEDINGER], [], [schroedinger-1.0 >= 1.0.10], [dirac decoder and encoder using schroedinger], [auto]) dnl dnl PNG decoder module @@ -3173,7 +3082,7 @@ dnl X C Bindings modules dnl AC_ARG_ENABLE(xcb, [ --enable-xcb X11 support with XCB (default enabled)],, [ - AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -a "${SYS}" != "darwin"], [ + AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -a "${SYS}" != "darwin" -a "${SYS}" != "symbian"], [ enable_xcb="yes" ], [ enable_xcb="no" @@ -3184,21 +3093,16 @@ AC_ARG_ENABLE(xvideo, enable_xvideo="$enable_xcb" ]) -need_xid_provider="no" +have_xcb="no" AS_IF([test "${enable_xcb}" != "no"], [ dnl libxcb PKG_CHECK_MODULES(XCB, [xcb]) + have_xcb="yes" PKG_CHECK_MODULES(XCB_SHM, [xcb-shm]) - VLC_ADD_PLUGIN([screensaver xcb_x11 xcb_window xcb_screen xcb_apps]) AS_IF([test "${enable_xvideo}" != "no"], [ PKG_CHECK_MODULES(XCB_XV, [xcb-xv >= 1.1.90.1], [ VLC_ADD_PLUGIN([xcb_xv]) - ], [ - PKG_CHECK_MODULES(XCB_XV, [xcb-xv], [ - VLC_ADD_PLUGIN([xcb_xv]) - VLC_ADD_CFLAGS([xcb_xv], [-DXCB_XV_OLD]) - ]) ]) ]) @@ -3212,27 +3116,16 @@ AS_IF([test "${enable_xcb}" != "no"], [ dnl xcb-utils PKG_CHECK_MODULES(XCB_KEYSYMS, [xcb-keysyms >= 0.3.4], [ - have_xcb_keysyms="yes" - ], [ - PKG_CHECK_MODULES(XCB_KEYSYMS, [xcb-keysyms], [ - have_xcb_keysyms="yes" - VLC_ADD_CFLAGS([globalhotkeys], [-DXCB_KEYSYM_OLD_API]) - ], [ - have_xcb_keysyms="no" - need_xid_provider="yes" - AC_MSG_WARN([libxcb-keysyms not found. Hotkeys will not be supported.]) - ]) - ]) - - AS_IF([test "${have_xcb_keysyms}" = "yes"], [ PKG_CHECK_MODULES(XPROTO, [xproto]) VLC_ADD_PLUGIN([globalhotkeys]) VLC_ADD_CFLAGS([globalhotkeys], [${XCB_KEYSYMS_CFLAGS} ${XCB_CFLAGS}]) VLC_ADD_LIBS([globalhotkeys], [${XCB_KEYSYMS_LIBS} ${XCB_LIBS}]) VLC_ADD_CFLAGS([xcb_window], [-DHAVE_XCB_KEYSYMS]) + ], [ + AC_MSG_WARN([libxcb-keysyms (0.3.4 or later) not found. Hotkeys will not work.]) ]) - VLC_ADD_PLUGIN([xdg_screensaver]) ]) +AM_CONDITIONAL([HAVE_XCB], [test "${have_xcb}" = "yes"]) AC_ARG_ENABLE(glx, [ --enable-glx X11 OpenGL (GLX) support (default enabled)],, [ @@ -3250,8 +3143,14 @@ AS_IF([test "${enable_glx}" != "no"], [ ]) VLC_ADD_PLUGIN([xcb_glx]) ]) -AC_SUBST([GL_CFLAGS]) -AC_SUBST([GL_LIBS]) + +dnl +dnl OpenGL +dnl +PKG_ENABLE_MODULES_VLC([GL], [], [gl], [OpenGL support], [auto]) +PKG_ENABLE_MODULES_VLC([GLES1], [], [glesv1_cm], [OpenGL ES v1 support], [auto]) +PKG_ENABLE_MODULES_VLC([GLES2], [], [glesv2], [OpenGL ES v2 support], [auto]) +PKG_ENABLE_MODULES_VLC([EGL], [], [egl], [EGL support], [auto]) dnl dnl SDL module @@ -3358,6 +3257,30 @@ then VLC_ADD_PLUGIN([snapshot]) fi +dnl +dnl iOS vout module +dnl +AC_ARG_ENABLE(ios-vout, + [ --enable-ios-vout iOS video output module (default disabled)]) +if test "${enable_ios_vout}" = "yes" +then + VLC_ADD_PLUGIN([vout_ios]) + VLC_ADD_CFLAGS([vout_ios], [-DUSE_OPENGL_ES=1]) + VLC_ADD_LDFLAGS([vout_ios], [-Wl,-framework,OpenGLES,-framework,QuartzCore,-framework,UIKit,-framework,Foundation]) +fi + +dnl +dnl QuartzText vout module (iOS/Mac OS) +dnl +AC_ARG_ENABLE(macosx-quartztext, + [ --enable-macosx-quartztext Mac OS X quartz text module (default enabled on Mac OS X)]) +if test "x${enable_macosx_quartztext}" != "xno" && + (test "${SYS}" = "darwin" || test "${enable_macosx_quartztext}" = "yes") +then + VLC_ADD_PLUGIN([quartztext]) + VLC_ADD_LDFLAGS([quartztext],[-Wl,-framework,ApplicationServices]) +fi + dnl dnl Windows DirectX module dnl @@ -3373,6 +3296,7 @@ if test "${enable_directx}" != "no" then if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" then + VLC_ADD_LIBS([directx],[-luser32]) AC_CHECK_HEADERS(ddraw.h, [ VLC_ADD_PLUGIN([directx aout_directx]) VLC_ADD_LIBS([directx],[-lgdi32]) @@ -3428,14 +3352,10 @@ fi dnl dnl Linux framebuffer module dnl -AC_ARG_ENABLE(fb, - [ --enable-fb Linux framebuffer support (default enabled on Linux)]) - if test "${enable_fb}" != "no" - then - AC_CHECK_HEADERS(linux/fb.h, [ - VLC_ADD_PLUGIN([fb]) - ]) - fi +AC_CHECK_HEADER([linux/fb.h], [ + VLC_ADD_PLUGIN([fb]) +]) + dnl dnl DirectFB module @@ -3553,15 +3473,7 @@ fi dnl dnl Pulseaudio module dnl -AS_IF([test "${no_x}" = "yes"], [ - AS_IF([test "${enable_pulse}" = "yes"], [ - AC_MSG_ERROR([Xlib is required for VLC PulseAudio support -(see http://www.pulseaudio.org/ticket/799 for further reference).]) - ]) -], [ - PKG_ENABLE_MODULES_VLC([PULSE], [], [libpulse >= 0.9.11], [Pulseaudio support], [auto]) - VLC_ADD_LIBS([pulse], [${X_LIBS} ${X_PRE_LIBS} -lX11]) -]) +PKG_ENABLE_MODULES_VLC([PULSE], [], [libpulse >= 0.9.22], [PulseAudio support], [auto]) dnl dnl Portaudio module @@ -3625,22 +3537,6 @@ then VLC_ADD_LDFLAGS([audioqueue], [-Wl,-framework,AudioToolbox,-framework,CoreFoundation]) fi -dnl -dnl Roku HD1000 audio -dnl -AC_ARG_ENABLE(hd1000a, - [ --enable-hd1000a HD1000 audio module (default enabled on HD1000)]) -if test "${enable_hd1000a}" != "no" -a "${CXX}" != "" && - (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" || - test "${enable_hd1000a}" = "yes") -then - AC_LANG_PUSH([C++]) - AC_CHECK_HEADERS(deschutes/libraries/hdmachinex225/PCMAudioPlayer.h, [ - VLC_ADD_PLUGIN([hd1000a]) - AC_CHECK_LIB(HDMachineX225,main,VLC_ADD_LIBS([hd1000a],[-lHDMachineX225])) ]) - AC_LANG_POP([C++]) -fi - dnl dnl JACK modules dnl @@ -3649,8 +3545,8 @@ PKG_ENABLE_MODULES_VLC([JACK], [jack access_jack], [jack], [JACK audio I/O modul dnl dnl UPnP Plugin (Intel SDK) dnl -PKG_ENABLE_MODULES_VLC([UPNP], [upnp_intel], [libupnp], [Intel UPnp SDK],[auto]) -VLC_ADD_CXXFLAGS([upnp_intel],[${UPNP_CFLAGS}]) +PKG_ENABLE_MODULES_VLC([UPNP], [upnp], [libupnp], [Intel UPnp SDK],[auto]) +VLC_ADD_CXXFLAGS([upnp],[${UPNP_CFLAGS}]) dnl dnl Interface plugins @@ -3661,50 +3557,51 @@ EXTEND_HELP_STRING([Interface plugins:]) dnl dnl Skins2 module dnl +AC_ARG_ENABLE(libtar, + [ --enable-libtar libtar support for skins2 (default auto)]) +AS_IF([test "${enable_libtar}" != "no"], [ + AC_CHECK_HEADERS(libtar.h, [ + VLC_ADD_LIBS([skins2],[-ltar]) + ]) +]) + AC_ARG_ENABLE(skins2, [AS_HELP_STRING([--enable-skins2],[Skins2 interface module (default - enabled except on MacOSX, BeOS and WinCE)])]) -if test "${enable_skins2}" = "yes" || - (test "${SYS}" != "darwin" && test "${SYS}" != "beos" && - test "${SYS}" != "mingwce" && test "${enable_skins2}" != "no"); then - - dnl test for the required libraries - skins2_missing_lib="no" - + enabled except on MacOSX and WinCE)])],, [ + AS_IF([test "${SYS}" != "darwin" && test "${SYS}" != "mingwce"], [ + enable_skins2="yes" + ], [ + enable_skins2="no" + ]) +]) +AS_IF([test "${enable_skins2}" = "yes"], [ dnl freetype - if test "${have_freetype}" != "yes"; then - skins2_missing_lib="yes" - if test "${enable_skins2}" = "yes"; then - AC_MSG_ERROR([Could not find freetype (required for skins2)]) - fi - fi + AS_IF([test "${have_freetype}" != "yes"], [ + AC_MSG_ERROR([Could not find FreeType (required for skins2)]) + ]) - if test "${skins2_missing_lib}" = "no" && (test "${SYS}" = "mingw32"); then - VLC_ADD_PLUGIN([skins2]) - ALIASES="${ALIASES} svlc" + AS_IF([test "${SYS}" = "mingw32"], [ VLC_ADD_CPPFLAGS([skins2],[-U_OFF_T_ -U_off_t -Imodules/gui/skins2 -DWIN32_SKINS]) VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti]) - VLC_ADD_LIBS([skins2],[-loleaut32 -lwinspool -lwinmm -lshell32 -lctl3d32 -ladvapi32 -lwsock32 -lgdi32 -lcomdlg32 -lole32 -luuid -lcomctl32]) + VLC_ADD_LIBS([skins2],[-loleaut32 -lwinspool -lwinmm -lshell32 -lctl3d32 -ladvapi32 -lwsock32 -lgdi32 -lcomdlg32 -lole32 -luuid -lcomctl32 -lmsimg32 -luser32]) - else if test "${skins2_missing_lib}" = "no" && (test "${SYS}" = "darwin"); then - VLC_ADD_PLUGIN([skins2]) - ALIASES="${ALIASES} svlc" + ], [test "${SYS}" = "darwin"], [ VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 -DMACOSX_SKINS]) VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti]) VLC_ADD_LDFLAGS([skins2],[-Wl,-framework,Carbon]) - else if test "${skins2_missing_lib}" = "no"; then - VLC_ADD_PLUGIN([skins2]) - ALIASES="${ALIASES} svlc" - VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 ${X_CFLAGS} -DX11_SKINS]) + ], [ + PKG_CHECK_MODULES([XPM], [xpm]) + PKG_CHECK_MODULES([XEXT], [xext]) + VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 ${X_CFLAGS} ${XEXT_CFLAGS} ${XPM_CFLAGS} -DX11_SKINS]) VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti]) - VLC_ADD_LIBS([skins2],[${X_LIBS} ${X_PRE_LIBS} -lXext -lXpm -lX11]) - need_xid_provider="no" - fi fi fi -fi -AM_CONDITIONAL(BUILD_SKINS, [test "${enable_skins2}" = "yes" || - (test "${SYS}" != "darwin" && test "${SYS}" != "beos" && - test "${SYS}" != "mingwce" && test "${enable_skins2}" != "no")]) + VLC_ADD_LIBS([skins2],[${X_LIBS} ${X_PRE_LIBS} ${XEXT_LIBS} ${XPM_LIBS} -lX11]) + + ]) + VLC_ADD_PLUGIN([skins2]) + ALIASES="${ALIASES} svlc" +]) +AM_CONDITIONAL(BUILD_SKINS, [test "${enable_skins2}" = "yes"]) dnl dnl Hildon UI @@ -3723,7 +3620,6 @@ AS_IF([test "${enable_hildon}" = "yes"], [ VLC_ADD_LIBS([hildon],[${HILDON_LIBS} ${X_LIBS} ${X_PRE_LIBS} -lX11]) VLC_ADD_PLUGIN([hildon]) ALIASES="${ALIASES} mvlc" - need_xid_provider="no" ], [ AS_IF([test "${enable_hildon}" = "yes"],[ AC_MSG_ERROR([Hildon libraries not found]) @@ -3760,7 +3656,6 @@ AS_IF([test "${enable_qt4}" != "no"], [ ], [ AC_MSG_RESULT([yes]) VLC_ADD_LIBS([qt4],[${X_LIBS} ${X_PRE_LIBS} -lX11]) - need_xid_provider="no" VLC_ADD_CXXFLAGS([qt4],[${X_CFLAGS}]) ], [ AC_MSG_RESULT([no]) @@ -3772,6 +3667,9 @@ AS_IF([test "${enable_qt4}" != "no"], [ AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"], [ VLC_ADD_LIBS([qt4],[-lole32]) ]) + AS_IF([test "${SYS}" = "darwin" ],[ + VLC_ADD_LDFLAGS([qt4], [-Wl,-framework,Cocoa]) + ]) AC_PATH_PROGS(MOC, [moc-qt4 moc], moc,`eval $PKG_CONFIG --variable=exec_prefix QtCore`/bin) AC_PATH_PROG(RCC, rcc, rcc,`eval $PKG_CONFIG --variable=exec_prefix QtCore`/bin) AC_PATH_PROGS(UIC, [uic-qt4 uic], uic,`eval $PKG_CONFIG --variable=exec_prefix QtCore`/bin) @@ -3808,6 +3706,8 @@ then VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,IOKit]) VLC_ADD_LDFLAGS([macosx], [-F${CONTRIB_DIR}/Sparkle -Wl,-framework,Sparkle]) VLC_ADD_OBJCFLAGS([macosx], [-F${CONTRIB_DIR}/Sparkle]) + VLC_ADD_LDFLAGS([macosx], [-F${CONTRIB_DIR}/BWToolKit -Wl,-framework,BWToolKitFramework]) + VLC_ADD_OBJCFLAGS([macosx], [-F${CONTRIB_DIR}/BWToolKit]) dnl For bug report VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,AddressBook]) VLC_ADD_LDFLAGS([macosx], [-Wl,-framework,WebKit]) @@ -3878,32 +3778,22 @@ AC_ARG_ENABLE(ncurses, [VLC_ADD_PLUGIN([ncurses]) VLC_ADD_LIBS([ncurses],[-lncursesw]) ALIASES="${ALIASES} nvlc" - AC_DEFINE([HAVE_NCURSESW], 1, [Define to 1 if you have libncursesw.]) AC_CHECK_LIB(ncursesw, tgetent, [], AC_CHECK_LIB(tinfow, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfow])], [AC_CHECK_LIB(tinfo, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfo])], - [AS_IF([test "x${enable_ncurses}" != "x"], + [AS_IF([test "${enable_ncurses}" = "yes"], [AC_MSG_ERROR([tgetent not found in ncursesw tinfow tinfo] )])]) ] ) ) ], - [AC_CHECK_LIB( ncurses, mvprintw, - [VLC_ADD_PLUGIN([ncurses]) - ALIASES="${ALIASES} nvlc" - VLC_ADD_LIBS([ncurses],[-lncurses]) - AC_CHECK_LIB(ncurses, tgetent, [], - [AC_CHECK_LIB(tinfo, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfo])], - [AS_IF([test "x${enable_ncurses}" != "x"], - [AC_MSG_ERROR([tgetent not found in ncurses tinfo])])] - )] - )], - [AS_IF([test "x${enable_ncurses}" != "x"], [ - AC_MSG_ERROR([libncurses not found])])] - )] - )] - ) + [AS_IF([test "${enable_ncurses}" = "yes"], [ + AC_MSG_ERROR([libncursesw not found])])] + )], + [AS_IF([test "${enable_ncurses}" = "yes"], [ + AC_MSG_ERROR([ncurses.h not found])])] + ) fi] ) @@ -3934,13 +3824,6 @@ then ]) fi -dnl -dnl Post-interface configuration checks -dnl -AS_IF([test "$need_xid_provider" = "yes"], [ - AC_MSG_ERROR([X11 video outputs need a window provider (Qt4, Skins2, Hildon or xcb-utils), but none were found. Please install xcb-keysyms.]) -]) - dnl dnl Visualisation plugin dnl @@ -4071,11 +3954,8 @@ AS_IF([test "${enable_gnutls}" != "no"], [ dnl pkg-config --libs gnutls omits these VLC_ADD_LIBS([gnutls], [-lz ${LTLIBINTL}]) ]) - dnl The GnuTLS plugin invokes gcry_control directly. - AS_IF([test "${have_libgcrypt}" = "yes"],[ - VLC_ADD_LIBS([gnutls], [${GCRYPT_LIBS}]) - VLC_ADD_CFLAGS([gnutls], [${GCRYPT_CFLAGS}]) - ]) + VLC_ADD_LIBS([gnutls], [${GCRYPT_LIBS}]) + VLC_ADD_CFLAGS([gnutls], [${GCRYPT_CFLAGS}]) VLC_ADD_LIBS([gnutls], [$GNUTLS_LIBS]) ], [ AS_IF([test "${enable_gnutls}" = "yes"], [ @@ -4088,24 +3968,22 @@ AS_IF([test "${enable_gnutls}" != "no"], [ dnl dnl RemoteOSD plugin (VNC client as video filter) dnl -AC_ARG_ENABLE(remoteosd, - [ --disable-remoteosd RemoteOSD plugin (default enabled)]) - -AS_IF([test "${enable_remoteosd}" != "no"], [ - AS_IF([test "${have_libgcrypt}" = "yes"],[ - VLC_ADD_PLUGIN([remoteosd]) - VLC_ADD_LIBS([remoteosd], ${GCRYPT_LIBS}) - VLC_ADD_CFLAGS([remoteosd], ${GCRYPT_CFLAGS}) - ], [ - AC_MSG_ERROR([libgcrypt support required for RemoteOSD plugin]) - ]) +AC_MSG_CHECKING([whether to enable the RemoteOSD plugin]) +AS_IF([test "${have_libgcrypt}" = "yes"],[ + AC_MSG_RESULT(yes) + VLC_ADD_PLUGIN([remoteosd]) + VLC_ADD_LIBS([remoteosd], ${GCRYPT_LIBS}) + VLC_ADD_CFLAGS([remoteosd], ${GCRYPT_CFLAGS}) +], [ + AC_MSG_RESULT(no) + AC_MSG_WARN([libgcrypt support required for RemoteOSD plugin]) ]) dnl dnl RAOP plugin dnl -AC_MSG_CHECKING([whether to enable RAOP plugin]) +AC_MSG_CHECKING([whether to enable the RAOP plugin]) AS_IF([test "${have_libgcrypt}" = "yes"], [ AC_MSG_RESULT(yes) VLC_ADD_PLUGIN([stream_out_raop]) @@ -4176,6 +4054,20 @@ else fi AM_CONDITIONAL([HAVE_SQLITE], [test "${enable_sqlite}" != "no"]) +dnl +dnl media library +dnl +AC_ARG_ENABLE(media-library, [--enable-media-library media library (default disabled)]) +if test "${enable_media_library}" == "yes"; then + if test "${enable_sqlite}" != "yes"; then + AC_MSG_ERROR([SQLite module is required for the media library]) + else + AC_DEFINE([MEDIA_LIBRARY], 1, [Define if you want to use the VLC media library]) + VLC_ADD_CPPFLAGS([qt4],"-DMEDIA_LIBRARY") + VLC_ADD_PLUGIN([media_library]) + fi +fi +AM_CONDITIONAL([ENABLE_MEDIA_LIBRARY], [test "${enable_media_library}" = "yes"]) dnl dnl Endianness check @@ -4242,57 +4134,6 @@ AC_ARG_ENABLE(vlc, [ --enable-vlc build the VLC media player (default enabled)]) AM_CONDITIONAL(BUILD_VLC, [test "${enable_vlc}" != "no"]) -dnl -dnl Microsoft ActiveX support -dnl -activex=false -AC_ARG_ENABLE(activex, - AS_HELP_STRING([--enable-activex],[build a vlc-based ActiveX control - (default enabled on Win32)])) -AC_ARG_WITH(wine-sdk-path, - [ --with-wine-sdk-path=PATH path to wine sdk]) -if test "${enable_activex}" != "no" -then - if test "${SYS}" = "mingw32" - then - AC_CHECK_PROGS(MIDL, [midl], no) - if test "${with_wine_sdk_path}" != "" - then - WINE_SDK_PATH=${with_wine_sdk_path} - AC_PATH_PROG(WIDL, widl, no, [$WINE_SDK_PATH/bin:$WINE_SDK_PATH/tools/widl]) - else - WIDL=no - fi - AC_LANG_PUSH(C++) - AC_CHECK_HEADERS(ole2.h, - [AC_CHECK_HEADERS(olectl.h, - [ VLC_ADD_CPPFLAGS([activex],[-DUNICODE -D_UNICODE -D_MIDL_USE_GUIDDEF_]) - VLC_ADD_CXXFLAGS([activex],[-fno-exceptions]) - VLC_ADD_LIBS([activex],[-lole32 -loleaut32 -luuid -lshlwapi]) - AC_CHECK_HEADERS(objsafe.h, - VLC_ADD_CXXFLAGS([activex],[-DHAVE_OBJSAFE_HEADER]),, - [ - #if HAVE_OLE2_H - # include - #endif - ] - ) - activex=: - PLUGINS_BINDINGS="${PLUGINS_BINDINGS} activex" - ], - [ AC_MSG_ERROR([required OLE headers are missing from your system]) ] - )], - [ AC_MSG_ERROR([required OLE headers are missing from your system]) ] - ) - AC_LANG_POP(C++) - fi -fi -AC_ARG_VAR(MIDL, [Microsoft IDL compiler (Win32 platform only)]) -AM_CONDITIONAL(HAS_MIDL_COMPILER, test "${MIDL}" != "no") -AC_ARG_VAR(WIDL, [Wine IDL compiler (requires Wine SDK)]) -AM_CONDITIONAL(HAS_WIDL_COMPILER, test "${WIDL}" != "no") -AM_CONDITIONAL(BUILD_ACTIVEX,${activex}) - dnl dnl Plugin and builtin checks @@ -4394,7 +4235,6 @@ VLC_OUTPUT_VLC_CONFIG_IN AC_CONFIG_FILES([ Makefile - projects/activex/Makefile doc/Makefile libs/loader/Makefile libs/srtp/Makefile @@ -4422,10 +4262,6 @@ AC_CONFIG_FILES([ modules/access/zip/Makefile modules/access_output/Makefile modules/audio_filter/Makefile - modules/audio_filter/channel_mixer/Makefile - modules/audio_filter/converter/Makefile - modules/audio_filter/resampler/Makefile - modules/audio_filter/spatializer/Makefile modules/audio_mixer/Makefile modules/audio_output/Makefile modules/codec/Makefile @@ -4454,15 +4290,15 @@ AC_CONFIG_FILES([ modules/gui/macosx_dialog_provider/Makefile modules/gui/qt4/Makefile modules/gui/skins2/Makefile + modules/lua/Makefile modules/meta_engine/Makefile modules/misc/Makefile modules/misc/dummy/Makefile - modules/misc/lua/Makefile modules/misc/notify/Makefile modules/misc/playlist/Makefile modules/misc/osd/Makefile modules/misc/stats/Makefile - modules/misc/xml/Makefile + modules/media_library/Makefile modules/mux/Makefile modules/mux/mpeg/Makefile modules/packetizer/Makefile @@ -4490,12 +4326,6 @@ AM_COND_IF([HAVE_WIN32], [ extras/package/win32/spad.nsi extras/package/win32/vlc.win32.nsi ]) - AM_COND_IF([BUILD_ACTIVEX], [ - AC_CONFIG_FILES([ - projects/activex/axvlc.inf - projects/activex/axvlc_rc.rc - ]) - ]) ]) AM_COND_IF([HAVE_DARWIN], [