dnl Autoconf settings for vlc
dnl $Id$
-AC_INIT(vlc,0.7.3-svn)
+AC_INIT(vlc,0.8.0-test1)
CONFIGURE_LINE="$0 $*"
-CODENAME="Bond"
+CODENAME="Janus"
AC_PREREQ(2.50)
AC_CONFIG_SRCDIR(src/libvlc.c)
dnl XXX: we don't put any flags here, because automake 1.5 doesn't support
dnl them. And we need the comma otherwize automake will choke on it.
-AM_INIT_AUTOMAKE(vlc,0.7.3-svn)
+AM_INIT_AUTOMAKE(vlc,0.8.0-test1)
AM_CONFIG_HEADER(config.h)
dnl
CFLAGS_save="${CFLAGS_save} -no-cpp-precomp -D_INTL_REDIRECT_MACROS"; CFLAGS="${CFLAGS_save}"
CXXFLAGS_save="${CXXFLAGS_save} -no-cpp-precomp -D_INTL_REDIRECT_MACROS"; CXXFLAGS="${CXXFLAGS_save}"
OBJCFLAGS_save="${OBJCFLAGS_save} -no-cpp-precomp -D_INTL_REDIRECT_MACROS"; OBJCFLAGS="${OBJCFLAGS_save}"
- VLC_ADD_LDFLAGS([vlc ffmpeg],[-all_load])
+ VLC_ADD_LDFLAGS([vlc ffmpeg ffmpegaltivec],[-all_load])
VLC_ADD_LDFLAGS([mp4], [-framework IOKit -framework CoreFoundation])
VLC_ADD_CFLAGS([libvlc],[-x objective-c])
VLC_ADD_CFLAGS([vlc],[-x objective-c])
if test "${SYS}" != "mingw32"; then
AC_TYPE_SIGNAL
AC_CHECK_LIB(m,cos,[
- VLC_ADD_LDFLAGS([adjust distort a52tofloat32 dtstofloat32],[-lm])
+ VLC_ADD_LDFLAGS([adjust distort a52tofloat32 dtstofloat32 x264],[-lm])
])
AC_CHECK_LIB(m,pow,[
- VLC_ADD_LDFLAGS([ffmpeg stream_out_transcode stream_out_transrate i420_rgb faad toolame equalizer vlc],[-lm])
+ VLC_ADD_LDFLAGS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad toolame equalizer vlc],[-lm])
])
AC_CHECK_LIB(m,sqrt,[
VLC_ADD_LDFLAGS([headphone_channel_mixer normvol],[-lm])
x_libraries="/usr/X11R6/lib"
fi
+dnl Check for hal
+PKG_CHECK_MODULES(HAL, hal >= 0.2.97,
+ [AC_DEFINE(HAVE_HAL, [], [Define if you have the HAL library])
+ VLC_ADD_LDFLAGS([vlc],[$HAL_LIBS])
+ VLC_ADD_CFLAGS([vlc],[$HAL_CFLAGS])],
+ [AC_MSG_WARN(HAL library not found)])
+
dnl Build the gtk_main plugins?
NEED_GTK_MAIN=no
NEED_GNOME_MAIN=no
VLC_ADD_PLUGINS([mpgv mpga m4v h264 ps pva avi asf aac mp4 rawdv nsv real aiff mjpeg demuxdump])
VLC_ADD_PLUGINS([cvdsub svcdsub spudec dvbsub mpeg_audio lpcm a52 dts cinepak])
VLC_ADD_PLUGINS([deinterlace invert adjust wall transform distort clone crop motionblur])
-VLC_ADD_PLUGINS([float32tos16 float32tos8 float32tou16 float32tou8 a52tospdif dtstospdif fixed32tofloat32 fixed32tos16 s16tofixed32 s16tofloat32 s16tofloat32swab s8tofloat32 u8tofixed32 u8tofloat32])
+VLC_ADD_PLUGINS([float32tos16 float32tos8 float32tou16 float32tou8 a52tospdif dtstospdif fixed32tofloat32 fixed32tos16 s16tofixed32 s16tofloat32 s16tofloat32swab s8tofloat32 u8tofixed32 u8tofloat32 audio_format])
VLC_ADD_PLUGINS([trivial_resampler ugly_resampler linear_resampler bandlimited_resampler])
VLC_ADD_PLUGINS([trivial_channel_mixer headphone_channel_mixer])
VLC_ADD_PLUGINS([trivial_mixer spdif_mixer float32_mixer])
if test "${ac_cv_c_altivec}" != "no"; then
AC_DEFINE(CAN_COMPILE_C_ALTIVEC, 1, Define if your compiler groks C AltiVec extensions.)
VLC_ADD_CFLAGS([vlc],[${ac_cv_c_altivec}])
- VLC_ADD_CFLAGS([idctaltivec motionaltivec memcpyaltivec deinterlace],[${ac_cv_c_altivec}])
- VLC_ADD_CFLAGS([i420_yuy2_altivec],[${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}])
+ VLC_ADD_CFLAGS([idctaltivec motionaltivec],[${ac_cv_c_altivec}])
+ VLC_ADD_CFLAGS([i420_yuy2_altivec memcpyaltivec deinterlace],[${ac_cv_c_altivec} ${ac_cv_c_altivec_abi}])
ACCEL_MODULES="${ACCEL_MODULES} ${ALTIVEC_MODULES}"
fi
VLC_ADD_PLUGINS([packetizer_copy])
VLC_ADD_PLUGINS([stream_out_dummy stream_out_standard stream_out_es stream_out_rtp])
- VLC_ADD_PLUGINS([stream_out_duplicate stream_out_gather stream_out_display])
+ VLC_ADD_PLUGINS([stream_out_duplicate stream_out_gather stream_out_display stream_out_transcode])
# VLC_ADD_PLUGINS([stream_out_transrate])
dnl Ogg and vorbis are handled in their respective section
then
AC_CHECK_HEADERS(ffmpeg/avcodec.h)
AC_CHECK_HEADERS(postproc/postprocess.h)
- VLC_ADD_PLUGINS([ffmpeg stream_out_transcode])
- VLC_ADD_CFLAGS([ffmpeg stream_out_transcode],[`${FFMPEG_CONFIG} --cflags`])
+ VLC_ADD_PLUGINS([ffmpeg])
+ VLC_ADD_CFLAGS([ffmpeg],[`${FFMPEG_CONFIG} --cflags`])
VLC_ADD_LDFLAGS([ffmpeg],[`${FFMPEG_CONFIG} --plugin-libs avcodec avformat postproc`])
- VLC_ADD_LDFLAGS([stream_out_transcode],[`${FFMPEG_CONFIG} --libs avcodec`])
else
AC_ARG_WITH(ffmpeg-mp3lame,
[ --with-ffmpeg-mp3lame if ffmpeg has been compiled with mp3lame support],
[
- dnl XXX: we don't link with -lavcodec a 2nd time because the OS X
- dnl linker would miserably barf on multiple definitions.
- VLC_ADD_LDFLAGS([stream_out_transcode],[])
VLC_ADD_LDFLAGS([ffmpeg],[-lmp3lame]) ])
AC_ARG_WITH(ffmpeg-faac,
[ --with-ffmpeg-faac if ffmpeg has been compiled with faac support],
[
- dnl XXX: we don't link with -lavcodec a 2nd time because the OS X
- dnl linker would miserably barf on multiple definitions.
- VLC_ADD_LDFLAGS([stream_out_transcode],[])
VLC_ADD_LDFLAGS([ffmpeg],[-lfaac]) ])
+ AC_ARG_WITH(ffmpeg-dts,
+ [ --with-ffmpeg-dts if ffmpeg has been compiled with dts support],
+ [
+ VLC_ADD_LDFLAGS([ffmpeg],[-lz]) ])
+
+ AC_ARG_WITH(ffmpeg-zlib,
+ [ --with-ffmpeg-zlib if ffmpeg has been compiled with zlib support],
+ [
+ VLC_ADD_LDFLAGS([ffmpeg],[-lz]) ])
+
AC_ARG_WITH(ffmpeg-tree,
[ --with-ffmpeg-tree=PATH ffmpeg tree for static linking])
AC_CHECK_HEADERS(ffmpeg/avcodec.h, [], [AC_MSG_ERROR([Missing header file ffmpeg/avcodec.h.])] )
AC_CHECK_HEADERS(postproc/postprocess.h, [], [AC_MSG_ERROR([Missing header file postproc/postprocess.h.])] )
AC_CHECK_LIB(avcodec, avcodec_init, [
- VLC_ADD_BUILTINS([ffmpeg stream_out_transcode])
- VLC_ADD_LDFLAGS([ffmpeg],[-lavcodec])
- dnl XXX: we don't link with -lavcodec a 2nd time because the OS X
- dnl linker would miserably barf on multiple definitions.
- VLC_ADD_LDFLAGS([stream_out_transcode],[]) ],
+ VLC_ADD_BUILTINS([ffmpeg])
+ VLC_ADD_LDFLAGS([ffmpeg],[-lavcodec])],
[ AC_MSG_ERROR([Could not find ffmpeg on your system: you may get it from http://ffmpeg.sf.net/ (cvs version is recommended). Alternatively you can use --disable-ffmpeg to disable the ffmpeg plugins.]) ])
AC_CHECK_LIB(avformat, av_open_input_stream, [
AC_DEFINE(HAVE_LIBAVFORMAT, 1,
fi
dnl Use a custom libffmpeg
AC_MSG_RESULT(${real_ffmpeg_tree}/libavcodec/libavcodec.a)
- VLC_ADD_BUILTINS([ffmpeg stream_out_transcode])
+ VLC_ADD_BUILTINS([ffmpeg])
VLC_ADD_LDFLAGS([ffmpeg],[-L${real_ffmpeg_tree}/libavcodec -lavcodec])
VLC_ADD_CPPFLAGS([ffmpeg],[-I${real_ffmpeg_tree}/libavcodec -I${real_ffmpeg_tree}/libavformat])
VLC_ADD_LDFLAGS([ffmpeg],[-L${real_ffmpeg_tree}/libavformat -lavformat -lz])
VLC_ADD_CPPFLAGS([ffmpeg],[-I${real_ffmpeg_tree}/libavformat])
fi
+ fi
+ fi
+fi
- dnl XXX: we don't link with -lavcodec a 2nd time because the OS X
- dnl linker would miserably barf on multiple definitions.
- VLC_ADD_LDFLAGS([stream_out_transcode],[-L${real_ffmpeg_tree}/libavcodec])
- VLC_ADD_CPPFLAGS([stream_out_transcode],[-I${real_ffmpeg_tree}/libavcodec -I${real_ffmpeg_tree}/libavformat])
+dnl
+dnl ffmpeg decoder/demuxer plugin
+dnl
+AC_ARG_ENABLE(ffmpegaltivec,
+[ --enable-ffmpegaltivec ffmpegaltivec codec (DO NOT USE)])
+if test "${enable_ffmpegaltivec}" == "yes"
+then
+ if test "${with_ffmpeg_tree}" != "no" -a -n "${with_ffmpeg_tree}"; then
+ AC_MSG_CHECKING(for libavcodecaltivec.a in ${with_ffmpeg_tree})
+ real_ffmpeg_tree="`cd ${with_ffmpeg_tree} 2>/dev/null && pwd`"
+ if test -z "${real_ffmpeg_tree}"; then
+ dnl The given directory can't be found
+ AC_MSG_RESULT(no)
+ AC_MSG_ERROR([cannot cd to ${with_ffmpeg_tree}])
+ fi
+ if ! test -f "${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a"; then
+ dnl The given libavcodecaltivec wasn't built
+ AC_MSG_RESULT(no)
+ AC_MSG_ERROR([cannot find ${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a, make sure you compiled libavcodecaltivec in ${with_ffmpeg_tree}])
+ fi
+ if ! fgrep -s "pp_get_context" "${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a"; then
+ dnl The given libavcodecaltivec wasn't built with --enable-pp
+ AC_MSG_RESULT(no)
+ AC_MSG_ERROR([${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a was not compiled with postprocessing support, make sure you configured ffmpeg with --enable-pp])
+ fi
+ dnl Use a custom libffmpeg
+ AC_MSG_RESULT(${real_ffmpeg_tree}/libavcodec/libavcodecaltivec.a)
+ VLC_ADD_BUILTINS([ffmpegaltivec])
+ VLC_ADD_LDFLAGS([ffmpegaltivec],[-L${real_ffmpeg_tree}/libavcodec -lavcodecaltivec])
+ VLC_ADD_CPPFLAGS([ffmpeg],[-DNO_ALTIVEC_IN_FFMPEG])
+ VLC_ADD_CPPFLAGS([ffmpegaltivec],[-I${real_ffmpeg_tree}/libavcodec -I${real_ffmpeg_tree}/libavformat])
+
+ if test -f "${real_ffmpeg_tree}/libavformat/libavformat.a"; then
+ AC_DEFINE(HAVE_LIBAVFORMAT, 1, [Define if you have ffmpeg's libavformat.])
+ VLC_ADD_LDFLAGS([ffmpegaltivec],[-L${real_ffmpeg_tree}/libavformat -lavformataltivec -lz])
+ VLC_ADD_CPPFLAGS([ffmpegaltivec],[-I${real_ffmpeg_tree}/libavformat])
fi
fi
fi
dnl MP4 module
dnl
AC_CHECK_HEADERS(zlib.h, [
- VLC_ADD_LDFLAGS([mp4 skins skins2 sap],[-lz])
+ VLC_ADD_LDFLAGS([mp4 skins2 sap],[-lz])
] )
AC_CHECK_HEADERS(sysfs/libsysfs.h, [
] )
dnl
-dnl skins module
+dnl skins2 module
dnl
AC_CHECK_HEADERS(libtar.h, [
- VLC_ADD_LDFLAGS([skins skins2],[-ltar])
+ VLC_ADD_LDFLAGS([skins2],[-ltar])
] )
VLC_ADD_CPPFLAGS([dtstofloat32],[-I${real_dts_tree}/include])
VLC_ADD_LDFLAGS([dtstofloat32],[-L${real_dts_tree}/libdts])
LDFLAGS="${LDFLAGS_save} ${LDFLAGS_dtstofloat32}"
- AC_CHECK_LIB(dts, dts_free, [
- VLC_ADD_BUILTINS([dtstofloat32])
- VLC_ADD_LDFLAGS([dtstofloat32],[-ldts])
+ AC_CHECK_LIB(dts_pic, dts_free, [
+ VLC_ADD_PLUGINS([dtstofloat32])
+ VLC_ADD_LDFLAGS([dtstofloat32],[-ldts_pic])
],[
- if test -f ${real_dts_tree}/libdts/libdts.a
- then
- AC_MSG_ERROR([make sure you have at least libdts-0.0.2])
- else
- AC_MSG_ERROR([the specified tree hasn't been compiled])
- fi
+ AC_CHECK_LIB(dts, dts_free, [
+ VLC_ADD_BUILTINS([dtstofloat32])
+ VLC_ADD_LDFLAGS([dtstofloat32],[-ldts])
+ ],[
+ if test -f ${real_dts_tree}/libdts/libdts.a
+ then
+ AC_MSG_ERROR([make sure you have at least libdts-0.0.2])
+ else
+ AC_MSG_ERROR([the specified tree hasn't been compiled])
+ fi
+ ])
])
LDFLAGS="${LDFLAGS_save}"
else
else
LDFLAGS="${LDFLAGS_save} ${LDFLAGS_dtstofloat32}"
AC_CHECK_HEADERS(dts.h, [
- AC_CHECK_LIB(dts, dts_free, [
+ AC_CHECK_LIB(dts_pic, dts_free, [
VLC_ADD_PLUGINS([dtstofloat32])
- VLC_ADD_LDFLAGS([dtstofloat32],[-ldts])
+ VLC_ADD_LDFLAGS([dtstofloat32],[-ldts_pic])
],[
- if test "${enable_dts}" = "yes"; then
- AC_MSG_ERROR([Could not find libdts on your system: you may get it from http://www.videolan.org/dtsdec.html])
- fi
+ AC_CHECK_LIB(dts, dts_free, [
+ VLC_ADD_BUILTINS([dtstofloat32])
+ VLC_ADD_LDFLAGS([dtstofloat32],[-ldts])
+ ],[
+ if test "${enable_dts}" = "yes"; then
+ AC_MSG_ERROR([Could not find libdts on your system: you may get it from http://www.videolan.org/dtsdec.html])
+ fi
+ ])
])
])
LDFLAGS="${LDFLAGS_save}"
])
fi
+dnl
+dnl H264 encoder plugin (using libx264)
+dnl
+AC_ARG_ENABLE(x264,
+ [ --enable-x264 H264 encoding support with libx264 (default enabled)])
+if test "${enable_x264}" != "no"; then
+ AC_ARG_WITH(x264-tree,
+ [ --with-x264-tree=PATH x264 tree for static linking ],[],[])
+ if test "${with_x264_tree}" != "no" -a -n "${with_x264_tree}"
+ then
+ real_x264_tree="`cd ${with_x264_tree} 2>/dev/null && pwd`"
+ if test -z "${real_x264_tree}"
+ then
+ dnl The given directory can't be found
+ AC_MSG_RESULT(no)
+ AC_MSG_ERROR([${with_x264_tree} directory doesn't exist])
+ fi
+ dnl Use a custom libx264
+ AC_MSG_CHECKING(for x264.h in ${real_x264_tree})
+ if test -f ${real_x264_tree}/x264.h
+ then
+ AC_MSG_RESULT(yes)
+ VLC_ADD_CPPFLAGS([x264],[-I${real_x264_tree}])
+ VLC_ADD_LDFLAGS([x264],[-L${real_x264_tree}])
+ LDFLAGS="${LDFLAGS_save} ${LDFLAGS_x264}"
+ AC_CHECK_LIB(x264, x264_encoder_open, [
+ VLC_ADD_BUILTINS([x264])
+ VLC_ADD_LDFLAGS([x264],[-lx264])
+ ],[
+ AC_MSG_ERROR([the specified tree hasn't been compiled])
+ ])
+ LDFLAGS="${LDFLAGS_save}"
+ else
+ AC_MSG_RESULT(no)
+ AC_MSG_ERROR([the specified tree doesn't have x264.h])
+ fi
+ else
+ LDFLAGS="${LDFLAGS_save} ${LDFLAGS_x264}"
+ AC_CHECK_HEADERS(x264.h, [
+ AC_CHECK_LIB(x264, x264_encoder_open, [
+ VLC_ADD_PLUGINS([x264])
+ VLC_ADD_LDFLAGS([x264],[-lx264])
+ ],[
+ if test "${enable_x264}" = "yes"; then
+ AC_MSG_ERROR([Could not find libx264 on your system: you may get it from http://www.videolan.org/x264.html])
+ fi
+ ])
+ ])
+ LDFLAGS="${LDFLAGS_save}"
+ fi
+fi
+
dnl
dnl subsdec support
dnl
dnl special case for BeOS
if test "${SYS}" = "beos"
then
- VLC_ADD_PLUGINS([beos])
-fi
-
-dnl
-dnl Skins module
-dnl
-AC_ARG_ENABLE(skins,
- [ --enable-skins Skins interface module (default enabled on Win32)])
-if test "${enable_skins}" != "no"; then
- if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then
-
- VLC_ADD_PLUGINS([skins])
- ALIASES="${ALIASES} svlc"
- VLC_ADD_CPPFLAGS([skins],[-U_OFF_T_ -U_off_t -Imodules/gui/skins])
- VLC_ADD_CXXFLAGS([skins],[-O2 -fno-rtti])
- VLC_ADD_LDFLAGS([skins],[-loleaut32 -lwinspool -lwinmm -lshell32 -lctl3d32 -ladvapi32 -lwsock32 -lgdi32 -lcomdlg32 -lole32 -luuid -lcomctl32])
-
- else if test "${enable_skins}" = "yes"; then
- VLC_ADD_PLUGINS([skins])
- ALIASES="${ALIASES} svlc"
- VLC_ADD_CPPFLAGS([skins],[-Imodules/gui/skins -I${x_includes} -I/usr/include/freetype2 -DX11_SKINS])
- VLC_ADD_CXXFLAGS([skins],[-O2 -fno-rtti])
- VLC_ADD_LDFLAGS([skins],[-L${x_libraries} -lImlib2 -lXext -lX11 -lfreetype -lpng -lz ])
- fi fi
+ VLC_ADD_BUILTINS([beos])
fi
dnl
dnl Joystick plugin
dnl
AC_ARG_ENABLE(joystick,
- [ --enable-joystick joystick control (default disabled)])
-if test "${enable_joystick}" = "yes"
-then
- AC_CHECK_HEADER( linux/joystick.h,
- [VLC_ADD_PLUGINS([joystick])]
- )
+ [ --enable-joystick joystick control (default enabled)])
+if test "${enable_joystick}" = "yes"; then
+ AC_CHECK_HEADER(linux/joystick.h, [VLC_ADD_PLUGINS([joystick])])
fi
dnl
modules/gui/macosx/Makefile
modules/gui/qnx/Makefile
modules/gui/qt/Makefile
- modules/gui/skins/Makefile
modules/gui/skins2/Makefile
modules/gui/wxwindows/Makefile
modules/misc/Makefile