]> git.sesse.net Git - vlc/blobdiff - configure.ac
Check for avcodec version also in configure
[vlc] / configure.ac
index a5660dd1f1427658ff4f5477fabbdfb5bb31a899..651e174a3b4829628f98192c195a442308f0fb16 100644 (file)
@@ -2,16 +2,16 @@ dnl Autoconf settings for vlc
 
 AC_COPYRIGHT([Copyright 2002-2010 the VideoLAN team])
 
-AC_INIT(vlc, 1.1.0-git)
+AC_INIT(vlc, 1.2.0-git)
 VERSION_MAJOR="1"
-VERSION_MINOR="1"
+VERSION_MINOR="2"
 VERSION_REVISION="0"
 VERSION_EXTRA="-git"
 PKGDIR="vlc"
 AC_SUBST(PKGDIR)
 
 CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`"
-CODENAME="The Luggage"
+CODENAME="Twoflower"
 COPYRIGHT_YEARS="1996-2010"
 
 AC_PREREQ(2.59c)
@@ -108,23 +108,22 @@ dnl  Check for the contrib directory
 dnl
 AC_ARG_WITH(contrib,
     [  --without-contrib       do not use the libraries in CONTRIB_DIR],[],[])
-  AS_IF([test "${with_contrib}" != "no"],[
-    AC_ARG_VAR([CONTRIB_DIR], [directory containing pre-built contrib, overriding extras/contrib])
-    if test -z "$CONTRIB_DIR"
-    then
+AC_ARG_VAR([CONTRIB_DIR], [directory containing pre-built contrib, overriding extras/contrib])
+AS_IF([test "${with_contrib}" != "no"],[
+  AS_IF([test -z "$CONTRIB_DIR"], [
       topdir="`dirname $0`"
       if test "`echo \"$topdir\" | cut -c 1`" != "/"; then
          topdir="`pwd`/$topdir"
       fi
-      CONTRIB_DIR=${topdir}/extras/contrib/hosts/${host}
+      CONTRIB_DIR="${topdir}/extras/contrib/hosts/${host}"
       if ! test -d "$CONTRIB_DIR"
       then
         gccmachine=`$CC -dumpmachine`
-        CONTRIB_DIR=${topdir}/extras/contrib/hosts/${gccmachine}
+        CONTRIB_DIR="${topdir}/extras/contrib/hosts/${gccmachine}"
       fi
-    fi
-    AC_MSG_CHECKING([for libs in ${CONTRIB_DIR}])
-  AS_IF([test -d ${CONTRIB_DIR}/lib],[
+  ])
+  AC_MSG_CHECKING([for libs in ${CONTRIB_DIR}])
+  AS_IF([test -d "${CONTRIB_DIR}/lib"],[
     AC_MSG_RESULT([yes])
     AC_SUBST(CONTRIB_DIR)
     export PATH=${CONTRIB_DIR}/bin:$PATH
@@ -136,31 +135,32 @@ AC_ARG_WITH(contrib,
     CXXFLAGS_save="${CXXFLAGS_save} -I${CONTRIB_DIR}/include"
     OBJCFLAGS="${OBJCFLAGS} -I${CONTRIB_DIR}/include"
     OBJCFLAGS_save="${OBJCFLAGS_save} -I${CONTRIB_DIR}/include"
-    if test $build = $host -o "$PKG_CONFIG_LIBDIR"; then
-        export PKG_CONFIG_PATH=${CONTRIB_DIR}/lib/pkgconfig:$PKG_CONFIG_PATH
+    if test "$build" = "$host" -o "$PKG_CONFIG_LIBDIR"; then
+        export PKG_CONFIG_PATH="${CONTRIB_DIR}/lib/pkgconfig:$PKG_CONFIG_PATH"
     else
-        export PKG_CONFIG_LIBDIR=${CONTRIB_DIR}/lib/pkgconfig
+        export PKG_CONFIG_LIBDIR="${CONTRIB_DIR}/lib/pkgconfig"
     fi
     LDFLAGS="${LDFLAGS} -L${CONTRIB_DIR}/lib"
     LDFLAGS_save="${LDFLAGS_save} -L${CONTRIB_DIR}/lib"
 
-    if test -z $with_mozilla_sdk_path; then
-       with_mozilla_sdk_path=${CONTRIB_DIR}/gecko-sdk
+    if test -z "$with_mozilla_sdk_path"; then
+       with_mozilla_sdk_path="${CONTRIB_DIR}/gecko-sdk"
     fi
-    if test -z $with_cyberlink_tree; then
-       with_cyberlink_tree=${CONTRIB_DIR}/src/clinkcc
+    if test -z "$with_cyberlink_tree"; then
+       with_cyberlink_tree="${CONTRIB_DIR}/src/clinkcc"
     fi
 
     if test "${SYS}" = "darwin"; then
-      export LD_LIBRARY_PATH=${CONTRIB_DIR}/lib:$LD_LIBRARY_PATH
-      export DYLD_LIBRARY_PATH=${CONTRIB_DIR}/lib:$DYLD_LIBRARY_PATH
+      export LD_LIBRARY_PATH="${CONTRIB_DIR}/lib:$LD_LIBRARY_PATH"
+      export DYLD_LIBRARY_PATH="${CONTRIB_DIR}/lib:$DYLD_LIBRARY_PATH"
     elif test "${SYS}" = "beos"; then
-      export LIBRARY_PATH=${CONTRIB_DIR}/lib:$LIBRARY_PATH
-      export BELIBRARIES=${CONTRIB_DIR}/lib:$BELIBRARIES
+      export LIBRARY_PATH="${CONTRIB_DIR}/lib:$LIBRARY_PATH"
+      export BELIBRARIES="${CONTRIB_DIR}/lib:$BELIBRARIES"
     fi
-    ],[
-       AC_MSG_RESULT([no])
-    ])
+  ],[
+    AC_MSG_RESULT([no])
+    CONTRIB_DIR=""
+  ])
 ])
 dnl
 dnl  Set default values
@@ -343,11 +343,13 @@ case "${host_os}" in
         then
           AC_CHECK_TOOL(PEFLAGS, peflags, :)
         fi
+        AC_CHECK_PROGS(U2D, [unix2dos todos], unix2dos)
     fi
     if test "${SYS}" = "mingwce"; then
         # add ws2 for closesocket, select, recv
         VLC_ADD_LIBS([libvlccore access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_rtmp sap oldhttp netsync audioscrobbler growl rtp stream_out_rtp remoteosd ts oldtelnet audiobargraph_a netsync],[-lws2])
         VLC_ADD_LIBS([libvlccore],[-lmmtimer])
+        AC_CHECK_PROGS(U2D, [unix2dos todos], unix2dos)
    fi
     ;;
   *nto*)
@@ -547,8 +549,8 @@ dnl Check for system libs needed
 need_libc=false
 
 dnl Check for usual libc functions
-AC_CHECK_FUNCS([ctime_r daemon fcntl fdopendir fork getenv getpwuid_r gettimeofday isatty lstat memalign posix_fadvise posix_madvise posix_memalign putenv setenv setlocale stricmp strnicmp tdestroy uselocale])
-AC_REPLACE_FUNCS([asprintf atof atoll getcwd 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([ctime_r daemon fcntl fdopendir fork getenv getpwuid_r gettimeofday isatty lstat memalign openat posix_fadvise posix_madvise posix_memalign putenv 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(fdatasync,,
   [AC_DEFINE(fdatasync, fsync, [Alias fdatasync() to fsync() if missing.])
 ])
@@ -748,22 +750,30 @@ if test "${ac_cv_have_plugins}" = "no"; then
 fi
 
 # Only test for dlopen() if the others didn't work
+LIBDL=""
 if test "${ac_cv_have_plugins}" = "no" -o "${SYS}" = "darwin"; then
   AC_CHECK_HEADERS(dlfcn.h sys/dl.h)
   ac_cv_my_have_dlopen=no
-  AC_CHECK_FUNC(dlopen,
-    ac_cv_my_have_dlopen=yes,
-    AC_CHECK_LIB(dl, dlopen,
+  AC_CHECK_FUNC(dlopen, [
+    ac_cv_my_have_dlopen=yes
+  ], [
+    AC_CHECK_LIB(dl, dlopen, [
       ac_cv_my_have_dlopen=yes
-      VLC_ADD_LIBS([libvlccore realvideo lua],[-ldl]),
-      AC_CHECK_LIB(svld, dlopen,
+      LIBDL="-ldl"
+    ], [
+      AC_CHECK_LIB(svld, dlopen, [
         ac_cv_my_have_dlopen=yes
-        VLC_ADD_LIBS([libvlccore],[-lsvld]))))
+        LIBDL="-lsvld"
+      ])
+    ])
+  ])
   if test "${ac_cv_my_have_dlopen}" = "yes"; then
     AC_DEFINE(HAVE_DL_DLOPEN, 1, [Define if you have the dlopen API])
     ac_cv_have_plugins=yes
+    VLC_ADD_LIBS([libvlccore realvideo lua],[$LIBDL])
   fi
 fi
+AC_SUBST(LIBDL)
 
 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
 dnl Check for pthreads - borrowed from XMMS
@@ -970,16 +980,6 @@ CFLAGS="${CFLAGS_save}"
 RDC_PROG_CC_WFLAGS([all extra sign-compare undef pointer-arith bad-function-cast write-strings missing-prototypes volatile-register-var error-implicit-function-declaration])
 RDC_PROG_CC_FLAGS([-pipe])
 
-AC_ARG_ENABLE(warnings-as-error,
-      AS_HELP_STRING([--enable-warnings-as-error],[Treat acceptable warnings as error (default disabled)]),, [enable_warnings_as_error="no"])
-AS_IF([test "${enable_warnings_as_error}" = "yes"], [
-    RDC_PROG_CC_WERRORFLAGS([unused-function unused-label unused-value unused-parameter unused-variable unused \
-     missing-braces nonnull parentheses uninitialized address enum-compare undef comment switch \
-     bad-function-cast implicit sequence-point strict-aliasing array-bounds missing-parameter-type \
-     overflow int-to-pointer-cast pointer-to-int-cast div-by-zero overflow ignored])
-])
-AC_SUBST(CFLAGS_WERROR)
-
 dnl Check for various optimization flags
 AC_CACHE_CHECK([if \$CC accepts -Os],
     [ac_cv_c_os],
@@ -1630,7 +1630,10 @@ then
   else
       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_PATH_PROG(LUAC, luac)
+  AC_ARG_VAR([LUAC], [LUA byte compiler])
+  AC_PATH_PROG(LUAC, luac, [
+    AC_MSG_ERROR([Could not find the LUA byte compiler.])
+  ])
 fi
 AM_CONDITIONAL(BUILD_LUA, [test "${have_lua}" = "yes"])
 
@@ -2576,7 +2579,7 @@ AC_ARG_ENABLE(omxil,
 if test "${enable_omxil}" = "yes"
 then
   VLC_ADD_PLUGIN([omxil])
-  VLC_ADD_LIBS([omxil], [-ldl])
+  VLC_ADD_LIBS([omxil], [$LIBDL])
 fi
 
 dnl
@@ -2664,7 +2667,7 @@ AC_ARG_ENABLE(avcodec,
 [  --enable-avcodec        libavcodec codec (default enabled)])
 if test "${enable_avcodec}" != "no"
 then
-  PKG_CHECK_MODULES(AVCODEC,[libavcodec >= 51.48.0 libavutil],
+  PKG_CHECK_MODULES(AVCODEC,[libavcodec >= 52.2.0 libavutil],
     [
       VLC_SAVE_FLAGS
       CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}"
@@ -3296,6 +3299,9 @@ dnl  Xlib
 dnl
 
 AC_PATH_XTRA()
+AC_CHECK_HEADERS(X11/Xlib.h, [
+  VLC_ADD_LIBS([omapfb],[${X_LIBS} ${X_PRE_LIBS} -lX11])
+])
 
 dnl
 dnl  X C Bindings modules
@@ -3319,7 +3325,6 @@ AS_IF([test "${enable_xcb}" != "no"], [
   PKG_CHECK_MODULES(XCB, [xcb])
   PKG_CHECK_MODULES(XCB_SHM, [xcb-shm])
   VLC_ADD_PLUGIN([screensaver xcb_x11 xcb_screen xcb_apps])
-  VLC_SET_CFLAGS_WERROR([xcb_screen], [-Wno-error=uninitialized]) # some gcc report a warning which doesn't reveal an error
 
   AS_IF([test "${enable_xvideo}" != "no"], [
     PKG_CHECK_MODULES(XCB_XV, [xcb-xv >= 1.1.90.1], [
@@ -3610,8 +3615,6 @@ AC_ARG_ENABLE(omapfb,
     then
       AC_CHECK_HEADERS(asm/arch-omap/omapfb.h, [
         VLC_ADD_PLUGIN([omapfb])
-        AC_CHECK_HEADERS(X11/Xlib.h, [
-          VLC_ADD_LIBS([omapfb],[${X_LIBS} ${X_PRE_LIBS} -lX11]) ])
       ])
       VLC_ADD_PLUGIN([swscale_omap])
     fi
@@ -3667,7 +3670,7 @@ if test "${enable_directfb}" = "yes"; then
         LIBS="${LIBS_save}"
 
         if test "${have_directfb}" = "true"; then
-            LIBS_mydirectfb="${LIBS_new} -lz -ldl -ldirectfb -lfusion -ldirect -lpthread"
+            LIBS_mydirectfb="${LIBS_new} -lz $LIBDL -ldirectfb -lfusion -ldirect -lpthread"
             CPPFLAGS_mydirectfb="${CPPFLAGS_new}"
         fi
     else
@@ -4424,6 +4427,32 @@ AS_IF([test "${ac_cv_c_bigendian}" = "yes"], [
 ])
 AC_SUBST(DEFS_BIGENDIAN)
 
+dnl
+dnl Where to install KDE solid .desktop
+dnl
+AC_ARG_VAR([KDE4_CONFIG], [path to kde4-config utility])
+AS_IF([test "x$KDE4_CONFIG" = "x"], [
+  KDE4_CONFIG="kde4-config"
+])
+
+AC_ARG_WITH(kde-solid,
+  AS_HELP_STRING([--with-kde-solid=PATH],
+                 [KDE Solid actions directory (auto)]),, [
+  with_kde_solid="yes"
+])
+soliddatadir=""
+AS_IF([test "${with_kde_solid}" != "no"], [
+  AS_IF([test "${with_kde_solid}" = "yes"], [
+    kde4datadir="`${KDE4_CONFIG} --install data`"
+    AS_IF([test "x$kde4datadir" = "x"], [kde4datadir='${datadir}/kde4/apps'])
+    soliddatadir="${kde4datadir}/solid/actions"
+  ], [
+    soliddatadir="${with_kde_solid}"
+  ])
+])
+AC_SUBST(soliddatadir)
+AM_CONDITIONAL(KDE_SOLID, [test "x${soliddatadir}" != "x"])
+
 dnl
 dnl  DLL loader copied from MPlayer copied from somewhere else (WINE ?)
 dnl
@@ -4524,29 +4553,34 @@ then
     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"
+    if test -n "$MOZILLA_CFLAGS" -o -n "$MOZILLA_LIBS"
     then
       found=1
     else
       if test -n "$PKG_CONFIG"; then
-       for i in "${with_mozilla_pkg}" libxul {seamonkey,iceape,xulrunner,firefox,iceweasel,mozilla}-plugin; do
-         echo "Trying to find $i.pc files" >&5
-         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=$(eval $PKG_CONFIG --cflags "$i" )
-           MOZILLA_LIBS=$(eval $PKG_CONFIG --libs "$i" )
-           break
-         fi
-       done
+        for i in "${with_mozilla_pkg}" libxul {seamonkey,iceape,xulrunner,firefox,iceweasel,mozilla}-plugin; do
+          if test -n "$i"
+          then
+            echo "Trying to find $i package" >&AS_MESSAGE_LOG_FD
+            AC_MSG_CHECKING([for $i >= 1.9.2])
+            if $PKG_CONFIG --exists --print-errors "$i >= 1.9.2" 2>&AS_MESSAGE_LOG_FD
+            then
+              echo "Using $i pkg-config package." >&AS_MESSAGE_LOG_FD
+              echo "Using $i package." >&AS_MESSAGE_FD
+              found=1
+              MOZILLA_CFLAGS=$(eval $PKG_CONFIG --cflags "$i" )
+              MOZILLA_LIBS=$(eval $PKG_CONFIG --libs "$i" )
+              AC_MSG_RESULT([yes])
+              break
+            fi
+            AC_MSG_RESULT([no])
+          fi
+        done
       fi
     fi
     AS_IF( [test $found = 1],[
         CPPFLAGS="${CPPFLAGS_save} ${MOZILLA_CFLAGS}"
         MOZILLA_REQUIRED_HEADERS=1
-        AC_CHECK_HEADERS([npfunctions.h])
         AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0)
         AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0,
           [#if HAVE_NPAPI_H
@@ -4554,21 +4588,21 @@ then
            #endif
           ])
         if test "${MOZILLA_REQUIRED_HEADERS}" = "0"; then
-            AC_MSG_ERROR([Please install the Firefox development tools; mozilla-config.h, plugin/npapi.h and plugin/npruntime.h were not found.])
+            AC_MSG_ERROR([Please install the Firefox development tools; plugin/npapi.h and/or plugin/npruntime.h were not found.])
         fi
         MOZILLA_REQUIRED_HEADERS=
         mozilla=:
         AS_IF([ test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"],[
-          VLC_ADD_CPPFLAGS([mozilla],[-DXP_UNIX -DOJI])
-          AS_IF([ test "${SYS}" != "darwin"],[
-            PKG_CHECK_MODULES(XPM, [xpm xt],[
-               VLC_ADD_CPPFLAGS([mozilla],[-DMOZ_X11])
-            ],[
-               AC_MSG_ERROR([Please install the libXpm and libXt development files.])
-            ])
+           VLC_ADD_CPPFLAGS([mozilla],[-DXP_UNIX])
+           AS_IF([ test "${SYS}" != "darwin"],[
+             PKG_CHECK_MODULES(XPM, [xpm xt],[
+                VLC_ADD_CPPFLAGS([mozilla],[-DMOZ_X11])
+             ],[
+                AC_MSG_ERROR([Please install the libXpm and libXt development files.])
+             ])
           ])
         ])
-       VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS} ${XPM_CFLAGS}])
+        VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS} ${XPM_CFLAGS}])
         VLC_ADD_LIBS([mozilla],[${MOZILLA_LIBS} ${XPM_LIBS}])
         VLC_ADD_PLUGIN([mozilla])
         PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla"
@@ -4577,9 +4611,9 @@ then
           ],
           [
             AC_PATH_PROGS(MOZILLA_CONFIG,
-           [mozilla-config seamonkey-config xulrunner-config],
+            [mozilla-config seamonkey-config xulrunner-config],
         [no])
-            test "${MOZILLA_CONFIG}" = "no" && AC_MSG_ERROR([Please install the Mozilla development tools. mozilla-config was not found.])
+            test "${MOZILLA_CONFIG}" = "no" && AC_MSG_ERROR([Please install the Mozilla development tools (version 1.9.2 or higher) or use --disable-mozilla.])
           ]
         )
     dnl pkg-config failed but we might have found a mozilla-config
@@ -4699,7 +4733,7 @@ dnl
 dnl  Stuff used by the program
 dnl
 VERSION_MESSAGE="${VERSION} ${CODENAME}"
-COPYRIGHT_MESSAGE="VLC media player - version ${VERSION_MESSAGE} - (c) ${COPYRIGHT_YEARS} the VideoLAN team"
+COPYRIGHT_MESSAGE="Copyright © ${COPYRIGHT_YEARS} the VideoLAN team"
 AC_DEFINE_UNQUOTED(VERSION_MESSAGE, "${VERSION_MESSAGE}", [Simple version string])
 AC_DEFINE_UNQUOTED(COPYRIGHT_MESSAGE, "${COPYRIGHT_MESSAGE}", [Copyright string])
 AC_DEFINE_UNQUOTED(COPYRIGHT_YEARS, "${COPYRIGHT_YEARS}", [The copyright years])