dnl Autoconf settings for vlc
-AC_INIT(vlc, 0.9.0)
-VERSION_MAJOR="0"
-VERSION_MINOR="9"
+AC_INIT(vlc, 1.0.0-git)
+VERSION_MAJOR="1"
+VERSION_MINOR="0"
VERSION_REVISION="0"
-VERSION_EXTRA=""
+VERSION_EXTRA="-git"
CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`"
-CODENAME="Grishenko"
+CODENAME="Goldeneye"
COPYRIGHT_YEARS="1996-2008"
AC_PREREQ(2.59c)
dnl
AC_ARG_WITH(contrib,
[ --without-contrib do not use the libraries in extras/contrib],[],[])
- if test "${with_contrib}" != "no"; then
+ AS_IF([test "${with_contrib}" != "no"],[
AC_MSG_CHECKING([for libs in extras/contrib])
topdir="`dirname $0`"
if test "`echo \"$topdir\" | cut -c 1`" != "/"; then
topdir="`pwd`/$topdir"
fi
- if test "`grep HOST ${topdir}/extras/contrib/config.mak 2>/dev/null|awk '{print $3}'`" != "`$CC -dumpmachine`"; then
+ AS_IF([test -d ${topdir}/extras/contrib/lib],[
+ AS_IF([test "`grep HOST ${topdir}/extras/contrib/config.mak 2>/dev/null|awk '{print $3}'`" != "`$CC -dumpmachine`"],[
if test "${with_contrib}" = "yes"; then
AC_MSG_RESULT([no])
AC_MSG_ERROR([ not using the libs in extras/contrib as it is not the same host])
AC_MSG_RESULT([no])
AC_MSG_WARN([ not using the libs in extras/contrib as it is not the same host])
fi
- else
- if test -d ${topdir}/extras/contrib/lib; then
+ ],[
AC_MSG_RESULT([yes])
export PATH=${topdir}/extras/contrib/bin:$PATH
CPPFLAGS="${CPPFLAGS} -I${topdir}/extras/contrib/include"
export LIBRARY_PATH=${topdir}/extras/contrib/lib:$LIBRARY_PATH
export BELIBRARIES=${topdir}/extras/contrib/lib:$BELIBRARIES
fi
- else
- AC_MSG_RESULT([no])
- fi
- fi
-fi
+ ])
+ ],[
+ AC_MSG_RESULT([no])
+ ])
+])
dnl
dnl Set default values
dnl
AC_ARG_WITH(macosx-sdk,
[ --with-macosx-sdk=DIR compile using the SDK in DIR])
if test "${with_macosx_sdk}" != "" ; then
+ CPP="${CPP} -isysroot ${with_macosx_sdk}"
CC="${CC} -isysroot ${with_macosx_sdk}"
CXX="${CXX} -isysroot ${with_macosx_sdk}"
OBJC="${OBJC} -isysroot ${with_macosx_sdk}"
AC_ARG_WITH(macosx-version-min,
[ --with-macosx-version-min=VERSION compile for MacOSX VERSION and above])
if test "${with_macosx_version_min}" != "" ; then
+ 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}"
[lt_cv_deplibs_check_method=pass_all])
AC_DISABLE_STATIC
-AC_DISABLE_FAST_INSTALL
+dnl AC_DISABLE_FAST_INSTALL
AC_LIBTOOL_DLOPEN
AC_LIBTOOL_WIN32_DLL
m4_undefine([AC_PROG_F77])
if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
AC_TYPE_SIGNAL
AC_CHECK_LIB(m,cos,[
- VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain],[-lm])
+ VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain scene],[-lm])
])
AC_CHECK_LIB(m,pow,[
VLC_ADD_LIBS([avcodec avformat swscale imgresample postproc ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer spatializer param_eq libvlc vorbis freetype mod mpc dmo quicktime realaudio realvideo galaktos opengl],[-lm])
dnl Check for threads library
if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
-AC_CHECK_HEADERS(pthread.h kernel/scheduler.h kernel/OS.h)
+AC_CHECK_HEADERS(pthread.h)
fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"
dnl Find where are the X headers and libraries
dnl
dnl default modules
dnl
-VLC_ADD_PLUGIN([dummy])
-VLC_ADD_PLUGIN([stats])
-VLC_ADD_PLUGIN([logger])
-VLC_ADD_PLUGIN([memcpy])
-dnl Demuxers:
-VLC_ADD_PLUGIN([mpgv])
-VLC_ADD_PLUGIN([mpga])
-VLC_ADD_PLUGIN([m4v])
-VLC_ADD_PLUGIN([m4a])
-VLC_ADD_PLUGIN([h264])
-VLC_ADD_PLUGIN([cdg])
-VLC_ADD_PLUGIN([ps])
-VLC_ADD_PLUGIN([avi])
-VLC_ADD_PLUGIN([asf])
-VLC_ADD_PLUGIN([mp4])
-dnl Text codecs:
-VLC_ADD_PLUGIN([cvdsub])
-VLC_ADD_PLUGIN([svcdsub])
-VLC_ADD_PLUGIN([spudec])
-VLC_ADD_PLUGIN([subsdec])
-VLC_ADD_PLUGIN([subsusf])
-VLC_ADD_PLUGIN([t140])
-VLC_ADD_PLUGIN([dvbsub])
-VLC_ADD_PLUGIN([cc])
-dnl Video codecs:
-VLC_ADD_PLUGIN([cinepak])
-dnl Audio codecs:
-VLC_ADD_PLUGIN([araw])
-VLC_ADD_PLUGIN([adpcm])
-VLC_ADD_PLUGIN([mpeg_audio])
-VLC_ADD_PLUGIN([lpcm])
-VLC_ADD_PLUGIN([a52])
-VLC_ADD_PLUGIN([dts])
-VLC_ADD_PLUGIN([flac])
dnl Video filters:
VLC_ADD_PLUGIN([deinterlace])
VLC_ADD_PLUGIN([invert])
VLC_ADD_PLUGIN([grain])
VLC_ADD_PLUGIN([extract])
VLC_ADD_PLUGIN([sharpen])
-VLC_ADD_PLUGIN([seamcarving])
VLC_ADD_PLUGIN([croppadd])
VLC_ADD_PLUGIN([canvas])
VLC_ADD_PLUGIN([blendbench])
VLC_ADD_PLUGIN([magnify])
VLC_ADD_PLUGIN([puzzle])
VLC_ADD_PLUGIN([colorthres])
-dnl Meta demuxers:
-VLC_ADD_PLUGIN([playlist])
-VLC_ADD_PLUGIN([export])
-VLC_ADD_PLUGIN([nsc])
-VLC_ADD_PLUGIN([xtag])
-dnl Channel mixing audio filters:
-VLC_ADD_PLUGIN([converter_fixed])
-VLC_ADD_PLUGIN([mono])
-VLC_ADD_PLUGIN([trivial_channel_mixer])
-dnl Resampling audio filters:
-VLC_ADD_PLUGIN([trivial_resampler])
-VLC_ADD_PLUGIN([ugly_resampler])
-dnl Audio mixers:
-VLC_ADD_PLUGIN([trivial_mixer])
-dnl Video chromas:
-VLC_ADD_PLUGIN([i420_rgb])
-VLC_ADD_PLUGIN([grey_yuv])
-dnl Video codecs:
-VLC_ADD_PLUGIN([rawvideo])
-dnl Access filters:
-VLC_ADD_PLUGIN([access_filter_timeshift])
-VLC_ADD_PLUGIN([access_filter_record])
-VLC_ADD_PLUGIN([access_filter_dump])
-VLC_ADD_PLUGIN([access_filter_bandwidth])
+VLC_ADD_PLUGIN([scene])
+VLC_ADD_PLUGIN([yuv])
ALIASES="${ALIASES} cvlc"
])
])
other_libs="-lgroupsock -lBasicUsageEnvironment -lUsageEnvironment"
+ other_libs_pic="-lgroupsock_pic -lBasicUsageEnvironment_pic -lUsageEnvironment_pic"
if test "${SYS}" = "mingw32"; then
# add ws2_32 for closesocket, select, recv
other_libs="$other_libs -lws2_32"
fi
+ dnl We need to check for pic because live555 don't provide shared libs
+ dnl and we want to build a plugins so we need -fPIC on some arch.
AC_CHECK_HEADERS(liveMedia.hh, [
VLC_ADD_CXXFLAGS([live555], [${CPPFLAGS_live555}])
+ AC_CHECK_LIB(liveMedia_pic, main, [
+ VLC_ADD_PLUGIN([live555])
+ VLC_ADD_LIBS([live555], [-lliveMedia_pic ${other_libs_pic}])
+ ],[
AC_CHECK_LIB(liveMedia, main, [
VLC_ADD_PLUGIN([live555])
VLC_ADD_LIBS([live555], [-lliveMedia ${other_libs}])
- ],[],[${other_libs}])
+ ],[],[${other_libs}]) ],[${other_libs_pic}])
])
CPPFLAGS="${CPPFLAGS_save}"
AC_LANG_POP(C++)
if test "${enable_mkv}" != "no" -a "${CXX}" != ""; then
AC_LANG_PUSH(C++)
AC_CHECK_HEADERS(ebml/EbmlVersion.h, [
- AC_MSG_CHECKING(for libebml version >= 0.7.6)
+ AC_MSG_CHECKING(for libebml version >= 0.7.7)
AC_EGREP_CPP(yes,
[#include <ebml/EbmlVersion.h>
#ifdef LIBEBML_VERSION
#endif],
[AC_MSG_RESULT([yes])
AC_CHECK_HEADERS(matroska/KaxVersion.h, [
- AC_MSG_CHECKING(for libmatroska version >= 0.7.7)
+ AC_MSG_CHECKING(for libmatroska version >= 0.8.0)
AC_EGREP_CPP(yes,
[#include <matroska/KaxVersion.h>
#ifdef LIBMATROSKA_VERSION
ORIGCFLAGS=$CFLAGS
CFLAGS="$CFLAGS -x objective-c"
- AC_TRY_COMPILE([#import <QuartzCore/CALayer.h>],
+ AC_TRY_COMPILE([#import <QuartzCore/CALayer.h>],,
[VLC_ADD_PLUGIN([opengllayer])
- VLC_ADD_OBJCFLAGS([opengllayer], [-isysroot /Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5])])
+ VLC_ADD_OBJCFLAGS([opengllayer])],[])
CFLAGS=$ORIGCFLAGS
fi
dnl
AC_ARG_ENABLE(bonjour,
[ --enable-bonjour Bonjour services discovery (default enabled)])
-if test "${enable_bonjour}" != "no"
-then
- PKG_CHECK_MODULES(BONJOUR, avahi-client >= 0.3,
- [PKG_CHECK_MODULES(BONJOUR, avahi-client >= 0.6,
- [AC_DEFINE(HAVE_AVAHI_06, 1, [Define if you have avahi-client 0.6 or greater])],)
- AC_DEFINE(HAVE_AVAHI_CLIENT, 1, [Define if you have the avahi-client library])
- VLC_ADD_LIBS([bonjour access_output_http],[$BONJOUR_LIBS])
- VLC_ADD_CFLAGS([bonjour access_output_http],[$BONJOUR_CFLAGS])
- VLC_ADD_PLUGIN([bonjour]) ],
- [AC_MSG_WARN(avahi-client library not found)])
-fi
+AS_IF([test "${enable_bonjour}" != "no"], [
+ PKG_CHECK_MODULES(BONJOUR, avahi-client >= 0.6, [
+ AC_DEFINE(HAVE_AVAHI_CLIENT, 1, [Define to 1 if you have libavahi-client])
+ VLC_ADD_LIBS([bonjour access_output_http],[$BONJOUR_LIBS])
+ VLC_ADD_CFLAGS([bonjour access_output_http],[$BONJOUR_CFLAGS])
+ VLC_ADD_PLUGIN([bonjour])
+ ], [
+ AC_MSG_WARN(avahi-client library not found)
+ ])
+])
dnl
dnl Lirc plugin
AC_LANG_PUSH(C++)
if test "${enable_mozilla}" = "yes"
then
- dnl currently vlc plugin only needs headers, no xpcom support apis are actually used
- need_xpcom_libs=false
-
- if test "${with_mozilla_sdk_path}" = "" -o "${with_mozilla_sdk_path}" = "no"
- then
- dnl New firefox-1.5 SDK api
- PKG_CHECK_MODULES([FIREFOX], [firefox-plugin],
- [
- PKG_CHECK_MODULES([FIREFOX_XPCOM], [firefox-xpcom],
- [],
- [
- PKG_CHECK_MODULES([MOZILLA_NSPR], [mozilla-nspr],
- [],
- [
- PKG_CHECK_MODULES([NSPR], [nspr],
- [],
- [
- AC_MSG_ERROR([Please install the nspr development tools.])
- ]
- )
- ]
- )
- ])
- CPPFLAGS="${CPPFLAGS_save} ${FIREFOX_CFLAGS} ${FIREFOX_XPCOM_CFLAGS} ${MOZILLA_NSPR_CFLAGS} ${NSPR_CFLAGS} ${MOZILLA_CPPFLAGS}"
+ AS_IF([test "${with_mozilla_sdk_path}" = "" -o "${with_mozilla_sdk_path}" = "no"],
+ [
+ dnl pkg-config
+ dnl As we want to do a loop due to the number of name possible for the .pc
+ dnl we can't use the pkg-config macros.
+
+ AC_ARG_VAR([MOZILLA_CFLAGS], [C compiler flags for Mozilla, overriding pkg-config])
+ AC_ARG_VAR([MOZILLA_LIBS], [linker flags for Mozilla, overriding pkg-config])
+ AC_MSG_NOTICE([Checking for Mozilla])
+ found=0
+ if test -n "$MOZILLA_CFLAGS" -a -n "$MOZILLA_LIBS"
+ then
+ found=1
+ else
+ if test -n "$PKG_CONFIG"; then
+ for i in seamonkey iceape xulrunner firefox iceweasel mozilla; do
+ echo "Trying to find $i .pc files" >&5
+ i="${i}-xpcom ${i}-plugin"
+ if $PKG_CONFIG --exists --print-errors "$i" 2>&5
+ then
+ echo "Using $i .pc files." >&5
+ echo "Using $i .pc files." >&6
+ found=1
+ MOZILLA_CFLAGS=$( $PKG_CONFIG --cflags "$i" )
+ MOZILLA_LIBS=$( $PKG_CONFIG --libs "$i" )
+ break
+ fi
+ done
+ fi
+ fi
+ AS_IF( [test $found = 1],[
+ CPPFLAGS="${CPPFLAGS_save} ${MOZILLA_CFLAGS}"
MOZILLA_REQUIRED_HEADERS=1
AC_CHECK_HEADERS(mozilla-config.h,,MOZILLA_REQUIRED_HEADERS=0)
AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0)
fi
MOZILLA_REQUIRED_HEADERS=
mozilla=:
- firefox_include=`pkg-config --variable=includedir firefox-plugin`
- if test -f "${firefox_include}/mozilla-config.h" -a -f "${firefox_include}/mozilla-config32.h"; then
- MOZILLA_CONFIG_H="${firefox_include}/mozilla-config32.h"
- elif test -f "${firefox_include}/mozilla-config.h" -a -f "${firefox_include}/mozilla-config64.h"; then
- MOZILLA_CONFIG_H="${firefox_include}/mozilla-config64.h"
- else
- MOZILLA_CONFIG_H="${firefox_include}/mozilla-config.h"
- fi
- if grep '^#define MOZ_X11 1' ${MOZILLA_CONFIG_H} 2>&1 > /dev/null ; then
- AC_CHECK_HEADERS(X11/xpm.h,,AC_MSG_ERROR([Please install libXpm-devel library for required X11/xpm.h]))
+ AC_EGREP_CPP(yes,
+ [#include <mozilla-config.h>
+ #ifdef MOZ_X11
+ yes
+ #endif],
+ [AC_CHECK_HEADERS(X11/xpm.h,,AC_MSG_ERROR([Please install libXpm-devel library for required X11/xpm.h]))
VLC_ADD_LIBS([mozilla], [${X_LIBS} ${X_PRE_LIBS} -lX11 -lXt -lXpm])
- fi
+ ])
VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS}])
- VLC_ADD_LDFLAGS([mozilla],[${MOZILLA_LDFLAGS}])
- VLC_ADD_LIBS([mozilla],[${FIREFOX_LIBS} ${MOZILLA_NSPR_LIBS} ${NSPR_LIBS}])
+ VLC_ADD_LIBS([mozilla],[${MOZILLA_LIBS}])
VLC_ADD_PLUGIN([mozilla])
+ PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla"
MOZILLA_CONFIG=
CPPFLAGS="${CPPFLAGS_save}"
- ],
- [
- PKG_CHECK_MODULES([XULRUNNER], [libxul],
- [
- PKG_CHECK_MODULES([FIREFOX_XPCOM], [firefox-xpcom],
- [],
- [
- PKG_CHECK_MODULES([MOZILLA_NSPR], [mozilla-nspr],
- [],
- [
- PKG_CHECK_MODULES([NSPR], [nspr],
- [],
- [
- AC_MSG_ERROR([Please install the nspr development tools.])
- ]
- )
- ]
- )
- ]
- )
- CPPFLAGS="${CPPFLAGS_save} ${XULRUNNER_CFLAGS} ${XULRUNNER_CPPFLAGS} ${FIREFOX_XPCOM_CFLAGS} ${MOZILLA_NSPR_CFLAGS} ${NSPR_CFLAGS} ${MOZILLA_CPPFLAGS}"
- MOZILLA_REQUIRED_HEADERS=1
- AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0)
- AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0,
- [#if HAVE_NPAPI_H
- # include <npapi.h>
- #endif
- ])
- if test "${MOZILLA_REQUIRED_HEADERS}" = "0"; then
- AC_MSG_ERROR([Please install the Mozilla runtime package xulrunner-devel; plugplugin/npapi.h and plugin/npruntime.h were not found.])
- fi
- MOZILLA_REQUIRED_HEADERS=
- mozilla=:
- AC_DEFINE([XP_UNIX],[1],[Defined for Mozilla as we are Unix])
- AC_DEFINE([MOZ_X11],[1],[Defined as Unix mozilla uses X11])
- AC_DEFINE([OJI],[1],[Java Runtime Interface])
- AC_CHECK_HEADERS(X11/xpm.h,,AC_MSG_ERROR([Please install libXpm-devel library for required X11/xpm.h]))
- VLC_ADD_LIBS([mozilla], [${X_LIBS} ${X_PRE_LIBS} -lX11 -lXt -lXpm])
- VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS}])
- VLC_ADD_LDFLAGS([mozilla],[${MOZILLA_LDFLAGS}])
- VLC_ADD_LIBS([mozilla],[${FIREFOX_LIBS} ${MOZILLA_NSPR_LIBS} ${NSPR_LIBS}])
- VLC_ADD_PLUGIN([mozilla])
- MOZILLA_CONFIG=
- CPPFLAGS="${CPPFLAGS_save}"
],
[
- AC_PATH_PROG(MOZILLA_CONFIG, mozilla-config, no)
- if test "${MOZILLA_CONFIG}" = "no"
- then
- AC_PATH_PROG(SEAMONKEY_CONFIG, seamonkey-config, no)
- if test "${SEAMONKEY_CONFIG}" = "no"
- then
- AC_PATH_PROG(XULRUNNER_CONFIG, xulrunner-config, no)
- if test "${XULRUNNER_CONFIG}" = "no"
- then
- AC_MSG_ERROR([Please install the Mozilla development tools, mozilla-config was not found.])
- else
- have_xul=true
- MOZILLA_CONFIG="${XULRUNNER_CONFIG}"
- fi
- else
- MOZILLA_CONFIG="${SEAMONKEY_CONFIG}"
- fi
- fi
+ AC_PATH_PROGS(MOZILLA_CONFIG,
+ [mozilla-config seamonkey-config xulrunner-config],
+ AC_MSG_ERROR([Please install the Mozilla development tools. mozilla-config was not found.])
+ )
]
)
- ]
- )
- if test ! -z "${MOZILLA_CONFIG}"
- then
+ dnl pkg-config failed but we might have found a mozilla-config
+ AS_IF( [test ! -z "${MOZILLA_CONFIG}"],[
if ${MOZILLA_CONFIG} --defines | grep -q 'MOZ_X11=1'; then
LDFLAGS="${LDFLAGS_save} ${X_LIBS} ${X_PRE_LIBS}"
AC_CHECK_LIB(Xt,XtStrings,
mozilla=:
PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla"
- dnl Workaround for http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=150490
- VLC_ADD_CPPFLAGS([mozilla],[[`${MOZILLA_CONFIG} --cflags plugin xpcom java | sed 's,-I\([^ ]*\)/mozilla/\([^ ]*\),-I\1/\2 -I\1/mozilla/\2,g' | xargs`]])
- if ${need_xpcom_libs}; then
- VLC_ADD_LIBS([mozilla],[`${MOZILLA_CONFIG} --libs plugin xpcom`])
- else
- VLC_ADD_LIBS([mozilla],[`${MOZILLA_CONFIG} --libs plugin`])
- fi
+ VLC_ADD_CPPFLAGS([mozilla],[[`${MOZILLA_CONFIG} --cflags plugin java`]])
+ VLC_ADD_LIBS([mozilla],[`${MOZILLA_CONFIG} --libs plugin`])
CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mozilla}"
MOZILLA_REQUIRED_HEADERS=1
AC_CHECK_HEADERS(mozilla-config.h,,MOZILLA_REQUIRED_HEADERS=0)
MOZILLA_REQUIRED_HEADERS=
CPPFLAGS="${CPPFLAGS_save}"
MOZILLA_SDK_PATH="`${MOZILLA_CONFIG} --prefix`"
- fi
+ ])
dnl End of moz_sdk = ""
- else
+ ],[
dnl special case for mingw32
if test "${SYS}" = "mingw32"
then
real_mozilla_sdk="`${CYGPATH} -w ${real_mozilla_sdk}`"
fi
CPPFLAGS="${CPPFLAGS_save}"
- fi
+ ])
fi
AC_LANG_POP(C++)
AM_CONDITIONAL(BUILD_MOZILLA,${mozilla})
share/vlc_win32_rc.rc
share/libvlc_win32_rc.rc
src/Makefile
+ src/test/Makefile
+ bin/Makefile
test/Makefile
])