]> git.sesse.net Git - vlc/blobdiff - configure.ac
Layout fixes in COPYING (and use spaces instead of tabs). Use a fixed width font...
[vlc] / configure.ac
index 8bcb113d86fb5021ef6e94b4b886a2c1a1b67a2d..86feadcb91f74f70a1cf6ae100acd8c31e4dfe86 100644 (file)
@@ -93,9 +93,9 @@ AC_ARG_WITH(contrib,
     OBJCFLAGS="${OBJCFLAGS} -I${topdir}/extras/contrib/include"
     OBJCFLAGS_save="${OBJCFLAGS_save} -I${topdir}/extras/contrib/include"
     if test $build = $host -o "$PKG_CONFIG_LIBDIR"; then
-       export PKG_CONFIG_PATH=${topdir}/extras/contrib/lib/pkgconfig:$PKG_CONFIG_PATH
+        export PKG_CONFIG_PATH=${topdir}/extras/contrib/lib/pkgconfig:$PKG_CONFIG_PATH
     else
-       export PKG_CONFIG_LIBDIR=${topdir}/extras/contrib/lib/pkgconfig
+        export PKG_CONFIG_LIBDIR=${topdir}/extras/contrib/lib/pkgconfig
     fi
     LDFLAGS="${LDFLAGS} -L${topdir}/extras/contrib/lib"
     LDFLAGS_save="${LDFLAGS_save} -L${topdir}/extras/contrib/lib"
@@ -218,7 +218,28 @@ case "${host_os}" in
         echo "  Assuming --disable-glx"
         enable_xvideo="no"
         echo "  Assuming --disable-xvideo"
-
+    fi
+    if test ".`uname -p`" = ".i386"; then
+        dnl Due to a ld(64) bug in 10.5 we cannot use our mmx code
+        dnl without hacking it a lot, we disable mmx and sse.
+        dnl (that bug is about ld being unable to handle
+        dnl text relocation)
+        save_cflags="$CFLAGS"
+        CFLAGS="$CFLAGS -dynamiclib -single_module -read_only_relocs suppress"
+        AC_TRY_LINK(
+            [int a;], [asm("movq _a,%mm0\n");],
+            ac_ld_does_not_support_text_reloc=no,
+            ac_ld_does_not_support_text_reloc=yes)
+        CFLAGS="$save_cflags"
+
+        if test "x$ac_ld_does_not_support_text_reloc" = "xyes"; then
+            enable_mmx="no"
+            echo "  Assuming --disable-mmx (due to a bug in ld)"
+            enable_sse="no"
+            echo "  Assuming --disable-sse (due to a bug in ld)"
+            enable_ffmpeg="no"
+            echo "  Assuming --disable-ffmpeg (due to a bug in ld)"
+        fi
     fi
     ;;
   *mingw32* | *cygwin* | *wince* | *mingwce* | *pe*)
@@ -248,7 +269,7 @@ 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_output_udp access_output_shout sap slp http stream_out_standard stream_out_rtp vod_rtsp access_realrtsp telnet rc netsync gnutls growl flac ts audioscrobbler],[-lws2_32])
+        VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_output_udp access_output_shout sap slp http stream_out_standard stream_out_rtp vod_rtsp access_realrtsp telnet rc netsync gnutls growl flac ts audioscrobbler lua],[-lws2_32])
     fi
     if test "${SYS}" = "mingwce"; then
         # add ws2 for closesocket, select, recv
@@ -796,7 +817,13 @@ AC_EGREP_HEADER(strncasecmp,strings.h,[
 dnl Check for headers
 AC_CHECK_HEADERS(signal.h time.h errno.h stdint.h stdbool.h getopt.h strings.h inttypes.h sys/int_types.h wchar.h locale.h)
 AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/types.h sys/time.h sys/times.h sys/ioctl.h sys/stat.h)
-AC_CHECK_HEADERS([arpa/inet.h net/if.h netinet/in.h sys/socket.h netinet/udplite.h])
+AC_CHECK_HEADERS([arpa/inet.h netinet/in.h sys/socket.h netinet/udplite.h])
+AC_CHECK_HEADERS([net/if.h], [], [],
+  [
+    #if HAVE_SYS_SOCKET_H
+    # include <sys/socket.h>
+    #endif
+  ])
 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])
@@ -1520,16 +1547,20 @@ AS_IF([test "${CFLAGS_TUNING}"],
 dnl
 dnl  x86 accelerations
 dnl
-if test "${host_cpu}" = "i686" -o "${host_cpu}" = "i586" -o "${host_cpu}" = "x86" -o "${host_cpu}" = "i386" -o "${host_cpu}" = "i486" -o "${host_cpu}" = "x86_64"
-then
+AC_ARG_ENABLE(mmx,
+[  --disable-mmx       disable MMX optimizations (default enabled on x86)],
+[ if test "${enable_mmx}" = "yes"; then ARCH="${ARCH} mmx";
+    VLC_ADD_PLUGINS([${ACCEL_MODULES}]) fi ],
+[ if test "${host_cpu}" = "i686" -o "${host_cpu}" = "i586" -o "${host_cpu}" = "x86" -o "${host_cpu}" = "i386" -o "${host_cpu}" = "i486" -o "${host_cpu}" = "x86_64"; then
     ARCH="${ARCH} mmx"
-    VLC_ADD_PLUGINS([${ACCEL_MODULES}])
-fi
-if test "${host_cpu}" = "i686" -o "${host_cpu}" = "x86_64"
-then
-    ARCH="${ARCH} sse sse2"
-    VLC_ADD_PLUGINS([${ACCEL_MODULES}])
-fi
+    VLC_ADD_PLUGINS([${ACCEL_MODULES}]) fi ])
+
+AC_ARG_ENABLE(sse,
+[  --disable-sse       disable SSE (1 and 2) optimizations (default enabled on i686 and x86_64)],
+[ if test "${enable_sse}" = "yes"; then ARCH="${ARCH} sse sse2";
+    VLC_ADD_PLUGINS([${ACCEL_MODULES}]) fi ],
+[ if test "${host_cpu}" = "i686" -o "${host_cpu}" = "x86_64"; then ARCH="${ARCH} sse sse2";
+    VLC_ADD_PLUGINS([${ACCEL_MODULES}]) fi ])
 
 dnl
 dnl  Memory usage
@@ -3021,7 +3052,7 @@ dnl Those options have to be here because the .pc can be bogus for ffmpeg previo
    ],[
         unset PKG_CONFIG_PATH
    ])
-   AS_IF([test -n "${PKG_CONFIG_LIBDIR_save}"],[   
+   AS_IF([test -n "${PKG_CONFIG_LIBDIR_save}"],[
         export PKG_CONFIG_LIBDIR="${PKG_CONFIG_LIBDIR_save}"
    ],[
         unset PKG_CONFIG_LIBDIR
@@ -3732,7 +3763,7 @@ AC_CHECK_HEADERS(png.h, [
   AC_CHECK_LIB(png, png_set_rows, [
     VLC_ADD_LIBS([png],[-lpng -lz])
     VLC_ADD_PLUGINS([png])
-    VLC_ADD_PLUGINS([osdmenu])
+    VLC_ADD_PLUGINS([osdmenu osd_parser])
     AC_DEFINE(HAVE_LIBPNG, [], [Define if you have the PNG library: libpng])],
     [],[-lz])
   LDFLAGS="${LDFLAGS_save}"
@@ -3795,7 +3826,7 @@ dnl
 dnl libfluidsynth (MIDI synthetizer) plugin
 dnl
 AC_ARG_ENABLE(fluidsynth,
-  [  --enable-fluidsynth     MIDI synthesisr with libfluidsynth (default auto)])
+  [  --enable-fluidsynth     MIDI synthesisr with libfluidsynth (default enabled)])
 AS_IF([test "x${enable_fluidsynth}" != "xno"], [
   PKG_CHECK_MODULES(FLUIDSYNTH, fluidsynth, [
     VLC_ADD_PLUGINS(fluidsynth)
@@ -4837,7 +4868,7 @@ dnl
 dnl UPnP Plugin (Intel SDK)
 dnl
 AC_ARG_ENABLE(upnp,
-  [  --enable-upnp           Intel UPnP SDK (default auto)])
+  [  --enable-upnp           Intel UPnP SDK (default enabled)])
 
 VLC_ADD_CXXFLAGS([upnp_intel], [ ])
 AS_IF([test "x${enable_upnp}" != "xno"], [
@@ -5349,19 +5380,22 @@ dnl
 AC_ARG_ENABLE(ncurses,
   [  --disable-ncurses       ncurses interface support (default enabled)],
   [if test "${enable_ncurses}" != "no"; then
-     AC_CHECK_HEADERS(ncursesw/curses.h,
-       [AC_CHECK_LIB( ncursesw, mvprintw,
-         [VLC_ADD_PLUGINS([ncurses])
-         VLC_ADD_LIBS([ncurses],[-lncursesw])])
-       ],
-       [AC_CHECK_HEADER(curses.h,
-         [AC_CHECK_LIB(ncurses, mvprintw,
-           [VLC_ADD_PLUGINS([ncurses])
-           VLC_ADD_LIBS([ncurses],[-lncurses])]
-         )]
-       )]
-     )  
-   fi])
+    AC_CHECK_HEADER(ncurses.h,
+      [AC_CHECK_LIB(ncursesw, mvprintw,
+        [VLC_ADD_PLUGINS([ncurses])
+        VLC_ADD_LIBS([ncurses],[-lncursesw])
+        AC_DEFINE([HAVE_NCURSESW], 1, [Define to 1 if you have libncursesw.])
+        ],
+        [AC_CHECK_LIB( ncurses, mvprintw,
+          [VLC_ADD_PLUGINS([ncurses])
+          VLC_ADD_LIBS([ncurses],[-lncurses])],
+          [AS_IF([test "x${enable_ncurses}" != "x"], [
+            AC_MSG_ERROR([libncurses not found])])]
+        )]
+      )]
+    )
+  fi]
+)
 
 dnl
 dnl  XOSD plugin
@@ -6051,7 +6085,7 @@ dnl  Handle substvars that use $(top_srcdir)
 dnl
 VLC_CONFIG="top_builddir=\"\$(top_builddir)\" \$(top_builddir)/vlc-config"
 AC_SUBST(VLC_CONFIG)
-CPPFLAGS_save="${CPPFLAGS_save} -I\$(top_srcdir)/include"
+CPPFLAGS_save="${CPPFLAGS_save} -I\$(top_srcdir)/include -I\$(top_builddir)/include"
 
 dnl
 dnl  Restore *FLAGS
@@ -6160,6 +6194,7 @@ AC_CONFIG_FILES([
   modules/misc/notify/Makefile
   modules/misc/testsuite/Makefile
   modules/misc/playlist/Makefile
+  modules/misc/osd/Makefile
   modules/misc/xml/Makefile
   modules/misc/probe/Makefile
   modules/mux/Makefile
@@ -6223,4 +6258,11 @@ with \`./vlc-config --list plugin'.
 You can tune the compiler flags in vlc-config.
 To build vlc and its plugins, type \`./compile' or \`make'.
 "
-
+if test "x$ac_ld_does_not_support_text_reloc" = "xyes"; then
+   echo ""
+   echo "Warning: Due to a bug in ld, mmx/sse support has been"
+   echo "         turned off."
+   echo "         More over FFmpeg support has been disabled."
+   echo "         VLC WILL NOT BE ABLE TO PLAY MOST FILES."
+   echo ""
+fi