dnl Autoconf settings for vlc
-AC_COPYRIGHT([Copyright 2002-2011 VLC authors and VideoLAN])
+AC_COPYRIGHT([Copyright 2002-2012 VLC authors and VideoLAN])
-AC_INIT(vlc, 1.3.0-git)
-VERSION_MAJOR=1
-VERSION_MINOR=3
+AC_INIT(vlc, 2.1.0-git)
+VERSION_MAJOR=2
+VERSION_MINOR=1
VERSION_REVISION=0
VERSION_EXTRA=0
VERSION_DEV=git
CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`"
CODENAME="Rincewind"
-COPYRIGHT_YEARS="1996-2011"
+COPYRIGHT_YEARS="1996-2012"
AC_CONFIG_SRCDIR(src/libvlc.c)
AC_CONFIG_AUX_DIR(autotools)
AC_DEFINE([_REENTRANT],, [Define to expose reentrant functions.])
AC_DEFINE([_THREAD_SAFE],, [Same as _REENTANT for some other OSes.])
AC_DEFINE([__LIBVLC__],, [Define within the LibVLC source code tree.])
+AC_DEFINE([WIN32_LEAN_AND_MEAN],, [Define to limit the scope of <windows.h>.])
AM_PROG_CC_C_O
AC_PROG_CXX
CFLAGS="${CFLAGS} -pthread"
VLC_ADD_LIBS([vcd cdda vcdx],[-ldvd])
;;
- *bsd*)
- SYS="${host_os}"
+ freebsd*)
+ SYS=freebsd
CFLAGS="${CFLAGS} -pthread"
- case "${host_os}" in
- freebsd*)
- CPPFLAGS="${CPPFLAGS} -I/usr/local/include"
- LDFLAGS="${LDFLAGS} -L/usr/local/lib"
- ;;
- openbsd*)
- CPPFLAGS="${CPPFLAGS} -I/usr/local/include -I/usr/X11R6/include"
- LDFLAGS="${LDFLAGS} -L/usr/local/lib -L/usr/X11R6/lib/"
- ;;
- esac
+ CPPFLAGS="${CPPFLAGS} -I/usr/local/include"
+ LDFLAGS="${LDFLAGS} -L/usr/local/lib"
+ ;;
+ openbsd*)
+ SYS=openbsd
+ CPPFLAGS="${CPPFLAGS} -I/usr/local/include -I/usr/X11R6/include"
+ LDFLAGS="${LDFLAGS} -L/usr/local/lib -L/usr/X11R6/lib/"
+ ;;
+ netbsd*)
+ SYS=netbsd
+ ;;
+ dragonfly*)
+ SYS=dragonfly
;;
darwin*)
x86_64*)
ARCH_flag="-arch x86_64"
;;
+ arm*)
+ ARCH_flag="-arch armv7"
+ ac_cv_c_bigendian="no"
+ ac_cv_c_attribute_packed="no"
+ ;;
esac
SYS=darwin
LDFLAGS="${LDFLAGS} -Wl,-headerpad_max_install_names ${ARCH_flag}"
VLC_ADD_LIBS([mkv mp4 motion], [-Wl,-framework,IOKit,-framework,CoreFoundation])
VLC_ADD_LIBS([libvlc vlc],[-Wl,-undefined,dynamic_lookup])
- VLC_ADD_LIBS([avcodec avformat access_avio swscale postproc i420_rgb_mmx x264],[-Wl,-read_only_relocs,suppress])
+ VLC_ADD_LIBS([avcodec avformat access_avio swscale postproc i420_rgb_mmx x264 x26410b],[-Wl,-read_only_relocs,suppress])
VLC_ADD_CFLAGS([motion],[-fconstant-cfstrings])
VLC_ADD_LIBS([libvlccore],[-Wl,-framework,CoreFoundation])
+ dnl Allow binaries created on Lion to run on earlier releases
+ AC_EGREP_CPP(yes,
+ [#import <Cocoa/Cocoa.h>
+ #ifdef MAC_OS_X_VERSION_10_7
+ yes
+ #endif],
+ [AC_MSG_RESULT([yes])
+ AC_LIBOBJ([getdelim])
+ AC_LIBOBJ([strndup])
+ AC_LIBOBJ([strnlen])],)
+
dnl
dnl Check for Mac OS X SDK settings
dnl
[AS_HELP_STRING([--with-macosx-sdk=DIR],
[compile using the SDK in DIR])])
test "${with_macosx_sdk}" = "" && with_macosx_sdk=/Developer/SDKs/MacOSX10.6.sdk
- ! test -d "${with_macosx_sdk}" && AC_MSG_ERROR([SDK "${with_macosx_sdk}" not found])
+ test ! -d "${with_macosx_sdk}" && AC_MSG_ERROR([SDK "${with_macosx_sdk}" not found])
AC_ARG_WITH(macosx-version-min,
[AS_HELP_STRING([--with-macosx-version-min=VERSION],
[compile for MacOS X VERSION and above])])
dnl Gettext stuff
dnl
AM_GNU_GETTEXT_VERSION([0.18.1])
-AM_GNU_GETTEXT([external])
+AM_GNU_GETTEXT([external], [need-ngettext])
dnl
dnl Iconv stuff
dnl Check for usual libc functions
AC_CHECK_DECLS([nanosleep],,,[#include <time.h>])
-AC_CHECK_FUNCS([daemon fcntl fstatvfs fork getenv getpwuid_r if_nameindex if_nametoindex isatty lstat memalign mmap openat pread posix_fadvise posix_madvise setlocale stricmp strnicmp strptime uselocale])
-AC_REPLACE_FUNCS([atof atoll dirfd fdopendir flockfile fsync getdelim getpid gmtime_r inet_pton lldiv localtime_r nrand48 rewind setenv strcasecmp strcasestr strdup strlcpy strncasecmp strndup strnlen strsep strtof strtok_r strtoll swab tdestroy])
+AC_CHECK_FUNCS([daemon fcntl fstatvfs fork getenv getpwuid_r isatty lstat memalign mmap openat pread posix_fadvise posix_madvise setlocale stricmp strnicmp strptime uselocale])
+AC_REPLACE_FUNCS([atof atoll dirfd fdopendir flockfile fsync getdelim getpid gmtime_r inet_pton lldiv localtime_r nrand48 poll posix_memalign rewind setenv strcasecmp strcasestr strdup strlcpy strncasecmp strndup strnlen strsep strtof strtok_r strtoll swab tdestroy strverscmp])
AC_CHECK_FUNCS(fdatasync,,
[AC_DEFINE(fdatasync, fsync, [Alias fdatasync() to fsync() if missing.])
])
c = NULL;
])],[AC_DEFINE([HAVE_ASPRINTF],[1],[Define to 1 if you have asprintf function])],[AC_LIBOBJ([asprintf])])
AC_LINK_IFELSE([
- AC_LANG_PROGRAM([#include <stdio.h>], [
+ AC_LANG_PROGRAM([#include <stdio.h>
+ #include <stdarg.h>], [
char *c;
va_list ap;
if (vasprintf(&c, "%s %d", ap) == -1)
c = NULL;
])],[AC_DEFINE([HAVE_VASPRINTF],[1],[Define to 1 if you have asprintf function])],[AC_LIBOBJ([vasprintf])])
+dnl C11 static_assert()
+AC_MSG_CHECKING([for static_assert in assert.h])
+AC_PREPROC_IFELSE([AC_LANG_SOURCE([
+#include <assert.h>
+#ifndef static_assert
+# error BOOM!
+#endif
+])], [
+ AC_MSG_RESULT([yes])
+ AC_DEFINE([HAVE_STATIC_ASSERT], [1], [Define to 1 if <assert.h> defines static_assert.])
+], [
+ AC_MSG_RESULT([no])
+])
+
# Windows CE does not have strcoll()
AC_FUNC_STRCOLL
AH_BOTTOM([#include <vlc_fixups.h>])
-dnl Check for poll
-AC_SEARCH_LIBS(poll, [poll], [
- AC_DEFINE(HAVE_POLL, 1, [Define to 1 if the OS has poll().])
-], [
- AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -a "${SYS}" != "os2"], [
- AC_MSG_ERROR([poll() is required.])
- ])
-])
-
dnl Check for struct pollfd
AC_CHECK_TYPES([struct pollfd],,,
[#include <sys/types.h>
#endif
])
-dnl Check for connect
+dnl Checks for socket stuff
VLC_SAVE_FLAGS
SOCKET_LIBS=""
AC_SEARCH_LIBS(connect, [socket], [
SOCKET_LIBS="-lws2"
])
])
+
+AC_SEARCH_LIBS([getaddrinfo], [nsl], [
+ AS_IF([test "$ac_cv_search_getaddrinfo" != "none required"], [
+ SOCKET_LIBS="$ac_cv_search_getaddrinfo $SOCKET_LIBS"
+ ])
+],, [${SOCKET_LIBS}])
+
+AC_CHECK_FUNCS([if_nameindex if_nametoindex])
VLC_RESTORE_FLAGS
+
AS_IF([test -n "$SOCKET_LIBS"], [
- VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout sap stream_out_select stream_out_standard stream_out_rtp stream_out_raop vod_rtsp access_realrtsp rtp oldrc netsync gnutls flac ts audioscrobbler lua remoteosd zvbi audiobargraph_a netsync],[${SOCKET_LIBS}])
+ VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout sap stream_out_select stream_out_standard stream_out_rtp stream_out_raop vod_rtsp access_realrtsp rtp oldrc netsync gnutls flac ts audioscrobbler lua remoteosd zvbi audiobargraph_a netsync stream_filter_dash],[${SOCKET_LIBS}])
])
AC_SUBST(SOCKET_LIBS)
AC_DEFINE(ss_family, sa_family)
])
-dnl getaddrinfo, getnameinfo and gai_strerror check
-dnl -lnsl and -lsocket are needed on Solaris;
-dnl we purposedly make the test fail on Windows
-VLC_SAVE_FLAGS
-AC_SEARCH_LIBS([getaddrinfo], [nsl],,, [${SOCKET_LIBS}])
-VLC_RESTORE_FLAGS
-
dnl FreeBSD has a gnugetopt library for this:
GNUGETOPT_LIBS=""
AC_CHECK_FUNC(getopt_long,, [
AC_SUBST(GNUGETOPT_LIBS)
AC_CHECK_LIB(m,cos,[
- VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain scene kate flac lua chorus_flanger freetype avcodec avformat access_avio swscale postproc i420_rgb faad twolame equalizer spatializer param_eq samplerate freetype mod mpc dmo quicktime realvideo qt4 compressor headphone_channel_mixer normvol audiobargraph_a speex mono colorthres extract ball access_imem hotkeys mosaic gaussianblur dbus x264 hqdn3d],[-lm])
+ VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain scene kate flac lua chorus_flanger freetype avcodec avformat access_avio swscale postproc i420_rgb faad twolame equalizer spatializer param_eq samplerate freetype mpc dmo mp4 quicktime qt4 compressor headphone_channel_mixer normvol audiobargraph_a speex mono colorthres extract ball access_imem hotkeys mosaic gaussianblur dbus x26410b hqdn3d anaglyph],[-lm])
LIBM="-lm"
], [
LIBM=""
AM_CONDITIONAL(HAVE_DYNAMIC_PLUGINS, [test "${have_dynamic_objects}" != "no"])
AC_SUBST(LIBDL)
-VLC_ADD_LIBS([realvideo lua],[$LIBDL])
+VLC_ADD_LIBS([lua],[$LIBDL])
dnl Check for thread library
if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
])
fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
-dnl Check for misc headers
-AC_MSG_CHECKING(for strncasecmp in strings.h)
-AC_EGREP_HEADER(strncasecmp,strings.h,[
- AC_MSG_RESULT(yes)
- AC_DEFINE(STRNCASECMP_IN_STRINGS_H, 1,
- Define if <strings.h> defines strncasecmp.)],[
- 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(getopt.h locale.h xlocale.h)
+AC_CHECK_HEADERS([sys/time.h sys/ioctl.h])
AC_CHECK_HEADERS([arpa/inet.h netinet/udplite.h sys/eventfd.h])
AC_CHECK_HEADERS([net/if.h], [], [],
[
if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
AC_CHECK_HEADERS(machine/param.h sys/shm.h)
AC_CHECK_HEADERS([linux/version.h linux/dccp.h scsi/scsi.h linux/magic.h])
- AC_CHECK_HEADERS(syslog.h)
+ AC_CHECK_HEADERS(syslog.h mntent.h)
fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
dnl LP64 and LLP64 architectures had better define ssize_t by themselves...
AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ])
-dnl Manual switch for UTF-8
-AC_ARG_ENABLE(non-utf8,
- [AS_HELP_STRING([--enable-non-utf8],
- [support legacy non-UTF-8 systems (default disabled)])],, [
- AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce" -o "${SYS}" = "os2"], [
- enable_non_utf8="no"
- ])
-])
-AS_IF([test "${enable_non_utf8}" != "no"], [
- AC_DEFINE([ASSUME_UTF8], [1],
- [Define to 1 if the operating system uses UTF-8 internally])
-])
-
-
dnl Check for dbus
AC_ARG_ENABLE(dbus,
[AS_HELP_STRING([--enable-dbus],
])
])
AS_IF([test "${ac_cv_c_fast_math}" = "no"], [VLC_RESTORE_FLAGS])
+ AH_BOTTOM([
+#ifndef __FAST_MATH__
+# pragma STDC FENV_ACCESS OFF
+# pragma STDC FP_CONTRACT ON
+#endif
+])
dnl Check for -funroll-loops
VLC_SAVE_FLAGS
AS_IF([test "${enable_mmx}" != "no"], [
ARCH="${ARCH} mmx"
VLC_SAVE_FLAGS
- CFLAGS="${CFLAGS} -O -mmmx"
+ CFLAGS="${CFLAGS} -mmmx"
AC_CACHE_CHECK([if $CC groks MMX intrinsics], [ac_cv_c_mmx_intrinsics], [
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
[#include <mmintrin.h>
ARCH="${ARCH} sse sse2"
VLC_SAVE_FLAGS
- CFLAGS="${CFLAGS} -O -msse2"
+ CFLAGS="${CFLAGS} -msse2"
AC_CACHE_CHECK([if $CC groks SSE2 intrinsics], [ac_cv_c_sse2_intrinsics], [
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
[#include <emmintrin.h>
])
CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_live555}"
- AC_CACHE_CHECK([for live555 version 1275091200 or later], [ac_cv_live555], [
+ AC_CACHE_CHECK([for live555 version 1324598400 or later], [ac_cv_live555], [
AC_PREPROC_IFELSE([AC_LANG_PROGRAM([
[#include <liveMedia_version.hh>
-#if !defined (LIVEMEDIA_LIBRARY_VERSION_INT) || (LIVEMEDIA_LIBRARY_VERSION_INT < 1275091200)
+#if !defined (LIVEMEDIA_LIBRARY_VERSION_INT) || (LIVEMEDIA_LIBRARY_VERSION_INT < 1324598400)
# error BOOM
#endif]])
], [
])
AS_IF([test "$ac_cv_live555" = "no"], [
AC_MSG_WARN([liveMedia is missing or its installed version is too old:
-Version 2010.05.29 or later is required to proceed.
+Version 2011.12.23 or later is required to proceed.
You can get an updated one from http://www.live555.com/liveMedia .])
AS_IF([test -n "${enable_live555}"], [
AC_MSG_ERROR([Update live555 or pass --disable-live555 to disable RTSP input support.])
])
- ac_cv_live555_usable=""
], [
- dnl Check that live555 is patched correctly.
- AC_CACHE_CHECK([for live555 usability], [ac_cv_live555_usable], [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
-[#include <locale.h>
-#ifdef __APPLE__
-# include <xlocale.h>
-#endif
-#undef LC_ALL
-#define LC_ALL BOOM
-#ifdef LC_ALL_MASK
-#include <Locale.hh>
-#endif
-#include <GroupsockHelper.hh>]], [
-[struct in_addr addr;
-our_inet_ntoa(addr, NULL);]])
- ], [
- ac_cv_live555_usable="yes"
- ], [
- ac_cv_live555_usable="no"
- ])
- ])
- AS_IF([test "$ac_cv_live555_usable" = "no"], [
- AC_MSG_ERROR([liveMedia lacks patches and is not usable.
-Please apply our patches from the VLC contrib (contrib/src/live555/).
-You can also disable RTSP input with --disable-live555. You were warned.])
- ])
other_libs="-lgroupsock -lBasicUsageEnvironment -lUsageEnvironment"
other_libs_pic="-lgroupsock_pic -lBasicUsageEnvironment_pic -lUsageEnvironment_pic"
AS_IF([test "${SYS}" = "mingw32"], [
AC_CHECK_HEADERS(dshow.h,
[ VLC_ADD_PLUGIN([dshow])
VLC_ADD_CXXFLAGS([dshow],[])
- VLC_ADD_LIBS([dshow],[-lole32 -loleaut32 -luuid]) ])
+ VLC_ADD_LIBS([dshow],[-lole32 -loleaut32 -luuid -lstrmiids -lksuser])])
AC_LANG_POP(C++)
fi
fi
dnl
dnl Video4Linux 2
dnl
-AC_ARG_ENABLE(libv4l2, [AS_HELP_STRING([--disable-libv4l2],
- [disable userspace V4L2 library (default auto)])])
+AC_ARG_ENABLE(v4l2, [AS_HELP_STRING([--disable-v4l2],
+ [disable Video4Linux version 2 (default auto)])])
AC_ARG_ENABLE(pvr, [AS_HELP_STRING([--enable-pvr],
[support PVR V4L2 cards (default disabled)])])
have_v4l2="no"
-AC_CHECK_HEADERS([linux/videodev2.h sys/videoio.h], [
- have_v4l2="yes"
+AS_IF([test "$enable_v4l2" != "no"], [
+ AC_CHECK_HEADERS([linux/videodev2.h sys/videoio.h], [
+ have_v4l2="yes"
+ ])
+ AC_CHECK_DECLS([V4L2_CTRL_TYPE_BITMASK],,, [
+#ifdef HAVE_LINUX_VIDEODEV2_H
+# include <linux/videodev2.h>
+#endif
+#ifdef HAVE_SYS_VIDEOIO_H
+# include <sys/videoio.h>
+#endif
+ ])
])
AS_IF([test "$have_v4l2" = "yes"], [
- AS_IF([test "${enable_libv4l2}" != "no"], [
- PKG_CHECK_MODULES(LIBV4L2, libv4l2, [
- AC_DEFINE(HAVE_LIBV4L2, 1, [Define to 1 if libv4l2 is available])
- ], [
- AC_MSG_WARN([${LIBV4L2_PKG_ERRORS}.])
- ])
- ])
AS_IF([test "${enable_pvr}" = "yes"], [
VLC_ADD_PLUGIN([pvr])
])
dnl
dnl Linux DVB
dnl
-AC_CACHE_CHECK([for Linux DVB version 5], [ac_cv_linux_s2api], [
+AC_CACHE_CHECK([for Linux DVB version 5.1], [ac_cv_linux_dvb_5_1], [
AC_PREPROC_IFELSE([AC_LANG_PROGRAM([
[#include <linux/dvb/version.h>
#if (DVB_API_VERSION < 5)
-EXPLODE
-#endif]])], [
- ac_cv_linux_s2api=yes
+# error Linux DVB API v3.2 and older are not supported.
+#endif
+#if (DVB_API_VERSION == 5 && DVB_API_VERSION_MINOR < 1)
+# error Linux DVB API v5.0 is unsupported. Please update.
+#endif
+]])], [
+ ac_cv_linux_dvb_5_1=yes
], [
- ac_cv_linux_s2api=no
+ ac_cv_linux_dvb_5_1=no
])])
-AM_CONDITIONAL([HAVE_LINUX_DVB], [test "$ac_cv_linux_s2api" = "yes"])
+AM_CONDITIONAL([HAVE_LINUX_DVB], [test "$ac_cv_linux_dvb_5_1" = "yes"])
dnl
dnl Screen capture module
[AC_MSG_RESULT([yes])
AC_CHECK_HEADERS(matroska/KaxAttachments.h)
VLC_ADD_CXXFLAGS([mkv],[])
- if test "${SYS}" = "darwin"; then
- VLC_ADD_CXXFLAGS([mkv],[-O1])
- fi
AC_CHECK_LIB(ebml_pic, main, [
VLC_ADD_PLUGIN([mkv])
VLC_ADD_LIBS([mkv],[-lmatroska -lebml_pic])
dnl faad decoder plugin
dnl
AC_ARG_ENABLE(faad,
-[ --enable-faad faad codec (default disabled)])
-if test "${enable_faad}" = "yes"
-then
- AC_ARG_WITH(faad-tree,
- [ --with-faad-tree=PATH faad tree for static linking])
- if test -n "${with_faad_tree}"
- then
+[ --enable-faad faad codec (default auto)])
+if test "${enable_faad}" != "no"; then
+ AC_ARG_WITH(faad-tree, [ --with-faad-tree=PATH faad tree for static linking])
+ if test -n "${with_faad_tree}"; then
AC_MSG_CHECKING(for libfaad.a in ${with_faad_tree})
real_faad_tree="`cd ${with_faad_tree} 2>/dev/null && pwd`"
- if test -z "${real_faad_tree}"
- then
+ if test -z "${real_faad_tree}"; then
dnl The given directory can't be found
AC_MSG_RESULT(no)
AC_MSG_ERROR([cannot cd to ${with_faad_tree}])
fi
- if test -f "${real_faad_tree}/libfaad/.libs/libfaad.a"
- then
- dnl Use a custom faad
+ if test -f "${real_faad_tree}/libfaad/.libs/libfaad.a"; then
+ dnl Use the custom faad
AC_MSG_RESULT(${real_faad_tree}/libfaad/.libs/libfaad.a)
VLC_ADD_PLUGIN([faad])
VLC_ADD_LIBS([faad],[${real_faad_tree}/libfaad/.libs/libfaad.a])
VLC_SAVE_FLAGS
CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_faad}"
LDFLAGS="${LDFLAGS} ${LIBS_faad}"
- AC_CHECK_HEADERS(faad.h, ,
- [ AC_MSG_ERROR([Cannot find development headers for libfaad...]) ])
- AC_CHECK_LIB(faad, faacDecOpen, [
- VLC_ADD_PLUGIN([faad])
- VLC_ADD_LIBS([faad],[-lfaad]) ],
- AC_CHECK_LIB(faad, NeAACDecOpen, [
- VLC_ADD_PLUGIN([faad])
- VLC_ADD_LIBS([faad],[-lfaad]) ],
- [ AC_MSG_ERROR([Cannot find libfaad library...]) ]))
+ AC_CHECK_HEADERS(faad.h,
+ [ AC_CHECK_LIB(faad, faacDecOpen, [
+ VLC_ADD_PLUGIN([faad])
+ VLC_ADD_LIBS([faad],[-lfaad]) ], [
+ AC_CHECK_LIB(faad, NeAACDecOpen, [
+ VLC_ADD_PLUGIN([faad])
+ VLC_ADD_LIBS([faad],[-lfaad]) ], [
+ AS_IF([test "${enable_faad}" = "yes"],
+ [ AC_MSG_ERROR([Cannot find libfaad library...]) ],
+ [ AC_MSG_WARN([Cannot find libfaad library...]) ]) ]) ])
+ ] , [ AS_IF([test "${enable_faad}" = "yes"],
+ [ AC_MSG_ERROR([Cannot find development headers for libfaad...]) ],
+ [ AC_MSG_WARN([Cannot find development headers for libfaad...]) ]) ])
VLC_RESTORE_FLAGS
fi
fi
fi
fi
-dnl
-dnl Real plugin
-dnl
-AC_ARG_ENABLE(real,
- [ --enable-real Real video decoder module (default disabled)])
-if test "${enable_real}" = "yes"; then
- VLC_ADD_PLUGIN([realvideo])
-fi
-
dnl
dnl A52/AC3 decoder plugin
dnl
dnl
dnl theora decoder plugin
dnl
-PKG_ENABLE_MODULES_VLC([THEORA], [], [ogg theora >= 1.0], [experimental theora codec], [auto])
+PKG_ENABLE_MODULES_VLC([THEORA], [], [ogg theoradec >= 1.0 theoraenc], [experimental theora codec], [auto])
dnl
dnl dirac encoder plugin
if test "${enable_png}" != "no"; then
AC_CHECK_HEADERS(png.h, [
VLC_SAVE_FLAGS
- LDFLAGS="${LDFLAGS} -lz"
+ LDFLAGS="${LDFLAGS} -lz $LIBM"
AC_CHECK_LIB(png, png_set_rows, [
- VLC_ADD_LIBS([png],[-lpng -lz -lm])
+ VLC_ADD_LIBS([png],[-lpng -lz $LIBM])
VLC_ADD_PLUGIN([png osdmenu osd_parser])],
- [],[-lz])
+ [],[-lz $LIBM] )
VLC_RESTORE_FLAGS
])
fi
AM_CONDITIONAL(BUILD_OSDMENU, [test "${enable_png}" != "no"])
+dnl
+dnl H264 encoder plugin (10-bit lib264)
+dnl
+AC_ARG_ENABLE(x26410b,
+ [ --enable-x26410b H264 10-bit encoding support with static libx264 (default disabled)])
+if test "${enable_x26410b}" != "no"; then
+AC_ARG_WITH(x26410b-tree,
+ [ --with-x26410b-tree=PATH H264 10-bit encoding module with libx264 (static linking)],[],[])
+ if test "${with_x26410b_tree}" != "no" -a -n "${with_x26410b_tree}"
+ then
+ real_x26410b_tree="̧`cd ${with_x26410b_tree} 2>/dev/null && pwd`"
+ if test -z "${real_x26410b_tree}"
+ then
+ AC_MSG_RESULT(no)
+ AC_MSG_ERROR([${with_x26410b_tree} directory does not exist])
+ fi
+ AC_MSG_CHECKING(for x264.h in ${real_x26410b_tree})
+ if test -f ${with_x26410b_tree}/x264_config.h
+ then
+ AC_MSG_RESULT(yes)
+ AC_MSG_CHECKING(for 10-bit build of x264)
+ if grep -q "BIT_DEPTH.*10" ${with_x26410b_tree}/x264_config.h ;then
+ AC_MSG_RESULT(yes)
+ VLC_ADD_PLUGIN([x26410b])
+ VLC_ADD_CFLAGS([x26410b],[-I${with_x26410b_tree}])
+ VLC_ADD_LIBS([x26410b],[-L${with_x26410b_tree} -lm -lpthread -lx264])
+ else
+ AC_MSG_RESULT(no)
+ AC_MSG_ERROR([${with_x26410b_tree} isnt build 10-bit])
+ fi
+ else
+ AC_MSG_RESULT(no)
+ AC_MSG_ERROR([${with_x26410b_tree} doesnt have x264_config.h])
+ fi
+ else
+ PKG_CHECK_MODULES(X26410B, x26410b, [
+ VLC_ADD_PLUGIN([x26410b])
+ VLC_ADD_LDFLAGS([x26410b],[${X26410B_LIBS}])
+ AS_IF([test "${ac_cv_ld_bsymbolic}" != "no"], [
+ VLC_ADD_LIBS([x26410b],[-Wl,-Bsymbolic])
+ ])
+ VLC_ADD_CFLAGS([x26410b],[${X26410B_CFLAGS}])
+ if echo ${X26410B_LIBS} |grep -q 'pthreadGC2'; then
+ VLC_ADD_CFLAGS([x26410b], [-DPTW32_STATIC_LIB])
+ fi
+ ], [
+ if test "${enable_x26410b}" = "yes"; then
+ AC_MSG_ERROR([x26410b module doesn't work without staticly compiled libx264.a])
+ fi
+ ])
+ fi
+fi
+
+
dnl
dnl H264 encoder plugin (using libx264)
dnl
dnl
dnl libfluidsynth (MIDI synthetizer) plugin
dnl
-PKG_ENABLE_MODULES_VLC([FLUIDSYNTH], [], [fluidsynth], [MIDI synthetiser with libfluidsynth], [auto])
+PKG_ENABLE_MODULES_VLC([FLUIDSYNTH], [], [fluidsynth >= 1.1.2], [MIDI synthetiser with libfluidsynth], [auto])
dnl
dnl Teletext Modules
AS_IF([test "${have_gl}" != "yes"], [
AC_MSG_ERROR([${GL_PKG_ERRORS}. Pass --disable-glx if you do not need OpenGL X11 support.])
])
- PKG_CHECK_MODULES(XLIB_XCB, [x11-xcb], [
- VLC_ADD_PLUGIN([xcb_glx])
- ], [
- AC_MSG_ERROR([${XLIB_XCB_PKG_ERRORS}. Pass --disable-glx if you do not need OpenGL X11 support.])
- ])
+ VLC_ADD_PLUGIN([xcb_glx])
])
])
AM_CONDITIONAL([HAVE_XCB], [test "${have_xcb}" = "yes"])
[ VLC_ADD_PLUGIN([direct3d])
VLC_ADD_LIBS([direct3d],[-lgdi32])
])
- VLC_ADD_LIBS([direct3d directx glwin32],[-lole32])
+ VLC_ADD_LIBS([direct3d directx glwin32],[-lole32 -luuid])
fi
fi
AS_IF([test "${enable_direct2d}" != "no"], [
AC_CHECK_HEADERS(d2d1.h, [
VLC_ADD_PLUGIN([direct2d])
- VLC_ADD_LIBS([direct2d],[-lgdi32 -lole32])
+ VLC_ADD_LIBS([direct2d],[-lgdi32 -lole32 -luuid])
], [
AC_MSG_WARN([Cannot find Direct2D headers!])
])
if test "${enable_wingdi}" != "no"; then
if test "${SYS}" = "mingw32"; then
VLC_ADD_PLUGIN([wingdi])
- VLC_ADD_LIBS([wingdi],[-lgdi32 -lole32])
+ VLC_ADD_LIBS([wingdi],[-lgdi32 -lole32 -luuid])
fi
if test "${SYS}" = "mingwce"; then
VLC_ADD_PLUGIN([wingdi wingapi])
dnl
AC_ARG_ENABLE(oss,
[AS_HELP_STRING([--enable-oss],
- [support the Open Sound System OSS (default enabled on BSD)])],, [
- AS_IF([test "$SYS" = "mingw32" -o "$SYS" = "mingwce" -o "$SYS" = "linux"], [
+ [support the Open Sound System OSS (default enabled on FreeBSD/NetBSD/DragonFlyBSD)])],, [
+ AS_IF([test "$SYS" = "mingw32" -o "$SYS" = "mingwce" -o "$SYS" = "linux" -o "$SYS" = "openbsd"], [
enable_oss="no"
])
])
AM_CONDITIONAL([HAVE_OSS], [test "${have_oss}" = "yes"])
dnl
-dnl Portaudio module
+dnl OpenBSD sndio module
dnl
-PKG_ENABLE_MODULES_VLC([PORTAUDIO], [], [portaudio-2.0], [Portaudio library support], [auto])
+AC_ARG_ENABLE([sndio],
+ [AS_HELP_STRING([--disable-sndio],
+ [support the OpenBSD sndio (default auto)])],, [
+ AS_IF([test "$SYS" = "opensd"], [
+ enable_sndio="yes"
+ ])
+])
+have_sndio="no"
+AS_IF([test "$enable_sndio" != "no"], [
+ AC_CHECK_HEADER([sndio.h], [
+ have_sndio="yes"
+ ])
+])
+AM_CONDITIONAL([HAVE_SNDIO], [test "${have_sndio}" = "yes"])
dnl
dnl win32 waveOut plugin
dnl Win32
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_CPPFLAGS([skins2],[-U_OFF_T_ -U_off_t -DWIN32_SKINS])
VLC_ADD_LIBS([skins2],[-lgdi32 -lole32 -luuid -lmsimg32])
dnl MacOS
], [test "${SYS}" = "darwin"], [
- VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 -DMACOSX_SKINS])
- VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti])
+ VLC_ADD_CPPFLAGS([skins2],[ -DMACOSX_SKINS])
VLC_ADD_LIBS([skins2],[-Wl,-framework,Carbon])
dnl Linux/Unix
], [
PKG_CHECK_MODULES([XPM], [xpm],, [have_skins_deps="no"])
PKG_CHECK_MODULES([XINERAMA], [xinerama],, [have_skins_deps="no"])
PKG_CHECK_MODULES([XEXT], [xext],, [have_skins_deps="no"])
- VLC_ADD_CPPFLAGS([skins2],[-Imodules/gui/skins2 ${X_CFLAGS} ${XEXT_CFLAGS} ${XPM_CFLAGS} -DX11_SKINS])
- VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti])
+ VLC_ADD_CPPFLAGS([skins2],[${X_CFLAGS} ${XEXT_CFLAGS} ${XPM_CFLAGS} -DX11_SKINS])
VLC_ADD_LIBS([skins2],[${X_LIBS} ${X_PRE_LIBS} ${XEXT_LIBS} ${XPM_LIBS} ${XINERAMA_LIBS} -lX11])
])
+ dnl for All OSes
+ VLC_ADD_CXXFLAGS([skins2],[-O2 -fno-rtti])
+
dnl we need freetype
AS_IF([test "${have_freetype}" != "yes"], [
have_skins_deps="no"
VLC_ADD_LIBS([macosx], [-Wl,-framework,QTKit -Wl,-framework,IOKit -Wl,-framework,AddressBook -Wl,-framework,WebKit])
- if ! test -d ${CONTRIB_DIR}/Sparkle.framework
+ if test ! -d ${CONTRIB_DIR}/Sparkle.framework
then
AC_MSG_ERROR([Sparkle framework is required and was not found in ${CONTRIB_DIR}])
fi
VLC_ADD_LIBS([macosx], [-F${CONTRIB_DIR} -Wl,-framework,Sparkle])
VLC_ADD_OBJCFLAGS([macosx], [-F${CONTRIB_DIR}])
- if ! test -d ${CONTRIB_DIR}/BGHUDAppKit.framework
+ if test ! -d ${CONTRIB_DIR}/BGHUDAppKit.framework
then
AC_MSG_ERROR([BGHUDAppKit framework is required and was not found in ${CONTRIB_DIR}])
fi
])
])
+dnl
+dnl Vovoid VSXu visualization plugin
+dnl
+AC_ARG_ENABLE(vsxu,
+ [ --enable-vsxu Vovoid VSXu visualization plugin (default auto)])
+AS_IF([test "${enable_vsxu}" != "no"],
+ [
+ PKG_CHECK_MODULES(VSXU, libvsxu,
+ [
+ VLC_ADD_PLUGIN([vsxu])
+ VLC_ADD_CXXFLAGS([vsxu],[$VSXU_CFLAGS])
+ VLC_ADD_LIBS([vsxu],[$VSXU_LIBS])
+ ],[
+ AC_MSG_WARN([${VSXU_PKG_ERRORS}.])
+ ])
+ ])
+
dnl
dnl AtmoLight (homemade Philips Ambilight clone)
dnl
AM_CONDITIONAL(LOADER, [test "${enable_loader}" = "yes"])
AS_IF([test "${enable_loader}" = "yes"],
[ VLC_ADD_PLUGIN([dmo])
- VLC_ADD_CPPFLAGS([dmo quicktime realvideo],[-I\\\${top_srcdir}/modules/codec/loader])
- VLC_ADD_LIBS([dmo quicktime realvideo],[\\\${top_builddir}/modules/codec/loader/libloader.la])
- VLC_ADD_CPPFLAGS([realvideo], [-DLOADER])
+ VLC_ADD_CPPFLAGS([dmo quicktime ],[-I\\\${top_srcdir}/modules/codec/loader])
+ VLC_ADD_LIBS([dmo quicktime ],[\\\${top_builddir}/modules/codec/loader/libloader.la])
VLC_ADD_LIBS([dmo quicktime], [-lpthread])
])
dnl
CPPFLAGS="-I\$(top_srcdir)/include -I\$(top_builddir)/include ${CPPFLAGS}"
-dnl
-dnl Sort the modules list
-dnl
-PLUGINS=$( (for i in `echo $PLUGINS`; do echo $i; done)|sort|xargs )
-
dnl
dnl Configuration is finished
dnl
modules/access/Makefile
modules/access/bd/Makefile
modules/access/dshow/Makefile
- modules/access/dvb/Makefile
modules/access/mms/Makefile
modules/access/rtp/Makefile
modules/access/rtsp/Makefile
AC_OUTPUT
dnl Do we have to use make or gmake ?
-USE_MAKE_OR_GMAKE=`case "${SYS}" in openbsd*) echo "gmake";; *) echo "make";; esac`
+if make --version 2>&1|grep -q GNU
+then
+ # GNU make, all seems good
+ MAKE=make
+else
+ # Known GNU make alias (on BSD)
+ MAKE=gmake
+fi
dnl Shortcut to nice compile message
-rm -f compile
if test -n $SHELL; then
SHELL=${CONFIG_SHELL-/bin/sh}
fi
-echo '#! '$SHELL >compile
-echo rm -f .error\$\$ >>compile
-echo ERROR=0 >>compile
-echo export PATH=$PATH LANG=C >>compile
-echo "($USE_MAKE_OR_GMAKE V=1 \$@ 2>&1 || touch .error\$\$)| \\" >>compile
-echo '`sed -ne "s/^top_srcdir *= *//p" < Makefile`/extras/buildsystem/make.pl' >>compile
-echo test -f .error\$\$ \&\& ERROR=1 >>compile
-echo rm -f .error\$\$ >>compile
-echo exit \$ERROR >>compile
+rm -f compile
+echo "#! $SHELL
+rm -f .error\$\$
+ERROR=0
+export PATH=\"$PATH\" LANG=C
+($MAKE V=1 \$@ 2>&1 || touch .error\$\$)| `sed -ne \"s/^top_srcdir *= *//p\" < Makefile`/extras/buildsystem/make.pl
+test -f .error\$\$ && ERROR=1
+rm -f .error\$\$
+exit \$ERROR" >compile
chmod a+x compile
echo "
echo "build vlc executable : no"
fi
echo "
-To build vlc and its plugins, type \`./compile' or \`$USE_MAKE_OR_GMAKE'."
+To build vlc and its plugins, type \`$MAKE', or \`./compile' if you like nice colors."