]> git.sesse.net Git - vlc/blobdiff - configure.ac
Hrm
[vlc] / configure.ac
index 2194b78bc43dd811d0e14876d0ae07010581e686..da361101ef8be68fc128c66b943a68ceed405d8f 100644 (file)
@@ -274,6 +274,8 @@ dnl
 AC_DISABLE_STATIC
 AC_LIBTOOL_DLOPEN
 dnl AC_LIBTOOL_WIN32_DLL - couldn't get libtool to work on Win32 so far
+m4_undefine([AC_PROG_F77])
+m4_defun([AC_PROG_F77],[])
 AC_PROG_LIBTOOL
 
 AC_ARG_ENABLE(libtool,
@@ -298,7 +300,7 @@ fi
 dnl
 dnl Gettext stuff
 dnl
-ALL_LINGUAS="ca cs da de en_GB es fr gl he hi hu it ja ka ko ms nl oc pt_BR ro ru sk sv tr zh_CN zh_TW"
+ALL_LINGUAS="ca cs da de en_GB es fr gl he hi hu it ja ka ko ms nl oc pt_BR ro ru sk sl sv tr zh_CN zh_TW"
 AM_GNU_GETTEXT_VERSION(0.11.5)
 AM_GNU_GETTEXT
 AS_IF([test "${nls_cv_force_use_gnu_gettext}" = "yes"], [
@@ -565,10 +567,10 @@ AC_CHECK_LIB(m,cos,[
   VLC_ADD_LDFLAGS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise],[-lm])
 ])
 AC_CHECK_LIB(m,pow,[
-  VLC_ADD_LDFLAGS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer param_eq vlc freetype mpc dmo quicktime realaudio galaktos],[-lm])
+  VLC_ADD_LDFLAGS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer param_eq vlc vorbis freetype mod mpc dmo quicktime realaudio galaktos opengl],[-lm])
 ])
 AC_CHECK_LIB(m,sqrt,[
-  VLC_ADD_LDFLAGS([headphone_channel_mixer normvol speex],[-lm])
+  VLC_ADD_LDFLAGS([headphone_channel_mixer normvol speex mono],[-lm])
 ])
 AC_CHECK_LIB(m,ceil,[
   VLC_ADD_LDFLAGS([mosaic],[-lm])
@@ -886,19 +888,16 @@ AC_CACHE_CHECK([for ntohl in sys/param.h],
 if test "${ac_cv_c_ntohl_sys_param_h}" != "no"; then
     AC_DEFINE(NTOHL_IN_SYS_PARAM_H, 1, Define if <sys/param.h> defines ntohl.)
 fi
+CFLAGS="${CFLAGS_save}"
 
-RDC_PROG_CC_WFLAGS_IFELSE([all extra no-unused-parameter conversion unreachable-code sign-compare undef])
+RDC_PROG_CC_WFLAGS([all extra no-unused-parameter sign-compare undef pointer-arith bad-function-cast cast-align write-strings old-style-definition missing-prototypes packed volatile-register-var])
+RDC_PROG_CC_FLAGS_IFELSE([-pipe])
 
-dnl Check for -pipe
-AC_CACHE_CHECK([if \$CC accepts -pipe],
-    [ac_cv_c_pipe],
-    [CFLAGS="${CFLAGS_save} -pipe"
-     AC_TRY_COMPILE([],,ac_cv_c_pipe=yes, ac_cv_c_pipe=no)])
-if test "${ac_cv_c_pipe}" != "no"; then
-    CFLAGS_save="${CFLAGS_save} -pipe"; CFLAGS="${CFLAGS_save}"
-    CXXFLAGS_save="${CXXFLAGS_save} -pipe"; CXXFLAGS="${CXXFLAGS_save}"
-    OBJCFLAGS_save="${OBJCFLAGS_save} -pipe"; OBJCFLAGS="${OBJCFLAGS_save}"
-fi
+dnl This helps detect broken plugins with undefined symbols
+dnl Better fail loudly at build-time than silenty at run-time.
+RDC_PROG_LINK_FLAGS_IFELSE([-Wl,-z,defs], [
+  VLC_ADD_LDFLAGS([plugin],[-Wl,-z,defs])
+])
 
 dnl Check for various optimization flags
 AC_CACHE_CHECK([if \$CC accepts -Os],
@@ -2455,8 +2454,8 @@ then
       dnl  Use a custom mod
       AC_MSG_RESULT(${real_mod_tree}/src/.libs/libmodplug.a)
       VLC_ADD_PLUGINS([mod])
-      VLC_ADD_LDFLAGS([mod],[${real_mod_tree}/src/.libs/libmodplug.a])
-      VLC_ADD_CFLAGS([mod],[-I${real_mod_tree}/include])
+      VLC_ADD_LDFLAGS([mod],[${real_mod_tree}/src/.libs/libmodplug.a -lstdc++])
+      VLC_ADD_CXXFLAGS([mod],[-I${real_mod_tree}/include])
     else
       dnl  The given mod wasn't built
       AC_MSG_RESULT(no)
@@ -2466,7 +2465,7 @@ then
     AC_CHECK_HEADERS(libmodplug/modplug.h, [
       VLC_ADD_PLUGINS([mod])
       VLC_ADD_CXXFLAGS([mod],[])
-      VLC_ADD_LDFLAGS([mod],[-lmodplug])])
+      VLC_ADD_LDFLAGS([mod],[-lmodplug -lstdc++])])
   fi
 fi
 
@@ -3293,10 +3292,10 @@ then
   else
     AC_CHECK_HEADERS(vorbis/codec.h, [
       VLC_ADD_PLUGINS([vorbis])
-      VLC_ADD_LDFLAGS([vorbis],[-lvorbis -logg]) ],[])
+      VLC_ADD_LDFLAGS([vorbis],[-lvorbis -logg -lm]) ],[])
 
     AC_CHECK_HEADERS(vorbis/vorbisenc.h, [
-      VLC_ADD_LDFLAGS([vorbis],[-lvorbisenc]) ],[])
+      VLC_ADD_LDFLAGS([vorbis],[-lvorbisenc -lm]) ],[])
   fi
 fi
 
@@ -3595,6 +3594,24 @@ if test "${enable_glx}" != "no" &&
   CPPFLAGS="${CPPFLAGS_save}"
 fi
 
+dnl
+dnl  XVMC module
+dnl  (enabled by default except on win32)
+dnl
+AC_ARG_ENABLE(xvmc,
+  [  --enable-xvmc            XVMC support (default disabled)])
+if test "${enable_xvmc}" = "yes" &&
+  (test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" ||
+   test "${enable_xvmc}" = "yes"); then
+  CPPFLAGS="${CPPFLAGS_save} ${X_FLAGS}"
+  AC_CHECK_HEADERS(X11/extensions/vldXvMC.h, [
+    VLC_ADD_PLUGINS([xvmc])
+    VLC_ADD_LDFLAGS([xvmc],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext])
+    VLC_ADD_CPPFLAGS([xvmc],[${X_CFLAGS}])
+  ])
+  CPPFLAGS="${CPPFLAGS_save}"
+fi
+
 dnl
 dnl  Check for the Xinerama extension
 dnl
@@ -4419,7 +4436,7 @@ AS_IF([test "x${enable_upnp}" != "xno"], [
     AC_MSG_ERROR([cannot find Intel UPnP SDK (libupnp)])
   ])
   AS_IF([test "${has_upnp}" = "yes"], [
-    VLC_ADD_LDFLAGS([upnp_intel], [-lupnp])
+    VLC_ADD_LDFLAGS([upnp_intel], [-lupnp -lixml])
   ])
 ], [
   has_upnp="no"
@@ -4671,6 +4688,18 @@ then
     fi
     VLC_ADD_LDFLAGS([wxwidgets],[`${WX_CONFIG} --libs`])
     VLC_ADD_CXXFLAGS([wxwidgets],[`${WX_CONFIG} --cxxflags`])
+    # check if we must link against gtk2 libs
+    # if __WXGTK20__ && __WXGTK__ are defined
+    # for modules/gui/wxwidgets/video.cpp
+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
+#include <wx/wx.h>
+#ifdef __WXGTK20__
+#error ok, we need to link against gtk2
+#endif
+        ])],[WXGTK=no],[WXGTK=yes])
+    if test "$WXGTK" = "yes"; then
+      ${PKG_CONFIG} --exists gtk+-2.0 && VLC_ADD_LDFLAGS([wxwidgets],[`$PKG_CONFIG --libs gtk+-2.0`])
+    fi
     if ${WX_CONFIG} --unicode
     then 
       # wxwidgets should provide the following flags but does not
@@ -4708,6 +4737,8 @@ then
     CPPFLAGS="${CPPFLAGS_save}"
     AC_LANG_POP(C++)
   fi
+  dnl WxWidgets plugin will yield incorrect code without this
+  VLC_ADD_CXXFLAGS([wxwidgets], [-fno-strict-aliasing])
 fi
 
 dnl
@@ -5140,11 +5171,11 @@ AM_CONDITIONAL(LOADER, [test "${enable_loader}" = "yes"])
 AS_IF([test "${enable_loader}" = "yes"],
   [ VLC_ADD_PLUGINS([dmo])
     VLC_ADD_CPPFLAGS([dmo],[-I../../../@top_srcdir@/loader])
-    VLC_ADD_LDFLAGS([dmo],[../../../loader/libloader.la])
+    VLC_ADD_LDFLAGS([dmo],[../../../loader/libloader.la -lpthread])
     VLC_ADD_CPPFLAGS([quicktime],[-I../../@top_srcdir@/loader])
-    VLC_ADD_LDFLAGS([quicktime],[../../loader/libloader.la])
+    VLC_ADD_LDFLAGS([quicktime],[../../loader/libloader.la -lpthread])
     VLC_ADD_CPPFLAGS([realaudio],[-I../../@top_srcdir@/loader -DLOADER])
-    VLC_ADD_LDFLAGS([realaudio],[../../loader/libloader.la])
+    VLC_ADD_LDFLAGS([realaudio],[../../loader/libloader.la -ldl -lpthread])
   ])
 
 dnl