X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;ds=sidebyside;f=configure.in;h=bfb21f5b13415045553743ecc1da5f13ab162b29;hb=cf3d0f29d2487ff675ca54ba3588040f3b18621a;hp=3cf19d1a1b03c564b81877e5847f657cf33cedbb;hpb=53b978f8650fd329bf5298a05c9f8a055ac56fe4;p=vlc diff --git a/configure.in b/configure.in index 3cf19d1a1b..bfb21f5b13 100644 --- a/configure.in +++ b/configure.in @@ -30,6 +30,9 @@ AC_PROG_MAKE_SET AC_PROG_CC AC_PROG_CPP +dnl Find the right ranlib, even when cross-compiling +AC_CHECK_TOOL(RANLIB, ranlib, :) + dnl Gettext stuff ALL_LINGUAS="de fr ru" @@ -58,9 +61,10 @@ AC_ARG_WITH(words, *) dnl Try to guess endianness by matching patterns on a compiled dnl binary, by looking for an ASCII or EBCDIC string - ac_cv_c_bigendian=unknown - AC_MSG_CHECKING(what the byte order looks to be)[ - cat >conftest.c <conftest.c <config.log 2>&1 \ - && test -f conftest.o - then - if test `grep -l BIGenDianSyS conftest.o` - then - AC_MSG_RESULT("big endian") - ac_cv_c_bigendian=yes - fi - if test `grep -l LiTTleEnDian conftest.o` + ] + if test -f conftest.c + then + if ${CC-cc} conftest.c -o conftest.o >config.log 2>&1 \ + && test -f conftest.o then - AC_MSG_RESULT("little endian") - ac_cv_c_bigendian=no + if test `grep -l BIGenDianSyS conftest.o` + then + ac_cv_c_bigendian=yes + fi + if test `grep -l LiTTleEnDian conftest.o` + then + ac_cv_c_bigendian=no + fi fi fi - fi + ]) if test $ac_cv_c_bigendian = xunknown then AC_MSG_ERROR([Could not guess endianness, please use --with-words]) fi - dnl Now we know what to use for endianness, just put it in the header - if test $ac_cv_c_bigendian = yes - then - cat >> confdefs.h <<\EOF -#define WORDS_BIGENDIAN 1 -EOF - fi ;; esac +dnl Now we know what to use for endianness, just put it in the header +if test $ac_cv_c_bigendian = yes +then + AC_DEFINE(WORDS_BIGENDIAN, 1, big endian system) +fi dnl Check for system libs needed AC_CHECK_FUNCS(gettimeofday select strerror strtod strtol isatty) @@ -176,13 +177,33 @@ AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/time.h sys/times.h) AC_CHECK_HEADERS(sys/soundcard.h machine/soundcard.h) AC_CHECK_HEADERS(dlfcn.h image.h) AC_CHECK_HEADERS(arpa/inet.h net/if.h netinet/in.h sys/socket.h) -AC_CHECK_HEADERS(machine/param.h) +AC_CHECK_HEADERS(machine/param.h sys/shm.h) AC_HEADER_TIME dnl Check for threads library AC_CHECK_HEADERS(cthreads.h pthread.h kernel/scheduler.h kernel/OS.h) +dnl Check for DPMS +if test x$SYS != xmingw32 +then + if test x$x_includes = xNONE; then + x_includes=/usr/X11R6/include + fi + if test x$x_libraries = xNONE; then + x_libraries=/usr/X11R6/lib + fi + saved_CPPFLAGS=$CPPFLAGS + CPPFLAGS="$CPPFLAGS -I$x_includes" + AC_CHECK_HEADERS(X11/extensions/dpms.h, [ + AC_EGREP_HEADER(DPMSInfo,X11/extensions/dpms.h,[ + AC_DEFINE(DPMSINFO_IN_DPMS_H, 1, + Define if defines DPMSInfo.) + ]) + ]) + CPPFLAGS=$saved_CPPFLAGS +fi + dnl Check for ntohl, etc. AC_CACHE_CHECK([for ntohl in sys/param.h], [ac_cv_c_ntohl_sys_param_h], @@ -203,6 +224,84 @@ if test x"$ac_cv_c_inline_limit" != x"no"; then save_CFLAGS="${save_CFLAGS} -finline-limit-30000" fi +dnl Check for -W or -w flags +AC_CACHE_CHECK([if \$CC accepts -Wall -Winline], + [ac_cv_c_Wall_Winline], + [CFLAGS="${save_CFLAGS} -Wall -Winline" + AC_TRY_COMPILE([],,ac_cv_c_Wall_Winline=yes, ac_cv_c_Wall_Winline=no)]) +if test x"$ac_cv_c_Wall_Winline" != x"no"; then + save_CFLAGS="${save_CFLAGS} -Wall -Winline" +else + AC_CACHE_CHECK([if \$CC accepts -wall -winline], + [ac_cv_c_wall_winline], + [CFLAGS="${save_CFLAGS} -wall -winline" + AC_TRY_COMPILE([],,ac_cv_c_wall_winline=yes, ac_cv_c_wall_winline=no)]) + if test x"$ac_cv_c_wall_winline" != x"no"; then + save_CFLAGS="${save_CFLAGS} -wall -winline" + fi +fi + +dnl Check for -pipe +AC_CACHE_CHECK([if \$CC accepts -pipe], + [ac_cv_c_pipe], + [CFLAGS="${save_CFLAGS} -pipe" + AC_TRY_COMPILE([],,ac_cv_c_pipe=yes, ac_cv_c_pipe=no)]) +if test x"$ac_cv_c_pipe" != x"no"; then + save_CFLAGS="${save_CFLAGS} -pipe" +fi + +dnl Check for various optimization flags +AC_CACHE_CHECK([if \$CC accepts -O3], + [ac_cv_c_o3], + [CFLAGS="${save_CFLAGS} -O3" + AC_TRY_COMPILE([],,ac_cv_c_o3=yes, ac_cv_c_o3=no)]) +if test x"$ac_cv_c_o3" != x"no"; then + CFLAGS_OPTIM="${CFLAGS_OPTIM} -O3" +else + AC_CACHE_CHECK([if \$CC accepts -O2], + [ac_cv_c_o2], + [CFLAGS="${save_CFLAGS} -O2" + AC_TRY_COMPILE([],,ac_cv_c_o2=yes, ac_cv_c_o2=no)]) + if test x"$ac_cv_c_o2" != x"no"; then + CFLAGS_OPTIM="${CFLAGS_OPTIM} -O2" + else + AC_CACHE_CHECK([if \$CC accepts -O], + [ac_cv_c_o], + [CFLAGS="${save_CFLAGS} -O" + AC_TRY_COMPILE([],,ac_cv_c_o=yes, ac_cv_c_o=no)]) + if test x"$ac_cv_c_o" != x"no"; then + CFLAGS_OPTIM="${CFLAGS_OPTIM} -O" + fi + fi +fi + +dnl Check for -ffast-math +AC_CACHE_CHECK([if \$CC accepts -ffast-math], + [ac_cv_c_fast_math], + [CFLAGS="${save_CFLAGS} -ffast-math" + AC_TRY_COMPILE([],,ac_cv_c_fast_math=yes, ac_cv_c_fast_math=no)]) +if test x"$ac_cv_c_fast_math" != x"no"; then + CFLAGS_OPTIM="${CFLAGS_OPTIM} -ffast-math" +fi + +dnl Check for -funroll-loops +AC_CACHE_CHECK([if \$CC accepts -funroll-loops], + [ac_cv_c_unroll_loops], + [CFLAGS="${save_CFLAGS} -funroll-loops" + AC_TRY_COMPILE([],,ac_cv_c_unroll_loops=yes, ac_cv_c_unroll_loops=no)]) +if test x"$ac_cv_c_unroll_loops" != x"no"; then + CFLAGS_OPTIM="${CFLAGS_OPTIM} -funroll-loops" +fi + +dnl Check for -fomit-frame-pointer +AC_CACHE_CHECK([if \$CC accepts -fomit-frame-pointer], + [ac_cv_c_omit_frame_pointer], + [CFLAGS="${save_CFLAGS} -fomit-frame-pointer" + AC_TRY_COMPILE([],,ac_cv_c_omit_frame_pointer=yes, ac_cv_c_omit_frame_pointer=no)]) +if test x"$ac_cv_c_omit_frame_pointer" != x"no"; then + CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fomit-frame-pointer" +fi + dnl Check for Darwin plugin linking flags AC_CACHE_CHECK([if \$CC accepts -bundle -undefined error], [ac_cv_ld_darwin], @@ -292,18 +391,28 @@ if test x"$ac_cv_c_boolean_t_cthreads_h" != x"no"; then AC_DEFINE(BOOLEAN_T_IN_CTHREADS_H, 1, Define if defines boolean_t.) fi -ARCH=${target_cpu} +dnl +dnl Check the CPU +dnl +case x"${target_cpu}" in + x) + ARCH=unknown + ;; + *) + ARCH=${target_cpu} + ;; +esac dnl dnl default modules dnl -BUILTINS="${BUILTINS} mpeg_es mpeg_ps mpeg_ts memcpy idct idctclassic motion imdct downmix chroma_i420_rgb chroma_i420_yuy2 chroma_i422_yuy2 mpeg_adec lpcm_adec ac3_adec mpeg_vdec" -PLUGINS="${PLUGINS} ac3_spdif spudec filter_deinterlace filter_invert filter_wall filter_transform filter_distort" +BUILTINS="${BUILTINS} mpeg_es mpeg_ps mpeg_ts memcpy idct idctclassic motion imdct downmix chroma_i420_rgb chroma_i420_yuy2 chroma_i422_yuy2 chroma_i420_ymga mpeg_adec ac3_adec mpeg_vdec" +PLUGINS="${PLUGINS} lpcm_adec ac3_spdif spudec filter_deinterlace filter_invert filter_wall filter_transform filter_distort" dnl dnl Accelerated modules dnl -MMX_MODULES="memcpymmx idctmmx motionmmx chroma_i420_rgb_mmx chroma_i420_yuy2_mmx chroma_i422_yuy2_mmx" +MMX_MODULES="memcpymmx idctmmx motionmmx chroma_i420_rgb_mmx chroma_i420_yuy2_mmx chroma_i422_yuy2_mmx chroma_i420_ymga_mmx" MMXEXT_MODULES="memcpymmxext idctmmxext motionmmxext" THREEDNOW_MODULES="memcpy3dn imdct3dn downmix3dn" SSE_MODULES="imdctsse downmixsse" @@ -396,39 +505,43 @@ 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" fi dnl dnl Check the operating system dnl -case ${target_os} in - linux*) +case x"${target_os}" in + x) + SYS=unknown + ;; + xlinux*) SYS=linux ;; - bsdi*) + xbsdi*) SYS=bsdi ;; - darwin*) + xdarwin*) SYS=darwin ;; - *mingw32*) + x*mingw32*) SYS=mingw32 AC_CHECK_TOOL(WINDRES, windres, :) - LIB_MPEG_TS="-lws2_32" - LIB_RC="-lws2_32" + LIB_MPEG_TS="${LIB_MPEG_TS} -lws2_32" + LIB_RC="${LIB_RC} -lws2_32" ;; - *nto*) + x*nto*) SYS=nto LIB_X11="${LIB_X11} -lsocket" LIB_XVIDEO="${LIB_XVIDEO} -lsocket" ;; - beos) + xbeos) SYS=beos LIB="${LIB} -lbe" LIB_BEOS="${LIB_BEOS} -lbe -lgame -lroot -ltracker" PLDFLAGS="${PLDFLAGS} -nostart" ;; - *) + x*) SYS=${target_os} ;; esac @@ -436,8 +549,8 @@ esac dnl dnl DVD and VCD devices dnl -case $SYS in - mingw32) +case x$SYS in + xmingw32) DVD_DEVICE="E:" VCD_DEVICE="E:" ;; @@ -602,14 +715,6 @@ AC_ARG_ENABLE(debug, [ --enable-debug Enable debug mode (default disabled)], [ if test x$enableval = xyes; then DEBUG=1; fi ]) -dnl -dnl Trace mode -dnl -TRACE=0 -AC_ARG_ENABLE(trace, -[ --enable-trace Enable trace mode (default disabled)], -[ if test x$enableval = xyes; then TRACE=1; fi ]) - dnl dnl Profiling dnl @@ -666,88 +771,119 @@ AC_ARG_WITH(dvdcss, [ case "x${withval}" in xlocal-static|xyes) # local libdvdcss, statically linked + BUILTINS="${BUILTINS} dvd" if test x${CAN_BUILD_LIBDVDCSS} = x1 then NEED_LIBDVDCSS=1 STATIC_LIBDVDCSS=1 - BUILTINS="${BUILTINS} dvd" CFLAGS_DVD="${CFLAGS_DVD} -I../../extras/libdvdcss" LIB_DVD="${LIB_DVD} lib/libdvdcss.a ${LIB_LIBDVDCSS}" - LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} ../../lib/libdvdcss.a ${LIB_LIBDVDCSS}" - LIB_DVDREAD_PLUGIN="${LIB_DVDREAD_PLUGIN} ../../lib/libdvdcss.a ${LIB_LIBDVDCSS}" fi ;; xlocal-shared) # local libdvdcss, dynamically linked + PLUGINS="${PLUGINS} dvd" if test x${CAN_BUILD_LIBDVDCSS} = x1 then NEED_LIBDVDCSS=1 - BUILTINS="${BUILTINS} dvd" CFLAGS_DVD="${CFLAGS_DVD} -I../../extras/libdvdcss" - LIB_DVD="${LIB_DVD} -Llib -ldvdcss" - LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} -L../../lib -ldvdcss" - LIB_DVDREAD_PLUGIN="${LIB_DVDREAD_PLUGIN} -L../../lib -ldvdcss" + LIB_DVD="${LIB_DVD} -L../../lib -ldvdcss" fi ;; xno) # don't use libdvdcss at all, build a DVD module that can dlopen() it - DUMMY_LIBDVDCSS=1 BUILTINS="${BUILTINS} dvd" + DUMMY_LIBDVDCSS=1 SRC_DVD_EXTRA="${SRC_DVD_EXTRA} dummy_dvdcss.c" CFLAGS_DVD="${CFLAGS_DVD} -DGOD_DAMN_DMCA" CFLAGS_DVD="${CFLAGS_DVD} -DLIBDVDCSS_VERSION=\"${LIBDVDCSS_VERSION}\"" LIB_DVD="${LIB_DVD} -ldl" - LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} -ldl" - LIB_DVDREAD_PLUGIN="${LIB_DVDREAD_PLUGIN} -ldl" ;; *) # existing libdvdcss - BUILTINS="${BUILTINS} dvd" + PLUGINS="${PLUGINS} dvd" if test "x$withval" != "xyes" then - LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} -L"$withval"/lib" - LIB_DVDREAD_PLUGIN="${LIB_DVDREAD_PLUGIN} -L"$withval"/lib" + LIB_DVD="${LIB_DVD} -L"$withval"/lib" CFLAGS_DVD="${CFLAGS_DVD} -I"$withval"/include" fi LIB_DVD="${LIB_DVD} -ldvdcss" - LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} -ldvdcss" - LIB_DVDREAD_PLUGIN="${LIB_DVDREAD_PLUGIN} -ldvdcss" esac ], # user didn't decide, we choose to use local libdvdcss and link statically # if libdvdcss is in the archive, or to use the dummy replacement otherwise. [ if test x${CAN_BUILD_LIBDVDCSS} = x1 then + BUILTINS="${BUILTINS} dvd" NEED_LIBDVDCSS=1 STATIC_LIBDVDCSS=1 - BUILTINS="${BUILTINS} dvd" CFLAGS_DVD="${CFLAGS_DVD} -I../../extras/libdvdcss" LIB_DVD="${LIB_DVD} lib/libdvdcss.a ${LIB_LIBDVDCSS}" - LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} ../../lib/libdvdcss.a ${LIB_LIBDVDCSS}" - LIB_DVDREAD_PLUGIN="${LIB_DVDREAD_PLUGIN} ../../lib/libdvdcss.a ${LIB_LIBDVDCSS}" else # XXX: no check for libdl is done, don't try this at home ! - DUMMY_LIBDVDCSS=1 BUILTINS="${BUILTINS} dvd" + DUMMY_LIBDVDCSS=1 SRC_DVD_EXTRA="${SRC_DVD_EXTRA} dummy_dvdcss.c" CFLAGS_DVD="${CFLAGS_DVD} -DGOD_DAMN_DMCA" LIB_DVD="${LIB_DVD} -ldl" - LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} -ldl" - LIB_DVDREAD_PLUGIN="${LIB_DVDREAD_PLUGIN} -ldl" fi ]) dnl dnl DVDREAD module: check for libdvdread plugin dnl -AC_ARG_ENABLE(dvdread, -[ --enable-dvdread Enable dvdread support (default disabled)], -[ if test x$enableval = xyes - then - NEED_LIBDVDCSS=1 - STATIC_LIBDVDCSS=1 - BUILTINS="${BUILTINS} dvdread" - CFLAGS_DVDREAD="${CFLAGS_DVDREAD} -I../../extras/libdvdread" - LIB_DVDREAD="${LIB_DVDREAD} lib/libdvdread.a lib/libdvdcss.a" - fi ]) +if test x${DUMMY_LIBDVDCSS} = x1; then STATIC_LIBDVDREAD=1; fi +if test x${STATIC_LIBDVDCSS} = x1; then STATIC_LIBDVDREAD=1; fi +AC_ARG_WITH(dvdread, + [ --with-dvdread[=name] way to use libdvdread, + same options as --with-dvdcss (default no)], + [ case "x${withval}" in + xlocal-static|xyes) + if test x${STATIC_LIBDVDREAD} = x1 + then + BUILTINS="${BUILTINS} dvdread" + CFLAGS_DVDREAD="${CFLAGS_DVDREAD} ${CFLAGS_DVD} -I../../extras/libdvdread" + LIB_DVDREAD="${LIB_DVDREAD} lib/libdvdread.a ${LIB_DVD}" + else + AC_MSG_ERROR([Can't link static dvdread with shared dvdcss]) + fi + ;; + xno) + ;; + x) + if test x${STATIC_LIBDVDREAD} = x1 + then + BUILTINS="${BUILTINS} dvdread" + CFLAGS_DVDREAD="${CFLAGS_DVDREAD} ${CFLAGS_DVD} -I../../extras/libdvdread" + LIB_DVDREAD="${LIB_DVDREAD} lib/libdvdread.a ${LIB_DVD}" + else + PLUGINS="${PLUGINS} dvdread" + CFLAGS_DVDREAD="${CFLAGS_DVDREAD} -I../../extras/libdvdread ${CFLAGS_DVD}" + LIB_DVDREAD="${LIB_DVDREAD} -Llib -ldvdread ${LIB_DVD}" + fi + ;; + *) + if test "x$withval" != "xlocal-shared" + then + LIB_DVDREAD="${LIB_DVDREAD} -L"$withval"/lib" + CFLAGS_DVDREAD="${CFLAGS_DVDREAD} -I"$withval"/include" + else + LIB_DVDREAD="${LIB_DVDREAD} -L../../lib" + CFLAGS_DVDREAD="${CFLAGS_DVDREAD} -I../../extras/libdvdread" + fi + if test x${STATIC_LIBDVDCSS} = x1 + then + AC_MSG_ERROR([Can't link shared dvdread with static dvdcss]) + else + PLUGINS="${PLUGINS} dvdread" + CFLAGS_DVDREAD="${CFLAGS_DVDREAD} ${CFLAGS_DVD}" + LIB_DVDREAD="${LIB_DVDREAD} -ldvdread ${LIB_DVD}" + fi + esac + if test x${DUMMY_LIBDVDCSS} = x1 + then + LIB_LIBDVDREAD="${LIB_LIBDVDREAD} -ldl" + else + LIB_LIBDVDREAD="${LIB_LIBDVDREAD} -L../../lib -ldvdcss" + fi ]) dnl dnl VCD module @@ -767,6 +903,12 @@ then BUILTINS="${BUILTINS} vcd" fi +if test x$enable_vcd != xno -a "${SYS}" = "darwin" +then + BUILTINS="${BUILTINS} vcd" + LIB_VCD="${LIB_VCD} -framework IOKit" +fi + dnl dnl dummy plugin dnl @@ -775,7 +917,18 @@ AC_ARG_ENABLE(dummy, if test x$enable_dummy != xno then - BUILTINS="${BUILTINS} dummy" + PLUGINS="${PLUGINS} dummy" +fi + +dnl +dnl log plugin +dnl +AC_ARG_ENABLE(logger, + [ --disable-logger file logger module (default enabled)]) + +if test x$enable_logger != xno +then + PLUGINS="${PLUGINS} logger" fi dnl @@ -786,7 +939,7 @@ AC_ARG_ENABLE(null, if test x$enable_null != xno then - BUILTINS="${BUILTINS} null" + PLUGINS="${PLUGINS} null" fi dnl @@ -797,7 +950,7 @@ AC_ARG_ENABLE(rc, if test x$enable_rc != xno then - BUILTINS="${BUILTINS} rc" + PLUGINS="${PLUGINS} rc" fi dnl @@ -807,10 +960,10 @@ AC_ARG_WITH(mad, [ --with-mad[=PATH] libmad module (default disabled)], [ if test "x$with_val" != "xno"; then if test -n $with_val; then - CFLAGS_MAD="-I$with_val/include" - LIB_MAD="-L$with_val/lib -lmad" + CFLAGS_MAD="${CFLAGS_MAD} -I$with_val/include" + LIB_MAD="${LIB_MAD} -L$with_val/lib -lmad" else - LIB_MAD="-lmad" + LIB_MAD="${LIB_MAD} -lmad" fi save_CFLAGS=$CFLAGS save_LDFLAGS=$LDFLAGS @@ -832,7 +985,7 @@ AC_ARG_WITH(mad, dnl special case for BeOS if test x$SYS = xbeos then - BUILTINS="${BUILTINS} beos" + PLUGINS="${PLUGINS} beos" dnl default case else @@ -845,12 +998,11 @@ AC_ARG_ENABLE(dsp, [ --disable-dsp Linux /dev/dsp support (default enabled)]) if test x$enable_dsp != xno && - (test $SYS != mingw32 || test x$enable_dsp = xyes) + (test x$SYS != xmingw32 || test x$enable_dsp = xyes) then - if test -c /dev/dsp - then + AC_CHECK_HEADERS(sys/soundcard.h machine/soundcard.h, [ PLUGINS="${PLUGINS} dsp" - fi + ]) fi dnl @@ -864,8 +1016,8 @@ AC_ARG_ENABLE(esd, if test x${ESD_CONFIG} != xno then PLUGINS="${PLUGINS} esd" - CFLAGS_ESD="`${ESD_CONFIG} --cflags`" - LIB_ESD="`${ESD_CONFIG} --libs`" + CFLAGS_ESD="${CFLAGS_ESD} `${ESD_CONFIG} --cflags`" + LIB_ESD="${LIB_ESD} `${ESD_CONFIG} --libs`" fi fi]) @@ -880,8 +1032,8 @@ AC_ARG_ENABLE(arts, if test x${ARTS_CONFIG} != xno then PLUGINS="${PLUGINS} arts" - CFLAGS_ARTS="`${ARTS_CONFIG} --cflags`" - LIB_ARTS="`${ARTS_CONFIG} --libs `" + CFLAGS_ARTS="${CFLAGS_ARTS} `${ARTS_CONFIG} --cflags`" + LIB_ARTS="${LIB_ARTS} `${ARTS_CONFIG} --libs `" fi fi]) @@ -893,14 +1045,14 @@ AC_ARG_ENABLE(macosx, [if test x$enable_macosx = xyes then BUILTINS="${BUILTINS} macosx" - LIB_MACOSX="-framework CoreAudio -framework Cocoa -framework AGL -framework QuickTime -lobjc" - CFLAGS_MACOSX="-ObjC" + LIB_MACOSX="${LIB_MACOSX} -framework CoreAudio -framework Cocoa -framework AGL -framework QuickTime -lobjc" + CFLAGS_MACOSX="${CFLAGS_MACOSX} -ObjC" LIB="${LIB} -ObjC" fi], [AC_CHECK_HEADERS(Cocoa/Cocoa.h, BUILTINS="${BUILTINS} macosx" - LIB_MACOSX="-framework CoreAudio -framework Cocoa -framework AGL -framework QuickTime -lobjc" - CFLAGS_MACOSX="-ObjC" + LIB_MACOSX="${LIB_MACOSX} -framework CoreAudio -framework Cocoa -framework AGL -framework QuickTime -lobjc" + CFLAGS_MACOSX="${CFLAGS_MACOSX} -ObjC" LIB="${LIB} -ObjC" )]) @@ -913,10 +1065,23 @@ AC_ARG_ENABLE(qnx, then AC_CHECK_HEADERS(Ph.h, [ PLUGINS="${PLUGINS} qnx" - LIB_QNX="-lasound -lph" + LIB_QNX="${LIB_QNX} -lasound -lph" ]) fi +dnl +dnl a52 AC3 decoder plugin +dnl +AC_ARG_ENABLE(a52, + [ --disable-a52 AC3 support with liba52 (default enabled)]) +if test "x$enableval" != "xno" -a x$SYS != xmingw32 + then + AC_CHECK_HEADERS(a52dec/a52.h, [ + BUILTINS="${BUILTINS} a52" + LIB_A52="${LIB_A52} -la52" + ],[]) +fi + dnl dnl Linux framebuffer module dnl @@ -927,6 +1092,16 @@ AC_ARG_ENABLE(fb, PLUGINS="${PLUGINS} fb" fi ]) +dnl +dnl Linux MGA module +dnl +AC_ARG_ENABLE(mga, + [ --enable-mga Linux kernel Matrox support (default disabled)], + [ if test x$enable_mga = xyes + then + PLUGINS="${PLUGINS} mga xmga" + fi ]) + dnl dnl GGI module dnl @@ -937,9 +1112,9 @@ AC_ARG_WITH(ggi, PLUGINS="${PLUGINS} ggi" if test "x$withval" != "xyes" then - LIB_GGI="-l"$withval + LIB_GGI="${LIB_GGI} -l$withval" else - LIB_GGI="-lggi" + LIB_GGI="${LIB_GGI} -lggi" fi fi ]) @@ -974,8 +1149,8 @@ then if test x${SDL_CONFIG} != xno then PLUGINS="${PLUGINS} sdl" - CFLAGS_SDL="`${SDL_CONFIG} --cflags`" - LIB_SDL="`${SDL_CONFIG} --libs | sed 's,-rdynamic,,'`" + CFLAGS_SDL="${CFLAGS_SDL} `${SDL_CONFIG} --cflags`" + LIB_SDL="${LIB_SDL} `${SDL_CONFIG} --libs | sed 's,-rdynamic,,'`" save_CPPFLAGS=$CPPFLAGS CPPFLAGS="$CPPFLAGS $CFLAGS_SDL" AC_CHECK_HEADERS(${SDL_HEADER}, AC_DEFINE_UNQUOTED(SDL_INCLUDE_FILE, @@ -1003,24 +1178,24 @@ dnl dnl Windows DirectX module dnl AC_ARG_ENABLE(directx, - [ --disable-directx Windows DirectX support (default enabled on WIN32)]) + [ --disable-directx Win32 DirectX support (default enabled on Win32)]) if test "x$enableval" != "xno" then - if test $SYS = mingw32 + if test x$SYS = xmingw32 then AC_ARG_WITH(directx-path, - [ --with-directx-path=path Windows DirectX headers and libraries]) + [ --with-directx-path=path Win32 DirectX headers and libraries]) if test "x$with_directx_path" = "x" then - AC_CHECK_HEADERS(directx.h, + AC_CHECK_HEADERS(ddraw.h, [ PLUGINS="${PLUGINS} directx" - LIB_DIRECTX="-lgdi32 -ldxguid" ]) + LIB_DIRECTX="${LIB_DIRECTX} -lgdi32" ]) else AC_MSG_CHECKING(for directX headers in ${withval}) - if test -f ${withval}/include/directx.h + if test -f ${withval}/include/ddraw.h then PLUGINS="${PLUGINS} directx" - LIB_DIRECTX="-L${withval}/lib -lgdi32 -ldxguid" + LIB_DIRECTX="${LIB_DIRECTX} -L${withval}/lib -lgdi32" INCLUDE="${INCLUDE} -I${withval}/include" AC_MSG_RESULT(yes) else @@ -1031,6 +1206,27 @@ then fi fi +dnl +dnl win32 waveOut plugin +dnl +AC_ARG_ENABLE(waveout, + [ --disable-waveout Win32 waveOut module (default enabled on Win32)]) +if test "x$enableval" != "xno" -a x$SYS = xmingw32 + then + PLUGINS="${PLUGINS} waveout" + LIB_WAVEOUT="-lwinmm" +fi + +dnl +dnl Windows MFC interface module +dnl +AC_ARG_ENABLE(win32, + [ --enable-win32 Win32 interface support (default disabled)], + [ if test "x$enableval" != "xno" + then + PLUGINS="${PLUGINS} win32" + fi ]) + dnl dnl Glide module dnl @@ -1041,11 +1237,11 @@ AC_ARG_WITH(glide, PLUGINS="${PLUGINS} glide" if test "x$withval" != "xyes" then - LIB_GLIDE="-l"$withval" -lm" + LIB_GLIDE="${LIB_GLIDE} -l$withval -lm" else - LIB_GLIDE="-lglide2x -lm" + LIB_GLIDE="${LIB_GLIDE} -lglide2x -lm" fi - CFLAGS_GLIDE="-I/usr/include/glide" + CFLAGS_GLIDE="${CFLAGS_GLIDE} -I/usr/include/glide" fi ]) dnl @@ -1055,7 +1251,7 @@ AC_ARG_ENABLE(ncurses, [ --enable-ncurses ncurses interface support (default disabled)], [if test x$enable_ncurses = xyes; then PLUGINS="${PLUGINS} ncurses" - LIB_NCURSES="-lncurses" + LIB_NCURSES="${LIB_NCURSES} -lncurses" fi]) dnl @@ -1066,8 +1262,8 @@ AC_ARG_ENABLE(qt, [if test x$enable_qt = xyes; then PLUGINS="${PLUGINS} qt" ALIASES="${ALIASES} qvlc" - LIB_QT="-lqt -L${QTDIR}/lib" - CFLAGS_QT="-I/usr/include/qt -I${QTDIR}/include" + LIB_QT="${LIB_QT} -lqt -L${QTDIR}/lib" + CFLAGS_QT="${CFLAGS_QT} -I/usr/include/qt -I${QTDIR}/include" if test -x ${QTDIR}/bin/moc then MOC=${QTDIR}/bin/moc @@ -1105,8 +1301,8 @@ AC_ARG_ENABLE(gnome, AC_PATH_PROG(GNOME_CONFIG, gnome-config, no) if test -x ${GNOME_CONFIG} then - CFLAGS_GNOME="`${GNOME_CONFIG} --cflags gtk gnomeui`" - LIB_GNOME="`${GNOME_CONFIG} --libs gnomeui | sed 's,-rdynamic,,'`" + CFLAGS_GNOME="${CFLAGS_GNOME} `${GNOME_CONFIG} --cflags gtk gnomeui`" + LIB_GNOME="${LIB_GNOME} `${GNOME_CONFIG} --libs gnomeui | sed 's,-rdynamic,,'`" fi # now look for the gnome.h header saved_CPPFLAGS=$CPPFLAGS @@ -1137,26 +1333,35 @@ then GTK_PATH=$withval:$PATH fi ]) # look for gtk-config - AC_PATH_PROG(GTK_CONFIG, gtk-config, no, $GTK_PATH) - if test -x ${GTK_CONFIG} + AC_PATH_PROG(GTK12_CONFIG, gtk12-config, no, $GTK_PATH) + GTK_CONFIG=${GTK12_CONFIG} + if test x${GTK_CONFIG} = xno then - CFLAGS_GTK="`${GTK_CONFIG} --cflags gtk`" - LIB_GTK="`${GTK_CONFIG} --libs gtk | sed 's,-rdynamic,,'`" + AC_PATH_PROG(GTK_CONFIG, gtk-config, no, $GTK_PATH) fi - # now look for the gtk.h header - saved_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS $CFLAGS_GTK" - ac_cv_gtk_headers=yes - AC_CHECK_HEADERS(gtk/gtk.h glib.h gdk/gdk.h, , [ - ac_cv_gtk_headers=no - echo "Cannot find gtk development headers." - ]) - if test "x$ac_cv_gtk_headers" = xyes + if test x${GTK_CONFIG} != xno then - PLUGINS="${PLUGINS} gtk" - ALIASES="${ALIASES} gvlc" + if expr 1.2.0 \> `$GTK_CONFIG --version` >/dev/null + then + AC_MSG_ERROR([Your development package for Gtk+ is too old, you need at least version 1.2.0. Please upgrade and try again. Alternatively you can also configure with --disable-gtk.]) + fi + CFLAGS_GTK="${CFLAGS_GTK} `${GTK_CONFIG} --cflags gtk`" + LIB_GTK="${LIB_GTK} `${GTK_CONFIG} --libs gtk | sed 's,-rdynamic,,'`" + # now look for the gtk.h header + saved_CPPFLAGS=$CPPFLAGS + CPPFLAGS="$CPPFLAGS $CFLAGS_GTK" + ac_cv_gtk_headers=yes + AC_CHECK_HEADERS(gtk/gtk.h glib.h gdk/gdk.h, , [ + ac_cv_gtk_headers=no + echo "Cannot find gtk development headers." + ]) + if test "x$ac_cv_gtk_headers" = xyes + then + PLUGINS="${PLUGINS} gtk" + ALIASES="${ALIASES} gvlc" + fi + CPPFLAGS=$saved_CPPFLAGS fi - CPPFLAGS=$saved_CPPFLAGS fi dnl @@ -1166,7 +1371,7 @@ dnl AC_ARG_ENABLE(x11, [ --disable-x11 X11 support (default enabled)]) if test x$enable_x11 != xno && - (test $SYS != mingw32 || test x$enable_x11 = xyes); then + (test x$SYS != xmingw32 || test x$enable_x11 = xyes); then if test x$x_includes = xNONE; then x_includes=/usr/X11R6/include fi @@ -1179,8 +1384,8 @@ if test x$enable_x11 != xno && PLUGINS="${PLUGINS} x11" LIB_X11="${LIB_X11} -L$x_libraries -lX11 -lXext" CFLAGS_X11="${CFLAGS_X11} -I$x_includes" - ] - CPPFLAGS=$saved_CPPFLAGS) + ]) + CPPFLAGS=$saved_CPPFLAGS fi dnl @@ -1190,7 +1395,7 @@ dnl AC_ARG_ENABLE(xvideo, [ --disable-xvideo XVideo support (default enabled)]) if test x$enable_xvideo != xno && - (test $SYS != mingw32 || test x$enable_xvideo = xyes); then + (test x$SYS != xmingw32 || test x$enable_xvideo = xyes); then if test x$x_includes = xNONE; then x_includes=/usr/X11R6/include fi @@ -1200,13 +1405,37 @@ if test x$enable_xvideo != xno && saved_CPPFLAGS=$CPPFLAGS CPPFLAGS="$CPPFLAGS -I$x_includes" AC_CHECK_HEADERS(X11/extensions/Xv.h, [ - BUILTINS="${BUILTINS} xvideo" - LIB_XVIDEO="${LIB_XVIDEO} -L$x_libraries -lX11 -lXext -lXv" - CFLAGS_XVIDEO="${CFLAGS_XVIDEO} -I$x_includes" + saved_CFLAGS=$CFLAGS + CFLAGS="$CFLAGS -L$x_libraries -lX11 -lXext" + AC_CHECK_LIB(Xv_pic,XvSetPortAttribute, + # We have Xv_pic, that's good, we can build an xvideo.so plugin ! + PLUGINS="${PLUGINS} xvideo" + LIB_XVIDEO="${LIB_XVIDEO} -L$x_libraries -lX11 -lXext -lXv_pic" + CFLAGS_XVIDEO="${CFLAGS_XVIDEO} -I$x_includes", + # We don't have Xv_pic, let's make xvideo.a as builtin + BUILTINS="${BUILTINS} xvideo" + LIB_XVIDEO="${LIB_XVIDEO} -L$x_libraries -lX11 -lXext -lXv" + CFLAGS_XVIDEO="${CFLAGS_XVIDEO} -I$x_includes") + CFLAGS=$saved_CFLAGS ] CPPFLAGS=$saved_CPPFLAGS) fi +dnl +dnl Lirc plugin +dnl +AC_ARG_ENABLE(lirc, + [ --enable-lirc lirc support (default disabled)]) +if test x$enable_lirc = xyes +then + AC_CHECK_HEADER(lirc/lirc_client.h, AC_CHECK_LIB(lirc_client, lirc_init, have_lirc="true", have_lirc="false"),have_lirc="false") + if test x$have_lirc = xtrue + then + PLUGINS="${PLUGINS} lirc" + LIB_LIRC="${LIB_LIRC} -llirc_client" + fi +fi + dnl dnl ALSA module dnl @@ -1219,7 +1448,7 @@ AC_ARG_ENABLE(alsa, if test x$have_alsa = xtrue then PLUGINS="${PLUGINS} alsa" - LIB_ALSA="-lasound -lm -ldl" + LIB_ALSA="${LIB_ALSA} -lasound -lm -ldl" fi fi]) @@ -1271,11 +1500,9 @@ AC_SUBST(ARCH) AC_SUBST(PLUGINS) AC_SUBST(BUILTINS) AC_SUBST(ALIASES) -AC_SUBST(DEFINE) AC_SUBST(INCLUDE) AC_SUBST(DEBUG) AC_SUBST(ASM) -AC_SUBST(TRACE) AC_SUBST(CPROF) AC_SUBST(GPROF) AC_SUBST(OPTIMS) @@ -1300,9 +1527,7 @@ AC_SUBST(LIB_BEOS) AC_SUBST(LIB_DARWIN) AC_SUBST(LIB_DIRECTX) AC_SUBST(LIB_DVD) -AC_SUBST(LIB_DVD_PLUGIN) AC_SUBST(LIB_DVDREAD) -AC_SUBST(LIB_DVDREAD_PLUGIN) AC_SUBST(LIB_ESD) AC_SUBST(LIB_FILTER_DISTORT) AC_SUBST(LIB_GGI) @@ -1314,7 +1539,10 @@ AC_SUBST(LIB_IMDCT) AC_SUBST(LIB_IMDCT3DN) AC_SUBST(LIB_IMDCTSSE) AC_SUBST(LIB_KDE) +AC_SUBST(LIB_A52) AC_SUBST(LIB_LIBDVDCSS) +AC_SUBST(LIB_LIBDVDREAD) +AC_SUBST(LIB_LIRC) AC_SUBST(LIB_MACOSX) AC_SUBST(LIB_MAD) AC_SUBST(LIB_MOTIONALTIVEC) @@ -1324,6 +1552,9 @@ AC_SUBST(LIB_QNX) AC_SUBST(LIB_QT) AC_SUBST(LIB_RC) AC_SUBST(LIB_SDL) +AC_SUBST(LIB_VCD) +AC_SUBST(LIB_WAVEOUT) +AC_SUBST(LIB_WIN32) AC_SUBST(LIB_X11) AC_SUBST(LIB_XVIDEO) @@ -1341,8 +1572,11 @@ AC_SUBST(CFLAGS_LIBDVDCSS) AC_SUBST(CFLAGS_MACOSX) AC_SUBST(CFLAGS_MAD) AC_SUBST(CFLAGS_MOTIONALTIVEC) +AC_SUBST(CFLAGS_OPTIM) +AC_SUBST(CFLAGS_OPTIM_NODEBUG) AC_SUBST(CFLAGS_QT) AC_SUBST(CFLAGS_SDL) +AC_SUBST(CFLAGS_WIN32) AC_SUBST(CFLAGS_X11) AC_SUBST(CFLAGS_XVIDEO) @@ -1370,7 +1604,6 @@ vlc configuration ----------------- vlc version : ${VLC_VERSION} debug mode : ${DEBUG} -trace mode : ${TRACE} cprof/gprof support : ${CPROF}/${GPROF} need builtin getopt : ${NEED_GETOPT} built-in modules :${BUILTINS}