]> git.sesse.net Git - vlc/blobdiff - configure.ac
Enable hurry-up by default to mimic old behaviour of framedropping kick'in in when...
[vlc] / configure.ac
index 4d4181ad6323235c8cb5a586aa060ef2f473be9f..7e1b61097f95412bdae49ce4ea7675e1dfab40e5 100644 (file)
@@ -1045,8 +1045,6 @@ AC_CACHE_CHECK([if \$CC accepts -fomit-frame-pointer],
      AC_TRY_COMPILE([],,ac_cv_c_omit_frame_pointer=yes, ac_cv_c_omit_frame_pointer=no)])
 if test "${ac_cv_c_omit_frame_pointer}" != "no"; then
     CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fomit-frame-pointer"
-    # these plugins do not compile without -fomit-frame-pointer, damn gcc!
-    VLC_ADD_CFLAGS([i420_yuy2_mmx i420_yuy2_sse2],[-fomit-frame-pointer])
 fi
 
 dnl Check for -fvisibility=hidden
@@ -1200,7 +1198,7 @@ VLC_ADD_PLUGINS([deinterlace invert adjust transform wave ripple psychedelic gra
 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 sgimb nsc xtag])
+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([wav araw subtitle vobsub adpcm a52sys dtssys au ty voc xa nuv])
 VLC_ADD_PLUGINS([access_directory access_file access_udp access_tcp])
@@ -1610,9 +1608,9 @@ if test "${enable_shout}" = "yes"; then
     [AC_MSG_WARN(libshout library not found)])
 fi
 
-dnl Lua playlist demux
-AC_ARG_ENABLE(luaplaylist,
-  [  --enable-lua            lua playlist demux plugin (default enabled)])
+dnl Lua modules
+AC_ARG_ENABLE(lua,
+  [  --enable-lua            lua playlist and metafetcher plugins (default enabled)])
 if test "${enable_lua}" != "no"
 then
   PKG_CHECK_MODULES(LUA, lua5.1,
@@ -1641,9 +1639,9 @@ then
     ])
   if test "x${have_lua}" = "xyes" ;  then
      AC_DEFINE(HAVE_LUA, [], [Define if you have the lua library])
-     VLC_ADD_PLUGINS([luaplaylist luameta])
-     VLC_ADD_LDFLAGS([luaplaylist luameta],[$LUA_LIBS])
-     VLC_ADD_CFLAGS([luaplaylist luameta],[$LUA_CFLAGS])
+     VLC_ADD_PLUGINS([lua])
+     VLC_ADD_LDFLAGS([lua],[$LUA_LIBS])
+     VLC_ADD_CFLAGS([lua],[$LUA_CFLAGS])
   fi
 fi
 
@@ -1727,7 +1725,8 @@ AC_ARG_ENABLE(taglib,
   [  --disable-taglib Taglib support (default enabled) ])
   AS_IF([test "${enable_taglib}" != "no"],[
     PKG_CHECK_MODULES(TAGLIB, taglib,
-      [ VLC_ADD_PLUGINS([taglib])
+      [ AC_DEFINE( HAVE_TAGLIB, 1, [Define if you have taglib plugin built] )
+        VLC_ADD_PLUGINS([taglib])
         VLC_ADD_LDFLAGS([taglib],[$TAGLIB_LIBS -lz])
        VLC_ADD_CXXFLAGS([taglib],[$TAGLIB_CFLAGS]) ],
       [AC_MSG_WARN(TagLib library not found)])
@@ -2844,10 +2843,16 @@ fi
 dnl
 dnl   libid3tag support (FIXME!!! doesn't work with new input)
 dnl
-AC_CHECK_HEADERS(id3tag.h, [
-  AC_CHECK_HEADERS(zlib.h, [
-    VLC_ADD_LDFLAGS([id3tag],[-lid3tag -lz])
-    VLC_ADD_PLUGINS([id3tag])]) ])
+AC_ARG_ENABLE( id3tag,
+  [  --disable-id3tag id3tag metadata reader plugin (default enabled)])
+AS_IF([test "${enable_id3tag}" != "no"], [
+  AC_CHECK_HEADERS(id3tag.h, [
+    AC_CHECK_HEADERS(zlib.h, [
+      VLC_ADD_LDFLAGS([id3tag],[-lid3tag -lz])
+      VLC_ADD_PLUGINS([id3tag])
+    ])
+  ])
+])
 
 dnl
 dnl  ffmpeg decoder/demuxer plugin
@@ -4132,6 +4137,9 @@ then
     VLC_ADD_PLUGINS([freetype])
     VLC_ADD_CFLAGS([freetype],[`${FREETYPE_CONFIG} --cflags`])
     VLC_ADD_LDFLAGS([freetype],[`${FREETYPE_CONFIG} --libs`])
+    if test "${SYS}" = "mingw32"; then
+       VLC_ADD_LDFLAGS([freetype],[-lxml2])]
+    fi
     AC_CHECK_HEADERS(fontconfig/fontconfig.h,
       [VLC_ADD_CFLAGS([freetype],[-DHAVE_FONTCONFIG])
        VLC_ADD_LDFLAGS([freetype],[-lfontconfig])])
@@ -4390,38 +4398,73 @@ fi
 
 dnl
 dnl  DirectFB module
+dnl  try to find using: 1 - given location; 2 - directfb-config; 3 - pkg-config
+dnl  TODO: support for static linking
 dnl
 AC_ARG_ENABLE(directfb,
   [  --enable-directfb       DirectFB support (default disabled)])
-if test "${enable_directfb}" = "yes"
-then
-  if test "${with_directfb}" = "no"
-  then
-    AC_CHECK_HEADER(directfb.h, have_directfb="true", have_directfb="false")
-    if test "${have_directfb}"= "true"
-    then
+AC_ARG_WITH(directfb, 
+  [    --with-directfb=PATH  path to DirectFB headers and libraries])
+
+if test "${enable_directfb}" = "yes"; then
+    have_directfb="false"
+    CPPFLAGS_mydirectfb=
+    LDFLAGS_mydirectfb=
+    if test "${with_directfb}" != "no" -a -n "${with_directfb}"; then
+        dnl Trying the given location
+        CPPFLAGS_save=${CPPFLAGS}
+        LDFLAGS_save=${LDFLAGS}
+
+        CPPFLAGS_new="-I${with_directfb}/include -D_REENTRANT -D_GNU_SOURCE"
+        LDFLAGS_new="-L${with_directfb}/lib/fusion/.libs/ -L${with_directfb}/lib/direct/.libs/"
+        LDFLAGS_new="${LDFLAGS_new} -L${with_directfb}/src/.libs/"
+
+        CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_new}"
+        LDFLAGS="${LD_FLAGS} ${LDFLAGS_new}"
+
+        dnl FIXME: too obscure
+        AC_CHECK_HEADER([directfb.h], [
+            AC_CHECK_LIB([direct],[direct_initialize], [
+                AC_CHECK_LIB([fusion], [fusion_enter], [
+                    AC_CHECK_LIB([directfb], [DirectFBInit], have_directfb="true", have_directfb="false")
+                ], have_directfb="false")
+            ], have_directfb="false")
+        ], have_directfb="false")
+
+        dnl Restore flags
+        CPPFLAGS="${CPPFLAGS_save}"
+        LDFLAGS="${LDFLAGS_save}"
+
+        if test "${have_directfb}" = "true"; then
+            LDFLAGS_mydirectfb="${LDFLAGS_new} -lz -ldl -ldirectfb -lfusion -ldirect -lpthread"
+            CPPFLAGS_mydirectfb="${CPPFLAGS_new}"
+        fi
+    else 
+        dnl Look for directfb-config
+        AC_PATH_PROG(DIRECTFB_CONFIG, directfb-config, no, ${PATH})
+        if test "${DIRECTFB_CONFIG}" != "no"; then
+            CPPFLAGS_mydirectfb="`${DIRECTFB_CONFIG} --cflags`"
+            LDFLAGS_mydirectfb="`${DIRECTFB_CONFIG} --libs`"
+            have_directfb="true"
+        else 
+            dnl Trying with pkg-config
+            PKG_CHECK_MODULES(DIRECTFB, directfb, [
+                CPPFLAGS_mydirectfb="${DIRECTFB_CFLAGS}"
+                LDFLAGS_mydirectfb="${DIRECTFB_LIBS}"
+                have_directfb="true"
+                ], [have_directfb="false"])
+        fi
+    fi
+    if test "${have_directfb}" = "true"; then
         VLC_ADD_PLUGINS([directfb])
-        VLC_ADD_LDFLAGS([directfb],[-ldirectfb -lfusion -ldirect -lpthread -ljpeg -lz -ldl])
-        VLC_ADD_CPPFLAGS([directfb],[-I/usr/include/directfb -D_REENTRANT])
-    else
-        AC_MSG_ERROR([cannot find /usr/include/directfb headers, make sure directfb is installed on your system or use --disable-directfb])
+        VLC_ADD_CPPFLAGS([directfb],[${CPPFLAGS_mydirectfb}])
+        VLC_ADD_LDFLAGS([directfb],[${LDFLAGS_mydirectfb}])
+    else 
+        AC_MSG_ERROR([cannot find directfb headers and/or libraries ])
     fi
-  else
-    CPPFLAGS_save="${CPPFLAGS}"
-    CPPFLAGS="${CPPFLAGS} -I${with_directfb}/include"
-    AC_CHECK_HEADER(directfb.h, have_directfb="true", have_directfb="false")
-    CPPFLAGS="${CPPFLAGS_save}"
-    AC_ARG_WITH(directfb,
-        [    --with-directfb=PATH  path to directfb],
-        [ if test "${with_directfb}" != "no" -a -n "${with_directfb}"
-        then
-            VLC_ADD_PLUGINS([directfb])
-            VLC_ADD_CPPFLAGS([directfb],[-I${with_directfb}/include -D_REENTRANT])
-            VLC_ADD_LDFLAGS([directfb],[-L${with_directfb}/lib -ldirectfb -lfusion -ldirect -lpthread -ljpeg -lz -ldl])
-        fi ],
-        [ AC_MSG_ERROR([cannot find directfb headers in ${with_directfb}/include]) ])
-  fi
 fi
+
 
 dnl
 dnl  GGI module
@@ -5874,42 +5917,36 @@ fi
 dnl
 dnl  Plugin and builtin checks
 dnl
-builtin_support=false
-plugin_support=:
-
-dnl Support for plugins - this must be AT THE END
-AC_ARG_ENABLE(plugins,
-  [  --disable-plugins       make all plugins built-in (default plugins enabled)],
-  [if test "${enable_plugins}" = "no"
-   then
-     plugin_support=false
-   fi])
+plugin_support=yes
 
 dnl Automagically disable plugins if there is no system support for
 dnl dynamically loadable files (.so, .dll, .dylib).
 dnl don't forget vlc-win32 still can load .dll as plugins
-if test "${ac_cv_have_plugins}" = "no"
-then
-  echo "*** Your system doesn't have plugin support. All plugins will be built"
-  echo "statically."
-  plugin_support=false
-fi
+AS_IF([test "${ac_cv_have_plugins}" = "no"], [
+  AC_MSG_WARN([*** No plugin support! Building statically! ***])
+  plugin_support=no
+])
 
-AS_IF([${plugin_support}], [
+AS_IF([test "${enable_shared}" = "no"], [
+  plugin_support=no
+])
+
+AS_IF([test "${plugin_support}" != "no"], [
   AC_DEFINE(HAVE_DYNAMIC_PLUGINS, 1, Define if we have support for dynamic plugins)
-], [
-  VLC_ADD_BUILTINS([${PLUGINS}])
-  PLUGINS=""
 ])
 
+AM_CONDITIONAL(HAVE_PLUGINS, [test "${plugin_support}" != "no"])
+
+dnl Temporary(?) hack for plugins/builtins transition
+VLC_ADD_PLUGINS([${BUILTINS}])
+BUILTINS=""
+
 dnl
 dnl Pic and shared libvlc stuff
 dnl
-VLC_ADD_PLUGINS([${BUILTINS}])
 AS_IF([test "${SYS}" = "mingw32"], [
   FILE_LIBVLC_DLL="!define LIBVLC_DLL libvlc.dll"
 ])
-BUILTINS=""
 
 dnl
 dnl  Stuff used by the program
@@ -6043,6 +6080,7 @@ AC_CONFIG_FILES([
   modules/meta_engine/Makefile
   modules/misc/Makefile
   modules/misc/dummy/Makefile
+  modules/misc/lua/Makefile
   modules/misc/memcpy/Makefile
   modules/misc/notify/Makefile
   modules/misc/testsuite/Makefile