3 # Original version (C) 2000 Pontscho/fresh!mindworkz
4 # pontscho@makacs.poliod.hu
6 # History / Contributors: check the cvs log !
8 # Cleanups all over the place (c) 2001 pl
11 # This configure script is *not* autoconf-based and has different semantics.
12 # It attempts to autodetect all settings and options where possible. It is
13 # possible to override autodetection with the --enable-option/--disable-option
14 # command line parameters. --enable-option forces the option on skipping
15 # autodetection. Yes, this means that compilation may fail and yes, this is not
16 # how autoconf-based configure scripts behave.
18 # configure generates a series of configuration files:
19 # - config.h contains #defines that are used in the C code.
20 # - config.mak is included from the Makefiles.
22 # If you want to add a new check for $feature, here is a simple skeleton:
24 # echocheck "$feature"
25 # if "$_feature" = auto; then
27 # #include <feature.h>
28 # int main(void) { return 0; }
31 # cc_check && _feature=yes
32 # if test "$_feature" = yes ; then
33 # _def_feature='#define CONFIG_FEATURE 1'
35 # _def_feature='#undef CONFIG_FEATURE'
39 # Furthermore you need to add the variable _feature to the list of default
40 # settings and set it to one of yes/no/auto. Also add appropriate
41 # --enable-feature/--disable-feature command line options.
42 # The results of the check should be written to config.h and config.mak
43 # at the end of this script. The variable names used for this should be
44 # uniform, i.e. if the option is named 'feature':
46 # _feature : should have a value of yes/no/auto
47 # _def_feature : '#define ... 1' or '#undef ...' for conditional compilation
48 # _ld_feature : '-L/path/dir -lfeature' GCC options
50 #############################################################################
52 # Prevent locale nonsense from breaking basic text processing utils
56 # Store the configure line that was used
59 # Prefer these macros to full length text !
60 # These macros only return an error code - NO display is done
65 echo "$_cc $CFLAGS $_inc_extra $_ld_static $_ld_extra $_libs_mplayer $_libs_mencoder -o $TMPEXE $@" >> "$TMPLOG"
67 $_cc $CFLAGS $_inc_extra $_ld_static $_ld_extra $_libs_mplayer $_libs_mencoder -o "$TMPEXE" "$@" >> "$TMPLOG" 2>&1
75 compile_check
$TMPC $@
79 compile_check
$TMPCPP $@
-lstdc++
83 "$TMPEXE" >> "$TMPLOG" 2>&1
86 # Display error message, flushes tempfile, exit
91 rm -f "$TMPEXE" "$TMPC" "$TMPS" "$TMPCPP"
92 echo "Check \"$TMPLOG\" if you do not understand why it failed."
96 # OS test booleans functions
98 test "`echo $system_name | tr A-Z a-z`" = "`echo $1 | tr A-Z a-z`"
100 linux
() { issystem
"Linux" || issystem
"uClinux" ; return "$?" ; }
101 sunos
() { issystem
"SunOS" ; return "$?" ; }
102 hpux
() { issystem
"HP-UX" ; return "$?" ; }
103 irix
() { issystem
"IRIX" ; return "$?" ; }
104 aix
() { issystem
"AIX" ; return "$?" ; }
105 cygwin
() { issystem
"CYGWIN" ; return "$?" ; }
106 freebsd
() { issystem
"FreeBSD" || issystem
"GNU/kFreeBSD"; return "$?" ; }
107 netbsd
() { issystem
"NetBSD" ; return "$?" ; }
108 bsdos
() { issystem
"BSD/OS" ; return "$?" ; }
109 openbsd
() { issystem
"OpenBSD" ; return "$?" ; }
110 dragonfly
() { issystem
"DragonFly" ; return "$?" ; }
111 qnx
() { issystem
"QNX" ; return "$?" ; }
112 darwin
() { issystem
"Darwin" ; return "$?" ; }
113 gnu
() { issystem
"GNU" ; return "$?" ; }
114 mingw32
() { issystem
"MINGW32" ; return "$?" ; }
115 morphos
() { issystem
"MorphOS" ; return "$?" ; }
116 amigaos
() { issystem
"AmigaOS" ; return "$?" ; }
117 win32
() { cygwin || mingw32
; return "$?" ; }
118 beos
() { issystem
"BEOS" ; return "$?" ; }
119 os2
() { issystem
"OS/2" ; return "$?" ; }
121 # arch test boolean functions
122 # x86/x86pc is used by QNX
125 i
[3-9]86|x86|x86pc|k5|k6|k6-2|k6-3|pentium
*|athlon
*|i586-i686
) return 0 ;;
132 x86_64|amd64
) return 0 ;;
143 ppc|ppc64|powerpc|powerpc64
) return 0;;
162 # Use this before starting a check
164 echo "============ Checking for $@ ============" >> "$TMPLOG"
165 echo ${_echo_n} "Checking for $@ ... ${_echo_c}"
168 # Use this to echo the results of a check
170 if test "$_res_comment" ; then
171 _res_comment
="($_res_comment)"
173 echo "Result is: $@ $_res_comment" >> "$TMPLOG"
174 echo "##########################################" >> "$TMPLOG"
176 echo "$@ $_res_comment"
179 #############################################################################
181 # Check how echo works in this /bin/sh
183 -n) _echo_n
= _echo_c
='\c' ;; # SysV echo
184 *) _echo_n
='-n ' _echo_c
= ;; # BSD echo
187 msg_lang_all
=`echo help/help_mp-??.h help/help_mp-??_??.h | sed -e "s:help/help_mp-\(..\).h:\1:g" -e "s:help/help_mp-\(.....\).h:\1:g"`
188 man_lang_all
=`echo DOCS/man/??/mplayer.1 | sed -e "s:DOCS/man/\(..\)/mplayer.1:\1:g"`
189 doc_lang_all
=`echo DOCS/xml/??/ DOCS/xml/??_??/ | sed -e "s:DOCS/xml/\(..\)/:\1:g" -e "s:DOCS/xml/\(.._..\)/:\1:g"`
193 Usage: $0 [OPTIONS]...
196 -h, --help display this help and exit
198 Installation directories:
199 --prefix=DIR prefix directory for installation [/usr/local]
200 --bindir=DIR directory for installing binaries [PREFIX/bin]
201 --datadir=DIR directory for installing machine independent
202 data files (skins, etc) [PREFIX/share/mplayer]
203 --mandir=DIR directory for installing man pages [PREFIX/share/man]
204 --confdir=DIR directory for installing configuration files
206 --libdir=DIR directory for object code libraries [PREFIX/lib]
207 --codecsdir=DIR directory for binary codecs [LIBDIR/codecs]
208 --win32codecsdir=DIR directory for Windows DLLs [LIBDIR/codecs]
209 --xanimcodecsdir=DIR directory for XAnim codecs [LIBDIR/codecs]
210 --realcodecsdir=DIR directory for RealPlayer codecs [LIBDIR/codecs]
213 --disable-mencoder disable MEncoder (A/V encoder) compilation [enable]
214 --disable-mplayer disable MPlayer compilation [enable]
215 --enable-gui enable GMPlayer compilation (GTK+ GUI) [disable]
216 --enable-gtk1 force using GTK 1.2 for the GUI [disable]
217 --disable-largefiles disable support for files > 2GB [enable]
218 --enable-linux-devfs set default devices to devfs [disable]
219 --enable-termcap use termcap database for key codes [autodetect]
220 --enable-termios use termios database for key codes [autodetect]
221 --disable-iconv disable iconv for encoding conversion [autodetect]
222 --disable-langinfo do not use langinfo [autodetect]
223 --enable-lirc enable LIRC (remote control) support [autodetect]
224 --enable-lircc enable LIRCCD (LIRC client daemon) input [autodetect]
225 --enable-joystick enable joystick support [disable]
226 --enable-apple-remote enable Apple Remote input (Mac OS X only) [autodetect]
227 --enable-apple-ir enable Apple IR Remote input (Linux only) [autodetect]
228 --disable-vm disable X video mode extensions [autodetect]
229 --disable-xf86keysym disable support for multimedia keys [autodetect]
230 --enable-radio enable radio interface [disable]
231 --enable-radio-capture enable radio capture (through PCI/line-in) [disable]
232 --disable-radio-v4l2 disable Video4Linux2 radio interface [autodetect]
233 --disable-radio-bsdbt848 disable BSD BT848 radio interface [autodetect]
234 --disable-tv disable TV interface (TV/DVB grabbers) [enable]
235 --disable-tv-v4l1 disable Video4Linux TV interface [autodetect]
236 --disable-tv-v4l2 disable Video4Linux2 TV interface [autodetect]
237 --disable-tv-bsdbt848 disable BSD BT848 interface [autodetect]
238 --disable-tv-teletext disable TV teletext interface [autodetect]
239 --disable-pvr disable Video4Linux2 MPEG PVR [autodetect]
240 --disable-rtc disable RTC (/dev/rtc) on Linux [autodetect]
241 --disable-network disable networking [enable]
242 --enable-winsock2 enable winsock2 [autodetect]
243 --enable-smb enable Samba (SMB) input [autodetect]
244 --enable-live enable LIVE555 Streaming Media [autodetect]
245 --enable-nemesi enable Nemesi Streaming Media [autodetect]
246 --disable-dvdnav disable libdvdnav [autodetect]
247 --disable-dvdread disable libdvdread [autodetect]
248 --disable-dvdread-internal disable internal libdvdread [autodetect]
249 --disable-libdvdcss-internal disable internal libdvdcss [autodetect]
250 --disable-cdparanoia disable cdparanoia [autodetect]
251 --disable-cddb disable cddb [autodetect]
252 --disable-bitmap-font disable bitmap font support [enable]
253 --disable-freetype disable FreeType 2 font rendering [autodetect]
254 --disable-fontconfig disable fontconfig font lookup [autodetect]
255 --disable-unrarexec disable using of UnRAR executable [enabled]
256 --enable-menu enable OSD menu (not DVD menu) [disabled]
257 --disable-sortsub disable subtitle sorting [enabled]
258 --enable-fribidi enable the FriBiDi libs [autodetect]
259 --disable-enca disable ENCA charset oracle library [autodetect]
260 --disable-macosx disable Mac OS X specific features [autodetect]
261 --disable-maemo disable maemo specific features [autodetect]
262 --enable-macosx-finder enable Mac OS X Finder invocation parameter
264 --enable-macosx-bundle enable Mac OS X bundle file locations [autodetect]
265 --disable-inet6 disable IPv6 support [autodetect]
266 --disable-gethostbyname2 gethostbyname2 part of the C library [autodetect]
267 --disable-ftp disable FTP support [enabled]
268 --disable-vstream disable TiVo vstream client support [autodetect]
269 --disable-pthreads disable Posix threads support [autodetect]
270 --disable-w32threads disable Win32 threads support [autodetect]
271 --disable-ass disable internal SSA/ASS subtitle support [autodetect]
272 --enable-rpath enable runtime linker path for extra libs [disabled]
275 --enable-gif enable GIF support [autodetect]
276 --enable-png enable PNG input/output support [autodetect]
277 --enable-jpeg enable JPEG input/output support [autodetect]
278 --enable-libcdio enable external libcdio [autodetect]
279 --enable-liblzo enable external liblzo [autodetect]
280 --disable-win32dll disable Win32 DLL support [enabled]
281 --disable-qtx disable QuickTime codecs support [enabled]
282 --disable-xanim disable XAnim codecs support [enabled]
283 --disable-real disable RealPlayer codecs support [enabled]
284 --disable-xvid disable Xvid [autodetect]
285 --disable-xvid-lavc disable Xvid in libavcodec [autodetect]
286 --disable-x264 disable x264 [autodetect]
287 --disable-x264-lavc disable x264 in libavcodec [autodetect]
288 --disable-libdirac-lavc disable Dirac in libavcodec [autodetect]
289 --disable-libschroedinger-lavc disable Dirac in libavcodec (Schroedinger
290 decoder) [autodetect]
291 --disable-libnut disable libnut [autodetect]
292 --disable-libavutil_a disable static libavutil [autodetect]
293 --disable-libavcodec_a disable static libavcodec [autodetect]
294 --disable-libavformat_a disable static libavformat [autodetect]
295 --disable-libpostproc_a disable static libpostproc [autodetect]
296 --disable-libavutil_so disable shared libavutil [autodetect]
297 --disable-libavcodec_so disable shared libavcodec [autodetect]
298 --disable-libavformat_so disable shared libavformat [autodetect]
299 --disable-libpostproc_so disable shared libpostproc [autodetect]
300 --disable-libavcodec_mpegaudio_hp disable high precision audio decoding
301 in libavcodec [enabled]
302 --disable-tremor-internal disable internal Tremor [enabled]
303 --enable-tremor-low enable lower accuracy internal Tremor [disabled]
304 --enable-tremor-external enable external Tremor [autodetect]
305 --disable-libvorbis disable libvorbis support [autodetect]
306 --disable-speex disable Speex support [autodetect]
307 --enable-theora enable OggTheora libraries [autodetect]
308 --enable-faad-external enable external FAAD2 (AAC) [autodetect]
309 --disable-faad-internal disable internal FAAD2 (AAC) [autodetect]
310 --enable-faad-fixed enable fixed-point mode in internal FAAD2 [disabled]
311 --disable-faac disable support for FAAC (AAC encoder) [autodetect]
312 --disable-faac-lavc disable support for FAAC in libavcodec [autodetect]
313 --disable-ladspa disable LADSPA plugin support [autodetect]
314 --disable-libdv disable libdv 0.9.5 en/decoding support [autodetect]
315 --disable-mad disable libmad (MPEG audio) support [autodetect]
316 --disable-mp3lame disable LAME MP3 encoding support [autodetect]
317 --disable-mp3lame-lavc disable LAME in libavcodec [autodetect]
318 --disable-toolame disable Toolame (MPEG layer 2) encoding [autodetect]
319 --disable-twolame disable Twolame (MPEG layer 2) encoding [autodetect]
320 --enable-xmms enable XMMS input plugin support [disabled]
321 --enable-libdca enable libdca support [autodetect]
322 --disable-mp3lib disable builtin mp3lib [enabled]
323 --disable-liba52 disable builtin liba52 [enabled]
324 --disable-libmpeg2 disable builtin libmpeg2 [autodetect]
325 --disable-musepack disable musepack support [autodetect]
326 --disable-libamr_nb disable libamr narrowband [autodetect]
327 --disable-libamr_wb disable libamr wideband [autodetect]
328 --disable-decoder=DECODER disable specified FFmpeg decoder
329 --enable-decoder=DECODER enable specified FFmpeg decoder
330 --disable-encoder=ENCODER disable specified FFmpeg encoder
331 --enable-encoder=ENCODER enable specified FFmpeg encoder
332 --disable-parser=PARSER disable specified FFmpeg parser
333 --enable-parser=PARSER enable specified FFmpeg parser
334 --disable-demuxer=DEMUXER disable specified FFmpeg demuxer
335 --enable-demuxer=DEMUXER enable specified FFmpeg demuxer
336 --disable-muxer=MUXER disable specified FFmpeg muxer
337 --enable-muxer=MUXER enable specified FFmpeg muxer
340 --disable-vidix disable VIDIX [for x86 *nix]
341 --with-vidix-drivers[=*] list of VIDIX drivers to be compiled in
342 Available: cyberblade,ivtv,mach64,mga,mga_crtc2,
343 nvidia,pm2,pm3,radeon,rage128,s3,sis,unichrome
344 --disable-vidix-pcidb disable VIDIX PCI device name database
345 --enable-dhahelper enable VIDIX dhahelper support
346 --enable-svgalib_helper enable VIDIX svgalib_helper support
347 --enable-gl enable OpenGL video output [autodetect]
348 --enable-dga2 enable DGA 2 support [autodetect]
349 --enable-dga1 enable DGA 1 support [autodetect]
350 --enable-vesa enable VESA video output [autodetect]
351 --enable-svga enable SVGAlib video output [autodetect]
352 --enable-sdl enable SDL video output [autodetect]
353 --enable-aa enable AAlib video output [autodetect]
354 --enable-caca enable CACA video output [autodetect]
355 --enable-ggi enable GGI video output [autodetect]
356 --enable-ggiwmh enable GGI libggiwmh extension [autodetect]
357 --enable-directx enable DirectX video output [autodetect]
358 --enable-dxr2 enable DXR2 video output [autodetect]
359 --enable-dxr3 enable DXR3/H+ video output [autodetect]
360 --enable-ivtv enable IVTV TV-Out video output [autodetect]
361 --enable-v4l2 enable V4L2 Decoder audio/video output [autodetect]
362 --enable-dvb enable DVB video output [autodetect]
363 --enable-dvbhead enable DVB video output (HEAD version) [autodetect]
364 --enable-mga enable mga_vid video output [autodetect]
365 --enable-xmga enable mga_vid X11 video output [autodetect]
366 --enable-xv enable Xv video output [autodetect]
367 --enable-xvmc enable XvMC acceleration [disable]
368 --enable-vm enable XF86VidMode support [autodetect]
369 --enable-xinerama enable Xinerama support [autodetect]
370 --enable-x11 enable X11 video output [autodetect]
371 --enable-xshape enable XShape support [autodetect]
372 --disable-xss disable screensaver support via xss [autodetect]
373 --enable-fbdev enable FBDev video output [autodetect]
374 --enable-mlib enable mediaLib video output (Solaris) [disable]
375 --enable-3dfx enable obsolete /dev/3dfx video output [disable]
376 --enable-tdfxfb enable tdfxfb video output [disable]
377 --enable-s3fb enable s3fb (S3 ViRGE) video output [disable]
378 --enable-wii enable Nintendo Wii/GameCube video output [disable]
379 --enable-directfb enable DirectFB video output [autodetect]
380 --enable-zr enable ZR360[56]7/ZR36060 video output [autodetect]
381 --enable-bl enable Blinkenlights video output [disable]
382 --enable-tdfxvid enable tdfx_vid video output [disable]
383 --enable-xvr100 enable SUN XVR-100 video output [autodetect]
384 --disable-tga disable Targa video output [enable]
385 --disable-pnm disable PNM video output [enable]
386 --disable-md5sum disable md5sum video output [enable]
387 --disable-yuv4mpeg disable yuv4mpeg video output [enable]
390 --disable-alsa disable ALSA audio output [autodetect]
391 --disable-ossaudio disable OSS audio output [autodetect]
392 --disable-arts disable aRts audio output [autodetect]
393 --disable-esd disable esd audio output [autodetect]
394 --disable-pulse disable Pulseaudio audio output [autodetect]
395 --disable-jack disable JACK audio output [autodetect]
396 --disable-openal disable OpenAL audio output [autodetect]
397 --disable-nas disable NAS audio output [autodetect]
398 --disable-sgiaudio disable SGI audio output [autodetect]
399 --disable-sunaudio disable Sun audio output [autodetect]
400 --disable-win32waveout disable Windows waveout audio output [autodetect]
401 --disable-select disable using select() on the audio device [enable]
403 Miscellaneous options:
404 --enable-runtime-cpudetection enable runtime CPU detection [disable]
405 --enable-cross-compile enable cross-compilation [autodetect]
406 --cc=COMPILER C compiler to build MPlayer [gcc]
407 --host-cc=COMPILER C compiler for tools needed while building [gcc]
408 --as=ASSEMBLER assembler to build MPlayer [as]
409 --ar=AR librarian to build MPlayer [ar]
410 --ranlib=RANLIB ranlib to build MPlayer [ranlib]
411 --windres=WINDRES windres to build MPlayer [windres]
412 --target=PLATFORM target platform (i386-linux, arm-linux, etc)
413 --enable-static build a statically linked binary
414 --charset=charset convert the console messages to this character set
415 --language=list a white space or comma separated list of languages for
416 translated man pages, the first language is used for
417 messages and the GUI (the environment variable
418 \$LINGUAS is also honored) [en]
419 (Available: all $msg_lang_all)
420 --with-install=PATH path to a custom install program
423 --enable-mmx enable MMX [autodetect]
424 --enable-mmxext enable MMX2 (Pentium III, Athlon) [autodetect]
425 --enable-3dnow enable 3DNow! [autodetect]
426 --enable-3dnowext enable extended 3DNow! [autodetect]
427 --enable-sse enable SSE [autodetect]
428 --enable-sse2 enable SSE2 [autodetect]
429 --enable-ssse3 enable SSSE3 [autodetect]
430 --enable-shm enable shm [autodetect]
431 --enable-altivec enable AltiVec (PowerPC) [autodetect]
432 --enable-armv5te enable DSP extensions (ARM) [autodetect]
433 --enable-armv6 enable ARMv6 (ARM) [autodetect]
434 --enable-iwmmxt enable iWMMXt (ARM) [autodetect]
435 --disable-fastmemcpy disable 3DNow!/SSE/MMX optimized memcpy [enable]
436 --enable-big-endian force byte order to big-endian [autodetect]
437 --enable-debug[=1-3] compile-in debugging information [disable]
438 --enable-profile compile-in profiling information [disable]
439 --disable-sighandler disable sighandler for crashes [enable]
440 --enable-crash-debug enable automatic gdb attach on crash [disable]
441 --enable-dynamic-plugins enable dynamic A/V plugins [disable]
443 Use these options if autodetection fails (Options marked with (*) accept
444 multiple paths separated by ':'):
445 --extra-libs=FLAGS extra linker flags
446 --extra-libs-mplayer=FLAGS extra linker flags for MPlayer
447 --extra-libs-mencoder=FLAGS extra linker flags for MEncoder
448 --with-extraincdir=DIR extra header search paths in DIR (*)
449 --with-extralibdir=DIR extra linker search paths in DIR (*)
450 --with-xvmclib=NAME adapter-specific library name (e.g. XvMCNVIDIA)
452 --with-freetype-config=PATH path to freetype-config
453 --with-fribidi-config=PATH path to fribidi-config
454 --with-glib-config=PATH path to glib*-config
455 --with-gtk-config=PATH path to gtk*-config
456 --with-sdl-config=PATH path to sdl*-config
457 --with-dvdnav-config=PATH path to dvdnav-config
458 --with-dvdread-config=PATH path to dvdread-config
460 This configure script is NOT autoconf-based, even though its output is similar.
461 It will try to autodetect all configuration options. If you --enable an option
462 it will be forcefully turned on, skipping autodetection. This can break
463 compilation, so you need to know what you are doing.
468 # GOTCHA: the variables below defines the default behavior for autodetection
469 # and have - unless stated otherwise - at least 2 states : yes no
470 # If autodetection is available then the third state is: auto
490 test "$CC" && _cc
="$CC"
492 _runtime_cpudetection
=no
500 _libavdecoders_all
=`sed -n 's/^[^#]*DEC.*(.*, *\(.*\)).*/\1_decoder/p' ffmpeg/libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]'`
501 _libavdecoders
=` echo $_libavdecoders_all | sed -e 's/ LIB[A-Z0-9_]*_DECODER//g' -e s/MPEG4AAC_DECODER// `
502 _libavencoders_all
=`sed -n 's/^[^#]*ENC.*(.*, *\(.*\)).*/\1_encoder/p' ffmpeg/libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]'`
503 _libavencoders
=` echo $_libavencoders_all | sed 's/ LIB[A-Z0-9_]*_ENCODER//g'`
504 _libavparsers_all
=`sed -n 's/^[^#]*PARSER.*(.*, *\(.*\)).*/\1_parser/p' ffmpeg/libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]'`
505 _libavparsers
=$_libavparsers_all
506 _libavbsfs_all
=`sed -n 's/^[^#]*BSF.*(.*, *\(.*\)).*/\1_bsf/p' ffmpeg/libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]'`
507 _libavbsfs
=$_libavbsfs_all
508 _libavdemuxers_all
=`sed -n 's/^[^#]*DEMUX.*(.*, *\(.*\)).*/\1_demuxer/p' ffmpeg/libavformat/allformats.c | tr '[a-z]' '[A-Z]'`
509 _libavdemuxers
=`echo $_libavdemuxers_all | sed -e 's/ LIB[A-Z0-9_]*_DEMUXER//g' -e s/REDIR_DEMUXER// -e s/RTSP_DEMUXER// -e s/SDP_DEMUXER// -e s/AVISYNTH_DEMUXER// `
510 _libavmuxers_all
=`sed -n 's/^[^#]*_MUX.*(.*, *\(.*\)).*/\1_muxer/p' ffmpeg/libavformat/allformats.c | tr '[a-z]' '[A-Z]'`
511 _libavmuxers
=`echo $_libavmuxers_all | sed -e 's/ LIB[A-Z0-9_]*_MUXER//g' -e s/RTP_MUXER// `
512 _libavprotocols_all
=`sed -n 's/^[^#]*PROTOCOL.*(.*, *\(.*\)).*/\1_protocol/p' ffmpeg/libavformat/allformats.c | tr '[a-z]' '[A-Z]'`
518 _libavcodec_mpegaudio_hp
=yes
527 _xvmc
=no
#auto when complete
570 _tremor_external
=auto
586 _dvdnavconfig
=dvdnav-config
587 _dvdreadconfig
=dvdread-config
589 _dvdread_internal
=auto
590 _libdvdcss_internal
=auto
601 _mlib
=no
#broken, thus disabled
634 _libschroedinger_lavc
=auto
676 _freetypeconfig
='freetype-config'
678 _fribidiconfig
='fribidi-config'
691 _def_stream_cache
="#define CONFIG_STREAM_CACHE 1"
699 _prefix
=`echo $ac_option | cut -d '=' -f 2`
702 _bindir
=`echo $ac_option | cut -d '=' -f 2`
705 _datadir
=`echo $ac_option | cut -d '=' -f 2`
708 _mandir
=`echo $ac_option | cut -d '=' -f 2`
711 _confdir
=`echo $ac_option | cut -d '=' -f 2`
714 _libdir
=`echo $ac_option | cut -d '=' -f 2`
717 _codecsdir
=`echo $ac_option | cut -d '=' -f 2`
720 _win32codecsdir
=`echo $ac_option | cut -d '=' -f 2`
723 _xanimcodecsdir
=`echo $ac_option | cut -d '=' -f 2`
726 _realcodecsdir
=`echo $ac_option | cut -d '=' -f 2`
728 --with-extraincdir=*)
729 _inc_extra
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
731 --with-extralibdir=*)
732 _ld_extra
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
736 _install
=`echo $ac_option | cut -d '=' -f 2 `
739 _xvmclib
=`echo $ac_option | cut -d '=' -f 2`
743 _sdlconfig
=`echo $ac_option | cut -d '=' -f 2`
745 --with-freetype-config=*)
746 _freetypeconfig
=`echo $ac_option | cut -d '=' -f 2`
748 --with-fribidi-config=*)
749 _fribidiconfig
=`echo $ac_option | cut -d '=' -f 2`
752 _gtkconfig
=`echo $ac_option | cut -d '=' -f 2`
754 --with-glib-config=*)
755 _glibconfig
=`echo $ac_option | cut -d '=' -f 2`
757 --with-dvdnav-config=*)
758 _dvdnavconfig
=`echo $ac_option | cut -d '=' -f 2`
760 --with-dvdread-config=*)
761 _dvdreadconfig
=`echo $ac_option | cut -d '=' -f 2`
765 _extra_libs
=`echo $ac_option | cut -d '=' -f 2`
767 --extra-libs-mplayer=*)
768 _libs_mplayer
=`echo $ac_option | cut -d '=' -f 2`
770 --extra-libs-mencoder=*)
771 _libs_mencoder
=`echo $ac_option | cut -d '=' -f 2`
775 _target
=`echo $ac_option | cut -d '=' -f 2`
778 _cc
=`echo $ac_option | cut -d '=' -f 2`
781 _host_cc
=`echo $ac_option | cut -d '=' -f 2`
784 _as
=`echo $ac_option | cut -d '=' -f 2`
787 _ar
=`echo $ac_option | cut -d '=' -f 2`
790 _ranlib
=`echo $ac_option | cut -d '=' -f 2`
793 _windres
=`echo $ac_option | cut -d '=' -f 2`
796 _charset
=`echo $ac_option | cut -d '=' -f 2`
799 _language
=`echo $ac_option | cut -d '=' -f 2`
818 _debug
=`echo $_echo_n '-g'$_echo_c; echo $ac_option | cut -d '=' -f 2`
823 --enable-runtime-cpudetection) _runtime_cpudetection
=yes ;;
824 --disable-runtime-cpudetection) _runtime_cpudetection
=no
;;
825 --enable-cross-compile) _cross_compile
=yes ;;
826 --disable-cross-compile) _cross_compile
=no
;;
827 --enable-mencoder) _mencoder
=yes ;;
828 --disable-mencoder) _mencoder
=no
;;
829 --enable-mplayer) _mplayer
=yes ;;
830 --disable-mplayer) _mplayer
=no
;;
831 --enable-dynamic-plugins) _dynamic_plugins
=yes ;;
832 --disable-dynamic-plugins) _dynamic_plugins
=no
;;
833 --enable-x11) _x11
=yes ;;
834 --disable-x11) _x11
=no
;;
835 --enable-xshape) _xshape
=yes ;;
836 --disable-xshape) _xshape
=no
;;
837 --enable-xss) _xss
=yes ;;
838 --disable-xss) _xss
=no
;;
839 --enable-xv) _xv
=yes ;;
840 --disable-xv) _xv
=no
;;
841 --enable-xvmc) _xvmc
=yes ;;
842 --disable-xvmc) _xvmc
=no
;;
843 --enable-sdl) _sdl
=yes ;;
844 --disable-sdl) _sdl
=no
;;
845 --enable-directx) _directx
=yes ;;
846 --disable-directx) _directx
=no
;;
847 --enable-win32waveout) _win32waveout
=yes ;;
848 --disable-win32waveout) _win32waveout
=no
;;
849 --enable-nas) _nas
=yes ;;
850 --disable-nas) _nas
=no
;;
851 --enable-png) _png
=yes ;;
852 --disable-png) _png
=no
;;
853 --enable-jpeg) _jpeg
=yes ;;
854 --disable-jpeg) _jpeg
=no
;;
855 --enable-pnm) _pnm
=yes ;;
856 --disable-pnm) _pnm
=no
;;
857 --enable-md5sum) _md5sum
=yes ;;
858 --disable-md5sum) _md5sum
=no
;;
859 --enable-yuv4mpeg) _yuv4mpeg
=yes ;;
860 --disable-yuv4mpeg) _yuv4mpeg
=no
;;
861 --enable-gif) _gif
=yes ;;
862 --disable-gif) _gif
=no
;;
863 --enable-gl) _gl
=yes ;;
864 --disable-gl) _gl
=no
;;
865 --enable-ggi) _ggi
=yes ;;
866 --disable-ggi) _ggi
=no
;;
867 --enable-ggiwmh) _ggiwmh
=yes ;;
868 --disable-ggiwmh) _ggiwmh
=no
;;
869 --enable-aa) _aa
=yes ;;
870 --disable-aa) _aa
=no
;;
871 --enable-caca) _caca
=yes ;;
872 --disable-caca) _caca
=no
;;
873 --enable-svga) _svga
=yes ;;
874 --disable-svga) _svga
=no
;;
875 --enable-vesa) _vesa
=yes ;;
876 --disable-vesa) _vesa
=no
;;
877 --enable-fbdev) _fbdev
=yes ;;
878 --disable-fbdev) _fbdev
=no
;;
879 --enable-dvb) _dvb
=yes ;;
880 --disable-dvb) _dvb
=no
;;
881 --enable-dvbhead) _dvbhead
=yes ;;
882 --disable-dvbhead) _dvbhead
=no
;;
883 --enable-dxr2) _dxr2
=yes ;;
884 --disable-dxr2) _dxr2
=no
;;
885 --enable-dxr3) _dxr3
=yes ;;
886 --disable-dxr3) _dxr3
=no
;;
887 --enable-ivtv) _ivtv
=yes ;;
888 --disable-ivtv) _ivtv
=no
;;
889 --enable-v4l2) _v4l2
=yes ;;
890 --disable-v4l2) _v4l2
=no
;;
891 --enable-iconv) _iconv
=yes ;;
892 --disable-iconv) _iconv
=no
;;
893 --enable-langinfo) _langinfo
=yes ;;
894 --disable-langinfo) _langinfo
=no
;;
895 --enable-rtc) _rtc
=yes ;;
896 --disable-rtc) _rtc
=no
;;
897 --enable-libdv) _libdv
=yes ;;
898 --disable-libdv) _libdv
=no
;;
899 --enable-ossaudio) _ossaudio
=yes ;;
900 --disable-ossaudio) _ossaudio
=no
;;
901 --enable-arts) _arts
=yes ;;
902 --disable-arts) _arts
=no
;;
903 --enable-esd) _esd
=yes ;;
904 --disable-esd) _esd
=no
;;
905 --enable-pulse) _pulse
=yes ;;
906 --disable-pulse) _pulse
=no
;;
907 --enable-jack) _jack
=yes ;;
908 --disable-jack) _jack
=no
;;
909 --enable-openal) _openal
=yes ;;
910 --disable-openal) _openal
=no
;;
911 --enable-mad) _mad
=yes ;;
912 --disable-mad) _mad
=no
;;
913 --enable-mp3lame) _mp3lame
=yes ;;
914 --disable-mp3lame) _mp3lame
=no
;;
915 --enable-mp3lame-lavc) _mp3lame_lavc
=yes ;;
916 --disable-mp3lame-lavc) _mp3lame_lavc
=no
;;
917 --enable-toolame) _toolame
=yes ;;
918 --disable-toolame) _toolame
=no
;;
919 --enable-twolame) _twolame
=yes ;;
920 --disable-twolame) _twolame
=no
;;
921 --enable-libcdio) _libcdio
=yes ;;
922 --disable-libcdio) _libcdio
=no
;;
923 --enable-liblzo) _liblzo
=yes ;;
924 --disable-liblzo) _liblzo
=no
;;
925 --enable-libvorbis) _libvorbis
=yes ;;
926 --disable-libvorbis) _libvorbis
=no
;;
927 --enable-speex) _speex
=yes ;;
928 --disable-speex) _speex
=no
;;
929 --enable-tremor-internal) _tremor_internal
=yes ;;
930 --disable-tremor-internal) _tremor_internal
=no
;;
931 --enable-tremor-low) _tremor_low
=yes ;;
932 --disable-tremor-low) _tremor_low
=no
;;
933 --enable-tremor-external) _tremor_external
=yes ;;
934 --disable-tremor-external) _tremor_external
=no
;;
935 --enable-theora) _theora
=yes ;;
936 --disable-theora) _theora
=no
;;
937 --enable-mp3lib) _mp3lib
=yes ;;
938 --disable-mp3lib) _mp3lib
=no
;;
939 --enable-liba52) _liba52
=yes ;;
940 --disable-liba52) _liba52
=no
;;
941 --enable-libdca) _libdca
=yes ;;
942 --disable-libdca) _libdca
=no
;;
943 --enable-libmpeg2) _libmpeg2
=yes ;;
944 --disable-libmpeg2) _libmpeg2
=no
;;
945 --enable-musepack) _musepack
=yes ;;
946 --disable-musepack) _musepack
=no
;;
947 --enable-faad-internal) _faad_internal
=yes ;;
948 --disable-faad-internal) _faad_internal
=no
;;
949 --enable-faad-external) _faad_external
=yes ;;
950 --disable-faad-external) _faad_external
=no
;;
951 --enable-faad-fixed) _faad_fixed
=yes ;;
952 --disable-faad-fixed) _faad_fixed
=no
;;
953 --enable-faac) _faac
=yes ;;
954 --disable-faac) _faac
=no
;;
955 --enable-faac-lavc) _faac_lavc
=yes ;;
956 --disable-faac-lavc) _faac_lavc
=no
;;
957 --enable-ladspa) _ladspa
=yes ;;
958 --disable-ladspa) _ladspa
=no
;;
959 --enable-xmms) _xmms
=yes ;;
960 --disable-xmms) _xmms
=no
;;
961 --enable-dvdread) _dvdread
=yes ;;
962 --disable-dvdread) _dvdread
=no
;;
963 --enable-dvdread-internal) _dvdread_internal
=yes ;;
964 --disable-dvdread-internal) _dvdread_internal
=no
;;
965 --enable-libdvdcss-internal) _libdvdcss_internal
=yes ;;
966 --disable-libdvdcss-internal) _libdvdcss_internal
=no
;;
967 --enable-dvdnav) _dvdnav
=yes ;;
968 --disable-dvdnav) _dvdnav
=no
;;
969 --enable-xanim) _xanim
=yes ;;
970 --disable-xanim) _xanim
=no
;;
971 --enable-real) _real
=yes ;;
972 --disable-real) _real
=no
;;
973 --enable-live) _live
=yes ;;
974 --disable-live) _live
=no
;;
975 --enable-nemesi) _nemesi
=yes ;;
976 --disable-nemesi) _nemesi
=no
;;
977 --enable-xinerama) _xinerama
=yes ;;
978 --disable-xinerama) _xinerama
=no
;;
979 --enable-mga) _mga
=yes ;;
980 --disable-mga) _mga
=no
;;
981 --enable-xmga) _xmga
=yes ;;
982 --disable-xmga) _xmga
=no
;;
983 --enable-vm) _vm
=yes ;;
984 --disable-vm) _vm
=no
;;
985 --enable-xf86keysym) _xf86keysym
=yes ;;
986 --disable-xf86keysym) _xf86keysym
=no
;;
987 --enable-mlib) _mlib
=yes ;;
988 --disable-mlib) _mlib
=no
;;
989 --enable-sunaudio) _sunaudio
=yes ;;
990 --disable-sunaudio) _sunaudio
=no
;;
991 --enable-sgiaudio) _sgiaudio
=yes ;;
992 --disable-sgiaudio) _sgiaudio
=no
;;
993 --enable-alsa) _alsa
=yes ;;
994 --disable-alsa) _alsa
=no
;;
995 --enable-tv) _tv
=yes ;;
996 --disable-tv) _tv
=no
;;
997 --enable-tv-bsdbt848) _tv_bsdbt848
=yes ;;
998 --disable-tv-bsdbt848) _tv_bsdbt848
=no
;;
999 --enable-tv-v4l1) _tv_v4l1
=yes ;;
1000 --disable-tv-v4l1) _tv_v4l1
=no
;;
1001 --enable-tv-v4l2) _tv_v4l2
=yes ;;
1002 --disable-tv-v4l2) _tv_v4l2
=no
;;
1003 --enable-tv-dshow) _tv_dshow
=yes ;;
1004 --disable-tv-dshow) _tv_dshow
=no
;;
1005 --enable-tv-teletext) _tv_teletext
=yes ;;
1006 --disable-tv-teletext) _tv_teletext
=no
;;
1007 --enable-radio) _radio
=yes ;;
1008 --enable-radio-capture) _radio_capture
=yes ;;
1009 --disable-radio-capture) _radio_capture
=no
;;
1010 --disable-radio) _radio
=no
;;
1011 --enable-radio-v4l) _radio_v4l
=yes ;;
1012 --disable-radio-v4l) _radio_v4l
=no
;;
1013 --enable-radio-v4l2) _radio_v4l2
=yes ;;
1014 --disable-radio-v4l2) _radio_v4l2
=no
;;
1015 --enable-radio-bsdbt848) _radio_bsdbt848
=yes ;;
1016 --disable-radio-bsdbt848) _radio_bsdbt848
=no
;;
1017 --enable-pvr) _pvr
=yes ;;
1018 --disable-pvr) _pvr
=no
;;
1019 --enable-fastmemcpy) _fastmemcpy
=yes ;;
1020 --disable-fastmemcpy) _fastmemcpy
=no
;;
1021 --enable-network) _network
=yes ;;
1022 --disable-network) _network
=no
;;
1023 --enable-winsock2) _winsock2
=yes ;;
1024 --disable-winsock2) _winsock2
=no
;;
1025 --enable-smb) _smb
=yes ;;
1026 --disable-smb) _smb
=no
;;
1027 --enable-vidix) _vidix
=yes ;;
1028 --disable-vidix) _vidix
=no
;;
1029 --with-vidix-drivers=*)
1030 _vidix_drivers
=`echo $ac_option | cut -d '=' -f 2`
1032 --disable-vidix-pcidb) _vidix_pcidb
=no
;;
1033 --enable-dhahelper) _dhahelper
=yes ;;
1034 --disable-dhahelper) _dhahelper
=no
;;
1035 --enable-svgalib_helper) _svgalib_helper
=yes ;;
1036 --disable-svgalib_helper) _svgalib_helper
=no
;;
1037 --enable-joystick) _joystick
=yes ;;
1038 --disable-joystick) _joystick
=no
;;
1039 --enable-xvid) _xvid
=yes ;;
1040 --disable-xvid) _xvid
=no
;;
1041 --enable-xvid-lavc) _xvid_lavc
=yes ;;
1042 --disable-xvid-lavc) _xvid_lavc
=no
;;
1043 --enable-x264) _x264
=yes ;;
1044 --disable-x264) _x264
=no
;;
1045 --enable-x264-lavc) _x264_lavc
=yes ;;
1046 --disable-x264-lavc) _x264_lavc
=no
;;
1047 --enable-libdirac-lavc) _libdirac_lavc
=yes ;;
1048 --disable-libdirac-lavc) _libdirac_lavc
=no
;;
1049 --enable-libschroedinger-lavc) _libschroedinger_lavc
=yes ;;
1050 --disable-libschroedinger-lavc) _libschroedinger_lavc
=no
;;
1051 --enable-libnut) _libnut
=yes ;;
1052 --disable-libnut) _libnut
=no
;;
1053 --enable-libavutil_a) _libavutil_a
=yes ;;
1054 --disable-libavutil_a) _libavutil_a
=no
;;
1055 --enable-libavutil_so) _libavutil_so
=yes ;;
1056 --disable-libavutil_so) _libavutil_so
=no
;;
1057 --enable-libavcodec_a) _libavcodec_a
=yes ;;
1058 --disable-libavcodec_a) _libavcodec_a
=no
;;
1059 --enable-libavcodec_so) _libavcodec_so
=yes ;;
1060 --disable-libavcodec_so) _libavcodec_so
=no
;;
1061 --enable-libamr_nb) _libamr_nb
=yes ;;
1062 --disable-libamr_nb) _libamr_nb
=no
;;
1063 --enable-libamr_wb) _libamr_wb
=yes ;;
1064 --disable-libamr_wb) _libamr_wb
=no
;;
1065 --enable-decoder=*) _libavdecoders
="$_libavdecoders `echo $ac_option | cut -d '=' -f 2`" ;;
1066 --disable-decoder=*) _libavdecoders
=`echo $_libavdecoders | sed "s/\`echo $ac_option | cut
-d '=' -f 2\
`//g"` ;;
1067 --enable-encoder=*) _libavencoders
="$_libavencoders `echo $ac_option | cut -d '=' -f 2`" ;;
1068 --disable-encoder=*) _libavencoders
=`echo $_libavencoders | sed "s/\`echo $ac_option | cut
-d '=' -f 2\
`//g"` ;;
1069 --enable-parser=*) _libavparsers
="$_libavparsers `echo $ac_option | cut -d '=' -f 2`" ;;
1070 --disable-parser=*) _libavparsers
=`echo $_libavparsers | sed "s/\`echo $ac_option | cut
-d '=' -f 2\
`//g"` ;;
1071 --enable-demuxer=*) _libavdemuxers
="$_libavdemuxers `echo $ac_option | cut -d '=' -f 2`" ;;
1072 --disable-demuxer=*) _libavdemuxers
=`echo $_libavdemuxers | sed "s/\`echo $ac_option | cut
-d '=' -f 2\
`//g"` ;;
1073 --enable-muxer=*) _libavmuxers
="$_libavmuxers `echo $ac_option | cut -d '=' -f 2`" ;;
1074 --disable-muxer=*) _libavmuxers
=`echo $_libavmuxers | sed "s/\`echo $ac_option | cut
-d '=' -f 2\
`//g"` ;;
1075 --enable-libavformat_a) _libavformat_a
=yes ;;
1076 --disable-libavformat_a) _libavformat_a
=no
;;
1077 --enable-libavformat_so) _libavformat_so
=yes ;;
1078 --disable-libavformat_so) _libavformat_so
=no
;;
1079 --enable-libpostproc_a) _libpostproc_a
=yes ;;
1080 --disable-libpostproc_a) _libpostproc_a
=no
;;
1081 --enable-libpostproc_so) _libpostproc_so
=yes ;;
1082 --disable-libpostproc_so) _libpostproc_so
=no
;;
1083 --enable-libavcodec_mpegaudio_hp) _libavcodec_mpegaudio_hp
=yes ;;
1084 --disable-libavcodec_mpegaudio_hp) _libavcodec_mpegaudio_hp
=no
;;
1086 --enable-lirc) _lirc
=yes ;;
1087 --disable-lirc) _lirc
=no
;;
1088 --enable-lircc) _lircc
=yes ;;
1089 --disable-lircc) _lircc
=no
;;
1090 --enable-apple-remote) _apple_remote
=yes ;;
1091 --disable-apple-remote) _apple_remote
=no
;;
1092 --enable-apple-ir) _apple_ir
=yes ;;
1093 --disable-apple-ir) _apple_ir
=no
;;
1094 --enable-gui) _gui
=yes ;;
1095 --disable-gui) _gui
=no
;;
1096 --enable-gtk1) _gtk1
=yes ;;
1097 --disable-gtk1) _gtk1
=no
;;
1098 --enable-termcap) _termcap
=yes ;;
1099 --disable-termcap) _termcap
=no
;;
1100 --enable-termios) _termios
=yes ;;
1101 --disable-termios) _termios
=no
;;
1102 --enable-3dfx) _3dfx
=yes ;;
1103 --disable-3dfx) _3dfx
=no
;;
1104 --enable-s3fb) _s3fb
=yes ;;
1105 --disable-s3fb) _s3fb
=no
;;
1106 --enable-wii) _wii
=yes ;;
1107 --disable-wii) _wii
=no
;;
1108 --enable-tdfxfb) _tdfxfb
=yes ;;
1109 --disable-tdfxfb) _tdfxfb
=no
;;
1110 --disable-tdfxvid) _tdfxvid
=no
;;
1111 --enable-tdfxvid) _tdfxvid
=yes ;;
1112 --disable-xvr100) _xvr100
=no
;;
1113 --enable-xvr100) _xvr100
=yes ;;
1114 --disable-tga) _tga
=no
;;
1115 --enable-tga) _tga
=yes ;;
1116 --enable-directfb) _directfb
=yes ;;
1117 --disable-directfb) _directfb
=no
;;
1118 --enable-zr) _zr
=yes ;;
1119 --disable-zr) _zr
=no
;;
1120 --enable-bl) _bl
=yes ;;
1121 --disable-bl) _bl
=no
;;
1122 --enable-mtrr) _mtrr
=yes ;;
1123 --disable-mtrr) _mtrr
=no
;;
1124 --enable-largefiles) _largefiles
=yes ;;
1125 --disable-largefiles) _largefiles
=no
;;
1126 --enable-shm) _shm
=yes ;;
1127 --disable-shm) _shm
=no
;;
1128 --enable-select) _select
=yes ;;
1129 --disable-select) _select
=no
;;
1130 --enable-linux-devfs) _linux_devfs
=yes ;;
1131 --disable-linux-devfs) _linux_devfs
=no
;;
1132 --enable-cdparanoia) _cdparanoia
=yes ;;
1133 --disable-cdparanoia) _cdparanoia
=no
;;
1134 --enable-cddb) _cddb
=yes ;;
1135 --disable-cddb) _cddb
=no
;;
1136 --enable-big-endian) _big_endian
=yes ;;
1137 --disable-big-endian) _big_endian
=no
;;
1138 --enable-bitmap-font) _bitmap_font
=yes ;;
1139 --disable-bitmap-font) _bitmap_font
=no
;;
1140 --enable-freetype) _freetype
=yes ;;
1141 --disable-freetype) _freetype
=no
;;
1142 --enable-fontconfig) _fontconfig
=yes ;;
1143 --disable-fontconfig) _fontconfig
=no
;;
1144 --enable-unrarexec) _unrar_exec
=yes ;;
1145 --disable-unrarexec) _unrar_exec
=no
;;
1146 --enable-ftp) _ftp
=yes ;;
1147 --disable-ftp) _ftp
=no
;;
1148 --enable-vstream) _vstream
=yes ;;
1149 --disable-vstream) _vstream
=no
;;
1150 --enable-pthreads) _pthreads
=yes ;;
1151 --disable-pthreads) _pthreads
=no
;;
1152 --enable-w32threads) _w32threads
=yes ;;
1153 --disable-w32threads) _w32threads
=no
;;
1154 --enable-ass) _ass
=yes ;;
1155 --disable-ass) _ass
=no
;;
1156 --enable-rpath) _rpath
=yes ;;
1157 --disable-rpath) _rpath
=no
;;
1159 --enable-fribidi) _fribidi
=yes ;;
1160 --disable-fribidi) _fribidi
=no
;;
1162 --enable-enca) _enca
=yes ;;
1163 --disable-enca) _enca
=no
;;
1165 --enable-inet6) _inet6
=yes ;;
1166 --disable-inet6) _inet6
=no
;;
1168 --enable-gethostbyname2) _gethostbyname2
=yes ;;
1169 --disable-gethostbyname2) _gethostbyname2
=no
;;
1171 --enable-dga1) _dga1
=yes ;;
1172 --disable-dga1) _dga1
=no
;;
1173 --enable-dga2) _dga2
=yes ;;
1174 --disable-dga2) _dga2
=no
;;
1176 --enable-menu) _menu
=yes ;;
1177 --disable-menu) _menu
=no
;;
1179 --enable-qtx) _qtx
=yes ;;
1180 --disable-qtx) _qtx
=no
;;
1182 --enable-macosx) _macosx
=yes ;;
1183 --disable-macosx) _macosx
=no
;;
1184 --enable-macosx-finder) _macosx_finder
=yes ;;
1185 --disable-macosx-finder) _macosx_finder
=no
;;
1186 --enable-macosx-bundle) _macosx_bundle
=yes;;
1187 --disable-macosx-bundle) _macosx_bundle
=no
;;
1189 --enable-maemo) _maemo
=yes ;;
1190 --disable-maemo) _maemo
=no
;;
1192 --enable-sortsub) _sortsub
=yes ;;
1193 --disable-sortsub) _sortsub
=no
;;
1195 --enable-crash-debug) _crash_debug
=yes ;;
1196 --disable-crash-debug) _crash_debug
=no
;;
1197 --enable-sighandler) _sighandler
=yes ;;
1198 --disable-sighandler) _sighandler
=no
;;
1199 --enable-win32dll) _win32dll
=yes ;;
1200 --disable-win32dll) _win32dll
=no
;;
1202 --enable-sse) _sse
=yes ;;
1203 --disable-sse) _sse
=no
;;
1204 --enable-sse2) _sse2
=yes ;;
1205 --disable-sse2) _sse2
=no
;;
1206 --enable-ssse3) _ssse3
=yes ;;
1207 --disable-ssse3) _ssse3
=no
;;
1208 --enable-mmxext) _mmxext
=yes ;;
1209 --disable-mmxext) _mmxext
=no
;;
1210 --enable-3dnow) _3dnow
=yes ;;
1211 --disable-3dnow) _3dnow
=no _3dnowext
=no
;;
1212 --enable-3dnowext) _3dnow
=yes _3dnowext
=yes ;;
1213 --disable-3dnowext) _3dnowext
=no
;;
1214 --enable-cmov) _cmov
=yes ;;
1215 --disable-cmov) _cmov
=no
;;
1216 --enable-fast-cmov) _fast_cmov
=yes ;;
1217 --disable-fast-cmov) _fast_cmov
=no
;;
1218 --enable-altivec) _altivec
=yes ;;
1219 --disable-altivec) _altivec
=no
;;
1220 --enable-armv5te) _armv5te
=yes ;;
1221 --disable-armv5te) _armv5te
=no
;;
1222 --enable-armv6) _armv6
=yes ;;
1223 --disable-armv6) _armv6
=no
;;
1224 --enable-iwmmxt) _iwmmxt
=yes ;;
1225 --disable-iwmmxt) _iwmmxt
=no
;;
1226 --enable-mmx) _mmx
=yes ;;
1227 --disable-mmx) # 3Dnow! and MMX2 require MMX
1228 _3dnow
=no _3dnowext
=no _mmx
=no _mmxext
=no
;;
1231 echo "Unknown parameter: $ac_option"
1238 # Atmos: moved this here, to be correct, if --prefix is specified
1239 test -z "$_bindir" && _bindir
="$_prefix/bin"
1240 test -z "$_datadir" && _datadir
="$_prefix/share/mplayer"
1241 test -z "$_mandir" && _mandir
="$_prefix/share/man"
1242 test -z "$_confdir" && _confdir
="$_prefix/etc/mplayer"
1243 test -z "$_libdir" && _libdir
="$_prefix/lib"
1245 # Determine our OS name and CPU architecture
1246 if test -z "$_target" ; then
1248 system_name
=`uname -s 2>&1`
1249 case "$system_name" in
1250 Linux|FreeBSD|NetBSD|OpenBSD|DragonFly|BSD
/OS|Darwin|SunOS|QNX|GNU|BeOS|MorphOS|AIX|AmigaOS
)
1261 [cC
][yY
][gG
][wW
][iI
][nN
]*)
1271 system_name
="$system_name-UNKNOWN"
1276 # host's CPU/instruction set
1277 host_arch
=`uname -p 2>&1`
1278 case "$host_arch" in
1279 i386|sparc|ppc|alpha|arm|mips|vax
)
1281 powerpc
) # Darwin returns 'powerpc'
1284 *) # uname -p on Linux returns 'unknown' for the processor type,
1285 # OpenBSD returns 'Intel Pentium/MMX ("Genuine Intel" 586-class)'
1287 # Maybe uname -m (machine hardware name) returns something we
1290 # x86/x86pc is used by QNX
1291 case "`uname -m 2>&1`" in
1292 i
[3-9]86*|x86|x86pc|k5|k6|k6_2|k6_3|k6-2|k6-3|pentium
*|athlon
*|i586_i686|i586-i686|BePC
) host_arch
=i386
;;
1293 ia64
) host_arch
=ia64
;;
1295 if [ -n "`$_cc -dumpmachine | sed -n '/^x86_64-/p;/^amd64-/p'`" -a \
1296 -z "`echo $CFLAGS | grep -- -m32`" ]; then
1302 macppc|ppc|ppc64
) host_arch
=ppc
;;
1303 alpha
) host_arch
=alpha
;;
1304 sparc
) host_arch
=sparc
;;
1305 sparc64
) host_arch
=sparc64
;;
1306 parisc
*|hppa
*|
9000*) host_arch
=hppa
;;
1307 arm
*|zaurus|cats
) host_arch
=arm
;;
1308 sh3|sh4|sh4a
) host_arch
=sh
;;
1309 s390
) host_arch
=s390
;;
1310 s390x
) host_arch
=s390x
;;
1311 mips
*) host_arch
=mips
;;
1312 vax
) host_arch
=vax
;;
1313 xtensa
*) host_arch
=xtensa
;;
1314 *) host_arch
=UNKNOWN
;;
1318 else # if test -z "$_target"
1319 system_name
=`echo $_target | cut -d '-' -f 2`
1320 case "`echo $system_name | tr A-Z a-z`" in
1321 linux
) system_name
=Linux
;;
1322 freebsd
) system_name
=FreeBSD
;;
1323 gnu
/kfreebsd
) system_name
=FreeBSD
;;
1324 netbsd
) system_name
=NetBSD
;;
1325 bsd
/os
) system_name
=BSD
/OS
;;
1326 openbsd
) system_name
=OpenBSD
;;
1327 dragonfly
) system_name
=DragonFly
;;
1328 sunos
) system_name
=SunOS
;;
1329 qnx
) system_name
=QNX
;;
1330 morphos
) system_name
=MorphOS
;;
1331 amigaos
) system_name
=AmigaOS
;;
1332 mingw32msvc
) system_name
=MINGW32
;;
1334 # We need to convert underscores so that values like k6-2 and pentium-mmx can be passed
1335 host_arch
=`echo $_target | cut -d '-' -f 1`
1336 if test `echo $host_arch` != "x86_64" ; then
1337 host_arch
=`echo $host_arch | tr '_' '-'`
1341 echo "Detected operating system: $system_name"
1342 echo "Detected host architecture: $host_arch"
1344 if test "$_runtime_cpudetection" = yes && ! x86
&& ! ppc
; then
1345 die
"Runtime CPU detection only works for x86, x86-64 and PPC!"
1349 _timer
=timer-linux.c
1352 _ld_extra
="$_ld_extra -L/usr/local/lib"
1353 _inc_extra
="$_inc_extra -I/usr/local/include"
1356 if netbsd || dragonfly
; then
1357 _ld_extra
="$_ld_extra -L/usr/pkg/lib"
1358 _inc_extra
="$_inc_extra -I/usr/pkg/include"
1362 _ld_extra
="$_ld_extra -L/usr/local/lib"
1363 _inc_extra
="$_inc_extra -I/usr/local/include"
1364 _timer
=timer-darwin.c
1368 _ld_extra
="$_ld_extra -lC"
1379 # -lwinmm is always needed for osdep/timer-win2.c
1380 _ld_extra
="$_ld_extra -lwinmm"
1391 _def_confwin32
='#define WIN32'
1398 _def_stream_cache
="#undef CONFIG_STREAM_CACHE"
1402 _ld_extra
="$_ld_extra -lph"
1411 for I
in "$TMPDIR" "$TEMPDIR" "/tmp" ; do
1416 TMPLOG
="configure.log"
1417 TMPC
="$I/mplayer-conf-$RANDOM-$$.c"
1418 TMPCPP
="$I/mplayer-conf-$RANDOM-$$.cpp"
1419 TMPEXE
="$I/mplayer-conf-$RANDOM-$$$_exesuf"
1420 TMPH
="$I/mplayer-conf-$RANDOM-$$.h"
1421 TMPS
="$I/mplayer-conf-$RANDOM-$$.S"
1424 echo configuration
: $_configuration > "$TMPLOG"
1428 # Check how to call 'head' and 'tail'. Newer versions spit out warnings
1429 # if used as 'head -1' instead of 'head -n 1', but older versions don't
1431 if test "`(echo line1 ; echo line2) | head -1 2>/dev/null`" = "line1" ; then
1432 _head
() { head -$1 2>/dev
/null
; }
1434 _head
() { head -n $1 2>/dev
/null
; }
1436 if test "`(echo line1 ; echo line2) | tail -1 2>/dev/null`" = "line2" ; then
1437 _tail
() { tail -$1 2>/dev
/null
; }
1439 _tail
() { tail -n $1 2>/dev
/null
; }
1442 # Checking CC version...
1443 # Intel C++ Compilers (no autoselect, use CC=/some/binary ./configure)
1444 if test "`basename $_cc`" = "icc" ||
test "`basename $_cc`" = "ecc"; then
1445 echocheck
"$_cc version"
1447 cc_name
=`$_cc -V 2>&1 | _head 1 | cut -d ',' -f 1`
1448 cc_version
=`$_cc -V 2>&1 | _head 1 | cut -d ',' -f 2 | cut -d ' ' -f 3`
1449 _cc_major
=`echo $cc_version | cut -d '.' -f 1`
1450 _cc_minor
=`echo $cc_version | cut -d '.' -f 2`
1451 # TODO verify older icc/ecc compatibility
1454 cc_version
="v. ?.??, bad"
1458 cc_version
="$cc_version, ok"
1461 cc_version
="$cc_version, bad"
1465 echores
"$cc_version"
1467 for _cc
in "$_cc" cc gcc
; do
1468 cc_name_tmp
=`$_cc -v 2>&1 | _tail 1 | cut -d ' ' -f 1`
1469 if test "$cc_name_tmp" = "gcc"; then
1470 cc_name
=$cc_name_tmp
1471 echocheck
"$_cc version"
1473 cc_version
=`$_cc -dumpversion 2>&1`
1479 _cc_major
=`echo $cc_version | cut -d '.' -f 1`
1480 _cc_minor
=`echo $cc_version | cut -d '.' -f 2`
1481 _cc_mini
=`echo $cc_version | cut -d '.' -f 3`
1484 echores
"$cc_version"
1489 test "$cc_fail" = yes && die
"unsupported compiler version"
1492 test "$_host_cc" || _host_cc
=$_cc
1495 echocheck
"cross compilation"
1496 if test $_cross_compile = auto
; then
1498 int main(void) { return 0; }
1501 cc_check
&& "$TMPEXE" && _cross_compile
=no
1503 echores
$_cross_compile
1505 if test $_cross_compile = yes; then
1513 # now that we know what compiler should be used for compilation, try to find
1514 # out which assembler is used by the $_cc compiler
1515 if test "$_as" = auto
; then
1516 _as
=`$_cc -print-prog-name=as`
1517 test -z "$_as" && _as
=as
1520 # XXX: this should be ok..
1523 if test "$_runtime_cpudetection" = no
; then
1525 # Cygwin has /proc/cpuinfo, but only supports Intel CPUs
1526 # FIXME: Remove the cygwin check once AMD CPUs are supported
1527 if test -r /proc
/cpuinfo
&& ! cygwin
; then
1528 # Linux with /proc mounted, extract CPU information from it
1529 _cpuinfo
="cat /proc/cpuinfo"
1530 elif test -r /compat
/linux
/proc
/cpuinfo
&& ! x86_32
; then
1531 # FreeBSD with Linux emulation /proc mounted,
1532 # extract CPU information from it
1533 _cpuinfo
="cat /compat/linux/proc/cpuinfo"
1534 elif darwin
&& ! x86_32
; then
1535 # use hostinfo on Darwin
1538 # use 'lsattr' on AIX
1539 _cpuinfo
="lsattr -E -l proc0 -a type"
1541 # all other OSes try to extract CPU information from a small helper
1542 # program cpuinfo instead
1543 $_cc -o cpuinfo
$_exesuf cpuinfo.c
1544 _cpuinfo
="./cpuinfo$_exesuf"
1548 # gather more CPU information
1549 pname
=`$_cpuinfo | grep 'model name' | cut -d ':' -f 2 | _head 1`
1550 pvendor
=`$_cpuinfo | grep 'vendor_id' | cut -d ':' -f 2 | cut -d ' ' -f 2 | _head 1`
1551 pfamily
=`$_cpuinfo | grep 'cpu family' | cut -d ':' -f 2 | cut -d ' ' -f 2 | _head 1`
1552 pmodel
=`$_cpuinfo | grep -v 'model name' | grep 'model' | cut -d ':' -f 2 | cut -d ' ' -f 2 | _head 1`
1553 pstepping
=`$_cpuinfo | grep 'stepping' | cut -d ':' -f 2 | cut -d ' ' -f 2 | _head 1`
1555 exts
=`$_cpuinfo | egrep 'features|flags' | cut -d ':' -f 2 | _head 1`
1557 pparam
=`echo $exts | sed -e s/k6_mtrr/mtrr/ -e s/cyrix_arr/mtrr/ -e s/centaur_mcr/mtrr/ \
1558 -e s/xmm/sse/ -e s/kni/sse/`
1560 for ext
in $pparam ; do
1561 eval test \"\
$_$ext\" = auto
2>/dev
/null
&& eval _
$ext=kernel_check
1564 # SSE implies MMX2, but not all SSE processors report the mmxext CPU flag.
1565 test $_sse = kernel_check
&& _mmxext
=kernel_check
1567 echocheck
"CPU vendor"
1568 echores
"$pvendor ($pfamily:$pmodel:$pstepping)"
1570 echocheck
"CPU type"
1574 fi # test "$_runtime_cpudetection" = no
1576 if x86
&& test "$_runtime_cpudetection" = no
; then
1578 if test "$1" = kernel_check
; then
1579 echocheck
"kernel support of $2"
1583 void catch() { exit(1); }
1585 signal(SIGILL, catch);
1586 __asm__ __volatile__ ("$3":::"memory"); return 0;
1590 if cc_check
&& tmp_run
; then
1593 _optimizing
="$_optimizing $2"
1598 echo "It seems that your kernel does not correctly support $2."
1599 echo "To use $2 extensions in MPlayer, you have to upgrade/recompile your kernel!"
1606 extcheck
$_mmx "mmx" "emms"
1607 extcheck
$_mmxext "mmxext" "sfence"
1608 extcheck
$_3dnow "3dnow" "femms"
1609 extcheck
$_3dnowext "3dnowext" "pswapd %%mm0, %%mm0"
1610 extcheck
$_sse "sse" "xorps %%xmm0, %%xmm0" || _gcc3_ext
="$_gcc3_ext -mno-sse"
1611 extcheck
$_sse2 "sse2" "xorpd %%xmm0, %%xmm0" || _gcc3_ext
="$_gcc3_ext -mno-sse2"
1612 extcheck
$_ssse3 "ssse3" "pabsd %%xmm0, %%xmm0"
1613 extcheck
$_cmov "cmov" "cmovb %%eax,%%ebx"
1615 echocheck
"mtrr support"
1616 if test "$_mtrr" = kernel_check
; then
1618 _optimizing
="$_optimizing mtrr"
1622 if test "$_gcc3_ext" != ""; then
1623 # if we had to disable sse/sse2 because the active kernel does not
1624 # support this instruction set extension, we also have to tell
1625 # gcc3 to not generate sse/sse2 instructions for normal C code
1627 int main(void) { return 0; }
1629 cc_check
$_march $_gcc3_ext && _march
="$_march $_gcc3_ext"
1635 _arch_all
='X86 X86_32 X86_64 IA64 SPARC ARM ARMV4L SH POWERPC PPC ALPHA SGI_MIPS PA_RISC S390 S390X VAX BFIN XTENSA GENERIC'
1636 case "$host_arch" in
1637 i
[3-9]86|x86|x86pc|k5|k6|k6-2|k6-3|pentium
*|athlon
*|i586-i686
)
1639 _target_arch_x86
="ARCH_X86 = yes"
1640 _target_arch
="ARCH_X86_32 = yes"
1641 _def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
1646 if test "$_runtime_cpudetection" = no
; then
1650 3) proc
=i386 iproc
=386 ;;
1651 4) proc
=i486 iproc
=486 ;;
1652 5) iproc
=586 # LGB: models are: K5/SSA5 K5 K5 K5 ? ? K6 K6 K6-2 K6-3
1653 # K6 model 13 are the K6-2+ and K6-III+, only differing in cache size.
1654 if test "$pmodel" -eq 9 -o "$pmodel" -eq 13; then
1656 elif test "$pmodel" -eq 5 -o "$pmodel" -eq 10; then
1658 elif test "$pmodel" -ge 8; then
1660 elif test "$pmodel" -ge 6; then
1667 # It's a bit difficult to determine the correct type of Family 6
1668 # AMD CPUs just from their signature. Instead, we check directly
1669 # whether it supports SSE.
1670 if test "$_sse" = yes; then
1671 # gcc treats athlon-xp, athlon-4 and athlon-mp similarly.
1674 # Again, gcc treats athlon and athlon-tbird similarly.
1679 # k8 cpu-type only supported in gcc >= 3.4.0, but that will be
1680 # caught and remedied in the optimization tests below.
1684 *) proc
=k8 iproc
=686 ;;
1689 3) proc
=i386 iproc
=386 ;;
1690 4) proc
=i486 iproc
=486 ;;
1692 if test "$pmodel" -eq 4 ||
test "$pmodel" -eq 8; then
1693 proc
=pentium-mmx
# 4 is desktop, 8 is mobile
1699 if test "$pmodel" -ge 15; then
1701 elif test "$pmodel" -eq 9 -o "$pmodel" -ge 13; then
1703 elif test "$pmodel" -ge 7; then
1705 elif test "$pmodel" -ge 3; then
1712 # A nocona in 32-bit mode has no more capabilities than a prescott.
1713 if test "$pmodel" -ge 3; then
1718 test $_fast_cmov = "auto" && _fast_cmov
=no
1720 *) proc
=prescott iproc
=686 ;;
1726 if test "$pmodel" -ge 8; then
1728 elif test "$pmodel" -ge 4; then
1735 if test "$pmodel" -ge 9; then
1742 *) proc
=i686 iproc
=i686
;;
1747 3) proc
=i386 iproc
=386 ;;
1748 4) proc
=i486 iproc
=486 ;;
1749 *) proc
=i586 iproc
=586 ;;
1753 proc
=i586 iproc
=586 ;;
1755 fi # test "$_runtime_cpudetection" = no
1758 # check that gcc supports our CPU, if not, fall back to earlier ones
1759 # LGB: check -mcpu and -march swithing step by step with enabling
1760 # to fall back till 386.
1762 # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
1764 if [ "$cc_vendor" = "gnu" ] && ([ "$_cc_major" -gt 3 ] ||
( [ "$_cc_major" = 3 ] && [ "$_cc_minor" -ge 4 ])) ; then
1770 echocheck
"GCC & CPU optimization abilities"
1772 int main(void) { return 0; }
1774 if test "$_runtime_cpudetection" = no
; then
1775 cc_check
-march=native
&& proc
=native
1776 if test "$proc" = "k8"; then
1777 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon-xp
1779 if test "$proc" = "athlon-xp"; then
1780 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon
1782 if test "$proc" = "k6-3" ||
test "$proc" = "k6-2"; then
1783 cc_check
-march=$proc $cpuopt=$proc || proc
=k6
1785 if test "$proc" = "k6" ||
test "$proc" = "c3"; then
1786 if ! cc_check
-march=$proc $cpuopt=$proc; then
1787 if cc_check
-march=i586
$cpuopt=i686
; then
1794 if test "$proc" = "prescott" ; then
1795 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium4
1797 if test "$proc" = "core2" ; then
1798 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium-m
1800 if test "$proc" = "pentium4" ||
test "$proc" = "pentium-m" ||
test "$proc" = "pentium3" ||
test "$proc" = "pentium2" ||
test "$proc" = "athlon" ||
test "$proc" = "c3-2" ||
test "$proc" = "geode"; then
1801 cc_check
-march=$proc $cpuopt=$proc || proc
=i686
1803 if test "$proc" = "i686" ||
test "$proc" = "pentium-mmx" ||
test "$proc" = "winchip-c6" ||
test "$proc" = "winchip2"; then
1804 cc_check
-march=$proc $cpuopt=$proc || proc
=i586
1806 if test "$proc" = "i586"; then
1807 cc_check
-march=$proc $cpuopt=$proc || proc
=i486
1809 if test "$proc" = "i486" ; then
1810 cc_check
-march=$proc $cpuopt=$proc || proc
=i386
1812 if test "$proc" = "i386" ; then
1813 cc_check
-march=$proc $cpuopt=$proc || proc
=error
1815 if test "$proc" = "error" ; then
1816 echores
"CPU optimization disabled. CPU not recognized or your compiler is too old."
1820 elif test "$proc" = "i586-i686"; then
1821 _march
="-march=i586"
1822 _mcpu
="$cpuopt=i686"
1825 _march
="-march=$proc"
1826 _mcpu
="$cpuopt=$proc"
1829 else # if test "$_runtime_cpudetection" = no
1830 _mcpu
="$cpuopt=generic"
1831 # at least i486 required, for bswap instruction
1832 _march
="-march=i486"
1833 cc_check
$_mcpu || _mcpu
="$cpuopt=i686"
1834 cc_check
$_mcpu || _mcpu
=""
1835 cc_check
$_march $_mcpu || _march
=""
1838 ## Gabucino : --target takes effect here (hopefully...) by overwriting
1839 ## autodetected mcpu/march parameters
1840 if test "$_target" ; then
1841 # TODO: it may be a good idea to check GCC and fall back in all cases
1842 if test "$host_arch" = "i586-i686"; then
1843 _march
="-march=i586"
1844 _mcpu
="$cpuopt=i686"
1846 _march
="-march=$host_arch"
1847 _mcpu
="$cpuopt=$host_arch"
1855 i586|k5|k6|k6-2|k6-3|pentium|pentium-mmx
) iproc
=586 ;;
1856 i686|athlon
*|pentium
*) iproc
=686 ;;
1861 if test $_cmov = "yes" && test $_fast_cmov = "auto" ; then
1872 _target_arch
='ARCH_IA64 = yes'
1882 _target_arch
='ARCH_X86_64 = yes'
1883 _target_arch_x86
="ARCH_X86 = yes"
1884 _def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
1887 # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
1888 if test "$cc_vendor" = "gnu" && test "$_cc_major" -gt 3 -o "$_cc_major" -eq 3 -a "$_cc_minor" -ge 4 ; then
1893 if test "$_runtime_cpudetection" = no
; then
1901 # 64-bit prescotts exist, but as far as GCC is concerned they
1902 # have the same capabilities as a nocona.
1904 test $_fast_cmov = "auto" && _fast_cmov
=no
1911 fi # test "$_runtime_cpudetection" = no
1913 echocheck
"GCC & CPU optimization abilities"
1915 int main(void) { return 0; }
1917 # This is a stripped-down version of the i386 fallback.
1918 if test "$_runtime_cpudetection" = no
; then
1919 cc_check
-march=native
&& proc
=native
1920 # --- AMD processors ---
1921 if test "$proc" = "k8"; then
1922 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon-xp
1924 # This will fail if gcc version < 3.3, which is ok because earlier
1925 # versions don't really support 64-bit on amd64.
1926 # Is this a valid assumption? -Corey
1927 if test "$proc" = "athlon-xp"; then
1928 cc_check
-march=$proc $cpuopt=$proc || proc
=error
1930 # --- Intel processors ---
1931 if test "$proc" = "core2"; then
1932 cc_check
-march=$proc $cpuopt=$proc || proc
=nocona
1934 if test "$proc" = "nocona"; then
1935 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium4
1937 if test "$proc" = "pentium4"; then
1938 cc_check
-march=$proc $cpuopt=$proc || proc
=error
1941 _march
="-march=$proc"
1942 _mcpu
="$cpuopt=$proc"
1943 if test "$proc" = "error" ; then
1944 echores
"CPU optimization disabled. CPU not recognized or your compiler is too old."
1948 else # if test "$_runtime_cpudetection" = no
1949 # x86-64 is an undocumented option, an intersection of k8 and nocona.
1950 _march
="-march=x86-64"
1951 _mcpu
="$cpuopt=generic"
1952 cc_check
$_mcpu || _mcpu
="x86-64"
1953 cc_check
$_mcpu || _mcpu
=""
1954 cc_check
$_march $_mcpu || _march
=""
1964 _target_arch
='ARCH_SPARC = yes'
1967 echocheck
"CPU type"
1969 case "`echo $karch`" in
1974 sun4u
) proc
=ultrasparc _vis
='yes' ;;
1989 _target_arch
='ARCH_SPARC = yes'
1998 arm|armv4l|armv5tel
)
2000 _target_arch
='ARCH_ARMV4L = yes'
2010 _target_arch
='ARCH_SH = yes'
2018 ppc|ppc64|powerpc|powerpc64
)
2020 _def_dcbzl
='#undef HAVE_DCBZL'
2021 _target_arch
='ARCH_POWERPC = yes'
2028 echocheck
"CPU type"
2029 case $system_name in
2031 proc
=`$_cpuinfo | grep 'cpu' | cut -d ':' -f 2 | cut -d ',' -f 1 | cut -b 2- | _head 1`
2032 if test -n "`$_cpuinfo | grep altivec`"; then
2033 test $_altivec = auto
&& _altivec
=yes
2037 proc
=`$_cpuinfo | grep "Processor type" | cut -f 3 -d ' ' | sed 's/ppc//'`
2038 if [ `sysctl -n hw.vectorunit` -eq 1 -o \
2039 "`sysctl -n hw.optional.altivec 2> /dev/null`" = "1" ]; then
2040 test $_altivec = auto
&& _altivec
=yes
2044 # only gcc 3.4 works reliably with AltiVec code under NetBSD
2046 2*|
3.0*|
3.1*|
3.2*|
3.3*)
2049 if [ `sysctl -n machdep.altivec` -eq 1 ]; then
2050 test $_altivec = auto
&& _altivec
=yes
2056 proc
=`$_cpuinfo | grep 'type' | cut -f 2 -d ' ' | sed 's/PowerPC_//'`
2059 if test "$_altivec" = yes; then
2060 echores
"$proc altivec"
2066 echocheck
"GCC & CPU optimization abilities"
2068 if test -n "$proc"; then
2070 601) _march
='-mcpu=601' _mcpu
='-mtune=601' ;;
2071 603) _march
='-mcpu=603' _mcpu
='-mtune=603' ;;
2072 603e|
603ev
) _march
='-mcpu=603e' _mcpu
='-mtune=603e' ;;
2073 604|
604e|
604r|
604ev
) _march
='-mcpu=604' _mcpu
='-mtune=604' ;;
2074 740|
740/750|
745/755) _march
='-mcpu=740' _mcpu
='-mtune=740' ;;
2075 750|
750CX
) _march
='-mcpu=750' _mcpu
='-mtune=750' ;;
2076 POWER
) _march
='-mcpu=power' _mcpu
='-mtune=power' ;;
2077 POWER2
) _march
='-mcpu=power2' _mcpu
='-mtune=power2' ;;
2078 POWER3
) _march
='-mcpu=power3' _mcpu
='-mtune=power3' ;;
2081 # gcc 3.1(.1) and up supports 7400 and 7450
2082 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "1" ||
test "$_cc_major" -ge "4"; then
2084 7400*|
7410*) _march
='-mcpu=7400' _mcpu
='-mtune=7400' ;;
2085 7447*|
7450*|
7455*) _march
='-mcpu=7450' _mcpu
='-mtune=7450' ;;
2089 # gcc 3.2 and up supports 970
2090 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "3" ||
test "$_cc_major" -ge "4"; then
2092 970*|PPC970
*) _march
='-mcpu=970' _mcpu
='-mtune=970'
2093 _def_dcbzl
='#define HAVE_DCBZL 1' ;;
2097 # gcc 3.3 and up supports POWER4
2098 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "3" ||
test "$_cc_major" -ge "4"; then
2100 POWER4
) _march
='-mcpu=power4' _mcpu
='-mtune=power4' ;;
2104 # gcc 3.4 and up supports 440*
2105 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "4" ||
test "$_cc_major" -ge "4"; then
2107 440EP
*) _march
='-mcpu=440fp' _mcpu
='-mtune=440fp' ;;
2108 440G
* ) _march
='-mcpu=440' _mcpu
='-mtune=440' ;;
2112 # gcc 4.0 and up supports POWER5
2113 if test "$_cc_major" -ge "4"; then
2115 POWER5
*) _march
='-mcpu=power5' _mcpu
='-mtune=power5' ;;
2121 if test -n "$_mcpu"; then
2122 _optimizing
=`echo $_mcpu | cut -c 8-`
2123 echores
"$_optimizing"
2132 _target_arch
='ARCH_ALPHA = yes'
2136 echocheck
"CPU type"
2139 unsigned long ver, mask;
2140 asm ("implver %0" : "=r" (ver));
2141 asm ("amask %1, %0" : "=r" (mask) : "r" (-1));
2142 printf("%ld-%x\n", ver, ~mask);
2146 $_cc -o "$TMPEXE" "$TMPC"
2149 0-0) proc
="ev4"; _mvi
="0";;
2150 1-0) proc
="ev5"; _mvi
="0";;
2151 1-1) proc
="ev56"; _mvi
="0";;
2152 1-101) proc
="pca56"; _mvi
="1";;
2153 2-303) proc
="ev6"; _mvi
="1";;
2154 2-307) proc
="ev67"; _mvi
="1";;
2155 2-1307) proc
="ev68"; _mvi
="1";;
2159 echocheck
"GCC & CPU optimization abilities"
2160 if test "$proc" = "ev68" ; then
2161 cc_check
-mcpu=$proc || proc
=ev67
2163 if test "$proc" = "ev67" ; then
2164 cc_check
-mcpu=$proc || proc
=ev6
2174 _target_arch
='ARCH_SGI_MIPS = yes'
2182 echocheck
"CPU type"
2183 proc
=`hinv -c processor | grep CPU | cut -d " " -f3`
2184 case "`echo $proc`" in
2185 R3000
) _march
='-mips1' _mcpu
='-mtune=r2000' ;;
2186 R4000
) _march
='-mips3' _mcpu
='-mtune=r4000' ;;
2187 R4400
) _march
='-mips3' _mcpu
='-mtune=r4400' ;;
2188 R4600
) _march
='-mips3' _mcpu
='-mtune=r4600' ;;
2189 R5000
) _march
='-mips4' _mcpu
='-mtune=r5000' ;;
2190 R8000|R10000|R12000|R14000|R16000
) _march
='-mips4' _mcpu
='-mtune=r8000' ;;
2192 # gcc < 3.x does not support -mtune.
2193 if test "$cc_vendor" = "gnu" && test "$_cc_major" -lt 3 ; then
2203 _target_arch
='ARCH_PA_RISC = yes'
2213 _target_arch
='ARCH_S390 = yes'
2223 _target_arch
='ARCH_S390X = yes'
2233 _target_arch
='ARCH_VAX = yes'
2243 _target_arch
='ARCH_XTENSA = yes'
2253 _target_arch
='ARCH_GENERIC = yes'
2262 echo "The architecture of your CPU ($host_arch) is not supported by this configure script"
2263 echo "It seems nobody has ported MPlayer to your OS or CPU type yet."
2264 die
"unsupported architecture $host_arch"
2266 esac # case "$host_arch" in
2268 if test "$_runtime_cpudetection" = yes ; then
2270 test "$_cmov" != no
&& _cmov
=yes
2272 test "$_mmx" != no
&& _mmx
=yes
2273 test "$_3dnow" != no
&& _3dnow
=yes
2274 test "$_3dnowext" != no
&& _3dnowext
=yes
2275 test "$_mmxext" != no
&& _mmxext
=yes
2276 test "$_sse" != no
&& _sse
=yes
2277 test "$_sse2" != no
&& _sse2
=yes
2278 test "$_ssse3" != no
&& _ssse3
=yes
2279 test "$_mtrr" != no
&& _mtrr
=yes
2287 echocheck
"extern symbol prefix"
2291 cc_check
-c || die
"Symbol mangling check failed."
2292 sym
=$
(nm
-P -g $TMPEXE)
2293 extern_prefix
=${sym%%ff_extern*}
2294 _def_extern_prefix
="#define EXTERN_PREFIX \"$extern_prefix\""
2295 echores
$extern_prefix
2298 echocheck
"assembler support of -pipe option"
2300 int main(void) { return 0; }
2302 cc_check
-pipe && _pipe
="-pipe" && echores
"yes" || echores
"no"
2305 echocheck
"compiler support of named assembler arguments"
2307 _def_named_asm_args
="#define NAMED_ASM_ARGS 1"
2308 if test "$cc_vendor" = "gnu" && test "$_cc_major" -lt 3 \
2309 -o "$_cc_major" -eq 3 -a "$_cc_minor" = 0 ; then
2311 _def_named_asm_args
="#undef NAMED_ASM_ARGS"
2313 echores
$_named_asm_args
2316 if darwin
&& test "$cc_vendor" = "gnu" ; then
2317 echocheck
"GCC support of -mstackrealign"
2318 # GCC 4.2 and some earlier Apple versions support this flag on x86. Since
2319 # Mac OS X/Intel has an ABI different from Windows this is needed to avoid
2320 # crashes when loading Win32 DLLs. Unfortunately some gcc versions create
2321 # wrong code with this flag, but this can be worked around by adding
2322 # -fno-unit-at-a-time as described in the blog post at
2323 # http://www.dribin.org/dave/blog/archives/2006/12/05/missing_third_param/
2325 __attribute__((noinline)) static int foo3(int i1, int i2, int i3) { return i3; }
2326 int main(void) { return foo3(1,2,3) == 3 ? 0 : 1; }
2328 cc_check
-O4 -mstackrealign && tmp_run
&& cflags_stackrealign
=-mstackrealign
2329 test -z "$cflags_stackrealign" && cc_check
-O4 -mstackrealign -fno-unit-at-a-time \
2330 && tmp_run
&& cflags_stackrealign
="-mstackrealign -fno-unit-at-a-time"
2331 test -n "$cflags_stackrealign" && echores
"yes" || echores
"no"
2332 fi # if darwin && test "$cc_vendor" = "gnu" ; then
2335 # Checking for CFLAGS
2337 if test "$_profile" != "" ||
test "$_debug" != "" ; then
2338 CFLAGS
="-W -Wall -O2 $_march $_mcpu $_pipe $_debug $_profile"
2340 elif test -z "$CFLAGS" ; then
2341 if test "$cc_vendor" = "intel" ; then
2342 CFLAGS
="-O2 $_march $_mcpu $_pipe -fomit-frame-pointer -wd167 -wd556 -wd144"
2343 elif test "$cc_vendor" != "gnu" ; then
2344 CFLAGS
="-O2 $_march $_mcpu $_pipe"
2346 CFLAGS
="-Wall -Wno-switch -Wpointer-arith -Wredundant-decls -O4 $_march $_mcpu $_pipe -ffast-math -fomit-frame-pointer"
2351 if test -n "$LDFLAGS" ; then
2352 _ld_extra
="$_ld_extra $LDFLAGS"
2354 elif test "$cc_vendor" = "intel" ; then
2355 _ld_extra
="$_ld_extra -i-static"
2357 if test -n "$CPPFLAGS" ; then
2358 _inc_extra
="$_inc_extra $CPPFLAGS"
2365 # Checking assembler (_as) compatibility...
2366 # Added workaround for older as that reads from stdin by default - atmos
2367 as_version
=`echo '' | $_as -version 2>&1 | sed -n 's/^.*assembler \(version \)*\([0-9.]*\).*$/\2/p'`
2368 echocheck
"assembler ($_as $as_version)"
2370 _pref_as_version
='2.9.1'
2372 if test "$_mmx" = yes ; then
2373 echo 'emms' >> $TMPS
2375 if test "$_3dnow" = yes ; then
2376 _pref_as_version
='2.10.1'
2377 echo 'femms' >> $TMPS
2379 if test "$_3dnowext" = yes ; then
2380 _pref_as_version
='2.10.1'
2381 echo 'pswapd %mm0, %mm0' >> $TMPS
2383 if test "$_mmxext" = yes ; then
2384 _pref_as_version
='2.10.1'
2385 echo 'movntq %mm0, (%eax)' >> $TMPS
2387 if test "$_sse" = yes ; then
2388 _pref_as_version
='2.10.1'
2389 echo 'xorps %xmm0, %xmm0' >> $TMPS
2391 #if test "$_sse2" = yes ; then
2392 # _pref_as_version='2.11'
2393 # echo 'xorpd %xmm0, %xmm0' >> $TMPS
2395 if test "$_cmov" = yes ; then
2396 _pref_as_version
='2.10.1'
2397 echo 'cmovb %eax, %ebx' >> $TMPS
2399 if test "$_ssse3" = yes ; then
2400 _pref_as_version
='2.16.92'
2401 echo 'pabsd %xmm0, %xmm1' >> $TMPS
2403 $_as $TMPS -o $TMPEXE > /dev
/null
2>&1 || as_verc_fail
=yes
2405 if test "$as_verc_fail" != yes ; then
2408 _res_comment
="Upgrade binutils to ${_pref_as_version} or use --disable-ssse3 etc."
2410 die
"obsolete binutils version"
2415 echocheck
".align is a power of two"
2416 if test "$_asmalign_pot" = auto
; then
2419 int main(void) { asm (".align 3"); return 0; }
2421 cc_check
&& _asmalign_pot
=yes
2423 if test "$_asmalign_pot" = "yes" ; then
2424 _def_asmalign_pot
='#define ASMALIGN(ZEROBITS) ".align " #ZEROBITS "\n\t"'
2426 _def_asmalign_pot
='#define ASMALIGN(ZEROBITS) ".align 1<<" #ZEROBITS "\n\t"'
2428 echores
$_asmalign_pot
2431 #FIXME: This should happen before the check for CFLAGS..
2432 if ppc
&& ( test "$_altivec" = yes ||
test "$_runtime_cpudetection" = yes ) ; then
2434 # check if AltiVec is supported by the compiler, and how to enable it
2435 echocheck
"GCC AltiVec flags"
2437 int main(void) { return 0; }
2439 if $
(cc_check
-maltivec -mabi=altivec
) ; then
2440 _altivec_gcc_flags
="-maltivec -mabi=altivec"
2441 # check if <altivec.h> should be included
2442 _def_altivec_h
='#undef HAVE_ALTIVEC_H'
2444 #include <altivec.h>
2445 int main(void) { return 0; }
2447 if $
(cc_check
$_altivec_gcc_flags) ; then
2448 _def_altivec_h
='#define HAVE_ALTIVEC_H 1'
2449 inc_altivec_h
='#include <altivec.h>'
2452 int main(void) { return 0; }
2454 if $
(cc_check
-faltivec) ; then
2455 _altivec_gcc_flags
="-faltivec"
2458 _altivec_gcc_flags
="none, AltiVec disabled"
2462 echores
"$_altivec_gcc_flags"
2464 # check if the compiler supports braces for vector declarations
2467 int main(void) { (vector int) {1}; return 0; }
2469 cc_check
$_altivec_gcc_flags || die
"You need a compiler that supports {} in AltiVec vector declarations."
2471 # Disable runtime cpudetection if we cannot generate AltiVec code or
2472 # AltiVec is disabled by the user.
2473 test "$_runtime_cpudetection" = yes && test "$_altivec" = no \
2474 && _runtime_cpudetection
=no
2476 # Show that we are optimizing for AltiVec (if enabled and supported).
2477 test "$_runtime_cpudetection" = no
&& test "$_altivec" = yes \
2478 && _optimizing
="$_optimizing altivec"
2480 # If AltiVec is enabled, make sure the correct flags turn up in CFLAGS.
2481 test "$_altivec" = yes && CFLAGS
="$CFLAGS $_altivec_gcc_flags"
2485 echocheck
"ARMv5TE (Enhanced DSP Extensions)"
2486 if test $_armv5te = "auto" ; then
2488 int main(void) { __asm__ __volatile__ ("qadd r0, r0, r0"); return 0; }
2491 cc_check
&& _armv5te
=yes
2495 echocheck
"ARMv6 (SIMD instructions)"
2496 if test $_armv6 = "auto" ; then
2498 int main(void) { __asm__ __volatile__ ("sadd16 r0, r0, r0"); return 0; }
2501 cc_check
&& _armv6
=yes
2505 echocheck
"iWMMXt (Intel XScale SIMD instructions)"
2506 if test $_iwmmxt = "auto" ; then
2508 int main(void) { __asm__ __volatile__ ("wunpckelub wr6, wr4"); return 0; }
2511 cc_check
&& _iwmmxt
=yes
2516 _cpuexts_all
='ALTIVEC MMX MMX2 3DNOW 3DNOWEX SSE SSE2 SSSE3 FAST_CMOV CMOV ARMV5TE ARMV6 IWMMXT MLIB MMI SH4 VIS MVI'
2517 test "$_altivec" = yes && _cpuexts
="ALTIVEC $_cpuexts"
2518 test "$_mmx" = yes && _cpuexts
="MMX $_cpuexts"
2519 test "$_mmxext" = yes && _cpuexts
="MMX2 $_cpuexts"
2520 test "$_3dnow" = yes && _cpuexts
="3DNOW $_cpuexts"
2521 test "$_3dnowext" = yes && _cpuexts
="3DNOWEX $_cpuexts"
2522 test "$_sse" = yes && _cpuexts
="SSE $_cpuexts"
2523 test "$_sse2" = yes && _cpuexts
="SSE2 $_cpuexts"
2524 test "$_ssse3" = yes && _cpuexts
="SSSE3 $_cpuexts"
2525 test "$_cmov" = yes && _cpuexts
="CMOV $_cpuexts"
2526 test "$_fast_cmov" = yes && _cpuexts
="FAST_CMOV $_cpuexts"
2527 test "$_armv5te" = yes && _cpuexts
="ARMV5TE $_cpuexts"
2528 test "$_armv6" = yes && _cpuexts
="ARMV6 $_cpuexts"
2529 test "$_iwmmxt" = yes && _cpuexts
="IWMMXT $_cpuexts"
2530 test "$_vis" = yes && _cpuexts
="VIS $_cpuexts"
2531 test "$_mvi" = yes && _cpuexts
="MVI $_cpuexts"
2533 # Checking kernel version...
2534 if x86_32
&& linux
; then
2536 kernel_version
=`uname -r 2>&1`
2537 echocheck
"$system_name kernel version"
2538 case "$kernel_version" in
2539 '') kernel_version
="?.??"; _k_verc_fail
=yes;;
2540 [0-1].
[0-9].
[0-9]*|
2.
[0-3].
[0-9]*)
2541 _k_verc_problem
=yes;;
2543 if test "$_k_verc_problem" = yes && test "$_sse" = yes ; then
2546 if test "$_k_verc_fail" ; then
2547 echores
"$kernel_version, fail"
2548 echo "WARNING! If you want to run MPlayer on this system, get prepared for problems!"
2549 echo "2.2.x has limited SSE support. Upgrade the kernel or use --disable-sse if you"
2550 echo "experience crashes. MPlayer tries to autodetect if your kernel correctly"
2551 echo "supports SSE, but you have been warned! If you are using a kernel older than"
2552 echo "2.2.x you must upgrade it to get SSE support!"
2553 # die "Your kernel is too old for this CPU." # works fine on some 2.2.x so don't die (later check will test)
2555 echores
"$kernel_version, ok"
2559 ######################
2560 # MAIN TESTS GO HERE #
2561 ######################
2566 int main(void) { return 0; }
2568 if cc_check
-lposix ; then
2569 _ld_extra
="$_ld_extra -lposix"
2577 int main(void) { return 0; }
2579 if cc_check
-lm ; then
2588 echocheck
"langinfo"
2589 if test "$_langinfo" = auto
; then
2591 #include <langinfo.h>
2592 int main(void) { nl_langinfo(CODESET); return 0; }
2595 cc_check
&& _langinfo
=yes
2597 if test "$_langinfo" = yes ; then
2598 _def_langinfo
='#define HAVE_LANGINFO 1'
2600 _def_langinfo
='#undef HAVE_LANGINFO'
2602 echores
"$_langinfo"
2605 echocheck
"language"
2606 test -z "$_language" && _language
=$LINGUAS
2607 _language
=`echo $_language | tr , " "`
2608 if $
(echo $_language |
grep -q all
) ; then
2609 doc_lang
=en
; doc_langs
=$doc_lang_all
2610 man_lang
=en
; man_langs
=$man_lang_all
2613 for lang
in $_language ; do
2614 if test -d DOCS
/man
/$lang ; then
2615 tmp_man_langs
="$tmp_man_langs $lang"
2617 if test -d DOCS
/xml
/$lang ; then
2618 tmp_doc_langs
="$tmp_doc_langs $lang"
2621 man_langs
=$tmp_man_langs
2622 doc_langs
=$tmp_man_langs
2623 for lang
in $_language ; do
2624 if test -f "help/help_mp-${lang}.h" ; then
2628 echo ${_echo_n} "$lang not found, ${_echo_c}"
2629 _language
=`echo $_language | sed "s/$lang *//"`
2633 test -z "$doc_langs" && doc_langs
=en
2634 test -z "$man_langs" && man_langs
=en
2635 test -z "$doc_lang" && doc_lang
=$
(echo $doc_langs | cut
-f1 -d" ")
2636 test -z "$man_lang" && man_lang
=$
(echo $man_langs | cut
-f1 -d" ")
2637 test -z "$msg_lang" && msg_lang
=en
2638 _mp_help
="help/help_mp-${msg_lang}.h"
2639 echores
"messages: $msg_lang - man pages: $man_langs - documentation: $doc_langs"
2642 echocheck
"enable sighandler"
2643 if test "$_sighandler" = yes ; then
2644 _def_sighandler
='#define CONFIG_SIGHANDLER 1'
2646 _def_sighandler
='#undef CONFIG_SIGHANDLER'
2648 echores
"$_sighandler"
2650 echocheck
"runtime cpudetection"
2651 if test "$_runtime_cpudetection" = yes ; then
2652 _optimizing
="Runtime CPU-Detection enabled"
2653 _def_runtime_cpudetection
='#define RUNTIME_CPUDETECT 1'
2655 _def_runtime_cpudetection
='#undef RUNTIME_CPUDETECT'
2657 echores
"$_runtime_cpudetection"
2660 echocheck
"restrict keyword"
2661 for restrict_keyword
in restrict __restrict __restrict__
; do
2662 echo "void foo(char * $restrict_keyword p); int main(void) { return 0; }" > $TMPC
2664 _def_restrict_keyword
=$restrict_keyword
2668 if [ -n "$_def_restrict_keyword" ]; then
2669 echores
"$_def_restrict_keyword"
2673 # Avoid infinite recursion loop ("#define restrict restrict")
2674 if [ "$_def_restrict_keyword" != "restrict" ]; then
2675 _def_restrict_keyword
="#define restrict $_def_restrict_keyword"
2677 _def_restrict_keyword
=""
2681 echocheck
"__builtin_expect"
2682 # GCC branch prediction hint
2685 a = __builtin_expect (a, 10);
2686 return a == 10 ? 0 : 1;
2688 int main(void) { return foo(10) && foo(0); }
2691 cc_check
&& _builtin_expect
=yes
2692 if test "$_builtin_expect" = yes ; then
2693 _def_builtin_expect
='#define HAVE_BUILTIN_EXPECT 1'
2695 _def_builtin_expect
='#undef HAVE_BUILTIN_EXPECT'
2697 echores
"$_builtin_expect"
2703 int main(void) { (void) kstat_open(); (void) kstat_close(0); return 0; }
2706 cc_check
-lkstat && _kstat
=yes
2707 if test "$_kstat" = yes ; then
2708 _def_kstat
="#define HAVE_LIBKSTAT 1"
2709 _ld_extra
="$_ld_extra -lkstat"
2711 _def_kstat
="#undef HAVE_LIBKSTAT"
2717 # required for nanosleep on some systems
2720 int main(void) { (void) nanosleep(0, 0); return 0; }
2723 cc_check
-lposix4 && _posix4
=yes
2724 if test "$_posix4" = yes ; then
2725 _ld_extra
="$_ld_extra -lposix4"
2729 for func
in llrint lrint lrintf round roundf
; do
2733 int main(void) { long (*foo)(float); foo = $func; (void)(*foo)(0.0); return 0; }
2736 cc_check
-D_ISOC99_SOURCE $_ld_lm && eval _
$func=yes
2737 if eval test "x\$_$func" = "xyes"; then
2738 eval _def_
$func="\"#define HAVE_`echo $func | tr '[a-z]' '[A-Z]'` 1\""
2741 eval _def_
$func="\"#undef HAVE_`echo $func | tr '[a-z]' '[A-Z]'`\""
2750 int main(void) { char a; mkstemp(&a); return 0; }
2753 cc_check
&& _mkstemp
=yes
2754 if test "$_mkstemp" = yes ; then
2755 _def_mkstemp
='#define HAVE_MKSTEMP 1'
2757 _def_mkstemp
='#undef HAVE_MKSTEMP'
2762 echocheck
"nanosleep"
2763 # also check for nanosleep
2766 int main(void) { (void) nanosleep(0, 0); return 0; }
2769 cc_check
&& _nanosleep
=yes
2770 if test "$_nanosleep" = yes ; then
2771 _def_nanosleep
='#define HAVE_NANOSLEEP 1'
2773 _def_nanosleep
='#undef HAVE_NANOSLEEP'
2775 echores
"$_nanosleep"
2779 # for Solaris (socket stuff is in -lsocket, gethostbyname and friends in -lnsl):
2780 # for BeOS (socket stuff is in -lsocket, gethostbyname and friends in -lbind):
2783 #include <sys/socket.h>
2784 int main(void) { (void) gethostbyname(0); (void) socket(AF_INET, SOCK_STREAM, 0); return 0; }
2787 for _ld_tmp
in "" "-lsocket -lbind" "-lsocket -ldnet" "-lsocket -lnsl" "-lnsl" "-lsocket" ; do
2788 cc_check
$_ld_tmp && _ld_sock
="$_ld_tmp" && _socklib
=yes && break
2790 if test $_winsock2 = auto
&& ! cygwin
; then
2793 #include <winsock2.h>
2794 int main(void) { (void) gethostbyname(0); return 0; }
2796 cc_check
-lws2_32 && _ld_sock
="-lws2_32" && _winsock2
=yes
2798 test "$_ld_sock" && _res_comment
="using $_ld_sock"
2802 if test $_winsock2 = yes ; then
2804 _def_winsock2
='#define HAVE_WINSOCK2 1'
2806 _def_winsock2
='#undef HAVE_WINSOCK2'
2811 echocheck
"inet_pton()"
2813 #include <sys/types.h>
2814 #include <sys/socket.h>
2815 #include <arpa/inet.h>
2816 int main(void) { (void) inet_pton(0, 0, 0); return 0; }
2818 if test "$_winsock2" = yes ; then
2819 _res_comment
="using winsock2 functions instead"
2821 elif cc_check
$_ld_sock ; then
2822 # NOTE: Linux has libresolv but does not need it
2824 _res_comment
="using $_ld_sock"
2826 elif cc_check
$_ld_sock -lresolv ; then
2827 # NOTE: needed for SunOS at least
2828 _ld_sock
="$_ld_sock -lresolv"
2829 _res_comment
="using $_ld_sock"
2832 _res_comment
="trying inet_aton next"
2835 echocheck
"inet_aton()"
2837 #include <sys/types.h>
2838 #include <sys/socket.h>
2839 #include <arpa/inet.h>
2840 int main(void) { (void) inet_aton(0, 0); return 0; }
2843 if cc_check
$_ld_sock ; then
2844 # NOTE: Linux has libresolv but does not need it
2846 _res_comment
="using $_ld_sock"
2847 elif cc_check
$_ld_sock -lresolv ; then
2848 # NOTE: needed for SunOS at least
2849 _ld_sock
="$_ld_sock -lresolv"
2850 _res_comment
="using $_ld_sock"
2854 _res_comment
="network support disabled"
2856 echores
"$_use_aton"
2859 _def_use_aton
='#undef HAVE_ATON'
2860 if test "$_use_aton" = yes; then
2861 _def_use_aton
='#define HAVE_ATON 1'
2865 echocheck
"socklen_t"
2867 for header
in "sys/socket.h" "ws2tcpip.h" ; do
2870 int main(void) { socklen_t v = 0; return v; }
2872 cc_check
&& _socklen_t
=yes && break
2874 if test "$_socklen_t" = yes ; then
2875 _def_socklen_t
='#define HAVE_SOCKLEN_T 1'
2877 _def_socklen_t
='#undef HAVE_SOCKLEN_T'
2879 echores
"$_socklen_t"
2883 # FIXME network check
2884 if test "$_network" = yes ; then
2885 _def_network
='#define CONFIG_NETWORK 1'
2886 _ld_extra
="$_ld_extra $_ld_sock"
2887 _inputmodules
="network $_inputmodules"
2889 _noinputmodules
="network $_noinputmodules"
2890 _def_network
='#undef CONFIG_NETWORK'
2895 echocheck
"inttypes.h (required)"
2897 #include <inttypes.h>
2898 int main(void) { return 0; }
2901 cc_check
&& _inttypes
=yes
2902 echores
"$_inttypes"
2904 if test "$_inttypes" = no
; then
2905 echocheck
"bitypes.h (inttypes.h predecessor)"
2907 #include <sys/bitypes.h>
2908 int main(void) { return 0; }
2910 cc_check
&& _inttypes
=yes
2911 if test "$_inttypes" = yes ; then
2912 die
"You don't have inttypes.h, but sys/bitypes.h is present. Please copy etc/inttypes.h into the include path, and re-run configure."
2914 die
"Cannot find header either inttypes.h or bitypes.h. There is no chance for compilation to succeed."
2919 echocheck
"int_fastXY_t in inttypes.h"
2921 #include <inttypes.h>
2923 volatile int_fast16_t v= 0;
2927 cc_check
&& _fast_inttypes
=yes
2928 if test "$_fast_inttypes" = no
; then
2929 _def_fast_inttypes
='
2930 typedef signed char int_fast8_t;
2931 typedef signed int int_fast16_t;
2932 typedef signed int int_fast32_t;
2933 typedef signed long long int_fast64_t;
2934 typedef unsigned char uint_fast8_t;
2935 typedef unsigned int uint_fast16_t;
2936 typedef unsigned int uint_fast32_t;
2937 typedef unsigned long long uint_fast64_t;'
2939 echores
"$_fast_inttypes"
2942 echocheck
"word size"
2943 _mp_wordsize
="#undef MP_WORDSIZE"
2946 #include <sys/types.h>
2947 int main(void) { printf("%d\n", sizeof(size_t)*8); return 0; }
2949 cc_check
&& _wordsize
=`$TMPEXE` && _mp_wordsize
="#define MP_WORDSIZE $_wordsize"
2950 echores
"$_wordsize"
2953 echocheck
"malloc.h"
2956 int main(void) { (void) malloc(0); return 0; }
2959 cc_check
&& _malloc
=yes
2960 if test "$_malloc" = yes ; then
2961 _def_malloc
='#define HAVE_MALLOC_H 1'
2963 _def_malloc
='#undef HAVE_MALLOC_H'
2965 # malloc.h emits a warning in FreeBSD and OpenBSD
2966 freebsd || openbsd || dragonfly
&& _def_malloc
='#undef HAVE_MALLOC_H'
2970 echocheck
"memalign()"
2971 # XXX restrict to x86 ? extend to other CPUs/cacheline sizes ?
2974 int main(void) { (void) memalign(64, sizeof(char)); return 0; }
2977 cc_check
&& _memalign
=yes
2978 if test "$_memalign" = yes ; then
2979 _def_memalign
='#define HAVE_MEMALIGN 1'
2981 _def_memalign
='#undef HAVE_MEMALIGN'
2982 _def_map_memalign
='#define memalign(a,b) malloc(b)'
2983 darwin || _def_memalign_hack
='#define CONFIG_MEMALIGN_HACK 1'
2985 echores
"$_memalign"
2988 echocheck
"alloca.h"
2991 int main(void) { (void) alloca(0); return 0; }
2994 cc_check
&& _alloca
=yes
2996 _def_alloca
='#define HAVE_ALLOCA_H 1'
2998 _def_alloca
='#undef HAVE_ALLOCA_H'
3003 echocheck
"byteswap.h"
3005 #include <byteswap.h>
3006 int main(void) { bswap_16(0); return 0; }
3009 cc_check
&& _byteswap_h
=yes
3011 _def_byteswap_h
='#define HAVE_BYTESWAP_H 1'
3013 _def_byteswap_h
='#undef HAVE_BYTESWAP_H'
3015 echores
"$_byteswap_h"
3020 #include <sys/types.h>
3021 #include <sys/mman.h>
3022 int main(void) { (void) mmap(0, 0, 0, 0, 0, 0); return 0; }
3025 cc_check
&& _mman
=yes
3026 if test "$_mman" = yes ; then
3027 _def_mman
='#define HAVE_SYS_MMAN_H 1'
3029 _def_mman
='#undef HAVE_SYS_MMAN_H'
3030 os2
&& _need_mmap
=yes
3035 #include <sys/types.h>
3036 #include <sys/mman.h>
3037 int main(void) { void *p = MAP_FAILED; return 0; }
3039 _mman_has_map_failed
=no
3040 cc_check
&& _mman_has_map_failed
=yes
3041 if test "$_mman_has_map_failed" = yes ; then
3042 _def_mman_has_map_failed
=''
3044 _def_mman_has_map_failed
='#define MAP_FAILED ((void *) -1)'
3047 echocheck
"dynamic loader"
3051 int main(void) { dlopen(NULL, 0); dlclose(NULL); dlsym(NULL, NULL); return 0; }
3054 for _ld_tmp
in "" "-ldl" ; do
3055 cc_check
$_ld_tmp && _ld_dl
="$_ld_tmp" && _dl
=yes && break
3057 if test "$_dl" = yes ; then
3058 _def_dl
='#define HAVE_LIBDL 1'
3060 _def_dl
='#undef HAVE_LIBDL'
3065 echocheck
"dynamic a/v plugins support"
3066 if test "$_dl" = no
; then
3069 if test "$_dynamic_plugins" = yes ; then
3070 _def_dynamic_plugins
='#define CONFIG_DYNAMIC_PLUGINS 1'
3072 _def_dynamic_plugins
='#undef CONFIG_DYNAMIC_PLUGINS'
3074 echores
"$_dynamic_plugins"
3077 _def_threads
='#undef HAVE_THREADS'
3080 if test "$_pthreads" = auto
; then
3082 #include <pthread.h>
3083 void* func(void *arg) { return arg; }
3084 int main(void) { pthread_t tid; return pthread_create (&tid, 0, func, 0) == 0 ? 0 : 1; }
3088 for _ld_tmp
in "-lpthreadGC2" "" "-lpthread" "-pthread" ; do
3089 # for crosscompilation, we cannot execute the program, be happy if we can link statically
3090 cc_check
$_ld_tmp && (tmp_run ||
test "$_ld_static") && _ld_pthread
="$_ld_tmp" && _pthreads
=yes && break
3094 if test "$_pthreads" = yes ; then
3095 _res_comment
="using $_ld_pthread"
3096 _def_pthreads
='#define HAVE_PTHREADS 1'
3097 _def_threads
='#define HAVE_THREADS 1'
3099 _res_comment
="v4l, v4l2, ao_nas, win32 loader disabled"
3100 _def_pthreads
='#undef HAVE_PTHREADS'
3101 _nas
=no
; _tv_v4l1
=no
; _tv_v4l2
=no
3102 mingw32 || _win32dll
=no
3104 echores
"$_pthreads"
3106 echocheck
"w32threads"
3107 if test "$_pthreads" = yes ; then
3108 _res_comment
="using pthread instead"
3111 if test "$_w32threads" = auto
; then
3113 mingw32
&& _w32threads
=yes
3115 test "$_w32threads" = yes && _def_threads
='#define HAVE_THREADS 1'
3116 echores
"$_w32threads"
3120 if test "$_rpath" = yes ; then
3121 for I
in `echo $_ld_extra | sed 's/-L//g'` ; do
3122 tmp
="$tmp ` echo $I | sed 's/.*/ -L& -Wl,-R&/'`"
3129 if test "$_iconv" = auto
; then
3134 #define INBUFSIZE 1024
3135 #define OUTBUFSIZE 4096
3137 char inbuffer[INBUFSIZE];
3138 char outbuffer[OUTBUFSIZE];
3143 char *tocode="UTF-8";
3144 char *fromcode="cp1250";
3145 if ((icdsc = iconv_open (tocode, fromcode)) != (iconv_t)(-1)) {
3146 while ((numread = read (0, inbuffer, INBUFSIZE))) {
3147 char *iptr=inbuffer;
3148 char *optr=outbuffer;
3149 size_t inleft=numread;
3150 size_t outleft=OUTBUFSIZE;
3151 if (iconv(icdsc, (const char **)&iptr, &inleft, &optr, &outleft)
3153 write (1, outbuffer, OUTBUFSIZE - outleft);
3156 if (iconv_close(icdsc) == -1)
3163 for _ld_tmp
in "" "-liconv" "-liconv $_ld_dl" ; do
3164 cc_check
$_ld_lm $_ld_tmp && _ld_extra
="$_ld_extra $_ld_tmp" && \
3168 if test "$_iconv" = yes ; then
3169 _def_iconv
='#define CONFIG_ICONV 1'
3171 _def_iconv
='#undef CONFIG_ICONV'
3176 echocheck
"soundcard.h"
3178 _def_soundcard
='#undef HAVE_SOUNDCARD_H'
3179 _def_sys_soundcard
='#undef HAVE_SYS_SOUNDCARD_H'
3180 for _soundcard_header
in "sys/soundcard.h" "soundcard.h"; do
3182 #include <$_soundcard_header>
3183 int main(void) { return 0; }
3185 cc_check
&& _soundcard_h
=yes && _res_comment
="$_soundcard_header" && break
3188 if test "$_soundcard_h" = yes ; then
3189 if test $_soundcard_header = "sys/soundcard.h"; then
3190 _def_sys_soundcard
='#define HAVE_SYS_SOUNDCARD_H 1'
3192 _def_soundcard
='#define HAVE_SOUNDCARD_H 1'
3195 echores
"$_soundcard_h"
3198 echocheck
"sys/dvdio.h"
3201 #include <sys/dvdio.h>
3202 int main(void) { return 0; }
3205 cc_check
&& _dvdio
=yes
3206 if test "$_dvdio" = yes ; then
3207 _def_dvdio
='#define DVD_STRUCT_IN_SYS_DVDIO_H 1'
3209 _def_dvdio
='#undef DVD_STRUCT_IN_SYS_DVDIO_H'
3214 echocheck
"sys/cdio.h"
3217 #include <sys/cdio.h>
3218 int main(void) { return 0; }
3221 cc_check
&& _cdio
=yes
3222 if test "$_cdio" = yes ; then
3223 _def_cdio
='#define DVD_STRUCT_IN_SYS_CDIO_H 1'
3225 _def_cdio
='#undef DVD_STRUCT_IN_SYS_CDIO_H'
3230 echocheck
"linux/cdrom.h"
3232 #include <sys/types.h>
3233 #include <linux/cdrom.h>
3234 int main(void) { return 0; }
3237 cc_check
&& _cdrom
=yes
3238 if test "$_cdrom" = yes ; then
3239 _def_cdrom
='#define DVD_STRUCT_IN_LINUX_CDROM_H 1'
3241 _def_cdrom
='#undef DVD_STRUCT_IN_LINUX_CDROM_H'
3249 int main(void) { return 0; }
3252 cc_check
&& _dvd
=yes
3253 if test "$_dvd" = yes ; then
3254 _def_dvd
='#define DVD_STRUCT_IN_DVD_H 1'
3256 _def_dvd
='#undef DVD_STRUCT_IN_DVD_H'
3262 echocheck
"BSDI dvd.h"
3265 int main(void) { return 0; }
3268 cc_check
&& _bsdi_dvd
=yes
3269 if test "$_bsdi_dvd" = yes ; then
3270 _def_bsdi_dvd
='#define DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H 1'
3272 _def_bsdi_dvd
='#undef DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H'
3274 echores
"$_bsdi_dvd"
3279 # also used by AIX, but AIX does not support VCD and/or libdvdread
3280 echocheck
"HP-UX SCSI header"
3282 #include <sys/scsi.h>
3283 int main(void) { return 0; }
3286 cc_check
&& _hpux_scsi_h
=yes
3287 if test "$_hpux_scsi_h" = yes ; then
3288 _def_hpux_scsi_h
='#define HPUX_SCTL_IO 1'
3290 _def_hpux_scsi_h
='#undef HPUX_SCTL_IO'
3292 echores
"$_hpux_scsi_h"
3297 echocheck
"userspace SCSI headers (Solaris)"
3300 #include <stropts.h>
3301 #include <sys/scsi/scsi_types.h>
3302 #include <sys/scsi/impl/uscsi.h>
3303 int main(void) { return 0; }
3306 cc_check
&& _sol_scsi_h
=yes
3307 if test "$_sol_scsi_h" = yes ; then
3308 _def_sol_scsi_h
='#define SOLARIS_USCSI 1'
3310 _def_sol_scsi_h
='#undef SOLARIS_USCSI'
3312 echores
"$_sol_scsi_h"
3317 if test "$_termcap" = auto
; then
3321 int main(void) { tgetent(NULL, NULL); return 0; }
3324 for _ld_tmp
in "-lncurses" "-ltinfo" "-ltermcap"; do
3325 cc_check
$_ld_tmp && _ld_extra
="$_ld_extra $_ld_tmp" \
3326 && _termcap
=yes && break
3329 if test "$_termcap" = yes ; then
3330 _def_termcap
='#define HAVE_TERMCAP 1'
3331 _res_comment
="using $_ld_tmp"
3333 _def_termcap
='#undef HAVE_TERMCAP'
3339 _def_termios
='#undef HAVE_TERMIOS'
3340 _def_termios_h
='#undef HAVE_TERMIOS_H'
3341 _def_termios_sys_h
='#undef HAVE_SYS_TERMIOS_H'
3342 if test "$_termios" = auto
; then
3344 for _termios_header
in "sys/termios.h" "termios.h"; do
3346 #include <$_termios_header>
3347 int main(void) { return 0; }
3349 cc_check
&& _termios
=yes && _res_comment
="$_termios_header" && break
3353 if test "$_termios" = yes ; then
3354 _def_termios
='#define HAVE_TERMIOS 1'
3355 if test "$_termios_header" = "termios.h" ; then
3356 _def_termios_h
='#define HAVE_TERMIOS_H 1'
3358 _def_termios_sys_h
='#define HAVE_SYS_TERMIOS_H 1'
3365 if test "$_shm" = auto
; then
3367 #include <sys/types.h>
3368 #include <sys/shm.h>
3369 int main(void) { shmget(0, 0, 0); shmat(0, 0, 0); shmctl(0, 0, 0); return 0; }
3372 cc_check
&& _shm
=yes
3374 if test "$_shm" = yes ; then
3375 _def_shm
='#define HAVE_SHM 1'
3377 _def_shm
='#undef HAVE_SHM'
3382 echocheck
"strsep()"
3385 int main(void) { char *s = "Hello, world!"; (void) strsep(&s, ","); return 0; }
3388 cc_check
&& _strsep
=yes
3389 if test "$_strsep" = yes ; then
3390 _def_strsep
='#define HAVE_STRSEP 1'
3393 _def_strsep
='#undef HAVE_STRSEP'
3399 echocheck
"vsscanf()"
3402 int main(void) { vsscanf(0, 0, 0); return 0; }
3405 cc_check
&& _vsscanf
=yes
3406 if test "$_vsscanf" = yes ; then
3407 _def_vsscanf
='#define HAVE_VSSCANF 1'
3410 _def_vsscanf
='#undef HAVE_VSSCANF'
3419 int main(void) { swab(0, 0, 0); return 0; }
3422 cc_check
&& _swab
=yes
3423 if test "$_swab" = yes ; then
3424 _def_swab
='#define HAVE_SWAB 1'
3427 _def_swab
='#undef HAVE_SWAB'
3432 echocheck
"POSIX select()"
3436 #include <sys/types.h>
3438 #include <sys/time.h>
3440 int main(void) {int nfds = 1; fd_set readfds; struct timeval timeout; select(nfds,&readfds,NULL,NULL,&timeout); return 0; }
3443 _def_posix_select
='#undef HAVE_POSIX_SELECT'
3444 #select() of kLIBC (OS/2) supports socket only
3445 ! os2
&& cc_check
&& _posix_select
=yes \
3446 && _def_posix_select
='#define HAVE_POSIX_SELECT 1'
3447 echores
"$_posix_select"
3450 echocheck
"gettimeofday()"
3453 #include <sys/time.h>
3454 int main(void) {struct timeval tv_start; gettimeofday(&tv_start, NULL); return 0; }
3457 cc_check
&& _gettimeofday
=yes
3458 if test "$_gettimeofday" = yes ; then
3459 _def_gettimeofday
='#define HAVE_GETTIMEOFDAY 1'
3460 _need_gettimeofday
=no
3462 _def_gettimeofday
='#undef HAVE_GETTIMEOFDAY'
3463 _need_gettimeofday
=yes
3465 echores
"$_gettimeofday"
3472 int main(void) { glob_t gg; glob("filename",0,NULL,&gg); return 0; }
3475 cc_check
&& _glob
=yes
3476 if test "$_glob" = yes ; then
3477 _def_glob
='#define HAVE_GLOB 1'
3480 _def_glob
='#undef HAVE_GLOB'
3486 echocheck
"setenv()"
3489 int main(void) { setenv("","",0); return 0; }
3492 cc_check
&& _setenv
=yes
3493 if test "$_setenv" = yes ; then
3494 _def_setenv
='#define HAVE_SETENV 1'
3497 _def_setenv
='#undef HAVE_SETENV'
3504 echocheck
"sysi86()"
3506 #include <sys/sysi86.h>
3507 int main(void) { sysi86(0); return 0; }
3510 cc_check
&& _sysi86
=yes
3511 if test "$_sysi86" = yes ; then
3512 _def_sysi86
='#define HAVE_SYSI86 1'
3514 #include <sys/sysi86.h>
3515 int main(void) { int sysi86(int, void*); sysi86(0); return 0; }
3517 cc_check
&& _def_sysi86_iv
='#define HAVE_SYSI86_iv 1'
3519 _def_sysi86
='#undef HAVE_SYSI86'
3525 echocheck
"sys/sysinfo.h"
3527 #include <sys/sysinfo.h>
3529 struct sysinfo s_info;
3535 cc_check
&& _sys_sysinfo
=yes
3536 if test "$_sys_sysinfo" = yes ; then
3537 _def_sys_sysinfo
='#define HAVE_SYS_SYSINFO_H 1'
3539 _def_sys_sysinfo
='#undef HAVE_SYS_SYSINFO_H'
3541 echores
"$_sys_sysinfo"
3546 echocheck
"Mac OS X APIs"
3547 if test "$_macosx" = auto
; then
3548 productName
=`/usr/bin/sw_vers -productName`
3549 if test "$productName" = "Mac OS X" ||
3550 test "$productName" = "Mac OS X Server" ; then
3554 _noaomodules
="macosx $_noaomodules"
3555 _novomodules
="quartz $_novomodules"
3558 if test "$_macosx" = yes ; then
3560 #include <Carbon/Carbon.h>
3561 #include <QuickTime/QuickTime.h>
3562 #include <CoreAudio/CoreAudio.h>
3566 CFRunLoopRunInMode(kCFRunLoopDefaultMode, 0, false);
3570 if cc_check
-framework Carbon
-framework QuickTime
-framework CoreAudio
; then
3571 _ld_extra
="$_ld_extra -framework Carbon -framework QuickTime -framework CoreAudio -framework AudioUnit -framework AudioToolbox"
3573 _def_coreaudio
='#define CONFIG_COREAUDIO 1'
3574 _aosrc
="$_aosrc ao_macosx.c"
3575 _aomodules
="macosx $_aomodules"
3576 _def_quartz
='#define CONFIG_QUARTZ 1'
3577 _vosrc
="$_vosrc vo_quartz.c"
3578 _vomodules
="quartz $_vomodules"
3579 _def_quicktime
='#define CONFIG_QUICKTIME 1'
3583 _def_coreaudio
='#undef CONFIG_COREAUDIO'
3584 _noaomodules
="macosx $_noaomodules"
3585 _def_quartz
='#undef CONFIG_QUARTZ'
3586 _novomodules
="quartz $_novomodules"
3587 _def_quicktime
='#undef CONFIG_QUICKTIME'
3590 #include <Carbon/Carbon.h>
3591 #include <QuartzCore/CoreVideo.h>
3592 int main(void) { return 0; }
3594 if cc_check
-framework Carbon
-framework QuartzCore
-framework OpenGL
; then
3595 _vosrc
="$_vosrc vo_macosx.m"
3596 _vomodules
="macosx $_vomodules"
3597 _ld_extra
="$_ld_extra -framework Cocoa -framework QuartzCore -framework OpenGL"
3598 _def_corevideo
='#define CONFIG_COREVIDEO 1'
3601 _novomodules
="macosx $_novomodules"
3602 _def_corevideo
='#undef CONFIG_COREVIDEO'
3608 echocheck
"Mac OS X Finder Support"
3609 if test "$_macosx_finder" = auto
; then
3610 _macosx_finder
=$_macosx
3612 if test "$_macosx_finder" = yes; then
3613 _def_macosx_finder
='#define CONFIG_MACOSX_FINDER 1'
3616 _def_macosx_finder
='#undef CONFIG_MACOSX_FINDER'
3619 echores
"$_macosx_finder"
3621 echocheck
"Mac OS X Bundle file locations"
3622 if test "$_macosx_bundle" = auto
; then
3623 _macosx_bundle
=$_macosx_finder
3625 if test "$_macosx_bundle" = yes; then
3626 _def_macosx_bundle
='#define CONFIG_MACOSX_BUNDLE 1'
3628 _def_macosx_bundle
='#undef CONFIG_MACOSX_BUNDLE'
3631 echores
"$_macosx_bundle"
3633 echocheck
"Apple Remote"
3634 if test "$_apple_remote" = auto
; then
3638 #include <IOKit/IOCFPlugIn.h>
3640 io_iterator_t hidObjectIterator = (io_iterator_t)NULL;
3641 CFMutableDictionaryRef hidMatchDictionary;
3642 IOReturn ioReturnValue;
3644 // Set up a matching dictionary to search the I/O Registry by class.
3645 // name for all HID class devices
3646 hidMatchDictionary = IOServiceMatching("AppleIRController");
3648 // Now search I/O Registry for matching devices.
3649 ioReturnValue = IOServiceGetMatchingServices(kIOMasterPortDefault,
3650 hidMatchDictionary, &hidObjectIterator);
3652 // If search is unsuccessful, return nonzero.
3653 if (ioReturnValue != kIOReturnSuccess ||
3654 !IOIteratorIsValid(hidObjectIterator)) {
3660 cc_check
-framework IOKit
&& tmp_run
&& _apple_remote
=yes
3662 if test "$_apple_remote" = yes ; then
3663 _def_apple_remote
='#define CONFIG_APPLE_REMOTE 1'
3664 _ld_extra
="$_ld_extra -framework IOKit"
3666 _def_apple_remote
='#undef CONFIG_APPLE_REMOTE'
3668 echores
"$_apple_remote"
3674 echocheck
"Apple IR"
3675 if test "$_apple_ir" = auto
; then
3678 #include <linux/types.h>
3679 #include <linux/input.h>
3681 struct input_event ev;
3686 cc_check
&& tmp_run
&& _apple_ir
=yes
3688 if test "$_apple_ir" = yes ; then
3689 _def_apple_ir
='#define CONFIG_APPLE_IR 1'
3691 _def_apple_ir
='#undef CONFIG_APPLE_IR'
3693 echores
"$_apple_ir"
3696 echocheck
"pkg-config"
3697 _pkg_config
=pkg-config
3698 if `$_pkg_config --version > /dev/null 2>&1`; then
3699 if test "$_ld_static"; then
3700 _pkg_config
="$_pkg_config --static"
3709 echocheck
"Samba support (libsmbclient)"
3710 if test "$_smb" = yes; then
3711 _ld_extra
="$_ld_extra -lsmbclient"
3713 if test "$_smb" = auto
; then
3716 #include <libsmbclient.h>
3717 int main(void) { smbc_opendir("smb://"); return 0; }
3719 for _ld_tmp
in "-lsmbclient" "-lsmbclient $_ld_dl" "-lsmbclient $_ld_dl -lnsl" "-lsmbclient $_ld_dl -lssl -lnsl" ; do
3720 cc_check
$_ld_tmp && _ld_extra
="$_ld_extra $_ld_tmp" && \
3725 if test "$_smb" = yes; then
3726 _def_smb
="#define CONFIG_LIBSMBCLIENT"
3727 _inputmodules
="smb $_inputmodules"
3729 _def_smb
="#undef CONFIG_LIBSMBCLIENT"
3730 _noinputmodules
="smb $_noinputmodules"
3741 if test "$_tdfxfb" = yes ; then
3742 _def_tdfxfb
='#define CONFIG_TDFXFB 1'
3743 _vosrc
="$_vosrc vo_tdfxfb.c"
3744 _vomodules
="tdfxfb $_vomodules"
3746 _def_tdfxfb
='#undef CONFIG_TDFXFB'
3747 _novomodules
="tdfxfb $_novomodules"
3752 if test "$_s3fb" = yes ; then
3753 _def_s3fb
='#define CONFIG_S3FB 1'
3754 _vosrc
="$_vosrc vo_s3fb.c"
3755 _vomodules
="s3fb $_vomodules"
3757 _def_s3fb
='#undef CONFIG_S3FB'
3758 _novomodules
="s3fb $_novomodules"
3763 if test "$_wii" = yes ; then
3764 _def_wii
='#define CONFIG_WII 1'
3765 _vosrc
="$_vosrc vo_wii.c"
3766 _vomodules
="wii $_vomodules"
3768 _def_wii
='#undef CONFIG_WII'
3769 _novomodules
="wii $_novomodules"
3774 if test "$_tdfxvid" = yes ; then
3775 _def_tdfxvid
='#define CONFIG_TDFX_VID 1'
3776 _vosrc
="$_vosrc vo_tdfx_vid.c"
3777 _vomodules
="tdfx_vid $_vomodules"
3779 _def_tdfxvid
='#undef CONFIG_TDFX_VID'
3780 _novomodules
="tdfx_vid $_novomodules"
3785 if test "$_xvr100" = auto
; then
3788 #include <sys/fbio.h>
3789 #include <sys/visual_io.h>
3791 struct vis_identifier ident;
3792 struct fbgattr attr;
3793 ioctl(0, VIS_GETIDENTIFIER, &ident);
3794 ioctl(0, FBIOGATTR, &attr);
3799 cc_check
&& _xvr100
=yes
3801 if test "$_xvr100" = yes ; then
3802 _def_xvr100
='#define CONFIG_XVR100 1'
3803 _vosrc
="$_vosrc vo_xvr100.c"
3804 _vomodules
="xvr100 $_vomodules"
3806 _def_tdfxvid
='#undef CONFIG_XVR100'
3807 _novomodules
="xvr100 $_novomodules"
3812 if test "$_tga" = yes ; then
3813 _def_tga
='#define CONFIG_TGA 1'
3814 _vosrc
="$_vosrc vo_tga.c"
3815 _vomodules
="tga $_vomodules"
3817 _def_tga
='#undef CONFIG_TGA'
3818 _novomodules
="tga $_novomodules"
3823 echocheck
"md5sum support"
3824 if test "$_md5sum" = yes; then
3825 _def_md5sum
="#define CONFIG_MD5SUM"
3826 _vosrc
="$_vosrc vo_md5sum.c"
3827 _vomodules
="md5sum $_vomodules"
3829 _def_md5sum
="#undef CONFIG_MD5SUM"
3830 _novomodules
="md5sum $_novomodules"
3835 echocheck
"yuv4mpeg support"
3836 if test "$_yuv4mpeg" = yes; then
3837 _def_yuv4mpeg
="#define CONFIG_YUV4MPEG"
3838 _vosrc
="$_vosrc vo_yuv4mpeg.c"
3839 _vomodules
="yuv4mpeg $_vomodules"
3841 _def_yuv4mpeg
="#undef CONFIG_YUV4MPEG"
3842 _novomodules
="yuv4mpeg $_novomodules"
3844 echores
"$_yuv4mpeg"
3848 if test "$_bl" = yes ; then
3849 _def_bl
='#define CONFIG_BL 1'
3850 _vosrc
="$_vosrc vo_bl.c"
3851 _vomodules
="bl $_vomodules"
3853 _def_bl
='#undef CONFIG_BL'
3854 _novomodules
="bl $_novomodules"
3859 echocheck
"DirectFB"
3860 if test "$_directfb" = auto
; then
3863 #include <directfb.h>
3864 int main(void) { IDirectFB *foo; DirectFBInit(0,0); return 0; }
3866 for _inc_tmp
in "" -I/usr
/local
/include
/directfb \
3867 -I/usr
/include
/directfb
-I/usr
/local
/include
; do
3868 cc_check
$_inc_tmp -ldirectfb && _directfb
=yes && \
3869 _inc_extra
="$_inc_extra $_inc_tmp" && break
3874 expr $1 \
* 65536 + $2 \
* 256 + $3
3877 if test "$_directfb" = yes; then
3879 #include <directfb_version.h>
3881 dfb_ver = DIRECTFB_MAJOR_VERSION.DIRECTFB_MINOR_VERSION.DIRECTFB_MICRO_VERSION
3884 if $_cc -E $TMPC $_inc_extra > "$TMPEXE"; then
3885 _directfb_version
=`sed -n 's/^dfb_ver[^0-9]*\(.*\)/\1/p' "$TMPEXE" | tr -d '()'`
3886 _dfb_major
=`echo $_directfb_version | cut -d . -f 1`
3887 _dfb_minor
=`echo $_directfb_version | cut -d . -f 2`
3888 _dfb_micro
=`echo $_directfb_version | cut -d . -f 3`
3889 _dfb_version
=`dfb_version $_dfb_major $_dfb_minor $_dfb_micro`
3890 if test "$_dfb_version" -ge `dfb_version 0 9 13`; then
3891 _def_directfb_version
="#define DIRECTFBVERSION $_dfb_version"
3892 _res_comment
="$_directfb_version"
3893 test "$_dfb_version" -ge `dfb_version 0 9 15` && _dfbmga
=yes
3895 _def_directfb_version
='#undef DIRECTFBVERSION'
3897 _res_comment
="version >=0.9.13 required"
3901 _res_comment
="failed to get version"
3904 echores
"$_directfb"
3906 if test "$_directfb" = yes ; then
3907 _def_directfb
='#define CONFIG_DIRECTFB 1'
3908 _vosrc
="$_vosrc vo_directfb2.c"
3909 _vomodules
="directfb $_vomodules"
3910 _libs_mplayer
="$_libs_mplayer -ldirectfb"
3912 _def_directfb
='#undef CONFIG_DIRECTFB'
3913 _novomodules
="directfb $_novomodules"
3915 if test "$_dfbmga" = yes; then
3916 _vosrc
="$_vosrc vo_dfbmga.c"
3917 _vomodules
="dfbmga $_vomodules"
3918 _def_dfbmga
='#define CONFIG_DFBMGA 1'
3920 _novomodules
="dfbmga $_novomodules"
3921 _def_dfbmga
='#undef CONFIG_DFBMGA'
3925 echocheck
"X11 headers presence"
3927 _res_comment
="check if the dev(el) packages are installed"
3928 for I
in `echo $_inc_extra | sed s/-I//g` /usr
/include
; do
3929 if test -f "$I/X11/Xlib.h" ; then
3935 if test $_cross_compile = no
; then
3936 for I
in /usr
/X11
/include
/usr
/X11R
6/include
/usr
/include
/X11R6
/usr
/openwin
/include
; do
3937 if test -f "$I/X11/Xlib.h" ; then
3938 _inc_extra
="$_inc_extra -I$I"
3940 _res_comment
="using $I"
3945 echores
"$_x11_headers"
3949 if test "$_x11" = auto
&& test "$_x11_headers" = yes ; then
3951 #include <X11/Xlib.h>
3952 #include <X11/Xutil.h>
3953 int main(void) { (void) XCreateWindow(0,0,0,0,0,0,0,0,0,0,0,0); return 0; }
3955 for I
in "" -L/usr
/X11R
6/lib
-L/usr
/lib
/X11R6
-L/usr
/X11
/lib \
3956 -L/usr
/lib32
-L/usr
/openwin
/lib
-L/usr
/X11R
6/lib64
-L/usr
/lib
; do
3958 _ld_tmp
="$I -lXext -lX11 $_ld_pthread -Wl,-R`echo $I | sed s/^-L//`"
3960 _ld_tmp
="$I -lXext -lX11 $_ld_pthread"
3962 cc_check
$_ld_tmp && _libs_mplayer
="$_libs_mplayer $_ld_tmp" \
3963 && _x11
=yes && break
3966 if test "$_x11" = yes ; then
3967 _def_x11
='#define CONFIG_X11 1'
3968 _vosrc
="$_vosrc x11_common.c vo_x11.c vo_xover.c"
3969 _vomodules
="x11 xover $_vomodules"
3972 _def_x11
='#undef CONFIG_X11'
3973 _novomodules
="x11 $_novomodules"
3974 _res_comment
="check if the dev(el) packages are installed"
3975 # disable stuff that depends on X
3976 _xv
=no
; _xvmc
=no
; _xinerama
=no
; _vm
=no
; _xf86keysym
=no
3980 echocheck
"Xss screensaver extensions"
3981 if test "$_xss" = auto
; then
3983 #include <X11/Xlib.h>
3984 #include <X11/extensions/scrnsaver.h>
3985 int main(void) { XScreenSaverSuspend(NULL, True); return 0; }
3988 cc_check
-lXss && _xss
=yes
3990 if test "$_xss" = yes ; then
3991 _def_xss
='#define CONFIG_XSS 1'
3992 _libs_mplayer
="$_libs_mplayer -lXss"
3994 _def_xss
='#undef CONFIG_XSS'
4001 if test "$_x11" = yes ; then
4003 #include <X11/Xmd.h>
4004 #include <X11/Xlib.h>
4005 #include <X11/Xutil.h>
4006 #include <X11/Xatom.h>
4007 #include <X11/extensions/dpms.h>
4008 int main(void) { (void) DPMSQueryExtension(0, 0, 0); return 0; }
4010 cc_check
-lXdpms && _xdpms3
=yes
4012 #include <X11/Xlib.h>
4013 #include <X11/extensions/dpms.h>
4014 int main(void) { (void) DPMSQueryExtension(0, 0, 0); return 0; }
4016 cc_check
-lXext && _xdpms4
=yes
4018 if test "$_xdpms4" = yes ; then
4019 _def_xdpms
='#define CONFIG_XDPMS 1'
4020 _res_comment
="using Xdpms 4"
4022 elif test "$_xdpms3" = yes ; then
4023 _def_xdpms
='#define CONFIG_XDPMS 1'
4024 _libs_mplayer
="$_libs_mplayer -lXdpms"
4025 _res_comment
="using Xdpms 3"
4028 _def_xdpms
='#undef CONFIG_XDPMS'
4034 if test "$_xv" = auto
; then
4036 #include <X11/Xlib.h>
4037 #include <X11/extensions/Xvlib.h>
4039 (void) XvGetPortAttribute(0, 0, 0, 0);
4040 (void) XvQueryPortAttributes(0, 0, 0);
4044 cc_check
-lXv && _xv
=yes
4047 if test "$_xv" = yes ; then
4048 _def_xv
='#define CONFIG_XV 1'
4049 _libs_mplayer
="$_libs_mplayer -lXv"
4050 _vosrc
="$_vosrc vo_xv.c"
4051 _vomodules
="xv $_vomodules"
4053 _def_xv
='#undef CONFIG_XV'
4054 _novomodules
="xv $_novomodules"
4060 if test "$_xv" = yes && test "$_xvmc" != no
; then
4063 #include <X11/Xlib.h>
4064 #include <X11/extensions/Xvlib.h>
4065 #include <X11/extensions/XvMClib.h>
4067 (void) XvMCQueryExtension(0,0,0);
4068 (void) XvMCCreateContext(0,0,0,0,0,0,0);
4071 for _ld_tmp
in $_xvmclib XvMCNVIDIA XvMCW I810XvMC
; do
4072 cc_check
-lXvMC -l$_ld_tmp && _xvmc
=yes && _xvmclib
="$_ld_tmp" && break
4075 if test "$_xvmc" = yes ; then
4076 _def_xvmc
='#define HAVE_XVMC 1'
4077 _libs_mplayer
="$_libs_mplayer -lXvMC -l$_xvmclib"
4078 _vosrc
="$_vosrc vo_xvmc.c"
4079 _vomodules
="xvmc $_vomodules"
4080 _res_comment
="using $_xvmclib"
4082 _def_xvmc
='#undef HAVE_XVMC'
4083 _novomodules
="xvmc $_novomodules"
4084 _libavdecoders
=`echo $_libavdecoders | sed -e s/MPEG_XVMC_DECODER// `
4089 echocheck
"Xinerama"
4090 if test "$_xinerama" = auto
; then
4092 #include <X11/Xlib.h>
4093 #include <X11/extensions/Xinerama.h>
4094 int main(void) { (void) XineramaIsActive(0); return 0; }
4097 cc_check
-lXinerama && _xinerama
=yes
4100 if test "$_xinerama" = yes ; then
4101 _def_xinerama
='#define CONFIG_XINERAMA 1'
4102 _libs_mplayer
="$_libs_mplayer -lXinerama"
4104 _def_xinerama
='#undef CONFIG_XINERAMA'
4106 echores
"$_xinerama"
4109 # Note: the -lXxf86vm library is the VideoMode extension and though it's not
4110 # needed for DGA, AFAIK every distribution packages together with DGA stuffs
4111 # named 'X extensions' or something similar.
4112 # This check may be useful for future mplayer versions (to change resolution)
4113 # If you run into problems, remove '-lXxf86vm'.
4115 if test "$_vm" = auto
; then
4117 #include <X11/Xlib.h>
4118 #include <X11/extensions/xf86vmode.h>
4119 int main(void) { (void) XF86VidModeQueryExtension(0, 0, 0); return 0; }
4122 cc_check
-lXxf86vm && _vm
=yes
4124 if test "$_vm" = yes ; then
4125 _def_vm
='#define CONFIG_XF86VM 1'
4126 _libs_mplayer
="$_libs_mplayer -lXxf86vm"
4128 _def_vm
='#undef CONFIG_XF86VM'
4132 # Check for the presence of special keycodes, like audio control buttons
4133 # that XFree86 might have. Used to be bundled with the xf86vm check, but
4134 # has nothing to do with xf86vm and XFree 3.x has xf86vm but does NOT
4135 # have these new keycodes.
4136 echocheck
"XF86keysym"
4137 if test "$_xf86keysym" = auto
; then
4140 #include <X11/Xlib.h>
4141 #include <X11/XF86keysym.h>
4142 int main(void) { return XF86XK_AudioPause; }
4144 cc_check
&& _xf86keysym
=yes
4146 if test "$_xf86keysym" = yes ; then
4147 _def_xf86keysym
='#define CONFIG_XF86XK 1'
4149 _def_xf86keysym
='#undef CONFIG_XF86XK'
4151 echores
"$_xf86keysym"
4154 if test "$_dga2" = auto
&& test "$_x11" = yes ; then
4156 #include <X11/Xlib.h>
4157 #include <X11/extensions/xf86dga.h>
4158 int main(void) { (void) XDGASetViewport(0, 0, 0, 0, 0); return 0; }
4161 cc_check
-lXxf86dga && _dga2
=yes
4163 if test "$_dga1" = auto
&& test "$_dga2" = no
&& test "$_vm" = yes ; then
4165 #include <X11/Xlib.h>
4166 #include <X11/extensions/xf86dga.h>
4167 int main(void) { (void) XF86DGASetViewPort(0, 0, 0, 0); return 0; }
4170 cc_check
-lXxf86dga -lXxf86vm && _dga1
=yes
4174 _def_dga
='#undef CONFIG_DGA'
4175 _def_dga1
='#undef CONFIG_DGA1'
4176 _def_dga2
='#undef CONFIG_DGA2'
4177 if test "$_dga1" = yes ; then
4179 _def_dga1
='#define CONFIG_DGA1 1'
4180 _res_comment
="using DGA 1.0"
4181 elif test "$_dga2" = yes ; then
4183 _def_dga2
='#define CONFIG_DGA2 1'
4184 _res_comment
="using DGA 2.0"
4186 if test "$_dga" = yes ; then
4187 _def_dga
='#define CONFIG_DGA 1'
4188 _libs_mplayer
="$_libs_mplayer -lXxf86dga"
4189 _vosrc
="$_vosrc vo_dga.c"
4190 _vomodules
="dga $_vomodules"
4192 _novomodules
="dga $_novomodules"
4198 if test "$_3dfx" = yes && test "$_dga" = yes ; then
4199 _def_3dfx
='#define CONFIG_3DFX 1'
4200 _vosrc
="$_vosrc vo_3dfx.c"
4201 _vomodules
="3dfx $_vomodules"
4203 _def_3dfx
='#undef CONFIG_3DFX'
4204 _novomodules
="3dfx $_novomodules"
4210 #Note: this test is run even with --enable-gl since we autodetect linker flags
4211 if (test "$_x11" = yes || win32
) && test "$_gl" != no
; then
4215 #include <windows.h>
4216 #include <GL/glext.h>
4218 #include <X11/Xlib.h>
4224 wglCreateContext(dc);
4226 glXCreateContext(NULL, NULL, NULL, True);
4233 if cc_check
-lGL $_ld_lm ; then
4235 _libs_mplayer
="$_libs_mplayer -lGL $_ld_dl"
4236 elif cc_check
-lGL $_ld_lm $_ld_pthread ; then
4238 _libs_mplayer
="$_libs_mplayer -lGL $_ld_pthread $_ld_dl"
4239 elif cc_check
-DGL_WIN32 -lopengl32 ; then
4242 _libs_mplayer
="$_libs_mplayer -lopengl32 -lgdi32"
4247 if test "$_gl" = yes ; then
4248 _def_gl
='#define CONFIG_GL 1'
4249 _vosrc
="$_vosrc vo_gl.c vo_gl2.c gl_common.c"
4250 if test "$_gl_win32" = yes ; then
4251 _def_gl_win32
='#define GL_WIN32 1'
4252 _vosrc
="$_vosrc w32_common.c"
4253 _res_comment
="win32 version"
4255 _vomodules
="opengl $_vomodules"
4257 _def_gl
='#undef CONFIG_GL'
4258 _def_gl_win32
='#undef GL_WIN32'
4259 _novomodules
="opengl $_novomodules"
4265 _def_vidix
='#undef CONFIG_VIDIX'
4266 _def_vidix_drv_cyberblade
='#undef CONFIG_VIDIX_DRV_CYBERBLADE'
4267 _vidix_drv_cyberblade
=no
4268 _def_vidix_drv_ivtv
='#undef CONFIG_VIDIX_DRV_IVTV'
4270 _def_vidix_drv_ivtv
='#undef CONFIG_VIDIX_DRV_IVTV'
4272 _def_vidix_drv_mach64
='#undef CONFIG_VIDIX_DRV_MACH64'
4273 _vidix_drv_mach64
=no
4274 _def_vidix_drv_mga
='#undef CONFIG_VIDIX_DRV_MGA'
4276 _def_vidix_drv_mga_crtc2
='#undef CONFIG_VIDIX_DRV_MGA_CRTC2'
4277 _vidix_drv_mga_crtc2
=no
4278 _def_vidix_drv_nvidia
='#undef CONFIG_VIDIX_DRV_NVIDIA'
4279 _vidix_drv_nvidia
=no
4280 _def_vidix_drv_pm2
='#undef CONFIG_VIDIX_DRV_PM2'
4282 _def_vidix_drv_pm3
='#undef CONFIG_VIDIX_DRV_PM3'
4284 _def_vidix_drv_radeon
='#undef CONFIG_VIDIX_DRV_RADEON'
4285 _vidix_drv_radeon
=no
4286 _def_vidix_drv_rage128
='#undef CONFIG_VIDIX_DRV_RAGE128'
4287 _vidix_drv_rage128
=no
4288 _def_vidix_drv_s3
='#undef CONFIG_VIDIX_DRV_S3'
4290 _def_vidix_drv_sh_veu
='#undef CONFIG_VIDIX_DRV_SH_VEU'
4291 _vidix_drv_sh_veu
=no
4292 _def_vidix_drv_sis
='#undef CONFIG_VIDIX_DRV_SIS'
4294 _def_vidix_drv_unichrome
='#undef CONFIG_VIDIX_DRV_UNICHROME'
4295 _vidix_drv_unichrome
=no
4296 if test "$_vidix" = auto
; then
4298 x86
&& (linux || freebsd || netbsd || openbsd || dragonfly || sunos || win32
) \
4300 (ppc || alpha
) && linux
&& _vidix
=yes
4304 if test "$_vidix" = yes ; then
4305 _def_vidix
='#define CONFIG_VIDIX 1'
4306 _vosrc
="$_vosrc vo_cvidix.c"
4307 _vomodules
="cvidix $_vomodules"
4308 test "$_vidix_drivers" || _vidix_drivers
="cyberblade ivtv mach64 mga mga_crtc2 nvidia pm2 pm3 radeon rage128 s3 sh_veu sis unichrome"
4309 test $_ivtv = "yes" || _vidix_drivers
=`echo $_vidix_drivers | sed s/ivtv//`
4311 # some vidix drivers are architecture and os specific, discard them elsewhere
4312 x86 || _vidix_drivers
=`echo $_vidix_drivers | sed -e s/cyberblade// -e s/sis// -e s/unichrome// -e s/s3//`
4313 (test $host_arch = "sh" && linux
) || _vidix_drivers
=`echo $_vidix_drivers | sed s/sh_veu//`
4315 for driver
in $_vidix_drivers ; do
4316 uc_driver
=`echo $driver | tr '[a-z]' '[A-Z]'`
4317 eval _vidix_drv_
${driver}=yes
4318 eval _def_vidix_drv_
${driver}=\"\
#define CONFIG_VIDIX_DRV_${uc_driver} 1\"
4321 echocheck
"VIDIX PCI device name database"
4322 echores
"$_vidix_pcidb"
4323 if test "$_vidix_pcidb" = yes ; then
4329 echocheck
"VIDIX dhahelper support"
4330 test "$_dhahelper" = yes && cflags_dhahelper
=-DCONFIG_DHAHELPER
4331 echores
"$_dhahelper"
4333 echocheck
"VIDIX svgalib_helper support"
4334 test "$_svgalib_helper" = yes && cflags_svgalib_helper
=-DCONFIG_SVGAHELPER
4335 echores
"$_svgalib_helper"
4338 _novomodules
="cvidix $_novomodules"
4341 if test "$_vidix" = yes && win32
; then
4342 _vosrc
="$_vosrc vo_winvidix.c"
4343 _vomodules
="winvidix $_vomodules"
4344 _libs_mplayer
="$_libs_mplayer -lgdi32"
4346 _novomodules
="winvidix $_novomodules"
4348 if test "$_vidix" = yes && test "$_x11" = yes; then
4349 _vosrc
="$_vosrc vo_xvidix.c"
4350 _vomodules
="xvidix $_vomodules"
4352 _novomodules
="xvidix $_novomodules"
4355 echocheck
"/dev/mga_vid"
4356 if test "$_mga" = auto
; then
4358 test -c /dev
/mga_vid
&& _mga
=yes
4360 if test "$_mga" = yes ; then
4361 _def_mga
='#define CONFIG_MGA 1'
4362 _vosrc
="$_vosrc vo_mga.c"
4363 _vomodules
="mga $_vomodules"
4365 _def_mga
='#undef CONFIG_MGA'
4366 _novomodules
="mga $_novomodules"
4372 if test "$_xmga" = auto
; then
4374 test "$_x11" = yes && test "$_mga" = yes && _xmga
=yes
4376 if test "$_xmga" = yes ; then
4377 _def_xmga
='#define CONFIG_XMGA 1'
4378 _vosrc
="$_vosrc vo_xmga.c"
4379 _vomodules
="xmga $_vomodules"
4381 _def_xmga
='#undef CONFIG_XMGA'
4382 _novomodules
="xmga $_novomodules"
4388 if test "$_ggi" = auto
; then
4390 #include <ggi/ggi.h>
4391 int main(void) { ggiInit(); return 0; }
4394 cc_check
-lggi && _ggi
=yes
4396 if test "$_ggi" = yes ; then
4397 _def_ggi
='#define CONFIG_GGI 1'
4398 _libs_mplayer
="$_libs_mplayer -lggi"
4399 _vosrc
="$_vosrc vo_ggi.c"
4400 _vomodules
="ggi $_vomodules"
4402 _def_ggi
='#undef CONFIG_GGI'
4403 _novomodules
="ggi $_novomodules"
4407 echocheck
"GGI extension: libggiwmh"
4408 if test "$_ggiwmh" = auto
; then
4411 #include <ggi/ggi.h>
4412 #include <ggi/wmh.h>
4413 int main(void) { ggiInit(); ggiWmhInit(); return 0; }
4415 cc_check
-lggi -lggiwmh && _ggiwmh
=yes
4417 # needed to get right output on obscure combination
4418 # like --disable-ggi --enable-ggiwmh
4419 if test "$_ggi" = yes && test "$_ggiwmh" = yes ; then
4420 _def_ggiwmh
='#define CONFIG_GGIWMH 1'
4421 _libs_mplayer
="$_libs_mplayer -lggiwmh"
4424 _def_ggiwmh
='#undef CONFIG_GGIWMH'
4430 if test "$_aa" = auto
; then
4433 extern struct aa_hardware_params aa_defparams;
4434 extern struct aa_renderparams aa_defrenderparams;
4438 (void) aa_init(0, 0, 0);
4439 c = aa_autoinit(&aa_defparams);
4440 p = aa_getrenderparams();
4441 aa_autoinitkbd(c,0);
4445 for _ld_tmp
in "-laa" ; do
4446 cc_check
$_ld_tmp && _libs_mplayer
="$_libs_mplayer $_ld_tmp" && _aa
=yes && break
4449 if test "$_aa" = yes ; then
4450 _def_aa
='#define CONFIG_AA 1'
4452 _libs_mplayer
="$_libs_mplayer `aalib-config --libs | cut -d " " -f 2,5,6`"
4454 _vosrc
="$_vosrc vo_aa.c"
4455 _vomodules
="aa $_vomodules"
4457 _def_aa
='#undef CONFIG_AA'
4458 _novomodules
="aa $_novomodules"
4464 if test "$_caca" = auto
; then
4466 if ( caca-config
--version ) >> "$TMPLOG" 2>&1 ; then
4469 #ifdef CACA_API_VERSION_1
4472 int main(void) { (void) caca_init(); return 0; }
4474 cc_check
`caca-config --libs` && _caca
=yes
4477 if test "$_caca" = yes ; then
4478 _def_caca
='#define CONFIG_CACA 1'
4479 _inc_extra
="$_inc_extra `caca-config --cflags`"
4480 _libs_mplayer
="$_libs_mplayer `caca-config --libs`"
4481 _vosrc
="$_vosrc vo_caca.c"
4482 _vomodules
="caca $_vomodules"
4484 _def_caca
='#undef CONFIG_CACA'
4485 _novomodules
="caca $_novomodules"
4491 if test "$_svga" = auto
; then
4494 int main(void) { return 0; }
4497 cc_check
-lvga $_ld_lm && _svga
=yes
4499 if test "$_svga" = yes ; then
4500 _def_svga
='#define CONFIG_SVGALIB 1'
4501 _libs_mplayer
="$_libs_mplayer -lvga"
4502 _vosrc
="$_vosrc vo_svga.c"
4503 _vomodules
="svga $_vomodules"
4505 _def_svga
='#undef CONFIG_SVGALIB'
4506 _novomodules
="svga $_novomodules"
4512 if test "$_fbdev" = auto
; then
4516 if test "$_fbdev" = yes ; then
4517 _def_fbdev
='#define CONFIG_FBDEV 1'
4518 _vosrc
="$_vosrc vo_fbdev.c vo_fbdev2.c"
4519 _vomodules
="fbdev $_vomodules"
4521 _def_fbdev
='#undef CONFIG_FBDEV'
4522 _novomodules
="fbdev $_novomodules"
4529 if test "$_dvb" = auto
; then
4532 #include <sys/poll.h>
4533 #include <sys/ioctl.h>
4537 #include <ost/dmx.h>
4538 #include <ost/frontend.h>
4539 #include <ost/sec.h>
4540 #include <ost/video.h>
4541 #include <ost/audio.h>
4542 int main(void) {return 0;}
4544 for _inc_tmp
in "" "-I/usr/src/DVB/ost/include" ; do
4545 cc_check
$_inc_tmp && _dvb
=yes && \
4546 _inc_extra
="$_inc_extra $_inc_tmp" && break
4550 if test "$_dvb" = yes ; then
4551 _def_dvb
='#define CONFIG_DVB 1'
4552 _def_dvbin
='#define CONFIG_DVBIN 1'
4553 _aomodules
="mpegpes(dvb) $_aomodules"
4554 _vomodules
="mpegpes(dvb) $_vomodules"
4557 echocheck
"DVB HEAD"
4558 if test "$_dvbhead" = auto
; then
4562 #include <sys/poll.h>
4563 #include <sys/ioctl.h>
4567 #include <linux/dvb/dmx.h>
4568 #include <linux/dvb/frontend.h>
4569 #include <linux/dvb/video.h>
4570 #include <linux/dvb/audio.h>
4571 int main(void) {return 0;}
4573 for _inc_tmp
in "" "-I/usr/src/DVB/include" ; do
4574 cc_check
$_inc_tmp && _dvbhead
=yes && \
4575 _inc_extra
="$_inc_extra $_inc_tmp" && break
4579 if test "$_dvbhead" = yes ; then
4580 _def_dvb
='#define CONFIG_DVB 1'
4581 _def_dvb_head
='#define CONFIG_DVB_HEAD 1'
4582 _def_dvbin
='#define CONFIG_DVBIN 1'
4583 _aomodules
="mpegpes(dvb) $_aomodules"
4584 _vomodules
="mpegpes(dvb) $_vomodules"
4587 if test "$_dvbhead" = no
&& test "$_dvb" = no
; then
4588 _def_dvb
='#undef CONFIG_DVB'
4589 _def_dvb_head
='#undef CONFIG_DVB_HEAD'
4590 _def_dvbin
='#undef CONFIG_DVBIN '
4591 _aomodules
="mpegpes(file) $_aomodules"
4592 _vomodules
="mpegpes(file) $_vomodules"
4595 if test "$_dvb" = yes ||
test "$_dvbhead" = yes ; then
4597 _inputmodules
="dvb $_inputmodules"
4600 _noinputmodules
="dvb $_noinputmodules"
4606 echocheck
"PNG support"
4607 if test "$_png" = auto
; then
4610 # Don't check for -lpng on irix since it has its own libpng
4611 # incompatible with the GNU libpng
4612 _res_comment
="disabled on irix (not GNU libpng)"
4618 printf("png.h : %s\n", PNG_LIBPNG_VER_STRING);
4619 printf("libpng: %s\n", png_libpng_ver);
4620 return strcmp(PNG_LIBPNG_VER_STRING, png_libpng_ver);
4623 if cc_check
-lpng -lz $_ld_lm ; then
4627 _res_comment
="mismatch of library and header versions"
4633 if test "$_png" = yes ; then
4634 _def_png
='#define CONFIG_PNG 1'
4635 _ld_extra
="$_ld_extra -lpng -lz"
4636 _vosrc
="$_vosrc vo_png.c"
4637 _vomodules
="png $_vomodules"
4639 _def_png
='#undef CONFIG_PNG'
4640 _novomodules
="png $_novomodules"
4643 echocheck
"JPEG support"
4644 if test "$_jpeg" = auto
; then
4651 #include <jpeglib.h>
4652 int main(void) { return 0; }
4654 if cc_check
-ljpeg $_ld_lm ; then
4662 if test "$_jpeg" = yes ; then
4663 _def_jpeg
='#define CONFIG_JPEG 1'
4664 _vosrc
="$_vosrc vo_jpeg.c"
4665 _vomodules
="jpeg $_vomodules"
4666 _ld_extra
="$_ld_extra -ljpeg"
4668 _def_jpeg
='#undef CONFIG_JPEG'
4669 _novomodules
="jpeg $_novomodules"
4674 echocheck
"PNM support"
4675 if test "$_pnm" = yes; then
4676 _def_pnm
="#define CONFIG_PNM"
4677 _vosrc
="$_vosrc vo_pnm.c"
4678 _vomodules
="pnm $_vomodules"
4680 _def_pnm
="#undef CONFIG_PNM"
4681 _novomodules
="pnm $_novomodules"
4687 echocheck
"GIF support"
4688 # This is to appease people who want to force gif support.
4689 # If it is forced to yes, then we still do checks to determine
4690 # which gif library to use.
4691 if test "$_gif" = yes ; then
4696 if test "$_gif" = auto
; then
4699 #include <gif_lib.h>
4700 int main(void) { return 0; }
4702 for _ld_gif
in "-lungif" "-lgif" ; do
4703 cc_check
$_ld_gif && tmp_run
&& _gif
=yes && break
4707 # If no library was found, and the user wants support forced,
4708 # then we force it on with libgif, as this is the safest
4709 # assumption IMHO. (libungif & libregif both create symbolic
4710 # links to libgif. We also assume that no x11 support is needed,
4711 # because if you are forcing this, then you _should_ know what
4712 # you are doing. [ Besides, package maintainers should never
4713 # have compiled x11 deps into libungif in the first place. ] )
4716 if test "$_force_gif" = yes && test "$_gif" = no
; then
4721 if test "$_gif" = yes ; then
4722 _def_gif
='#define CONFIG_GIF 1'
4723 _vosrc
="$_vosrc vo_gif89a.c"
4724 _codecmodules
="gif $_codecmodules"
4725 _vomodules
="gif89a $_vomodules"
4726 _res_comment
="old version, some encoding functions disabled"
4727 _def_gif_4
='#undef CONFIG_GIF_4'
4728 _ld_extra
="$_ld_extra $_ld_gif"
4732 #include <gif_lib.h>
4733 void catch() { exit(1); }
4735 signal(SIGSEGV, catch); // catch segfault
4736 printf("EGifPutExtensionFirst is at address %p\n", EGifPutExtensionFirst);
4737 EGifSetGifVersion("89a"); // this will segfault a buggy gif lib.
4741 if cc_check
"$_ld_gif" && tmp_run
; then
4742 _def_gif_4
='#define CONFIG_GIF_4 1'
4746 _def_gif
='#undef CONFIG_GIF'
4747 _def_gif_4
='#undef CONFIG_GIF_4'
4748 _novomodules
="gif89a $_novomodules"
4749 _nocodecmodules
="gif $_nocodecmodules"
4754 case "$_gif" in yes*)
4755 echocheck
"broken giflib workaround"
4756 _def_gif_tvt_hack
='#define CONFIG_GIF_TVT_HACK 1'
4759 #include <gif_lib.h>
4762 printf("UserData is at address %p\n", gif.UserData);
4766 if cc_check
"$_ld_gif" && tmp_run
; then
4767 _def_gif_tvt_hack
='#undef CONFIG_GIF_TVT_HACK'
4776 echocheck
"VESA support"
4777 if test "$_vesa" = auto
; then
4780 int main(void) { vbeVersion(); return 0; }
4783 cc_check
-lvbe -llrmi && _vesa
=yes
4785 if test "$_vesa" = yes ; then
4786 _def_vesa
='#define CONFIG_VESA 1'
4787 _libs_mplayer
="$_libs_mplayer -lvbe -llrmi"
4788 _vosrc
="$_vosrc vo_vesa.c vesa_lvo.c gtf.c"
4789 _vomodules
="vesa $_vomodules"
4791 _def_vesa
='#undef CONFIG_VESA'
4792 _novomodules
="vesa $_novomodules"
4802 if test -z "$_sdlconfig" ; then
4803 if ( sdl-config
--version ) >>"$TMPLOG" 2>&1 ; then
4804 _sdlconfig
="sdl-config"
4805 elif ( sdl11-config
--version ) >>"$TMPLOG" 2>&1 ; then
4806 _sdlconfig
="sdl11-config"
4811 if test "$_sdl" = auto ||
test "$_sdl" = yes ; then
4815 SDL_Init(SDL_INIT_VIDEO|SDL_INIT_NOPARACHUTE);
4820 if "$_sdlconfig" --version >>"$TMPLOG" 2>&1 ; then
4821 if cc_check
`$_sdlconfig --cflags` `$_sdlconfig --libs` >>"$TMPLOG" 2>&1 ; then
4822 _sdlversion
=`$_sdlconfig --version | sed 's/[^0-9]//g'`
4823 if test "$_sdlversion" -gt 116 ; then
4824 if test "$_sdlversion" -lt 121 ; then
4825 _def_sdlbuggy
='#define BUGGY_SDL'
4827 _def_sdlbuggy
='#undef BUGGY_SDL'
4834 if test "$_sdl" = yes ; then
4835 _def_sdl
='#define CONFIG_SDL 1'
4837 _libs_mplayer
="$_libs_mplayer `$_sdlconfig --libs | cut -d " " -f 1,4,6 | sed s/no-cygwin/cygwin/`"
4838 _inc_extra
="$_inc_extra `$_sdlconfig --cflags | cut -d " " -f 1,5,6 | sed s/no-cygwin/cygwin/`"
4840 _libs_mplayer
="$_libs_mplayer `$_sdlconfig --libs | sed -e s/-mwindows// -e s/-lmingw32//`"
4841 _inc_extra
="$_inc_extra `$_sdlconfig --cflags | sed s/-Dmain=SDL_main//`"
4843 _libs_mplayer
="$_libs_mplayer `$_sdlconfig --libs`"
4844 _inc_extra
="$_inc_extra `$_sdlconfig --cflags | sed s/-D_GNU_SOURCE=1//`"
4846 _vosrc
="$_vosrc vo_sdl.c"
4847 _vomodules
="sdl $_vomodules"
4848 _aosrc
="$_aosrc ao_sdl.c"
4849 _aomodules
="sdl $_aomodules"
4850 _res_comment
="using $_sdlconfig"
4852 _def_sdl
='#undef CONFIG_SDL'
4853 _novomodules
="sdl $_novomodules"
4854 _noaomodules
="sdl $_noaomodules"
4861 echocheck
"Windows waveout"
4862 if test "$_win32waveout" = auto
; then
4864 #include <windows.h>
4865 #include <mmsystem.h>
4866 int main(void) { return 0; }
4869 cc_check
-lwinmm && _win32waveout
=yes
4871 if test "$_win32waveout" = yes ; then
4872 _def_win32waveout
='#define CONFIG_WIN32WAVEOUT 1'
4873 _libs_mplayer
="$_libs_mplayer -lwinmm"
4874 _aosrc
="$_aosrc ao_win32.c"
4875 _aomodules
="win32 $_aomodules"
4877 _def_win32waveout
='#undef CONFIG_WIN32WAVEOUT'
4878 _noaomodules
="win32 $_noaomodules"
4880 echores
"$_win32waveout"
4883 if test "$_directx" = auto
; then
4885 #include <windows.h>
4888 int main(void) { return 0; }
4891 cc_check
-lgdi32 && _directx
=yes
4893 if test "$_directx" = yes ; then
4894 _def_directx
='#define CONFIG_DIRECTX 1'
4895 _libs_mplayer
="$_libs_mplayer -lgdi32"
4896 _vosrc
="$_vosrc vo_directx.c"
4897 _vomodules
="directx $_vomodules"
4898 _aosrc
="$_aosrc ao_dsound.c"
4899 _aomodules
="dsound $_aomodules"
4901 _def_directx
='#undef CONFIG_DIRECTX'
4902 _novomodules
="directx $_novomodules"
4903 _noaomodules
="dsound $_noaomodules"
4911 if test "$_nas" = auto
; then
4913 #include <audio/audiolib.h>
4914 int main(void) { return 0; }
4917 cc_check
$_ld_lm -laudio -lXt && _nas
=yes
4919 if test "$_nas" = yes ; then
4920 _def_nas
='#define CONFIG_NAS 1'
4921 _libs_mplayer
="$_libs_mplayer -laudio -lXt"
4922 _aosrc
="$_aosrc ao_nas.c"
4923 _aomodules
="nas $_aomodules"
4925 _noaomodules
="nas $_noaomodules"
4926 _def_nas
='#undef CONFIG_NAS'
4931 if test "$_dxr2" = auto
; then
4934 #include <dxr2ioctl.h>
4935 int main(void) { return 0; }
4937 for _inc_tmp
in "" -I/usr
/local
/include
/dxr2
-I/usr
/include
/dxr2
; do
4938 cc_check
$_inc_tmp && _dxr2
=yes && \
4939 _inc_extra
="$_inc_extra $_inc_tmp" && break
4942 if test "$_dxr2" = yes; then
4943 _def_dxr2
='#define CONFIG_DXR2 1'
4944 _vosrc
="$_vosrc vo_dxr2.c"
4945 _aosrc
="$_aosrc ao_dxr2.c"
4946 _aomodules
="dxr2 $_aomodules"
4947 _vomodules
="dxr2 $_vomodules"
4949 _def_dxr2
='#undef CONFIG_DXR2'
4950 _noaomodules
="dxr2 $_noaomodules"
4951 _novomodules
="dxr2 $_novomodules"
4956 if test "$_dxr3" = auto
; then
4958 #include <linux/em8300.h>
4959 int main(void) { return 0; }
4962 cc_check
&& _dxr3
=yes
4964 if test "$_dxr3" = yes ; then
4965 _def_dxr3
='#define CONFIG_DXR3 1'
4966 _vosrc
="$_vosrc vo_dxr3.c"
4967 _vomodules
="dxr3 $_vomodules"
4969 _def_dxr3
='#undef CONFIG_DXR3'
4970 _novomodules
="dxr3 $_novomodules"
4975 echocheck
"IVTV TV-Out (pre linux-2.6.24)"
4976 if test "$_ivtv" = auto
; then
4979 #include <inttypes.h>
4980 #include <linux/types.h>
4981 #include <linux/videodev2.h>
4982 #include <linux/ivtv.h>
4983 #include <sys/ioctl.h>
4985 struct ivtv_cfg_stop_decode sd;
4986 struct ivtv_cfg_start_decode sd1;
4987 ioctl (0, IVTV_IOC_START_DECODE, &sd1);
4988 ioctl (0, IVTV_IOC_STOP_DECODE, &sd);
4992 cc_check
&& _ivtv
=yes
4994 if test "$_ivtv" = yes ; then
4995 _def_ivtv
='#define CONFIG_IVTV 1'
4996 _vosrc
="$_vosrc vo_ivtv.c"
4997 _vomodules
="ivtv $_vomodules"
4998 _aosrc
="$_aosrc ao_ivtv.c"
4999 _aomodules
="ivtv $_aomodules"
5001 _def_ivtv
='#undef CONFIG_IVTV'
5002 _novomodules
="ivtv $_novomodules"
5003 _noaomodules
="ivtv $_noaomodules"
5008 echocheck
"V4L2 MPEG Decoder"
5009 if test "$_v4l2" = auto
; then
5012 #include <inttypes.h>
5013 #include <linux/types.h>
5014 #include <linux/videodev2.h>
5015 #include <linux/version.h>
5017 #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22)
5018 #error kernel headers too old, need 2.6.22
5019 bad_kernel_version();
5021 struct v4l2_ext_controls ctrls;
5022 ctrls.ctrl_class = V4L2_CTRL_CLASS_MPEG;
5027 cc_check
&& _v4l2
=yes
5029 if test "$_v4l2" = yes ; then
5030 _def_v4l2
='#define CONFIG_V4L2_DECODER 1'
5031 _vosrc
="$_vosrc vo_v4l2.c"
5032 _vomodules
="v4l2 $_vomodules"
5033 _aosrc
="$_aosrc ao_v4l2.c"
5034 _aomodules
="v4l2 $_aomodules"
5036 _def_v4l2
='#undef CONFIG_V4L2_DECODER'
5037 _novomodules
="v4l2 $_novomodules"
5038 _noaomodules
="v4l2 $_noaomodules"
5049 echocheck
"OSS Audio"
5050 if test "$_ossaudio" = auto
; then
5052 #include <sys/ioctl.h>
5053 #include <$_soundcard_header>
5054 int main(void) { int arg = SNDCTL_DSP_SETFRAGMENT; return 0; }
5057 cc_check
&& _ossaudio
=yes
5059 if test "$_ossaudio" = yes ; then
5060 _def_ossaudio
='#define CONFIG_OSS_AUDIO 1'
5061 _aosrc
="$_aosrc ao_oss.c"
5062 _aomodules
="oss $_aomodules"
5063 if test "$_linux_devfs" = yes; then
5064 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound/dsp"'
5065 _def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/sound/mixer"'
5068 #include <sys/ioctl.h>
5069 #include <$_soundcard_header>
5070 #ifdef OPEN_SOUND_SYSTEM
5071 int main(void) { return 0; }
5073 #error Not the real thing
5077 cc_check
&& _real_ossaudio
=yes
5078 if test "$_real_ossaudio" = yes; then
5079 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
5080 elif netbsd || openbsd
; then
5081 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound"'
5082 _ld_extra
="$_ld_extra -lossaudio"
5084 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
5086 _def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/mixer"'
5089 _def_ossaudio
='#undef CONFIG_OSS_AUDIO'
5090 _def_ossaudio_devdsp
='#define PATH_DEV_DSP ""'
5091 _def_ossaudio_devmixer
='#define PATH_DEV_MIXER ""'
5092 _noaomodules
="oss $_noaomodules"
5094 echores
"$_ossaudio"
5098 if test "$_arts" = auto
; then
5100 if ( artsc-config
--version ) >> "$TMPLOG" 2>&1 ; then
5104 int main(void) { return 0; }
5106 cc_check
`artsc-config --libs` `artsc-config --cflags` && tmp_run
&& _arts
=yes
5111 if test "$_arts" = yes ; then
5112 _def_arts
='#define CONFIG_ARTS 1'
5113 _aosrc
="$_aosrc ao_arts.c"
5114 _aomodules
="arts $_aomodules"
5115 _libs_mplayer
="$_libs_mplayer `artsc-config --libs`"
5116 _inc_extra
="$_inc_extra `artsc-config --cflags`"
5118 _noaomodules
="arts $_noaomodules"
5124 if test "$_esd" = auto
; then
5126 if ( esd-config
--version ) >> "$TMPLOG" 2>&1 ; then
5130 int main(void) { int fd = esd_open_sound("test"); return fd; }
5132 cc_check
`esd-config --libs` `esd-config --cflags` && _esd
=yes
5138 if test "$_esd" = yes ; then
5139 _def_esd
='#define CONFIG_ESD 1'
5140 _aosrc
="$_aosrc ao_esd.c"
5141 _aomodules
="esd $_aomodules"
5142 _libs_mplayer
="$_libs_mplayer `esd-config --libs`"
5143 _inc_extra
="$_inc_extra `esd-config --cflags`"
5145 echocheck
"esd_get_latency()"
5148 int main(void) { return esd_get_latency(0); }
5150 cc_check
`esd-config --libs` `esd-config --cflags` && _esd_latency
=yes && _def_esd_latency
='#define CONFIG_ESD_LATENCY'
5151 echores
"$_esd_latency"
5153 _def_esd
='#undef CONFIG_ESD'
5154 _def_esd_latency
='#undef CONFIG_ESD_LATENCY'
5155 _noaomodules
="esd $_noaomodules"
5159 if test "$_pulse" = auto
; then
5161 if $_pkg_config --exists 'libpulse >= 0.9' ; then
5164 #include <pulse/pulseaudio.h>
5165 int main(void) { return 0; }
5167 cc_check
`$_pkg_config --libs --cflags libpulse` && tmp_run
&& _pulse
=yes
5173 if test "$_pulse" = yes ; then
5174 _def_pulse
='#define CONFIG_PULSE 1'
5175 _aosrc
="$_aosrc ao_pulse.c"
5176 _aomodules
="pulse $_aomodules"
5177 _libs_mplayer
="$_libs_mplayer `$_pkg_config --libs libpulse`"
5178 _inc_extra
="$_inc_extra `$_pkg_config --cflags libpulse`"
5180 _def_pulse
='#undef CONFIG_PULSE'
5181 _noaomodules
="pulse $_noaomodules"
5186 if test "$_jack" = auto
; then
5190 #include <jack/jack.h>
5191 int main(void) { jack_client_new("test"); return 0; }
5193 if cc_check
-ljack ; then
5194 _libs_mplayer
="$_libs_mplayer -ljack"
5195 elif cc_check
`$_pkg_config --libs --cflags --silence-errors jack` ; then
5196 _libs_mplayer
="$_libs_mplayer `$_pkg_config --libs jack`"
5197 _inc_extra
="$_inc_extra "`$_pkg_config --cflags jack`""
5203 if test "$_jack" = yes ; then
5204 _def_jack
='#define CONFIG_JACK 1'
5205 _aosrc
="$_aosrc ao_jack.c"
5206 _aomodules
="jack $_aomodules"
5208 _noaomodules
="jack $_noaomodules"
5213 if test "$_openal" = auto
; then
5217 #include <OpenAL/al.h>
5222 alSourceQueueBuffers(0, 0, 0);
5223 // alGetSourcei(0, AL_SAMPLE_OFFSET, 0);
5227 for I
in "-lopenal" "-lopenal32" "-framework OpenAL" ; do
5228 cc_check
$I && _openal
=yes && break
5229 cc_check
-DOPENAL_AL_H=1 $I && _def_openal_h
='#define OPENAL_AL_H 1' && _openal
=yes && break
5231 test "$_openal" = yes && _libs_mplayer
="$_libs_mplayer $I"
5233 if test "$_openal" = yes ; then
5234 _def_openal
='#define CONFIG_OPENAL 1'
5235 _aosrc
="$_aosrc ao_openal.c"
5236 _aomodules
="openal $_aomodules"
5238 _noaomodules
="openal $_noaomodules"
5242 echocheck
"ALSA audio"
5243 if test "$_alloca" != yes ; then
5245 _res_comment
="alloca missing"
5247 if test "$_alsa" != no
; then
5250 #include <sys/time.h>
5251 #include <sys/asoundlib.h>
5252 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 5))
5253 #error "alsa version != 0.5.x"
5255 int main(void) { return 0; }
5257 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.5.x'
5260 #include <sys/time.h>
5261 #include <sys/asoundlib.h>
5262 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
5263 #error "alsa version != 0.9.x"
5265 int main(void) { return 0; }
5267 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.9.x-sys'
5269 #include <sys/time.h>
5270 #include <alsa/asoundlib.h>
5271 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
5272 #error "alsa version != 0.9.x"
5274 int main(void) { return 0; }
5276 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.9.x-alsa'
5279 #include <sys/time.h>
5280 #include <sys/asoundlib.h>
5281 #if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
5282 #error "alsa version != 1.0.x"
5284 int main(void) { return 0; }
5286 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='1.0.x-sys'
5288 #include <sys/time.h>
5289 #include <alsa/asoundlib.h>
5290 #if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
5291 #error "alsa version != 1.0.x"
5293 int main(void) { return 0; }
5295 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='1.0.x-alsa'
5297 _def_alsa
='#undef CONFIG_ALSA'
5298 _def_alsa5
='#undef CONFIG_ALSA5'
5299 _def_alsa9
='#undef CONFIG_ALSA9'
5300 _def_alsa1x
='#undef CONFIG_ALSA1X'
5301 _def_sys_asoundlib_h
='#undef HAVE_SYS_ASOUNDLIB_H'
5302 _def_alsa_asoundlib_h
='#undef HAVE_ALSA_ASOUNDLIB_H'
5303 if test "$_alsaver" ; then
5305 if test "$_alsaver" = '0.5.x' ; then
5307 _aosrc
="$_aosrc ao_alsa5.c"
5308 _aomodules
="alsa5 $_aomodules"
5309 _def_alsa5
='#define CONFIG_ALSA5 1'
5310 _def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
5311 _res_comment
="using alsa 0.5.x and sys/asoundlib.h"
5312 elif test "$_alsaver" = '0.9.x-sys' ; then
5314 _aosrc
="$_aosrc ao_alsa.c"
5315 _aomodules
="alsa $_aomodules"
5316 _def_alsa
='#define CONFIG_ALSA 1'
5317 _def_alsa9
='#define CONFIG_ALSA9 1'
5318 _def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
5319 _res_comment
="using alsa 0.9.x and sys/asoundlib.h"
5320 elif test "$_alsaver" = '0.9.x-alsa' ; then
5322 _aosrc
="$_aosrc ao_alsa.c"
5323 _aomodules
="alsa $_aomodules"
5324 _def_alsa
='#define CONFIG_ALSA 1'
5325 _def_alsa9
='#define CONFIG_ALSA9 1'
5326 _def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
5327 _res_comment
="using alsa 0.9.x and alsa/asoundlib.h"
5328 elif test "$_alsaver" = '1.0.x-sys' ; then
5330 _aosrc
="$_aosrc ao_alsa.c"
5331 _aomodules
="alsa $_aomodules"
5332 _def_alsa
='#define CONFIG_ALSA 1'
5333 _def_alsa1x
="#define CONFIG_ALSA1X 1"
5334 _def_alsa_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
5335 _res_comment
="using alsa 1.0.x and sys/asoundlib.h"
5336 elif test "$_alsaver" = '1.0.x-alsa' ; then
5338 _aosrc
="$_aosrc ao_alsa.c"
5339 _aomodules
="alsa $_aomodules"
5340 _def_alsa
='#define CONFIG_ALSA 1'
5341 _def_alsa1x
="#define CONFIG_ALSA1X 1"
5342 _def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
5343 _res_comment
="using alsa 1.0.x and alsa/asoundlib.h"
5346 _res_comment
="unknown version"
5348 _ld_extra
="$_ld_extra -lasound $_ld_dl $_ld_pthread"
5350 _noaomodules
="alsa $_noaomodules"
5355 echocheck
"Sun audio"
5356 if test "$_sunaudio" = auto
; then
5358 #include <sys/types.h>
5359 #include <sys/audioio.h>
5360 int main(void) { audio_info_t info; AUDIO_INITINFO(&info); return 0; }
5363 cc_check
&& _sunaudio
=yes
5365 if test "$_sunaudio" = yes ; then
5366 _def_sunaudio
='#define CONFIG_SUN_AUDIO 1'
5367 _aosrc
="$_aosrc ao_sun.c"
5368 _aomodules
="sun $_aomodules"
5370 _def_sunaudio
='#undef CONFIG_SUN_AUDIO'
5371 _noaomodules
="sun $_noaomodules"
5373 echores
"$_sunaudio"
5377 echocheck
"Sun mediaLib"
5378 if test "$_mlib" = auto
; then
5382 int main(void) { mlib_VideoColorYUV2ABGR420(0,0,0,0,0,0,0,0,0); return 0; }
5384 cc_check
-lmlib && _mlib
=yes
5386 test "$_mlib" = yes && _cpuexts
="MLIB $_cpuexts"
5392 echocheck
"SGI audio"
5393 if test "$_sgiaudio" = auto
; then
5394 # check for SGI audio
5396 #include <dmedia/audio.h>
5397 int main(void) { return 0; }
5400 cc_check
&& _sgiaudio
=yes
5402 if test "$_sgiaudio" = "yes" ; then
5403 _def_sgiaudio
='#define CONFIG_SGI_AUDIO 1'
5404 _libs_mplayer
="$_libs_mplayer -laudio"
5405 _aosrc
="$_aosrc ao_sgi.c"
5406 _aomodules
="sgi $_aomodules"
5408 _def_sgiaudio
='#undef CONFIG_SGI_AUDIO'
5409 _noaomodules
="sgi $_noaomodules"
5411 echores
"$_sgiaudio"
5415 echocheck
"VCD support"
5416 if linux || freebsd || netbsd || dragonfly || bsdos || darwin || sunos || mingw32
; then
5417 _inputmodules
="vcd $_inputmodules"
5418 _def_vcd
='#define CONFIG_VCD 1'
5421 _def_vcd
='#undef CONFIG_VCD'
5422 _noinputmodules
="vcd $_noinputmodules"
5423 _res_comment
="not supported on this OS"
5431 if test "$_dvdread_internal" = auto
; then
5432 _dvdread_internal
=no
5434 if (linux || freebsd || netbsd || openbsd || dragonfly || sunos || hpux
) \
5435 && (test "$_dvd" = yes ||
test "$_cdrom" = yes ||
test "$_cdio" = yes || \
5436 test "$_dvdio" = yes ||
test "$_bsdi_dvd" = yes) \
5437 || darwin || win32
; then
5438 _dvdread_internal
=yes
5441 elif test "$_dvdread" = auto
; then
5443 if test "$_dl" = yes; then
5445 #include <inttypes.h>
5446 #include <libdvdread/dvd_reader.h>
5447 #include <libdvdread/ifo_types.h>
5448 #include <libdvdread/ifo_read.h>
5449 #include <libdvdread/nav_read.h>
5450 int main(void) { return 0; }
5453 _dvdreadcflags
=`$_dvdreadconfig --cflags`
5454 _dvdreadlibs
=`$_dvdreadconfig --libs`
5455 if cc_check
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE \
5456 $_dvdreadcflags $_dvdreadlibs $_ld_dl ; then
5458 _inc_extra
="$_inc_extra $_dvdreadcflags"
5459 _ld_extra
="$_ld_extra $_dvdreadlibs"
5460 _res_comment
="external"
5464 if test "$_dvdread_internal" = yes; then
5465 _def_dvdread_internal
="#define CONFIG_DVDREAD_INTERNAL 1"
5466 _def_dvdread
='#define CONFIG_DVDREAD 1'
5467 _inputmodules
="dvdread(internal) $_inputmodules"
5469 _res_comment
="internal"
5470 elif test "$_dvdread" = yes; then
5471 _def_dvdread
='#define CONFIG_DVDREAD 1'
5473 _ld_extra
="$_ld_extra -ldvdread"
5474 _inputmodules
="dvdread(external) $_inputmodules"
5475 _res_comment
="external"
5477 _def_dvdread_internal
="#undef CONFIG_DVDREAD_INTERNAL"
5478 _def_dvdread
='#undef CONFIG_DVDREAD'
5479 _noinputmodules
="dvdread $_noinputmodules"
5484 echocheck
"internal libdvdcss"
5485 if test "$_libdvdcss_internal" = auto
; then
5486 _libdvdcss_internal
=no
5487 test "$_dvdread_internal" = yes && _libdvdcss_internal
=yes
5488 hpux
&& test "$_hpux_scsi_h" = no
&& _libdvdcss_internal
=no
5490 if test "$_libdvdcss_internal" = yes ; then
5491 if linux || netbsd || openbsd || bsdos
; then
5492 _def_dvd_linux
='#define HAVE_LINUX_DVD_STRUCT 1'
5493 openbsd
&& _dev_dvd_openbsd
='#define HAVE_OPENBSD_DVD_STRUCT 1'
5494 elif freebsd || dragonfly
; then
5495 _def_dvd_bsd
='#define HAVE_BSD_DVD_STRUCT 1'
5497 _def_dvd_darwin
='#define DARWIN_DVD_IOCTL'
5498 _ld_extra
="$_ld_extra -framework IOKit"
5500 cflags_libdvdcss
="-DSYS_CYGWIN"
5502 cflags_libdvdcss
="-DSYS_BEOS"
5504 cflags_libdvdcss
="-DSYS_OS2"
5506 cflags_libdvdcss_dvdread
="-Ilibdvdcss -DHAVE_DVDCSS_DVDCSS_H"
5507 _inputmodules
="libdvdcss(internal) $_inputmodules"
5510 _noinputmodules
="libdvdcss(internal) $_noinputmodules"
5512 echores
"$_libdvdcss_internal"
5515 echocheck
"cdparanoia"
5516 if test "$_cdparanoia" = auto
; then
5518 #include <cdda_interface.h>
5519 #include <cdda_paranoia.h>
5520 // This need a better test. How ?
5521 int main(void) { void *test = cdda_verbose_set; return test == (void *)1; }
5524 for _inc_tmp
in "" "-I/usr/include/cdda" "-I/usr/local/include/cdda" ; do
5525 cc_check
$_inc_tmp -lcdda_interface -lcdda_paranoia $_ld_lm && \
5526 _cdparanoia
=yes && _inc_extra
="$_inc_extra $_inc_tmp" && break
5529 if test "$_cdparanoia" = yes ; then
5531 _ld_extra
="$_ld_extra -lcdda_interface -lcdda_paranoia"
5532 openbsd
&& _ld_extra
="$_ld_extra -lutil"
5534 echores
"$_cdparanoia"
5538 if test "$_libcdio" = auto
&& test "$_cdparanoia" = no
; then
5541 #include <cdio/version.h>
5542 #include <cdio/cdda.h>
5543 #include <cdio/paranoia.h>
5545 void *test = cdda_verbose_set;
5546 printf("%s\n", CDIO_VERSION);
5547 return test == (void *)1;
5551 for _ld_tmp
in "" "-lwinmm" ; do
5552 _ld_tmp
="-lcdio_cdda -lcdio -lcdio_paranoia $_ld_tmp"
5553 cc_check
$_ld_tmp $_ld_lm \
5554 && _libcdio
=yes && _ld_extra
="$_ld_extra $_ld_tmp" && break
5556 if test "$_libcdio" = no
&& $_pkg_config --exists libcdio_paranoia
; then
5557 _inc_tmp
=`$_pkg_config --cflags libcdio_paranoia`
5558 _ld_tmp
=`$_pkg_config --libs libcdio_paranoia`
5559 cc_check
$_inc_tmp $_ld_tmp $_ld_lm && _libcdio
=yes \
5560 && _ld_extra
="$_ld_extra $_ld_tmp" && _inc_extra
="$_inc_extra $_inc_tmp"
5563 if test "$_libcdio" = yes && test "$_cdparanoia" = no
; then
5565 _def_libcdio
='#define CONFIG_LIBCDIO'
5566 _def_havelibcdio
='yes'
5568 if test "$_cdparanoia" = yes ; then
5569 _res_comment
="using cdparanoia"
5571 _def_libcdio
='#undef CONFIG_LIBCDIO'
5572 _def_havelibcdio
='no'
5576 if test "$_cdda" = yes ; then
5577 test $_cddb = auto
&& test $_network = yes && _cddb
=yes
5578 _def_cdparanoia
='#define CONFIG_CDDA'
5579 _inputmodules
="cdda $_inputmodules"
5581 _def_cdparanoia
='#undef CONFIG_CDDA'
5582 _noinputmodules
="cdda $_noinputmodules"
5585 if test "$_cddb" = yes ; then
5586 _def_cddb
='#define CONFIG_CDDB'
5587 _inputmodules
="cddb $_inputmodules"
5590 _def_cddb
='#undef CONFIG_CDDB'
5591 _noinputmodules
="cddb $_noinputmodules"
5594 echocheck
"bitmap font support"
5595 if test "$_bitmap_font" = yes ; then
5596 _def_bitmap_font
="#define CONFIG_BITMAP_FONT 1"
5598 _def_bitmap_font
="#undef CONFIG_BITMAP_FONT"
5600 echores
"$_bitmap_font"
5603 echocheck
"freetype >= 2.0.9"
5605 # freetype depends on iconv
5606 if test "$_iconv" = no
; then
5608 _res_comment
="iconv support needed"
5611 if test "$_freetype" = auto
; then
5612 if ( $_freetypeconfig --version ) >/dev
/null
2>&1 ; then
5615 #include <ft2build.h>
5616 #include FT_FREETYPE_H
5617 #if ((FREETYPE_MAJOR < 2) || ((FREETYPE_MINOR == 0) && (FREETYPE_PATCH < 9)))
5618 #error "Need FreeType 2.0.9 or newer"
5622 FT_Int major=-1,minor=-1,patch=-1;
5623 int err=FT_Init_FreeType(&library);
5625 printf("Couldn't initialize freetype2 lib, err code: %d\n",err);
5628 FT_Library_Version(library,&major,&minor,&patch); // in v2.1.0+ only :(((
5629 printf("freetype2 header version: %d.%d.%d library version: %d.%d.%d\n",
5630 FREETYPE_MAJOR,FREETYPE_MINOR,FREETYPE_PATCH,
5631 (int)major,(int)minor,(int)patch );
5632 if(major!=FREETYPE_MAJOR || minor!=FREETYPE_MINOR){
5633 printf("Library and header version mismatch! Fix it in your distribution!\n");
5640 cc_check
`$_freetypeconfig --cflags` `$_freetypeconfig --libs` && tmp_run
&& _freetype
=yes
5645 if test "$_freetype" = yes ; then
5646 _def_freetype
='#define CONFIG_FREETYPE'
5647 _inc_extra
="$_inc_extra `$_freetypeconfig --cflags`"
5648 _ld_extra
="$_ld_extra `$_freetypeconfig --libs`"
5650 _def_freetype
='#undef CONFIG_FREETYPE'
5652 echores
"$_freetype"
5654 if test "$_freetype" = no
; then
5656 _res_comment
="freetype support needed"
5658 echocheck
"fontconfig"
5659 if test "$_fontconfig" = auto
; then
5663 #include <fontconfig/fontconfig.h>
5667 printf("Couldn't initialize fontconfig lib\n");
5674 for _ld_tmp
in "" "-lexpat -lfreetype" "-lexpat -lfreetype -lz" ; do
5675 _ld_tmp
="-lfontconfig $_ld_tmp"
5676 cc_check
$_ld_tmp && _fontconfig
=yes && _ld_extra
="$_ld_extra $_ld_tmp" && break
5678 if test "$_fontconfig" = no
&& $_pkg_config --exists fontconfig
; then
5679 _inc_tmp
=`$_pkg_config --cflags fontconfig`
5680 _ld_tmp
=`$_pkg_config --libs fontconfig`
5681 cc_check
$_inc_tmp $_ld_tmp && _fontconfig
=yes \
5682 && _ld_extra
="$_ld_extra $_ld_tmp" && _inc_extra
="$_inc_extra $_inc_tmp"
5685 if test "$_fontconfig" = yes ; then
5686 _def_fontconfig
='#define CONFIG_FONTCONFIG'
5688 _def_fontconfig
='#undef CONFIG_FONTCONFIG'
5690 echores
"$_fontconfig"
5693 echocheck
"SSA/ASS support"
5694 # libass depends on FreeType
5695 if test "$_freetype" = no
; then
5697 _res_comment
="FreeType support needed"
5700 if test "$_ass" = auto
; then
5702 #include <ft2build.h>
5703 #include FT_FREETYPE_H
5704 #if ((FREETYPE_MAJOR < 2) || (FREETYPE_MINOR < 1) || ((FREETYPE_MINOR == 1) && (FREETYPE_PATCH < 8)))
5705 #error "Need FreeType 2.1.8 or newer"
5707 int main(void) { return 0; }
5710 cc_check
`$_freetypeconfig --cflags` `$_freetypeconfig --libs` && tmp_run
&& _ass
=yes
5711 if test "$_ass" = no
; then
5712 _res_comment
="FreeType >= 2.1.8 needed"
5715 if test "$_ass" = yes ; then
5716 _def_ass
='#define CONFIG_ASS'
5718 _def_ass
='#undef CONFIG_ASS'
5723 echocheck
"fribidi with charsets"
5724 if test "$_fribidi" = auto
; then
5725 if ( $_fribidiconfig --version ) >/dev
/null
2>&1 ; then
5728 /* workaround for fribidi 0.10.4 and below */
5729 #define FRIBIDI_CHARSET_UTF8 FRIBIDI_CHAR_SET_UTF8
5730 #include <fribidi/fribidi.h>
5732 if(fribidi_parse_charset("UTF-8") != FRIBIDI_CHAR_SET_UTF8) {
5733 printf("Fribidi headers are not consistents with the library!\n");
5740 cc_check
`$_fribidiconfig --cflags` `$_fribidiconfig --libs` && tmp_run
&& _fribidi
=yes
5745 if test "$_fribidi" = yes ; then
5746 _def_fribidi
='#define CONFIG_FRIBIDI'
5747 _inc_extra
="$_inc_extra `$_fribidiconfig --cflags`"
5748 _ld_extra
="$_ld_extra `$_fribidiconfig --libs`"
5750 _def_fribidi
='#undef CONFIG_FRIBIDI'
5756 if test "$_enca" = auto
; then
5758 #include <sys/types.h>
5763 langs = enca_get_languages(&langcnt);
5768 cc_check
-lenca $_ld_lm && _enca
=yes
5770 if test "$_enca" = yes ; then
5771 _def_enca
='#define CONFIG_ENCA 1'
5772 _ld_extra
="$_ld_extra -lenca"
5774 _def_enca
='#undef CONFIG_ENCA'
5782 int main(void) { (void) inflate(0, Z_NO_FLUSH); return 0; }
5785 cc_check
-lz && _zlib
=yes
5786 if test "$_zlib" = yes ; then
5787 _def_zlib
='#define CONFIG_ZLIB 1'
5788 _ld_extra
="$_ld_extra -lz"
5790 _def_zlib
='#undef CONFIG_ZLIB'
5791 _libavdecoders
=`echo $_libavdecoders | sed -e s/FLASHSV_DECODER// -e s/PNG_DECODER// -e s/ZMBV_DECODER// -e s/DXA_DECODER// `
5792 _libavencoders
=`echo $_libavencoders | sed -e s/FLASHSV_ENCODER// -e s/PNG_ENCODER// -e s/ZMBV_ENCODER// `
5798 if test "$_rtc" = auto
; then
5800 #include <sys/ioctl.h>
5802 #include <linux/rtc.h>
5805 #define RTC_PIE_ON RTCIO_PIE_ON
5807 int main(void) { return RTC_PIE_ON; }
5810 cc_check
&& _rtc
=yes
5813 if test "$_rtc" = yes ; then
5814 _def_rtc
='#define HAVE_RTC 1'
5816 _def_rtc
='#undef HAVE_RTC'
5821 echocheck
"liblzo2 support"
5822 if test "$_liblzo" = auto
; then
5825 #include <lzo/lzo1x.h>
5826 int main(void) { lzo_init();return 0; }
5828 cc_check
-llzo2 && _liblzo
=yes
5830 if test "$_liblzo" = yes ; then
5831 _def_liblzo
='#define CONFIG_LIBLZO 1'
5832 _ld_extra
="$_ld_extra -llzo2"
5833 _codecmodules
="liblzo $_codecmodules"
5835 _def_liblzo
='#undef CONFIG_LIBLZO'
5836 _nocodecmodules
="liblzo $_nocodecmodules"
5841 echocheck
"mad support"
5842 if test "$_mad" = auto
; then
5846 int main(void) { return 0; }
5848 cc_check
-lmad && _mad
=yes
5850 if test "$_mad" = yes ; then
5851 _def_mad
='#define CONFIG_LIBMAD 1'
5852 _ld_extra
="$_ld_extra -lmad"
5853 _codecmodules
="libmad $_codecmodules"
5855 _def_mad
='#undef CONFIG_LIBMAD'
5856 _nocodecmodules
="libmad $_nocodecmodules"
5861 if test "$_twolame" = auto
; then
5863 #include <twolame.h>
5864 int main(void) { twolame_init(); return 0; }
5867 cc_check
-ltwolame $_ld_lm && _twolame
=yes
5869 if test "$_twolame" = yes ; then
5870 _def_twolame
='#define CONFIG_TWOLAME 1'
5871 _libs_mencoder
="$_libs_mencoder -ltwolame"
5872 _codecmodules
="twolame $_codecmodules"
5874 _def_twolame
='#undef CONFIG_TWOLAME'
5875 _nocodecmodules
="twolame $_nocodecmodules"
5880 if test "$_toolame" = auto
; then
5882 if test "$_twolame" = yes ; then
5883 _res_comment
="disabled by twolame"
5886 #include <toolame.h>
5887 int main(void) { toolame_init(); return 0; }
5889 cc_check
-ltoolame $_ld_lm && _toolame
=yes
5892 if test "$_toolame" = yes ; then
5893 _def_toolame
='#define CONFIG_TOOLAME 1'
5894 _libs_mencoder
="$_libs_mencoder -ltoolame"
5895 _codecmodules
="toolame $_codecmodules"
5897 _def_toolame
='#undef CONFIG_TOOLAME'
5898 _nocodecmodules
="toolame $_nocodecmodules"
5900 if test "$_toolamedir" ; then
5901 _res_comment
="using $_toolamedir"
5905 echocheck
"OggVorbis support"
5906 if test "$_tremor_internal" = yes; then
5908 elif test "$_tremor_external" = auto
; then
5911 #include <tremor/ivorbiscodec.h>
5912 int main(void) { vorbis_packet_blocksize(0,0); return 0; }
5914 cc_check
-logg -lvorbisidec $_ld_lm && _tremor_external
=yes && _libvorbis
=no
5916 if test "$_libvorbis" = auto
; then
5919 #include <vorbis/codec.h>
5920 int main(void) { vorbis_packet_blocksize(0,0); return 0; }
5922 cc_check
-lvorbis -logg $_ld_lm && _libvorbis
=yes
5924 if test "$_tremor_internal" = yes ; then
5926 _def_vorbis
='#define CONFIG_OGGVORBIS 1'
5927 _def_tremor
='#define CONFIG_TREMOR 1'
5928 _codecmodules
="tremor(internal) $_codecmodules"
5929 _res_comment
="internal Tremor"
5930 if test "$_tremor_low" = yes ; then
5931 cflags_tremor_low
="-D_LOW_ACCURACY_"
5932 _res_comment
="internal low accuracy Tremor"
5934 elif test "$_tremor_external" = yes ; then
5936 _def_vorbis
='#define CONFIG_OGGVORBIS 1'
5937 _def_tremor
='#define CONFIG_TREMOR 1'
5938 _codecmodules
="tremor(external) $_codecmodules"
5939 _res_comment
="external Tremor"
5940 _ld_extra
="$_ld_extra -logg -lvorbisidec"
5941 elif test "$_libvorbis" = yes ; then
5943 _def_vorbis
='#define CONFIG_OGGVORBIS 1'
5944 _codecmodules
="libvorbis $_codecmodules"
5945 _res_comment
="libvorbis"
5946 _ld_extra
="$_ld_extra -lvorbis -logg"
5949 _nocodecmodules
="libvorbis $_nocodecmodules"
5953 echocheck
"libspeex (version >= 1.1 required)"
5954 if test "$_speex" = auto
; then
5957 #include <speex/speex.h>
5958 int main(void) { SpeexBits bits; void *dec; speex_decode_int(dec, &bits, dec); return 0; }
5960 cc_check
-lspeex $_ld_lm && _speex
=yes
5962 if test "$_speex" = yes ; then
5963 _def_speex
='#define CONFIG_SPEEX 1'
5964 _ld_extra
="$_ld_extra -lspeex"
5965 _codecmodules
="speex $_codecmodules"
5967 _def_speex
='#undef CONFIG_SPEEX'
5968 _nocodecmodules
="speex $_nocodecmodules"
5972 echocheck
"OggTheora support"
5973 if test "$_theora" = auto
; then
5976 #include <theora/theora.h>
5979 /* theora is in flux, make sure that all interface routines and
5980 * datatypes exist and work the way we expect it, so we don't break
5990 theora_info_init (&inf);
5991 theora_comment_init (&tc);
5995 /* we don't want to execute this kind of nonsense; just for making sure
5996 * that compilation works... */
5997 memset(&op, 0, sizeof(op));
5998 r = theora_decode_header (&inf, &tc, &op);
5999 r = theora_decode_init (&st, &inf);
6000 t = theora_granule_time (&st, op.granulepos);
6001 r = theora_decode_packetin (&st, &op);
6002 r = theora_decode_YUVout (&st, &yuv);
6008 for _ld_theora
in "`$_pkg_config --silence-errors --libs --cflags theora`" "-ltheora -logg"; do
6009 cc_check
$_ld_theora && _ld_extra
="$_ld_extra $_ld_theora" \
6010 && _theora
=yes && break
6012 if test "$_theora" = no
&& test "$_tremor_internal" = yes; then
6013 for _ld_theora
in "`$_pkg_config --silence-errors --libs --cflags theora`" "-ltheora -logg"; do
6014 cc_check
-I. tremor
/bitwise.c
$_ld_theora \
6015 && _ld_extra
="$_ld_extra $_ld_theora" && theora
=yes && break
6019 if test "$_theora" = yes ; then
6020 _def_theora
='#define CONFIG_OGGTHEORA 1'
6021 _codecmodules
="libtheora $_codecmodules"
6022 # when --enable-theora is forced, we'd better provide a probably sane
6023 # $_ld_theora than nothing
6024 test -z "$_ld_theora" && _ld_extra
="$_ld_extra -ltheora -logg"
6026 _def_theora
='#undef CONFIG_OGGTHEORA'
6027 _nocodecmodules
="libtheora $_nocodecmodules"
6031 echocheck
"internal mp3lib support"
6032 if test "$_mp3lib" = yes ; then
6033 _def_mp3lib
='#define CONFIG_MP3LIB 1'
6034 _codecmodules
="mp3lib $_codecmodules"
6036 _def_mp3lib
='#undef CONFIG_MP3LIB'
6037 _nocodecmodules
="mp3lib $_nocodecmodules"
6041 echocheck
"internal liba52 support"
6042 if test "$_liba52" = yes ; then
6043 _def_liba52
='#define CONFIG_LIBA52 1'
6044 _codecmodules
="liba52 $_codecmodules"
6046 _def_liba52
='#undef CONFIG_LIBA52'
6047 _nocodecmodules
="liba52 $_nocodecmodules"
6051 echocheck
"internal libmpeg2 support"
6052 if test "$_libmpeg2" = auto
; then
6054 if alpha
&& test cc_vendor
=gnu
; then
6056 2*|
3.0*|
3.1*) # cannot compile MVI instructions
6058 _res_comment
="broken gcc"
6063 if test "$_libmpeg2" = yes ; then
6064 _def_libmpeg2
='#define CONFIG_LIBMPEG2 1'
6065 _codecmodules
="libmpeg2 $_codecmodules"
6067 _def_libmpeg2
='#undef CONFIG_LIBMPEG2'
6068 _nocodecmodules
="libmpeg2 $_nocodecmodules"
6070 echores
"$_libmpeg2"
6072 echocheck
"libdca support"
6073 if test "$_libdca" = auto
; then
6076 #include <inttypes.h>
6078 int main(void) { dts_init (0); return 0; }
6080 for _ld_dca
in -ldts -ldca ; do
6081 cc_check
$_ld_dca $_ld_lm && _ld_extra
="$_ld_extra $_ld_dca" \
6082 && _libdca
=yes && break
6085 if test "$_libdca" = yes ; then
6086 _def_libdca
='#define CONFIG_LIBDCA 1'
6087 _codecmodules
="libdca $_codecmodules"
6089 _def_libdca
='#undef CONFIG_LIBDCA'
6090 _nocodecmodules
="libdca $_nocodecmodules"
6094 echocheck
"libmpcdec (musepack, version >= 1.2.1 required)"
6095 if test "$_musepack" = auto
; then
6099 #include <mpcdec/mpcdec.h>
6101 mpc_streaminfo info;
6102 mpc_decoder decoder;
6103 mpc_decoder_set_streaminfo(&decoder, &info);
6104 mpc_decoder_decode_frame(&decoder, NULL, 0, NULL);
6108 cc_check
-lmpcdec $_ld_lm && _musepack
=yes
6110 if test "$_musepack" = yes ; then
6111 _def_musepack
='#define CONFIG_MUSEPACK 1'
6112 _ld_extra
="$_ld_extra -lmpcdec"
6113 _codecmodules
="musepack $_codecmodules"
6115 _def_musepack
='#undef CONFIG_MUSEPACK'
6116 _nocodecmodules
="musepack $_nocodecmodules"
6118 echores
"$_musepack"
6121 echocheck
"FAAC (AAC encoder) support"
6122 if test "$_faac" = auto
; then
6124 #include <inttypes.h>
6126 int main(void) { unsigned long x, y; faacEncOpen(48000, 2, &x, &y); return 0; }
6129 for _ld_faac
in "-lfaac" "-lfaac -lmp4v2 -lstdc++" ; do
6130 cc_check
-O4 $_ld_faac $_ld_lm && _libs_mencoder
="$_libs_mencoder $_ld_faac" && _faac
=yes && break
6133 if test "$_faac" = yes ; then
6134 _def_faac
="#define CONFIG_FAAC 1"
6135 test "$_faac_lavc" = auto
&& _faac_lavc
=yes
6136 if test "$_faac_lavc" = yes ; then
6137 _def_faac_lavc
="#define CONFIG_LIBFAAC 1"
6138 _libs_mplayer
="$_libs_mplayer $_ld_faac"
6139 _libavencoders
="$_libavencoders LIBFAAC_ENCODER"
6141 _codecmodules
="faac $_codecmodules"
6144 _def_faac
="#undef CONFIG_FAAC"
6145 _def_faac_lavc
="#undef CONFIG_LIBFAAC"
6146 _nocodecmodules
="faac $_nocodecmodules"
6148 _res_comment
="in libavcodec: $_faac_lavc"
6152 echocheck
"FAAD2 (AAC) support"
6153 if test "$_faad_internal" = auto
; then
6154 if x86_32
&& test cc_vendor
=gnu
; then
6156 3.1*|
3.2) # ICE/insn with these versions
6158 _res_comment
="broken gcc"
6167 elif test "$_faad_internal" = no
&& test "$_faad_external" = auto
; then
6171 #ifndef FAAD_MIN_STREAMSIZE
6172 #error Too old version
6174 int main(void) { faacDecHandle testhand; faacDecFrameInfo testinfo;
6175 testhand = faacDecOpen(); faacDecInit(0, 0, 0, 0, 0); return 0; }
6177 cc_check
-lfaad $_ld_lm && _faad_external
=yes
6180 if test "$_faad_internal" = yes ; then
6181 _def_faad_internal
="#define CONFIG_FAAD_INTERNAL 1"
6183 _res_comment
="internal floating-point"
6184 if test "$_faad_fixed" = yes ; then
6185 # The FIXED_POINT implementation of FAAD2 improves performance
6186 # on some platforms, especially for SBR files.
6187 cflags_faad_fixed
="-DFIXED_POINT"
6188 _res_comment
="internal fixed-point"
6190 elif test "$_faad_external" = yes ; then
6192 _ld_extra
="$_ld_extra -lfaad"
6194 _def_faad_internal
="#undef CONFIG_FAAD_INTERNAL"
6198 if test "$_faad" = yes ; then
6199 _def_faad
='#define CONFIG_FAAD 1'
6200 _codecmodules
="faad2 $_codecmodules"
6202 _def_faad
='#undef CONFIG_FAAD'
6203 _nocodecmodules
="faad2 $_nocodecmodules"
6208 echocheck
"LADSPA plugin support"
6209 if test "$_ladspa" = auto
; then
6214 const LADSPA_Descriptor *ld = NULL;
6219 cc_check
&& _ladspa
=yes
6221 if test "$_ladspa" = yes; then
6222 _def_ladspa
="#define CONFIG_LADSPA"
6224 _def_ladspa
="#undef CONFIG_LADSPA"
6229 if test -z "$_codecsdir" ; then
6230 for dir
in "$_libdir/codecs" "$_libdir/win32" /usr
/local
/lib
/codecs \
6231 /usr
/lib
/codecs
/usr
/local
/lib
/win32
/usr
/lib
/win32
; do
6232 if test -d "$dir" ; then
6238 # Fall back on default directory.
6239 if test -z "$_codecsdir" ; then
6240 _codecsdir
="$_libdir/codecs"
6241 mingw32
&& _codecsdir
="codecs"
6242 os2
&& _codecsdir
="codecs"
6246 echocheck
"Win32 codecs"
6247 if test "$_win32dll" = auto
; then
6249 if x86_32
&& ! qnx
; then
6253 if test "$_win32dll" = yes ; then
6254 _def_win32dll
='#define CONFIG_WIN32DLL 1'
6255 test -z "$_win32codecsdir" && _win32codecsdir
=$_codecsdir
6256 _res_comment
="using $_win32codecsdir"
6258 _def_win32_loader
='#define WIN32_LOADER 1'
6259 _win32_emulation
=yes
6261 _ld_extra
="$_ld_extra -ladvapi32 -lole32"
6262 _res_comment
="using native windows"
6264 _codecmodules
="win32 $_codecmodules"
6266 _def_win32dll
='#undef CONFIG_WIN32DLL'
6267 _def_win32_loader
='#undef WIN32_LOADER'
6268 _nocodecmodules
="win32 $_nocodecmodules"
6270 echores
"$_win32dll"
6273 echocheck
"XAnim codecs"
6274 if test "$_xanim" = auto
; then
6276 _res_comment
="dynamic loader support needed"
6277 if test "$_dl" = yes ; then
6281 if test "$_xanim" = yes ; then
6282 test -z "$_xanimcodecsdir" && _xanimcodecsdir
=$_codecsdir
6283 _def_xanim
='#define CONFIG_XANIM 1'
6284 _def_xanim_path
="#define XACODEC_PATH \"$_xanimcodecsdir\""
6285 _codecmodules
="xanim $_codecmodules"
6286 _res_comment
="using $_xanimcodecsdir"
6288 _def_xanim
='#undef CONFIG_XANIM'
6289 _def_xanim_path
='#undef XACODEC_PATH'
6290 _nocodecmodules
="xanim $_nocodecmodules"
6295 echocheck
"RealPlayer codecs"
6296 if test "$_real" = auto
; then
6298 _res_comment
="dynamic loader support needed"
6299 if test "$_dl" = yes ||
test "$_win32dll" = yes &&
6300 (linux || freebsd || netbsd || dragonfly || darwin || win32
) ; then
6304 if test "$_real" = yes ; then
6305 test -z "$_realcodecsdir" && _realcodecsdir
="$_codecsdir"
6306 _def_real
='#define CONFIG_REALCODECS 1'
6307 _def_real_path
="#define REALCODEC_PATH \"$_realcodecsdir\""
6308 _codecmodules
="real $_codecmodules"
6309 _res_comment
="using $_realcodecsdir"
6311 _def_real
='#undef CONFIG_REALCODECS'
6312 _def_real_path
="#undef REALCODEC_PATH"
6313 _nocodecmodules
="real $_nocodecmodules"
6318 echocheck
"QuickTime codecs"
6320 _def_qtx_win32
='#undef CONFIG_QTX_CODECS_WIN32'
6321 if test "$_qtx" = auto
; then
6322 test "$_win32dll" = yes || darwin
&& _qtx
=yes
6324 if test "$_qtx" = yes ; then
6325 _def_qtx
='#define CONFIG_QTX_CODECS 1'
6326 win32
&& _qtx_codecs_win32
=yes && _def_qtx_win32
='#define CONFIG_QTX_CODECS_WIN32 1'
6327 _codecmodules
="qtx $_codecmodules"
6328 darwin || win32 || _qtx_emulation
=yes
6330 _def_qtx
='#undef CONFIG_QTX_CODECS'
6331 _nocodecmodules
="qtx $_nocodecmodules"
6335 echocheck
"Nemesi Streaming Media libraries"
6336 if test "$_nemesi" = auto
&& test "$_network" = yes ; then
6338 if $_pkg_config libnemesi
--atleast-version=0.6.3 ; then
6339 _inc_extra
="$_inc_extra `$_pkg_config --cflags libnemesi`"
6340 _ld_extra
="$_ld_extra `$_pkg_config --libs libnemesi`"
6344 if test "$_nemesi" = yes; then
6346 _def_nemesi
='#define CONFIG_LIBNEMESI 1'
6347 _inputmodules
="nemesi $_inputmodules"
6349 _native_rtsp
="$_network"
6351 _def_nemesi
='#undef CONFIG_LIBNEMESI'
6352 _noinputmodules
="nemesi $_noinputmodules"
6356 echocheck
"LIVE555 Streaming Media libraries"
6357 if test "$_live" = auto
&& test "$_network" = yes ; then
6358 cat > $TMPCPP << EOF
6359 #include <liveMedia.hh>
6360 #if (LIVEMEDIA_LIBRARY_VERSION_INT < 1141257600)
6361 #error Please upgrade to version 2006.03.03 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
6363 int main(void) { return 0; }
6367 for I
in $_inc_extra "-I$_libdir/live" "-I/usr/lib/live" "-I/usr/local/live" "-I/usr/local/lib/live" ; do
6368 cxx_check
$I/liveMedia
/include
$I/UsageEnvironment
/include \
6369 $I/groupsock
/include
&& _livelibdir
=`echo $I| sed s/-I//` && \
6370 _ld_extra
="$_livelibdir/liveMedia/libliveMedia.a \
6371 $_livelibdir/groupsock/libgroupsock.a \
6372 $_livelibdir/UsageEnvironment/libUsageEnvironment.a \
6373 $_livelibdir/BasicUsageEnvironment/libBasicUsageEnvironment.a \
6374 $_ld_extra -lstdc++" \
6375 _inc_extraxx
="-I$_livelibdir/liveMedia/include \
6376 -I$_livelibdir/UsageEnvironment/include \
6377 -I$_livelibdir/BasicUsageEnvironment/include \
6378 -I$_livelibdir/groupsock/include" && \
6381 if test "$_live" != yes ; then
6382 if cxx_check
-I/usr
/include
/liveMedia
-I/usr
/include
/UsageEnvironment
-I/usr
/include
/groupsock
; then
6387 if test "$_live" = yes && test "$_network" = yes; then
6388 _res_comment
="using $_livelibdir"
6389 _def_live
='#define CONFIG_LIVE555 1'
6390 _inputmodules
="live555 $_inputmodules"
6391 elif test "$_live_dist" = yes && test "$_network" = yes; then
6392 _res_comment
="using distribution version"
6394 _def_live
='#define CONFIG_LIVE555 1'
6395 _ld_extra
="$_ld_extra -lliveMedia -lgroupsock -lUsageEnvironment -lBasicUsageEnvironment -lstdc++"
6396 _inc_extraxx
="-I/usr/include/liveMedia -I/usr/include/UsageEnvironment \
6397 -I/usr/include/BasicUsageEnvironment -I/usr/include/groupsock"
6398 _inputmodules
="live555 $_inputmodules"
6401 _def_live
='#undef CONFIG_LIVE555'
6402 _noinputmodules
="live555 $_noinputmodules"
6407 echocheck
"FFmpeg libavutil"
6408 if test "$_libavutil_a" = auto
; then
6409 if test -d ffmpeg
/libavutil
; then
6411 _res_comment
="static"
6413 die
"MPlayer will not compile without libavutil in the source tree."
6415 elif test "$_libavutil_so" = auto
; then
6418 #include <libavutil/common.h>
6419 int main(void) { ff_gcd(1,1); return 0; }
6421 if $_pkg_config --exists libavutil
; then
6422 _inc_libavutil
=`$_pkg_config --cflags libavutil`
6423 _ld_tmp
=`$_pkg_config --libs libavutil`
6424 cc_check
$_inc_libavutil $_ld_tmp && _ld_extra
="$_ld_extra $_ld_tmp" \
6425 && _libavutil_so
=yes
6426 elif cc_check
-lavutil $_ld_lm ; then
6427 _ld_extra
="$_ld_extra -lavutil"
6429 _res_comment
="using libavutil.so, but static libavutil is recommended"
6433 _def_libavutil
='#undef CONFIG_LIBAVUTIL'
6434 _def_libavutil_a
='#undef CONFIG_LIBAVUTIL_A'
6435 _def_libavutil_so
='#undef CONFIG_LIBAVUTIL_SO'
6436 test "$_libavutil_a" = yes ||
test "$_libavutil_so" = yes && _libavutil
=yes
6437 test "$_libavutil" = yes && _def_libavutil
='#define CONFIG_LIBAVUTIL 1'
6438 test "$_libavutil_a" = yes && _def_libavutil_a
='#define CONFIG_LIBAVUTIL_A 1'
6439 test "$_libavutil_so" = yes && _def_libavutil_so
='#define CONFIG_LIBAVUTIL_SO 1'
6440 # neither static nor shared libavutil is available, but it is mandatory ...
6441 if test "$_libavutil" = no
; then
6442 die
"You need static or shared libavutil, MPlayer will not compile without!"
6444 echores
"$_libavutil"
6446 echocheck
"FFmpeg libavcodec"
6447 if test "$_libavcodec_a" = auto
; then
6449 if test -d ffmpeg
/libavcodec
&& test -f ffmpeg
/libavcodec
/utils.c
; then
6451 _res_comment
="static"
6453 elif test "$_libavcodec_so" = auto
; then
6455 _res_comment
="libavcodec.so is discouraged over static libavcodec"
6457 #include <libavcodec/avcodec.h>
6458 int main(void) { avcodec_find_encoder_by_name(""); return 0; }
6460 if $_pkg_config --exists libavcodec
; then
6461 _inc_libavcodec
=`$_pkg_config --cflags libavcodec`
6462 _ld_tmp
=`$_pkg_config --libs libavcodec`
6463 cc_check
$_inc_libavcodec $_ld_tmp && _ld_extra
="$_ld_extra $_ld_tmp" \
6464 && _libavcodec_so
=yes
6465 elif cc_check
-lavcodec $_ld_lm ; then
6466 _ld_extra
="$_ld_extra -lavcodec"
6468 _res_comment
="using libavcodec.so, but static libavcodec is recommended"
6472 _def_libavcodec
='#undef CONFIG_LIBAVCODEC'
6473 _def_libavcodec_a
='#undef CONFIG_LIBAVCODEC_A'
6474 _def_libavcodec_so
='#undef CONFIG_LIBAVCODEC_SO'
6475 test "$_libavcodec_a" = yes ||
test "$_libavcodec_so" = yes && _libavcodec
=yes
6476 test "$_libavcodec" = yes && _def_libavcodec
='#define CONFIG_LIBAVCODEC 1'
6477 test "$_libavcodec_a" = yes && _def_libavcodec_a
='#define CONFIG_LIBAVCODEC_A 1'
6478 test "$_libavcodec_so" = yes && _def_libavcodec_so
='#define CONFIG_LIBAVCODEC_SO 1'
6479 test "$_libavcodec_mpegaudio_hp" = yes \
6480 && _def_libavcodec_mpegaudio_hp
='#define CONFIG_MPEGAUDIO_HP 1'
6481 if test "$_libavcodec_a" = yes ; then
6482 _codecmodules
="libavcodec $_codecmodules"
6483 elif test "$_libavcodec_so" = yes ; then
6484 _codecmodules
="libavcodec.so $_codecmodules"
6486 _nocodecmodules
="libavcodec $_nocodecmodules"
6488 echores
"$_libavcodec"
6490 echocheck
"FFmpeg libavformat"
6491 if test "$_libavformat_a" = auto
; then
6493 if test -d ffmpeg
/libavformat
&& test -f ffmpeg
/libavformat
/utils.c
; then
6495 _res_comment
="static"
6497 elif test "$_libavformat_so" = auto
; then
6500 #include <libavformat/avformat.h>
6501 #include <libavcodec/opt.h>
6502 int main(void) { av_alloc_format_context(); return 0; }
6504 if $_pkg_config --exists libavformat
; then
6505 _inc_libavformat
=`$_pkg_config --cflags libavformat`
6506 _ld_tmp
=`$_pkg_config --libs libavformat`
6507 cc_check
$_inc_libavformat $_ld_tmp && _ld_extra
="$_ld_extra $_ld_tmp" \
6508 && _libavformat_so
=yes
6509 elif cc_check
$_ld_lm -lavformat ; then
6510 _ld_extra
="$_ld_extra -lavformat"
6512 _res_comment
="using libavformat.so, but static libavformat is recommended"
6516 _def_libavformat
='#undef CONFIG_LIBAVFORMAT'
6517 _def_libavformat_a
='#undef CONFIG_LIBAVFORMAT_A'
6518 _def_libavformat_so
='#undef CONFIG_LIBAVFORMAT_SO'
6519 test "$_libavformat_a" = yes ||
test "$_libavformat_so" = yes && _libavformat
=yes
6520 test "$_libavformat" = yes && _def_libavformat
='#define CONFIG_LIBAVFORMAT 1'
6521 test "$_libavformat_a" = yes && _def_libavformat_a
='#define CONFIG_LIBAVFORMAT_A 1'
6522 test "$_libavformat_so" = yes \
6523 && _def_libavformat_so
='#define CONFIG_LIBAVFORMAT_SO 1'
6524 echores
"$_libavformat"
6526 echocheck
"FFmpeg libpostproc"
6527 if test "$_libpostproc_a" = auto
; then
6529 if test -d ffmpeg
/libpostproc
&& test -f ffmpeg
/libpostproc
/postprocess.h
; then
6530 _libpostproc_a
='yes'
6531 _res_comment
="static"
6533 elif test "$_libpostproc_so" = auto
; then
6536 #define CONFIG_LIBPOSTPROC 1
6537 #include <inttypes.h>
6538 #include <libpostproc/postprocess.h>
6539 int main(void) { pp_get_mode_by_name_and_quality("de", 0); return 0; }
6541 if cc_check
-lpostproc $_ld_lm ; then
6542 _ld_extra
="$_ld_extra -lpostproc"
6544 _res_comment
="using libpostproc.so, but static libpostproc is recommended"
6548 _def_libpostproc
='#undef CONFIG_LIBPOSTPROC'
6549 _def_libpostproc_a
='#undef CONFIG_LIBPOSTPROC_A'
6550 _def_libpostproc_so
='#undef CONFIG_LIBPOSTPROC_SO'
6551 test "$_libpostproc_a" = yes ||
test "$_libpostproc_so" = yes && _libpostproc
=yes
6552 test "$_libpostproc" = yes && _def_libpostproc
='#define CONFIG_LIBPOSTPROC 1'
6553 test "$_libpostproc_a" = yes && _def_libpostproc_a
='#define CONFIG_LIBPOSTPROC_A 1'
6554 test "$_libpostproc_so" = yes \
6555 && _def_libpostproc_so
='#define CONFIG_LIBPOSTPROC_SO 1'
6556 echores
"$_libpostproc"
6559 echocheck
"libamr narrowband"
6560 if test "$_libamr_nb" = auto
; then
6563 #include <amrnb/sp_dec.h>
6564 int main(void) { Speech_Decode_Frame_init(); return 0; }
6566 cc_check
-lamrnb && _libamr_nb
=yes
6567 if test "$_libavcodec_a" != yes ; then
6569 _res_comment
="libavcodec (static) is required by libamr_nb, sorry"
6572 if test "$_libamr_nb" = yes ; then
6574 _ld_extra
="$_ld_extra -lamrnb"
6575 _def_libamr
='#define CONFIG_LIBAMR 1'
6576 _def_libamr_nb
='#define CONFIG_LIBAMR_NB 1'
6577 _libavdecoders
="$_libavdecoders LIBAMR_NB_DECODER"
6578 _libavencoders
="$_libavencoders LIBAMR_NB_ENCODER"
6579 _codecmodules
="libamr_nb $_codecmodules"
6581 _def_libamr_nb
='#undef CONFIG_LIBAMR_NB'
6582 _nocodecmodules
="libamr_nb $_nocodecmodules"
6584 echores
"$_libamr_nb"
6587 echocheck
"libamr wideband"
6588 if test "$_libamr_wb" = auto
; then
6591 #include <amrwb/dec_if.h>
6592 int main(void) { D_IF_init(); return 0; }
6594 cc_check
-lamrwb && _libamr_wb
=yes
6595 if test "$_libavcodec_a" != yes ; then
6597 _res_comment
="libavcodec (static) is required by libamr_wb, sorry"
6600 if test "$_libamr_wb" = yes ; then
6602 _ld_extra
="$_ld_extra -lamrwb"
6603 _def_libamr
='#define CONFIG_LIBAMR 1'
6604 _def_libamr_wb
='#define CONFIG_LIBAMR_WB 1'
6605 _libavdecoders
="$_libavdecoders LIBAMR_WB_DECODER"
6606 _libavencoders
="$_libavencoders LIBAMR_WB_ENCODER"
6607 _codecmodules
="libamr_wb $_codecmodules"
6609 _def_libamr_wb
='#undef CONFIG_LIBAMR_WB'
6610 _nocodecmodules
="libamr_wb $_nocodecmodules"
6612 echores
"$_libamr_wb"
6614 echocheck
"libdv-0.9.5+"
6615 if test "$_libdv" = auto
; then
6618 #include <libdv/dv.h>
6619 int main(void) { dv_encoder_t* enc=dv_encoder_new(1,1,1); return 0; }
6621 cc_check
-ldv $_ld_pthread $_ld_lm && _libdv
=yes
6623 if test "$_libdv" = yes ; then
6624 _def_libdv
='#define CONFIG_LIBDV095 1'
6625 _ld_extra
="$_ld_extra -ldv"
6626 _codecmodules
="libdv $_codecmodules"
6628 _def_libdv
='#undef CONFIG_LIBDV095'
6629 _nocodecmodules
="libdv $_nocodecmodules"
6635 if test "$_xvid" = auto
; then
6639 int main(void) { xvid_global(0, 0, 0, 0); return 0; }
6641 for _ld_tmp
in "-lxvidcore $_ld_lm" "-lxvidcore $_ld_lm $_ld_pthread" ; do
6642 cc_check
$_ld_tmp && _ld_extra
="$_ld_extra $_ld_tmp" && _xvid
=yes && break
6646 if test "$_xvid" = yes ; then
6647 _def_xvid
='#define CONFIG_XVID4 1'
6648 _codecmodules
="xvid $_codecmodules"
6650 _def_xvid
='#undef CONFIG_XVID4'
6651 _nocodecmodules
="xvid $_nocodecmodules"
6655 echocheck
"Xvid two pass plugin"
6656 if test "$_xvid" = yes && test "$_xvid_lavc" = auto
; then
6659 int main(void) { xvid_plugin_2pass2_t s; s.vbv_size=0; return 0; }
6661 cc_check
&& _xvid_lavc
=yes
6663 if test "$_xvid_lavc" = yes ; then
6664 _def_xvid_lavc
='#define CONFIG_LIBXVID 1'
6665 _libavencoders
="$_libavencoders LIBXVID_ENCODER"
6668 _def_xvid_lavc
='#undef CONFIG_LIBXVID'
6670 echores
"$_xvid_lavc"
6674 if test "$_x264" = auto
; then
6676 #include <inttypes.h>
6679 #error We do not support old versions of x264. Get the latest from SVN.
6681 int main(void) { x264_encoder_open((void*)0); return 0; }
6684 for _ld_x264
in "-lx264 $_ld_pthread" "-lx264 $_ld_pthread $_ld_lm" ; do
6685 cc_check
$_ld_x264 && _libs_mencoder
="$_libs_mencoder $_ld_x264" && _x264
=yes && break
6689 if test "$_x264" = yes ; then
6690 _def_x264
='#define CONFIG_X264 1'
6691 _codecmodules
="x264 $_codecmodules"
6692 test "$_x264_lavc" = auto
&& _x264_lavc
=yes
6693 if test "$_x264_lavc" = yes ; then
6694 _def_x264_lavc
='#define CONFIG_LIBX264 1'
6695 _libs_mplayer
="$_libs_mplayer $_ld_x264"
6696 _libavencoders
="$_libavencoders LIBX264_ENCODER"
6700 _def_x264
='#undef CONFIG_X264'
6701 _def_x264_lavc
='#undef CONFIG_LIBX264'
6702 _nocodecmodules
="x264 $_nocodecmodules"
6704 _res_comment
="in libavcodec: $_x264_lavc"
6708 echocheck
"libdirac"
6709 if test "$_libdirac_lavc" = auto
; then
6711 if test "$_libavcodec_a" != yes; then
6712 _res_comment
="libavcodec (static) is required by libdirac, sorry"
6715 #include <libdirac_encoder/dirac_encoder.h>
6716 #include <libdirac_decoder/dirac_parser.h>
6719 dirac_encoder_context_t enc_ctx;
6720 dirac_decoder_t *dec_handle;
6721 dirac_encoder_context_init(&enc_ctx, VIDEO_FORMAT_SD_576I50);
6722 dec_handle = dirac_decoder_init(0);
6724 dirac_decoder_close(dec_handle);
6728 if $_pkg_config --exists dirac
; then
6729 _inc_dirac
=`$_pkg_config --silence-errors --cflags dirac`
6730 _ld_dirac
=`$_pkg_config --silence-errors --libs dirac`
6731 cc_check
$_inc_dirac $_ld_dirac &&
6732 _libdirac_lavc
=yes &&
6733 _inc_extra
="$_inc_extra $_inc_dirac" &&
6734 _ld_extra
="$_ld_extra $_ld_dirac"
6738 if test "$_libdirac_lavc" = yes ; then
6739 _def_libdirac_lavc
='#define CONFIG_LIBDIRAC 1'
6740 _libavencoders
="$_libavencoders LIBDIRAC_ENCODER"
6741 _libavdecoders
="$_libavdecoders LIBDIRAC_DECODER"
6742 _codecmodules
="libdirac $_codecmodules"
6744 _def_libdirac_lavc
='#undef CONFIG_LIBDIRAC'
6745 _nocodecmodules
="libdirac $_nocodecmodules"
6747 echores
"$_libdirac_lavc"
6750 echocheck
"libschroedinger"
6751 if test "$_libschroedinger_lavc" = auto
; then
6752 _libschroedinger_lavc
=no
6753 if test "$_libavcodec_a" != yes; then
6754 _res_comment
="libavcodec (static) is required by libschroedinger, sorry"
6757 #include <schroedinger/schro.h>
6758 int main(void) { schro_init(); return 0; }
6760 if $_pkg_config --exists schroedinger-1.0
; then
6761 _inc_schroedinger
=`$_pkg_config --silence-errors --cflags schroedinger-1.0`
6762 _ld_schroedinger
=`$_pkg_config --silence-errors --libs schroedinger-1.0`
6763 cc_check
$_inc_schroedinger $_ld_schroedinger &&
6764 _libschroedinger_lavc
=yes &&
6765 _inc_extra
="$_inc_extra $_inc_schroedinger" &&
6766 _ld_extra
="$_ld_extra $_ld_schroedinger"
6770 if test "$_libschroedinger_lavc" = yes ; then
6771 _def_libschroedinger_lavc
='#define CONFIG_LIBSCHROEDINGER 1'
6772 _libavencoders
="$_libavencoders LIBSCHROEDINGER_ENCODER"
6773 _libavdecoders
="$_libavdecoders LIBSCHROEDINGER_DECODER"
6774 _codecmodules
="libschroedinger $_codecmodules"
6776 _def_libschroedinger_lavc
='#undef CONFIG_LIBSCHROEDINGER'
6777 _nocodecmodules
="libschroedinger $_nocodecmodules"
6779 echores
"$_libschroedinger_lavc"
6782 if test "$_libnut" = auto
; then
6786 #include <inttypes.h>
6788 int main(void) { (void)nut_error(0); return 0; }
6791 cc_check
-lnut && _libnut
=yes
6794 if test "$_libnut" = yes ; then
6795 _def_libnut
='#define CONFIG_LIBNUT 1'
6796 _ld_extra
="$_ld_extra -lnut"
6798 _def_libnut
='#undef CONFIG_LIBNUT'
6802 #check must be done after libavcodec one
6804 if test "$_zr" = auto
; then
6805 #36067's seem to identify themselves as 36057PQC's, so the line
6806 #below should work for 36067's and 36057's.
6807 if grep -q -s -e "Multimedia video controller: Zoran Corporation ZR36057" /proc
/pci
; then
6813 if test "$_zr" = yes ; then
6814 if test "$_libavcodec_a" = yes ; then
6815 _def_zr
='#define CONFIG_ZR 1'
6816 _vosrc
="$_vosrc vo_zr2.c vo_zr.c jpeg_enc.c"
6817 _vomodules
="zr zr2 $_vomodules"
6819 _res_comment
="libavcodec (static) is required by zr, sorry"
6820 _novomodules
="zr $_novomodules"
6821 _def_zr
='#undef CONFIG_ZR'
6824 _def_zr
='#undef CONFIG_ZR'
6825 _novomodules
="zr zr2 $_novomodules"
6829 # mencoder requires (optional) those libs: libmp3lame
6830 if test "$_mencoder" != no
; then
6832 echocheck
"libmp3lame (for mencoder)"
6833 _def_mp3lame_preset
='#undef CONFIG_MP3LAME_PRESET'
6834 _def_mp3lame_preset_medium
='#undef CONFIG_MP3LAME_PRESET_MEDIUM'
6835 if test "$_mp3lame" = auto
; then
6838 #include <lame/lame.h>
6839 int main(void) { lame_version_t lv; (void) lame_init();
6840 get_lame_version_numerical(&lv); printf("%d%d\n",lv.major,lv.minor);
6843 cc_check
-lmp3lame $_ld_lm && tmp_run
&& _mp3lame
=yes
6845 if test "$_mp3lame" = yes ; then
6846 _def_mp3lame
="#define CONFIG_MP3LAME"
6847 _ld_mp3lame
=-lmp3lame
6848 _libs_mencoder
="$_libs_mencoder $_ld_mp3lame"
6850 #include <lame/lame.h>
6851 int main(void) { lame_set_preset(NULL, STANDARD_FAST); return 0; }
6853 cc_check
$_ld_mp3lame $_ld_lm && _def_mp3lame_preset
="#define CONFIG_MP3LAME_PRESET"
6855 #include <lame/lame.h>
6856 int main(void) { lame_set_preset(NULL, MEDIUM_FAST); return 0; }
6858 cc_check
$_ld_mp3lame $_ld_lm && _def_mp3lame_preset_medium
="#define CONFIG_MP3LAME_PRESET_MEDIUM"
6859 test "$_mp3lame_lavc" = auto
&& _mp3lame_lavc
=yes
6860 if test "$_mp3lame_lavc" = yes ; then
6861 _def_mp3lame_lavc
="#define CONFIG_LIBMP3LAME 1"
6862 _libavencoders
="$_libavencoders LIBMP3LAME_ENCODER"
6863 _libs_mplayer
="$_libs_mplayer $_ld_mp3lame"
6867 _def_mp3lame
='#undef CONFIG_MP3LAME'
6868 _def_mp3lame_lavc
="#undef CONFIG_LIBMP3LAME"
6870 _res_comment
="in libavcodec: $_mp3lame_lavc"
6875 echocheck
"mencoder"
6876 if test "$_mencoder" = yes ; then
6877 _def_muxers
='#define CONFIG_MUXERS 1'
6879 # mpeg1video for vf_lavc, snow for vf_uspp and vf_mcdeint, png for vf_screenshot
6880 _libavencoders
="MPEG1VIDEO_ENCODER SNOW_ENCODER"
6881 test "$_zlib" = yes && _libavencoders
="$_libavencoders PNG_ENCODER"
6884 echores
"$_mencoder"
6886 echocheck
"fastmemcpy"
6887 # fastmemcpy check is done earlier with tests of CPU & binutils features
6888 if test "$_fastmemcpy" = yes ; then
6889 _def_fastmemcpy
='#define CONFIG_FASTMEMCPY 1'
6891 _def_fastmemcpy
='#undef CONFIG_FASTMEMCPY'
6893 echores
"$_fastmemcpy"
6896 echocheck
"UnRAR executable"
6897 if test "$_unrar_exec" = auto
; then
6899 mingw32
&& _unrar_exec
="no"
6901 if test "$_unrar_exec" = yes ; then
6902 _def_unrar_exec
='#define CONFIG_UNRAR_EXEC 1'
6904 _def_unrar_exec
='#undef CONFIG_UNRAR_EXEC'
6906 echores
"$_unrar_exec"
6908 echocheck
"TV interface"
6909 if test "$_tv" = yes ; then
6910 _def_tv
='#define CONFIG_TV 1'
6911 _inputmodules
="tv $_inputmodules"
6913 _noinputmodules
="tv $_noinputmodules"
6914 _def_tv
='#undef CONFIG_TV'
6919 if freebsd || netbsd || openbsd || dragonfly || bsdos
; then
6920 echocheck
"*BSD BT848 bt8xx header"
6922 for file in "machine/ioctl_bt848.h" \
6923 "dev/bktr/ioctl_bt848.h" \
6924 "dev/video/bktr/ioctl_bt848.h" \
6925 "dev/ic/bt8xx.h" ; do
6927 #include <sys/types.h>
6928 #include <sys/ioctl.h>
6930 int main(void) { ioctl(0, TVTUNER_GETFREQ, 0); return 0; }
6934 _ioctl_bt848_h_name
="$file"
6938 if test "$_ioctl_bt848_h" = yes ; then
6939 _def_ioctl_bt848_h_name
="#define IOCTL_BT848_H_NAME <$_ioctl_bt848_h_name>"
6940 _res_comment
="using $_ioctl_bt848_h_name"
6942 _def_ioctl_bt848_h_name
="#undef IOCTL_BT848_H_NAME"
6944 echores
"$_ioctl_bt848_h"
6946 echocheck
"*BSD ioctl_meteor.h"
6948 for file in "machine/ioctl_meteor.h" \
6949 "dev/bktr/ioctl_meteor.h" \
6950 "dev/video/bktr/ioctl_meteor.h" ; do
6952 #include <sys/types.h>
6954 int main(void) { ioctl(0, METEORSINPUT, 0); return 0; }
6958 _ioctl_meteor_h_name
="$file"
6962 if test "$_ioctl_meteor_h" = yes ; then
6963 _def_ioctl_meteor_h_name
="#define IOCTL_METEOR_H_NAME <$_ioctl_meteor_h_name>"
6964 _res_comment
="using $_ioctl_meteor_h_name"
6966 _def_ioctl_meteor_h_name
="#undef IOCTL_METEOR_H_NAME"
6968 echores
"$_ioctl_meteor_h"
6970 echocheck
"*BSD BrookTree 848 TV interface"
6971 if test "$_tv_bsdbt848" = auto
; then
6973 if test "$_tv" = yes ; then
6975 #include <sys/types.h>
6976 $_def_ioctl_meteor_h_name
6977 $_def_ioctl_bt848_h_name
6978 #ifdef IOCTL_METEOR_H_NAME
6979 #include IOCTL_METEOR_H_NAME
6981 #ifdef IOCTL_BT848_H_NAME
6982 #include IOCTL_BT848_H_NAME
6985 ioctl(0, METEORSINPUT, 0);
6986 ioctl(0, TVTUNER_GETFREQ, 0);
6990 cc_check
&& _tv_bsdbt848
=yes
6993 if test "$_tv_bsdbt848" = yes ; then
6994 _def_tv_bsdbt848
='#define CONFIG_TV_BSDBT848 1'
6995 _inputmodules
="tv-bsdbt848 $_inputmodules"
6997 _def_tv_bsdbt848
='#undef CONFIG_TV_BSDBT848'
6998 _noinputmodules
="tv-bsdbt848 $_noinputmodules"
7000 echores
"$_tv_bsdbt848"
7001 fi #if freebsd || netbsd || openbsd || dragonfly || bsdos
7004 echocheck
"DirectShow TV interface"
7005 if test "$_tv_dshow" = auto
; then
7007 if test "$_tv" = yes && win32
; then
7012 CoCreateInstance((GUID*)&GUID_NULL, NULL, CLSCTX_INPROC_SERVER, &GUID_NULL, &p);
7016 cc_check
-lole32 -luuid && _tv_dshow
=yes
7019 if test "$_tv_dshow" = yes ; then
7020 _inputmodules
="tv-dshow $_inputmodules"
7021 _def_tv_dshow
='#define CONFIG_TV_DSHOW 1'
7022 _ld_extra
="$_ld_extra -lole32 -luuid"
7024 _noinputmodules
="tv-dshow $_noinputmodules"
7025 _def_tv_dshow
='#undef CONFIG_TV_DSHOW'
7027 echores
"$_tv_dshow"
7030 echocheck
"Video 4 Linux TV interface"
7031 if test "$_tv_v4l1" = auto
; then
7033 if test "$_tv" = yes && linux
; then
7036 #include <linux/videodev.h>
7037 int main(void) { return 0; }
7039 cc_check
&& _tv_v4l1
=yes
7042 if test "$_tv_v4l1" = yes ; then
7045 _def_tv_v4l
='#define CONFIG_TV_V4L 1'
7046 _def_tv_v4l1
='#define CONFIG_TV_V4L1 1'
7047 _inputmodules
="tv-v4l $_inputmodules"
7049 _noinputmodules
="tv-v4l1 $_noinputmodules"
7050 _def_tv_v4l
='#undef CONFIG_TV_V4L'
7055 echocheck
"Video 4 Linux 2 TV interface"
7056 if test "$_tv_v4l2" = auto
; then
7058 if test "$_tv" = yes && linux
; then
7061 #include <linux/types.h>
7062 #include <linux/videodev2.h>
7063 int main(void) { return 0; }
7065 cc_check
&& _tv_v4l2
=yes
7068 if test "$_tv_v4l2" = yes ; then
7071 _def_tv_v4l
='#define CONFIG_TV_V4L 1'
7072 _def_tv_v4l2
='#define CONFIG_TV_V4L2 1'
7073 _inputmodules
="tv-v4l2 $_inputmodules"
7075 _noinputmodules
="tv-v4l2 $_noinputmodules"
7076 _def_tv_v4l2
='#undef CONFIG_TV_V4L2'
7081 echocheck
"TV teletext interface"
7082 if test "$_tv_teletext" = auto
; then
7084 if test "$_freetype" = yes && test "$_pthreads" = yes; then
7085 if test "$_tv_v4l2" = yes ||
test "$_v4l" = yes ||
test "$_tv_dshow" = yes; then
7090 if test "$_tv_teletext" = yes ; then
7091 _def_tv_teletext
='#define CONFIG_TV_TELETEXT 1'
7092 _inputmodules
="tv-teletext $_inputmodules"
7094 _noinputmodules
="tv-teletext $_noinputmodules"
7095 _def_tv_teletext
='#undef CONFIG_TV_TELETEXT'
7097 echores
"$_tv_teletext"
7100 echocheck
"Radio interface"
7101 if test "$_radio" = yes ; then
7102 _def_radio
='#define CONFIG_RADIO 1'
7103 _inputmodules
="radio $_inputmodules"
7104 if test "$_alsa9" != yes -a "$_alsa1x" != yes -a "$_ossaudio" != yes ; then
7107 if test "$_radio_capture" = yes ; then
7109 _def_radio_capture
="#define CONFIG_RADIO_CAPTURE 1"
7111 _def_radio_capture
="#undef CONFIG_RADIO_CAPTURE"
7114 _noinputmodules
="radio $_noinputmodules"
7115 _def_radio
='#undef CONFIG_RADIO'
7116 _def_radio_capture
="#undef CONFIG_RADIO_CAPTURE"
7120 echocheck
"Capture for Radio interface"
7121 echores
"$_radio_capture"
7123 echocheck
"Video 4 Linux 2 Radio interface"
7124 if test "$_radio_v4l2" = auto
; then
7126 if test "$_radio" = yes && linux
; then
7129 #include <linux/types.h>
7130 #include <linux/videodev2.h>
7131 int main(void) { return 0; }
7133 cc_check
&& _radio_v4l2
=yes
7136 if test "$_radio_v4l2" = yes ; then
7137 _def_radio_v4l2
='#define CONFIG_RADIO_V4L2 1'
7139 _def_radio_v4l2
='#undef CONFIG_RADIO_V4L2'
7141 echores
"$_radio_v4l2"
7143 echocheck
"Video 4 Linux Radio interface"
7144 if test "$_radio_v4l" = auto
; then
7146 if test "$_radio" = yes && linux
; then
7149 #include <linux/videodev.h>
7150 int main(void) { return 0; }
7152 cc_check
&& _radio_v4l
=yes
7155 if test "$_radio_v4l" = yes ; then
7156 _def_radio_v4l
='#define CONFIG_RADIO_V4L 1'
7158 _def_radio_v4l
='#undef CONFIG_RADIO_V4L'
7160 echores
"$_radio_v4l"
7162 if freebsd || netbsd || openbsd || dragonfly || bsdos \
7163 && test "$_radio" = yes && test "$_radio_bsdbt848" = auto
; then
7164 echocheck
"*BSD BrookTree 848 Radio interface"
7167 #include <sys/types.h>
7168 $_def_ioctl_bt848_h_name
7169 #ifdef IOCTL_BT848_H_NAME
7170 #include IOCTL_BT848_H_NAME
7172 int main(void) { ioctl(0, RADIO_GETFREQ, 0); return 0; }
7174 cc_check
&& _radio_bsdbt848
=yes
7175 echores
"$_radio_bsdbt848"
7176 fi #if freebsd || netbsd || openbsd || dragonfly || bsdos && _radio && _radio_bsdbt848
7178 if test "$_radio_bsdbt848" = yes ; then
7179 _def_radio_bsdbt848
='#define CONFIG_RADIO_BSDBT848 1'
7181 _def_radio_bsdbt848
='#undef CONFIG_RADIO_BSDBT848'
7184 if test "$_radio_v4l" = no
&& test "$_radio_v4l2" = no
&& \
7185 test "$_radio_bsdbt848" = no
&& test "$_radio" = yes ; then
7186 die
"Radio driver requires BSD BT848, V4L or V4L2!"
7189 echocheck
"Video 4 Linux 2 MPEG PVR interface"
7190 if test "$_pvr" = auto
; then
7192 if test "$_tv_v4l2" = yes && linux
; then
7195 #include <inttypes.h>
7196 #include <linux/types.h>
7197 #include <linux/videodev2.h>
7198 int main(void) { struct v4l2_ext_controls ext; return 0; }
7200 cc_check
&& _pvr
=yes
7203 if test "$_pvr" = yes ; then
7204 _def_pvr
='#define CONFIG_PVR 1'
7205 _inputmodules
="pvr $_inputmodules"
7207 _noinputmodules
="pvr $_noinputmodules"
7208 _def_pvr
='#undef CONFIG_PVR'
7213 echocheck
"audio select()"
7214 if test "$_select" = no
; then
7215 _def_select
='#undef HAVE_AUDIO_SELECT'
7216 elif test "$_select" = yes ; then
7217 _def_select
='#define HAVE_AUDIO_SELECT 1'
7223 if ! beos
&& test "$_ftp" = yes ; then
7224 _def_ftp
='#define CONFIG_FTP 1'
7225 _inputmodules
="ftp $_inputmodules"
7227 _noinputmodules
="ftp $_noinputmodules"
7228 _def_ftp
='#undef CONFIG_FTP'
7232 echocheck
"vstream client"
7233 if test "$_vstream" = auto
; then
7236 #include <vstream-client.h>
7237 void vstream_error(const char *format, ... ) {}
7238 int main(void) { vstream_start(); return 0; }
7240 cc_check
-lvstream-client && _vstream
=yes
7242 if test "$_vstream" = yes ; then
7243 _def_vstream
='#define CONFIG_VSTREAM 1'
7244 _inputmodules
="vstream $_inputmodules"
7245 _ld_extra
="$_ld_extra -lvstream-client"
7247 _noinputmodules
="vstream $_noinputmodules"
7248 _def_vstream
='#undef CONFIG_VSTREAM'
7253 echocheck
"byte order"
7254 if test "$_big_endian" = auto
; then
7256 short ascii_name[] = { (('M'<<8)|'P'),(('l'<<8)|'a'),(('y'<<8)|'e'),(('r'<<8)|'B'),
7257 (('i'<<8)|'g'),(('E'<<8)|'n'),(('d'<<8)|'i'),(('a'<<8)|'n'),0};
7258 int main(void) { return (int)ascii_name; }
7261 if strings $TMPEXE |
grep -q -l MPlayerBigEndian
; then
7267 echo ${_echo_n} "failed to autodetect byte order, defaulting to ${_echo_c}"
7270 if test "$_big_endian" = yes ; then
7271 _byte_order
='big-endian'
7272 _def_words_endian
='#define WORDS_BIGENDIAN 1'
7274 _byte_order
='little-endian'
7275 _def_words_endian
='#undef WORDS_BIGENDIAN'
7277 echores
"$_byte_order"
7279 echocheck
"OSD menu"
7280 if test "$_menu" = yes ; then
7281 _def_menu
='#define CONFIG_MENU 1'
7282 test $_dvbin = "yes" && _menu_dvbin
=yes
7284 _def_menu
='#undef CONFIG_MENU'
7290 echocheck
"Subtitles sorting"
7291 if test "$_sortsub" = yes ; then
7292 _def_sortsub
='#define CONFIG_SORTSUB 1'
7294 _def_sortsub
='#undef CONFIG_SORTSUB'
7299 echocheck
"XMMS inputplugin support"
7300 if test "$_xmms" = yes ; then
7301 if ( xmms-config
--version ) >/dev
/null
2>&1 ; then
7302 _xmmsplugindir
=`xmms-config --input-plugin-dir`
7303 _xmmslibdir
=`xmms-config --exec-prefix`/lib
7305 _xmmsplugindir
=/usr
/lib
/xmms
/Input
7306 _xmmslibdir
=/usr
/lib
7309 _def_xmms
='#define CONFIG_XMMS 1'
7311 _ld_extra
="$_ld_extra ${_xmmslibdir}/libxmms.dylib"
7313 _ld_extra
="$_ld_extra ${_xmmslibdir}/libxmms.so.1 -export-dynamic"
7316 _def_xmms
='#undef CONFIG_XMMS'
7321 if test "$_inet6" = auto
; then
7323 #include <sys/types.h>
7324 #if !defined(_WIN32) || defined(__CYGWIN__)
7325 #include <sys/socket.h>
7326 #include <netinet/in.h>
7328 #include <ws2tcpip.h>
7330 int main(void) { struct sockaddr_in6 six; socket(AF_INET6, SOCK_STREAM, AF_INET6); return 0; }
7333 if cc_check
$_ld_sock ; then
7337 if test "$_inet6" = yes ; then
7338 _def_inet6
='#define HAVE_AF_INET6 1'
7340 _def_inet6
='#undef HAVE_AF_INET6'
7345 echocheck
"gethostbyname2"
7346 if test "$_gethostbyname2" = auto
; then
7348 #include <sys/types.h>
7349 #include <sys/socket.h>
7351 int main(void) { gethostbyname2("", AF_INET); return 0; }
7359 if test "$_gethostbyname2" = yes ; then
7360 _def_gethostbyname2
='#define HAVE_GETHOSTBYNAME2 1'
7362 _def_gethostbyname2
='#undef HAVE_GETHOSTBYNAME2'
7364 echores
"$_gethostbyname2"
7367 # --------------- GUI specific tests begin -------------------
7370 if test "$_gui" = yes ; then
7372 # Required libraries
7373 if test "$_libavcodec" != yes ||
7374 ! echo $_libavdecoders |
grep -q PNG_DECODER
; then
7375 die
"The GUI requires libavcodec with PNG support (needs zlib)."
7377 test "$_freetype" = no
&& test "$_bitmap_font" = no
&& \
7378 die
"The GUI requires either FreeType or bitmap font support."
7381 test "$_x11" != yes && die
"X11 support required for GUI compilation."
7383 echocheck
"XShape extension"
7384 if test "$_xshape" = auto
; then
7387 #include <X11/Xlib.h>
7388 #include <X11/Xproto.h>
7389 #include <X11/Xutil.h>
7390 #include <X11/extensions/shape.h>
7393 char *name = ":0.0";
7396 int eventbase, errorbase;
7397 if (getenv("DISPLAY"))
7398 name=getenv("DISPLAY");
7399 wsDisplay=XOpenDisplay(name);
7400 if (!XShapeQueryExtension(wsDisplay,&eventbase,&errorbase))
7402 XCloseDisplay(wsDisplay);
7406 cc_check
-lXext && _xshape
=yes
7408 if test "$_xshape" = yes ; then
7409 _def_xshape
='#define CONFIG_XSHAPE 1'
7411 die
"The GUI requires the X11 extension XShape (which was not found)."
7416 if test "$_gtk1" = no
; then
7418 echocheck
"GTK+ version"
7420 if $_pkg_config gtk
+-2.0
--exists ; then
7421 _gtk
=`$_pkg_config gtk+-2.0 --modversion 2>/dev/null`
7422 _inc_extra
="$_inc_extra `$_pkg_config gtk+-2.0 --cflags 2>/dev/null`"
7423 _libs_mplayer
="$_libs_mplayer `$_pkg_config gtk+-2.0 --libs 2>/dev/null`"
7427 if $_pkg_config glib-2.0
--exists ; then
7428 echocheck
"glib version"
7429 _glib
=`$_pkg_config glib-2.0 --modversion 2>/dev/null`
7430 _libs_mplayer
="$_libs_mplayer `$_pkg_config glib-2.0 --libs 2>/dev/null`"
7433 _def_gui
='#define CONFIG_GUI 1'
7434 _def_gtk2
='#define CONFIG_GTK2 1'
7437 echo "GLIB-2 devel packages were not found, trying GTK 1.2"
7440 echo "GTK-2 devel packages were not found, trying GTK 1.2"
7445 if test "$_gtk1" = yes ; then
7446 # Check for old GTK (1.2.x)
7447 echocheck
"GTK version"
7448 if test -z "$_gtkconfig" ; then
7449 if ( gtk-config
--version ) >/dev
/null
2>&1 ; then
7450 _gtkconfig
="gtk-config"
7451 elif ( gtk12-config
--version ) >/dev
/null
2>&1 ; then
7452 _gtkconfig
="gtk12-config"
7454 die
"The GUI requires GTK devel packages (which were not found)."
7457 _gtk
=`$_gtkconfig --version 2>&1`
7458 _inc_extra
="$_inc_extra `$_gtkconfig --cflags 2>&1`"
7459 _libs_mplayer
="$_libs_mplayer `$_gtkconfig --libs 2>&1`"
7460 echores
"$_gtk (using $_gtkconfig)"
7463 echocheck
"glib version"
7464 if test -z "$_glibconfig" ; then
7465 if ( glib-config
--version ) >/dev
/null
2>&1 ; then
7466 _glibconfig
="glib-config"
7467 elif ( glib12-config
--version ) >/dev
/null
2>&1 ; then
7468 _glibconfig
="glib12-config"
7470 die
"The GUI requires GLIB devel packages (which were not found)"
7473 _glib
=`$_glibconfig --version 2>&1`
7474 _libs_mplayer
="$_libs_mplayer `$_glibconfig --libs 2>&1`"
7475 echores
"$_glib (using $_glibconfig)"
7477 _def_gui
='#define CONFIG_GUI 1'
7478 _def_gtk2
='#undef CONFIG_GTK2'
7483 _libs_mplayer
="$_libs_mplayer -lcomdlg32 -lcomctl32 -lshell32 -lkernel32"
7484 _def_gui
='#define CONFIG_GUI 1'
7485 _def_gtk2
='#undef CONFIG_GTK2'
7488 else #if test "$_gui"
7489 _def_gui
='#undef CONFIG_GUI'
7490 _def_gtk2
='#undef CONFIG_GTK2'
7492 # --------------- GUI specific tests end -------------------
7495 if test "$_charset" = "noconv" ; then
7498 if test "$_charset" ; then
7499 _def_charset
="#define MSG_CHARSET \"$_charset\""
7501 _def_charset
="#undef MSG_CHARSET"
7504 if test -n "$_charset" && test "$_charset" != "UTF-8" ; then
7505 echocheck
"iconv program"
7506 iconv -f UTF-8
-t $_charset ${_mp_help} > /dev
/null
2>> "$TMPLOG"
7507 if test "$?" -ne 0 ; then
7509 echo "No working iconv program found, use "
7510 echo "--charset=UTF-8 to continue anyway."
7511 echo "If you also have problems with iconv library functions use --charset=noconv."
7512 echo "Messages in the GTK-2 interface will be broken then."
7519 #############################################################################
7521 echocheck
"automatic gdb attach"
7522 if test "$_crash_debug" = yes ; then
7523 _def_crash_debug
='#define CONFIG_CRASH_DEBUG 1'
7525 _def_crash_debug
='#undef CONFIG_CRASH_DEBUG'
7528 echores
"$_crash_debug"
7530 echocheck
"compiler support for noexecstack"
7532 int main(void) { return 0; }
7534 if cc_check
-Wl,-z,noexecstack
; then
7535 _ld_extra
="-Wl,-z,noexecstack $_ld_extra"
7542 # Dynamic linking flags
7543 # (FIXME: 'echocheck "dynamic linking"' above and modify here accordingly)
7545 freebsd || netbsd || openbsd || dragonfly || bsdos
&& _ld_dl_dynamic
='-rdynamic'
7546 if test "$_real" = yes ||
test "$_xanim" = yes && ! win32
&& ! qnx
&& ! darwin
&& ! os2
; then
7547 _ld_dl_dynamic
='-rdynamic'
7550 _ld_extra
="$_ld_extra $_ld_pthread $_ld_dl $_ld_dl_dynamic"
7551 bsdos
&& _ld_extra
="$_ld_extra -ldvd"
7552 netbsd
&& x86_32
&& _ld_extra
="$_ld_extra -li386"
7553 openbsd
&& x86_32
&& _ld_extra
="$_ld_extra -li386"
7555 _def_debug
='#undef MP_DEBUG'
7556 test "$_debug" != "" && _def_debug
='#define MP_DEBUG 1'
7559 echocheck
"joystick"
7560 _def_joystick
='#undef CONFIG_JOYSTICK'
7561 if test "$_joystick" = yes ; then
7563 # TODO add some check
7564 _def_joystick
='#define CONFIG_JOYSTICK 1'
7567 _res_comment
="unsupported under $system_name"
7570 echores
"$_joystick"
7573 if test "$_lirc" = auto
; then
7576 #include <lirc/lirc_client.h>
7577 int main(void) { return 0; }
7579 cc_check
-llirc_client && _lirc
=yes
7581 if test "$_lirc" = yes ; then
7582 _def_lirc
='#define CONFIG_LIRC 1'
7583 _ld_extra
="$_ld_extra -llirc_client"
7585 _def_lirc
='#undef CONFIG_LIRC'
7590 if test "$_lircc" = auto
; then
7593 #include <lirc/lircc.h>
7594 int main(void) { return 0; }
7596 cc_check
-llircc && _lircc
=yes
7598 if test "$_lircc" = yes ; then
7599 _def_lircc
='#define CONFIG_LIRCC 1'
7600 _ld_extra
="$_ld_extra -llircc"
7602 _def_lircc
='#undef CONFIG_LIRCC'
7607 # Detect maemo development platform libraries availability (http://www.maemo.org),
7608 # they are used when run on Nokia 770|8x0
7609 echocheck
"maemo (Nokia 770|8x0)"
7610 if test "$_maemo" = auto
; then
7613 #include <libosso.h>
7614 int main(void) { (void) osso_initialize("", "", 0, NULL); return 0; }
7616 cc_check
`$_pkg_config --cflags --libs libosso 2>/dev/null` && _maemo
=yes
7618 if test "$_maemo" = yes ; then
7619 _def_maemo
='#define CONFIG_MAEMO 1'
7620 _inc_extra
="$_inc_extra `$_pkg_config --cflags libosso`"
7621 _ld_extra
="$_ld_extra `$_pkg_config --libs libosso` -lXsp"
7623 _def_maemo
='#undef CONFIG_MAEMO'
7628 #this must be the last test to be performed or the ones following it will likely fail
7629 #because libdvdnavmini is intentionally not linked against libdvdread (to permit mplayer
7630 # to use its own copy of the library)
7631 echocheck
"DVD support (libdvdnav)"
7632 if test "$_dvdnav" = auto
; then
7633 if test "$_dvdread_internal" = yes ; then
7635 _res_comment
="Disabled in favor of the internal copy of dvdread. Append --disable-dvdread-internal."
7637 $_dvdnavconfig --version --minilibs >> $TMPLOG 2>&1 || _dvdnav
=no
7640 if test "$_dvdnav" = auto
; then
7642 #include <inttypes.h>
7643 #include <dvdnav/dvdnav.h>
7644 int main(void) { dvdnav_t *dvd=0; return 0; }
7647 _dvdnavdir
=`$_dvdnavconfig --cflags`
7648 _dvdnavlibs
=`$_dvdnavconfig --libs`
7649 cc_check
$_dvdnavdir $_dvdnavlibs $_ld_dl $_ld_pthread && _dvdnav
=yes
7651 if test "$_dvdnav" = yes ; then
7653 _def_dvdnav
='#define CONFIG_DVDNAV 1'
7654 _inc_extra
="$_inc_extra `$_dvdnavconfig --cflags`"
7655 _ld_extra
="$_ld_extra `$_dvdnavconfig --minilibs`"
7656 _inputmodules
="dvdnav $_inputmodules"
7658 _def_dvdnav
='#undef CONFIG_DVDNAV'
7659 _noinputmodules
="dvdnav $_noinputmodules"
7664 #############################################################################
7666 # On OS/2 nm supports only a.out. So the -Zomf compiler option to generate
7667 # the OMF format needs to come after the 'extern symbol prefix' check, which
7670 _ld_extra
="$_ld_extra -Zomf -Zstack 16384 -Zbin-files -Zargs-wild"
7673 # linker paths should be the same for mencoder and mplayer
7675 for I
in $_libs_mplayer ; do
7676 _tmp
=`echo $I | sed -e 's/^-L.*$//'`
7677 if test -z "$_tmp" ; then
7678 _ld_extra
="$I $_ld_extra"
7680 _ld_tmp
="$_ld_tmp $I"
7683 _libs_mplayer
=$_ld_tmp
7686 #############################################################################
7688 CFLAGS
="$CFLAGS -mdynamic-no-pic -falign-loops=16 -shared-libgcc"
7689 if [ "$_cc_major" = 3 ] && [ "$_cc_minor" -lt 1 ]; then
7690 CFLAGS
="$CFLAGS -no-cpp-precomp"
7694 CFLAGS
="$CFLAGS -DNEWLIB -D__USE_INLINE__"
7698 CFLAGS
="$CFLAGS -D_REENTRANT"
7699 elif freebsd || netbsd || openbsd || bsdos
; then
7700 # FIXME bsd needs this so maybe other OS'es
7701 CFLAGS
="$CFLAGS -D_THREAD_SAFE"
7703 # 64 bit file offsets?
7704 if test "$_largefiles" = yes || freebsd
; then
7705 CFLAGS
="$CFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
7706 if test "$_dvdread" = yes ||
test "$_libdvdcss_internal" = yes ; then
7707 # dvdread support requires this (for off64_t)
7708 CFLAGS
="$CFLAGS -D_LARGEFILE64_SOURCE"
7713 int main(void) { return 0; }
7715 if test "$cc_vendor" = "gnu" ; then
7716 cc_check
-std=gnu99
&& CFLAGS
="-std=gnu99 $CFLAGS"
7717 cc_check
-Wno-pointer-sign && CFLAGS
="-Wno-pointer-sign $CFLAGS"
7718 cc_check
-Wdisabled-optimization && CFLAGS
="-Wdisabled-optimization $CFLAGS"
7721 CFLAGS_FFMPEG
="-I../.. $CFLAGS"
7722 CFLAGS
="-I. -Iffmpeg $CFLAGS"
7723 CXXFLAGS
=" $CFLAGS -D__STDC_LIMIT_MACROS"
7725 cc_check
-mno-omit-leaf-frame-pointer && cflags_no_omit_leaf_frame_pointer
="-mno-omit-leaf-frame-pointer"
7727 #############################################################################
7728 echo "Creating config.mak"
7729 cat > config.mak
<< EOF
7730 # -------- Generated by configure -----------
7732 # Ensure that locale settings do not interfere with shell commands.
7735 DOC_LANG = $doc_lang
7736 DOC_LANGS = $doc_langs
7737 DOC_LANG_ALL = $doc_lang_all
7738 MAN_LANG = $man_lang
7739 MAN_LANGS = $man_langs
7740 MAN_LANG_ALL = $man_lang_all
7743 prefix = \$(DESTDIR)$_prefix
7744 BINDIR = \$(DESTDIR)$_bindir
7745 DATADIR = \$(DESTDIR)$_datadir
7746 MANDIR = \$(DESTDIR)$_mandir
7747 CONFDIR = \$(DESTDIR)$_confdir
7748 LIBDIR = \$(DESTDIR)$_libdir
7757 INSTALLSTRIP = $_install_strip
7759 EXTRA_INC = $_inc_extra
7760 EXTRAXX_INC = $_inc_extra $_inc_extraxx
7761 CFLAGS = $CFLAGS \$(EXTRA_INC)
7762 OPTFLAGS = $CFLAGS \$(EXTRA_INC)
7763 FFMPEG_OFLAGS = $CFLAGS_FFMPEG \$(EXTRA_INC)
7764 CXXFLAGS = $CXXFLAGS \$(EXTRAXX_INC)
7765 CFLAGS_DHAHELPER = $cflags_dhahelper
7766 CFLAGS_FAAD_FIXED = $cflags_faad_fixed
7767 CFLAGS_LIBDVDCSS = $cflags_libdvdcss
7768 CFLAGS_LIBDVDCSS_DVDREAD = $cflags_libdvdcss_dvdread
7769 CFLAGS_NO_OMIT_LEAF_FRAME_POINTER = $cflags_no_omit_leaf_frame_pointer
7770 CFLAGS_STACKREALIGN = $cflags_stackrealign
7771 CFLAGS_SVGALIB_HELPER = $cflags_svgalib_helper
7772 CFLAGS_TREMOR_LOW = $cflags_tremor_low
7774 EXTRALIBS = $_extra_libs
7775 EXTRA_LIB = $_ld_extra $_ld_static $_ld_lm
7776 EXTRALIBS_MPLAYER = $_libs_mplayer
7777 EXTRALIBS_MENCODER = $_libs_mencoder
7780 HELP_FILE = $_mp_help
7786 `echo $_cpuexts | tr '[a-z] ' '[A-Z]\n' | sed 's/^/HAVE_/;s/$/=yes/'`
7794 MENCODER = $_mencoder
7799 LIBMPEG2 = $_libmpeg2
7801 TREMOR_INTERNAL = $_tremor_internal
7803 HAVE_SYS_MMAN_H = $_mman
7804 HAVE_POSIX_SELECT = $_posix_select
7806 NEED_GETTIMEOFDAY = $_need_gettimeofday
7807 NEED_GLOB = $_need_glob
7808 NEED_MMAP = $_need_mmap
7809 NEED_SETENV = $_need_setenv
7810 NEED_SHMEM = $_need_shmem
7811 NEED_STRSEP = $_need_strsep
7812 NEED_SWAB = $_need_swab
7813 NEED_VSSCANF = $_need_vsscanf
7821 APPLE_IR = $_apple_ir
7822 APPLE_REMOTE = $_apple_remote
7823 AUDIO_INPUT = $_audio_input
7824 BITMAP_FONT = $_bitmap_font
7827 COREAUDIO = $_coreaudio
7828 COREVIDEO = $_corevideo
7832 DVDREAD_INTERNAL = $_dvdread_internal
7835 FAAD_INTERNAL = $_faad_internal
7836 FREETYPE = $_freetype
7841 GUI_WIN32 = $_gui_win32
7842 JOYSTICK = $_joystick
7848 LIBDVDCSS_INTERNAL = $_libdvdcss_internal
7852 LIBMENU_DVBIN = $_menu_dvbin
7853 LIBNEMESI = $_nemesi
7855 LIBSMBCLIENT = $_smb
7856 LIBTHEORA = $_theora
7857 LIBVORBIS = $_vorbis
7860 MACOSX_BUNDLE = $_macosx_bundle
7861 MACOSX_FINDER = $_macosx_finder
7863 MUSEPACK = $_musepack
7864 NATIVE_RTSP = $_native_rtsp
7866 PE_EXECUTABLE = $_pe_executable
7870 QTX_CODECS_WIN32 = $_qtx_codecs_win32
7871 QTX_EMULATION = $_qtx_emulation
7874 RADIO_CAPTURE=$_radio_capture
7875 REAL_CODECS = $_real
7877 STREAM_CACHE = $_stream_cache
7880 TV_BSDBT848 = $_tv_bsdbt848
7881 TV_DSHOW = $_tv_dshow
7882 TV_TELETEXT = $_tv_teletext
7887 UNRAR_EXEC = $_unrar_exec
7890 VIDIX_PCIDB = $_vidix_pcidb_val
7891 VIDIX_CYBERBLADE=$_vidix_drv_cyberblade
7892 VIDIX_IVTV=$_vidix_drv_ivtv
7893 VIDIX_MACH64=$_vidix_drv_mach64
7894 VIDIX_MGA=$_vidix_drv_mga
7895 VIDIX_MGA_CRTC2=$_vidix_drv_mga_crtc2
7896 VIDIX_NVIDIA=$_vidix_drv_nvidia
7897 VIDIX_PM2=$_vidix_drv_pm2
7898 VIDIX_PM3=$_vidix_drv_pm3
7899 VIDIX_RADEON=$_vidix_drv_radeon
7900 VIDIX_RAGE128=$_vidix_drv_rage128
7901 VIDIX_S3=$_vidix_drv_s3
7902 VIDIX_SH_VEU=$_vidix_drv_sh_veu
7903 VIDIX_SIS=$_vidix_drv_sis
7904 VIDIX_UNICHROME=$_vidix_drv_unichrome
7906 WIN32DLL = $_win32dll
7907 WIN32_EMULATION = $_win32_emulation
7909 XANIM_CODECS = $_xanim
7910 XMMS_PLUGINS = $_xmms
7915 LIBAVUTIL = $_libavutil
7916 LIBAVUTIL_A = $_libavutil_a
7917 LIBAVUTIL_SO = $_libavutil_so
7918 LIBAVCODEC = $_libavcodec
7919 LIBAVCODEC_A = $_libavcodec_a
7920 LIBAVCODEC_SO = $_libavcodec_so
7921 LIBAVFORMAT = $_libavformat
7922 LIBAVFORMAT_A = $_libavformat_a
7923 LIBAVFORMAT_SO = $_libavformat_so
7924 LIBPOSTPROC = $_libpostproc
7925 LIBPOSTPROC_A = $_libpostproc_a
7926 LIBPOSTPROC_SO = $_libpostproc_so
7933 LIBNAME=\$(LIBPREF)\$(NAME)\$(LIBSUF)
7937 CONFIG_MUXERS=$_mencoder
7938 CONFIG_LIBAMR=$_libamr
7939 CONFIG_LIBAMR_NB=$_libamr_nb
7940 CONFIG_LIBAMR_WB=$_libamr_wb
7941 CONFIG_LIBDIRAC=$_libdirac_lavc
7942 CONFIG_LIBFAAC=$_faac_lavc
7943 CONFIG_LIBMP3LAME=$_mp3lame_lavc
7944 CONFIG_LIBSCHROEDINGER=$_libschroedinger_lavc
7945 CONFIG_LIBVORBIS=$_libvorbis
7946 CONFIG_LIBX264=$_x264_lavc
7947 CONFIG_LIBXVID=$_xvid_lavc
7948 CONFIG_MLIB = $_mlib
7949 CONFIG_POSTPROC = yes
7950 # Prevent building libavcodec/imgresample.c with conflicting symbols
7954 HAVE_PTHREADS = $_pthreads
7955 HAVE_W32THREADS = $_w32threads
7958 `echo $_libavdecoders | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/'`
7959 `echo $_libavencoders | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/'`
7960 `echo $_libavparsers | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/'`
7961 `echo $_libavdemuxers | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/'`
7962 `echo $_libavmuxers | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/'`
7963 `echo $_libavbsfs | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/'`
7965 DEPEND_CMD = \$(CC) -MM \$(CFLAGS) \$(filter-out %.h,\$^) | sed "s,[0-9a-z._-]*: \(\$(SRC_DIR)/\)*\([a-z0-9]*/\)[^/]* ,\\2&,"
7967 MPDEPEND_CMD = \$(CC) -MM \$(CFLAGS) \$(filter-out %.h,$^) | sed -e "s,[0-9a-z._-]*: \([a-z0-9/]*/\)[^/]* ,\1&," -e "s,\(.*\)\.o: ,\1.d &,"
7968 MPDEPEND_CMD_CXX = \$(CC) -MM \$(CXXFLAGS) \$(filter-out %.h,$^) | sed -e "s,[0-9a-z._-]*: \([a-z0-9/]*/\)[^/]* ,\1&," -e "s,\(.*\)\.o: ,\1.d &,"
7972 #############################################################################
7974 ff_config_enable
() {
7976 test -z "$_nprefix" && _nprefix
='CONFIG'
7978 if ` echo $2 | grep -q -E "(^| )$part($| )" `; then
7979 echo "#define ${_nprefix}_$part 1"
7980 echo "#define ENABLE_$part 1"
7982 echo "#define ENABLE_$part 0"
7987 echo "Creating config.h"
7989 /* -------- This file has been automatically generated by configure ---------
7990 Note: Any changes in it will be lost when you run configure again. */
7992 /* Protect against multiple inclusion */
7993 #ifndef MPLAYER_CONFIG_H
7994 #define MPLAYER_CONFIG_H
7996 #define CONFIGURATION "$_configuration"
7998 /* make sure we never get lavformat's poll() emulation, the results are
7999 horrible if the X libs try to actually use it, see MPlayer-users
8000 Message-ID: <45D49541.8060101@infernix.net>
8001 Date: Thu, 15 Feb 2007 18:15:45 +0100
8002 Subject: [MPlayer-users] Crash with backtrace when playing back demuxed...
8004 #define HAVE_SYS_POLL_H 1
8006 /* yes, we have inttypes.h */
8007 #define HAVE_INTTYPES_H 1
8009 /* int_fastXY_t emulation */
8013 #define HAVE_ERRNO_H 1
8015 /* libdvdcss + libdvdread */
8016 #define HAVE_LIMITS_H 1
8018 /* libdvdcss + libfaad2 */
8019 #define HAVE_UNISTD_H 1
8021 /* libfaad2 + libdvdread */
8022 #define STDC_HEADERS 1
8025 #define HAVE_MEMCPY 1
8026 #define HAVE_STRCHR 1
8029 #define HAVE_UINTPTR_T 1
8031 /* name of messages charset */
8034 /* Runtime CPU detection */
8035 $_def_runtime_cpudetection
8037 /* Dynamic a/v plugins */
8038 $_def_dynamic_plugins
8040 /* "restrict" keyword */
8041 $_def_restrict_keyword
8043 /* __builtin_expect branch prediction hint */
8044 $_def_builtin_expect
8045 #ifdef HAVE_BUILTIN_EXPECT
8046 #define likely(x) __builtin_expect ((x) != 0, 1)
8047 #define unlikely(x) __builtin_expect ((x) != 0, 0)
8049 #define likely(x) (x)
8050 #define unlikely(x) (x)
8053 /* attribute(used) as needed by some compilers */
8054 #if (__GNUC__ * 100 + __GNUC_MINOR__ >= 300)
8055 # define attribute_used __attribute__((used))
8057 # define attribute_used
8060 /* extern symbol prefix */
8063 /* compiler support for named assembler arguments */
8064 $_def_named_asm_args
8066 /* enable/disable SIGHANDLER */
8069 /* enable/disable automatic gdb attach on crash, requires SIGHANDLER */
8072 /* Toggles debugging informations */
8075 /* Indicates that libcdio is available for VCD and CD-DA playback */
8078 /* Indicates that Ogle's libdvdread is available for DVD playback */
8081 /* Indicates that dvdread is internal */
8082 $_def_dvdread_internal
8084 /* Additional options for libdvdread/libdvdcss */
8097 /* Common data directory (for fonts, etc) */
8098 #define MPLAYER_DATADIR "$_datadir"
8099 #define MPLAYER_CONFDIR "$_confdir"
8100 #define MPLAYER_LIBDIR "$_libdir"
8102 /* Define this to compile stream-caching support, it can be enabled via
8103 -cache <kilobytes> */
8106 /* Define if you are using Xvid library */
8109 /* Define if you are using the X.264 library */
8112 /* Define if you are using libnut */
8115 /* Define to include support for libdv-0.9.5 */
8118 /* Indicates if libmp3lame is available
8119 Note: for mencoder */
8121 $_def_mp3lame_preset
8122 $_def_mp3lame_preset_medium
8124 /* Undefine this if you do not want to select mono audio (left or right)
8125 with a stereo MPEG layer 2/3 audio stream. The command line option
8126 -stereo has three possible values (0 for stereo, 1 for left-only, 2 for
8127 right-only), with 0 being the default.
8129 #define CONFIG_FAKE_MONO 1
8131 /* Undefine this if your sound card driver has no working select().
8132 If you have kernel Oops, player hangups, or just no audio, you should
8133 try to recompile MPlayer with this option disabled! */
8136 /* define this to use iconv(3) function to codepage conversions */
8139 /* define this to use nl_langinfo function */
8142 /* define this to use RTC (/dev/rtc) for video timers */
8145 /* set up max. outburst. use 65536 for ALSA 0.5, for others 16384 is enough */
8146 #define MAX_OUTBURST 65536
8148 /* set up audio OUTBURST. Do not change this! */
8149 #define OUTBURST 512
8151 /* Define this if your system has the header file for the OSS sound interface */
8154 /* Define this if your system has the header file for the OSS sound interface
8155 * in /usr/include */
8158 /* Define this if your system has the sysinfo header */
8161 /* Define this if your system has the "malloc.h" header file */
8164 /* memalign is mapped to malloc if unsupported */
8169 /* assembler handling of .align */
8172 /* Define this if your system has the "alloca.h" header file */
8175 /* Define this if your system has the "byteswap.h" header file */
8178 /* Define this if your system has the "sys/mman.h" header file */
8180 $_def_mman_has_map_failed
8182 /* Define this if you have the elf dynamic linker -ldl library */
8185 /* Define this if you have the kstat kernel statistics library */
8188 /* Define this if you have zlib */
8191 /* Define this if you have shm support */
8194 /* Define this if your system has strsep */
8197 /* Define this if your system has vsscanf */
8200 /* Define this if your system has swab */
8203 /* Define this if your system has posix select */
8206 /* Define this if your system has gettimeofday */
8209 /* Define this if your system has glob */
8212 /* Define this if your system has setenv */
8215 int setenv(const char *name, const char *val, int overwrite);
8218 /* Define this if your system has sysi86 */
8222 /* Define this if your system has pthreads */
8225 /* LIRC (remote control, see www.lirc.org) support: */
8228 /* Apple Remote (remote control, see http://docs.info.apple.com/article.html?artnum=302504) support: */
8231 /* Apple IR Remote (Linux remote control driver) */
8234 /* Support for maemo (http://www.maemo.org) */
8238 * LIRCCD (LIRC client daemon)
8239 * See http://www.dolda2000.cjb.net/~fredrik/lirccd/
8243 /* DVD navigation support using libdvdnav */
8246 /* Define this to enable MPEG 1/2 image postprocessing (requires a FAST CPU!) */
8247 #define MPEG12_POSTPROC 1
8249 /* maximum alignment used by libmpeg2 */
8250 #define ATTRIBUTE_ALIGNED_MAX 16
8252 /* Win32 DLL support */
8254 #define WIN32_PATH "$_win32codecsdir"
8256 /* Mac OS X specific features */
8264 /* Build our Win32-loader */
8268 /* Define this to enable image postprocessing in libavcodec (requires a FAST CPU!) */
8271 $_def_libpostproc_so
8273 /* Define this if you enabled thread support for libavcodec */
8276 #define ENABLE_THREADS 1
8278 #define ENABLE_THREADS 0
8281 /* ffmpeg's libavcodec support (requires libavcodec source) */
8285 $_def_libavcodec_mpegaudio_hp
8287 /* ffmpeg's libavformat support (requires libavformat source) */
8290 $_def_libavformat_so
8296 /* Use libavcodec's decoders */
8297 #define CONFIG_DECODERS 1
8298 #define ENABLE_DECODERS 1
8299 /* Use libavcodec's encoders */
8300 #define CONFIG_ENCODERS 1
8301 #define ENABLE_ENCODERS 1
8303 /* Use libavformat's demuxers */
8304 #define CONFIG_DEMUXERS 1
8305 #define ENABLE_DEMUXERS 1
8306 /* Use libavformat's muxers */
8309 /* Use these registers in FFmpeg x86 inline asm. No proper detection yet. */
8310 #define HAVE_EBX_AVAILABLE 1
8312 #define HAVE_EBP_AVAILABLE 1
8315 #define CONFIG_GPL 1
8316 #define ENABLE_SMALL 0
8317 #define ENABLE_GRAY 0
8319 /* Use AMR codecs from libavcodec. */
8324 /* Use specific parts from FFmpeg. */
8325 `ff_config_enable "$_libavdecoders_all" "$_libavdecoders"`
8326 `ff_config_enable "$_libavencoders_all" "$_libavencoders"`
8327 `ff_config_enable "$_libavparsers_all" "$_libavparsers"`
8328 `ff_config_enable "$_libavdemuxers_all" "$_libavdemuxers"`
8329 `ff_config_enable "$_libavmuxers_all" "$_libavmuxers"`
8330 `ff_config_enable "$_libavprotocols_all" "$_libavprotocols"`
8331 `ff_config_enable "$_libavbsfs_all" "$_libavbsfs"`
8336 $_def_libschroedinger_lavc
8340 /* Use codec libs included in mplayer CVS / source dist: */
8345 /* XAnim DLL support */
8347 /* Default search path */
8350 /* RealPlayer DLL support */
8352 /* Default search path */
8355 /* LIVE555 Streaming Media library support */
8358 /* libnemesi Streaming Media library support */
8361 /* Use 3dnow/mmxext/sse/mmx optimized fast memcpy() [maybe buggy... signal 4]*/
8364 /* Use UnRAR executable for Vobsubs */
8367 /* gui support, please do not edit this option */
8371 /* Audio output drivers */
8373 $_def_ossaudio_devdsp
8374 $_def_ossaudio_devmixer
8386 $_def_sys_asoundlib_h
8387 $_def_alsa_asoundlib_h
8393 /* Enable fast OSD/SUB renderer (looks ugly, but uses less CPU power) */
8395 #undef FAST_OSD_TABLE
8397 /* Enable TV Interface support */
8400 /* Enable Video 4 Linux TV interface support */
8403 /* Enable Video 4 Linux 1 TV interface support */
8406 /* Enable Video 4 Linux 2 TV interface support */
8409 /* Enable DirectShow TV interface support */
8412 /* *BSD BrookTree headers */
8413 $_def_ioctl_meteor_h_name
8414 $_def_ioctl_bt848_h_name
8416 /* Enable *BSD BrookTree TV interface support */
8419 /* Enable TV Teletext Interface support */
8422 /* Enable Radio Interface support */
8425 /* Enable Capture for Radio Interface support */
8428 /* Enable Video 4 Linux Radio interface support */
8431 /* Enable Video 4 Linux 2 Radio interface support */
8434 /* Enable *BSD BrookTree Radio interface support */
8435 $_def_radio_bsdbt848
8437 /* Enable Video 4 Linux 2 MPEG PVR support */
8440 /* Define if your processor stores words with the most significant
8441 byte first (like Motorola and SPARC, unlike Intel and VAX). */
8444 /* Define if your processor can access unaligned data in a fast way */
8445 $_def_fast_unaligned
8447 `ff_config_enable "$_arch_all" "$_arch" "ARCH"`
8449 /* For the PPC. G5 has the dcbzl when in 64bit mode but G4s and earlier do not
8450 have the instruction. */
8453 /* Define this for Cygwin build for win32 */
8456 /* Define this to any prefered value from 386 up to infinity with step 100 */
8457 #define __CPU__ $iproc
8464 #define DEFAULT_CDROM_DEVICE "/vol/dev/aliases/cdrom0"
8465 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
8466 #elif defined(WIN32) || defined(__OS2__)
8467 #define DEFAULT_CDROM_DEVICE "D:"
8468 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
8469 #elif defined(__APPLE__) || defined(__DARWIN__)
8470 #define DEFAULT_CDROM_DEVICE "/dev/disk1"
8471 #define DEFAULT_DVD_DEVICE "/dev/rdiskN"
8472 #elif defined(__OpenBSD__)
8473 #define DEFAULT_CDROM_DEVICE "/dev/rcd0a"
8474 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
8475 #elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
8476 #define DEFAULT_CDROM_DEVICE "/dev/acd0"
8477 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
8478 #elif defined(__DragonFly__)
8479 #define DEFAULT_CDROM_DEVICE "/dev/cd0"
8480 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
8481 #elif defined(__AMIGAOS4__)
8482 #define DEFAULT_CDROM_DEVICE "a1ide.device:2"
8483 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
8485 #define DEFAULT_CDROM_DEVICE "/dev/cdrom"
8486 #define DEFAULT_DVD_DEVICE "/dev/dvd"
8490 /*----------------------------------------------------------------------------
8492 ** NOTE: Instead of modifying these definitions here, use the
8493 ** --enable/--disable options of the ./configure script!
8494 ** See ./configure --help for details.
8496 *---------------------------------------------------------------------------*/
8498 /* C99 *lrint* and round* functions available */
8505 /* mkstemp support */
8508 /* nanosleep support */
8514 /* termcap flag for getch2.c */
8517 /* termios flag for getch2.c */
8522 /* enable PNG support */
8525 /* enable JPEG support */
8528 /* enable PNM support */
8531 /* enable md5sum support */
8534 /* enable yuv4mpeg support */
8537 /* enable GIF support */
8542 /* enable bitmap font support */
8545 /* enable FreeType support */
8548 /* enable Fontconfig support */
8551 /* enable SSA/ASS support */
8554 /* enable FriBiDi usage */
8557 /* enable ENCA usage */
8560 /* liblzo support */
8563 /* libmad support */
8566 /* enable OggVorbis support */
8570 /* enable Speex support */
8573 /* enable musepack support */
8576 /* enable OggTheora support */
8579 /* enable FAAD (AAC) support */
8583 /* enable FAAC (AAC encoder) support */
8586 /* enable libdca support */
8589 /* enable LADSPA plugin support */
8592 /* enable network */
8595 /* enable ftp support */
8598 /* enable vstream support */
8601 /* enable winsock2 instead of Unix functions*/
8604 /* define this to use inet_aton() instead of inet_pton() */
8607 /* socklen_t support */
8609 #ifndef HAVE_SOCKLEN_T
8610 #define HAVE_SOCKLEN_T 1
8611 typedef int socklen_t;
8614 /* enables / disables cdparanoia support */
8618 /* enables / disables VIDIX usage */
8620 $_def_vidix_drv_cyberblade
8621 $_def_vidix_drv_ivtv
8622 $_def_vidix_drv_mach64
8624 $_def_vidix_drv_mga_crtc2
8625 $_def_vidix_drv_nvidia
8627 $_def_vidix_drv_radeon
8628 $_def_vidix_drv_rage128
8630 $_def_vidix_drv_sh_veu
8632 $_def_vidix_drv_unichrome
8635 /* enables / disables new input joystick support */
8638 /* enables / disables QTX codecs */
8642 /* enables / disables osd menu */
8645 /* enables / disables subtitles sorting */
8648 /* XMMS input plugin support */
8650 #define XMMS_INPUT_PLUGIN_DIR "$_xmmsplugindir"
8652 /* enables inet6 support */
8655 /* do we have gethostbyname2? */
8656 $_def_gethostbyname2
8658 /* Extension defines */
8659 `ff_config_enable "$_cpuexts_all" "$_cpuexts" "HAVE"`
8661 $_def_altivec_h // enables usage of altivec.h
8664 #define SCREEN_SIZE_X 1
8665 #define SCREEN_SIZE_Y 1
8678 /* defined for SDLlib with keyrepeat bugs (before 1.2.1) */
8690 $_def_directfb_version
8717 #if defined(CONFIG_GL) || defined(CONFIG_X11) || defined(CONFIG_XV)
8718 #define X11_FULLSCREEN 1
8721 #endif /* MPLAYER_CONFIG_H */
8724 # Do not overwrite an unchanged config.h to avoid superfluous rebuilds.
8725 cmp -s "$TMPH" config.h ||
mv -f "$TMPH" config.h
8727 cp -p config.h ffmpeg
/config.h
8728 sed -e 's/OPTFLAGS/MPLAYER_OPTFLAGS/' -e 's/FFMPEG_OFLAGS/OPTFLAGS/' config.mak
>ffmpeg
/config.mak
8730 #############################################################################
8734 Config files successfully generated by ./configure $_configuration !
8736 Install prefix: $_prefix
8737 Data directory: $_datadir
8738 Config direct.: $_confdir
8740 Byte order: $_byte_order
8741 Optimizing for: $_optimizing
8744 Messages/GUI: $msg_lang
8745 Manual pages: $man_langs
8747 Enabled optional drivers:
8748 Input: $_inputmodules
8749 Codecs: $_codecmodules
8750 Audio output: $_aomodules
8751 Video output: $_vomodules
8753 Disabled optional drivers:
8754 Input: $_noinputmodules
8755 Codecs: $_nocodecmodules
8756 Audio output: $_noaomodules
8757 Video output: $_novomodules
8759 'config.h' and 'config.mak' contain your configuration options.
8760 Note: If you alter theses files (for instance CFLAGS) MPlayer may no longer
8761 compile *** DO NOT REPORT BUGS if you tweak these files ***
8763 'make' will now compile MPlayer and 'make install' will install it.
8764 Note: On non-Linux systems you might need to use 'gmake' instead of 'make'.
8769 if test "$_mtrr" = yes ; then
8770 echo "Please check mtrr settings at /proc/mtrr (see DOCS/HTML/$doc_lang/video.html#mtrr)"
8776 NOTE: Win32 codec DLLs are not supported on your CPU ($host_arch) or your
8777 operating system ($system_name). You may encounter a few files that cannot
8778 be played due to missing open source video/audio codec support.
8785 Check $TMPLOG if you wonder why an autodetection failed (make sure
8786 development headers/packages are installed).
8788 NOTE: The --enable-* parameters unconditionally force options on, completely
8789 skipping autodetection. This behavior is unlike what you may be used to from
8790 autoconf-based configure scripts that can decide to override you. This greater
8791 level of control comes at a price. You may have to provide the correct compiler
8792 and linker flags yourself.
8793 If you used one of these options (except --enable-gui and similar ones that
8794 turn on internal features) and experience a compilation or linking failure,
8795 make sure you have passed the necessary compiler/linker flags to configure.
8797 If you suspect a bug, please read DOCS/HTML/$doc_lang/bugreports.html.
8801 if test "$_warn_CFLAGS" = yes; then
8804 MPlayer compilation will use the CPPFLAGS/CFLAGS/LDFLAGS set by you, but:
8806 *** *** DO NOT REPORT BUGS IF IT DOES NOT COMPILE/WORK! *** ***
8808 It is strongly recommended to let MPlayer choose the correct CFLAGS!
8809 To do so, execute 'CFLAGS= ./configure <options>'
8815 rm -f "$TMPEXE" "$TMPC" "$TMPS" "$TMPCPP" "$TMPH"