AC_ARG_VAR([DESKTOP_FILE_VALIDATE], [Validator for desktop entry files])
AC_CHECK_PROGS(DESKTOP_FILE_VALIDATE, [${DESKTOP_FILE_VALIDATE} desktop-file-validate], :)
+AC_CHECK_PROGS(YASM, yasm)
dnl Check for compiler properties
AC_C_CONST
dnl Check the operating system
dnl
HAVE_WIN64="0"
+
+YASMFLAGS=""
+case "${host}" in
+ i?86*)
+ YASMFLAGS="-f elf32"
+ ;;
+ x86_64*)
+ YASMFLAGS="-f elf64"
+ ;;
+esac
+
+
case "${host_os}" in
"")
SYS=unknown
bsdi*)
SYS=bsdi
CFLAGS="${CFLAGS} -pthread"
- VLC_ADD_LIBS([vcd cdda vcdx],[-ldvd])
;;
freebsd*)
SYS=freebsd
case "${host}" in
i?86*)
ARCH_flag="-arch i386"
+ YASMFLAGS="-f macho32"
;;
ppc64*)
ARCH_flag="-arch ppc64"
;;
x86_64*)
ARCH_flag="-arch x86_64"
+ YASMFLAGS="-f macho64"
;;
arm*)
ac_cv_c_bigendian="no"
CPPFLAGS="${CPPFLAGS} ${ARCH_flag}"
OBJCFLAGS="${OBJCFLAGS} -D_INTL_REDIRECT_MACROS -std=gnu99 ${ARCH_flag}"
LDFLAGS="${LDFLAGS} -Wl,-headerpad_max_install_names ${ARCH_flag}"
- VLC_ADD_LIBS([motion rotate], [-Wl,-framework,IOKit,-framework,CoreFoundation])
VLC_ADD_LIBS([libvlc vlc],[-Wl,-undefined,dynamic_lookup,-framework,AppKit])
- VLC_ADD_LIBS([avcodec access_avio swscale postproc i420_rgb_mmx x264 x26410b],[-Wl,-read_only_relocs,suppress])
- VLC_ADD_CFLAGS([motion rotate],[-fconstant-cfstrings])
- VLC_ADD_LIBS([libvlccore],[-Wl,-framework,CoreFoundation,-framework,SystemConfiguration])
+ VLC_ADD_LIBS([avcodec access_avio swscale postproc i420_rgb_mmx x262 x264 x26410b],[-Wl,-read_only_relocs,suppress])
+ VLC_ADD_LIBS([libvlccore],[-Wl,-framework,CoreFoundation,-framework,CoreServices])
dnl Allow binaries created on Lion to run on earlier releases
AC_EGREP_CPP(yes,
[AS_HELP_STRING([--with-macosx-version-min=VERSION],
[compile for Mac OS X VERSION and above])])
if test "${with_macosx_version_min}" != "" ; then
- MACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}
CPP="${CPP} -mmacosx-version-min=${with_macosx_version_min}"
CC="${CC} -mmacosx-version-min=${with_macosx_version_min}"
CXX="${CXX} -mmacosx-version-min=${with_macosx_version_min}"
OBJC="${OBJC} -mmacosx-version-min=${with_macosx_version_min}"
LD="${LD} -mmacosx_version_min=${with_macosx_version_min}"
- CFLAGS="${CFLAGS} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"
- CXXFLAGS="${CXXFLAGS} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"
- OBJCFLAGS="${OBJCFLAGS} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"
- export MACOSX_DEPLOYMENT_TARGET
fi
;;
*mingw32* | *cygwin* | *wince* | *mingwce*)
VLC_ADD_LIBS([libvlccore],[-lwinmm])
VLC_ADD_LDFLAGS([vlc],[-mwindows])
VLC_ADD_LIBS([win32text],[-lgdi32])
- VLC_ADD_LIBS([vcdx],[-lwinmm])
AC_CHECK_PROGS(U2D, [unix2dos todos], unix2dos)
ac_default_prefix="`pwd`/_win32"
DESTDIR="`pwd`/_win32/"
HAVE_WIN64="1"
WINDOWS_ARCH="x64"
PROGRAMFILES="PROGRAMFILES64"
+ YASMFLAGS="-f win64"
;;
*)
WINDOWS_ARCH="x86"
PROGRAMFILES="PROGRAMFILES"
+ YASMFLAGS="-f win32"
;;
esac
AC_SUBST(WINDOWS_ARCH)
AM_CONDITIONAL(HAVE_WIN64, test "${HAVE_WIN64}" = "1")
AM_CONDITIONAL(HAVE_SYMBIAN, test "${SYS}" = "symbian")
+AC_SUBST(YASMFLAGS)
+
dnl
dnl Sadly autoconf does not think about testing foo.exe when ask to test
dnl for program foo on win32
VLC_RESTORE_FLAGS
AS_IF([test -n "$SOCKET_LIBS"], [
- VLC_ADD_LIBS([access_http access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout sap stream_out_standard stream_out_rtp stream_out_raop vod_rtsp rtp oldrc netsync gnutls ts audioscrobbler lua remoteosd zvbi audiobargraph_a],[${SOCKET_LIBS}])
+ VLC_ADD_LIBS([access_rtmp access_output_shout sap stream_out_standard stream_out_rtp stream_out_raop vod_rtsp oldrc netsync gnutls ts remoteosd audiobargraph_a],[${SOCKET_LIBS}])
])
AC_SUBST(SOCKET_LIBS)
AC_SUBST(GNUGETOPT_LIBS)
AC_CHECK_LIB(m,cos,[
- VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom rotate noise grain scene kate lua chorus_flanger freetype avcodec access_avio swscale postproc i420_rgb faad twolame equalizer spatializer param_eq samplerate freetype mpc dmo quicktime qt4 compressor headphone_channel_mixer normvol audiobargraph_a audiobargraph_v speex opus mono colorthres extract ball access_imem hotkeys mosaic gaussianblur x26410b hqdn3d anaglyph oldrc ncurses oldmovie glspectrum],[-lm])
+ VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom noise grain scene chorus_flanger freetype swscale postproc equalizer spatializer param_eq samplerate freetype mpc qt4 compressor headphone_channel_mixer normvol audiobargraph_a audiobargraph_v mono colorthres extract ball hotkeys mosaic gaussianblur x262 x26410b hqdn3d anaglyph oldrc ncurses oldmovie glspectrum],[-lm])
LIBM="-lm"
], [
LIBM=""
AM_CONDITIONAL(HAVE_DYNAMIC_PLUGINS, [test "${have_dynamic_objects}" != "no"])
AC_SUBST(LIBDL)
-VLC_ADD_LIBS([lua],[$LIBDL])
dnl Check for thread library
LIBPTHREAD=""
AM_CONDITIONAL(HAVE_ZLIB, [ test "${have_zlib}" = "yes" ])
if test "${have_zlib}" = "yes"
then
- VLC_ADD_LIBS([access_http skins2 sap unzip zip],[-lz])
+ VLC_ADD_LIBS([skins2 sap unzip zip],[-lz])
PKG_CHECK_MODULES([MINIZIP], [minizip] , [ have_minizip=yes ], [
AC_CHECK_HEADERS([unzip.h], [
have_minizip=yes
MINIZIP_LIBS="-lminizip -lz"
], [
VLC_ADD_CPPFLAGS([skins2], [-I\\\$(top_srcdir)/modules/access/zip/unzip])
- VLC_ADD_LIBS([skins2], [\\\$(top_builddir)/modules/access/libunzip.la])
+ VLC_ADD_LIBS([skins2], [\\\$(top_builddir)/modules/libunzip.la])
have_minizip=no
])
])
])
])
-dnl Check for Darwin plugin linking flags
-AS_IF([test "${SYS}" = "darwin"], [
- VLC_SAVE_FLAGS
- CFLAGS="${CFLAGS} -bundle -undefined error"
- AC_CACHE_CHECK([if $CC accepts -bundle -undefined error],
- [ac_cv_ld_darwin], [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], [
- ac_cv_ld_darwin=yes
- ], [
- ac_cv_ld_darwin=no
- ])
- ])
- AS_IF([test "${ac_cv_ld_darwin}" != "no"], [
- VLC_ADD_LDFLAGS([plugin],[-bundle -undefined error])
+VLC_SAVE_FLAGS
+LDFLAGS="${LDFLAGS} -Wl,-Bsymbolic"
+AC_CACHE_CHECK([if linker supports -Bsymbolic], [ac_cv_ld_bsymbolic], [
+ AC_TRY_LINK([],, [
+ ac_cv_ld_bsymbolic="-Wl,-Bsymbolic"
+ ], [
+ ac_cv_ld_bsymbolic=""
])
- VLC_RESTORE_FLAGS
])
+VLC_RESTORE_FLAGS
+SYMBOLIC_LDFLAGS="${ac_cv_ld_bsymbolic}"
+AC_SUBST(SYMBOLIC_LDFLAGS)
dnl Checks for __attribute__(aligned()) directive
VLC_SAVE_FLAGS
[enable_altivec=yes], [enable_altivec=no])
])
have_altivec="no"
+ALTIVEC_CFLAGS=""
AS_IF([test "${enable_altivec}" = "yes"], [
ARCH="${ARCH} altivec";
VLC_SAVE_FLAGS
AC_DEFINE(CAN_COMPILE_ALTIVEC, 1,
[Define to 1 if AltiVec inline assembly is available.])
AS_IF([test "${ac_cv_altivec_inline}" != "yes"], [
- VLC_ADD_CFLAGS([memcpyaltivec],[${ac_cv_altivec_inline}])
- VLC_ADD_CFLAGS([i420_yuy2_altivec],[${ac_cv_altivec_inline}])
+ ALTIVEC_CFLAGS="${ac_cv_altivec_inline}"
VLC_ADD_CFLAGS([libvlccore],[${ac_cv_altivec_inline}])
])
have_altivec="yes"
])
-dnl The AltiVec C extensions
-dnl
-dnl There are several possible cases:
-dnl - OS X PPC, gcc 4.x: use -mpim-altivec -force_cpusubtype_ALL, don't
-dnl need <altivec.h>
-dnl - OS X PPC, gcc 3.x: need -faltivec, don't need <altivec.h>
-dnl - Linux PPC, gcc 3.4, 4.x: need <altivec.h> which requires -maltivec
-dnl - Linux PPC, gcc 3.3: need <altivec.h> and -maltivec -mabi=altivec
-dnl - Linux PPC, gcc 3.x: need <altivec.h> and -fvec
-dnl - Others: test should fail
VLC_SAVE_FLAGS
AC_CACHE_CHECK([if \$CC groks AltiVec C extensions],
- [ac_cv_c_altivec],
- [# OS X/PPC test (gcc 4.x)
- CFLAGS="${CFLAGS} -mpim-altivec -force_cpusubtype_ALL"
- AC_TRY_COMPILE([vector unsigned char foo;],
- [vec_ld(0, (unsigned char *)0);],
- [ac_cv_c_altivec="-mpim-altivec -force_cpusubtype_ALL"],
- [# OS X/PPC test (gcc 3.x)
- CFLAGS="${CFLAGS} -faltivec"
- AC_TRY_COMPILE([vector unsigned char foo;],
- [vec_ld(1 * sizeof(vector float), (unsigned char *)0);],
- [ac_cv_c_altivec="-faltivec"],
- dnl Below this are the Linux tests
- [# Linux/PPC test (gcc 4.x)
- CFLAGS="${CFLAGS} -maltivec"
- AC_TRY_COMPILE([#include <altivec.h>],
- [vec_ld(0, (unsigned char *)0);],
- [ac_cv_c_altivec="-maltivec"],
- [# Linux/PPC test (gcc 3.3)
- CFLAGS="${CFLAGS} -maltivec -mabi=altivec"
- AC_TRY_COMPILE([#include <altivec.h>],
- [vec_ld(0, (unsigned char *)0);],
- [ac_cv_c_altivec=""
- ac_cv_c_altivec_abi="-maltivec -mabi=altivec"],
- [# Linux/PPC test (gcc 3.3)
- CFLAGS="${CFLAGS} -fvec"
- AC_TRY_COMPILE([#include <altivec.h>],
- [vec_ld(0, (unsigned char *)0);],
- [ac_cv_c_altivec="-fvec"],
- [ac_cv_c_altivec=no])
- ])
- ])
- ])
- ])
+ [ac_cv_c_altivec], [
+ CFLAGS="${CFLAGS} -maltivec"
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
+[#include <altivec.h>]], [
+[vec_ld(0, (unsigned char *)0);]])], [
+ ac_cv_c_altivec="-maltivec"
+ ], [
+ ac_cv_c_altivec="no"
+ ])
])
-
VLC_RESTORE_FLAGS
AS_IF([test "${ac_cv_c_altivec}" != "no"], [
CPPFLAGS="${CPPFLAGS} ${ac_cv_c_altivec}"
AC_DEFINE(CAN_COMPILE_C_ALTIVEC, 1, [Define to 1 if C AltiVec extensions are available.])
VLC_ADD_CFLAGS([libvlccore],[${ac_cv_c_altivec}])
- VLC_ADD_CFLAGS([i420_yuy2_altivec memcpyaltivec deinterlace],[${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}])
+ ALTIVEC_CFLAGS="$ALTIVEC_FLAGS ${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}"
+ VLC_ADD_CFLAGS([deinterlace],[${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}])
have_altivec="yes"
])
AC_CHECK_HEADERS(altivec.h)
[AC_TRY_LINK([],,ac_cv_ld_altivec=yes,ac_cv_ld_altivec=no)])
VLC_RESTORE_FLAGS
AS_IF([test "${ac_cv_ld_altivec}" != "no"], [
- VLC_ADD_LIBS([libvlccore memcpyaltivec],[-Wl,-framework,vecLib])
+ VLC_ADD_LIBS([libvlccore],[-Wl,-framework,vecLib])
])
])
+AC_SUBST(ALTIVEC_CFLAGS)
AM_CONDITIONAL([HAVE_ALTIVEC], [test "$have_altivec" = "yes"])
dnl
])
])
])
- if test "x${have_lua}" = "xyes" ; then
- VLC_ADD_LIBS([lua],[$LUA_LIBS])
- VLC_ADD_CFLAGS([lua],[$LUA_CFLAGS])
- else
+ if test "x${have_lua}" != "xyes" ; then
AC_MSG_ERROR([Could not find lua. Lua is needed for some interfaces (rc, telnet, http) as well as many other custom scripts. Use --disable-lua to ignore this error.])
fi
AC_ARG_VAR([LUAC], [LUA byte compiler])
AS_IF([test "${LUAC}" = "false"], [
AC_MSG_ERROR([Could not find the LUA byte compiler.])
])
- AS_IF([test -d ${CONTRIB_DIR} -a -f ${CONTRIB_DIR}/lib/liblua.a -a `echo|${LUAC} -o - -|od -j 8 -N 2 -t x2|head -n 1|cut -d' ' -f2` != 0404], [
+ AS_IF([test -d "${CONTRIB_DIR}" -a -f "${CONTRIB_DIR}"/lib/liblua.a -a `echo|${LUAC} -o - -|od -j 8 -N 2 -t x2|head -n 1|cut -d' ' -f2` != 0404], [
AC_MSG_ERROR([You need 32-bits luac when using using lua from contrib.])
])
fi
AC_ARG_ENABLE(linsys,
[AS_HELP_STRING([--enable-linsys],
[Linux Linear Systems Ltd. SDI and HD-SDI input cards (default enabled)])])
-if test "$SYS" = "linux" -a "${enable_linsys}" != "no"; then
+AS_IF([test "$SYS" = "linux" -a "${enable_linsys}" != "no"], [
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([${LINSYS_SDI_PKG_ERRORS}.])]
- )
-fi
+ PKG_CHECK_MODULES(LINSYS_SDI, [zvbi-0.2 >= 0.2.28], [
+ VLC_ADD_PLUGIN([linsys_sdi])
+ ], [
+ AC_MSG_WARN([${LINSYS_SDI_PKG_ERRORS}.])
+ ])
+])
dnl
dnl dvdread module: check for libdvdread
AC_ARG_ENABLE(dvdnav,
[AS_HELP_STRING([--disable-dvdnav],
[disable DVD navigation with libdvdnav (default auto)])])
-if test "${enable_dvdnav}" != "no"
-then
+AS_IF([test "${enable_dvdnav}" != "no"], [
PKG_CHECK_MODULES(DVDNAV, dvdnav, [
VLC_ADD_PLUGIN([dvdnav])
- 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_DESCRIBE_TITLE_CHAPTERS, 1, [Define if you have dvdnav_describe_title_chapters.]),
[], [${LIBS_dvdnav}])],
[AC_MSG_WARN([${DVDNAV_PKG_ERRORS}.])])
-fi
+])
dnl
dnl Blu-ray Disc Support with libbluray
dnl
dnl libsmbclient plugin
dnl
-PKG_ENABLE_MODULES_VLC([SMBCLIENT], [access_smb], [smbclient], (SMB/CIFS support), [auto])
+PKG_ENABLE_MODULES_VLC([SMBCLIENT], [smb], [smbclient], (SMB/CIFS support), [auto])
AS_IF([test "${SYS}" = "mingw32"], [ VLC_ADD_PLUGIN([access_smb]) ])
dnl
dnl gnomeVFS access module
dnl
-PKG_ENABLE_MODULES_VLC([GNOMEVFS], [access_gnomevfs], [gnome-vfs-2.0], [GnomeVFS access module], [auto])
+PKG_ENABLE_MODULES_VLC([GNOMEVFS], [gnomevfs], [gnome-vfs-2.0], [GnomeVFS access module], [auto])
dnl
dnl VCDX modules
AC_MSG_RESULT(no)
])
- if test "${SYS}" = "bsdi" -o "${SYS}" = "mingw32" -o "${SYS}" = "os2"
- then
- VLC_ADD_PLUGIN([vcd cdda])
- fi
-
- if test "${SYS}" = "darwin"
+ if test "${SYS}" = "bsdi" -o "${SYS}" = "mingw32" -o "${SYS}" = "os2" -o "${SYS}" = "darwin"
then
VLC_ADD_PLUGIN([vcd cdda])
- VLC_ADD_LIBS([vcd vcdx cdda],[-Wl,-framework,IOKit,-framework,CoreFoundation])
- VLC_ADD_LIBS([vcdx cdda],[-liconv])
fi
if test "$enable_libcddb" != "no"; then
dnl
dnl VNC/RFB access module
dnl
-PKG_ENABLE_MODULES_VLC([LIBVNC], [libvnc], [libvncclient >= 0.9.9], (VNC/rfb client support), [auto])
+PKG_ENABLE_MODULES_VLC([VNC], [vnc], [libvncclient >= 0.9.9], (VNC/rfb client support), [auto])
dnl RDP/Remote Desktop access module
dnl
-PKG_ENABLE_MODULES_VLC([LIBFREERDP], [rdp], [freerdp >= 1.0.1], (RDP/Remote Desktop client support) )
+PKG_ENABLE_MODULES_VLC([FREERDP], [rdp], [freerdp >= 1.0.1], (RDP/Remote Desktop client support) )
dnl
dnl Real RTSP plugin
if test "x${enable_macosx_eyetv}" != "xno" &&
(test "${SYS}" = "darwin" || test "${enable_macosx_eyetv}" = "yes")
then
- VLC_ADD_LIBS([access_eyetv], [-Wl,-framework,Foundation])
VLC_ADD_PLUGIN([access_eyetv])
fi
fi
AM_CONDITIONAL(HAVE_AVFOUNDATION, [test "${have_avfoundation}" != "no"])
+dnl
+dnl DCP plugin (using asdcplib)
+dnl
+AC_ARG_ENABLE(dcp,
+ AS_HELP_STRING([--enable-dcp],[Digital Cinema Package support using asdcplib (default auto)]))
+have_asdcp="no"
+AS_IF([test "x${enable_dcp}" != "no"], [
+ AC_LANG_PUSH(C++)
+ AC_CHECK_HEADERS( [[AS@&t@_DCP.h]],
+ [have_asdcp="yes"],
+ [AS_IF( [test "x${enable_dcp}" = "yes"],
+ [AC_MSG_ERROR( [ ASDCP library cannot be found (needed for dcp module). Either use --enable-dcp=no or install asdcp library: http://www.cinecert.com/asdcplib/download/] )])
+ ])
+ AC_LANG_POP(C++)
+])
+AM_CONDITIONAL(HAVE_ASDCP, [test "${have_asdcp}" != "no"])
+
dnl
dnl Demux plugins
dnl
#endif],
[AC_MSG_RESULT([yes])
AC_CHECK_HEADERS(matroska/KaxAttachments.h)
- VLC_ADD_CXXFLAGS([mkv],[])
AC_CHECK_LIB(ebml_pic, main, [
VLC_ADD_PLUGIN([mkv])
VLC_ADD_LIBS([mkv],[-lmatroska -lebml_pic])
fi
dnl
-dnl shine fixed point mp3 encoder
+dnl shine encoder plugin
dnl
-AC_ARG_ENABLE(shine,
- [ --enable-shine shine mp3 encoding module (default disabled)])
-if test "${enable_shine}" = "yes"
-then
- VLC_ADD_PLUGIN([shine])
-fi
+PKG_ENABLE_MODULES_VLC([SHINE], [], [shine >= 3.0.0], [MPEG Audio Layer 3 encoder], [auto], [], [], [])
+
dnl
dnl openmax il codec plugin
])
AM_CONDITIONAL([MERGE_FFMPEG], [test "$enable_merge_ffmpeg" != "no"])
-VLC_SAVE_FLAGS
-LDFLAGS="${LDFLAGS} -Wl,-Bsymbolic"
-AC_CACHE_CHECK([if linker supports -Bsymbolic],
- [ac_cv_ld_bsymbolic],
- [AC_TRY_LINK([],,ac_cv_ld_bsymbolic=yes,ac_cv_ld_bsymbolic=no)])
-VLC_RESTORE_FLAGS
-
dnl
dnl avcodec decoder/encoder plugin
dnl
CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}"
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"], [
- VLC_ADD_LIBS([avcodec],[-Wl,-Bsymbolic])
- ])
- VLC_ADD_CFLAGS([avcodec],[$AVCODEC_CFLAGS])
VLC_RESTORE_FLAGS
have_avcodec="yes"
],[
], [
have_avcodec="no"
])
+AM_CONDITIONAL([HAVE_AVCODEC], [test "${have_avcodec}" != "no"])
dnl
dnl libva needs avcodec
[ --enable-avformat libavformat containers (default enabled)],, [
enable_avformat="${have_avcodec}"
])
-if test "${enable_avformat}" != "no"
-then
- PKG_CHECK_MODULES(AVFORMAT,[libavformat >= 53.21.0 libavcodec libavutil],
- [
+have_avformat="no"
+AS_IF([test "${enable_avformat}" != "no"], [
+ PKG_CHECK_MODULES(AVFORMAT,[libavformat >= 53.21.0 libavcodec libavutil], [
+ have_avformat="yes"
VLC_SAVE_FLAGS
CPPFLAGS="${CPPFLAGS} ${AVFORMAT_CFLAGS}"
CFLAGS="${CFLAGS} ${AVFORMAT_CFLAGS}"
AC_CHECK_HEADERS(libavformat/avformat.h libavformat/avio.h)
+ AC_CHECK_HEADERS(libavcodec/avcodec.h)
AC_CHECK_HEADERS(libavutil/avutil.h)
AS_IF([test "$enable_merge_ffmpeg" = "no"], [
- VLC_ADD_PLUGIN([avformat access_avio])
- VLC_ADD_LIBS([access_avio],[$AVFORMAT_LIBS $AVUTIL_LIBS])
- VLC_ADD_CFLAGS([access_avio],[$AVFORMAT_CFLAGS $AVUTIL_CFLAGS])
- AS_IF([test "${ac_cv_ld_bsymbolic}" != "no"], [
- VLC_ADD_LDFLAGS([avformat access_avio],[-Wl,-Bsymbolic])
- ])
- ], [
- VLC_ADD_LIBS([avcodec],[$AVFORMAT_LIBS $AVUTIL_LIBS])
- VLC_ADD_CFLAGS([avcodec],[$AVFORMAT_CFLAGS $AVUTIL_CFLAGS])
+ have_avformat="no"
])
VLC_RESTORE_FLAGS
],[
AC_MSG_ERROR([${AVFORMAT_PKG_ERRORS}. Pass --disable-avformat to ignore this error.])
])
-fi
+])
+AM_CONDITIONAL([HAVE_AVFORMAT], [test "${enable_avformat}" != "no"])
dnl
dnl swscale image scaling and conversion plugin
VLC_ADD_PLUGIN([swscale])
VLC_ADD_LIBS([swscale],[$SWSCALE_LIBS])
VLC_ADD_CFLAGS([swscale],[$SWSCALE_CFLAGS])
- AS_IF([test "${ac_cv_ld_bsymbolic}" != "no"], [
- VLC_ADD_LIBS([swscale],[-Wl,-Bsymbolic])
+ AS_IF([test -n "${ac_cv_ld_bsymbolic}"], [
+ VLC_ADD_LIBS([swscale],[${ac_cv_ld_bsymbolic}])
])
VLC_RESTORE_FLAGS
],[
fi
fi
+dnl
+dnl libvpx decoder plugin
+dnl
+AC_ARG_ENABLE(vpx,
+ AS_HELP_STRING([--enable-vpx],[libvpx VP8/VP9 decoder (default auto)]))
+AS_IF([test "${enable_vpx}" != "no"],[
+ PKG_CHECK_MODULES([VPX], [vpx] , [
+ VLC_ADD_PLUGIN([vpx])
+ VLC_ADD_CPPFLAGS([vpx], [${VPX_CFLAGS}])
+ VLC_ADD_LIBS([vpx], [${VPX_LIBS}])
+ AC_CHECK_LIB([vpx],[vpx_codec_vp9_dx], [
+ VLC_ADD_CPPFLAGS([vpx], [-DENABLE_VP9_DECODER])
+ ], [], [${VPX_LIBS}])
+ ], [
+ AS_IF([test "${enable_vpx}" = "yes"],[
+ AC_MSG_ERROR([libvpx was not found])
+ ])])
+])
+
dnl
dnl twolame encoder plugin
dnl
then
AC_CHECK_HEADERS(tremor/ivorbiscodec.h, [
VLC_ADD_PLUGIN([tremor])
- VLC_ADD_LIBS([tremor],[-lvorbisidec -logg])
],[])
fi
dnl
dnl Opus plugin
dnl
-PKG_ENABLE_MODULES_VLC([OPUS], [], [ogg opus], [Opus support], [auto])
+PKG_ENABLE_MODULES_VLC([OPUS], [], [ogg opus >= 1.0.3], [Opus support], [auto])
dnl
dnl theora decoder plugin
VLC_SAVE_FLAGS
LDFLAGS="${LDFLAGS} -lz $LIBM"
AC_CHECK_LIB(png, png_set_rows, [
- VLC_ADD_LIBS([png],[-lpng -lz $LIBM])
VLC_ADD_PLUGIN([png])
], [], [-lz $LIBM])
VLC_RESTORE_FLAGS
])
])
+dnl
+dnl H262 encoder plugin (lib262)
+dnl
+AC_ARG_ENABLE(x262,
+ [ --enable-x262 H262 encoding support with static libx262 (default disabled)])
+if test "${enable_x262}" != "no"; then
+AC_ARG_WITH(x262-tree,
+ [ --with-x262-tree=PATH H262 encoding module with libx262 (static linking)],[],[])
+ if test "${with_x262_tree}" != "no" -a -n "${with_x262_tree}"
+ then
+ real_x262_tree="̧`cd ${with_x262_tree} 2>/dev/null && pwd`"
+ if test -z "${real_x262_tree}"
+ then
+ AC_MSG_RESULT(no)
+ AC_MSG_ERROR([${with_x262_tree} directory does not exist])
+ fi
+ AC_MSG_CHECKING(for x262.h in ${real_x262_tree})
+ if test -f ${with_x262_tree}/x262_config.h
+ then
+ VLC_ADD_PLUGIN([x262])
+ VLC_ADD_CFLAGS([x262],[-I${with_x262_tree}])
+ VLC_ADD_LIBS([x262],[-L${with_x262_tree} -lm -lpthread -lx262])
+ else
+ AC_MSG_RESULT(no)
+ AC_MSG_ERROR([${with_x262_tree} doesnt have x262_config.h])
+ fi
+ else
+ PKG_CHECK_MODULES(X262, x262, [
+ VLC_ADD_PLUGIN([x262])
+ VLC_ADD_LDFLAGS([x262],[${X262_LIBS}])
+ AS_IF([test -n "${ac_cv_ld_bsymbolic}"], [
+ VLC_ADD_LIBS([x262],[${av_cv_ld_bsymbolic}])
+ ])
+ VLC_ADD_CFLAGS([x262],[${X262_CFLAGS}])
+ if echo ${X262_LIBS} |grep -q 'pthreadGC2'; then
+ VLC_ADD_CFLAGS([x262], [-DPTW32_STATIC_LIB])
+ fi
+ ], [
+ if test "${enable_x262}" = "yes"; then
+ AC_MSG_ERROR([x262 module doesn't work without staticly compiled libx262.a])
+ fi
+ ])
+ fi
+fi
+
+dnl x265 encoder
+AC_ARG_ENABLE(x265,
+ AS_HELP_STRING([--enable-x265],[H265 / HEVC encoding support with libx265 (default enabled)]))
+AS_IF( [test "${enable_x265}" != "no"],[
+ AC_PREPROC_IFELSE([AC_LANG_SOURCE([
+#include <x265.h>
+#if X265_BUILD != 1
+# error Fail
+#endif
+ ])], [
+ AC_CHECK_LIB([x265],[x265_encoder_open_1], [
+ VLC_ADD_PLUGIN([x265])
+ VLC_ADD_LIBS([x265], [-lx265 -lstdc++ -lm -lpthread])
+ ], [
+ AC_MSG_ERROR([x265 library not found])
+ ], [-lstdc++ -lm -lpthread])
+ ], [
+ AS_IF([test "${enable_x265}" = "yes"], [
+ AC_MSG_ERROR([x265.h not found])
+ ])
+ ])
+])
+
+
dnl
dnl H264 encoder plugin (10-bit lib264)
dnl
PKG_CHECK_MODULES(X26410B, x26410b, [
VLC_ADD_PLUGIN([x26410b])
VLC_ADD_LIBS([x26410b],[${X26410B_LIBS}])
- AS_IF([test "${ac_cv_ld_bsymbolic}" != "no"], [
- VLC_ADD_LDFLAGS([x26410b],[-Wl,-Bsymbolic])
+ AS_IF([test -n "${ac_cv_ld_bsymbolic}"], [
+ VLC_ADD_LDFLAGS([x26410b],[${ac_cv_ld_bsymbolic}])
])
VLC_ADD_CFLAGS([x26410b],[${X26410B_CFLAGS}])
if echo ${X26410B_LIBS} |grep -q 'pthreadGC2'; then
VLC_ADD_PLUGIN([x264])
VLC_ADD_LIBS([x264],[${X264_LIBS}])
- AS_IF([test "${ac_cv_ld_bsymbolic}" != "no"], [
- VLC_ADD_LDFLAGS([x264],[-Wl,-Bsymbolic])
+ AS_IF([test -n "${ac_cv_ld_bsymbolic}"], [
+ VLC_ADD_LDFLAGS([x264],[${ac_cv_ld_bsymbolic}])
])
VLC_ADD_CFLAGS([x264],[${X264_CFLAGS}])
dnl
dnl Intel QuickSync (aka MediaSDK) H264/H262 encoder
dnl
-PKG_ENABLE_MODULES_VLC([QUICKSYNC], [qsv], [libmfx], [Intel QuickSync MPEG4-Part10/MPEG2 (aka H.264/H.262) encoder], [auto])
+PKG_ENABLE_MODULES_VLC([MFX], [qsv], [libmfx], [Intel QuickSync MPEG4-Part10/MPEG2 (aka H.264/H.262) encoder], [auto])
dnl
dnl libfluidsynth (MIDI synthetizer) plugin
AS_IF( [test "${enable_zvbi}" != "no"],[
PKG_CHECK_MODULES(ZVBI, [zvbi-0.2 >= 0.2.28],
[
- VLC_ADD_LIBS([zvbi],[$ZVBI_LIBS])
- if test "${SYS}" = "mingw32"; then
- VLC_ADD_LIBS([zvbi],[ -lpthreadGC2])
- fi
- VLC_ADD_CFLAGS([zvbi],[$ZVBI_CFLAGS])
VLC_ADD_PLUGIN([zvbi])
AC_DEFINE(ZVBI_COMPILED, 1, [Define if the zvbi module is built])
AS_IF( [test "${enable_telx}" = "yes"],[
AS_IF( [test "${enable_libass}" != "no"], [
PKG_CHECK_MODULES(LIBASS, [libass >= 0.9.8],
[
- VLC_ADD_LIBS([libass],[$LIBASS_LIBS])
- VLC_ADD_CFLAGS([libass],[$LIBASS_CFLAGS])
VLC_ADD_PLUGIN([libass])
AC_CHECK_HEADERS(fontconfig/fontconfig.h,
[ --enable-tiger Tiger rendering library for Kate streams (default auto)])
AS_IF([test "${enable_tiger}" != "no"], [
PKG_CHECK_MODULES(TIGER,[tiger >= 0.3.1], [
- AC_DEFINE(HAVE_TIGER, 1, [Define if libtiger is available.])
- VLC_ADD_CFLAGS([kate],[$TIGER_CFLAGS])
- VLC_ADD_LIBS([kate],[$TIGER_LIBS]) ],[
+ AC_DEFINE(HAVE_TIGER, 1, [Define if libtiger is available.])],[
AS_IF([test -n "${enable_tiger}"], [
AC_MSG_ERROR([${TIGER_PKG_ERRORS}.])
])
dnl
dnl OpenGL
dnl
+PKG_CHECK_MODULES([EGL], [egl], [
+ have_egl="yes"
+], [
+ have_egl="no"
+])
+AM_CONDITIONAL([HAVE_EGL], [test "${have_egl}" = "yes"])
+
PKG_CHECK_MODULES([GL], [gl], [
have_gl="yes"
], [
- AC_CHECK_HEADER([GL/gl.h], [
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
+ [#include <GL/gl.h>]], [
+ [int t0 = GL_TEXTURE0;]])
+ ], [
have_gl="yes"
GL_CFLAGS=""
AS_IF([test "${SYS}" = "mingw32"], [
+ AC_CHECK_HEADER([GL/glew.h], [
+ ], [
+ have_gl="no"
+ ])
GL_LIBS="-lopengl32"
], [
GL_LIBS="-lGL"
have_gl="no"
])
])
+AM_CONDITIONAL([HAVE_GL], [test "${have_gl}" = "yes"])
dnl OpenGL ES 2: depends on EGL 1.1
PKG_ENABLE_MODULES_VLC([GLES2], [], [glesv2], [OpenGL ES v2 support], [disabled])
dnl OpenGL ES 1: depends on EGL 1.0
PKG_ENABLE_MODULES_VLC([GLES1], [], [glesv1_cm], [OpenGL ES v1 support], [disabled])
-AC_ARG_ENABLE(egl,
- [ --enable-egl OpenGL support through EGL (default disabled)],, [
- enable_egl="no"
-])
-AS_IF([test "$enable_egl" != "no"], [
- PKG_CHECK_MODULES([EGL], [egl], [
- VLC_ADD_PLUGIN([gl])
- VLC_ADD_PLUGIN([egl])
- ])
-])
-
dnl
dnl Xlib
dnl
])
have_xcb="no"
+have_xcb_keysyms="no"
have_xcb_randr="no"
+have_xcb_xvideo="no"
AS_IF([test "${enable_xcb}" != "no"], [
dnl libxcb
PKG_CHECK_MODULES(XCB, [xcb >= 1.6])
have_xcb="yes"
PKG_CHECK_MODULES(XCB_SHM, [xcb-shm])
PKG_CHECK_MODULES(XCB_COMPOSITE, [xcb-composite])
+ PKG_CHECK_MODULES(XPROTO, [xproto])
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 >= 1.1.90.1], [have_xcb_xvideo="yes"])
])
- PKG_CHECK_MODULES(XCB_RANDR, [xcb-randr >= 1.3], [
- have_xcb_randr="yes"
- ])
-
- PKG_CHECK_MODULES(XPROTO, [xproto], [
- VLC_ADD_PLUGIN([xwd])
-
- dnl xcb-utils
- PKG_CHECK_MODULES(XCB_KEYSYMS, [xcb-keysyms >= 0.3.4], [
- VLC_ADD_PLUGIN([globalhotkeys])
- VLC_ADD_CFLAGS([xcb_window], [-DHAVE_XCB_KEYSYMS])
- ], [
- AC_MSG_WARN([${XCB_KEYSYMS_PKG_ERRORS}. Hotkeys will not work.])
- ])
- ], [
- AC_MSG_WARN([${XPROTO_PKG_ERRORS}. Hotkeys and XWD will not work.])
- ])
+ PKG_CHECK_MODULES(XCB_RANDR, [xcb-randr >= 1.3], [have_xcb_randr="yes"])
- AS_IF([test "${enable_glx}" != "no"], [
- AS_IF([test "${have_gl}" != "yes"], [
- AC_MSG_ERROR([${GL_PKG_ERRORS}. Pass --disable-glx if you do not need OpenGL X11 support.])
- ])
- VLC_ADD_PLUGIN([xcb_glx])
- VLC_ADD_PLUGIN([glx])
- VLC_ADD_PLUGIN([gl])
+ dnl xcb-utils
+ PKG_CHECK_MODULES(XCB_KEYSYMS, [xcb-keysyms >= 0.3.4], [have_xcb_keysyms="yes"], [
+ AC_MSG_WARN([${XCB_KEYSYMS_PKG_ERRORS}. Hotkeys will not work.])
])
])
AM_CONDITIONAL([HAVE_XCB], [test "${have_xcb}" = "yes"])
+AM_CONDITIONAL([HAVE_XCB_KEYSYMS], [test "${have_xcb_keysyms}" = "yes"])
AM_CONDITIONAL([HAVE_XCB_RANDR], [test "${have_xcb_randr}" = "yes"])
+AM_CONDITIONAL([HAVE_XCB_XVIDEO], [test "${have_xcb_xvideo}" = "yes"])
dnl
# SDL_image
AS_IF([ test "${enable_sdl_image}" != "no"],[
PKG_CHECK_MODULES(SDL_IMAGE, [SDL_image >= 1.2.10], [
- VLC_ADD_PLUGIN([sdl_image])
- VLC_ADD_LIBS([sdl_image],[${SDL_IMAGE_LIBS}])
- VLC_ADD_CFLAGS([sdl_image], [${SDL_IMAGE_CFLAGS}])],
+ VLC_ADD_PLUGIN([sdl_image])],
[ AC_MSG_WARN([${SDL_IMAGE_PKG_ERRORS}. You should install it alongside your SDL package.])
])
])
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_LIBS([vout_ios], [-Wl,-framework,OpenGLES,-framework,QuartzCore,-framework,UIKit,-framework,Foundation])
-fi
-
dnl
dnl iOS ES2 vout module
dnl
])
AM_CONDITIONAL([HAVE_WASAPI], [test "${have_wasapi}" = "yes"])
-dnl
-dnl win32 waveOut plugin
-dnl
-AC_ARG_ENABLE(waveout,
- [ --enable-waveout Win32 waveOut module (default enabled on Win32)])
-if test "${enable_waveout}" != "no"; then
- if test "${SYS}" = "mingw32"; then
- VLC_ADD_PLUGIN([waveout])
- VLC_ADD_LIBS([waveout],[-lwinmm])
- fi
-fi
-
dnl
dnl CoreAudio plugin
dnl
if test "x${enable_macosx_audio}" != "xno" &&
(test "${SYS}" = "darwin" || test "${enable_macosx_audio}" = "yes")
then
- AC_CHECK_HEADERS(CoreAudio/CoreAudio.h,
+ AC_CHECK_HEADER([CoreAudio/CoreAudio.h],
[ VLC_ADD_PLUGIN([auhal])
- VLC_ADD_LIBS([auhal],[-Wl,-framework,CoreAudio,-framework,AudioUnit,-framework,AudioToolbox,-framework,CoreServices])
], [ AC_MSG_ERROR([cannot find CoreAudio headers]) ])
fi
[ --enable-ios-audio Audio module for iOS (default disabled)])
if test "${enable_ios_audio}" = "yes"
then
- AC_CHECK_HEADERS(AudioUnit/AudioUnit.h,
+ AC_CHECK_HEADER([AudioUnit/AudioUnit.h],
[ VLC_ADD_PLUGIN([audiounit_ios])
- VLC_ADD_LIBS([audiounit_ios],[-Wl,-framework,CoreAudio,-framework,AudioUnit,-framework,AudioToolbox,-framework,CoreServices])
], [ AC_MSG_ERROR([cannot find AudioUnit headers]) ])
fi
if test "${enable_audioqueue}" = "yes"
then
VLC_ADD_PLUGIN([audioqueue])
- VLC_ADD_LIBS([audioqueue], [-Wl,-framework,AudioToolbox,-framework,CoreFoundation])
fi
dnl
AC_ARG_ENABLE(jack,
[AS_HELP_STRING([--disable-jack],
[do not use jack (default auto)])])
-if test "${enable_jack}" != "no" ; then
+have_jack="no"
+AS_IF([test "${enable_jack}" != "no"], [
PKG_CHECK_MODULES(JACK, jack >= 1.9.7,
[ have_jack=yes ],
[
[AC_MSG_WARN([${JACK_PKG_ERRORS}.])])
])
])
- if test "x${have_jack}" = "xyes" ; then
- VLC_ADD_PLUGIN([jack access_jack])
- VLC_ADD_LIBS([jack access_jack],[$JACK_LIBS])
- VLC_ADD_CFLAGS([jack access_jack],[$JACK_CFLAGS])
- fi
-fi
+])
+AM_CONDITIONAL([HAVE_JACK], [test "${have_jack}" != "no"])
dnl
dnl OpenSLES Android
dnl
m4_pushdef([libchromaprint_version], 0.6.0)
PKG_WITH_MODULES([CHROMAPRINT],[libchromaprint >= libchromaprint_version],
- VLC_ADD_PLUGIN([stream_out_chromaprint fingerprinter])
+ VLC_ADD_PLUGIN([stream_out_chromaprint])
VLC_ADD_CFLAGS([stream_out_chromaprint],[${CHROMAPRINT_CFLAGS}] [-I./webservices -I../stream_out])
- VLC_ADD_LIBS([stream_out_chromaprint],[${CHROMAPRINT_LIBS}])
- VLC_ADD_LIBS([fingerprinter],[-lm]),
+ VLC_ADD_LIBS([stream_out_chromaprint],[${CHROMAPRINT_LIBS}]),
AS_IF([test "${enable_chromaprint}" = "yes"],
[AC_MSG_ERROR(Library [libchromaprint >= libchromaprint_version] needed for [chromaprint] was not found)],
[AC_MSG_WARN(Library [libchromaprint >= libchromaprint_version] needed for [chromaprint] was not found)]
PKG_CHECK_MODULES(PROJECTM, libprojectM,
[
VLC_ADD_PLUGIN([projectm])
- VLC_ADD_CXXFLAGS([projectm],[$PROJECTM_CFLAGS])
- VLC_ADD_LIBS([projectm],[$PROJECTM_LIBS])
- PKG_CHECK_MODULES(PROJECTM2, [libprojectM >= 2.0.0],
+ PKG_CHECK_EXISTS([libprojectM >= 2.0.0],
[ AC_DEFINE([HAVE_PROJECTM2], 1, [Define to 1 if using libprojectM 2.x]) ],
[ AC_MSG_WARN( [Using libprojectM version 1] )
])
dnl UPnP Plugin (Intel SDK)
dnl
PKG_ENABLE_MODULES_VLC([UPNP], [upnp], [libupnp], [Intel UPNP SDK],[auto])
-VLC_ADD_CXXFLAGS([upnp],[${UPNP_CFLAGS}])
EXTEND_HELP_STRING([Misc options:])
AS_IF([test "${enable_taglib}" != "no"], [
PKG_CHECK_MODULES(TAGLIB, taglib >= 1.6.1, [
VLC_ADD_PLUGIN([taglib])
- VLC_ADD_LIBS([taglib],[$TAGLIB_LIBS -lz])
- VLC_ADD_CXXFLAGS([taglib],[$TAGLIB_CFLAGS])
], [
AC_MSG_WARN([${TAGLIB_PKG_ERRORS}.])])
])
AC_SUBST(soliddatadir)
AM_CONDITIONAL(KDE_SOLID, [test "x${soliddatadir}" != "x"])
-dnl
-dnl DMO codec
-AS_IF([test "${SYS}" = "mingw32"], [VLC_ADD_PLUGIN([dmo]) VLC_ADD_LIBS([dmo],[-lole32 -luuid]) ])
-
EXTEND_HELP_STRING([Components:])
dnl
lib/Makefile
bin/Makefile
test/Makefile
- modules/access/Makefile
- modules/access/rtp/Makefile
modules/access_output/Makefile
modules/audio_filter/Makefile
- modules/audio_mixer/Makefile
- modules/audio_output/Makefile
- modules/codec/Makefile
modules/control/Makefile
- modules/demux/Makefile
modules/gui/Makefile
modules/gui/macosx/Makefile
modules/gui/minimal_macosx/Makefile
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/mux/Makefile
- modules/notify/Makefile
modules/packetizer/Makefile
- modules/services_discovery/Makefile
- modules/stream_filter/Makefile
modules/stream_out/Makefile
modules/text_renderer/Makefile
- modules/video_chroma/Makefile
modules/video_filter/Makefile
modules/video_output/Makefile
- modules/video_splitter/Makefile
modules/visualization/Makefile
- modules/mmx/Makefile
- modules/sse2/Makefile
- modules/altivec/Makefile
- modules/arm_neon/Makefile
modules/hw/vdpau/Makefile
])