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"
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)
[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
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"
hpux*)
SYS=hpux
;;
+ symbian*)
+ SYS=symbian
+ ;;
*)
SYS="${host_os}"
;;
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
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.])
-])
-
-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"
- echo "*** WARNING: Building modules as static. VLC will not work."
-], [
- VLC_DEFAULT_PLUGIN_TYPE="plugin"
-])
-
-AC_SUBST(VLC_DEFAULT_PLUGIN_TYPE)
-
dnl
dnl Gettext stuff
dnl
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 dup3 pipe2 eventfd vmsplice sched_getaffinity])
AH_BOTTOM([#include <vlc_fixups.h>])
-AC_CHECK_FUNCS(mmap, [VLC_ADD_PLUGIN([access_mmap])])
-
SOCKET_LIBS=""
AC_CHECK_FUNCS(connect,,[
AC_CHECK_LIB(socket,connect,[
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])
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])
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
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
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], [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
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
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
-
- AC_CACHE_CHECK([for new linux/videodev2.h],
- [ac_cv_new_linux_videodev2_h],
- [AC_TRY_COMPILE([
- #include <sys/types.h>
- # ifdef VIDEODEV2_H_FILE
- # include VIDEODEV2_H_FILE
- # else
- # include <linux/videodev2.h>
- # 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])
- fi
fi
dnl
])
+dnl
+dnl SIDPlay plugin
+dnl
+PKG_ENABLE_MODULES_VLC([SID], [], [libsidplay2], [C64 sid demux support], [auto], [], [-lresid-builder])
+
+
dnl
dnl ogg demux plugin
dnl
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.])
])
])
VLC_ADD_LIBS([omxil], [$LIBDL])
fi
+dnl
+dnl CrystalHD codec plugin
+dnl
+AC_ARG_ENABLE(crystalhd,
+ [ --enable-crystalhd crystalhd codec plugin (default disabled)])
+if test "${enable_crystalhd}" == "yes"; 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])
+ ])
+ ],[
+ AC_MSG_ERROR("Could not find CrystalHD development headers")
+ ])
+ fi
+ ],[#define __LINUX_USER__
+ #include <libcrystalhd/bc_dts_types.h>
+ ])
+fi
+
dnl
dnl mad plugin
dnl
VLC_SAVE_FLAGS
CPPFLAGS="${CPPFLAGS} ${AVFORMAT_CFLAGS}"
CFLAGS="${CFLAGS} ${AVFORMAT_CFLAGS}"
- AC_CHECK_HEADERS(libavformat/avformat.h ffmpeg/avformat.h)
+ AC_CHECK_HEADERS(libavformat/avformat.h ffmpeg/avformat.h libavformat/avio.h)
AC_CHECK_HEADERS(libavutil/avutil.h ffmpeg/avutil.h)
AS_IF([test "$enable_merge_ffmpeg" = "no"], [
VLC_ADD_PLUGIN([avformat access_avio])
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
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"
AC_SUBST([GL_CFLAGS])
AC_SUBST([GL_LIBS])
+dnl
+dnl EGL
+dnl
+AC_ARG_ENABLE(egl,
+ [ --enable-egl EGL support (default disabled)],, [
+ enable_egl="no"
+])
+AS_IF([test "${enable_egl}" != "no"], [
+ PKG_CHECK_MODULES(EGL, [egl])
+ VLC_ADD_PLUGIN([egl])
+])
+
dnl
dnl SDL module
dnl
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 Pulseaudio module
dnl
-PKG_ENABLE_MODULES_VLC([PULSE], [], [libpulse >= 0.9.22], [Pulseaudio support], [auto])
+PKG_ENABLE_MODULES_VLC([PULSE], [], [libpulse >= 0.9.22], [PulseAudio support], [auto])
dnl
dnl Portaudio module
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
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)
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])
dnl
dnl media library
dnl
-AC_ARG_ENABLE(media-library, [--enable-media-library media library (default auto)])
-if test "${enable_media_library}" != "no"; then
+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
if test "${enable_media_library}" == "yes"; then
AC_MSG_ERROR([SQLite module is required for the media library])
VLC_ADD_PLUGIN([media_library])
fi
fi
+AM_CONDITIONAL([ENABLE_MEDIA_LIBRARY], [test "${enable_media_library}" = "yes"])
dnl
dnl Endianness check
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