]> git.sesse.net Git - vlc/blobdiff - configure.ac
Use the filename passed and not the configuration file.
[vlc] / configure.ac
index a1f81d88c202c8563ac99473c399afe79771351d..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
@@ -2034,7 +2065,7 @@ then
     then
       AC_CHECK_HEADERS(dvdread/dvd_reader.h,
         [ VLC_ADD_PLUGINS([dvdread])
-          VLC_ADD_LIBS([dvdread],[-ldvdread ${LDFLAGS_dvdcss}])
+          VLC_ADD_LIBS([dvdread],[-ldvdread ${LIBS_dvdcss}])
         ],[
           if test -n "${enable_dvdread}"
           then
@@ -2055,7 +2086,7 @@ then
         dnl  Use a custom libdvdread
         AC_MSG_RESULT(${real_dvdread_tree}/dvdread/.libs/libdvdread.a)
         VLC_ADD_BUILTINS([dvdread])
-        VLC_ADD_LIBS([dvdread],[-L${real_dvdread_tree}/dvdread/.libs -ldvdread ${LDFLAGS_dvdcss}])
+        VLC_ADD_LIBS([dvdread],[-L${real_dvdread_tree}/dvdread/.libs -ldvdread ${LIBS_dvdcss}])
         VLC_ADD_CPPFLAGS([dvdread],[-I${real_dvdread_tree}])
       else
         dnl  The given libdvdread wasn't built
@@ -2070,7 +2101,7 @@ then
       dnl  Use ${with_dvdread}/include/dvdread/dvd_reader.h
       AC_MSG_RESULT(yes)
       VLC_ADD_PLUGINS([dvdread])
-      VLC_ADD_LIBS([dvdread],[-L${with_dvdread}/lib -ldvdread ${LDFLAGS_dvdcss}])
+      VLC_ADD_LIBS([dvdread],[-L${with_dvdread}/lib -ldvdread ${LIBS_dvdcss}])
       VLC_ADD_CPPFLAGS([dvdread],[-I${with_dvdread}/include])
     else
       dnl  No libdvdread could be found, sorry
@@ -2288,7 +2319,7 @@ then
   esac
   AC_CHECK_LIB(dvbpsi, dvbpsi_GenSDTSections, [
     AC_DEFINE(HAVE_DVBPSI_SDT, 1, [Define if you have dvbpsi_GenSDTSections.])
-  ], [], [${LDFLAGS_ts}])
+  ], [], [${LIBS_ts}])
 
 fi
 
@@ -2839,7 +2870,7 @@ then
       AC_MSG_RESULT(yes)
       VLC_ADD_CPPFLAGS([mpgatofixed32],[-I${real_mad_tree}])
       VLC_ADD_LIBS([mpgatofixed32],[-L${real_mad_tree}/.libs])
-      LDFLAGS="${LDFLAGS_save} ${LDFLAGS_mpgatofixed32}"
+      LDFLAGS="${LDFLAGS_save} ${LIBS_mpgatofixed32}"
       AC_CHECK_LIB(mad, mad_bit_init, [
         VLC_ADD_BUILTINS([mpgatofixed32])
         VLC_ADD_LIBS([mpgatofixed32],[-lmad])
@@ -2852,7 +2883,7 @@ then
     fi
   else
     CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mpgatofixed32}"
-    LDFLAGS="${LDFLAGS_save} ${LDFLAGS_mpgatofixed32}"
+    LDFLAGS="${LDFLAGS_save} ${LIBS_mpgatofixed32}"
     AC_CHECK_HEADERS(mad.h, ,
       [ AC_MSG_ERROR([Could not find libmad on your system: you may get it from http://www.underbit.com/products/mad/. Alternatively you can use --disable-mad to disable the mad plugin.]) ])
     AC_CHECK_LIB(mad, mad_bit_init, [
@@ -2909,7 +2940,7 @@ dnl Those options have to be here because the .pc can be bogus for ffmpeg previo
    [    --with-ffmpeg-dts     specify if ffmpeg has been compiled with dts support],
    [
      if test "$with_ffmpeg_dts" = "yes"; then
-             LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg}"
+             LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg} ${LIBS_ffmpeg}"
              AC_CHECK_LIB(dts_pic, dts_free, 
                [ VLC_ADD_LIBS([ffmpeg],[-ldts_pic]) ],
                [ VLC_ADD_LIBS([ffmpeg],[-ldts]) ])
@@ -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
@@ -3111,7 +3142,7 @@ dnl    AC_CHECK_HEADERS(ffmpeg/swscale.h, [], [AC_MSG_ERROR([Missing header file
     dnl last chance: at the default place
     dnl
       CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_ffmpeg}"
-      LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg}"
+      LDFLAGS="${LDFLAGS_save} ${LDFLAGS_ffmpeg} ${LIBS_ffmpeg}"
       AC_CHECK_HEADERS(ffmpeg/avcodec.h, [], [AC_MSG_ERROR([Missing header file ffmpeg/avcodec.h.])] )
       AC_CHECK_HEADERS(ffmpeg/avformat.h)
       AC_CHECK_HEADERS(ffmpeg/avutil.h)
@@ -3224,7 +3255,7 @@ then
     fi
   else
     CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_faad}"
-    LDFLAGS="${LDFLAGS_save} ${LDFLAGS_faad}"
+    LDFLAGS="${LDFLAGS_save} ${LIBS_faad}"
     AC_CHECK_HEADERS(faad.h, ,
       [ AC_MSG_ERROR([Cannot find development headers for libfaad...]) ])
     AC_CHECK_LIB(faad, faacDecOpen, [
@@ -3233,7 +3264,7 @@ then
       AC_CHECK_LIB(faad, NeAACDecOpen, [
         VLC_ADD_PLUGINS([faad])
         VLC_ADD_LIBS([faad],[-lfaad]) ],
-        [ AC_MSG_ERROR([Cannot find libfaad library...]) ],[-lm]))
+        [ AC_MSG_ERROR([Cannot find libfaad library...]) ]))
     LDFLAGS="${LDFLAGS_save}"
     CPPFLAGS="${CPPFLAGS_save}"
   fi
@@ -3272,7 +3303,7 @@ then
     fi
   else
     CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_twolame} -DLIBTWOLAME_STATIC"
-    LDFLAGS="${LDFLAGS_save} ${LDFLAGS_twolame}"
+    LDFLAGS="${LDFLAGS_save} ${LIBS_twolame}"
     AC_CHECK_HEADERS(twolame.h, ,
       [ AC_MSG_ERROR([Cannot find development header for libtwolame...]) ])
     AC_CHECK_LIB(twolame, twolame_init, [
@@ -3371,7 +3402,7 @@ then
       AC_MSG_RESULT(yes)
       VLC_ADD_CPPFLAGS([a52tofloat32],[-I${real_a52_tree}])
       VLC_ADD_LIBS([a52tofloat32],[-L${real_a52_tree}/liba52/.libs])
-      LDFLAGS="${LDFLAGS_save} ${LDFLAGS_a52tofloat32} -lm"
+      LDFLAGS="${LDFLAGS_save} ${LIBS_a52tofloat32}"
       AC_CHECK_LIB(a52, a52_free, [
         VLC_ADD_BUILTINS([a52tofloat32])
         VLC_ADD_CPPFLAGS([a52tofloat32],[-DUSE_A52DEC_TREE])
@@ -3399,7 +3430,7 @@ then
       CPPFLAGS_test="-I${with_a52}/include"
     fi
     CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test} ${CPPFLAGS_a52tofloat32}"
-    LDFLAGS="${LDFLAGS_save} ${LDFLAGS_test} ${LDFLAGS_a52tofloat32}"
+    LDFLAGS="${LDFLAGS_save} ${LDFLAGS_test} ${LIBS_a52tofloat32}"
     AC_CHECK_HEADERS(a52dec/a52.h, [
       AC_CHECK_LIB(a52, a52_free, [
         VLC_ADD_PLUGINS([a52tofloat32])
@@ -3649,7 +3680,7 @@ then
     fi
   else
     AC_CHECK_HEADERS(speex/speex.h, [
-      LDFLAGS="${LDFLAGS_save} ${LDFLAGS_speex}"
+      LDFLAGS="${LDFLAGS_save} ${LIBS_speex}"
       AC_CHECK_LIB(speex, speex_decode_int, [
         VLC_ADD_PLUGINS([speex])
         VLC_ADD_LIBS([speex],[-lspeex]) ],
@@ -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}"
@@ -3763,7 +3794,7 @@ if test "${enable_x264}" != "no"; then
       AC_MSG_RESULT(yes)
       VLC_ADD_CPPFLAGS([x264],[-I${real_x264_tree}])
       VLC_ADD_LIBS([x264],[-L${real_x264_tree}])
-      LDFLAGS="${LDFLAGS_save} ${LDFLAGS_x264} ${THREAD_LIB}"
+      LDFLAGS="${LDFLAGS_save} ${LIBS_x264} ${THREAD_LIB}"
       AC_CHECK_LIB(x264, x264_encoder_open, [
         VLC_ADD_BUILTINS([x264])
         VLC_ADD_LIBS([x264],[-lx264])
@@ -3776,7 +3807,7 @@ if test "${enable_x264}" != "no"; then
       AC_MSG_ERROR([the specified tree doesn't have x264.h])
     fi
   else
-    LDFLAGS="${LDFLAGS_save} ${LDFLAGS_x264} ${THREAD_LIB}"
+    LDFLAGS="${LDFLAGS_save} ${LIBS_x264} ${THREAD_LIB}"
     AC_CHECK_HEADERS(x264.h, [
       AC_CHECK_LIB(x264, x264_encoder_open, [
         VLC_ADD_PLUGINS([x264])
@@ -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)
@@ -4211,8 +4242,8 @@ from http://www.freetype.org/, or configure with --disable-freetype. Have a nice
     then
       VLC_ADD_CFLAGS([freetype], [`${FRIBIDI_CONFIG} --cflags` -DHAVE_FRIBIDI])
       VLC_ADD_CPPFLAGS([skins2], [`${FRIBIDI_CONFIG} --cflags` -DHAVE_FRIBIDI])
-      VLC_ADD_LDFLAGS([freetype], [`${FRIBIDI_CONFIG} --libs`])
-      VLC_ADD_LDFLAGS([skins2], [`${FRIBIDI_CONFIG} --libs`])
+      VLC_ADD_LIBS([freetype], [`${FRIBIDI_CONFIG} --libs`])
+      VLC_ADD_LIBS([skins2], [`${FRIBIDI_CONFIG} --libs`])
     fi
   fi
 fi
@@ -4233,10 +4264,10 @@ then
   AC_PATH_PROG(XML2_CONFIG, xml2-config, no, ${XML2_PATH})
   if test "${XML2_CONFIG}" != "no"; then
     VLC_ADD_CPPFLAGS([xml],[`${XML2_CONFIG} --cflags`])
-    VLC_ADD_LDFLAGS([xml],[`${XML2_CONFIG} --libs`])
+    VLC_ADD_LIBS([xml],[`${XML2_CONFIG} --libs`])
     dnl depends on the xmlTextReader extension
     CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_xml}"
-    LDFLAGS="${LDFLAGS_save} ${LDFLAGS_xml}"
+    LDFLAGS="${LDFLAGS_save} ${LIBS_xml}"
     AC_CHECK_LIB(xml2,xmlTextReaderConstName,[
       AC_EGREP_HEADER(xmlTextReaderConstName,libxml/xmlreader.h,[
         VLC_ADD_PLUGINS([xml]) ],[
@@ -4268,7 +4299,7 @@ then
   PKG_CHECK_MODULES(SVG, 
        librsvg-2.0 >= 2.9.0,
        [
-         VLC_ADD_LDFLAGS([svg],[$SVG_LIBS])
+         VLC_ADD_LIBS([svg],[$SVG_LIBS])
          VLC_ADD_CFLAGS([svg],[$SVG_CFLAGS])
           VLC_ADD_PLUGINS([svg]) ],
         [AC_MSG_WARN(SVG library not found)])
@@ -4323,10 +4354,10 @@ dnl  VLC_ADD_PLUGINS([qt_video])
 dnl  VLC_ADD_LIBS([qt_video],[-L${QTDIR}/lib])
 dnl  LDFLAGS="${LDFLAGS_save} ${LDFLAGS_qt_video}"
 dnl   AC_CHECK_LIB(qt-mt,main,[
-dnl    VLC_ADD_LDFLAGS([qt_video],[-lqt-mt])
+dnl    VLC_ADD_LIBS([qt_video],[-lqt-mt])
 dnl  ],[
 dnl    AC_CHECK_LIB(qt,main,[
-dnl      VLC_ADD_LDFLAGS([qt_video],[-lqt])
+dnl      VLC_ADD_LIBS([qt_video],[-lqt])
 dnl    ])
 dnl  ])
 dnl  NEED_QTE_MAIN=yes
@@ -4354,7 +4385,7 @@ if test "${enable_hd1000v}" != "no" -a "${CXX}" != "" &&
   if test "$can_build_roku" = "yes"
   then
     VLC_ADD_PLUGINS([hd1000v])
-    VLC_ADD_LDFLAGS([hd1000v],[-lCascade -ldvbpsi -lmad])
+    VLC_ADD_LIBS([hd1000v],[-lCascade -ldvbpsi -lmad])
   fi
   AC_LANG_POP([C++])
 fi
@@ -4380,15 +4411,15 @@ then
     then
       AC_CHECK_HEADERS(ddraw.h,
       [ VLC_ADD_PLUGINS([vout_directx aout_directx])
-        VLC_ADD_LDFLAGS([vout_directx],[-lgdi32])
+        VLC_ADD_LIBS([vout_directx],[-lgdi32])
       ])
       AC_CHECK_HEADERS(GL/gl.h,
       [ VLC_ADD_PLUGINS([glwin32])
-        VLC_ADD_LDFLAGS([glwin32],[-lopengl32 -lgdi32])
+        VLC_ADD_LIBS([glwin32],[-lopengl32 -lgdi32])
       ])
       AC_CHECK_HEADERS(d3d9.h,
       [ VLC_ADD_PLUGINS([direct3d])
-        VLC_ADD_LDFLAGS([direct3d],[-lgdi32])
+        VLC_ADD_LIBS([direct3d],[-lgdi32])
       ])
     else
       AC_MSG_CHECKING(for directX headers in ${with_directx})
@@ -4396,7 +4427,7 @@ then
       then
         VLC_ADD_PLUGINS([vout_directx aout_directx])
         VLC_ADD_CPPFLAGS([vout_directx aout_directx],[-I${with_directx}])
-        VLC_ADD_LDFLAGS([vout_directx],[-lgdi32])
+        VLC_ADD_LIBS([vout_directx],[-lgdi32])
         AC_MSG_RESULT(yes)
       else
         AC_MSG_RESULT(no)
@@ -4436,7 +4467,7 @@ AC_ARG_ENABLE(svgalib,
 if test "${enable_svgalib}" = "yes"
 then
   VLC_ADD_PLUGINS([svgalib])
-  VLC_ADD_LDFLAGS([svgalib],[-lvgagl -lvga])
+  VLC_ADD_LIBS([svgalib],[-lvgagl -lvga])
 fi
 
 dnl
@@ -4452,18 +4483,18 @@ AC_ARG_WITH(directfb,
 if test "${enable_directfb}" = "yes"; then
     have_directfb="false"
     CPPFLAGS_mydirectfb=
-    LDFLAGS_mydirectfb=
+    LIBS_mydirectfb=
     if test "${with_directfb}" != "no" -a -n "${with_directfb}"; then
         dnl Trying the given location
-        CPPFLAGS_save=${CPPFLAGS}
-        LDFLAGS_save=${LDFLAGS}
+        CPPFLAGS_save="${CPPFLAGS}"
+        LIBS_save="${LIBS}"
 
         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/"
+        LIBS_new="-L${with_directfb}/lib/fusion/.libs/ -L${with_directfb}/lib/direct/.libs/"
+        LIBS_new="${LIBS_new} -L${with_directfb}/src/.libs/"
 
         CPPFLAGS="${CPPFLAGS} ${CPPFLAGS_new}"
-        LDFLAGS="${LD_FLAGS} ${LDFLAGS_new}"
+        LIBS="${LIBS} ${LIBS_new}"
 
         dnl FIXME: too obscure
         AC_CHECK_HEADER([directfb.h], [
@@ -4476,10 +4507,10 @@ if test "${enable_directfb}" = "yes"; then
 
         dnl Restore flags
         CPPFLAGS="${CPPFLAGS_save}"
-        LDFLAGS="${LDFLAGS_save}"
+        LIBS="${LIBS_save}"
 
         if test "${have_directfb}" = "true"; then
-            LDFLAGS_mydirectfb="${LDFLAGS_new} -lz -ldl -ldirectfb -lfusion -ldirect -lpthread"
+            LIBS_mydirectfb="${LIBS_new} -lz -ldl -ldirectfb -lfusion -ldirect -lpthread"
             CPPFLAGS_mydirectfb="${CPPFLAGS_new}"
         fi
     else 
@@ -4487,13 +4518,13 @@ if test "${enable_directfb}" = "yes"; then
         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`"
+            LIBS_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}"
+                LIBS_mydirectfb="${DIRECTFB_LIBS}"
                 have_directfb="true"
                 ], [have_directfb="false"])
         fi
@@ -4501,7 +4532,7 @@ if test "${enable_directfb}" = "yes"; then
     if test "${have_directfb}" = "true"; then
         VLC_ADD_PLUGINS([directfb])
         VLC_ADD_CPPFLAGS([directfb],[${CPPFLAGS_mydirectfb}])
-        VLC_ADD_LDFLAGS([directfb],[${LDFLAGS_mydirectfb}])
+        VLC_ADD_LIBS([directfb],[${LIBS_mydirectfb}])
     else 
         AC_MSG_ERROR([cannot find directfb headers and/or libraries ])
     fi
@@ -4517,7 +4548,7 @@ AC_ARG_ENABLE(ggi,
 if test "${enable_ggi}" = "yes"
 then
   VLC_ADD_PLUGINS([ggi])
-  VLC_ADD_LDFLAGS([ggi],[-lggi])
+  VLC_ADD_LIBS([ggi],[-lggi])
   AC_ARG_WITH(ggi,
     [    --with-ggi=PATH       path to libggi],
     [ if test "${with_ggi}" != "no" -a -n "${with_ggi}"
@@ -4546,7 +4577,7 @@ then
    CFLAGS="$CFLAGS -I/usr/include/glide"
    AC_CHECK_HEADER(glide.h,[   
       VLC_ADD_PLUGINS([glide])
-      VLC_ADD_LDFLAGS([glide],[-lglide2x -lm])
+      VLC_ADD_LIBS([glide],[-lglide2x -lm])
       VLC_ADD_CPPFLAGS([glide],[-I/usr/include/glide])
     ],[
       AC_MSG_ERROR([You don't have libglide. Install it or do not use --enable-glide])
@@ -4565,7 +4596,7 @@ then
   if test "${have_aa}" = "true"
   then
     VLC_ADD_PLUGINS([aa])
-    VLC_ADD_LDFLAGS([aa],[-laa])
+    VLC_ADD_LIBS([aa],[-laa])
   fi
 fi
 
@@ -4588,7 +4619,7 @@ then
   then
     VLC_ADD_PLUGINS([caca])
     VLC_ADD_CFLAGS([caca],[`${CACA_CONFIG} --cflags`])
-    VLC_ADD_LDFLAGS([caca],[`${CACA_CONFIG} --plugin-libs`])
+    VLC_ADD_LIBS([caca],[`${CACA_CONFIG} --plugin-libs`])
   fi
 fi
 
@@ -4600,7 +4631,7 @@ AC_ARG_ENABLE(wingdi,
 if test "${enable_wingdi}" != "no"; then
   if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then
     VLC_ADD_PLUGINS([wingdi])
-    VLC_ADD_LDFLAGS([wingdi],[-lgdi32])
+    VLC_ADD_LIBS([wingdi],[-lgdi32])
   fi
   if test "${SYS}" = "mingwce"; then
     VLC_ADD_PLUGINS([wingdi wingapi])
@@ -4625,7 +4656,7 @@ if test "${enable_oss}" != "no" &&
 then
   AC_CHECK_HEADERS(soundcard.h sys/soundcard.h machine/soundcard.h, [
     VLC_ADD_PLUGINS([oss])
-    AC_CHECK_LIB(ossaudio,main,VLC_ADD_LDFLAGS([oss],[-lossaudio]))
+    AC_CHECK_LIB(ossaudio,main,VLC_ADD_LIBS([oss],[-lossaudio]))
   ])
 fi
 
@@ -4641,7 +4672,7 @@ AC_ARG_ENABLE(esd,
      then
        VLC_ADD_PLUGINS([esd])
        VLC_ADD_CFLAGS([esd],[`${ESD_CONFIG} --cflags`])
-       VLC_ADD_LDFLAGS([esd],[`${ESD_CONFIG} --libs`])
+       VLC_ADD_LIBS([esd],[`${ESD_CONFIG} --libs`])
      fi
    fi])
 
@@ -4655,9 +4686,9 @@ AC_ARG_ENABLE(portaudio,
      VLC_ADD_PLUGINS([portaudio])
      VLC_ADD_CXXFLAGS([portaudio],[])
      if test "${SYS}" = "mingw32"; then
-        VLC_ADD_LDFLAGS([portaudio],[-lportaudio -lwinmm -lole32])
+        VLC_ADD_LIBS([portaudio],[-lportaudio -lwinmm -lole32])
      else
-        VLC_ADD_LDFLAGS([portaudio],[-lportaudio])
+        VLC_ADD_LIBS([portaudio],[-lportaudio])
      fi
    fi])
 
@@ -4673,7 +4704,7 @@ AC_ARG_ENABLE(arts,
     then
       VLC_ADD_PLUGINS([arts])
       VLC_ADD_CFLAGS([arts],[`${ARTS_CONFIG} --cflags`])
-      VLC_ADD_LDFLAGS([arts],[`${ARTS_CONFIG} --libs `])
+      VLC_ADD_LIBS([arts],[`${ARTS_CONFIG} --libs `])
     fi
   fi])
 
@@ -4694,7 +4725,7 @@ then
        [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_PLUGINS([alsa])
-    VLC_ADD_LDFLAGS([alsa],[-lasound -lm -ldl])
+    VLC_ADD_LIBS([alsa],[-lasound -lm -ldl])
   else
     if test "${enable_alsa}" = "yes"; then
       AC_MSG_ERROR([Could not find ALSA development headers])
@@ -4710,7 +4741,7 @@ AC_ARG_ENABLE(waveout,
 if test "${enable_waveout}" != "no"; then
   if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then
     VLC_ADD_PLUGINS([waveout])
-    VLC_ADD_LDFLAGS([waveout],[-lwinmm])
+    VLC_ADD_LIBS([waveout],[-lwinmm])
   fi
   if test "${SYS}" = "mingwce"; then
     VLC_ADD_PLUGINS([waveout])
@@ -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
@@ -5385,6 +5419,18 @@ then
   fi
 fi
 
+dnl
+dnl Framebuffer (overlay) plugin
+dnl
+AC_ARG_ENABLE(fbosd,
+  [  --enable-fbosd          fbosd interface support (default disabled)])
+if test "${enable_fbosd}" = "yes"
+then
+  AC_CHECK_HEADERS(linux/fb.h, [
+    VLC_ADD_PLUGINS([fbosd])
+ ])
+fi
+
 dnl
 dnl Visualisation plugin
 dnl
@@ -5455,7 +5501,7 @@ then
     fi
   else
     AC_CHECK_HEADERS(goom/goom.h, [
-      LDFLAGS="${LDFLAGS_save} ${LDFLAGS_goom}"
+      LDFLAGS="${LDFLAGS_save} ${LIBS_goom}"
       AC_CHECK_LIB(goom2, goom_init, [
         VLC_ADD_PLUGINS([goom])
         VLC_ADD_LIBS([goom],[-lgoom2])
@@ -6039,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
@@ -6148,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
@@ -6211,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