X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure.ac.in;h=3a1a12fc18751923ee54ddba321db61cbf1c0acd;hb=e8b5cda1a0eb0f953edeef363afdd28cca7423e1;hp=ac28d973f09b691c4b28b8d7b85f0bffd3c239d0;hpb=d86bf0f41aeaddd3858b7efac5214a2417efc02e;p=vlc diff --git a/configure.ac.in b/configure.ac.in index ac28d973f0..3a1a12fc18 100644 --- a/configure.ac.in +++ b/configure.ac.in @@ -1,6 +1,6 @@ dnl Autoconf settings for vlc -AC_INIT(vlc,0.5.0-cvs-am) +AC_INIT(vlc,0.5.0-cvs) CONFIGURE_LINE="$0 $*" CODENAME="Natalya" @@ -11,7 +11,7 @@ AC_CANONICAL_SYSTEM dnl XXX: we don't put any flags here, because automake 1.5 doesn't support dnl them. And we need the comma otherwize automake will choke on it. -AM_INIT_AUTOMAKE(vlc,0.5.0-cvs-am) +AM_INIT_AUTOMAKE(vlc,0.5.0-cvs) AM_CONFIG_HEADER(config.h) dnl @@ -48,11 +48,21 @@ AC_MSG_RESULT(not implemented yet) dnl Find the right ranlib, even when cross-compiling AC_CHECK_TOOL(RANLIB, ranlib, :) AC_CHECK_TOOL(STRIP, strip, :) +AC_CHECK_TOOL(AR, ar, :) +AC_CHECK_TOOL(LD, ld, :) +dnl dnl Gettext stuff -ALL_LINGUAS="de en_GB fr ja no ru nl pl se" +dnl +ALL_LINGUAS="de en_GB fr it ja no ru nl pl se" AM_GNU_GETTEXT_VERSION(0.10.40) AM_GNU_GETTEXT +if test "${nls_cv_force_use_gnu_gettext}" = "yes"; then + AC_DEFINE(HAVE_INCLUDED_GETTEXT, 1, Define if we use the local libintl) + INCLUDES="${INCLUDES} -I\\\$(top_srcdir)/intl" +fi +AM_CONDITIONAL(BUILD_INTL, test "${nls_cv_force_use_gnu_gettext}" = "yes") +XGETTEXT="${XGETTEXT} --keyword=_NS" dnl AM_PROG_LIBTOOL AC_PROG_INSTALL @@ -81,6 +91,7 @@ case "x${target_os}" in SYS=bsdi CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}" LDFLAGS_dvd="${LDFLAGS_dvd} -ldvd" + LDFLAGS_dvdcss="${LDFLAGS_dvdcss} -ldvd" LDFLAGS_vcd="${LDFLAGS_vcd} -ldvd" ;; x*bsd*) @@ -115,13 +126,20 @@ case "x${target_os}" in esac if test "x$SYS" = "xmingw32"; then + # add ws2_32 for closesocket, select, recv CPPFLAGS_save="${CPPFLAGS_save} -D_OFF_T_ -D_off_t=long" CPPFLAGS="${CPPFLAGS_save}" LDFLAGS_vlc="${LDFLAGS_vlc} -lws2_32 -lnetapi32 -mwindows" LDFLAGS_ipv4="${LDFLAGS_ipv4} -lws2_32" LDFLAGS_ipv6="${LDFLAGS_ipv6} -lws2_32" - LDFLAGS_access_http="${LDFLAGS_http} -lws2_32" + LDFLAGS_access_http="${LDFLAGS_access_http} -lws2_32" + LDFLAGS_access_mms="${LDFLAGS_access_mms} -lws2_32" + LDFLAGS_access_rtp="${LDFLAGS_access_rtp} -lws2_32" + LDFLAGS_access_udp="${LDFLAGS_access_udp} -lws2_32" + LDFLAGS_access_ftp="${LDFLAGS_access_ftp} -lws2_32" + LDFLAGS_access_output_udp="${LDFLAGS_access_output_udp} -lws2_32" LDFLAGS_rc="${LDFLAGS_rc} -lws2_32" + LDFLAGS_sap="${LDFLAGS_sap} -lws2_32" fi ;; x*nto*) @@ -143,7 +161,11 @@ case "x${target_os}" in LDFLAGS_vlc="${LDFLAGS_vlc} -lbe" LDFLAGS_plugins="${LDFLAGS_plugins} -nostart" LDFLAGS_beos="${LDFLAGS_beos} -lbe -lmedia -lroot -ltracker -lstdc++.r4 -ltranslation" - LDFLAGS_ipv4="${LDFLAGS_ipv4} -lbind" + dnl BONE or not BONE ? + AC_CHECK_LIB( bind, inet_ntoa, + [ LDFLAGS_access_mms="${LDFLAGS_access_mms} -lbind" + LDFLAGS_ipv4="${LDFLAGS_ipv4} -lbind"], + []) ;; x*) SYS="${target_os}" @@ -179,17 +201,37 @@ then CFLAGS_mingw32_special="-fnative-struct" fi - CFLAGS_save="${CFLAGS_save} ${CFLAGS_mingw32_special}"; CFLAGS="${CFLAGS_save}" + CFLAGS_save="${CFLAGS_save} ${CFLAGS_mingw32_special}"; + CXXFLAGS_save="${CXXFLAGS_save} ${CFLAGS_mingw32_special}"; + CFLAGS="${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" +fi + +dnl Check for fvtable-thunks support for mingw32 +if test x$SYS = xmingw32 +then +AC_LANG_PUSH(C++) + AC_CACHE_CHECK([if \$CXX accepts -fvtable-thunks], + [ac_cv_cxx_fvtable_thunks], + [CXXFLAGS="${CXXFLAGS_save} -Wall -Werror -fvtable-thunks" + AC_TRY_COMPILE([],,ac_cv_cxx_fvtable_thunks=yes, + ac_cv_cxx_fvtable_thunks=no)]) + if test x"$ac_cv_cxx_fvtable_thunks" = x"yes"; then + CXXFLAGS_mingw32_special="-fvtable-thunks" + fi + + CXXFLAGS_save="${CXXFLAGS_save} ${CXXFLAGS_mingw32_special}" + CXXFLAGS="${CXXFLAGS_save}" +AC_LANG_POP(C++) fi dnl Flags for plugin compilation case "x${SYS}" in xmingw32|xcygwin) CFLAGS_pics="${CFLAGS_pics} ${CFLAGS_mingw32_special}" - CXXFLAGS_pics="${CXXFLAGS_pics} ${CFLAGS_mingw32_special}" + CXXFLAGS_pics="${CXXFLAGS_pics} ${CFLAGS_mingw32_special} ${CXXFLAGS_mingw32_special}" OBJCFLAGS_pics="${OBJCFLAGS_pics} ${CFLAGS_mingw32_special}" CFLAGS_plugins="${CFLAGS_plugins} ${CFLAGS_mingw32_special}" - CXXFLAGS_plugins="${CXXFLAGS_plugins} ${CFLAGS_mingw32_special}" + CXXFLAGS_plugins="${CXXFLAGS_plugins} ${CFLAGS_mingw32_special} ${CXXFLAGS_mingw32_special}" OBJCFLAGS_plugins="${OBJCFLAGS_plugins} ${CFLAGS_mingw32_special}" ;; x*) @@ -207,7 +249,19 @@ dnl The -DSYS_FOO flag CPPFLAGS_save="${CPPFLAGS_save} -DSYS_`echo ${SYS} | sed -e 's/-.*//' | tr 'abcdefghijklmnopqrstuvwxyz.' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`"; CPPFLAGS="${CPPFLAGS_save}" dnl Check for system libs needed -AC_CHECK_FUNCS(gettimeofday select strerror strtod strtol isatty vasprintf swab sigrelse getpwuid memalign posix_memalign gethostbyname2 atoll strndup) +need_libc=false + +AC_CHECK_FUNCS(gettimeofday select strerror strtod strtol isatty vasprintf swab sigrelse getpwuid memalign posix_memalign gethostbyname2 atoll getenv putenv setenv) + +dnl Check for usual libc functions +AC_CHECK_FUNCS(strdup,,[need_libc=:]) +AC_CHECK_FUNCS(strndup,,[need_libc=:]) +AC_CHECK_FUNCS(atof,,[need_libc=:]) +AC_CHECK_FUNCS(lseek,,[need_libc=:]) +AC_CHECK_FUNCS(strcasecmp,,[AC_CHECK_FUNCS(stricmp,,[need_libc=:])]) +AC_CHECK_FUNCS(strncasecmp,,[AC_CHECK_FUNCS(strnicmp,,[need_libc=:])]) + +AM_CONDITIONAL(BUILD_LIBC, ${need_libc}) AC_CHECK_FUNC(connect,,[ AC_CHECK_LIB(socket,connect, @@ -217,7 +271,13 @@ AC_CHECK_FUNC(connect,,[ AC_CHECK_FUNC(send,,[ AC_CHECK_LIB(socket,send, - LDFLAGS_http="${LDFLAGS_http} -lsocket" + LDFLAGS_access_http="${LDFLAGS_access_http} -lsocket" + LDFLAGS_access_mms="${LDFLAGS_access_mms} -lsocket" + LDFLAGS_access_rtp="${LDFLAGS_access_rtp} -lsocket" + LDFLAGS_access_udp="${LDFLAGS_access_udp} -lsocket" + LDFLAGS_access_ftp="${LDFLAGS_access_ftp} -lsocket" + LDFLAGS_sap="${LDFLAGS_sap} -lsocket" + LDFLAGS_access_output_udp="${LDFLAGS_access_output_udp} -lsocket" )]) AC_CHECK_FUNC(gethostbyname,,[ @@ -237,7 +297,21 @@ if ${have_nanosleep}; then AC_DEFINE(HAVE_NANOSLEEP, 1, Define if nanosleep is available.) fi -# HP/UX port + +dnl Check for socklen_t +AC_CACHE_CHECK([for socklen_t], ac_cv_type_socklen_t, + [AC_TRY_COMPILE( + [#include + #include ], + [socklen_t len = 42; return len;], + ac_cv_type_socklen_t=yes, + ac_cv_type_socklen_t=no)]) +if test x$ac_cv_type_socklen_t != xno; then + AC_DEFINE(HAVE_SOCKLEN_T, 1, + Define if defines socklen_t.) +fi + +dnl HP/UX port AC_CHECK_LIB(rt,sem_init, [LDFLAGS_vlc="${LDFLAGS_vlc} -lrt"]) AC_CHECK_FUNC(inet_aton,,[ @@ -263,7 +337,8 @@ AC_TYPE_SIGNAL AC_CHECK_LIB(dl,dlopen,LDFLAGS_vlc="${LDFLAGS_vlc} -ldl") AC_CHECK_LIB(m,cos, LDFLAGS_imdct="${LDFLAGS_imdct} -lm" - LDFLAGS_filter_distort="${LDFLAGS_filter_distort} -lm") + LDFLAGS_filter_distort="${LDFLAGS_filter_distort} -lm" + LDFLAGS_a52tofloat32="${LDFLAGS_a52tofloat32} -lm") AC_CHECK_LIB(m,pow, LDFLAGS_ffmpeg="${LDFLAGS_ffmpeg} -lm" LDFLAGS_imdct="${LDFLAGS_imdct} -lm" @@ -304,8 +379,8 @@ AC_EGREP_HEADER(strncasecmp,strings.h,[ Define if defines strncasecmp.)]) dnl Check for headers -AC_CHECK_HEADERS(stdint.h getopt.h strings.h inttypes.h sys/int_types.h) -AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/types.h sys/time.h sys/times.h sys/ioctl.h) +AC_CHECK_HEADERS(signal.h time.h errno.h stdint.h getopt.h strings.h inttypes.h sys/int_types.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(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 sys/shm.h) @@ -313,6 +388,11 @@ AC_CHECK_HEADERS(linux/version.h) AC_HEADER_TIME +dnl Check for dirent +need_dirent=false +AC_CHECK_HEADERS(dirent.h,,[need_dirent=:]) +AM_CONDITIONAL(BUILD_DIRENT, ${need_dirent}) + dnl Mac OS X and other OSes don't have declaration for nanosleep AC_EGREP_HEADER(nanosleep,time.h,[ AC_DEFINE(HAVE_DECL_NANOSLEEP, 1, @@ -349,6 +429,8 @@ then AC_DEFINE(DPMSINFO_IN_DPMS_H, 1, Define if defines DPMSInfo.) ]) + ],,[ + #include ]) CPPFLAGS="${CPPFLAGS_save}" fi @@ -375,25 +457,90 @@ if test "x${ac_cv_c_inline_limit}" != "xno"; then OBJCFLAGS_save="${OBJCFLAGS_save} -finline-limit-30000"; OBJCFLAGS="${OBJCFLAGS_save}" fi -dnl Check for -W or -w flags -AC_CACHE_CHECK([if \$CC accepts -Wall -Winline], - [ac_cv_c_Wall_Winline], - [CFLAGS="-Wall -Winline ${CFLAGS_save}" - AC_TRY_COMPILE([],,ac_cv_c_Wall_Winline=yes, ac_cv_c_Wall_Winline=no)]) -if test "x${ac_cv_c_Wall_Winline}" != "xno"; then - CFLAGS_save="-Wall -Winline ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}" - CXXFLAGS_save="-Wall -Winline ${CXXFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" - OBJCFLAGS_save="-Wall -Winline ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}" -else - AC_CACHE_CHECK([if \$CC accepts -wall -winline], - [ac_cv_c_wall_winline], - [CFLAGS="-wall -winline ${CFLAGS_save}" - AC_TRY_COMPILE([],,ac_cv_c_wall_winline=yes, ac_cv_c_wall_winline=no)]) - if test "x${ac_cv_c_wall_winline}" != "xno"; then - CFLAGS_save="-wall -winline ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}" - CXXFLAGS_save="-wall -winline ${CXXFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" - OBJCFLAGS_save="-wall -winline ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}" +# XXX: do this with an M4 macro? +#dnl Check for various -W flags +#for flag in "" all unreachable-code conversion sign-compare disabled-optimization +#do +# AC_CACHE_CHECK([if \$CC accepts -W${flag}], +# [ac_cv_c_W${flag}], +# [CFLAGS="-W${flag} ${CFLAGS_save}" +# AC_TRY_COMPILE([],,ac_cv_c_W${flag}=yes, ac_cv_c_W${flag}=no)]) +# if test "x${ac_cv_c_W${flag}}" != "xno"; then +# CFLAGS_save="-W${flag} ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}" +# CXXFLAGS_save="-W${flag} ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" +# OBJCFLAGS_save="-W${flag} ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}" +# fi +#done + +AC_CACHE_CHECK([if \$CC accepts -Wall], + [ac_cv_c_Wall], + [CFLAGS="-Wall ${CFLAGS_save}" + AC_TRY_COMPILE([],,ac_cv_c_Wall=yes, ac_cv_c_Wall=no)]) + +AC_CACHE_CHECK([if \$CC accepts -Wconversion], + [ac_cv_c_Wconversion], + [CFLAGS="-Wconversion ${CFLAGS_save}" + AC_TRY_COMPILE([],,ac_cv_c_Wconversion=yes, ac_cv_c_Wconversion=no)]) + +AC_CACHE_CHECK([if \$CC accepts -Wunreachable-code], + [ac_cv_c_Wunreachable_code], + [CFLAGS="-Wunreachable-code ${CFLAGS_save}" + AC_TRY_COMPILE([],,ac_cv_c_Wunreachable_code=yes, ac_cv_c_Wunreachable_code=no)]) + +AC_CACHE_CHECK([if \$CC accepts -Wsign-compare], + [ac_cv_c_Wsign_compare], + [CFLAGS="-Wsign-compare ${CFLAGS_save}" + AC_TRY_COMPILE([],,ac_cv_c_Wsign_compare=yes, ac_cv_c_Wsign_compare=no)]) + +AC_CACHE_CHECK([if \$CC accepts -Wdisabled-optimization], + [ac_cv_c_Wdisabled_optimization], + [CFLAGS="-Wdisabled-optimization ${CFLAGS_save}" + AC_TRY_COMPILE([],,ac_cv_c_Wdisabled_optimization=yes, ac_cv_c_Wdisabled_optimization=no)]) + +AC_CACHE_CHECK([if \$CC accepts -Winline], + [ac_cv_c_Winline], + [CFLAGS="-Winline ${CFLAGS_save}" + AC_TRY_COMPILE([],,ac_cv_c_Winline=yes, ac_cv_c_Winline=no)]) + +if test "x${ac_cv_c_Wall}" != "xno"; then + CFLAGS_save="-Wall ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}" + CXXFLAGS_save="-Wall ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" + OBJCFLAGS_save="-Wall ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}" +fi + +if test "x${ac_cv_c_Wunreachable_code}" != "xno"; then +# CFLAGS_save="-Wunreachable-code ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}" +# CXXFLAGS_save="-Wunreachable-code ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" +# OBJCFLAGS_save="-Wunreachable-code ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}" + + dnl -Wunreachable-code means gcc-3.x, we can use -Wconversion and we can + dnl activate -Winline for C++, it won't choke on system headers. +# if test "x${ac_cv_c_Wconversion}" != "xno"; then +# CFLAGS_save="-Wconversion ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}" +# CXXFLAGS_save="-Wconversion ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" +# OBJCFLAGS_save="-Wconversion ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}" +# fi + if test "x${ac_cv_c_Winline}" != "xno"; then + CXXFLAGS_save="-Winline ${CXXFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" fi + +fi + +if test "x${ac_cv_c_Wsign_compare}" != "xno"; then + CFLAGS_save="-Wsign-compare ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}" + CXXFLAGS_save="-Wsign-compare ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" + OBJCFLAGS_save="-Wsign-compare ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}" +fi + +if test "x${ac_cv_c_Wdisabled_optimization}" != "xno"; then + CFLAGS_save="-Wdisabled-optimization ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}" + CXXFLAGS_save="-Wdisabled-optimization ${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" + OBJCFLAGS_save="-Wdisabled-optimization ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}" +fi + +if test "x${ac_cv_c_Winline}" != "xno"; then + CFLAGS_save="-Winline ${CFLAGS_save}"; CFLAGS="${CFLAGS_save}" + OBJCFLAGS_save="-Winline ${OBJCFLAGS_save}"; OBJCFLAGS="${OBJCFLAGS_save}" fi dnl Check for -pipe @@ -461,6 +608,16 @@ if test "x${ac_cv_c_omit_frame_pointer}" != "xno"; then CFLAGS_i420_yuy2_mmx="${CFLAGS_i420_yuy2_mmx} -fomit-frame-pointer" fi +dnl Check for -mdynamic-no-pic +AC_CACHE_CHECK([if \$CC accepts -mdynamic-no-pic], + [ac_cv_c_dynamic_no_pic], + [CFLAGS="${CFLAGS_save} -mdynamic-no-pic" + AC_TRY_COMPILE([],,ac_cv_c_dynamic_no_pic=yes, ac_cv_c_dynamic_no_pic=no)]) +if test "x${ac_cv_c_dynamic_no_pic}" != "xno"; then + CFLAGS_builtins="${CFLAGS_builtins} -mdynamic-no-pic" + CFLAGS_libvlc="${CFLAGS_libvlc} -mdynamic-no-pic" +fi + dnl Check for Darwin plugin linking flags AC_CACHE_CHECK([if \$CC accepts -bundle -undefined error -lcc_dynamic], [ac_cv_ld_darwin], @@ -509,6 +666,19 @@ if test "x${ac_cv_c_attribute_aligned}" != "x0"; then [${ac_cv_c_attribute_aligned}],[Maximum supported data alignment]) fi +dnl Checks for __attribute__(format()) directive +AC_CACHE_CHECK([__attribute__ ((format ())) support with function pointers], + [ac_cv_c_attribute_format], + [ac_cv_c_attribute_format=no + CFLAGS="${CFLAGS_save} -Werror" + AC_TRY_COMPILE([], + [static void (*pf_printf)(const char *, ...) __attribute__ ((format(printf,1,2)));(void)pf_printf;], + [ac_cv_c_attribute_format=yes]) + CFLAGS="${CFLAGS_save}"]) +if test "x${ac_cv_c_attribute_format}" != "xno"; then + AC_DEFINE(HAVE_ATTRIBUTE_FORMAT, 1, Support for __attribute__((format())) with function pointers) +fi + dnl dnl Check the CPU dnl @@ -535,21 +705,17 @@ PLUGINS="${PLUGINS} es audio mpeg_system ps ts" PLUGINS="${PLUGINS} idct idctclassic motion mpeg_video spudec mpeg_audio" #PLUGINS="${PLUGINS} a52old imdct downmix" PLUGINS="${PLUGINS} lpcm a52" -PLUGINS="${PLUGINS} deinterlace invert wall transform distort clone crop motionblur" -PLUGINS="${PLUGINS} float32tos16 float32tos8 float32tou16 float32tou8 a52tospdif fixed32tofloat32 fixed32tos16 s16tofloat32 s16tofloat32swab" -PLUGINS="${PLUGINS} trivial_resampler ugly_resampler" -PLUGINS="${PLUGINS} trivial_channel_mixer" -PLUGINS="${PLUGINS} trivial_mixer spdif_mixer" +PLUGINS="${PLUGINS} deinterlace invert adjust wall transform distort clone crop motionblur" +PLUGINS="${PLUGINS} float32tos16 float32tos8 float32tou16 float32tou8 a52tospdif fixed32tofloat32 fixed32tos16 s16tofloat32 s16tofloat32swab s8tofloat32 u8tofixed32 u8tofloat32" +PLUGINS="${PLUGINS} trivial_resampler ugly_resampler linear_resampler" +PLUGINS="${PLUGINS} trivial_channel_mixer headphone_channel_mixer" +PLUGINS="${PLUGINS} trivial_mixer spdif_mixer float32_mixer" PLUGINS="${PLUGINS} aout_file" #PLUGINS="${PLUGINS} scope" PLUGINS="${PLUGINS} i420_rgb i420_yuy2 i422_yuy2 i420_ymga" -PLUGINS="${PLUGINS} id3" -PLUGINS="${PLUGINS} wav araw" - -dnl -dnl Network modules -dnl -NETWORK_MODULES="access_udp access_http access_rtp ipv4" +PLUGINS="${PLUGINS} id3 m3u" +PLUGINS="${PLUGINS} wav araw demuxdump demuxsub adpcm" +PLUGINS="${PLUGINS} access_udp access_http access_rtp ipv4 access_mms sap access_ftp" dnl dnl Accelerated modules @@ -560,11 +726,6 @@ THREEDNOW_MODULES="memcpy3dn imdct3dn downmix3dn" SSE_MODULES="imdctsse downmixsse" ALTIVEC_MODULES="idctaltivec motionaltivec memcpyaltivec" -if test x${SYS} != xbeos -then - PLUGINS="${PLUGINS} ${NETWORK_MODULES}" -fi - AC_CACHE_CHECK([if \$CC groks MMX inline assembly], [ac_cv_mmx_inline], [CFLAGS="${CFLAGS_save}" @@ -724,6 +885,20 @@ AC_ARG_ENABLE(release, [ --enable-release activate extra optimizations (default disabled)]) AM_CONDITIONAL(RELEASE, test "x${enable_release}" = "xyes") +dnl +dnl Stream output +dnl +AC_ARG_ENABLE(sout, + [ --enable-sout Stream output modules (default enabled)]) +if test "x${enable_sout}" != "xno" +then + PLUGINS="${PLUGINS} access_output_dummy access_output_udp access_output_file" + PLUGINS="${PLUGINS} mux_ts mux_ps mux_dummy" + PLUGINS="${PLUGINS} packetizer_mpegaudio packetizer_mpegvideo packetizer_a52" + PLUGINS="${PLUGINS} packetizer_mpeg4video packetizer_copy" +fi + + dnl dnl Input plugins dnl @@ -747,7 +922,8 @@ then then AC_CHECK_HEADERS(dvdcss/dvdcss.h, [ PLUGINS="${PLUGINS} dvd" - LDFLAGS_dvd="${LDFLAGS_dvd} -ldvdcss" ], + LDFLAGS_dvd="${LDFLAGS_dvd} -ldvdcss" + LDFLAGS_dvdcss="${LDFLAGS_dvdcss} -ldvdcss" ], [ AC_MSG_WARN([libdvdcss is no longer provided with vlc; please get libdvdcss from http://www.videolan.org/libdvdcss/ and build it. Then either use --with-dvdcss= for dynamic linking (recommended under Unix) or --with-dvdcss-tree= for static linking (recommended under BeOS, Windows, MacOS X). Alternatively you can use --disable-dvd to disable the DVD plugin.]) AC_MSG_ERROR([cannot find libdvdcss headers]) ]) else @@ -765,6 +941,7 @@ then AC_MSG_RESULT(${real_dvdcss_tree}/src/.libs/libdvdcss.a) BUILTINS="${BUILTINS} dvd" LDFLAGS_dvd="${LDFLAGS_dvd} ${real_dvdcss_tree}/src/.libs/libdvdcss.a" + LDFLAGS_dvdcss="${LDFLAGS_dvdcss} ${real_dvdcss_tree}/src/.libs/libdvdcss.a" CPPFLAGS_dvd="${CPPFLAGS_dvd} -I${real_dvdcss_tree}/src" else dnl The given libdvdcss wasn't built @@ -787,6 +964,7 @@ then AC_MSG_RESULT(yes) PLUGINS="${PLUGINS} dvd" LDFLAGS_dvd="${LDFLAGS_dvd} -L${with_dvdcss}/lib -ldvdcss" + LDFLAGS_dvdcss="${LDFLAGS_dvdcss} -L${with_dvdcss}/lib -ldvdcss" CPPFLAGS_dvd="${CPPFLAGS_dvd} -I${with_dvdcss}/include" else dnl No libdvdcss could be found, sorry @@ -798,47 +976,65 @@ then fi dnl -dnl dvdread module: check for libdvdread plugin +dnl dvdread module: check for libdvdread dnl AC_ARG_ENABLE(dvdread, [ --enable-dvdread dvdread input module (default disabled)]) if test "x${enable_dvdread}" != "xno" then AC_ARG_WITH(dvdread, - [ --with-dvdread=PATH libdvdread headers and libraries]) - if test "x${with_dvdread}" = "x" + [ --with-dvdread=PATH libdvdread headers and libraries]) + AC_ARG_WITH(dvdread-tree, + [ --with-dvdread-tree=PATH libdvdread tree for static linking]) + if test "x${with_dvdread}" = x then - LDFLAGS_test="" - CPPFLAGS_test="" - else - LDFLAGS_test="-L${with_dvdread}/lib" - CPPFLAGS_test="-I${with_dvdread}/include" - fi - CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test}" - AC_CHECK_HEADERS(dvdread/dvd_reader.h, [ - AC_TRY_COMPILE([#include ], - [int foo() { return DVD_VIDEO_LB_LEN; }],[ - PLUGINS="${PLUGINS} dvdread" - LDFLAGS_dvdread="${LDFLAGS_dvdread} ${LDFLAGS_test} -ldvdread" - CPPFLAGS_dvdread="${CPPFLAGS_dvdread} ${CPPFLAGS_test}" - ],[ - if test "x${enable_dvdread}" != "x" - then - AC_MSG_ERROR([Cannot find DVD_VIDEO_LB_LEN in dvdread/dvd_reader.h, please install libdvdread version 0.9.2 or later]) - fi - ]) - ],[ - if test "x${enable_dvdread}" != "x" + if test "x${with_dvdread_tree}" = x then - if test "x${with_dvdread}" != "x" + AC_CHECK_HEADERS(dvdread/dvd_reader.h, + [ PLUGINS="${PLUGINS} dvdread" + LDFLAGS_dvdread="${LDFLAGS_dvdread} -ldvdread ${LDFLAGS_dvdcss}" ], + [ if test "x${enable_dvdread}" != "x" + then + AC_MSG_WARN([Please get libdvdread from http://www.dtek.chalmers.se/groups/dvd/downloads.shtml]) + AC_MSG_ERROR([cannot find libdvdread headers]) + fi ]) + else + AC_MSG_CHECKING(for libdvdread.a in ${with_dvdread_tree}) + real_dvdread_tree="`cd ${with_dvdread_tree} 2>/dev/null && pwd`" + if test "x${real_dvdread_tree}" = "x" + then + dnl The given directory can't be found + AC_MSG_RESULT(no) + AC_MSG_ERROR([cannot cd to ${with_dvdread_tree}]) + fi + if test -f "${real_dvdread_tree}/dvdread/.libs/libdvdread.a" then - AC_MSG_ERROR([Cannot find dvdread/dvd_reader.h in ${with_dvdread}/include]) + dnl Use a custom libdvdread + AC_MSG_RESULT(${real_dvdread_tree}/dvdread/.libs/libdvdread.a) + BUILTINS="${BUILTINS} dvdread" + LDFLAGS_dvdread="${LDFLAGS_dvdread} ${real_dvdread_tree}/dvdread/.libs/libdvdread.a ${LDFLAGS_dvdcss}" + CPPFLAGS_dvdread="${CPPFLAGS_dvdread} -I${real_dvdread_tree}" else - AC_MSG_ERROR([Cannot find dvdread/dvd_reader.h]) + dnl The given libdvdread wasn't built + AC_MSG_RESULT(no) + AC_MSG_ERROR([cannot find ${real_dvdread_tree}/dvdread/.libs/libdvdread.a, make sure you compiled libdvdread in ${with_dvdread_tree}]) fi fi - ]) - CPPFLAGS="${CPPFLAGS_save}" + else + AC_MSG_CHECKING(for dvdread headers in ${with_dvdread}) + if test -f ${with_dvdread}/include/dvdread/dvd_reader.h + then + dnl Use ${with_dvdread}/include/dvdread/dvd_reader.h + AC_MSG_RESULT(yes) + PLUGINS="${PLUGINS} dvdread" + LDFLAGS_dvdread="${LDFLAGS_dvdread} -L${with_dvdread}/lib -ldvdread ${LDFLAGS_dvdcss}" + CPPFLAGS_dvdread="${CPPFLAGS_dvdread} -I${with_dvdread}/include" + else + dnl No libdvdread could be found, sorry + AC_MSG_RESULT(no) + AC_MSG_ERROR([cannot find ${with_dvdread}/include/dvdread/dvd_reader.h]) + fi + fi fi dnl @@ -849,40 +1045,66 @@ AC_ARG_ENABLE(dvdplay, if test "x${enable_dvdplay}" != "xno" then AC_ARG_WITH(dvdplay, - [ --with-dvdplay=PATH libdvdplay headers and libraries]) + [ --with-dvdplay=PATH libdvdplay headers and libraries]) + AC_ARG_WITH(dvdplay-tree, + [ --with-dvdplay-tree=PATH libdvdplay tree for static linking]) if test "x${with_dvdplay}" = x then - LDFLAGS_test="" - CPPFLAGS_test="" - else - LDFLAGS_test="-L${with_dvdplay}/lib" - CPPFLAGS_test="-I${with_dvdplay}/include" - fi - CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test}" - AC_CHECK_HEADERS(dvdplay/dvdplay.h, [ - PLUGINS="${PLUGINS} dvdplay" - LDFLAGS_dvdplay="${LDFLAGS_dvdplay} ${LDFLAGS_test} -ldvdplay -ldvdread" - CPPFLAGS_dvdplay="${CPPFLAGS_dvdplay} ${CPPFLAGS_test}" - ],[ - if test "x${enable_dvdplay}" != x + if test "x${with_dvdplay_tree}" = x then - if test "x${with_dvdplay}" != x + AC_CHECK_HEADERS(dvdplay/dvdplay.h, + [ PLUGINS="${PLUGINS} dvdplay" + LDFLAGS_dvdplay="${LDFLAGS_dvdplay} -ldvdplay ${LDFLAGS_dvdread} ${LDFLAGS_dvdcss}" + CPPFLAGS_dvdplay="${CPPFLAGS_dvdplay} ${CPPFLAGS_dvdread}" ], + [ if test "x${enable_dvdplay}" != "x" + then + AC_MSG_WARN([Please get libdvdplay from http://www.videolan.org/.]) + AC_MSG_ERROR([cannot find libdvdplay headers]) + fi ]) + else + AC_MSG_CHECKING(for libdvdplay.a in ${with_dvdplay_tree}) + real_dvdplay_tree="`cd ${with_dvdplay_tree} 2>/dev/null && pwd`" + if test "x${real_dvdplay_tree}" = "x" then - AC_MSG_ERROR([Cannot find dvdplay/dvdplay.h in ${with_dvdplay}/include]) + dnl The given directory can't be found + AC_MSG_RESULT(no) + AC_MSG_ERROR([cannot cd to ${with_dvdplay_tree}]) + fi + if test -f "${real_dvdplay_tree}/src/.libs/libdvdplay.a" + then + dnl Use a custom libdvdplay + AC_MSG_RESULT(${real_dvdplay_tree}/src/.libs/libdvdplay.a) + BUILTINS="${BUILTINS} dvdplay" + LDFLAGS_dvdplay="${LDFLAGS_dvdplay} ${real_dvdplay_tree}/src/.libs/libdvdplay.a ${LDFLAGS_dvdread} ${LDFLAGS_dvdcss}" + CPPFLAGS_dvdplay="${CPPFLAGS_dvdplay} ${CPPFLAGS_dvdread} -I${real_dvdplay_tree}/src" else - AC_MSG_ERROR([Cannot find dvdplay/dvdplay.h]) + dnl The given libdvdplay wasn't built + AC_MSG_RESULT(no) + AC_MSG_ERROR([cannot find ${real_dvdplay_tree}/src/.libs/libdvdplay.a, make sure you compiled libdvdplay in ${with_dvdplay_tree}]) fi fi - ]) - CPPFLAGS="${CPPFLAGS_save}" + else + AC_MSG_CHECKING(for dvdplay headers in ${with_dvdplay}) + if test -f ${with_dvdplay}/include/dvdplay/dvdplay.h + then + dnl Use ${with_dvdplay}/include/dvdplay/dvdplay.h + AC_MSG_RESULT(yes) + PLUGINS="${PLUGINS} dvdplay" + LDFLAGS_dvdplay="${LDFLAGS_dvdplay} -L${with_dvdplay}/lib -ldvdplay ${LDFLAGS_dvdread} ${LDFLAGS_dvdcss}" + CPPFLAGS_dvdplay="${CPPFLAGS_dvdplay} ${CPPFLAGS_dvdread} -I${with_dvdplay}/include" + else + dnl No libdvdplay could be found, sorry + AC_MSG_RESULT(no) + AC_MSG_ERROR([cannot find ${with_dvdplay}/include/dvdplay/dvdplay.h]) + fi + fi fi - dnl dnl libdvbpsi ts demux dnl AC_ARG_ENABLE(dvbpsi, -[ --enable-dvbpsi dvbpsi ts demux module (default disabled)]) +[ --enable-dvbpsi dvbpsi ts demux module (default enabled)]) if test "x${enable_dvbpsi}" != "xno" then AC_ARG_WITH(dvbpsi, @@ -895,8 +1117,13 @@ then then AC_CHECK_HEADERS(dvbpsi/dr.h, [ PLUGINS="${PLUGINS} ts_dvbpsi" - LDFLAGS_ts_dvbpsi="${LDFLAGS_ts_dvbpsi} -ldvbpsi" ], [], - [ AC_MSG_ERROR([cannot find libdvbpsi headers]) ]) + LDFLAGS_ts_dvbpsi="${LDFLAGS_ts_dvbpsi} -ldvbpsi" ], + [ AC_MSG_WARN([cannot find libdvbpsi headers]) ], + [#include +#include +#include +#include +#include ]) else AC_MSG_CHECKING(for libdvbpsi.a in ${with_dvbpsi_tree}) real_dvbpsi_tree="`cd ${with_dvbpsi_tree} 2>/dev/null && pwd`" @@ -973,6 +1200,11 @@ then PLUGINS="${PLUGINS} vcd" ]) + AC_EGREP_HEADER(scsireq,sys/scsiio.h,[ + PLUGINS="${PLUGINS} vcd" + AC_DEFINE(HAVE_SCSIREQ_IN_SYS_SCSIIO_H, 1, For NetBSD VCD support) + ]) + AC_EGREP_HEADER(ioc_toc_header ,sys/cdio.h,[ PLUGINS="${PLUGINS} vcd" AC_DEFINE(HAVE_IOC_TOC_HEADER_IN_SYS_CDIO_H, 1, For FreeBSD VCD support) @@ -1035,6 +1267,16 @@ then PLUGINS="${PLUGINS} avi" fi +dnl +dnl ASF demux plugin +dnl +AC_ARG_ENABLE(asf, + [ --enable-asf ASF demux module (default enabled)]) +if test "x${enable_asf}" != "xno" +then + PLUGINS="${PLUGINS} asf" +fi + dnl dnl AAC demux plugin dnl @@ -1045,6 +1287,32 @@ then PLUGINS="${PLUGINS} aac" fi +dnl +dnl ogg plugin +dnl +AC_ARG_ENABLE(ogg, + [ --enable-ogg Ogg demux support (default enabled)]) +if test "x${enable_ogg}" != "xno" +then + AC_CHECK_HEADERS(ogg/ogg.h, [ + AC_CHECK_LIB( ogg, oggpack_read, [ + PLUGINS="${PLUGINS} ogg" + LDFLAGS_ogg="${LDFLAGS_ogg} -logg" + AC_CHECK_LIB( ogg, oggpackB_read, [ + CPPFLAGS_ogg="${CPPFLAGS_ogg} -DHAVE_OGGPACKB"])]) + ],[]) +fi + +dnl +dnl raw dv demux plugin +dnl +AC_ARG_ENABLE(rawdv, + [ --enable-rawdv raw dv demux module (default enabled)]) +if test "x${enable_rawdv}" != "xno" +then + PLUGINS="${PLUGINS} rawdv" +fi + dnl dnl Codec plugins dnl @@ -1127,7 +1395,7 @@ then [ --with-ffmpeg=PATH path to ffmpeg installation],[],[]) if test "x${with_ffmpeg}" != "xno" -a "x${with_ffmpeg}" != "x" then - CPPFLAGS_ffmpeg="${CPPFLAGS_ffmpeg} -I${with_ffmpeg}/include/libffmpeg" + CPPFLAGS_ffmpeg="${CPPFLAGS_ffmpeg} -I${with_ffmpeg}/include/ffmpeg" LDFLAGS_ffmpeg="${LDFLAGS_ffmpeg} -L${with_ffmpeg}/lib" fi @@ -1232,6 +1500,61 @@ then fi +dnl +dnl xvid decoder plugin +dnl +AC_ARG_ENABLE(xvid, +[ --enable-xvid xvid codec (default disabled)]) +if test "x${enable_xvid}" = "xyes" +then + AC_ARG_WITH(xvid, + [ --with-xvid=PATH path to xvid installation],[],[]) + if test "x${with_xvid}" != "xno" -a "x${with_xvid}" != "x" + then + CPPFLAGS_xvid="${CPPFLAGS_xvid} -I${with_xvid}/include" + LDFLAGS_xvid="${LDFLAGS_xvid} -L${with_xvid}/lib" + fi + LDFLAGS_xvid="${LDFLAGS_xvid}" + + AC_ARG_WITH(xvid-tree, + [ --with-xvid-tree=PATH xvid tree for static linking]) + if test "x${with_xvid_tree}" != "x" + then + AC_MSG_CHECKING(for libxvidcore.a in ${with_xvid_tree}) + real_xvid_tree="`cd ${with_xvid_tree} 2>/dev/null && pwd`" + if test "x${real_xvid_tree}" = x + then + dnl The given directory can't be found + AC_MSG_RESULT(no) + AC_MSG_ERROR([cannot cd to ${with_xvid_tree}]) + fi + if test -f "${real_xvid_tree}/build/generic/libxvidcore.a" + then + dnl Use a custom xvid + AC_MSG_RESULT(${real_xvid_tree}/build/generic/libxvidcore.a) + BUILTINS="${BUILTINS} xvid" + LDFLAGS_xvid="${LDFLAGS_xvid} ${real_xvid_tree}/build/generic/libxvidcore.a" + CPPFLAGS_xvid="${CPPFLAGS_xvid} -I${real_xvid_tree}/src" + else + dnl The given libxvidcore wasn't built + AC_MSG_RESULT(no) + AC_MSG_ERROR([cannot find ${real_xvid_tree}/build/generic/libxvidcore.a, make sure you compiled libxvidcore in ${with_xvid_tree}]) + fi + else + CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_xvid}" + LDFLAGS="${LDFLAGS_save} ${LDFLAGS_xvid}" + AC_CHECK_HEADERS(xvid.h, , + [ AC_MSG_ERROR([Cannot find development headers for libxvidcore...]) ]) + AC_CHECK_LIB(xvid, xvid_init, [ + PLUGINS="${PLUGINS} xvid" + LDFLAGS_xvid="${LDFLAGS_xvid} -lxvid" ], + [ AC_MSG_ERROR([Cannot find libxvidcore library...]) ]) + LDFLAGS="${LDFLAGS_save}" + CPPFLAGS="${CPPFLAGS_save}" + fi +fi + + dnl dnl MP4 module @@ -1276,7 +1599,7 @@ then LDFLAGS="${LDFLAGS_save} ${LDFLAGS_a52tofloat32}" AC_CHECK_LIB(a52, a52_free, [ BUILTINS="${BUILTINS} a52tofloat32" - LDFLAGS_a52tofloat32="${LDFLAGS_a52tofloat32} -la52 -lm" + LDFLAGS_a52tofloat32="-la52 ${LDFLAGS_a52tofloat32}" CPPFLAGS_a52tofloat32="${CPPFLAGS_a52tofloat32} -DUSE_A52DEC_TREE" ],[ if test -f ${real_a52_tree}/liba52/.libs/liba52.a @@ -1285,7 +1608,7 @@ then else AC_MSG_ERROR([the specified tree hasn't been compiled]) fi - ],[-lm]) + ]) LDFLAGS="${LDFLAGS_save}" else AC_MSG_RESULT(no) @@ -1305,14 +1628,14 @@ then AC_CHECK_HEADERS(a52dec/a52.h, [ AC_CHECK_LIB(a52, a52_free, [ PLUGINS="${PLUGINS} a52tofloat32" - LDFLAGS_a52tofloat32="${LDFLAGS_a52tofloat32} ${LDFLAGS_test} -la52 -lm" + LDFLAGS_a52tofloat32="${LDFLAGS_test} -la52 ${LDFLAGS_a52tofloat32}" CPPFLAGS_a52tofloat32="${CPPFLAGS_a52tofloat32} ${CPPFLAGS_test}" ],[ if test "x${enable_dvbpsi}" != "x" then AC_MSG_ERROR([Could not find a52 on your system: you may get it from http://liba52.sf.net]) fi - ],[-lm]) + ]) ]) CPPFLAGS="${CPPFLAGS_save}" LDFLAGS="${LDFLAGS_save}" @@ -1330,32 +1653,89 @@ then fi dnl -dnl ogg vorbis plugin +dnl DV plugin +dnl +AC_ARG_ENABLE(dv, + [ --enable-dv DV decoder support (default disabled)]) +if test "x${enable_dv}" = "xyes" +then + AC_CHECK_HEADERS(libdv/dv.h, [ + PLUGINS="${PLUGINS} dv" + LDFLAGS_dv="${LDFLAGS_dv} -ldv" + ],[]) +fi + +dnl +dnl Vorbis plugin dnl AC_ARG_ENABLE(vorbis, - [ --enable-vorbis Ogg/Vorbis decoder support (default enabled)]) + [ --enable-vorbis Vorbis decoder support (default enabled)]) if test "x${enable_vorbis}" != "xno" then - AC_CHECK_HEADERS(ogg/ogg.h, [ - dnl disabled for the moment - #PLUGINS="${PLUGINS} ogg vorbis" - LDFLAGS_vorbis="${LDFLAGS_vorbis} -lvorbis" + AC_CHECK_HEADERS(vorbis/codec.h, [ + PLUGINS="${PLUGINS} vorbis" + LDFLAGS_vorbis="${LDFLAGS_vorbis} -lvorbis -logg" ],[]) fi dnl -dnl DV plugin +dnl Tremor plugin dnl -AC_ARG_ENABLE(dv, - [ --enable-dv DV decoder support (default disabled)]) -if test "x${enable_dv}" = "xyes" +AC_ARG_ENABLE(tremor, + [ --enable-tremor Tremor decoder support (default disabled)]) +if test "x${enable_tremor}" = "xyes" then - AC_CHECK_HEADERS(libdv/dv.h, [ - PLUGINS="${PLUGINS} dv" - LDFLAGS_dv="${LDFLAGS_dv} -ldv" + AC_CHECK_HEADERS(tremor/ivorbiscodec.h, [ + PLUGINS="${PLUGINS} tremor" + LDFLAGS_tremor="${LDFLAGS_tremor} -lvorbisidec -logg" ],[]) fi +dnl +dnl tarkin decoder plugin +dnl +AC_ARG_ENABLE(tarkin, +[ --enable-tarkin experimental tarkin codec (default disabled)]) +if test "x${enable_tarkin}" = "xyes" +then + AC_ARG_WITH(tarkin-tree, + [ --with-tarkin-tree=PATH tarkin tree for static linking]) + if test "x${with_tarkin_tree}" != "x" + then + AC_MSG_CHECKING(for tarkin.o in ${with_tarkin_tree}) + real_tarkin_tree="`cd ${with_tarkin_tree} 2>/dev/null && pwd`" + if test -f "${real_tarkin_tree}/tarkin.o" + then + BUILTINS="${BUILTINS} tarkin" + CPPFLAGS_tarkin="${CPPFLAGS_tarkin} -I${real_tarkin_tree}" + LDFLAGS_tarkin="${LDFLAGS_tarkin} ${real_tarkin_tree}/mem.o ${real_tarkin_tree}/pnm.o ${real_tarkin_tree}/wavelet.o ${real_tarkin_tree}/wavelet_xform.o ${real_tarkin_tree}/wavelet_coeff.o ${real_tarkin_tree}/yuv.o ${real_tarkin_tree}/tarkin.o ${real_tarkin_tree}/info.o -logg" + AC_MSG_RESULT(yes) + else + dnl The given tarkin tree wasn't built + AC_MSG_RESULT(no) + AC_MSG_ERROR([cannot find ${real_tarkin_tree}/tarkin.o, + make sure you compiled tarkin in ${with_tarkin_tree}]) + fi + fi +fi + +dnl +dnl theora decoder plugin +dnl +AC_ARG_ENABLE(theora, +[ --enable-theora experimental theora codec (default disabled)]) +if test "x${enable_theora}" = "xyes" +then + AC_CHECK_HEADERS(theora/theora.h, [ + AC_CHECK_LIB(theora, theora_granule_time, [ + BUILTINS="${BUILTINS} theora" + LDFLAGS_theora="${LDFLAGS_theora} -ltheora -logg" ],[ + AC_MSG_ERROR([libtheora doesn't appear to be installed on you system. +You also need to check that you have a libogg posterior to the 1.0 release.])], + [-logg]) + ]) +fi + dnl dnl Video plugins dnl @@ -1437,20 +1817,32 @@ then AC_PATH_PROG(SDL_CONFIG, sdl-config, no, ${SDL_PATH}) SDL_HEADER="SDL/SDL.h" fi + # check for cross-compiling + SDL_PREFIX= + AC_ARG_WITH(sdl-prefix, + [ --with-sdl-prefix=PATH path to libsdl (needed for cross-compiling), + e.g use as: + --with-sdl-prefix=/usr/local/arm/2.95.3/arm-linux/usr)],[],[]) + if test "x${with_sdl_prefix}" != "xno" -a "x${with_sdl_prefix}" != "x" + then + SDL_PREFIX="--prefix=${with_sdl_prefix}" + fi if test "x${SDL_CONFIG}" != "xno" then PLUGINS="${PLUGINS} vout_sdl aout_sdl" - CFLAGS_vout_sdl="${CFLAGS_vout_sdl} `${SDL_CONFIG} --cflags`" - LDFLAGS_vout_sdl="${LDFLAGS_vout_sdl} `${SDL_CONFIG} --libs | sed 's,-rdynamic,,'`" - CFLAGS_aout_sdl="${CFLAGS_aout_sdl} `${SDL_CONFIG} --cflags`" - LDFLAGS_aout_sdl="${LDFLAGS_aout_sdl} `${SDL_CONFIG} --libs | sed 's,-rdynamic,,'`" + CFLAGS_vout_sdl="${CFLAGS_vout_sdl} `${SDL_CONFIG} ${SDL_PREFIX} --cflags | sed 's,SDL,,'`" + LDFLAGS_vout_sdl="${LDFLAGS_vout_sdl} `${SDL_CONFIG} ${SDL_PREFIX} --libs | sed 's,-rdynamic,,'`" + CFLAGS_aout_sdl="${CFLAGS_aout_sdl} `${SDL_CONFIG} ${SDL_PREFIX} --cflags | sed 's,SDL,,'`" + LDFLAGS_aout_sdl="${LDFLAGS_aout_sdl} `${SDL_CONFIG} ${SDL_PREFIX} --libs | sed 's,-rdynamic,,'`" CPPFLAGS="${CPPFLAGS_save} ${CFLAGS_vout_sdl}" AC_CHECK_HEADERS(${SDL_HEADER}, AC_DEFINE_UNQUOTED(SDL_INCLUDE_FILE, <${SDL_HEADER}>, Indicate whether we should use SDL/SDL.h or SDL11/SDL.h), + [ AC_CHECK_HEADERS(SDL.h, AC_DEFINE(SDL_INCLUDE_FILE, , + As a last resort we also test for SDL.h presence), [ AC_MSG_ERROR([The development package for SDL is not installed. Please install it and try again. Alternatively you can also configure with --disable-sdl.]) - ]) + ])]) CPPFLAGS="${CPPFLAGS_save}" if expr 1.1.5 \> `${SDL_CONFIG} --version` >/dev/null then @@ -1472,31 +1864,23 @@ dnl (disabled by default) dnl AC_ARG_ENABLE(qte, [ --enable-qte QT Embedded support (default disabled)]) -if test "x${enable_qte}" != "xno" +if test "x${enable_qte}" = "xyes" then AC_ARG_WITH(qte, - [ --with-qte=PATH Qt Embedded headers and libraries]) - if test "x${with_qte}" = "x" + [ --with-qte=PATH Qt Embedded headers and libraries]) + if test "x${with_qte}" != "xno" -a "x${with_qte}" != "x" then - LDFLAGS_test="-L${QTDIR}/lib" - CPPFLAGS_test="-I${QTDIR}/include" + LDFLAGS_qte="${LDFLAGS_qte} -L${with_qte}/lib `echo -L${with_qte}/lib | sed 's,opt/QtPalmtop,usr,'` -ljpeg -lqte" + CPPFLAGS_qte="${CPPFLAGS_qte} -I${with_qte}/include `echo -I${with_qte}/include | sed 's,opt/QtPalmtop,usr,'` -DQT_QWS_IPAQ -DQWS -fno-exceptions -fno-rtti" else - LDFLAGS_test="-L${with_qte}/lib" - CPPFLAGS_test="-I${with_qte}/include" + LDFLAGS_qte="${LDFLAGS_qte} -L${QTDIR}/lib `echo -L${QTDIR}/lib | sed 's,opt/QtPalmtop,usr,'` -ljpeg -lqte" + CPPFLAGS_qte="${CPPFLAGS_qte} -I${QTDIR}/include `echo -I${QTDIR}/include | sed 's,opt/QtPalmtop,usr,'` -DQT_QWS_IPAQ -DQWS -fno-exceptions -fno-rtti" fi - - CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_test}" - AC_CHECK_HEADERS(qt.h, [ - CPPFLAGS_qte="${CPPFLAGS_qte} ${CPPFLAGS_test} -DQT_QWS_IPAQ -DQWS" - CXXFLAGS_qte="${CXXFLAGS_qte} -fno-exceptions -fno-rtti" - LDFLAGS_qte="${LDFLAGS_qte} ${LDFLAGS_test} -lqte" - if test "x${with_qte}" = "x" - then - PLUGINS="${PLUGINS} qte" - else - BUILTINS="${BUILTINS} qte" - fi - ]) + PLUGINS="${PLUGINS} qte" + CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_qte}" + AC_CHECK_HEADERS(qt.h jpeglib.h, ,[ + AC_MSG_ERROR([echo "Cannot find QT Embedded development headers."]) + ] ) CPPFLAGS="${CPPFLAGS_save}" fi @@ -1618,6 +2002,18 @@ then fi fi +dnl +dnl win32 GDI plugin +dnl +AC_ARG_ENABLE(wingdi, + [ --enable-wingdi Win32 GDI module (default enabled on Win32)]) +if test "x${enable_wingdi}" != "xno"; then + if test "x${SYS}" = "xmingw32" -o "x${SYS}" = "xcygwin"; then + PLUGINS="${PLUGINS} wingdi" + LDFLAGS_wingdi="${LDFLAGS_wingdi} -lgdi32" + fi +fi + dnl dnl Audio plugins dnl @@ -1784,14 +2180,24 @@ then then AC_PATH_PROG(GTK_CONFIG, gtk-config, no, ${GTK_PATH}) fi + # check for cross-compiling + GTK_PREFIX= + AC_ARG_WITH(gtk-prefix, + [ --with-gtk-prefix=PATH path to libgtk (needed for cross-compiling), + e.g use as: + --with-gtk-prefix=/usr/local/arm/2.95.3/arm-linux/usr)],[],[]) + if test "x${with_gtk_prefix}" != "xno" -a "x${with_gtk_prefix}" != "x" + then + GTK_PREFIX="--prefix=$with_gtk_prefix" + fi if test "x${GTK_CONFIG}" != "xno" then 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-familiar.]) fi - CFLAGS_familiar="${CFLAGS_familiar} `${GTK_CONFIG} --cflags gtk gthread`" - LDFLAGS_familiar="${LDFLAGS_familiar} `${GTK_CONFIG} --libs gtk gthread | sed 's,-rdynamic,,'`" + CFLAGS_familiar="${CFLAGS_familiar} `${GTK_CONFIG} ${GTK_PREFIX} --cflags gtk gthread`" + LDFLAGS_familiar="${LDFLAGS_familiar} `${GTK_CONFIG} ${GTK_PREFIX} --libs gtk gthread | sed 's,-rdynamic,,'`" # now look for the gtk.h header CPPFLAGS="${CPPFLAGS_save} ${CFLAGS_familiar}" ac_cv_gtk_headers=yes @@ -1802,10 +2208,37 @@ then if test "x${ac_cv_gtk_headers}" = "xyes" then PLUGINS="${PLUGINS} familiar" - NEED_GTK_MAIN=yes fi CPPFLAGS="${CPPFLAGS_save}" - fi + + # now look for gpe support + AC_ARG_WITH(gpe-prefix, + [ --with-gpe-prefix=PATH gpe installation path prefix (default search in \$PATH)],[],[]) + if test "x$with_gpe_prefix" != "xno" -a "x$with_gpe_prefix" != "x" + then + CFLAGS_gpe="-I$with_gpe_prefix/include" + LDFLAGS_gpe="-lXi -lgdk_pixbuf -L$with_gpe_prefix/lib -lgpewidget" + # now look for gpe/init.h header file + CFLAGS_save=$CFLAGS + LDFLAGS_save=$LDFLAGS + CFLAGS="${CFLAGS_familiar} ${CFLAGS_gpe}" + LDFLAGS="${LDFLAGS_familiar} ${LDFLAGS_gpe}" + CPPFLAGS="${CPPFLAGS_save} ${CFLAGS_familiar} ${CFLAGS_gpe}" + ac_cv_gpe_headers=yes + AC_CHECK_HEADERS(gpe/init.h, , + [ ac_cv_gpe_headers=no + AC_MSG_ERROR([Cannot find development headers for libgpewidget...]) ]) + CFLAGS=$CFLAGS_save + LDFLAGS=$LDFLAG_save + if test "x${ac_cv_gpe_headers}" = "xyes" + then + CFLAGS_familiar="${CFLAGS_familiar} ${CFLAGS_gpe}" + LDFLAGS_familiar="${LDFLAGS_familiar} ${LDFLAGS_gpe}" + fi + else + NEED_GTK_MAIN=yes + fi # end gpe support + fi # end gtk+ support fi dnl @@ -1835,6 +2268,46 @@ developement tools or remove the --enable-gnome option]) CPPFLAGS="${CPPFLAGS_save}" fi]) +dnl +dnl wxWindows module +dnl +AC_ARG_ENABLE(wxwindows, + [ --enable-wxwindows wxWindows support (default enabled)]) +if test "x${enable_wxwindows}" != "xno" +then + WXWINDOWS_PATH="${PATH}" + AC_ARG_WITH(wx-config-path, + [ --with-wx-config-path=PATH wx-config path (default search in \$PATH)], + [ if test "x${with_wx_config_path}" != "xno" + then + WXWINDOWS_PATH="${with_wx_config_path}:${PATH}" + fi ]) + # look for wx-config + AC_PATH_PROG(WX_CONFIG, wx-config, no, ${WXWINDOWS_PATH}) + if test "x${WX_CONFIG}" != "xno" + then + if expr 2.3.0 \> `${WX_CONFIG} --version` >/dev/null + then + AC_MSG_ERROR([Your development package for wxWindows is too old, you need at least version 2.3.0. Please upgrade and try again. Alternatively you can also configure with --disable-wxwindows.]) + fi + CXXFLAGS_wxwindows="${CXXFLAGS_wxwindows} `${WX_CONFIG} --cxxflags`" + LDFLAGS_wxwindows="${LDFLAGS_wxwindows} `${WX_CONFIG} --libs`" + # now look for the wxprec.h header + CPPFLAGS="${save_CPPFLAGS} ${CXXFLAGS_wxwindows}" + ac_cv_wx_headers=yes + AC_CHECK_HEADERS(wx/wxprec.h, , [ + ac_cv_wx_headers=no + echo "Cannot find wxWindows development headers." + ]) + if test "x${ac_cv_wx_headers}" = "xyes" + then + PLUGINS="${PLUGINS} wxwindows" + ALIASES="${ALIASES} wxvlc" + fi + CPPFLAGS="${save_CPPFLAGS}" + fi +fi + dnl dnl Qt module dnl @@ -1879,24 +2352,29 @@ AC_ARG_ENABLE(opie, [ --enable-opie Qt embedded interface support (default disabled)], [if test "x${enable_opie}" = "xyes"; then AC_ARG_WITH(qte, - [ --with-qte=PATH Qt Embedded headers and libraries]) - if test "x${with_qte}" = "x" + [ --with-qte=PATH Qt Embedded headers and libraries]) + if test "x${with_qte}" != "xno" -a "x${with_qte}" != "x" then - LDFLAGS_test="-L${QTDIR}/lib" - CPPFLAGS_test="-I${QTDIR}/include" + LDFLAGS_qte="-L${with_qte}/lib `echo -L${with_qte}/lib | sed 's,opt/QtPalmtop,usr,'` -ljpeg -lqte" + CPPFLAGS_qte="-I${with_qte}/include `echo -I${with_qte}/include | sed 's,opt/QtPalmtop,usr,'` -DQT_QWS_IPAQ -DQWS -fno-exceptions -fno-rtti" else - LDFLAGS_test="-L${with_qte}/lib" - CPPFLAGS_test="-I${with_qte}/include" + LDFLAGS_qte="-L${QTDIR}/lib `echo -L${QTDIR}/lib | sed 's,opt/QtPalmtop,usr,'`" + CPPFLAGS_qte="-I${QTDIR}/include `echo -I${QTDIR}/include | sed 's,opt/QtPalmtop,usr,'`" fi + CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_qte}" + AC_CHECK_HEADERS(qt.h jpeglib.h, ,[ + AC_MSG_ERROR([echo "Cannot find QT Embedded development headers."]) + ] ) + CPPFLAGS="${CPPFLAGS_save}" PLUGINS="${PLUGINS} opie" - LDFLAGS_opie="${LDFLAGS_opie} ${LDFLAGS_test} -lqte" - CPPFLAGS_opie="${CPPFLAGS_opie} ${CPPFLAGS_test}" - if test -x ${QTEDIR}/bin/moc + LDFLAGS_opie="${LDFLAGS_opie} -lqpe ${LDFLAGS_qte}" + CPPFLAGS_opie="${CPPFLAGS_opie} ${CPPFLAGS_qte}" + if test "x${with_qte}" != "xno" -a "x${with_qte}" != "x" then - MOC=${QTEDIR}/bin/moc + MOC=${with_qte}/bin/moc else - MOC=moc + MOC=${QTDIR}/bin/moc fi fi]) @@ -1908,11 +2386,11 @@ AC_ARG_ENABLE(macosx, [if test "x${enable_macosx}" = "xyes" then BUILTINS="${BUILTINS} macosx" - LDFLAGS_macosx="${LDFLAGS_macosx} -framework CoreAudio -framework AudioToolbox -framework IOKit -framework Cocoa -framework Carbon -framework AGL -framework QuickTime -lobjc -ObjC" + LDFLAGS_macosx="${LDFLAGS_macosx} -framework CoreAudio -framework AudioToolbox -framework IOKit -framework Cocoa -framework Carbon -framework QuickTime -lobjc -ObjC" fi], [AC_CHECK_HEADERS(Cocoa/Cocoa.h, BUILTINS="${BUILTINS} macosx" - LDFLAGS_macosx="${LDFLAGS_macosx} -framework CoreAudio -framework AudioToolbox -framework IOKit -framework Cocoa -framework Carbon -framework AGL -framework QuickTime -lobjc -ObjC" + LDFLAGS_macosx="${LDFLAGS_macosx} -framework CoreAudio -framework AudioToolbox -framework IOKit -framework Cocoa -framework Carbon -framework QuickTime -lobjc -ObjC" )]) dnl @@ -2149,6 +2627,7 @@ if test "x${NEED_GTK_MAIN}" != "xno" then PLUGINS="${PLUGINS} gtk_main" CFLAGS_gtk="${CFLAGS_gtk} -DNEED_GTK_MAIN" + CFLAGS_familiar="${CFLAGS_familiar} -DNEED_GTK_MAIN" CFLAGS_gtk_main="${CFLAGS_gtk_main} ${CFLAGS_gtk} ${CFLAGS_familiar}" LDFLAGS_gtk_main="${LDFLAGS_gtk_main} ${LDFLAGS_gtk} ${LDFLAGS_familiar}" fi @@ -2262,6 +2741,7 @@ AC_SUBST(WINDRES) AC_SUBST(BCBUILDER) AC_SUBST(XPIDL) AC_SUBST(LIBEXT) +AC_SUBST(INCLUDES) AC_SUBST(CFLAGS_TUNING) AC_SUBST(CFLAGS_OPTIM) @@ -2270,7 +2750,9 @@ AC_SUBST(LDFLAGS) AC_SUBST(CFLAGS_vlc) AC_SUBST(CFLAGS_pics) +AC_SUBST(CXXFLAGS_pics) AC_SUBST(CFLAGS_plugins) +AC_SUBST(CXXFLAGS_plugins) AC_SUBST(CFLAGS_builtins) AC_SUBST(CPPFLAGS_mozilla)