]> git.sesse.net Git - vlc/blobdiff - configure.ac
access_udp: remove obsolete shortcuts.
[vlc] / configure.ac
index d69de24cfe0a15e9d1e6415235bfc0c1f8bee4b2..cb91f57e4e8285b79365873b29e247310d8e895b 100644 (file)
@@ -22,7 +22,7 @@ AC_CANONICAL_BUILD
 AC_CANONICAL_HOST
 AC_PRESERVE_HELP_ORDER
 
-AM_INIT_AUTOMAKE(tar-ustar)
+AM_INIT_AUTOMAKE(tar-ustar color-tests)
 AM_CONFIG_HEADER(config.h)
 
 # Disable with "./configure --disable-silent-rules" or "make V=1"
@@ -236,8 +236,6 @@ case "${host_os}" in
         build_dir=`pwd`
         echo "  Assuming --prefix=${build_dir}/vlc_install_dir"
         ac_default_prefix="${build_dir}/vlc_install_dir"
-        enable_macosx="yes"
-        echo "  Assuming --enable-macosx"
         enable_faad="yes"
         echo "  Assuming --enable-faad"
         enable_flac="yes"
@@ -428,7 +426,7 @@ AS_IF([test "${enable_shared}" = "no"], [
 dnl
 dnl Gettext stuff
 dnl
-AM_GNU_GETTEXT_VERSION([0.17])
+AM_GNU_GETTEXT_VERSION([0.18.1])
 AM_GNU_GETTEXT([external])
 VLC_ADD_LIBS([libvlccore vlc], [${LTLIBINTL}])
 
@@ -802,13 +800,17 @@ AC_EGREP_HEADER(strncasecmp,strings.h,[
 
 dnl Check for headers
 AC_CHECK_HEADERS(getopt.h strings.h locale.h xlocale.h)
-AC_CHECK_HEADERS(fcntl.h sys/time.h sys/ioctl.h sys/stat.h sys/mount.h)
+AC_CHECK_HEADERS(fcntl.h sys/time.h sys/ioctl.h sys/stat.h)
 AC_CHECK_HEADERS([arpa/inet.h netinet/in.h netinet/udplite.h sys/eventfd.h])
 AC_CHECK_HEADERS([net/if.h], [], [],
   [
     #include <sys/types.h>
     #include <sys/socket.h>
   ])
+AC_CHECK_HEADERS([sys/mount.h], [], [],
+  [
+    #include <sys/param.h>
+  ])
 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
 AC_CHECK_HEADERS(machine/param.h sys/shm.h)
 AC_CHECK_HEADERS([linux/version.h linux/dccp.h scsi/scsi.h linux/magic.h])
@@ -829,11 +831,6 @@ then
 fi
 ])
 
-dnl Check for dirent
-need_dirent=false
-AC_CHECK_HEADERS(dirent.h,,[need_dirent=:])
-AM_CONDITIONAL(BUILD_DIRENT, ${need_dirent})
-
 dnl Mac OS X and other OSes don't have declaration for nanosleep
 if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then
 AC_MSG_CHECKING(for nanosleep in time.h)
@@ -905,8 +902,8 @@ AM_CONDITIONAL(HAVE_MINIZIP, [ test "${have_minizip}" = "yes" ])
 
 dnl Manual switch for UTF-8
 AC_ARG_ENABLE(non-utf8,
-  [  --enable-non-utf8       Legacy non-UTF-8 systems support (default disabled)], [
-  AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"], [
+  [  --enable-non-utf8       Legacy non-UTF-8 systems support (default disabled)],, [
+  AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"], [
     enable_non_utf8="no"
   ])
 ])
@@ -1354,7 +1351,10 @@ AS_IF([test "${enable_neon}" != "no"], [
   AC_CACHE_CHECK([if $CC groks NEON inline assembly], [ac_cv_neon_inline], [
     CFLAGS="${CFLAGS_save} -mfpu=neon"
     AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM(,[[asm volatile("vqmovun.s64 d0, q1":::"d0");]])
+      AC_LANG_PROGRAM(,[[
+asm volatile("vqmovun.s64 d0, q1":::"d0");
+asm volatile("ssat r0, #1, r0":::"r0"); /* assume ARMv6 */
+]])
     ], [
       ac_cv_neon_inline="-mfpu=neon"
     ], [
@@ -1849,80 +1849,10 @@ PKG_ENABLE_MODULES_VLC([DV], [access_dv], [libraw1394 >= 2.0.1 libavc1394 >= 0.5
 dnl
 dnl dvdread module: check for libdvdread
 dnl
-AC_ARG_ENABLE(dvdread,
-[  --enable-dvdread        dvdread input module (default enabled)])
-if test "${enable_dvdread}" != "no"
-then
-  AC_ARG_WITH(dvdread,
-  [  --with-dvdread=PATH     libdvdread headers and libraries])
-  AC_ARG_WITH(dvdread-tree,
-  [  --with-dvdread-tree=PATH libdvdread tree for static linking])
-
-  dnl prepend -ldvdcss on OS that need it
-  AS_CASE(["${SYS}"], [mingw32|darwin|beos], [VLC_ADD_LIBS([dvdread], [-ldvdcss])])
-
-  if test -z "${with_dvdread}"
-  then
-    if test -z "${with_dvdread_tree}"
-    then
-      AC_CHECK_HEADERS(dvdread/dvd_reader.h,
-        [ VLC_ADD_PLUGIN([dvdread])
-          VLC_ADD_LIBS([dvdread],[-ldvdread])
-        ],[
-         AC_CHECK_HEADERS(libdvdread/dvd_reader.h,
-            [ VLC_ADD_PLUGIN([dvdread])
-             VLC_ADD_LIBS([dvdread],[-ldvdread])
-           ],[
-             if test -n "${enable_dvdread}"
-             then
-             AC_MSG_ERROR([cannot find libdvdread headers])
-            fi
-          ])
-       ])
-    else
-      AC_MSG_CHECKING(for libdvdread.a in ${with_dvdread_tree})
-      real_dvdread_tree="`cd ${with_dvdread_tree} 2>/dev/null && pwd`"
-      if test -z "${real_dvdread_tree}"
-      then
-        dnl  The given directory can't be found
-        AC_MSG_RESULT(no)
-        AC_MSG_ERROR([cannot cd to ${with_dvdread_tree}])
-      fi
-      if test -f "${real_dvdread_tree}/dvdread/.libs/libdvdread.a"
-      then
-        dnl  Use a custom libdvdread
-        AC_MSG_RESULT(${real_dvdread_tree}/dvdread/.libs/libdvdread.a)
-        VLC_ADD_PLUGIN([dvdread])
-        VLC_ADD_LIBS([dvdread],[-L${real_dvdread_tree}/dvdread/.libs -ldvdread])
-        VLC_ADD_CPPFLAGS([dvdread],[-I${real_dvdread_tree}])
-      else
-        dnl  The given libdvdread wasn't built
-        AC_MSG_RESULT(no)
-        AC_MSG_ERROR([cannot find ${real_dvdread_tree}/dvdread/.libs/libdvdread.a, make sure you compiled libdvdread in ${with_dvdread_tree}])
-      fi
-    fi
-  else
-    AC_MSG_CHECKING(for dvdread headers in ${with_dvdread})
-    if test -f ${with_dvdread}/include/dvdread/dvd_reader.h
-    then
-      dnl  Use ${with_dvdread}/include/dvdread/dvd_reader.h
-      AC_MSG_RESULT(yes)
-      VLC_ADD_PLUGIN([dvdread])
-      VLC_ADD_LIBS([dvdread],[-L${with_dvdread}/lib -ldvdread])
-      VLC_ADD_CPPFLAGS([dvdread],[-I${with_dvdread}/include])
-    else
-      dnl  No libdvdread could be found, sorry
-      AC_MSG_RESULT(no)
-      AC_MSG_ERROR([cannot find ${with_dvdread}/include/dvdread/dvd_reader.h])
-    fi
-  fi
-
-  dnl append -ldvd on OS that need it
-  AS_CASE(["${SYS}"], [bsdi], [VLC_ADD_LIBS([dvdread], [-ldvd])])
-fi
+PKG_ENABLE_MODULES_VLC([DVDREAD], [], [dvdread], [dvdread input module], [auto])
 
 dnl
-dnl  libdvdnav plugin
+dnl libdvdnav plugin
 dnl
 AC_ARG_ENABLE(dvdnav,
   [  --enable-dvdnav         dvdnav input module (default enabled)])
@@ -1947,6 +1877,9 @@ then
     AC_CHECK_LIB(dvdnav, dvdnav_get_video_resolution,
                AC_DEFINE(HAVE_DVDNAV_GET_VIDEO_RESOLUTION, 1, [Define if you have dvdnav_get_video_resolution.]),
                [], [${LIBS_dvdnav}])
+    AC_CHECK_LIB(dvdnav, dvdnav_describe_title_chapters,
+               AC_DEFINE(HAVE_DVDNAV_DESCRIBE_TITLE_CHAPTERS, 1, [Define if you have dvdnav_describe_title_chapters.]),
+               [], [${LIBS_dvdnav}])
   fi
 fi
 
@@ -2126,42 +2059,6 @@ then
 
 fi
 
-dnl
-dnl  Video4Linux plugin
-dnl
-AC_ARG_ENABLE(v4l,
-  [  --enable-v4l            Video4Linux input support (default disabled)])
-if test "${enable_v4l}" = "yes"
-then
-  AC_ARG_WITH(v4l,
-    [  --with-v4l=PATH         path to a v4l-enabled kernel tree],[],[])
-  if test "${with_v4l}" != "no" -a -n "${with_v4l}"
-  then
-    VLC_ADD_CPPFLAGS([v4l],[-I${with_v4l}/include])
-  fi
-
-  CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_v4l}"
-  AC_CHECK_HEADERS(linux/videodev.h, [
-    VLC_ADD_PLUGIN([v4l])
-  ],[])
-  CPPFLAGS="${CPPFLAGS_save}"
-fi
-
-dnl
-dnl libv4l1 support for video4linux.
-dnl
-AC_ARG_ENABLE( libv4l,
-  [  --enable-libv4l         Libv4l Video4Linux support (default enabled)])
-if test "${enable_libv4l}" != "no" -a "${enable_v4l}" != "no"
-then
-    PKG_CHECK_MODULES( LIBV4L, libv4l1, [
-      VLC_ADD_LDFLAGS([v4l],[${LIBV4L_LIBS}])
-      VLC_ADD_CFLAGS([v4l],[${LIBV4L_CFLAGS}])
-      AC_DEFINE(HAVE_LIBV4L1, 1, Define if libv4l is available)],
-      AC_MSG_WARN([LibV4L support disabled because libv4l development headers were not found])
-    )
-fi
-
 dnl
 dnl  Video4Linux2 plugin
 dnl
@@ -2660,8 +2557,8 @@ AS_IF([test "${enable_libva}" != "no"], [
         CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}"
         CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}"
         AC_CHECK_HEADERS(libavcodec/vaapi.h, [
-           VLC_ADD_LIBS([avcodec],[$LIBVA_LIBS])
-           VLC_ADD_CFLAGS([avcodec],[$LIBVA_CFLAGS])
+           VLC_ADD_LIBS([avcodec],[$LIBVA_LIBS ${X_LIBS} ${X_PRE_LIBS} -lX11])
+           VLC_ADD_CFLAGS([avcodec],[$LIBVA_CFLAGS ${X_CFLAGS}])
            AC_DEFINE(HAVE_AVCODEC_VAAPI, 1, [Define if avcodec has to be built with VAAPI support.])
            echo "VAAPI acceleration activated"
         ],[
@@ -2741,7 +2638,7 @@ AC_ARG_ENABLE(avformat,
 ])
 if test "${enable_avformat}" != "no"
 then
-  PKG_CHECK_MODULES(AVFORMAT,[libavformat > 52.30.0 libavutil],
+  PKG_CHECK_MODULES(AVFORMAT,[libavformat > 52.30.0 libavcodec libavutil],
     [
       VLC_SAVE_FLAGS
       CPPFLAGS="${CPPFLAGS} ${AVFORMAT_CFLAGS}"
@@ -2768,9 +2665,7 @@ dnl
 
 AC_ARG_ENABLE(swscale,
   AS_HELP_STRING([--enable-swscale],[libswscale image scaling and conversion
-                 (default enabled)]),, [
-  enable_swscale="${have_avcodec}"
-])
+                 (default enabled)]))
 if test "${enable_swscale}" != "no"
 then
   PKG_CHECK_MODULES(SWSCALE,[libswscale],
@@ -3487,6 +3382,23 @@ then
   fi
 fi
 
+dnl
+dnl  Windows Direct2D plugin
+dnl
+AC_ARG_ENABLE(direct2d,
+  [  --enable-direct2d         Win7/VistaPU Direct2D support (default auto on Win32)])
+if test "${enable_direct2d}" != "no"; then
+  if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"
+  then
+    AC_CHECK_HEADERS(d2d1.h,
+      [
+        VLC_ADD_PLUGIN([direct2d])
+        VLC_ADD_LIBS([direct2d],[-lgdi32 -lole32])
+      ], [AC_MSG_WARN([Cannot find Direct2D headers!])]
+    )
+  fi
+fi
+
 dnl
 dnl  win32 GDI plugin
 dnl
@@ -3715,85 +3627,11 @@ dnl  JACK modules
 dnl
 PKG_ENABLE_MODULES_VLC([JACK], [jack access_jack], [jack], [JACK audio I/O modules],[auto])
 
-
-dnl
-dnl  CyberLink for C++ UPnP stack
-dnl
-AC_ARG_ENABLE(cyberlink,
-  [  --enable-cyberlink      CyberLink for C++ UPnP stack (default disabled)])
-  AS_IF([test "${enable_cyberlink}" = "yes" ], [
-  AC_ARG_WITH(cyberlink-tree,
-    [  --with-cyberlink-tree=PATH CyberLink for C++ tree for static linking])
-
-  dnl
-  dnl test for --with-cyberlink-tree
-  dnl
-  AS_IF([test ! -z "${with_cyberlink_tree}" -a "${CXX}" != ""], [
-    AC_LANG_PUSH(C++)
-    real_cyberlink_tree="`cd ${with_cyberlink_tree} 2>/dev/null && pwd`"
-    AS_IF([test -z "${real_cyberlink_tree}"], [
-      dnl  The given directory can't be found
-      AC_MSG_RESULT(no)
-      AC_MSG_ERROR([cannot cd to ${with_cyberlink_tree}])
-    ])
-    CPPFLAGS_save="${CPPFLAGS}"
-    CPPFLAGS_cyberlink="-I${real_cyberlink_tree}/include"
-    CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_cyberlink}"
-    AC_CHECK_HEADERS([cybergarage/upnp/MediaServer.h],
-      [ VLC_ADD_CXXFLAGS([upnp_cc], [${CPPFLAGS_cyberlink}])
-        VLC_ADD_PLUGIN([upnp_cc])
-      ],[
-        AC_MSG_ERROR([cannot find CyberLink for C++ headers])
-      ])
-    AC_MSG_CHECKING(for libclink.a in ${with_cyberlink_tree})
-    AS_IF([test -f "${real_cyberlink_tree}/lib/unix/libclink.a"], [
-      AC_MSG_RESULT(${real_cyberlink_tree}/lib/unix/libclink.a)
-      dnl The mere fact that we have to make such an ugly check sucks
-      AC_MSG_CHECKING(for XML parser to link CyberLink with)
-      LIBS_save="$LIBS"
-      LIBS_cclink="no"
-      for l in "`xml2-config --libs`" -lexpat -lxerces-c; do
-        LIBS="$LIBS_save ${real_cyberlink_tree}/lib/unix/libclink.a -lpthread $l"
-        AC_LINK_IFELSE([AC_LANG_PROGRAM([
-#include <cybergarage/upnp/media/player/MediaPlayer.h>
-using namespace CyberLink;
-
-class testclass : public SearchResponseListener, public MediaPlayer
-{
-    virtual void deviceSearchResponseReceived( SSDPPacket *)
-    {
-    }
-
-    public:
-      testclass (void)
-      {
-        addSearchResponseListener (this);
-       start ();
-      }
-};
-],[testclass l;])],[LIBS_cclink="$l"])
-      done
-      LIBS="${LIBS_save}"
-      dnl should not happen - otherwise this needs fixing - hence FAILURE
-      AS_IF([test "${LIBS_cclink}" = "no"],
-        [AC_MSG_FAILURE([cannot find XML parser for CyberLink])])
-      AC_MSG_RESULT([${LIBS_cclink}])
-      VLC_ADD_LIBS([upnp_cc], [${real_cyberlink_tree}/lib/unix/libclink.a -lpthread ${LIBS_cclink}])
-    ], [
-      AC_MSG_RESULT(no)
-      AC_MSG_ERROR([cannot find ${real_cyberlink_tree}/lib/unix/libclink.a, make sure you compiled CyberLink for C++ in ${with_cyberlink_tree}])
-    ])
-    CPPFLAGS="${CPPFLAGS_save}"
-    AC_LANG_POP([C++])
-  ])
-])
-
 dnl
 dnl UPnP Plugin (Intel SDK)
 dnl
 PKG_ENABLE_MODULES_VLC([UPNP], [upnp_intel], [libupnp], [Intel UPnp SDK],[auto])
 
-
 dnl
 dnl  Interface plugins
 dnl
@@ -3885,14 +3723,34 @@ AC_ARG_ENABLE(qt4,
 AS_IF([test "${enable_qt4}" != "no"], [
   PKG_CHECK_MODULES(QT4, [QtCore QtGui >= 4.4.0], [
     VLC_ADD_PLUGIN([qt4])
+    VLC_ADD_LIBS([qt4],[${QT4_LIBS}])
+    VLC_ADD_CXXFLAGS([qt4],[${QT4_CFLAGS}])
     ALIASES="${ALIASES} qvlc"
-    AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" -a "${SYS}" != "darwin"], [
-        VLC_ADD_LIBS([qt4],[$QT4_LIBS ${X_LIBS} ${X_PRE_LIBS} -lX11])
-        need_xid_provider="no"
-        VLC_ADD_CXXFLAGS([qt4],[$QT4_CFLAGS ${X_CFLAGS}])
+
+    AC_LANG_PUSH([C++])
+    CPPFLAGS_save="${CPPFLAGS}"
+
+    AC_MSG_CHECKING([whether Qt uses X11])
+    CPPFLAGS="${CPPFLAGS} ${QT4_CFLAGS}"
+    AC_PREPROC_IFELSE([
+#include <QWidget>
+#if !defined (Q_WS_X11)
+# error Fail
+#endif
+    ], [
+      AC_MSG_RESULT([yes])
+      VLC_ADD_LIBS([qt4],[${X_LIBS} ${X_PRE_LIBS} -lX11])
+      need_xid_provider="no"
+      VLC_ADD_CXXFLAGS([qt4],[${X_CFLAGS}])
     ], [
-        VLC_ADD_LIBS([qt4],[$QT4_LIBS -lole32])
-        VLC_ADD_CXXFLAGS([qt4],[$QT4_CFLAGS])
+      AC_MSG_RESULT([no])
+    ])
+
+    CPPFLAGS="${CPPFLAGS_save}"
+    AC_LANG_POP([C++])
+
+    AS_IF([test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"], [
+        VLC_ADD_LIBS([qt4],[-lole32])
     ])
     AC_PATH_PROGS(MOC, [moc-qt4 moc], moc,`eval $PKG_CONFIG --variable=exec_prefix QtCore`/bin)
     AC_PATH_PROG(RCC, rcc, rcc,`eval $PKG_CONFIG --variable=exec_prefix QtCore`/bin)
@@ -4685,17 +4543,9 @@ dnl Create vlc-config.in
 VLC_OUTPUT_VLC_CONFIG_IN
 
 AC_CONFIG_FILES([
-  extras/package/win32/spad.nsi
-  extras/package/win32/vlc.win32.nsi
-  extras/package/macosx/Info.plist
-  extras/package/macosx/Resources/English.lproj/InfoPlist.strings
-  extras/package/macosx/plugin/Info.plist
-  extras/package/macosx/plugin/InstallerInfo.plist
   Makefile
   projects/activex/Makefile
-  projects/activex/axvlc.inf
   doc/Makefile
-  extras/package/ipkg/Makefile
   libs/loader/Makefile
   libs/srtp/Makefile
   libs/unzip/Makefile
@@ -4703,12 +4553,6 @@ AC_CONFIG_FILES([
   projects/mozilla/Makefile
   m4/Makefile
   po/Makefile.in
-  projects/activex/axvlc_rc.rc
-  projects/mozilla/npvlc_rc.rc
-  projects/mozilla/vlc.r
-  projects/mozilla/install.js
-  projects/mozilla/install.rdf
-  projects/mozilla/manifest.json
   share/Makefile
   compat/Makefile
   src/Makefile
@@ -4793,6 +4637,46 @@ AC_CONFIG_FILES([
   modules/arm_neon/Makefile
 ])
 
+AM_COND_IF([BUILD_MOZILLA], [
+  AC_CONFIG_FILES([
+    projects/mozilla/install.js
+    projects/mozilla/install.rdf
+    projects/mozilla/manifest.json
+  ])
+])
+
+AM_COND_IF([HAVE_WIN32], [
+  AC_CONFIG_FILES([
+    extras/package/win32/spad.nsi
+    extras/package/win32/vlc.win32.nsi
+  ])
+  AM_COND_IF([BUILD_ACTIVEX], [
+    AC_CONFIG_FILES([
+      projects/activex/axvlc.inf
+      projects/activex/axvlc_rc.rc
+    ])
+  ])
+  AM_COND_IF([BUILD_MOZILLA], [
+    AC_CONFIG_FILES([
+      projects/mozilla/npvlc_rc.rc
+    ])
+  ])
+])
+
+AM_COND_IF([HAVE_DARWIN], [
+  AC_CONFIG_FILES([
+    extras/package/macosx/Info.plist
+    extras/package/macosx/Resources/English.lproj/InfoPlist.strings
+    extras/package/macosx/plugin/Info.plist
+    extras/package/macosx/plugin/InstallerInfo.plist
+  ])
+  AM_COND_IF([BUILD_MOZILLA], [
+    AC_CONFIG_FILES([
+      projects/mozilla/vlc.r
+    ])
+  ])
+])
+
 dnl Generate makefiles
 AC_OUTPUT