]> git.sesse.net Git - vlc/blobdiff - configure.ac
taglib: accept the Xiph comments with more than one embedded art,
[vlc] / configure.ac
index c9041b620afd2906cf364d884f634e35a40fd0a0..3b44eaf60acaea04cad1844d3d418254f33d4d76 100644 (file)
@@ -8,7 +8,7 @@ VERSION_EXTRA="-git"
 
 CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`"
 CODENAME="Goldeneye"
-COPYRIGHT_YEARS="1996-2008"
+COPYRIGHT_YEARS="1996-2009"
 
 AC_PREREQ(2.59c)
 AC_CONFIG_SRCDIR(src/libvlc.c)
@@ -58,7 +58,6 @@ dnl
 AC_PROG_CC_C99
 AC_USE_SYSTEM_EXTENSIONS
 AC_DEFINE([_FORTIFY_SOURCE], 2, [Define to '2' to get glibc warnings.])
-AC_DEFINE([_WIN32_WINNT], 0x0500, [Define to '0x0500' for Windows 2000 APIs.])
 
 AM_PROG_CC_C_O
 AC_PROG_CXX
@@ -302,13 +301,17 @@ case "${host_os}" in
     case "${host_os}" in
       *wince* | *mingwce* | *mingw32ce* | *pe*)
         SYS=mingwce
+        dnl Sadly CeGCC still needs non-wince macros
+        AC_DEFINE([_WIN32_WINNT], 0x0501, [Define to '0x0500' for Windows 2000 APIs.])
         ;;
       *mingw32*)
         SYS=mingw32
+        AC_DEFINE([_WIN32_WINNT], 0x0500, [Define to '0x0500' for Windows 2000 APIs.])
         ;;
       *cygwin*)
         dnl Check if we are using the mno-cygwin mode in which case we are
         dnl actually dealing with a mingw32 compiler.
+        AC_DEFINE([_WIN32_WINNT], 0x0500, [Define to '0x0500' for Windows 2000 APIs.])
         AC_EGREP_CPP(yes,
             [#ifdef WIN32
              yes
@@ -323,12 +326,10 @@ case "${host_os}" in
         VLC_ADD_LDFLAGS([vlc],[-mwindows])
         VLC_ADD_LIBS([activex mozilla],[-lgdi32])
         VLC_ADD_LIBS([cdda vcdx cddax sdl_image],[-lwinmm])
-        VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout access_output_rtmp sap slp http stream_out_standard stream_out_rtp vod_rtsp access_realrtsp rtp telnet rc netsync gnutls growl_udp flac ts audioscrobbler lua remoteosd],[-lws2_32])
+        VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout access_output_rtmp sap slp http stream_out_standard stream_out_rtp stream_out_raop vod_rtsp access_realrtsp rtp telnet rc netsync gnutls growl_udp flac ts audioscrobbler lua remoteosd],[-lws2_32])
     fi
     if test "${SYS}" = "mingwce"; then
         # add ws2 for closesocket, select, recv
-        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 audioscrobbler growl rtp stream_out_rtp remoteosd],[-lws2])
         VLC_ADD_LIBS([libvlc],[-lmmtimer])
    fi
@@ -491,11 +492,12 @@ dnl Check for system libs needed
 need_libc=false
 
 dnl Check for usual libc functions
-AC_CHECK_FUNCS([gettimeofday strtod strtol strtof strtoll strtoull strsep isatty vasprintf asprintf swab sigrelse getpwuid_r memalign posix_memalign if_nametoindex atoll getenv putenv setenv gmtime_r ctime_r localtime_r lrintf daemon scandir fork bsearch lstat strlcpy strdup strndup strnlen atof lldiv posix_fadvise posix_madvise uselocale])
+AC_CHECK_FUNCS([gettimeofday strtod strtol strtof strtoll strtoull strsep isatty vasprintf asprintf swab sigrelse getpwuid_r memalign posix_memalign if_nametoindex atoll getenv putenv setenv gmtime_r ctime_r localtime_r lrintf daemon scandir fork bsearch lstat strlcpy strdup strndup strnlen atof lldiv posix_fadvise posix_madvise uselocale vmsplice])
 AC_CHECK_FUNCS(strcasecmp,,[AC_CHECK_FUNCS(stricmp)])
 AC_CHECK_FUNCS(strncasecmp,,[AC_CHECK_FUNCS(strnicmp)])
 AC_CHECK_FUNCS(strcasestr,,[AC_CHECK_FUNCS(stristr)])
 AC_FUNC_ALLOCA
+AC_CHECK_FUNCS(fcntl)
 
 AH_BOTTOM([#include <vlc_fixups.h>])
 
@@ -530,16 +532,6 @@ AC_CHECK_FUNCS(send,,[
   ])
 ])
 
-AC_CHECK_FUNCS(gethostbyname,,[
-  AC_CHECK_LIB(nsl,gethostbyname,[
-    VLC_ADD_LIBS([cdda cddax libvlc],[-lnsl])
-  ],[
-    AC_CHECK_LIB(bind,gethostbyname,[
-      VLC_ADD_LIBS([access_mms],[-lbind])
-    ])
-  ])
-])
-
 AC_CHECK_HEADERS(zlib.h, [
   VLC_ADD_LIBS([access_http],[-lz])
 ])
@@ -944,7 +936,7 @@ if test "${ac_cv_c_ntohl_sys_param_h}" != "no"; then
 fi
 CFLAGS="${CFLAGS_save}"
 
-RDC_PROG_CC_WFLAGS([all extra sign-compare undef pointer-arith bad-function-cast cast-align write-strings missing-prototypes volatile-register-var])
+RDC_PROG_CC_WFLAGS([all extra sign-compare undef pointer-arith bad-function-cast cast-align write-strings missing-prototypes volatile-register-var error-implicit-function-declaration])
 RDC_PROG_CC_FLAGS_IFELSE([-pipe])
 
 dnl Check for various optimization flags
@@ -1644,8 +1636,10 @@ dnl
 AC_ARG_ENABLE(libproxy,
   [  --enable-libproxy       libproxy support (default auto)])
 AS_IF([test "${enable_libproxy}" != "no"], [
-  AC_CHECK_HEADERS(proxy.h, [
-    VLC_ADD_LIBS([access_http],[-lproxy])
+  PKG_CHECK_MODULES(LIBPROXY, libproxy-1.0, [
+    AC_DEFINE(HAVE_LIBPROXY, 1, [Define if libproxy is available])
+    VLC_ADD_CFLAGS([access_http],[$LIBPROXY_CFLAGS])
+    VLC_ADD_LIBS([access_http],[$LIBPROXY_LIBS])
   ], [
     AS_IF([test "x${enable_libproxy}" != "x"], [
       AC_MSG_ERROR([libproxy could not be found on your system])
@@ -2349,23 +2343,6 @@ then
     VLC_ADD_CPPFLAGS([v4l2],[-I${with_v4l2}/include])
   fi
 
-  if test "${enable_alsa}" != "no"
-  then
-    AC_CHECK_HEADER(alsa/asoundlib.h, AC_CHECK_LIB(asound, main, have_v4l2_alsa="true", have_v4l2_alsa="false"),have_v4l2_alsa="false")
-  fi
-
-  if test "${have_v4l2_alsa}" = "true"
-  then
-    CFLAGS="${CFLAGS_save}"
-    AC_TRY_COMPILE([#define ALSA_PCM_NEW_HW_PARAMS_API
-                    #define ALSA_PCM_NEW_SW_PARAMS_API
-                    #include <alsa/asoundlib.h>],
-       [snd_pcm_hw_params_get_period_time(0,0,0);],
-        AC_DEFINE(HAVE_ALSA_NEW_API, 1, Define if ALSA is at least rc4))
-    VLC_ADD_LDFLAGS([v4l2],[-lasound -lm -ldl])
-    AC_DEFINE(HAVE_ALSA, 1, Define if ALSA is present.)
-  fi
-
   CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_v4l2}"
   AC_CHECK_HEADERS(linux/videodev2.h, [
     VLC_ADD_PLUGIN([v4l2])
@@ -2373,6 +2350,20 @@ then
   CPPFLAGS="${CPPFLAGS_save}"
 fi
 
+dnl
+dnl libv4l2 support for video4linux.
+dnl
+AC_ARG_ENABLE( libv4l2,
+  [  --enable-libv4l2        Libv4l2 Video4Linux2 support (default enabled)])
+if test "${enable_libv4l2}" != "no" -a "${enable_v4l2}" != "no"
+then
+    PKG_CHECK_MODULES( LIBV4L2, libv4l2, [
+      VLC_ADD_LDFLAGS([v4l2],[${LIBV4L2_LIBS}])
+      VLC_ADD_CFLAGS([v4l2],[${LIBV4L2_CFLAGS}])
+      AC_DEFINE(HAVE_LIBV4L2, 1, Define if libv4l is available)],
+      AC_MSG_WARN([LibV4L2 support disabled because libv4l2 development headers were not found])
+    )
+fi
 
 dnl
 dnl  special access module for Hauppauge PVR cards
@@ -2427,6 +2418,8 @@ dnl Need to test libcdio and libvcdinfo for a number of things. Do it now.
 AC_ARG_ENABLE(libcdio,
   [  --enable-libcdio        CD input and control library support (default enabled)])
 
+AC_ARG_ENABLE(vcdinfo,
+  [  --enable-libvcdinfo     VCD information library support (default enabled)])
 
 have_libcdio=no
 have_libvcdinfo=no
@@ -2438,11 +2431,14 @@ then
      [Define if you have libcdio 0.78.2 or greater installed]),
      [AC_MSG_WARN(CD Reading and information library not found)])
 
-  PKG_CHECK_MODULES(VCDINFO, libvcdinfo >= 0.7.22,
-     [have_libvcdinfo=yes
-     AC_DEFINE(HAVE_VCDINFO, 1, 
-     [Define if you have libvcdinfo 0.7.22 or greater installed])],
-     [AC_MSG_WARN(VCD information library not found)])
+  if test "${enable_vcdinfo}" != "no"
+  then
+    PKG_CHECK_MODULES(VCDINFO, libvcdinfo >= 0.7.22,
+       [have_libvcdinfo=yes
+       AC_DEFINE(HAVE_VCDINFO, 1, 
+       [Define if you have libvcdinfo 0.7.22 or greater installed])],
+       [AC_MSG_WARN(VCD information library not found)])
+  fi
 fi
 
 dnl
@@ -2914,8 +2910,8 @@ dnl
 dnl   libid3tag support (FIXME!!! doesn't work with new input)
 dnl
 AC_ARG_ENABLE( id3tag,
-[  --disable-id3tag        id3tag metadata reader plugin (default enabled)])
-AS_IF([test "${enable_id3tag}" != "no"], [
+[  --disable-id3tag        id3tag metadata reader plugin (default disabled)])
+AS_IF([test "${enable_id3tag}" = "yes"], [
   AC_CHECK_HEADERS(id3tag.h, [
     AC_CHECK_HEADERS(zlib.h, [
       VLC_ADD_LIBS([id3tag],[-lid3tag -lz])
@@ -3204,9 +3200,14 @@ AC_CHECK_HEADERS(zlib.h, [
   VLC_ADD_LIBS([mp4 skins2 sap mkv gme],[-lz])
 ] )
 
-AC_CHECK_HEADERS(sysfs/libsysfs.h, [
-  VLC_ADD_LIBS([mp4 mkv],[-lsysfs])
-] )
+AC_ARG_ENABLE(libsysfs,
+  [  --enable-libsysfs       Get user key from firewire connected iPod via libsysfs (default enabled)])
+
+AS_IF([test "${enable_libsysfs}" != "no"],[
+  AC_CHECK_HEADERS(sysfs/libsysfs.h, [
+    VLC_ADD_LIBS([mp4 mkv],[-lsysfs])
+  ] )
+])
 
 dnl
 dnl skins2 module
@@ -3753,7 +3754,7 @@ AS_IF( [test "${enable_libass}" = "yes"], [
         AC_CHECK_HEADERS(fontconfig/fontconfig.h,
           [VLC_ADD_CPPFLAGS([libass],[-DHAVE_FONTCONFIG])
         if test "${SYS}" = "mingw32"; then
-           VLC_ADD_LIBS([libass],[-lfontconfig -lfreetype -liconv  -lxml2])
+           VLC_ADD_LIBS([libass],[-lfontconfig -lfreetype -liconv -lz -lxml2])
         else
            VLC_ADD_LIBS([libass],[-lfontconfig])
         fi
@@ -3823,6 +3824,23 @@ AS_IF([test "${enable_kate}" != "no"], [
 ])
 
 
+dnl
+dnl  tiger decoder plugin
+dnl
+AC_ARG_ENABLE(tiger,
+[  --enable-tiger          Tiger rendering library for Kate streams (default enabled)])
+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]) ],[
+        AS_IF([test "x${enable_tiger}" != "x"], [
+          AC_MSG_ERROR([libtiger does not appear to be installed on your system.])
+        ])
+  ])
+])
+
+
 dnl
 dnl  Video plugins
 dnl
@@ -4357,6 +4375,20 @@ AC_ARG_ENABLE(mga,
       VLC_ADD_PLUGIN([mga])
     fi ])
 
+dnl
+dnl  OMAP Framebuffer module
+dnl
+AC_ARG_ENABLE(omapfb,
+  [  --enable-omapfb         OMAP framebuffer support (default disabled)])
+    if test "${enable_omapfb}" = "yes"
+    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]) ])
+      ])
+    fi
+
 dnl
 dnl  SVGAlib module
 dnl
@@ -4518,6 +4550,8 @@ if test "${enable_wingdi}" != "no"; then
   if test "${SYS}" = "mingwce"; then
     VLC_ADD_PLUGIN([wingdi])
     VLC_ADD_PLUGIN([wingapi])
+    VLC_ADD_LIBS([wingdi],[-laygshell])
+    VLC_ADD_LIBS([wingapi],[-laygshell])
   fi
 fi
 
@@ -4539,26 +4573,11 @@ if test "${enable_oss}" != "no" &&
 then
   AC_CHECK_HEADERS(soundcard.h sys/soundcard.h machine/soundcard.h, [
     VLC_ADD_PLUGIN([oss])
+    VLC_ADD_PLUGIN([access_oss])
     AC_CHECK_LIB(ossaudio,main,VLC_ADD_LIBS([oss],[-lossaudio]))
   ])
 fi
 
-dnl
-dnl  Esound module
-dnl
-AC_ARG_ENABLE(esd,
-  [  --enable-esd            Esound library support (default disabled)],
-  [if test "${enable_esd}" = "yes"
-   then
-     AC_PATH_PROG(ESD_CONFIG, esd-config, no)
-     if test "${ESD_CONFIG}" != "no"
-     then
-       VLC_ADD_PLUGIN([esd])
-       VLC_ADD_CFLAGS([esd],[`${ESD_CONFIG} --cflags`])
-       VLC_ADD_LIBS([esd],[`${ESD_CONFIG} --libs`])
-     fi
-   fi])
-
 dnl
 dnl  Pulseaudio module
 dnl
@@ -4589,23 +4608,6 @@ AC_ARG_ENABLE(portaudio,
      fi
    fi])
 
-dnl
-dnl  aRts module
-dnl  broken? (froze wxWidgets back then)
-dnl
-AC_ARG_ENABLE(arts,
- [  --enable-arts           aRts sound server (default disabled)],
- [if test "${enable_arts}" = "yes"
-  then
-    AC_PATH_PROG(ARTS_CONFIG, artsc-config, no)
-    if test "${ARTS_CONFIG}" != "no"
-    then
-      VLC_ADD_PLUGIN([arts])
-      VLC_ADD_CFLAGS([arts],[`${ARTS_CONFIG} --cflags`])
-      VLC_ADD_LIBS([arts],[`${ARTS_CONFIG} --libs `])
-    fi
-  fi])
-
 dnl
 dnl  ALSA module
 dnl
@@ -4624,6 +4626,8 @@ then
         AC_DEFINE(HAVE_ALSA_NEW_API, 1, Define if ALSA is at least rc4))
     VLC_ADD_PLUGIN([alsa])
     VLC_ADD_LIBS([alsa],[-lasound -lm -ldl])
+    VLC_ADD_PLUGIN([access_alsa])
+    VLC_ADD_LIBS([access_alsa],[-lasound -lm -ldl])
   else
     if test "${enable_alsa}" = "yes"; then
       AC_MSG_ERROR([Could not find ALSA development headers])
@@ -4868,6 +4872,29 @@ then
 fi
 AM_CONDITIONAL(BUILD_PDA, [test "${enable_pda}" = "yes"])
 
+dnl
+dnl Maemo
+dnl
+AC_ARG_ENABLE(maemo,
+  [  --enable-maemo          Internet tablets based on Maemo SDK (default disabled)])
+if test "${enable_maemo}" = "yes"
+then
+  PKG_CHECK_MODULES(HILDON, [hildon-1 hildon-fm-2], [
+    VLC_ADD_CFLAGS([maemo],[${HILDON_CFLAGS}])
+    VLC_ADD_LIBS([maemo],[${HILDON_LIBS}])
+    VLC_ADD_PLUGIN([maemo])
+    VLC_ADD_PLUGIN([swscale_maemo])
+    AC_DEFINE([BUILD_MAEMO], 1, [Define if you're using Maemo interfaces])
+    ALIASES="${ALIASES} mvlc"
+  ], [
+    AS_IF([test "${enable_maemo}" = "yes"],[
+      AC_MSG_ERROR([Hildon libraries not found])
+    ])
+    enable_maemo="no"
+  ])
+fi
+AM_CONDITIONAL(BUILD_MAEMO, [test "${enable_maemo}" = "yes"])
+
 dnl
 dnl QT 4
 dnl
@@ -4876,7 +4903,7 @@ AC_ARG_ENABLE(qt4,
   AS_IF([test "${SYS}" = "darwin"], [enable_qt4=no])
 ])
 AS_IF([test "${enable_qt4}" != "no"], [
-  PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.2.0], [
+  PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.3.0], [
     VLC_ADD_PLUGIN([qt4])
     AC_DEFINE([HAVE_QT4], 1, [Define to 1 if you have QT4 library.])
     ALIASES="${ALIASES} qvlc"
@@ -5277,6 +5304,21 @@ AS_IF([test "${enable_remoteosd}" != "no"], [
 ])
 
 
+dnl
+dnl RAOP plugin
+dnl
+AC_MSG_CHECKING([whether to enable RAOP plugin])
+AS_IF([test "${have_libgcrypt}" = "yes"], [
+  AC_MSG_RESULT(yes)
+  VLC_ADD_PLUGIN([stream_out_raop])
+  VLC_ADD_LIBS([stream_out_raop], [${LIBGCRYPT_LIBS}])
+  VLC_ADD_CFLAGS([stream_out_raop], [${LIBGCRYPT_CFLAGS}])
+], [
+  AC_MSG_RESULT(no)
+  AC_MSG_WARN([libgcrypt support required for RAOP plugin])
+])
+
+
 dnl
 dnl update checking system
 dnl
@@ -5556,8 +5598,8 @@ AM_CONDITIONAL(BUILD_MOZILLA,${mozilla})
 dnl Tests for Osso and Xsp
 AC_CHECK_LIB(osso, osso_display_blanking_pause, [
   PKG_CHECK_MODULES(GLIB2, glib-2.0, [
-    VLC_ADD_CPPFLAGS([x11 xvideo xvmc glx],[-DHAVE_OSSO ${DBUS_CFLAGS} ${GLIB2_CFLAGS}])
-    VLC_ADD_LIBS([x11 xvideo xvmc glx],[-losso])
+    VLC_ADD_CPPFLAGS([x11 xvideo xvmc glx omapfb],[-DHAVE_OSSO ${DBUS_CFLAGS} ${GLIB2_CFLAGS}])
+    VLC_ADD_LIBS([x11 xvideo xvmc glx omapfb],[-losso])
  ])
 ])
 AC_CHECK_LIB(Xsp, XSPSetPixelDoubling,[
@@ -5779,13 +5821,12 @@ AC_CONFIG_FILES([
   modules/access/dvb/Makefile
   modules/access/mms/Makefile
   modules/access/cdda/Makefile
+  modules/access/rtp/Makefile
   modules/access/rtsp/Makefile
   modules/access/rtmp/Makefile
-  modules/access/v4l2/Makefile
   modules/access/vcd/Makefile
   modules/access/vcdx/Makefile
   modules/access/screen/Makefile
-  modules/access_filter/Makefile
   modules/access_output/Makefile
   modules/audio_filter/Makefile
   modules/audio_filter/channel_mixer/Makefile
@@ -5815,6 +5856,7 @@ AC_CONFIG_FILES([
   modules/gui/beos/Makefile
   modules/gui/pda/Makefile
   modules/gui/macosx/Makefile
+  modules/gui/maemo/Makefile
   modules/gui/minimal_macosx/Makefile
   modules/gui/qnx/Makefile
   modules/gui/qt4/Makefile
@@ -5836,6 +5878,7 @@ AC_CONFIG_FILES([
   modules/mux/mpeg/Makefile
   modules/packetizer/Makefile
   modules/services_discovery/Makefile
+  modules/stream_filter/Makefile
   modules/stream_out/Makefile
   modules/stream_out/transrate/Makefile
   modules/video_chroma/Makefile