]> git.sesse.net Git - vlc/blobdiff - configure.in
* ./src/interface/main.c: check that channels have been created before
[vlc] / configure.in
index 3a898270fa262093d352ca724c1001927aacd791..f0ab7e7fc3bc1c27246e26efa3ddb9e15d7254e7 100644 (file)
@@ -33,8 +33,25 @@ AC_PROG_CPP
 dnl Find the right ranlib, even when cross-compiling
 AC_CHECK_TOOL(RANLIB, ranlib, :)
 
+dnl Check for GNU make
+AC_PATH_PROG(GMAKE, gmake, no)
+if test "x$GMAKE" = "xno"; then
+  AC_CACHE_CHECK([whether GNU make is installed],
+      [ac_cv_gmake],
+      [if make --version | grep -q -i gnu; then
+         ac_cv_gmake="yes"
+       else
+         echo "This software needs you to install GNU make to compile properly."
+         echo "You can get it from http://www.gnu.org/."
+         exit
+       fi])
+  VLC_MAKE="make"
+else
+  VLC_MAKE="gmake"
+fi
+
 dnl Gettext stuff
-ALL_LINGUAS="de fr no ru"
+ALL_LINGUAS="de fr no ru nl"
 
 AC_DEFINE_UNQUOTED(PACKAGE, "vlc")
 AC_DEFINE_UNQUOTED(VERSION, "$VLC_VERSION")
@@ -62,7 +79,7 @@ case x"${target_os}" in
   x*mingw32*)
     SYS=mingw32
     AC_CHECK_TOOL(WINDRES, windres, :)
-    LIB_MPEG_TS="${LIB_MPEG_TS} -lws2_32"
+    LIB_IPV4="${LIB_IPV4} -lws2_32"
     LIB_RC="${LIB_RC} -lws2_32"
     ;;
   x*nto*)
@@ -72,8 +89,9 @@ case x"${target_os}" in
     ;;
   xbeos)
     SYS=beos
-    LIB="${LIB} -lbe -lbind"
+    LIB_VLC="${LIB_VLC} -lbe"
     LIB_BEOS="${LIB_BEOS} -lbe -lgame -lroot -ltracker"
+    LIB_IPV4="${LIB_IPV4} -lbind"
     PLDFLAGS="${PLDFLAGS} -nostart"
     ;;
   x*)
@@ -84,37 +102,45 @@ esac
 dnl Check for system libs needed
 AC_CHECK_FUNCS(gettimeofday select strerror strtod strtol isatty)
 AC_CHECK_FUNC(connect,,[
-  AC_CHECK_LIB(socket,connect,LIB="${LIB} -lsocket")
+  AC_CHECK_LIB(socket,connect,
+    LIB_IPV4="${LIB_IPV4} -lsocket"
+    LIB_VLC="${LIB_VLC} -lsocket"
+)])
+AC_CHECK_FUNC(gethostbyname,,[
+  AC_CHECK_LIB(nsl,gethostbyname,LIB_IPV4="${LIB_IPV4} -lnsl")
 ])
 AC_CHECK_FUNC(gethostbyname,,[
-  AC_CHECK_LIB(nsl,gethostbyname,LIB="${LIB} -lnsl")
+  AC_CHECK_LIB(bind,gethostbyname,LIB_IPV4="${LIB_IPV4} -lbind")
 ])
 AC_CHECK_FUNC(nanosleep,,[
-  AC_CHECK_LIB(rt,nanosleep,LIB="${LIB} -lrt",[
-    AC_CHECK_LIB(posix4,nanosleep,LIB="${LIB} -lposix4")
+  AC_CHECK_LIB(rt,nanosleep,LIB_VLC="${LIB_VLC} -lrt",[
+    AC_CHECK_LIB(posix4,nanosleep,LIB_VLC="${LIB_VLC} -lposix4")
   ])
 ])
 AC_CHECK_FUNCS(usleep)
 AC_CHECK_FUNC(inet_aton,,[
-  AC_CHECK_LIB(resolv,inet_aton,LIB="${LIB} -lresolv")
+  AC_CHECK_LIB(resolv,inet_aton,LIB_VLC="${LIB_IPV4} -lresolv")
+])
+AC_CHECK_FUNC(textdomain,,[
+  AC_CHECK_LIB(intl,textdomain,LIB_VLC="${LIB_VLC} -lintl")
 ])
 AC_CHECK_FUNCS(vasprintf)
 AC_CHECK_FUNCS(swab)
 AC_CHECK_FUNCS([memalign valloc])
 
 AC_CHECK_FUNCS(sigrelse)
-AC_CHECK_FUNCS(getpwuid_r getpwuid)
+AC_CHECK_FUNCS(getpwuid)
 
 dnl Check for getopt
 NEED_GETOPT=0
 AC_CHECK_FUNC(getopt_long,[AC_DEFINE(HAVE_GETOPT_LONG,1,long getopt support)],
 [ # FreeBSD has a gnugetopt library for this:
   AC_CHECK_LIB([gnugetopt],[getopt_long],
-    [AC_DEFINE(HAVE_GETOPT_LONG,1,getopt support) LIB="${LIB} -lgnugetopt"],
+    [AC_DEFINE(HAVE_GETOPT_LONG,1,getopt support) LIB_VLC="${LIB_VLC} -lgnugetopt"],
     [NEED_GETOPT=1])])
 
 AC_TYPE_SIGNAL
-AC_CHECK_LIB(dl,dlopen,LIB="${LIB} -ldl")
+AC_CHECK_LIB(dl,dlopen,LIB_VLC="${LIB_VLC} -ldl")
 AC_CHECK_LIB(m,cos,
   LIB_IMDCT="${LIB_IMDCT} -lm"
   LIB_FILTER_DISTORT="${LIB_FILTER_DISTORT} -lm")
@@ -122,6 +148,7 @@ AC_CHECK_LIB(m,pow,
   LIB_IMDCT="${LIB_IMDCT} -lm"
   LIB_IMDCT3DN="${LIB_IMDCT3DN} -lm"
   LIB_IMDCTSSE="${LIB_IMDCTSSE} -lm"
+  LIB_CHROMA_I420_RGB="${LIB_CHROMA_I420_RGB} -lm"
 )
 
 dnl Check for pthreads - borrowed from XMMS
@@ -282,12 +309,12 @@ if test x"$ac_cv_c_omit_frame_pointer" != x"no"; then
 fi
 
 dnl Check for Darwin plugin linking flags
-AC_CACHE_CHECK([if \$CC accepts -bundle -undefined error],
+AC_CACHE_CHECK([if \$CC accepts -bundle -undefined error -lcc_dynamic],
     [ac_cv_ld_darwin],
-    [CFLAGS="${save_CFLAGS} -bundle -undefined error"
+    [CFLAGS="${save_CFLAGS} -bundle -undefined error -lcc_dynamic"
      AC_TRY_COMPILE([],,ac_cv_ld_darwin=yes, ac_cv_ld_darwin=no)])
 if test x"$ac_cv_ld_darwin" != x"no"; then
-    PLDFLAGS="${PLDFLAGS} -bundle -undefined error"
+    PLDFLAGS="${PLDFLAGS} -bundle -undefined error -lcc_dynamic"
 fi
 
 dnl Check for standard plugin linking flags
@@ -487,7 +514,7 @@ AC_CACHE_CHECK([if linker needs -framework vecLib],
 if test x"$ac_cv_ld_altivec" != x"no"; then
   LIB_IDCTALTIVEC="${LIB_IDCTALTIVEC} -framework vecLib"
   LIB_MOTIONALTIVEC="${LIB_MOTIONALTIVEC} -framework vecLib"
-  LIB="${LIB} -framework vecLib"
+  LIB_VLC="${LIB_VLC} -framework vecLib"
 fi
 fi # end if mingw32
 
@@ -823,15 +850,25 @@ then
   if test "x${SYS}" = "xdarwin"
   then
     PLUGINS="${PLUGINS} vcd"
-    LIB_VCD="${LIB_VCD} -framework IOKit" 
+    LIB_VCD="${LIB_VCD} -framework IOKit -framework CoreFoundation
   fi
 fi
 
+dnl
+dnl  Satellite input module
+dnl
+AC_ARG_ENABLE(satellite,
+  [  --enable-satellite       Satellite card support (default disabled)],
+  [ if test x$enable_satellite = xyes
+    then
+      BUILTINS="${BUILTINS} satellite"
+      AC_DEFINE(HAVE_SATELLITE, 1, define if compiling with satellite card support)
+    fi])
+
 dnl
 dnl  ipv6 plugin
 dnl
-AC_EGREP_HEADER(in6_addr,netinet/in.h,[
-  PLUGINS="${PLUGINS} ipv6"])
+AC_CHECK_FUNC(inet_pton,[PLUGINS="${PLUGINS} ipv6"])
 
 dnl
 dnl  Codec plugins
@@ -844,7 +881,7 @@ dnl  mad plugin
 dnl
 AC_ARG_ENABLE(mad,
   [  --enable-mad            libmad module (default disabled)])
-if test x$enable_mad == xyes
+if test x$enable_mad = xyes
 then
   PLUGINS="${PLUGINS} mad"
   LIB_MAD="${LIB_MAD} -lmad"
@@ -888,7 +925,7 @@ if test "x$enableval" != "xno" -a x$SYS != xmingw32
   then
     AC_CHECK_HEADERS(a52dec/a52.h, [
       BUILTINS="${BUILTINS} a52"
-      LIB_A52="${LIB_A52} -la52"
+      LIB_A52="${LIB_A52} -la52 -lm"
      ],[])
 fi
 
@@ -1070,7 +1107,7 @@ dnl  GGI module
 dnl
 AC_ARG_ENABLE(ggi,
   [  --enable-ggi            GGI support (default disabled)])
-if test x$enable_ggi == xyes
+if test x$enable_ggi = xyes
 then
   PLUGINS="${PLUGINS} ggi"
   LIB_GGI="${LIB_GGI} -lggi"
@@ -1088,7 +1125,7 @@ dnl  Glide module
 dnl
 AC_ARG_ENABLE(glide,
   [  --enable-glide          Glide (3dfx) support (default disabled)])
-if test x$enable_glide == xyes
+if test x$enable_glide = xyes
 then
   PLUGINS="${PLUGINS} glide"
   LIB_GLIDE="${LIB_GLIDE} -lglide2x -lm"
@@ -1102,6 +1139,21 @@ then
       fi ])
 fi
 
+dnl
+dnl  AA plugin
+dnl
+AC_ARG_ENABLE(aa,
+  [  --enable-aa             aalib output (default disabled)])
+if test x$enable_aa = xyes
+then
+  AC_CHECK_HEADER(aalib.h,have_aa="true",have_aa="false")
+  if test x$have_aa = xtrue
+  then
+    PLUGINS="${PLUGINS} aa"
+    LIB_AA="${LIB_AA} -laa"
+  fi
+fi
+
 dnl
 dnl  Audio plugins
 dnl
@@ -1305,15 +1357,15 @@ AC_ARG_ENABLE(macosx,
   [if test x$enable_macosx = xyes
    then
      BUILTINS="${BUILTINS} macosx"
-     LIB_MACOSX="${LIB_MACOSX} -framework CoreAudio -framework Cocoa -framework AGL -framework QuickTime -lobjc"
+     LIB_MACOSX="${LIB_MACOSX} -framework CoreAudio -framework AudioToolbox -framework Cocoa -framework AGL -framework QuickTime -lobjc"
      CFLAGS_MACOSX="${CFLAGS_MACOSX} -ObjC"
-     LIB="${LIB} -ObjC"
+     LIB_COMMON="${LIB_COMMON} -ObjC"
    fi],
   [AC_CHECK_HEADERS(Cocoa/Cocoa.h,
      BUILTINS="${BUILTINS} macosx"
-     LIB_MACOSX="${LIB_MACOSX} -framework CoreAudio -framework Cocoa -framework AGL -framework QuickTime -lobjc"
+     LIB_MACOSX="${LIB_MACOSX} -framework CoreAudio -framework AudioToolbox -framework Cocoa -framework AGL -framework QuickTime -lobjc"
      CFLAGS_MACOSX="${CFLAGS_MACOSX} -ObjC"
-     LIB="${LIB} -ObjC"
+     LIB_COMMON="${LIB_COMMON} -ObjC"
    )])
 
 dnl
@@ -1452,7 +1504,7 @@ AC_ARG_ENABLE(cprof,
 [  --enable-cprof          cprof profiling (default disabled)],
 [ if test x$enableval = xyes;
   then
-    LIB="${LIB} -lcprof"
+    LIB_COMMON="${LIB_COMMON} -lcprof"
     CPROF=1
   fi
 ])
@@ -1485,7 +1537,7 @@ AC_ARG_ENABLE(st,
     fi])
 ])
 
-LIB="${LIB} ${THREAD_LIB}"
+LIB_COMMON="${LIB_COMMON} ${THREAD_LIB}"
 
 dnl
 dnl  Plug-ins - this must be AT THE END
@@ -1498,6 +1550,16 @@ AC_ARG_ENABLE(plugins,
      PLUGINS=
    fi])
 
+dnl Automagically disable plug-ins if there is no system support for .so files
+dnl don't forget vlc-win32 still can load .so as plugins
+if test x$ac_cv_header_dlfcn_h = xno -a x$ac_cv_header_image_h = xno -a x$SYS != xmingw32
+then
+  echo "*** Your system doesn't have plug-in support. All plug-ins will be compiled"
+  echo "as built-in"
+  BUILTINS="${BUILTINS} ${PLUGINS}"
+  PLUGINS=
+fi
+
 dnl
 dnl  Stuff used by the program
 dnl
@@ -1541,10 +1603,15 @@ AC_SUBST(LDFLAGS)
 AC_SUBST(PLDFLAGS)
 AC_SUBST(SOFLAGS)
 
-AC_SUBST(LIB)
+AC_SUBST(LIB_COMMON)
+AC_SUBST(LIB_VLC)
+
+AC_SUBST(LIB_A52)
+AC_SUBST(LIB_AA)
 AC_SUBST(LIB_ALSA)
 AC_SUBST(LIB_ARTS)
 AC_SUBST(LIB_BEOS)
+AC_SUBST(LIB_CHROMA_I420_RGB)
 AC_SUBST(LIB_DARWIN)
 AC_SUBST(LIB_DIRECTX)
 AC_SUBST(LIB_DSP)
@@ -1560,8 +1627,9 @@ AC_SUBST(LIB_IDCTALTIVEC)
 AC_SUBST(LIB_IMDCT)
 AC_SUBST(LIB_IMDCT3DN)
 AC_SUBST(LIB_IMDCTSSE)
+AC_SUBST(LIB_IPV4)
+AC_SUBST(LIB_IPV6)
 AC_SUBST(LIB_KDE)
-AC_SUBST(LIB_A52)
 AC_SUBST(LIB_LIBDVDCSS)
 AC_SUBST(LIB_LIBDVDREAD)
 AC_SUBST(LIB_LIRC)
@@ -1580,7 +1648,9 @@ AC_SUBST(LIB_WIN32)
 AC_SUBST(LIB_X11)
 AC_SUBST(LIB_XVIDEO)
 
+AC_SUBST(CFLAGS_COMMON)
 AC_SUBST(CFLAGS_VLC)
+
 AC_SUBST(CFLAGS_ARTS)
 AC_SUBST(CFLAGS_DVD)
 AC_SUBST(CFLAGS_DVDREAD)
@@ -1652,11 +1722,11 @@ which modules get compiled as plugins.
 "
 if test x${HAVE_VLC} = x1
 then
-  echo "To build vlc and its plugins, type \`make'."
+  echo "To build vlc and its plugins, type \`$VLC_MAKE'."
 fi
 if test x${NEED_LIBDVDCSS} = x1
 then
-  echo "To build libdvdcss only, type \`make libdvdcss'."
+  echo "To build libdvdcss only, type \`$VLC_MAKE libdvdcss'."
 fi
 echo ""