]> git.sesse.net Git - vlc/blobdiff - configure.ac
Cristian Maglie added as contributor
[vlc] / configure.ac
index baee10fcb87f9bfe1843d6cd35918ba6072e6b1c..f53dd11d2cfa3c4edcc9748197633f7ae150f9c4 100644 (file)
@@ -10,7 +10,7 @@ CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`"
 CODENAME="Grishenko"
 COPYRIGHT_YEARS="1996-2008"
 
-AC_PREREQ(2.59) dnl this really should be 2.59c
+AC_PREREQ(2.59c)
 AC_CONFIG_SRCDIR(src/libvlc.c)
 AC_CONFIG_AUX_DIR(autotools)
 AC_CANONICAL_BUILD
@@ -305,6 +305,7 @@ case "${host_os}" in
         VLC_ADD_CPPFLAGS([libvlc vlc],[-Dmain(a,b)=maince(a,b)])
         VLC_ADD_LDFLAGS([libvlc vlc],[-e WinMainCRTStartup])
         VLC_ADD_LIBS([libvlc access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp sap http netsync],[-lws2])
+        VLC_ADD_LIBS([libvlc],[-lmmtimer])
    fi
     ;;
   *nto*)
@@ -392,7 +393,7 @@ lt_cv_deplibs_check_method=pass_all
 dnl
 dnl Gettext stuff
 dnl
-AM_GNU_GETTEXT_VERSION(0.17)
+AM_GNU_GETTEXT_VERSION([0.17])
 AM_GNU_GETTEXT([external])
 VLC_ADD_LIBS([libvlc vlc], [${LTLIBINTL}])
 
@@ -1204,7 +1205,7 @@ VLC_ADD_PLUGINS([converter_fixed mono])
 VLC_ADD_PLUGINS([trivial_resampler ugly_resampler])
 VLC_ADD_PLUGINS([trivial_channel_mixer trivial_mixer])
 VLC_ADD_PLUGINS([playlist export nsc xtag])
-VLC_ADD_PLUGINS([i420_rgb grey_yuv rawvideo blend scale image logo magnify puzzle colorthres])
+VLC_ADD_PLUGINS([i420_rgb grey_yuv rawvideo blend scale image vmem logo magnify puzzle colorthres])
 VLC_ADD_PLUGINS([wav araw subtitle vobsub adpcm a52sys dtssys au ty voc xa nuv smf])
 VLC_ADD_PLUGINS([access_directory access_file access_udp access_tcp])
 VLC_ADD_PLUGINS([access_http access_mms access_ftp access_rtmp])
@@ -3022,11 +3023,28 @@ dnl Those options have to be here because the .pc can be bogus for ffmpeg previo
    PKG_CONFIG_LIBDIR_save="$PKG_CONFIG_LIBDIR"
    export PKG_CONFIG_PATH=""
    export PKG_CONFIG_LIBDIR="${real_ffmpeg_tree}"
+   VLC_SAVE_FLAGS
 
-   PKG_CHECK_MODULES( [FFMPEG],[libavcodec libavformat libpostproc], [
+   PKG_CHECK_MODULES( [FFMPEG],[libavformat libavcodec libpostproc], [
         VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher], ${FFMPEG_CFLAGS})
         VLC_ADD_LIBS([ffmpeg stream_out_switcher], ${FFMPEG_LIBS})]
-      ,[])
+        AC_DEFINE(HAVE_LIBAVFORMAT_TREE, 1, [Define if you have ffmpeg's libavformat.])
+      )
+   AS_IF([ test -f "${real_ffmpeg_tree}/libswscale/libswscale.a"],[
+     AC_DEFINE(HAVE_LIBSWSCALE_TREE, 1, [Define if you have ffmpeg's libswscale.])
+     PKG_CHECK_MODULES( [SWSCALE],[libswscale], [
+     VLC_ADD_LIBS([ffmpeg],[${SWSCALE_LIBS}])
+     VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[${SWSCALE_CFLAGS}])])
+     ])
+   CPPFLAGS="${CPPFLAGS} ${FFMPEG_CFLAGS} ${SWSCALE_CFLAGS}"
+   CFLAGS="${CFLAGS} ${FFMPEG_CFLAGS} ${SWSCALE_CFLAGS}"
+   
+   AC_CHECK_HEADERS(ffmpeg/avcodec.h libavcodec/avcodec.h)
+   AC_CHECK_HEADERS(ffmpeg/avformat.h libavformat/avformat.h)
+   AC_CHECK_HEADERS(ffmpeg/avutil.h libavutil/avutil.h)
+   AC_CHECK_HEADERS([ffmpeg/swscale.h libswscale/swscale.h])
+
+   VLC_RESTORE_FLAGS
    AS_IF([test -n "${PKG_CONFIG_PATH_save}"],[
          export PKG_CONFIG_PATH="${PKG_CONFIG_PATH_save}"
    ],[
@@ -3043,17 +3061,7 @@ dnl Those options have to be here because the .pc can be bogus for ffmpeg previo
      VLC_ADD_BUILTINS([stream_out_switcher])
    fi
 
-   if test -f "${real_ffmpeg_tree}/libswscale/libswscale.a"; then
-     AC_DEFINE(HAVE_LIBSWSCALE_TREE, 1, [Define if you have ffmpeg's libswscale.])
-     VLC_ADD_LIBS([ffmpeg],[-L${real_ffmpeg_tree}/libswscale ${real_ffmpeg_tree}/libswscale/libswscale.a])
-     VLC_ADD_CPPFLAGS([ffmpeg stream_out_switcher],[-I${real_ffmpeg_tree}/libswscale])
-   fi
 
-    if test -f "${real_ffmpeg_tree}/libavformat/libavformat.a"; then
-      AC_DEFINE(HAVE_LIBAVFORMAT_TREE, 1, [Define if you have ffmpeg's libavformat.])
-      VLC_ADD_LIBS([ffmpeg],[-L${real_ffmpeg_tree}/libavformat -lavformat -lz])
-      VLC_ADD_CPPFLAGS([ffmpeg],[-I${real_ffmpeg_tree}/libavformat])
-    fi
 else
 
 
@@ -3806,7 +3814,7 @@ dnl
 AC_ARG_ENABLE(zvbi,
   [  --enable-zvbi           VBI (inc. Teletext) decoding support with libzvbi (default enabled)])
 AC_ARG_ENABLE(telx,
-  [  --enable-telx,          Teletext decoding module (conflicting with zvbi) (default disabled)])
+  [  --enable-telx           Teletext decoding module (conflicting with zvbi) (default disabled)])
 
 AS_IF( [test "${enable_zvbi}" != "no"],[
   AS_IF( [test "${enable_telx}" = "yes"],[
@@ -4041,12 +4049,14 @@ dnl
       VLC_ADD_LIBS([xvideo],[-lXxf86vm_pic])
       VLC_ADD_LIBS([x11],[-lXxf86vm_pic])
       VLC_ADD_LIBS([glx],[-lXxf86vm_pic])
+      VLC_ADD_LIBS([xvmc],[-lXxf86vm_pic])
       ac_cv_have_xf86vidmode="yes"
     ],[
       AC_CHECK_LIB(Xxf86vm, XF86VidModeGetViewPort,[
         VLC_ADD_LIBS([xvideo],[-lXxf86vm])
         VLC_ADD_LIBS([x11],[-lXxf86vm])
         VLC_ADD_LIBS([glx],[-lXxf86vm])
+        VLC_ADD_LIBS([xvmc],[-lXxf86vm])
         ac_cv_have_xf86vidmode="yes"
       ])
     ])
@@ -5212,17 +5222,21 @@ AM_CONDITIONAL(ENABLE_QT4, test "$enableqt4" = "true")
 dnl
 dnl  WinCE GUI module
 dnl
-if test "${SYS}" = "mingwce"; then
-  VLC_ADD_BUILTINS([wince])
-  VLC_ADD_CXXFLAGS([wince],[])
-  VLC_ADD_LIBS([wince],[-lcommctrl -lcommdlg -laygshell])
-  dnl Gross hack
-  VLC_ADD_LIBS([wince],[\\\${top_builddir}modules/gui/wince/wince_rc.o])
-elif test "${SYS}" = "mingw32"; then
-  VLC_ADD_CXXFLAGS([wince],[])
-  VLC_ADD_LIBS([wince],[-lcomctl32 -lcomdlg32 -lgdi32 -lole32])
-  dnl Gross hack
-  VLC_ADD_LIBS([wince],[\\\${top_builddir}modules/gui/wince/wince_rc.o])
+AC_ARG_ENABLE(wince,
+  [  --enable-wince          Windows CE interface (default enabled with MinGW)])
+if test "${enable_wince}" != "no"; then
+  if test "${SYS}" = "mingwce"; then
+    VLC_ADD_BUILTINS([wince])
+    VLC_ADD_CXXFLAGS([wince],[])
+    VLC_ADD_LIBS([wince],[-lcommctrl -lcommdlg -laygshell])
+    dnl Gross hack
+    VLC_ADD_LIBS([wince],[\\\${top_builddir}modules/gui/wince/wince_rc.o])
+  elif test "${SYS}" = "mingw32"; then
+    VLC_ADD_CXXFLAGS([wince],[])
+    VLC_ADD_LIBS([wince],[-lcomctl32 -lcomdlg32 -lgdi32 -lole32])
+    dnl Gross hack
+    VLC_ADD_LIBS([wince],[\\\${top_builddir}modules/gui/wince/wince_rc.o])
+  fi
 fi
 
 dnl
@@ -5383,11 +5397,26 @@ AC_ARG_ENABLE(ncurses,
         VLC_ADD_LIBS([ncurses],[-lncursesw])
         ALIASES="${ALIASES} nvlc"
         AC_DEFINE([HAVE_NCURSESW], 1, [Define to 1 if you have libncursesw.])
+        AC_CHECK_LIB(ncursesw, tgetent, [],
+          AC_CHECK_LIB(tinfow, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfow])],
+            [AC_CHECK_LIB(tinfo, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfo])],
+              [AS_IF([test "x${enable_ncurses}" != "x"],
+                [AC_MSG_ERROR([tgetent not found in ncursesw tinfow tinfo]
+               )])])
+            ]
+          )
+        )
         ],
         [AC_CHECK_LIB( ncurses, mvprintw,
           [VLC_ADD_PLUGINS([ncurses])
           ALIASES="${ALIASES} nvlc"
-          VLC_ADD_LIBS([ncurses],[-lncurses])],
+          VLC_ADD_LIBS([ncurses],[-lncurses])
+          AC_CHECK_LIB(ncurses, tgetent, [],
+            [AC_CHECK_LIB(tinfo, tgetent, [VLC_ADD_LIBS([ncurses],[-ltinfo])],
+              [AS_IF([test "x${enable_ncurses}" != "x"],
+                [AC_MSG_ERROR([tgetent not found in ncurses tinfo])])]
+            )]
+          )],
           [AS_IF([test "x${enable_ncurses}" != "x"], [
             AC_MSG_ERROR([libncurses not found])])]
         )]
@@ -5712,6 +5741,15 @@ AS_IF([test "${enable_loader}" = "yes"],
     VLC_ADD_LIBS([realaudio],[../../libs/loader/libloader.la])
   ])
 
+AC_ARG_WITH(,[Components:])
+
+dnl
+dnl  the VLC binary
+dnl
+AC_ARG_ENABLE(vlc,
+  [  --enable-vlc            build the VLC media player (default enabled)])
+AM_CONDITIONAL(BUILD_VLC, [test "${enable_vlc}" != "no"])
+
 dnl
 dnl  Microsoft ActiveX support
 dnl
@@ -5964,10 +6002,17 @@ dnl  Mediacontrol Python bindings
 dnl
 AC_ARG_ENABLE(python-bindings,
   [  --enable-python-bindings Enable Python bindings (default disabled)])
-dnl TODO: look for python dev headers
-AS_IF([test "${enable_python_bindings}" = "yes"],
-      PLUGINS_BINDINGS="${PLUGINS_BINDINGS} python"
-     ) 
+
+if test "${enable_python_bindings}" = "yes"; then
+  AC_PATH_PROG(PYTHON_CONFIG, python-config, no)
+  CFLAGS="${CFLAGS_save} `${PYTHON_CONFIG} --cflags`"
+  AC_CHECK_HEADER([Python.h],
+    PLUGINS_BINDINGS="${PLUGINS_BINDINGS} python",
+    AC_MSG_ERROR([You have to install python-dev to build the bindings]),
+    []
+  )
+  CFLAGS="${CFLAGS_save}"
+fi
 
 AM_CONDITIONAL(BUILD_PYTHON, [test "${enable_python_bindings}" = "yes"])
 
@@ -5980,10 +6025,11 @@ if test "${enable_java_bindings}" = "yes"
 then
         echo ""
         echo "****** WARNING **** WARNING ***** WARNING *************"
-        echo "*** To compile the java bindings go to the 
-        echo "*** bindings/java folder and run ant.
-       echo "*** This configuration will continue, so you will be
-       echo "*** able to compile VideoLAN as usual.
+        echo "*** To compile the java bindings go to the "
+        echo "*** bindings/java folder and run mvn install. "
+       echo "*** You need maven2 installed. "
+       echo "*** This configuration will continue, so you will be "
+       echo "*** able to compile VideoLAN as usual. "
         echo "*******************************************************"
         echo ""
 fi
@@ -6283,9 +6329,9 @@ echo exit \$ERROR >>compile
 chmod a+x compile
 
 printf "
-vlc configuration
+libvlc configuration
 --------------------
-vlc version           : ${VERSION}
+version               : ${VERSION}
 system                : ${SYS}
 architecture          : ${ARCH}
 build flavour         : "
@@ -6294,9 +6340,13 @@ test "${enable_cprof}" = "yes" && printf "cprof "
 test "${enable_gprof}" = "yes" && printf "gprof "
 test "${enable_optimizations}" = "yes" && printf "optim "
 test "${enable_release}" = "yes" && printf "release " || printf "devel "
-echo "
-vlc aliases           :${ALIASES}
-plugins/bindings      :${PLUGINS_BINDINGS}
+echo ""
+if test "${enable_vlc}" != "no"; then
+echo "vlc aliases           :${ALIASES}"
+else
+echo "build vlc executable  : no"
+fi
+echo "plugins/bindings      :${PLUGINS_BINDINGS}
 
 You can check which modules have been enabled 
 with \`./vlc-config --list plugin'.