]> git.sesse.net Git - vlc/blobdiff - configure.in
* GNU make detection
[vlc] / configure.in
index 0167695402fc3f9e56654f91c60498382e72ca1a..a17e8a63ceb193fbee6145b15d9da031e08466a8 100644 (file)
@@ -33,6 +33,23 @@ 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"
 
@@ -72,7 +89,7 @@ case x"${target_os}" in
     ;;
   xbeos)
     SYS=beos
-    LIB="${LIB} -lbe -lbind"
+    LIB_IPV4="${LIB_IPV4} -lbind"
     LIB_BEOS="${LIB_BEOS} -lbe -lgame -lroot -ltracker"
     PLDFLAGS="${PLDFLAGS} -nostart"
     ;;
@@ -84,37 +101,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")
@@ -487,7 +512,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
 
@@ -827,11 +852,21 @@ then
   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 +879,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"
@@ -1070,7 +1105,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 +1123,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 +1137,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
@@ -1307,13 +1357,13 @@ AC_ARG_ENABLE(macosx,
      BUILTINS="${BUILTINS} macosx"
      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 AudioToolbox -framework Cocoa -framework AGL -framework QuickTime -lobjc"
      CFLAGS_MACOSX="${CFLAGS_MACOSX} -ObjC"
-     LIB="${LIB} -ObjC"
+     LIB_COMMON="${LIB_COMMON} -ObjC"
    )])
 
 dnl
@@ -1452,7 +1502,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 +1535,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 +1548,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,7 +1601,11 @@ 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)
@@ -1563,7 +1627,6 @@ 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)
@@ -1582,7 +1645,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)
@@ -1654,11 +1719,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 ""