3 # Original version (C) 2000 Pontscho/fresh!mindworkz
4 # pontscho@makacs.poliod.hu
6 # History / Contributors: Check the Subversion 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 test "$_feature" = auto; then
27 # #include <feature.h>
28 # int main(void) { return 0; }
31 # cc_check && _feature=yes
33 # if test "$_feature" = yes ; then
34 # def_feature='#define CONFIG_FEATURE 1'
36 # def_feature='#undef CONFIG_FEATURE'
40 # Furthermore you need to add the variable _feature to the list of default
41 # settings and set it to one of yes/no/auto. Also add appropriate
42 # --enable-feature/--disable-feature command line options.
43 # The results of the check should be written to config.h and config.mak
44 # at the end of this script. The variable names used for this should be
45 # uniform, i.e. if the option is named 'feature':
47 # _feature : should have a value of yes/no/auto
48 # def_feature : '#define ... 1' or '#undef ...' for conditional compilation
49 # _ld_feature : '-L/path/dir -lfeature' GCC options
51 #############################################################################
53 # 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 $extra_cflags $_ld_static $extra_ldflags $libs_mplayer $libs_mencoder -o $TMPEXE $@" >> "$TMPLOG"
67 $_cc $CFLAGS $extra_cflags $_ld_static $extra_ldflags $libs_mplayer $libs_mencoder -o "$TMPEXE" "$@" >> "$TMPLOG" 2>&1
75 compile_check
$TMPC $@
79 compile_check
$TMPCPP $@
-lstdc++
84 cat "$TMPS" >> "$TMPLOG"
86 echo "$_yasm $YASMFLAGS -o $TMPEXE $TMPS $@" >> "$TMPLOG"
88 $_yasm $YASMFLAGS -o "$TMPEXE" "$TMPS" "$@" >> "$TMPLOG" 2>&1
96 "$TMPEXE" >> "$TMPLOG" 2>&1
99 # Display error message, flushes tempfile, exit
104 rm -f "$TMPEXE" "$TMPC" "$TMPS" "$TMPCPP"
105 echo "Check \"$TMPLOG\" if you do not understand why it failed."
109 # OS test booleans functions
111 test "$(echo $system_name | tr A-Z a-z)" = "$(echo $1 | tr A-Z a-z)"
113 aix
() { issystem
"AIX"; }
114 amigaos
() { issystem
"AmigaOS"; }
115 beos
() { issystem
"BEOS"; }
116 bsdos
() { issystem
"BSD/OS"; }
117 cygwin
() { issystem
"CYGWIN"; }
118 darwin
() { issystem
"Darwin"; }
119 dragonfly
() { issystem
"DragonFly"; }
120 freebsd
() { issystem
"FreeBSD" || issystem
"GNU/kFreeBSD"; }
121 gnu
() { issystem
"GNU"; }
122 hpux
() { issystem
"HP-UX"; }
123 irix
() { issystem
"IRIX"; }
124 linux
() { issystem
"Linux"; }
125 mingw32
() { issystem
"MINGW32"; }
126 morphos
() { issystem
"MorphOS"; }
127 netbsd
() { issystem
"NetBSD"; }
128 openbsd
() { issystem
"OpenBSD"; }
129 os2
() { issystem
"OS/2"; }
130 qnx
() { issystem
"QNX"; }
131 sunos
() { issystem
"SunOS"; }
132 win32
() { cygwin || mingw32
; }
134 # arch test boolean functions
135 # x86/x86pc is used by QNX
138 i
[3-9]86|x86|x86pc|k5|k6|k6-2|k6-3|pentium
*|athlon
*|i586-i686
) return 0 ;;
145 x86_64|amd64
) return 0 ;;
156 ppc|ppc64|powerpc|powerpc64
) return 0;;
175 # Use this before starting a check
177 echo "============ Checking for $@ ============" >> "$TMPLOG"
178 echo ${_echo_n} "Checking for $@ ... ${_echo_c}"
181 # Use this to echo the results of a check
183 if test "$_res_comment" ; then
184 _res_comment
="($_res_comment)"
186 echo "Result is: $@ $_res_comment" >> "$TMPLOG"
187 echo "##########################################" >> "$TMPLOG"
189 echo "$@ $_res_comment"
192 #############################################################################
194 # Check how echo works in this /bin/sh
196 -n) _echo_n
= _echo_c
='\c' ;; # SysV echo
197 *) _echo_n
='-n ' _echo_c
= ;; # BSD echo
200 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")
201 man_lang_all
=$
(echo DOCS
/man
/??
/mplayer
.1 DOCS
/man
/??_??
/mplayer
.1 |
sed -e "s:DOCS/man/\(..\)/mplayer.1:\1:g" -e "s:DOCS/man/\(.._..\)/mplayer.1:\1:g")
202 doc_lang_all
=$
(echo DOCS
/xml
/??
/ DOCS
/xml
/??_??
/ |
sed -e "s:DOCS/xml/\(..\)/:\1:g" -e "s:DOCS/xml/\(.._..\)/:\1:g")
206 Usage: $0 [OPTIONS]...
209 -h, --help display this help and exit
211 Installation directories:
212 --prefix=DIR prefix directory for installation [/usr/local]
213 --bindir=DIR directory for installing binaries [PREFIX/bin]
214 --datadir=DIR directory for installing machine independent
215 data files (skins, etc) [PREFIX/share/mplayer]
216 --mandir=DIR directory for installing man pages [PREFIX/share/man]
217 --confdir=DIR directory for installing configuration files
219 --libdir=DIR directory for object code libraries [PREFIX/lib]
220 --codecsdir=DIR directory for binary codecs [LIBDIR/codecs]
221 --win32codecsdir=DIR directory for Windows DLLs [LIBDIR/codecs]
222 --xanimcodecsdir=DIR directory for XAnim codecs [LIBDIR/codecs]
223 --realcodecsdir=DIR directory for RealPlayer codecs [LIBDIR/codecs]
226 --disable-mencoder disable MEncoder (A/V encoder) compilation [enable]
227 --disable-mplayer disable MPlayer compilation [enable]
228 --enable-gui enable GMPlayer compilation (GTK+ GUI) [disable]
229 --enable-gtk1 force using GTK 1.2 for the GUI [disable]
230 --disable-largefiles disable support for files > 2GB [enable]
231 --enable-linux-devfs set default devices to devfs [disable]
232 --enable-termcap use termcap database for key codes [autodetect]
233 --enable-termios use termios database for key codes [autodetect]
234 --disable-iconv disable iconv for encoding conversion [autodetect]
235 --disable-langinfo do not use langinfo [autodetect]
236 --enable-lirc enable LIRC (remote control) support [autodetect]
237 --enable-lircc enable LIRCCD (LIRC client daemon) input [autodetect]
238 --enable-joystick enable joystick support [disable]
239 --enable-apple-remote enable Apple Remote input (Mac OS X only) [autodetect]
240 --enable-apple-ir enable Apple IR Remote input (Linux only) [autodetect]
241 --disable-vm disable X video mode extensions [autodetect]
242 --disable-xf86keysym disable support for multimedia keys [autodetect]
243 --enable-radio enable radio interface [disable]
244 --enable-radio-capture enable radio capture (through PCI/line-in) [disable]
245 --disable-radio-v4l2 disable Video4Linux2 radio interface [autodetect]
246 --disable-radio-bsdbt848 disable BSD BT848 radio interface [autodetect]
247 --disable-tv disable TV interface (TV/DVB grabbers) [enable]
248 --disable-tv-v4l1 disable Video4Linux TV interface [autodetect]
249 --disable-tv-v4l2 disable Video4Linux2 TV interface [autodetect]
250 --disable-tv-bsdbt848 disable BSD BT848 interface [autodetect]
251 --disable-tv-teletext disable TV teletext interface [autodetect]
252 --disable-pvr disable Video4Linux2 MPEG PVR [autodetect]
253 --disable-rtc disable RTC (/dev/rtc) on Linux [autodetect]
254 --disable-network disable networking [enable]
255 --enable-winsock2_h enable winsock2_h [autodetect]
256 --enable-smb enable Samba (SMB) input [autodetect]
257 --enable-live enable LIVE555 Streaming Media [autodetect]
258 --enable-nemesi enable Nemesi Streaming Media [autodetect]
259 --disable-vcd disable VCD support [autodetect]
260 --disable-dvdnav disable libdvdnav [autodetect]
261 --disable-dvdread disable libdvdread [autodetect]
262 --disable-dvdread-internal disable internal libdvdread [autodetect]
263 --disable-libdvdcss-internal disable internal libdvdcss [autodetect]
264 --disable-cdparanoia disable cdparanoia [autodetect]
265 --disable-cddb disable cddb [autodetect]
266 --disable-bitmap-font disable bitmap font support [enable]
267 --disable-freetype disable FreeType 2 font rendering [autodetect]
268 --disable-fontconfig disable fontconfig font lookup [autodetect]
269 --disable-unrarexec disable using of UnRAR executable [enabled]
270 --enable-menu enable OSD menu (not DVD menu) [disabled]
271 --disable-sortsub disable subtitle sorting [enabled]
272 --enable-fribidi enable the FriBiDi libs [autodetect]
273 --disable-enca disable ENCA charset oracle library [autodetect]
274 --disable-maemo disable maemo specific features [autodetect]
275 --enable-macosx-finder enable Mac OS X Finder invocation parameter
277 --enable-macosx-bundle enable Mac OS X bundle file locations [autodetect]
278 --disable-inet6 disable IPv6 support [autodetect]
279 --disable-gethostbyname2 gethostbyname2 part of the C library [autodetect]
280 --disable-ftp disable FTP support [enabled]
281 --disable-vstream disable TiVo vstream client support [autodetect]
282 --disable-pthreads disable Posix threads support [autodetect]
283 --disable-w32threads disable Win32 threads support [autodetect]
284 --disable-ass disable internal SSA/ASS subtitle support [autodetect]
285 --enable-rpath enable runtime linker path for extra libs [disabled]
288 --enable-gif enable GIF support [autodetect]
289 --enable-png enable PNG input/output support [autodetect]
290 --enable-mng enable MNG input support [autodetect]
291 --enable-jpeg enable JPEG input/output support [autodetect]
292 --enable-libcdio enable libcdio support [autodetect]
293 --enable-liblzo enable liblzo support [autodetect]
294 --disable-win32dll disable Win32 DLL support [enabled]
295 --disable-qtx disable QuickTime codecs support [enabled]
296 --disable-xanim disable XAnim codecs support [enabled]
297 --disable-real disable RealPlayer codecs support [enabled]
298 --disable-xvid disable Xvid [autodetect]
299 --disable-xvid-lavc disable Xvid in libavcodec [autodetect]
300 --disable-x264 disable x264 [autodetect]
301 --disable-x264-lavc disable x264 in libavcodec [autodetect]
302 --disable-libdirac-lavc disable Dirac in libavcodec [autodetect]
303 --disable-libschroedinger-lavc disable Dirac in libavcodec (Schroedinger
304 decoder) [autodetect]
305 --disable-libnut disable libnut [autodetect]
306 --disable-libavutil_a disable static libavutil [autodetect]
307 --disable-libavcodec_a disable static libavcodec [autodetect]
308 --disable-libavformat_a disable static libavformat [autodetect]
309 --disable-libpostproc_a disable static libpostproc [autodetect]
310 --disable-libswscale_a disable static libswscale [autodetect]
311 --disable-libavutil_so disable shared libavutil [autodetect]
312 --disable-libavcodec_so disable shared libavcodec [autodetect]
313 --disable-libavformat_so disable shared libavformat [autodetect]
314 --disable-libpostproc_so disable shared libpostproc [autodetect]
315 --disable-libswscale_so disable shared libswscale [autodetect]
316 --disable-libavcodec_mpegaudio_hp disable high precision audio decoding
317 in libavcodec [enabled]
318 --disable-tremor-internal disable internal Tremor [enabled]
319 --enable-tremor-low enable lower accuracy internal Tremor [disabled]
320 --enable-tremor enable external Tremor [autodetect]
321 --disable-libvorbis disable libvorbis support [autodetect]
322 --disable-speex disable Speex support [autodetect]
323 --enable-theora enable OggTheora libraries [autodetect]
324 --enable-faad enable external FAAD2 (AAC) [autodetect]
325 --disable-faad-internal disable internal FAAD2 (AAC) [autodetect]
326 --enable-faad-fixed enable fixed-point mode in internal FAAD2 [disabled]
327 --disable-faac disable support for FAAC (AAC encoder) [autodetect]
328 --disable-faac-lavc disable support for FAAC in libavcodec [autodetect]
329 --disable-ladspa disable LADSPA plugin support [autodetect]
330 --disable-libbs2b disable libbs2b audio filter support [autodetect]
331 --disable-libdv disable libdv 0.9.5 en/decoding support [autodetect]
332 --disable-mad disable libmad (MPEG audio) support [autodetect]
333 --disable-mp3lame disable LAME MP3 encoding support [autodetect]
334 --disable-mp3lame-lavc disable LAME in libavcodec [autodetect]
335 --disable-toolame disable Toolame (MPEG layer 2) encoding [autodetect]
336 --disable-twolame disable Twolame (MPEG layer 2) encoding [autodetect]
337 --enable-xmms enable XMMS input plugin support [disabled]
338 --enable-libdca enable libdca support [autodetect]
339 --disable-mp3lib disable builtin mp3lib [autodetect]
340 --disable-liba52 disable liba52 [autodetect]
341 --disable-liba52-internal disable builtin liba52 [autodetect]
342 --disable-libmpeg2 disable builtin libmpeg2 [autodetect]
343 --disable-musepack disable musepack support [autodetect]
344 --disable-libamr_nb disable libamr narrowband [autodetect]
345 --disable-libamr_wb disable libamr wideband [autodetect]
346 --disable-decoder=DECODER disable specified FFmpeg decoder
347 --enable-decoder=DECODER enable specified FFmpeg decoder
348 --disable-encoder=ENCODER disable specified FFmpeg encoder
349 --enable-encoder=ENCODER enable specified FFmpeg encoder
350 --disable-parser=PARSER disable specified FFmpeg parser
351 --enable-parser=PARSER enable specified FFmpeg parser
352 --disable-demuxer=DEMUXER disable specified FFmpeg demuxer
353 --enable-demuxer=DEMUXER enable specified FFmpeg demuxer
354 --disable-muxer=MUXER disable specified FFmpeg muxer
355 --enable-muxer=MUXER enable specified FFmpeg muxer
358 --disable-vidix disable VIDIX [for x86 *nix]
359 --with-vidix-drivers[=*] list of VIDIX drivers to be compiled in
360 Available: cyberblade,ivtv,mach64,mga,mga_crtc2,
361 nvidia,pm2,pm3,radeon,rage128,s3,sis,unichrome
362 --disable-vidix-pcidb disable VIDIX PCI device name database
363 --enable-dhahelper enable VIDIX dhahelper support
364 --enable-svgalib_helper enable VIDIX svgalib_helper support
365 --enable-gl enable OpenGL video output [autodetect]
366 --enable-dga2 enable DGA 2 support [autodetect]
367 --enable-dga1 enable DGA 1 support [autodetect]
368 --enable-vesa enable VESA video output [autodetect]
369 --enable-svga enable SVGAlib video output [autodetect]
370 --enable-sdl enable SDL video output [autodetect]
371 --enable-kva enable KVA video output [autodetect]
372 --enable-aa enable AAlib video output [autodetect]
373 --enable-caca enable CACA video output [autodetect]
374 --enable-ggi enable GGI video output [autodetect]
375 --enable-ggiwmh enable GGI libggiwmh extension [autodetect]
376 --enable-direct3d enable Direct3D video output [autodetect]
377 --enable-directx enable DirectX video output [autodetect]
378 --enable-dxr2 enable DXR2 video output [autodetect]
379 --enable-dxr3 enable DXR3/H+ video output [autodetect]
380 --enable-ivtv enable IVTV TV-Out video output [autodetect]
381 --enable-v4l2 enable V4L2 Decoder audio/video output [autodetect]
382 --enable-dvb enable DVB video output [autodetect]
383 --enable-dvbhead enable DVB video output (HEAD version) [autodetect]
384 --enable-mga enable mga_vid video output [autodetect]
385 --enable-xmga enable mga_vid X11 video output [autodetect]
386 --enable-xv enable Xv video output [autodetect]
387 --enable-xvmc enable XvMC acceleration [disable]
388 --enable-vdpau enable VDPAU acceleration [autodetect]
389 --enable-vm enable XF86VidMode support [autodetect]
390 --enable-xinerama enable Xinerama support [autodetect]
391 --enable-x11 enable X11 video output [autodetect]
392 --enable-xshape enable XShape support [autodetect]
393 --disable-xss disable screensaver support via xss [autodetect]
394 --enable-fbdev enable FBDev video output [autodetect]
395 --enable-mlib enable mediaLib video output (Solaris) [disable]
396 --enable-3dfx enable obsolete /dev/3dfx video output [disable]
397 --enable-tdfxfb enable tdfxfb video output [disable]
398 --enable-s3fb enable s3fb (S3 ViRGE) video output [disable]
399 --enable-wii enable Nintendo Wii/GameCube video output [disable]
400 --enable-directfb enable DirectFB video output [autodetect]
401 --enable-zr enable ZR360[56]7/ZR36060 video output [autodetect]
402 --enable-bl enable Blinkenlights video output [disable]
403 --enable-tdfxvid enable tdfx_vid video output [disable]
404 --enable-xvr100 enable SUN XVR-100 video output [autodetect]
405 --disable-tga disable Targa video output [enable]
406 --disable-pnm disable PNM video output [enable]
407 --disable-md5sum disable md5sum video output [enable]
408 --disable-yuv4mpeg disable yuv4mpeg video output [enable]
409 --disable-corevideo disable CoreVideo video output [autodetect]
410 --disable-quartz disable Quartz video output [autodetect]
413 --disable-alsa disable ALSA audio output [autodetect]
414 --disable-ossaudio disable OSS audio output [autodetect]
415 --disable-arts disable aRts audio output [autodetect]
416 --disable-esd disable esd audio output [autodetect]
417 --disable-pulse disable Pulseaudio audio output [autodetect]
418 --disable-jack disable JACK audio output [autodetect]
419 --disable-openal disable OpenAL audio output [autodetect]
420 --disable-nas disable NAS audio output [autodetect]
421 --disable-sgiaudio disable SGI audio output [autodetect]
422 --disable-sunaudio disable Sun audio output [autodetect]
423 --disable-dart disable DART audio output [autodetect]
424 --disable-win32waveout disable Windows waveout audio output [autodetect]
425 --disable-coreaudio disable CoreAudio audio output [autodetect]
426 --disable-select disable using select() on the audio device [enable]
429 --charset=charset convert the console messages to this character set
430 --language-doc=lang language to use for the documentation [en]
431 --language-man=lang language to use for the man pages [en]
432 --language-msg=lang language to use for the messages and the GUI [en]
433 --language=lang default language to use [en]
434 Specific options override --language. You can pass a list of languages separated
435 by whitespace or commas instead of a single language. Nonexisting translations
436 will be dropped from each list. All documentation and man page translations
437 available in the list will be installed, for the messages the first available
438 translation will be used. The value "all" will activate all translations. The
439 LINGUAS environment variable is honored. In all cases the fallback is English.
440 Available values are: all $msg_lang_all
442 Miscellaneous options:
443 --enable-runtime-cpudetection enable runtime CPU detection [disable]
444 --enable-cross-compile enable cross-compilation [autodetect]
445 --cc=COMPILER C compiler to build MPlayer [gcc]
446 --host-cc=COMPILER C compiler for tools needed while building [gcc]
447 --as=ASSEMBLER assembler to build MPlayer [as]
448 --nm=NM nm tool to build MPlayer [nm]
449 --yasm=YASM Yasm assembler to build MPlayer [yasm]
450 --ar=AR librarian to build MPlayer [ar]
451 --ranlib=RANLIB ranlib to build MPlayer [ranlib]
452 --windres=WINDRES windres to build MPlayer [windres]
453 --target=PLATFORM target platform (i386-linux, arm-linux, etc)
454 --enable-static build a statically linked binary
455 --with-install=PATH path to a custom install program
458 --enable-mmx enable MMX [autodetect]
459 --enable-mmxext enable MMX2 (Pentium III, Athlon) [autodetect]
460 --enable-3dnow enable 3DNow! [autodetect]
461 --enable-3dnowext enable extended 3DNow! [autodetect]
462 --enable-sse enable SSE [autodetect]
463 --enable-sse2 enable SSE2 [autodetect]
464 --enable-ssse3 enable SSSE3 [autodetect]
465 --enable-shm enable shm [autodetect]
466 --enable-altivec enable AltiVec (PowerPC) [autodetect]
467 --enable-armv5te enable DSP extensions (ARM) [autodetect]
468 --enable-armv6 enable ARMv6 (ARM) [autodetect]
469 --enable-armv6t2 enable ARMv6t2 (ARM) [autodetect]
470 --enable-armvfp enable ARM VFP (ARM) [autodetect]
471 --enable-iwmmxt enable iWMMXt (ARM) [autodetect]
472 --disable-fastmemcpy disable 3DNow!/SSE/MMX optimized memcpy [enable]
473 --enable-big-endian force byte order to big-endian [autodetect]
474 --enable-debug[=1-3] compile-in debugging information [disable]
475 --enable-profile compile-in profiling information [disable]
476 --disable-sighandler disable sighandler for crashes [enable]
477 --enable-crash-debug enable automatic gdb attach on crash [disable]
478 --enable-dynamic-plugins enable dynamic A/V plugins [disable]
480 Use these options if autodetection fails:
481 --extra-cflags=FLAGS extra CFLAGS
482 --extra-ldflags=FLAGS extra LDFLAGS
483 --extra-libs=FLAGS extra linker flags
484 --extra-libs-mplayer=FLAGS extra linker flags for MPlayer
485 --extra-libs-mencoder=FLAGS extra linker flags for MEncoder
486 --with-xvmclib=NAME adapter-specific library name (e.g. XvMCNVIDIA)
488 --with-freetype-config=PATH path to freetype-config
489 --with-fribidi-config=PATH path to fribidi-config
490 --with-glib-config=PATH path to glib*-config
491 --with-gtk-config=PATH path to gtk*-config
492 --with-sdl-config=PATH path to sdl*-config
493 --with-dvdnav-config=PATH path to dvdnav-config
494 --with-dvdread-config=PATH path to dvdread-config
496 This configure script is NOT autoconf-based, even though its output is similar.
497 It will try to autodetect all configuration options. If you --enable an option
498 it will be forcefully turned on, skipping autodetection. This can break
499 compilation, so you need to know what you are doing.
504 # GOTCHA: the variables below defines the default behavior for autodetection
505 # and have - unless stated otherwise - at least 2 states : yes no
506 # If autodetection is available then the third state is: auto
528 test "$CC" && _cc
="$CC"
532 _runtime_cpudetection
=no
540 _libavdecoders_all
=$
(sed -n 's/^[^#]*DEC.*(.*, *\(.*\)).*/\1_decoder/p' libavcodec
/allcodecs.c |
tr '[a-z]' '[A-Z]')
541 _libavdecoders
=$
(echo $_libavdecoders_all |
sed -e 's/ LIB[A-Z0-9_]*_DECODER//g' -e s
/MPEG4AAC_DECODER
//)
542 _libavencoders_all
=$
(sed -n 's/^[^#]*ENC.*(.*, *\(.*\)).*/\1_encoder/p' libavcodec
/allcodecs.c |
tr '[a-z]' '[A-Z]')
543 _libavencoders
=$
(echo $_libavencoders_all |
sed 's/ LIB[A-Z0-9_]*_ENCODER//g')
544 _libavparsers_all
=$
(sed -n 's/^[^#]*PARSER.*(.*, *\(.*\)).*/\1_parser/p' libavcodec
/allcodecs.c |
tr '[a-z]' '[A-Z]')
545 _libavparsers
=$_libavparsers_all
546 _libavbsfs_all
=$
(sed -n 's/^[^#]*BSF.*(.*, *\(.*\)).*/\1_bsf/p' libavcodec
/allcodecs.c |
tr '[a-z]' '[A-Z]')
547 _libavbsfs
=$_libavbsfs_all
548 _libavdemuxers_all
=$
(sed -n 's/^[^#]*DEMUX.*(.*, *\(.*\)).*/\1_demuxer/p' libavformat
/allformats.c |
tr '[a-z]' '[A-Z]')
549 _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
//)
550 _libavmuxers_all
=$
(sed -n 's/^[^#]*_MUX.*(.*, *\(.*\)).*/\1_muxer/p' libavformat
/allformats.c |
tr '[a-z]' '[A-Z]')
551 _libavmuxers
=$
(echo $_libavmuxers_all |
sed -e 's/ LIB[A-Z0-9_]*_MUXER//g' -e s
/RTP_MUXER
//)
552 _libavprotocols_all
=$
(sed -n 's/^[^#]*PROTOCOL.*(.*, *\(.*\)).*/\1_protocol/p' libavformat
/allformats.c |
tr '[a-z]' '[A-Z]')
560 _libavcodec_mpegaudio_hp
=yes
569 _xvmc
=no
#auto when complete
623 _liba52_internal
=auto
636 _dvdnavconfig
=dvdnav-config
637 _dvdreadconfig
=dvdread-config
639 _dvdread_internal
=auto
640 _libdvdcss_internal
=auto
651 _mlib
=no
#broken, thus disabled
684 _libschroedinger_lavc
=auto
728 _freetypeconfig
='freetype-config'
730 _fribidiconfig
='fribidi-config'
744 def_dos_paths
="#define HAVE_DOS_PATHS 0"
745 def_stream_cache
="#define CONFIG_STREAM_CACHE 1"
746 def_priority
="#undef CONFIG_PRIORITY"
747 def_pthread_cache
="#undef PTHREAD_CACHE"
755 _prefix
=$
(echo $ac_option | cut
-d '=' -f 2)
758 _bindir
=$
(echo $ac_option | cut
-d '=' -f 2)
761 _datadir
=$
(echo $ac_option | cut
-d '=' -f 2)
764 _mandir
=$
(echo $ac_option | cut
-d '=' -f 2)
767 _confdir
=$
(echo $ac_option | cut
-d '=' -f 2)
770 _libdir
=$
(echo $ac_option | cut
-d '=' -f 2)
773 _codecsdir
=$
(echo $ac_option | cut
-d '=' -f 2)
776 _win32codecsdir
=$
(echo $ac_option | cut
-d '=' -f 2)
779 _xanimcodecsdir
=$
(echo $ac_option | cut
-d '=' -f 2)
782 _realcodecsdir
=$
(echo $ac_option | cut
-d '=' -f 2)
786 _install
=$
(echo $ac_option | cut
-d '=' -f 2 )
789 _xvmclib
=$
(echo $ac_option | cut
-d '=' -f 2)
793 _sdlconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
795 --with-freetype-config=*)
796 _freetypeconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
798 --with-fribidi-config=*)
799 _fribidiconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
802 _gtkconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
804 --with-glib-config=*)
805 _glibconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
807 --with-dvdnav-config=*)
808 _dvdnavconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
810 --with-dvdread-config=*)
811 _dvdreadconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
815 extra_cflags
=$
(echo $ac_option | cut
-d '=' -f 2-)
818 extra_ldflags
=$
(echo $ac_option | cut
-d '=' -f 2-)
821 extra_libs
=$
(echo $ac_option | cut
-d '=' -f 2)
823 --extra-libs-mplayer=*)
824 libs_mplayer
=$
(echo $ac_option | cut
-d '=' -f 2)
826 --extra-libs-mencoder=*)
827 libs_mencoder
=$
(echo $ac_option | cut
-d '=' -f 2)
831 _target
=$
(echo $ac_option | cut
-d '=' -f 2)
834 _cc
=$
(echo $ac_option | cut
-d '=' -f 2)
837 _host_cc
=$
(echo $ac_option | cut
-d '=' -f 2)
840 _as
=$
(echo $ac_option | cut
-d '=' -f 2)
843 _nm
=$
(echo $ac_option | cut
-d '=' -f 2)
846 _yasm
=$
(echo $ac_option | cut
-d '=' -f 2)
849 _ar
=$
(echo $ac_option | cut
-d '=' -f 2)
852 _ranlib
=$
(echo $ac_option | cut
-d '=' -f 2)
855 _windres
=$
(echo $ac_option | cut
-d '=' -f 2)
858 _charset
=$
(echo $ac_option | cut
-d '=' -f 2)
861 language_doc
=$
(echo $ac_option | cut
-d '=' -f 2)
864 language_man
=$
(echo $ac_option | cut
-d '=' -f 2)
867 language_msg
=$
(echo $ac_option | cut
-d '=' -f 2)
870 language
=$
(echo $ac_option | cut
-d '=' -f 2)
889 _debug
=$
(echo $_echo_n '-g'$_echo_c; echo $ac_option | cut
-d '=' -f 2)
894 --enable-runtime-cpudetection) _runtime_cpudetection
=yes ;;
895 --disable-runtime-cpudetection) _runtime_cpudetection
=no
;;
896 --enable-cross-compile) _cross_compile
=yes ;;
897 --disable-cross-compile) _cross_compile
=no
;;
898 --enable-mencoder) _mencoder
=yes ;;
899 --disable-mencoder) _mencoder
=no
;;
900 --enable-mplayer) _mplayer
=yes ;;
901 --disable-mplayer) _mplayer
=no
;;
902 --enable-dynamic-plugins) _dynamic_plugins
=yes ;;
903 --disable-dynamic-plugins) _dynamic_plugins
=no
;;
904 --enable-x11) _x11
=yes ;;
905 --disable-x11) _x11
=no
;;
906 --enable-xshape) _xshape
=yes ;;
907 --disable-xshape) _xshape
=no
;;
908 --enable-xss) _xss
=yes ;;
909 --disable-xss) _xss
=no
;;
910 --enable-xv) _xv
=yes ;;
911 --disable-xv) _xv
=no
;;
912 --enable-xvmc) _xvmc
=yes ;;
913 --disable-xvmc) _xvmc
=no
;;
914 --enable-vdpau) _vdpau
=yes ;;
915 --disable-vdpau) _vdpau
=no
;;
916 --enable-sdl) _sdl
=yes ;;
917 --disable-sdl) _sdl
=no
;;
918 --enable-kva) _kva
=yes ;;
919 --disable-kva) _kva
=no
;;
920 --enable-direct3d) _direct3d
=yes ;;
921 --disable-direct3d) _direct3d
=no
;;
922 --enable-directx) _directx
=yes ;;
923 --disable-directx) _directx
=no
;;
924 --enable-win32waveout) _win32waveout
=yes ;;
925 --disable-win32waveout) _win32waveout
=no
;;
926 --enable-nas) _nas
=yes ;;
927 --disable-nas) _nas
=no
;;
928 --enable-png) _png
=yes ;;
929 --disable-png) _png
=no
;;
930 --enable-mng) _mng
=yes ;;
931 --disable-mng) _mng
=no
;;
932 --enable-jpeg) _jpeg
=yes ;;
933 --disable-jpeg) _jpeg
=no
;;
934 --enable-pnm) _pnm
=yes ;;
935 --disable-pnm) _pnm
=no
;;
936 --enable-md5sum) _md5sum
=yes ;;
937 --disable-md5sum) _md5sum
=no
;;
938 --enable-yuv4mpeg) _yuv4mpeg
=yes ;;
939 --disable-yuv4mpeg) _yuv4mpeg
=no
;;
940 --enable-gif) _gif
=yes ;;
941 --disable-gif) _gif
=no
;;
942 --enable-gl) _gl
=yes ;;
943 --disable-gl) _gl
=no
;;
944 --enable-ggi) _ggi
=yes ;;
945 --disable-ggi) _ggi
=no
;;
946 --enable-ggiwmh) _ggiwmh
=yes ;;
947 --disable-ggiwmh) _ggiwmh
=no
;;
948 --enable-aa) _aa
=yes ;;
949 --disable-aa) _aa
=no
;;
950 --enable-caca) _caca
=yes ;;
951 --disable-caca) _caca
=no
;;
952 --enable-svga) _svga
=yes ;;
953 --disable-svga) _svga
=no
;;
954 --enable-vesa) _vesa
=yes ;;
955 --disable-vesa) _vesa
=no
;;
956 --enable-fbdev) _fbdev
=yes ;;
957 --disable-fbdev) _fbdev
=no
;;
958 --enable-dvb) _dvb
=yes ;;
959 --disable-dvb) _dvb
=no
;;
960 --enable-dvbhead) _dvbhead
=yes ;;
961 --disable-dvbhead) _dvbhead
=no
;;
962 --enable-dxr2) _dxr2
=yes ;;
963 --disable-dxr2) _dxr2
=no
;;
964 --enable-dxr3) _dxr3
=yes ;;
965 --disable-dxr3) _dxr3
=no
;;
966 --enable-ivtv) _ivtv
=yes ;;
967 --disable-ivtv) _ivtv
=no
;;
968 --enable-v4l2) _v4l2
=yes ;;
969 --disable-v4l2) _v4l2
=no
;;
970 --enable-iconv) _iconv
=yes ;;
971 --disable-iconv) _iconv
=no
;;
972 --enable-langinfo) _langinfo
=yes ;;
973 --disable-langinfo) _langinfo
=no
;;
974 --enable-rtc) _rtc
=yes ;;
975 --disable-rtc) _rtc
=no
;;
976 --enable-libdv) _libdv
=yes ;;
977 --disable-libdv) _libdv
=no
;;
978 --enable-ossaudio) _ossaudio
=yes ;;
979 --disable-ossaudio) _ossaudio
=no
;;
980 --enable-arts) _arts
=yes ;;
981 --disable-arts) _arts
=no
;;
982 --enable-esd) _esd
=yes ;;
983 --disable-esd) _esd
=no
;;
984 --enable-pulse) _pulse
=yes ;;
985 --disable-pulse) _pulse
=no
;;
986 --enable-jack) _jack
=yes ;;
987 --disable-jack) _jack
=no
;;
988 --enable-openal) _openal
=yes ;;
989 --disable-openal) _openal
=no
;;
990 --enable-dart) _dart
=yes ;;
991 --disable-dart) _dart
=no
;;
992 --enable-mad) _mad
=yes ;;
993 --disable-mad) _mad
=no
;;
994 --enable-mp3lame) _mp3lame
=yes ;;
995 --disable-mp3lame) _mp3lame
=no
;;
996 --enable-mp3lame-lavc) _mp3lame_lavc
=yes ;;
997 --disable-mp3lame-lavc) _mp3lame_lavc
=no
;;
998 --enable-toolame) _toolame
=yes ;;
999 --disable-toolame) _toolame
=no
;;
1000 --enable-twolame) _twolame
=yes ;;
1001 --disable-twolame) _twolame
=no
;;
1002 --enable-libcdio) _libcdio
=yes ;;
1003 --disable-libcdio) _libcdio
=no
;;
1004 --enable-liblzo) _liblzo
=yes ;;
1005 --disable-liblzo) _liblzo
=no
;;
1006 --enable-libvorbis) _libvorbis
=yes ;;
1007 --disable-libvorbis) _libvorbis
=no
;;
1008 --enable-speex) _speex
=yes ;;
1009 --disable-speex) _speex
=no
;;
1010 --enable-tremor) _tremor
=yes ;;
1011 --disable-tremor) _tremor
=no
;;
1012 --enable-tremor-internal) _tremor_internal
=yes ;;
1013 --disable-tremor-internal) _tremor_internal
=no
;;
1014 --enable-tremor-low) _tremor_low
=yes ;;
1015 --disable-tremor-low) _tremor_low
=no
;;
1016 --enable-theora) _theora
=yes ;;
1017 --disable-theora) _theora
=no
;;
1018 --enable-mp3lib) _mp3lib
=yes ;;
1019 --disable-mp3lib) _mp3lib
=no
;;
1020 --enable-liba52-internal) _liba52_internal
=yes ;;
1021 --disable-liba52-internal) _liba52_internal
=no
;;
1022 --enable-liba52) _liba52
=yes ;;
1023 --disable-liba52) _liba52
=no
;;
1024 --enable-libdca) _libdca
=yes ;;
1025 --disable-libdca) _libdca
=no
;;
1026 --enable-libmpeg2) _libmpeg2
=yes ;;
1027 --disable-libmpeg2) _libmpeg2
=no
;;
1028 --enable-musepack) _musepack
=yes ;;
1029 --disable-musepack) _musepack
=no
;;
1030 --enable-faad) _faad
=yes ;;
1031 --disable-faad) _faad
=no
;;
1032 --enable-faad-internal) _faad_internal
=yes ;;
1033 --disable-faad-internal) _faad_internal
=no
;;
1034 --enable-faad-fixed) _faad_fixed
=yes ;;
1035 --disable-faad-fixed) _faad_fixed
=no
;;
1036 --enable-faac) _faac
=yes ;;
1037 --disable-faac) _faac
=no
;;
1038 --enable-faac-lavc) _faac_lavc
=yes ;;
1039 --disable-faac-lavc) _faac_lavc
=no
;;
1040 --enable-ladspa) _ladspa
=yes ;;
1041 --disable-ladspa) _ladspa
=no
;;
1042 --enable-libbs2b) _libbs2b
=yes ;;
1043 --disable-libbs2b) _libbs2b
=no
;;
1044 --enable-xmms) _xmms
=yes ;;
1045 --disable-xmms) _xmms
=no
;;
1046 --enable-vcd) _vcd
=yes ;;
1047 --disable-vcd) _vcd
=no
;;
1048 --enable-dvdread) _dvdread
=yes ;;
1049 --disable-dvdread) _dvdread
=no
;;
1050 --enable-dvdread-internal) _dvdread_internal
=yes ;;
1051 --disable-dvdread-internal) _dvdread_internal
=no
;;
1052 --enable-libdvdcss-internal) _libdvdcss_internal
=yes ;;
1053 --disable-libdvdcss-internal) _libdvdcss_internal
=no
;;
1054 --enable-dvdnav) _dvdnav
=yes ;;
1055 --disable-dvdnav) _dvdnav
=no
;;
1056 --enable-xanim) _xanim
=yes ;;
1057 --disable-xanim) _xanim
=no
;;
1058 --enable-real) _real
=yes ;;
1059 --disable-real) _real
=no
;;
1060 --enable-live) _live
=yes ;;
1061 --disable-live) _live
=no
;;
1062 --enable-nemesi) _nemesi
=yes ;;
1063 --disable-nemesi) _nemesi
=no
;;
1064 --enable-xinerama) _xinerama
=yes ;;
1065 --disable-xinerama) _xinerama
=no
;;
1066 --enable-mga) _mga
=yes ;;
1067 --disable-mga) _mga
=no
;;
1068 --enable-xmga) _xmga
=yes ;;
1069 --disable-xmga) _xmga
=no
;;
1070 --enable-vm) _vm
=yes ;;
1071 --disable-vm) _vm
=no
;;
1072 --enable-xf86keysym) _xf86keysym
=yes ;;
1073 --disable-xf86keysym) _xf86keysym
=no
;;
1074 --enable-mlib) _mlib
=yes ;;
1075 --disable-mlib) _mlib
=no
;;
1076 --enable-sunaudio) _sunaudio
=yes ;;
1077 --disable-sunaudio) _sunaudio
=no
;;
1078 --enable-sgiaudio) _sgiaudio
=yes ;;
1079 --disable-sgiaudio) _sgiaudio
=no
;;
1080 --enable-alsa) _alsa
=yes ;;
1081 --disable-alsa) _alsa
=no
;;
1082 --enable-tv) _tv
=yes ;;
1083 --disable-tv) _tv
=no
;;
1084 --enable-tv-bsdbt848) _tv_bsdbt848
=yes ;;
1085 --disable-tv-bsdbt848) _tv_bsdbt848
=no
;;
1086 --enable-tv-v4l1) _tv_v4l1
=yes ;;
1087 --disable-tv-v4l1) _tv_v4l1
=no
;;
1088 --enable-tv-v4l2) _tv_v4l2
=yes ;;
1089 --disable-tv-v4l2) _tv_v4l2
=no
;;
1090 --enable-tv-dshow) _tv_dshow
=yes ;;
1091 --disable-tv-dshow) _tv_dshow
=no
;;
1092 --enable-tv-teletext) _tv_teletext
=yes ;;
1093 --disable-tv-teletext) _tv_teletext
=no
;;
1094 --enable-radio) _radio
=yes ;;
1095 --enable-radio-capture) _radio_capture
=yes ;;
1096 --disable-radio-capture) _radio_capture
=no
;;
1097 --disable-radio) _radio
=no
;;
1098 --enable-radio-v4l) _radio_v4l
=yes ;;
1099 --disable-radio-v4l) _radio_v4l
=no
;;
1100 --enable-radio-v4l2) _radio_v4l2
=yes ;;
1101 --disable-radio-v4l2) _radio_v4l2
=no
;;
1102 --enable-radio-bsdbt848) _radio_bsdbt848
=yes ;;
1103 --disable-radio-bsdbt848) _radio_bsdbt848
=no
;;
1104 --enable-pvr) _pvr
=yes ;;
1105 --disable-pvr) _pvr
=no
;;
1106 --enable-fastmemcpy) _fastmemcpy
=yes ;;
1107 --disable-fastmemcpy) _fastmemcpy
=no
;;
1108 --enable-network) _network
=yes ;;
1109 --disable-network) _network
=no
;;
1110 --enable-winsock2_h) _winsock2_h
=yes ;;
1111 --disable-winsock2_h) _winsock2_h
=no
;;
1112 --enable-smb) _smb
=yes ;;
1113 --disable-smb) _smb
=no
;;
1114 --enable-vidix) _vidix
=yes ;;
1115 --disable-vidix) _vidix
=no
;;
1116 --with-vidix-drivers=*)
1117 _vidix_drivers
=$
(echo $ac_option | cut
-d '=' -f 2)
1119 --disable-vidix-pcidb) _vidix_pcidb
=no
;;
1120 --enable-dhahelper) _dhahelper
=yes ;;
1121 --disable-dhahelper) _dhahelper
=no
;;
1122 --enable-svgalib_helper) _svgalib_helper
=yes ;;
1123 --disable-svgalib_helper) _svgalib_helper
=no
;;
1124 --enable-joystick) _joystick
=yes ;;
1125 --disable-joystick) _joystick
=no
;;
1126 --enable-xvid) _xvid
=yes ;;
1127 --disable-xvid) _xvid
=no
;;
1128 --enable-xvid-lavc) _xvid_lavc
=yes ;;
1129 --disable-xvid-lavc) _xvid_lavc
=no
;;
1130 --enable-x264) _x264
=yes ;;
1131 --disable-x264) _x264
=no
;;
1132 --enable-x264-lavc) _x264_lavc
=yes ;;
1133 --disable-x264-lavc) _x264_lavc
=no
;;
1134 --enable-libdirac-lavc) _libdirac_lavc
=yes ;;
1135 --disable-libdirac-lavc) _libdirac_lavc
=no
;;
1136 --enable-libschroedinger-lavc) _libschroedinger_lavc
=yes ;;
1137 --disable-libschroedinger-lavc) _libschroedinger_lavc
=no
;;
1138 --enable-libnut) _libnut
=yes ;;
1139 --disable-libnut) _libnut
=no
;;
1140 --enable-libavutil_a) _libavutil_a
=yes ;;
1141 --disable-libavutil_a) _libavutil_a
=no
;;
1142 --enable-libavutil_so) _libavutil_so
=yes ;;
1143 --disable-libavutil_so) _libavutil_so
=no
;;
1144 --enable-libavcodec_a) _libavcodec_a
=yes ;;
1145 --disable-libavcodec_a) _libavcodec_a
=no
;;
1146 --enable-libavcodec_so) _libavcodec_so
=yes ;;
1147 --disable-libavcodec_so) _libavcodec_so
=no
;;
1148 --enable-libamr_nb) _libamr_nb
=yes ;;
1149 --disable-libamr_nb) _libamr_nb
=no
;;
1150 --enable-libamr_wb) _libamr_wb
=yes ;;
1151 --disable-libamr_wb) _libamr_wb
=no
;;
1152 --enable-decoder=*) _libavdecoders
="$_libavdecoders $(echo $ac_option | cut -d '=' -f 2)" ;;
1153 --disable-decoder=*) _libavdecoders
=$
(echo $_libavdecoders |
sed "s/$(echo $ac_option | cut -d '=' -f 2)//g") ;;
1154 --enable-encoder=*) _libavencoders
="$_libavencoders $(echo $ac_option | cut -d '=' -f 2)" ;;
1155 --disable-encoder=*) _libavencoders
=$
(echo $_libavencoders |
sed "s/$(echo $ac_option | cut -d '=' -f 2)//g") ;;
1156 --enable-parser=*) _libavparsers
="$_libavparsers $(echo $ac_option | cut -d '=' -f 2)" ;;
1157 --disable-parser=*) _libavparsers
=$
(echo $_libavparsers |
sed "s/$(echo $ac_option | cut -d '=' -f 2)//g") ;;
1158 --enable-demuxer=*) _libavdemuxers
="$_libavdemuxers $(echo $ac_option | cut -d '=' -f 2)" ;;
1159 --disable-demuxer=*) _libavdemuxers
=$
(echo $_libavdemuxers |
sed "s/$(echo $ac_option | cut -d '=' -f 2)//g") ;;
1160 --enable-muxer=*) _libavmuxers
="$_libavmuxers $(echo $ac_option | cut -d '=' -f 2)" ;;
1161 --disable-muxer=*) _libavmuxers
=$
(echo $_libavmuxers |
sed "s/$(echo $ac_option | cut -d '=' -f 2)//g") ;;
1162 --enable-libavformat_a) _libavformat_a
=yes ;;
1163 --disable-libavformat_a) _libavformat_a
=no
;;
1164 --enable-libavformat_so) _libavformat_so
=yes ;;
1165 --disable-libavformat_so) _libavformat_so
=no
;;
1166 --enable-libpostproc_a) _libpostproc_a
=yes ;;
1167 --disable-libpostproc_a) _libpostproc_a
=no
;;
1168 --enable-libpostproc_so) _libpostproc_so
=yes ;;
1169 --disable-libpostproc_so) _libpostproc_so
=no
;;
1170 --enable-libswscale_a) _libswscale_a
=yes ;;
1171 --disable-libswscale_a) _libswscale_a
=no
;;
1172 --enable-libswscale_so) _libswscale_so
=yes ;;
1173 --disable-libswscale_so) _libswscale_so
=no
;;
1174 --enable-libavcodec_mpegaudio_hp) _libavcodec_mpegaudio_hp
=yes ;;
1175 --disable-libavcodec_mpegaudio_hp) _libavcodec_mpegaudio_hp
=no
;;
1177 --enable-lirc) _lirc
=yes ;;
1178 --disable-lirc) _lirc
=no
;;
1179 --enable-lircc) _lircc
=yes ;;
1180 --disable-lircc) _lircc
=no
;;
1181 --enable-apple-remote) _apple_remote
=yes ;;
1182 --disable-apple-remote) _apple_remote
=no
;;
1183 --enable-apple-ir) _apple_ir
=yes ;;
1184 --disable-apple-ir) _apple_ir
=no
;;
1185 --enable-gui) _gui
=yes ;;
1186 --disable-gui) _gui
=no
;;
1187 --enable-gtk1) _gtk1
=yes ;;
1188 --disable-gtk1) _gtk1
=no
;;
1189 --enable-termcap) _termcap
=yes ;;
1190 --disable-termcap) _termcap
=no
;;
1191 --enable-termios) _termios
=yes ;;
1192 --disable-termios) _termios
=no
;;
1193 --enable-3dfx) _3dfx
=yes ;;
1194 --disable-3dfx) _3dfx
=no
;;
1195 --enable-s3fb) _s3fb
=yes ;;
1196 --disable-s3fb) _s3fb
=no
;;
1197 --enable-wii) _wii
=yes ;;
1198 --disable-wii) _wii
=no
;;
1199 --enable-tdfxfb) _tdfxfb
=yes ;;
1200 --disable-tdfxfb) _tdfxfb
=no
;;
1201 --disable-tdfxvid) _tdfxvid
=no
;;
1202 --enable-tdfxvid) _tdfxvid
=yes ;;
1203 --disable-xvr100) _xvr100
=no
;;
1204 --enable-xvr100) _xvr100
=yes ;;
1205 --disable-tga) _tga
=no
;;
1206 --enable-tga) _tga
=yes ;;
1207 --enable-directfb) _directfb
=yes ;;
1208 --disable-directfb) _directfb
=no
;;
1209 --enable-zr) _zr
=yes ;;
1210 --disable-zr) _zr
=no
;;
1211 --enable-bl) _bl
=yes ;;
1212 --disable-bl) _bl
=no
;;
1213 --enable-mtrr) _mtrr
=yes ;;
1214 --disable-mtrr) _mtrr
=no
;;
1215 --enable-largefiles) _largefiles
=yes ;;
1216 --disable-largefiles) _largefiles
=no
;;
1217 --enable-shm) _shm
=yes ;;
1218 --disable-shm) _shm
=no
;;
1219 --enable-select) _select
=yes ;;
1220 --disable-select) _select
=no
;;
1221 --enable-linux-devfs) _linux_devfs
=yes ;;
1222 --disable-linux-devfs) _linux_devfs
=no
;;
1223 --enable-cdparanoia) _cdparanoia
=yes ;;
1224 --disable-cdparanoia) _cdparanoia
=no
;;
1225 --enable-cddb) _cddb
=yes ;;
1226 --disable-cddb) _cddb
=no
;;
1227 --enable-big-endian) _big_endian
=yes ;;
1228 --disable-big-endian) _big_endian
=no
;;
1229 --enable-bitmap-font) _bitmap_font
=yes ;;
1230 --disable-bitmap-font) _bitmap_font
=no
;;
1231 --enable-freetype) _freetype
=yes ;;
1232 --disable-freetype) _freetype
=no
;;
1233 --enable-fontconfig) _fontconfig
=yes ;;
1234 --disable-fontconfig) _fontconfig
=no
;;
1235 --enable-unrarexec) _unrar_exec
=yes ;;
1236 --disable-unrarexec) _unrar_exec
=no
;;
1237 --enable-ftp) _ftp
=yes ;;
1238 --disable-ftp) _ftp
=no
;;
1239 --enable-vstream) _vstream
=yes ;;
1240 --disable-vstream) _vstream
=no
;;
1241 --enable-pthreads) _pthreads
=yes ;;
1242 --disable-pthreads) _pthreads
=no
;;
1243 --enable-w32threads) _w32threads
=yes ;;
1244 --disable-w32threads) _w32threads
=no
;;
1245 --enable-ass) _ass
=yes ;;
1246 --disable-ass) _ass
=no
;;
1247 --enable-rpath) _rpath
=yes ;;
1248 --disable-rpath) _rpath
=no
;;
1250 --enable-fribidi) _fribidi
=yes ;;
1251 --disable-fribidi) _fribidi
=no
;;
1253 --enable-enca) _enca
=yes ;;
1254 --disable-enca) _enca
=no
;;
1256 --enable-inet6) _inet6
=yes ;;
1257 --disable-inet6) _inet6
=no
;;
1259 --enable-gethostbyname2) _gethostbyname2
=yes ;;
1260 --disable-gethostbyname2) _gethostbyname2
=no
;;
1262 --enable-dga1) _dga1
=yes ;;
1263 --disable-dga1) _dga1
=no
;;
1264 --enable-dga2) _dga2
=yes ;;
1265 --disable-dga2) _dga2
=no
;;
1267 --enable-menu) _menu
=yes ;;
1268 --disable-menu) _menu
=no
;;
1270 --enable-qtx) _qtx
=yes ;;
1271 --disable-qtx) _qtx
=no
;;
1273 --enable-coreaudio) _coreaudio
=yes ;;
1274 --disable-coreaudio) _coreaudio
=no
;;
1275 --enable-corevideo) _corevideo
=yes ;;
1276 --disable-corevideo) _corevideo
=no
;;
1277 --enable-quartz) _quartz
=yes ;;
1278 --disable-quartz) _quartz
=no
;;
1279 --enable-macosx-finder) _macosx_finder
=yes ;;
1280 --disable-macosx-finder) _macosx_finder
=no
;;
1281 --enable-macosx-bundle) _macosx_bundle
=yes;;
1282 --disable-macosx-bundle) _macosx_bundle
=no
;;
1284 --enable-maemo) _maemo
=yes ;;
1285 --disable-maemo) _maemo
=no
;;
1287 --enable-sortsub) _sortsub
=yes ;;
1288 --disable-sortsub) _sortsub
=no
;;
1290 --enable-crash-debug) _crash_debug
=yes ;;
1291 --disable-crash-debug) _crash_debug
=no
;;
1292 --enable-sighandler) _sighandler
=yes ;;
1293 --disable-sighandler) _sighandler
=no
;;
1294 --enable-win32dll) _win32dll
=yes ;;
1295 --disable-win32dll) _win32dll
=no
;;
1297 --enable-sse) _sse
=yes ;;
1298 --disable-sse) _sse
=no
;;
1299 --enable-sse2) _sse2
=yes ;;
1300 --disable-sse2) _sse2
=no
;;
1301 --enable-ssse3) _ssse3
=yes ;;
1302 --disable-ssse3) _ssse3
=no
;;
1303 --enable-mmxext) _mmxext
=yes ;;
1304 --disable-mmxext) _mmxext
=no
;;
1305 --enable-3dnow) _3dnow
=yes ;;
1306 --disable-3dnow) _3dnow
=no _3dnowext
=no
;;
1307 --enable-3dnowext) _3dnow
=yes _3dnowext
=yes ;;
1308 --disable-3dnowext) _3dnowext
=no
;;
1309 --enable-cmov) _cmov
=yes ;;
1310 --disable-cmov) _cmov
=no
;;
1311 --enable-fast-cmov) _fast_cmov
=yes ;;
1312 --disable-fast-cmov) _fast_cmov
=no
;;
1313 --enable-altivec) _altivec
=yes ;;
1314 --disable-altivec) _altivec
=no
;;
1315 --enable-armv5te) _armv5te
=yes ;;
1316 --disable-armv5te) _armv5te
=no
;;
1317 --enable-armv6) _armv6
=yes ;;
1318 --disable-armv6) _armv6
=no
;;
1319 --enable-armv6t2) _armv6t2
=yes ;;
1320 --disable-armv6t2) _armv6t2
=no
;;
1321 --enable-armvfp) _armvfp
=yes ;;
1322 --disable-armvfp) _armvfp
=no
;;
1323 --enable-iwmmxt) _iwmmxt
=yes ;;
1324 --disable-iwmmxt) _iwmmxt
=no
;;
1325 --enable-mmx) _mmx
=yes ;;
1326 --disable-mmx) # 3Dnow! and MMX2 require MMX
1327 _3dnow
=no _3dnowext
=no _mmx
=no _mmxext
=no
;;
1330 echo "Unknown parameter: $ac_option"
1337 # Atmos: moved this here, to be correct, if --prefix is specified
1338 test -z "$_bindir" && _bindir
="$_prefix/bin"
1339 test -z "$_datadir" && _datadir
="$_prefix/share/mplayer"
1340 test -z "$_mandir" && _mandir
="$_prefix/share/man"
1341 test -z "$_confdir" && _confdir
="$_prefix/etc/mplayer"
1342 test -z "$_libdir" && _libdir
="$_prefix/lib"
1344 # Determine our OS name and CPU architecture
1345 if test -z "$_target" ; then
1347 system_name
=$
(uname
-s 2>&1)
1348 case "$system_name" in
1349 Linux|FreeBSD|NetBSD|OpenBSD|DragonFly|BSD
/OS|Darwin|SunOS|QNX|GNU|BeOS|MorphOS|AIX|AmigaOS
)
1360 [cC
][yY
][gG
][wW
][iI
][nN
]*)
1370 system_name
="$system_name-UNKNOWN"
1375 # host's CPU/instruction set
1376 host_arch
=$
(uname
-p 2>&1)
1377 case "$host_arch" in
1378 i386|sparc|ppc|alpha|arm|mips|vax
)
1380 powerpc
) # Darwin returns 'powerpc'
1383 *) # uname -p on Linux returns 'unknown' for the processor type,
1384 # OpenBSD returns 'Intel Pentium/MMX ("Genuine Intel" 586-class)'
1386 # Maybe uname -m (machine hardware name) returns something we
1389 # x86/x86pc is used by QNX
1390 case "$(uname -m 2>&1)" in
1391 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
;;
1392 ia64
) host_arch
=ia64
;;
1394 if [ -n "$($_cc -dumpmachine | sed -n '/^x86_64-/p;/^amd64-/p')" -a \
1395 -z "$(echo $CFLAGS $_cc | grep -- -m32)" ]; then
1401 macppc|ppc
) host_arch
=ppc
;;
1402 ppc64
) host_arch
=ppc64
;;
1403 alpha
) host_arch
=alpha
;;
1404 sparc
) host_arch
=sparc
;;
1405 sparc64
) host_arch
=sparc64
;;
1406 parisc
*|hppa
*|
9000*) host_arch
=hppa
;;
1407 arm
*|zaurus|cats
) host_arch
=arm
;;
1408 sh3|sh4|sh4a
) host_arch
=sh
;;
1409 s390
) host_arch
=s390
;;
1410 s390x
) host_arch
=s390x
;;
1411 mips
*) host_arch
=mips
;;
1412 vax
) host_arch
=vax
;;
1413 xtensa
*) host_arch
=xtensa
;;
1414 *) host_arch
=UNKNOWN
;;
1418 else # if test -z "$_target"
1419 system_name
=$
(echo $_target | cut
-d '-' -f 2)
1420 case "$(echo $system_name | tr A-Z a-z)" in
1421 linux
) system_name
=Linux
;;
1422 freebsd
) system_name
=FreeBSD
;;
1423 gnu
/kfreebsd
) system_name
=FreeBSD
;;
1424 netbsd
) system_name
=NetBSD
;;
1425 bsd
/os
) system_name
=BSD
/OS
;;
1426 openbsd
) system_name
=OpenBSD
;;
1427 dragonfly
) system_name
=DragonFly
;;
1428 sunos
) system_name
=SunOS
;;
1429 qnx
) system_name
=QNX
;;
1430 morphos
) system_name
=MorphOS
;;
1431 amigaos
) system_name
=AmigaOS
;;
1432 mingw32msvc
) system_name
=MINGW32
;;
1434 # We need to convert underscores so that values like k6-2 and pentium-mmx can be passed
1435 host_arch
=$
(echo $_target | cut
-d '-' -f 1)
1436 if test $
(echo $host_arch) != "x86_64" ; then
1437 host_arch
=$
(echo $host_arch |
tr '_' '-')
1441 echo "Detected operating system: $system_name"
1442 echo "Detected host architecture: $host_arch"
1444 if test "$_runtime_cpudetection" = yes && ! x86
&& ! ppc
; then
1445 die
"Runtime CPU detection only works for x86, x86-64 and PPC!"
1449 extra_cflags
="-I. $extra_cflags"
1450 _timer
=timer-linux.c
1453 extra_ldflags
="$extra_ldflags -L/usr/local/lib"
1454 extra_cflags
="$extra_cflags -I/usr/local/include"
1457 if netbsd || dragonfly
; then
1458 extra_ldflags
="$extra_ldflags -L/usr/pkg/lib"
1459 extra_cflags
="$extra_cflags -I/usr/pkg/include"
1463 extra_cflags
="-mdynamic-no-pic -falign-loops=16 -shared-libgcc $extra_cflags"
1464 _timer
=timer-darwin.c
1468 extra_ldflags
="$extra_ldflags -lC"
1479 # -lwinmm is always needed for osdep/timer-win2.c
1480 extra_ldflags
="$extra_ldflags -lwinmm"
1484 def_dos_paths
="#define HAVE_DOS_PATHS 1"
1485 def_priority
="#define CONFIG_PRIORITY 1"
1497 def_stream_cache
="#undef CONFIG_STREAM_CACHE"
1498 extra_cflags
="-DNEWLIB -D__USE_INLINE__ $extra_cflags"
1502 extra_ldflags
="$extra_ldflags -lph"
1510 def_dos_paths
="#define HAVE_DOS_PATHS 1"
1511 def_priority
="#define CONFIG_PRIORITY 1"
1514 for I
in "$TMPDIR" "$TEMPDIR" "/tmp" ; do
1519 TMPLOG
="configure.log"
1520 TMPC
="$I/mplayer-conf-$RANDOM-$$.c"
1521 TMPCPP
="$I/mplayer-conf-$RANDOM-$$.cpp"
1522 TMPEXE
="$I/mplayer-conf-$RANDOM-$$$_exesuf"
1523 TMPH
="$I/mplayer-conf-$RANDOM-$$.h"
1524 TMPS
="$I/mplayer-conf-$RANDOM-$$.S"
1527 echo configuration
: $_configuration > "$TMPLOG"
1531 # Checking CC version...
1532 # Intel C++ Compilers (no autoselect, use CC=/some/binary ./configure)
1533 if test "$(basename $_cc)" = "icc" ||
test "$(basename $_cc)" = "ecc"; then
1534 echocheck
"$_cc version"
1536 cc_name
=$
($_cc -V 2>&1 |
head -n 1 | cut
-d ',' -f 1)
1537 cc_version
=$
($_cc -V 2>&1 |
head -n 1 | cut
-d ',' -f 2 | cut
-d ' ' -f 3)
1538 _cc_major
=$
(echo $cc_version | cut
-d '.' -f 1)
1539 _cc_minor
=$
(echo $cc_version | cut
-d '.' -f 2)
1540 # TODO verify older icc/ecc compatibility
1543 cc_version
="v. ?.??, bad"
1547 cc_version
="$cc_version, ok"
1550 cc_version
="$cc_version, bad"
1554 echores
"$cc_version"
1556 for _cc
in "$_cc" cc gcc
; do
1557 cc_name_tmp
=$
($_cc -v 2>&1 |
tail -n 1 | cut
-d ' ' -f 1)
1558 if test "$cc_name_tmp" = "gcc"; then
1559 cc_name
=$cc_name_tmp
1560 echocheck
"$_cc version"
1562 cc_version
=$
($_cc -dumpversion 2>&1)
1568 _cc_major
=$
(echo $cc_version | cut
-d '.' -f 1)
1569 _cc_minor
=$
(echo $cc_version | cut
-d '.' -f 2)
1570 _cc_mini
=$
(echo $cc_version | cut
-d '.' -f 3)
1573 echores
"$cc_version"
1578 test "$cc_fail" = yes && die
"unsupported compiler version"
1581 test "$_host_cc" || _host_cc
=$_cc
1584 echocheck
"cross compilation"
1585 if test $_cross_compile = auto
; then
1587 int main(void) { return 0; }
1590 cc_check
&& "$TMPEXE" && _cross_compile
=no
1592 echores
$_cross_compile
1594 if test $_cross_compile = yes; then
1602 # now that we know what compiler should be used for compilation, try to find
1603 # out which assembler is used by the $_cc compiler
1604 if test "$_as" = auto
; then
1605 _as
=$
($_cc -print-prog-name=as
)
1606 test -z "$_as" && _as
=as
1609 if test "$_nm" = auto
; then
1610 _nm
=$
($_cc -print-prog-name=nm
)
1611 test -z "$_nm" && _nm
=nm
1614 # XXX: this should be ok..
1617 if test "$_runtime_cpudetection" = no
; then
1619 # Cygwin has /proc/cpuinfo, but only supports Intel CPUs
1620 # FIXME: Remove the cygwin check once AMD CPUs are supported
1621 if test -r /proc
/cpuinfo
&& ! cygwin
; then
1622 # Linux with /proc mounted, extract CPU information from it
1623 _cpuinfo
="cat /proc/cpuinfo"
1624 elif test -r /compat
/linux
/proc
/cpuinfo
&& ! x86_32
; then
1625 # FreeBSD with Linux emulation /proc mounted,
1626 # extract CPU information from it
1627 _cpuinfo
="cat /compat/linux/proc/cpuinfo"
1628 elif darwin
&& ! x86
; then
1629 # use hostinfo on Darwin
1632 # use 'lsattr' on AIX
1633 _cpuinfo
="lsattr -E -l proc0 -a type"
1635 # all other OSes try to extract CPU information from a small helper
1636 # program cpuinfo instead
1637 $_cc -o cpuinfo
$_exesuf cpuinfo.c
1638 _cpuinfo
="./cpuinfo$_exesuf"
1642 # gather more CPU information
1643 pname
=$
($_cpuinfo |
grep 'model name' | cut
-d ':' -f 2 |
head -n 1)
1644 pvendor
=$
($_cpuinfo |
grep 'vendor_id' | cut
-d ':' -f 2 | cut
-d ' ' -f 2 |
head -n 1)
1645 pfamily
=$
($_cpuinfo |
grep 'cpu family' | cut
-d ':' -f 2 | cut
-d ' ' -f 2 |
head -n 1)
1646 pmodel
=$
($_cpuinfo |
grep -v 'model name' |
grep 'model' | cut
-d ':' -f 2 | cut
-d ' ' -f 2 |
head -n 1)
1647 pstepping
=$
($_cpuinfo |
grep 'stepping' | cut
-d ':' -f 2 | cut
-d ' ' -f 2 |
head -n 1)
1649 exts
=$
($_cpuinfo |
egrep 'features|flags' | cut
-d ':' -f 2 |
head -n 1)
1651 pparam
=$
(echo $exts |
sed -e s
/k6_mtrr
/mtrr
/ -e s
/cyrix_arr
/mtrr
/ -e s
/centaur_mcr
/mtrr
/ \
1652 -e s
/xmm
/sse
/ -e s
/kni
/sse
/)
1654 for ext
in $pparam ; do
1655 eval test \"\
$_$ext\" = auto
2>/dev
/null
&& eval _
$ext=kernel_check
1658 # SSE implies MMX2, but not all SSE processors report the mmxext CPU flag.
1659 test $_sse = kernel_check
&& _mmxext
=kernel_check
1661 echocheck
"CPU vendor"
1662 echores
"$pvendor ($pfamily:$pmodel:$pstepping)"
1664 echocheck
"CPU type"
1668 fi # test "$_runtime_cpudetection" = no
1670 if x86
&& test "$_runtime_cpudetection" = no
; then
1672 if test "$1" = kernel_check
; then
1673 echocheck
"kernel support of $2"
1677 void catch() { exit(1); }
1679 signal(SIGILL, catch);
1680 __asm__ volatile ("$3":::"memory"); return 0;
1684 if cc_check
&& tmp_run
; then
1687 _optimizing
="$_optimizing $2"
1692 echo "It seems that your kernel does not correctly support $2."
1693 echo "To use $2 extensions in MPlayer, you have to upgrade/recompile your kernel!"
1700 extcheck
$_mmx "mmx" "emms"
1701 extcheck
$_mmxext "mmxext" "sfence"
1702 extcheck
$_3dnow "3dnow" "femms"
1703 extcheck
$_3dnowext "3dnowext" "pswapd %%mm0, %%mm0"
1704 extcheck
$_sse "sse" "xorps %%xmm0, %%xmm0" || _gcc3_ext
="$_gcc3_ext -mno-sse"
1705 extcheck
$_sse2 "sse2" "xorpd %%xmm0, %%xmm0" || _gcc3_ext
="$_gcc3_ext -mno-sse2"
1706 extcheck
$_ssse3 "ssse3" "pabsd %%xmm0, %%xmm0"
1707 extcheck
$_cmov "cmov" "cmovb %%eax,%%ebx"
1709 echocheck
"mtrr support"
1710 if test "$_mtrr" = kernel_check
; then
1712 _optimizing
="$_optimizing mtrr"
1716 if test "$_gcc3_ext" != ""; then
1717 # if we had to disable sse/sse2 because the active kernel does not
1718 # support this instruction set extension, we also have to tell
1719 # gcc3 to not generate sse/sse2 instructions for normal C code
1721 int main(void) { return 0; }
1723 cc_check
$_march $_gcc3_ext && _march
="$_march $_gcc3_ext"
1729 def_fast_64bit
='#define HAVE_FAST_64BIT 0'
1730 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 0'
1731 _arch_all
='X86 X86_32 X86_64 IA64 SPARC ARM AVR32 SH4 PPC PPC64 ALPHA MIPS SGI_MIPS PA_RISC S390 S390X VAX BFIN XTENSA GENERIC'
1732 case "$host_arch" in
1733 i
[3-9]86|x86|x86pc|k5|k6|k6-2|k6-3|pentium
*|athlon
*|i586-i686
)
1735 _target_arch
="ARCH_X86 = yes"
1736 _target_subarch
="ARCH_X86_32 = yes"
1737 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
1742 if test "$_runtime_cpudetection" = no
; then
1746 3) proc
=i386 iproc
=386 ;;
1747 4) proc
=i486 iproc
=486 ;;
1748 5) iproc
=586 # LGB: models are: K5/SSA5 K5 K5 K5 ? ? K6 K6 K6-2 K6-3
1749 # K6 model 13 are the K6-2+ and K6-III+, only differing in cache size.
1750 if test "$pmodel" -eq 9 -o "$pmodel" -eq 13; then
1752 elif test "$pmodel" -eq 5 -o "$pmodel" -eq 10; then
1754 elif test "$pmodel" -ge 8; then
1756 elif test "$pmodel" -ge 6; then
1763 # It's a bit difficult to determine the correct type of Family 6
1764 # AMD CPUs just from their signature. Instead, we check directly
1765 # whether it supports SSE.
1766 if test "$_sse" = yes; then
1767 # gcc treats athlon-xp, athlon-4 and athlon-mp similarly.
1770 # Again, gcc treats athlon and athlon-tbird similarly.
1775 # k8 cpu-type only supported in gcc >= 3.4.0, but that will be
1776 # caught and remedied in the optimization tests below.
1780 *) proc
=k8 iproc
=686 ;;
1785 3) proc
=i386 iproc
=386 ;;
1786 4) proc
=i486 iproc
=486 ;;
1788 if test "$pmodel" -eq 4 ||
test "$pmodel" -eq 8; then
1789 proc
=pentium-mmx
# 4 is desktop, 8 is mobile
1795 if test "$pmodel" -ge 15; then
1797 elif test "$pmodel" -eq 9 -o "$pmodel" -ge 13; then
1799 elif test "$pmodel" -ge 7; then
1801 elif test "$pmodel" -ge 3; then
1808 # A nocona in 32-bit mode has no more capabilities than a prescott.
1809 if test "$pmodel" -ge 3; then
1814 test $_fast_cmov = "auto" && _fast_cmov
=no
1816 *) proc
=prescott iproc
=686 ;;
1822 if test "$pmodel" -ge 8; then
1824 elif test "$pmodel" -ge 4; then
1831 if test "$pmodel" -ge 9; then
1838 *) proc
=i686 iproc
=i686
;;
1843 3) proc
=i386 iproc
=386 ;;
1844 4) proc
=i486 iproc
=486 ;;
1845 *) proc
=i586 iproc
=586 ;;
1849 proc
=i586 iproc
=586 ;;
1851 fi # test "$_runtime_cpudetection" = no
1854 # check that gcc supports our CPU, if not, fall back to earlier ones
1855 # LGB: check -mcpu and -march swithing step by step with enabling
1856 # to fall back till 386.
1858 # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
1860 if [ "$cc_vendor" = "gnu" ] && ([ "$_cc_major" -gt 3 ] ||
( [ "$_cc_major" = 3 ] && [ "$_cc_minor" -ge 4 ])) ; then
1866 echocheck
"GCC & CPU optimization abilities"
1868 int main(void) { return 0; }
1870 if test "$_runtime_cpudetection" = no
; then
1871 cc_check
-march=native
&& proc
=native
1872 if test "$proc" = "k8"; then
1873 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon-xp
1875 if test "$proc" = "athlon-xp"; then
1876 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon
1878 if test "$proc" = "k6-3" ||
test "$proc" = "k6-2"; then
1879 cc_check
-march=$proc $cpuopt=$proc || proc
=k6
1881 if test "$proc" = "k6" ||
test "$proc" = "c3"; then
1882 if ! cc_check
-march=$proc $cpuopt=$proc; then
1883 if cc_check
-march=i586
$cpuopt=i686
; then
1890 if test "$proc" = "prescott" ; then
1891 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium4
1893 if test "$proc" = "core2" ; then
1894 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium-m
1896 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
1897 cc_check
-march=$proc $cpuopt=$proc || proc
=i686
1899 if test "$proc" = "i686" ||
test "$proc" = "pentium-mmx" ||
test "$proc" = "winchip-c6" ||
test "$proc" = "winchip2"; then
1900 cc_check
-march=$proc $cpuopt=$proc || proc
=i586
1902 if test "$proc" = "i586"; then
1903 cc_check
-march=$proc $cpuopt=$proc || proc
=i486
1905 if test "$proc" = "i486" ; then
1906 cc_check
-march=$proc $cpuopt=$proc || proc
=i386
1908 if test "$proc" = "i386" ; then
1909 cc_check
-march=$proc $cpuopt=$proc || proc
=error
1911 if test "$proc" = "error" ; then
1912 echores
"CPU optimization disabled. CPU not recognized or your compiler is too old."
1916 elif test "$proc" = "i586-i686"; then
1917 _march
="-march=i586"
1918 _mcpu
="$cpuopt=i686"
1921 _march
="-march=$proc"
1922 _mcpu
="$cpuopt=$proc"
1925 else # if test "$_runtime_cpudetection" = no
1926 _mcpu
="$cpuopt=generic"
1927 # at least i486 required, for bswap instruction
1928 _march
="-march=i486"
1929 cc_check
$_mcpu || _mcpu
="$cpuopt=i686"
1930 cc_check
$_mcpu || _mcpu
=""
1931 cc_check
$_march $_mcpu || _march
=""
1934 ## Gabucino : --target takes effect here (hopefully...) by overwriting
1935 ## autodetected mcpu/march parameters
1936 if test "$_target" ; then
1937 # TODO: it may be a good idea to check GCC and fall back in all cases
1938 if test "$host_arch" = "i586-i686"; then
1939 _march
="-march=i586"
1940 _mcpu
="$cpuopt=i686"
1942 _march
="-march=$host_arch"
1943 _mcpu
="$cpuopt=$host_arch"
1951 i586|k5|k6|k6-2|k6-3|pentium|pentium-mmx
) iproc
=586 ;;
1952 i686|athlon
*|pentium
*) iproc
=686 ;;
1957 if test $_cmov = "yes" && test $_fast_cmov = "auto" ; then
1968 _target_arch
='ARCH_IA64 = yes'
1969 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
1975 _target_subarch
='ARCH_X86_64 = yes'
1976 _target_arch
="ARCH_X86 = yes"
1977 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
1978 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
1981 # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
1982 if test "$cc_vendor" = "gnu" && test "$_cc_major" -gt 3 -o "$_cc_major" -eq 3 -a "$_cc_minor" -ge 4 ; then
1987 test $_fast_cmov = "auto" && _fast_cmov
=yes
1988 if test "$_runtime_cpudetection" = no
; then
1996 # 64-bit prescotts exist, but as far as GCC is concerned they
1997 # have the same capabilities as a nocona.
2005 fi # test "$_runtime_cpudetection" = no
2007 echocheck
"GCC & CPU optimization abilities"
2009 int main(void) { return 0; }
2011 # This is a stripped-down version of the i386 fallback.
2012 if test "$_runtime_cpudetection" = no
; then
2013 cc_check
-march=native
&& proc
=native
2014 # --- AMD processors ---
2015 if test "$proc" = "k8"; then
2016 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon-xp
2018 # This will fail if gcc version < 3.3, which is ok because earlier
2019 # versions don't really support 64-bit on amd64.
2020 # Is this a valid assumption? -Corey
2021 if test "$proc" = "athlon-xp"; then
2022 cc_check
-march=$proc $cpuopt=$proc || proc
=error
2024 # --- Intel processors ---
2025 if test "$proc" = "core2"; then
2026 cc_check
-march=$proc $cpuopt=$proc || proc
=nocona
2028 if test "$proc" = "nocona"; then
2029 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium4
2031 if test "$proc" = "pentium4"; then
2032 cc_check
-march=$proc $cpuopt=$proc || proc
=error
2035 _march
="-march=$proc"
2036 _mcpu
="$cpuopt=$proc"
2037 if test "$proc" = "error" ; then
2038 echores
"CPU optimization disabled. CPU not recognized or your compiler is too old."
2042 else # if test "$_runtime_cpudetection" = no
2043 # x86-64 is an undocumented option, an intersection of k8 and nocona.
2044 _march
="-march=x86-64"
2045 _mcpu
="$cpuopt=generic"
2046 cc_check
$_mcpu || _mcpu
="x86-64"
2047 cc_check
$_mcpu || _mcpu
=""
2048 cc_check
$_march $_mcpu || _march
=""
2058 _target_arch
='ARCH_SPARC = yes'
2060 if test "$host_arch" = "sparc64" ; then
2063 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
2065 echocheck
"CPU type"
2067 case "$(echo $karch)" in
2072 sun4u
) proc
=ultrasparc _vis
='yes' ;;
2084 arm|armv4l|armv5tel
)
2086 _target_arch
='ARCH_ARM = yes'
2092 _target_arch
='ARCH_AVR32 = yes'
2093 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
2099 _target_arch
='ARCH_SH4 = yes'
2103 ppc|ppc64|powerpc|powerpc64
)
2105 def_dcbzl
='#define HAVE_DCBZL 0'
2106 _target_arch
='ARCH_PPC = yes'
2107 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
2110 if test "$host_arch" = "ppc64" -o "$host_arch" = "powerpc64" ; then
2112 _target_subarch
='ARCH_PPC64 = yes'
2113 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
2115 echocheck
"CPU type"
2116 case $system_name in
2118 proc
=$
($_cpuinfo |
grep 'cpu' | cut
-d ':' -f 2 | cut
-d ',' -f 1 | cut
-b 2- |
head -n 1)
2119 if test -n "$($_cpuinfo | grep altivec)"; then
2120 test $_altivec = auto
&& _altivec
=yes
2124 proc
=$
($_cpuinfo |
grep "Processor type" | cut
-f 3 -d ' ' |
sed 's/ppc//')
2125 if [ $
(sysctl
-n hw.vectorunit
) -eq 1 -o \
2126 "$(sysctl -n hw.optional.altivec 2> /dev/null)" = "1" ]; then
2127 test $_altivec = auto
&& _altivec
=yes
2131 # only gcc 3.4 works reliably with AltiVec code under NetBSD
2133 2*|
3.0*|
3.1*|
3.2*|
3.3*)
2136 if [ $
(sysctl
-n machdep.altivec
) -eq 1 ]; then
2137 test $_altivec = auto
&& _altivec
=yes
2143 proc
=$
($_cpuinfo |
grep 'type' | cut
-f 2 -d ' ' |
sed 's/PowerPC_//')
2146 if test "$_altivec" = yes; then
2147 echores
"$proc altivec"
2153 echocheck
"GCC & CPU optimization abilities"
2155 if test -n "$proc"; then
2157 601) _march
='-mcpu=601' _mcpu
='-mtune=601' ;;
2158 603) _march
='-mcpu=603' _mcpu
='-mtune=603' ;;
2159 603e|
603ev
) _march
='-mcpu=603e' _mcpu
='-mtune=603e' ;;
2160 604|
604e|
604r|
604ev
) _march
='-mcpu=604' _mcpu
='-mtune=604' ;;
2161 740|
740/750|
745/755) _march
='-mcpu=740' _mcpu
='-mtune=740' ;;
2162 750|
750CX
) _march
='-mcpu=750' _mcpu
='-mtune=750' ;;
2163 POWER
) _march
='-mcpu=power' _mcpu
='-mtune=power' ;;
2164 POWER2
) _march
='-mcpu=power2' _mcpu
='-mtune=power2' ;;
2165 POWER3
) _march
='-mcpu=power3' _mcpu
='-mtune=power3' ;;
2168 # gcc 3.1(.1) and up supports 7400 and 7450
2169 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "1" ||
test "$_cc_major" -ge "4"; then
2171 7400*|
7410*) _march
='-mcpu=7400' _mcpu
='-mtune=7400' ;;
2172 7447*|
7450*|
7455*) _march
='-mcpu=7450' _mcpu
='-mtune=7450' ;;
2176 # gcc 3.2 and up supports 970
2177 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "3" ||
test "$_cc_major" -ge "4"; then
2179 970*|PPC970
*) _march
='-mcpu=970' _mcpu
='-mtune=970'
2180 def_dcbzl
='#define HAVE_DCBZL 1' ;;
2184 # gcc 3.3 and up supports POWER4
2185 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "3" ||
test "$_cc_major" -ge "4"; then
2187 POWER4
) _march
='-mcpu=power4' _mcpu
='-mtune=power4' ;;
2191 # gcc 3.4 and up supports 440*
2192 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "4" ||
test "$_cc_major" -ge "4"; then
2194 440EP
*) _march
='-mcpu=440fp' _mcpu
='-mtune=440fp' ;;
2195 440G
* ) _march
='-mcpu=440' _mcpu
='-mtune=440' ;;
2199 # gcc 4.0 and up supports POWER5
2200 if test "$_cc_major" -ge "4"; then
2202 POWER5
*) _march
='-mcpu=power5' _mcpu
='-mtune=power5' ;;
2208 if test -n "$_mcpu"; then
2209 _optimizing
=$
(echo $_mcpu | cut
-c 8-)
2210 echores
"$_optimizing"
2219 _target_arch
='ARCH_ALPHA = yes'
2222 echocheck
"CPU type"
2225 unsigned long ver, mask;
2226 __asm__ ("implver %0" : "=r" (ver));
2227 __asm__ ("amask %1, %0" : "=r" (mask) : "r" (-1));
2228 printf("%ld-%x\n", ver, ~mask);
2232 $_cc -o "$TMPEXE" "$TMPC"
2233 case $
("$TMPEXE") in
2235 0-0) proc
="ev4"; _mvi
="0";;
2236 1-0) proc
="ev5"; _mvi
="0";;
2237 1-1) proc
="ev56"; _mvi
="0";;
2238 1-101) proc
="pca56"; _mvi
="1";;
2239 2-303) proc
="ev6"; _mvi
="1";;
2240 2-307) proc
="ev67"; _mvi
="1";;
2241 2-1307) proc
="ev68"; _mvi
="1";;
2245 echocheck
"GCC & CPU optimization abilities"
2246 if test "$proc" = "ev68" ; then
2247 cc_check
-mcpu=$proc || proc
=ev67
2249 if test "$proc" = "ev67" ; then
2250 cc_check
-mcpu=$proc || proc
=ev6
2260 _target_arch
='ARCH_SGI_MIPS = yes'
2264 echocheck
"CPU type"
2265 proc
=$
(hinv
-c processor |
grep CPU | cut
-d " " -f3)
2266 case "$(echo $proc)" in
2267 R3000
) _march
='-mips1' _mcpu
='-mtune=r2000' ;;
2268 R4000
) _march
='-mips3' _mcpu
='-mtune=r4000' ;;
2269 R4400
) _march
='-mips3' _mcpu
='-mtune=r4400' ;;
2270 R4600
) _march
='-mips3' _mcpu
='-mtune=r4600' ;;
2271 R5000
) _march
='-mips4' _mcpu
='-mtune=r5000' ;;
2272 R8000|R10000|R12000|R14000|R16000
) _march
='-mips4' _mcpu
='-mtune=r8000' ;;
2274 # gcc < 3.x does not support -mtune.
2275 if test "$cc_vendor" = "gnu" && test "$_cc_major" -lt 3 ; then
2285 _target_arch
='ARCH_PA_RISC = yes'
2291 _target_arch
='ARCH_S390 = yes'
2297 _target_arch
='ARCH_S390X = yes'
2303 _target_arch
='ARCH_VAX = yes'
2309 _target_arch
='ARCH_XTENSA = yes'
2315 _target_arch
='ARCH_GENERIC = yes'
2319 echo "The architecture of your CPU ($host_arch) is not supported by this configure script"
2320 echo "It seems nobody has ported MPlayer to your OS or CPU type yet."
2321 die
"unsupported architecture $host_arch"
2323 esac # case "$host_arch" in
2325 if test "$_runtime_cpudetection" = yes ; then
2327 test "$_cmov" != no
&& _cmov
=yes
2329 test "$_mmx" != no
&& _mmx
=yes
2330 test "$_3dnow" != no
&& _3dnow
=yes
2331 test "$_3dnowext" != no
&& _3dnowext
=yes
2332 test "$_mmxext" != no
&& _mmxext
=yes
2333 test "$_sse" != no
&& _sse
=yes
2334 test "$_sse2" != no
&& _sse2
=yes
2335 test "$_ssse3" != no
&& _ssse3
=yes
2336 test "$_mtrr" != no
&& _mtrr
=yes
2345 echocheck
"byte order"
2346 if test "$_big_endian" = auto
; then
2348 short ascii_name[] = { (('M'<<8)|'P'),(('l'<<8)|'a'),(('y'<<8)|'e'),(('r'<<8)|'B'),
2349 (('i'<<8)|'g'),(('E'<<8)|'n'),(('d'<<8)|'i'),(('a'<<8)|'n'),0};
2350 int main(void) { return (int)ascii_name; }
2353 if strings $TMPEXE |
grep -q -l MPlayerBigEndian
; then
2359 echo ${_echo_n} "failed to autodetect byte order, defaulting to ${_echo_c}"
2362 if test "$_big_endian" = yes ; then
2363 _byte_order
='big-endian'
2364 def_words_endian
='#define WORDS_BIGENDIAN 1'
2366 _byte_order
='little-endian'
2367 def_words_endian
='#undef WORDS_BIGENDIAN'
2369 echores
"$_byte_order"
2372 echocheck
"extern symbol prefix"
2376 cc_check
-c || die
"Symbol mangling check failed."
2377 sym
=$
($_nm -P -g $TMPEXE)
2378 extern_prefix
=${sym%%ff_extern*}
2379 def_extern_prefix
="#define EXTERN_PREFIX \"$extern_prefix\""
2380 echores
$extern_prefix
2383 echocheck
"assembler support of -pipe option"
2385 int main(void) { return 0; }
2387 cc_check
-pipe && _pipe
="-pipe" && echores
"yes" || echores
"no"
2390 echocheck
"compiler support of named assembler arguments"
2392 def_named_asm_args
="#define NAMED_ASM_ARGS 1"
2393 if test "$cc_vendor" = "gnu" && test "$_cc_major" -lt 3 \
2394 -o "$_cc_major" -eq 3 -a "$_cc_minor" = 0 ; then
2396 def_named_asm_args
="#undef NAMED_ASM_ARGS"
2398 echores
$_named_asm_args
2401 if darwin
&& test "$cc_vendor" = "gnu" ; then
2402 echocheck
"GCC support of -mstackrealign"
2403 # GCC 4.2 and some earlier Apple versions support this flag on x86. Since
2404 # Mac OS X/Intel has an ABI different from Windows this is needed to avoid
2405 # crashes when loading Win32 DLLs. Unfortunately some gcc versions create
2406 # wrong code with this flag, but this can be worked around by adding
2407 # -fno-unit-at-a-time as described in the blog post at
2408 # http://www.dribin.org/dave/blog/archives/2006/12/05/missing_third_param/
2410 __attribute__((noinline)) static int foo3(int i1, int i2, int i3) { return i3; }
2411 int main(void) { return foo3(1,2,3) == 3 ? 0 : 1; }
2413 cc_check
-O4 -mstackrealign && tmp_run
&& cflags_stackrealign
=-mstackrealign
2414 test -z "$cflags_stackrealign" && cc_check
-O4 -mstackrealign -fno-unit-at-a-time \
2415 && tmp_run
&& cflags_stackrealign
="-mstackrealign -fno-unit-at-a-time"
2416 test -n "$cflags_stackrealign" && echores
"yes" || echores
"no"
2417 fi # if darwin && test "$cc_vendor" = "gnu" ; then
2420 # Checking for CFLAGS
2422 if test "$_profile" != "" ||
test "$_debug" != "" ; then
2423 CFLAGS
="-W -Wall -O2 $_march $_mcpu $_pipe $_debug $_profile"
2425 elif test -z "$CFLAGS" ; then
2426 if test "$cc_vendor" = "intel" ; then
2427 CFLAGS
="-O2 $_march $_mcpu $_pipe -fomit-frame-pointer -wd167 -wd556 -wd144"
2428 elif test "$cc_vendor" != "gnu" ; then
2429 CFLAGS
="-O2 $_march $_mcpu $_pipe"
2431 CFLAGS
="-Wall -Wno-switch -Wpointer-arith -Wredundant-decls -O4 $_march $_mcpu $_pipe -ffast-math -fomit-frame-pointer"
2432 extra_ldflags
="$extra_ldflags -ffast-math"
2439 int main(void) { return 0; }
2441 if test "$cc_vendor" = "gnu" ; then
2442 cc_check
-std=gnu99
&& CFLAGS
="-std=gnu99 $CFLAGS"
2443 cc_check
-Wdeclaration-after-statement && CFLAGS
="-Wdeclaration-after-statement $CFLAGS"
2444 cc_check
-Wno-pointer-sign && CFLAGS
="-Wno-pointer-sign $CFLAGS"
2445 cc_check
-Wdisabled-optimization && CFLAGS
="-Wdisabled-optimization $CFLAGS"
2446 cc_check
-Wundef && CFLAGS
="-Wundef $CFLAGS"
2448 CFLAGS
="-D_ISOC99_SOURCE -D_BSD_SOURCE $CFLAGS"
2451 cc_check
-mno-omit-leaf-frame-pointer && cflags_no_omit_leaf_frame_pointer
="-mno-omit-leaf-frame-pointer"
2454 if test -n "$LDFLAGS" ; then
2455 extra_ldflags
="$extra_ldflags $LDFLAGS"
2457 elif test "$cc_vendor" = "intel" ; then
2458 extra_ldflags
="$extra_ldflags -i-static"
2460 if test -n "$CPPFLAGS" ; then
2461 extra_cflags
="$extra_cflags $CPPFLAGS"
2468 # Checking assembler (_as) compatibility...
2469 # Added workaround for older as that reads from stdin by default - atmos
2470 as_version
=$
(echo '' |
$_as -version 2>&1 |
sed -n 's/^.*assembler \(version \)*\([0-9.]*\).*$/\2/p')
2471 echocheck
"assembler ($_as $as_version)"
2473 _pref_as_version
='2.9.1'
2475 if test "$_mmx" = yes ; then
2476 echo 'emms' >> $TMPS
2478 if test "$_3dnow" = yes ; then
2479 _pref_as_version
='2.10.1'
2480 echo 'femms' >> $TMPS
2482 if test "$_3dnowext" = yes ; then
2483 _pref_as_version
='2.10.1'
2484 echo 'pswapd %mm0, %mm0' >> $TMPS
2486 if test "$_mmxext" = yes ; then
2487 _pref_as_version
='2.10.1'
2488 echo 'movntq %mm0, (%eax)' >> $TMPS
2490 if test "$_sse" = yes ; then
2491 _pref_as_version
='2.10.1'
2492 echo 'xorps %xmm0, %xmm0' >> $TMPS
2494 #if test "$_sse2" = yes ; then
2495 # _pref_as_version='2.11'
2496 # echo 'xorpd %xmm0, %xmm0' >> $TMPS
2498 if test "$_cmov" = yes ; then
2499 _pref_as_version
='2.10.1'
2500 echo 'cmovb %eax, %ebx' >> $TMPS
2502 if test "$_ssse3" = yes ; then
2503 _pref_as_version
='2.16.92'
2504 echo 'pabsd %xmm0, %xmm1' >> $TMPS
2506 $_as $TMPS -o $TMPEXE > /dev
/null
2>&1 || as_verc_fail
=yes
2508 if test "$as_verc_fail" != yes ; then
2511 _res_comment
="Upgrade binutils to ${_pref_as_version} or use --disable-ssse3 etc."
2513 die
"obsolete binutils version"
2518 echocheck
".align is a power of two"
2519 if test "$_asmalign_pot" = auto
; then
2522 int main(void) { __asm__ (".align 3"); return 0; }
2524 cc_check
&& _asmalign_pot
=yes
2526 if test "$_asmalign_pot" = "yes" ; then
2527 def_asmalign_pot
='#define ASMALIGN(ZEROBITS) ".align " #ZEROBITS "\n\t"'
2529 def_asmalign_pot
='#define ASMALIGN(ZEROBITS) ".align 1<<" #ZEROBITS "\n\t"'
2531 echores
$_asmalign_pot
2534 echocheck
"10 assembler operands"
2536 def_ten_operands
='#define HAVE_TEN_OPERANDS 0'
2542 :"+&rm"(x), "+&rm"(x), "+&rm"(x), "+&rm"(x), "+&rm"(x), "+&rm"(x)
2547 cc_check
&& ten_operands
=yes && def_ten_operands
='#define HAVE_TEN_OPERANDS 1'
2548 echores
$ten_operands
2551 if test -z "$YASMFLAGS" ; then
2553 x86_64
&& objformat
="macho64" || objformat
="macho"
2559 # currently tested for Linux x86, x86_64
2560 YASMFLAGS
="-f $objformat"
2561 x86_64
&& YASMFLAGS
="$YASMFLAGS -DARCH_X86_64 -m amd64"
2562 case "$objformat" in
2563 elf
) test $_debug && YASMFLAGS
="$YASMFLAGS -g dwarf2" ;;
2564 macho64
) YASMFLAGS
="$YASMFLAGS -DPIC -DPREFIX" ;;
2565 *) YASMFLAGS
="$YASMFLAGS -DPREFIX" ;;
2571 echo "pabsw xmm0, xmm0" > $TMPS
2572 yasm_check || _yasm
=""
2573 if test $_yasm ; then
2574 test "$_mmx" = "yes" && fft_mmx
="yes"
2575 def_yasm
='#define HAVE_YASM 1'
2579 def_yasm
='#define HAVE_YASM 0'
2586 def_bswap
='#define HAVE_BSWAP 0'
2587 echo 'bswap %eax' > $TMPS
2588 $_as $TMPS -o $TMPEXE > /dev
/null
2>&1 && def_bswap
='#define HAVE_BSWAP 1' && bswap
=yes || bswap
=no
2593 #FIXME: This should happen before the check for CFLAGS..
2594 def_altivec_h
='#define HAVE_ALTIVEC_H 0'
2595 if ppc
&& ( test "$_altivec" = yes ||
test "$_runtime_cpudetection" = yes ) ; then
2597 # check if AltiVec is supported by the compiler, and how to enable it
2598 echocheck
"GCC AltiVec flags"
2600 int main(void) { return 0; }
2602 if $
(cc_check
-maltivec -mabi=altivec
) ; then
2603 _altivec_gcc_flags
="-maltivec -mabi=altivec"
2604 # check if <altivec.h> should be included
2606 #include <altivec.h>
2607 int main(void) { return 0; }
2609 if $
(cc_check
$_altivec_gcc_flags) ; then
2610 def_altivec_h
='#define HAVE_ALTIVEC_H 1'
2611 inc_altivec_h
='#include <altivec.h>'
2614 int main(void) { return 0; }
2616 if $
(cc_check
-faltivec) ; then
2617 _altivec_gcc_flags
="-faltivec"
2620 _altivec_gcc_flags
="none, AltiVec disabled"
2624 echores
"$_altivec_gcc_flags"
2626 # check if the compiler supports braces for vector declarations
2629 int main(void) { (vector int) {1}; return 0; }
2631 cc_check
$_altivec_gcc_flags || die
"You need a compiler that supports {} in AltiVec vector declarations."
2633 # Disable runtime cpudetection if we cannot generate AltiVec code or
2634 # AltiVec is disabled by the user.
2635 test "$_runtime_cpudetection" = yes && test "$_altivec" = no \
2636 && _runtime_cpudetection
=no
2638 # Show that we are optimizing for AltiVec (if enabled and supported).
2639 test "$_runtime_cpudetection" = no
&& test "$_altivec" = yes \
2640 && _optimizing
="$_optimizing altivec"
2642 # If AltiVec is enabled, make sure the correct flags turn up in CFLAGS.
2643 test "$_altivec" = yes && CFLAGS
="$CFLAGS $_altivec_gcc_flags"
2647 def_xform_asm
='#define HAVE_XFORM_ASM 0'
2649 echocheck
"XFORM ASM support"
2651 int main(void) { __asm__ volatile ("lwzx 0, %y0" :: "Z"(*(int*)0)); return 0; }
2653 cc_check
&& xform_asm
=yes && def_xform_asm
='#define HAVE_XFORM_ASM 1'
2654 echores
"$xform_asm"
2658 echocheck
"ARM pld instruction"
2660 int main(void) { __asm__ volatile ("pld [r0]"); return 0; }
2666 echocheck
"ARMv5TE (Enhanced DSP Extensions)"
2667 if test $_armv5te = "auto" ; then
2669 int main(void) { __asm__ volatile ("qadd r0, r0, r0"); return 0; }
2672 cc_check
&& _armv5te
=yes
2676 echocheck
"ARMv6 (SIMD instructions)"
2677 if test $_armv6 = "auto" ; then
2679 int main(void) { __asm__ volatile ("sadd16 r0, r0, r0"); return 0; }
2682 cc_check
&& _armv6
=yes
2686 echocheck
"ARMv6t2 (SIMD instructions)"
2687 if test $_armv6t2 = "auto" ; then
2689 int main(void) { __asm__ volatile ("movt r0, #0"); return 0; }
2692 cc_check
&& _armv6t2
=yes
2697 if test $_armvfp = "auto" ; then
2699 int main(void) { __asm__ volatile ("fadds s0, s0, s0"); return 0; }
2702 cc_check
&& _armvfp
=yes
2706 echocheck
"iWMMXt (Intel XScale SIMD instructions)"
2707 if test $_iwmmxt = "auto" ; then
2709 int main(void) { __asm__ volatile ("wunpckelub wr6, wr4"); return 0; }
2712 cc_check
&& _iwmmxt
=yes
2717 _cpuexts_all
='ALTIVEC MMX MMX2 AMD3DNOW AMD3DNOWEXT SSE SSE2 SSSE3 FAST_CMOV CMOV PLD ARMV5TE ARMV6 ARMV6T2 ARMVFP IWMMXT MMI VIS MVI'
2718 test "$_altivec" = yes && _cpuexts
="ALTIVEC $_cpuexts"
2719 test "$_mmx" = yes && _cpuexts
="MMX $_cpuexts"
2720 test "$_mmxext" = yes && _cpuexts
="MMX2 $_cpuexts"
2721 test "$_3dnow" = yes && _cpuexts
="AMD3DNOW $_cpuexts"
2722 test "$_3dnowext" = yes && _cpuexts
="AMD3DNOWEXT $_cpuexts"
2723 test "$_sse" = yes && _cpuexts
="SSE $_cpuexts"
2724 test "$_sse2" = yes && _cpuexts
="SSE2 $_cpuexts"
2725 test "$_ssse3" = yes && _cpuexts
="SSSE3 $_cpuexts"
2726 test "$_cmov" = yes && _cpuexts
="CMOV $_cpuexts"
2727 test "$_fast_cmov" = yes && _cpuexts
="FAST_CMOV $_cpuexts"
2728 test "$pld" = yes && _cpuexts
="PLD $_cpuexts"
2729 test "$_armv5te" = yes && _cpuexts
="ARMV5TE $_cpuexts"
2730 test "$_armv6" = yes && _cpuexts
="ARMV6 $_cpuexts"
2731 test "$_armv6t2" = yes && _cpuexts
="ARMV6T2 $_cpuexts"
2732 test "$_armvfp" = yes && _cpuexts
="ARMVFP $_cpuexts"
2733 test "$_iwmmxt" = yes && _cpuexts
="IWMMXT $_cpuexts"
2734 test "$_vis" = yes && _cpuexts
="VIS $_cpuexts"
2735 test "$_mvi" = yes && _cpuexts
="MVI $_cpuexts"
2737 # Checking kernel version...
2738 if x86_32
&& linux
; then
2740 kernel_version
=$
(uname
-r 2>&1)
2741 echocheck
"$system_name kernel version"
2742 case "$kernel_version" in
2743 '') kernel_version
="?.??"; _k_verc_fail
=yes;;
2744 [0-1].
[0-9].
[0-9]*|
2.
[0-3].
[0-9]*)
2745 _k_verc_problem
=yes;;
2747 if test "$_k_verc_problem" = yes && test "$_sse" = yes ; then
2750 if test "$_k_verc_fail" ; then
2751 echores
"$kernel_version, fail"
2752 echo "WARNING! If you want to run MPlayer on this system, get prepared for problems!"
2753 echo "2.2.x has limited SSE support. Upgrade the kernel or use --disable-sse if you"
2754 echo "experience crashes. MPlayer tries to autodetect if your kernel correctly"
2755 echo "supports SSE, but you have been warned! If you are using a kernel older than"
2756 echo "2.2.x you must upgrade it to get SSE support!"
2757 # die "Your kernel is too old for this CPU." # works fine on some 2.2.x so don't die (later check will test)
2759 echores
"$kernel_version, ok"
2763 ######################
2764 # MAIN TESTS GO HERE #
2765 ######################
2770 int main(void) { return 0; }
2772 if cc_check
-lposix ; then
2773 extra_ldflags
="$extra_ldflags -lposix"
2781 int main(void) { return 0; }
2783 if cc_check
-lm ; then
2792 echocheck
"langinfo"
2793 if test "$_langinfo" = auto
; then
2795 #include <langinfo.h>
2796 int main(void) { nl_langinfo(CODESET); return 0; }
2799 cc_check
&& _langinfo
=yes
2801 if test "$_langinfo" = yes ; then
2802 def_langinfo
='#define HAVE_LANGINFO 1'
2804 def_langinfo
='#undef HAVE_LANGINFO'
2806 echores
"$_langinfo"
2809 echocheck
"language"
2810 # Set preferred languages, "all" uses English as main language.
2811 test -z "$language" && language
=$LINGUAS
2812 test -z "$language_doc" && language_doc
=$language
2813 test -z "$language_man" && language_man
=$language
2814 test -z "$language_msg" && language_msg
=$language
2815 language_doc
=$
(echo $language_doc |
tr , " ")
2816 language_man
=$
(echo $language_man |
tr , " ")
2817 language_msg
=$
(echo $language_msg |
tr , " ")
2819 test "$language_doc" = "all" && language_doc
=$doc_lang_all
2820 test "$language_man" = "all" && language_man
=$man_lang_all
2821 test "$language_msg" = "all" && language_msg
=en
2823 # Prune non-existing translations from language lists.
2824 # Set message translation to the first available language.
2825 # Fall back on English.
2826 for lang
in $language_doc ; do
2827 test -d DOCS
/xml
/$lang && tmp_language_doc
="$tmp_language_doc $lang"
2829 language_doc
=$tmp_language_doc
2830 test -z "$language_doc" && language_doc
=en
2832 for lang
in $language_man ; do
2833 test -d DOCS
/man
/$lang && tmp_language_man
="$tmp_language_man $lang"
2835 language_man
=$tmp_language_man
2836 test -z "$language_man" && language_man
=en
2838 for lang
in $language_msg ; do
2839 test -f "help/help_mp-${lang}.h" && language_msg
=$lang && break
2841 test -z "$language_msg" && language_msg
=en
2842 _mp_help
="help/help_mp-${language_msg}.h"
2843 echores
"messages: $language_msg - man pages: $language_man - documentation: $language_doc"
2846 echocheck
"enable sighandler"
2847 if test "$_sighandler" = yes ; then
2848 def_sighandler
='#define CONFIG_SIGHANDLER 1'
2850 def_sighandler
='#undef CONFIG_SIGHANDLER'
2852 echores
"$_sighandler"
2854 echocheck
"runtime cpudetection"
2855 if test "$_runtime_cpudetection" = yes ; then
2856 _optimizing
="Runtime CPU-Detection enabled"
2857 def_runtime_cpudetection
='#define CONFIG_RUNTIME_CPUDETECT 1'
2859 def_runtime_cpudetection
='#define CONFIG_RUNTIME_CPUDETECT 0'
2861 echores
"$_runtime_cpudetection"
2864 echocheck
"restrict keyword"
2865 for restrict_keyword
in restrict __restrict __restrict__
; do
2866 echo "void foo(char * $restrict_keyword p); int main(void) { return 0; }" > $TMPC
2868 def_restrict_keyword
=$restrict_keyword
2872 if [ -n "$def_restrict_keyword" ]; then
2873 echores
"$def_restrict_keyword"
2877 # Avoid infinite recursion loop ("#define restrict restrict")
2878 if [ "$def_restrict_keyword" != "restrict" ]; then
2879 def_restrict_keyword
="#define restrict $def_restrict_keyword"
2881 def_restrict_keyword
=""
2885 echocheck
"__builtin_expect"
2886 # GCC branch prediction hint
2889 a = __builtin_expect(a, 10);
2890 return a == 10 ? 0 : 1;
2892 int main(void) { return foo(10) && foo(0); }
2895 cc_check
&& _builtin_expect
=yes
2896 if test "$_builtin_expect" = yes ; then
2897 def_builtin_expect
='#define HAVE_BUILTIN_EXPECT 1'
2899 def_builtin_expect
='#undef HAVE_BUILTIN_EXPECT'
2901 echores
"$_builtin_expect"
2907 int main(void) { (void) kstat_open(); (void) kstat_close(0); return 0; }
2910 cc_check
-lkstat && _kstat
=yes
2911 if test "$_kstat" = yes ; then
2912 def_kstat
="#define HAVE_LIBKSTAT 1"
2913 extra_ldflags
="$extra_ldflags -lkstat"
2915 def_kstat
="#undef HAVE_LIBKSTAT"
2921 # required for nanosleep on some systems
2924 int main(void) { (void) nanosleep(0, 0); return 0; }
2927 cc_check
-lposix4 && _posix4
=yes
2928 if test "$_posix4" = yes ; then
2929 extra_ldflags
="$extra_ldflags -lposix4"
2933 for func
in llrint lrint lrintf round roundf truncf
; do
2937 int main(void) { long (*foo)(float); foo = $func; (void)(*foo)(0.0); return 0; }
2940 cc_check
-D_ISOC99_SOURCE $_ld_lm && eval _
$func=yes
2941 if eval test "x\$_$func" = "xyes"; then
2942 eval def_
$func="\"#define HAVE_$(echo $func | tr '[a-z]' '[A-Z]') 1\""
2945 eval def_
$func="\"#define HAVE_$(echo $func | tr '[a-z]' '[A-Z]') 0\""
2954 int main(void) { char a; mkstemp(&a); return 0; }
2957 cc_check
&& _mkstemp
=yes
2958 if test "$_mkstemp" = yes ; then
2959 def_mkstemp
='#define HAVE_MKSTEMP 1'
2961 def_mkstemp
='#undef HAVE_MKSTEMP'
2966 echocheck
"nanosleep"
2967 # also check for nanosleep
2970 int main(void) { (void) nanosleep(0, 0); return 0; }
2973 cc_check
&& _nanosleep
=yes
2974 if test "$_nanosleep" = yes ; then
2975 def_nanosleep
='#define HAVE_NANOSLEEP 1'
2977 def_nanosleep
='#undef HAVE_NANOSLEEP'
2979 echores
"$_nanosleep"
2983 # for Solaris (socket stuff is in -lsocket, gethostbyname and friends in -lnsl):
2984 # for BeOS (socket stuff is in -lsocket, gethostbyname and friends in -lbind):
2987 #include <sys/socket.h>
2988 int main(void) { (void) gethostbyname(0); (void) socket(AF_INET, SOCK_STREAM, 0); return 0; }
2991 for _ld_tmp
in "" "-lsocket -lbind" "-lsocket -ldnet" "-lsocket -lnsl" "-lnsl" "-lsocket" ; do
2992 cc_check
$_ld_tmp && _ld_sock
="$_ld_tmp" && _socklib
=yes && break
2994 if test $_winsock2_h = auto
&& ! cygwin
; then
2997 #include <winsock2.h>
2998 int main(void) { (void) gethostbyname(0); return 0; }
3000 cc_check
-lws2_32 && _ld_sock
="-lws2_32" && _winsock2_h
=yes
3002 test "$_ld_sock" && _res_comment
="using $_ld_sock"
3006 if test $_winsock2_h = yes ; then
3008 def_winsock2_h
='#define HAVE_WINSOCK2_H 1'
3010 def_winsock2_h
='#define HAVE_WINSOCK2_H 0'
3014 echocheck
"arpa/inet.h"
3016 def_arpa_inet_h
='#define HAVE_ARPA_INET_H 0'
3018 #include <arpa/inet.h>
3019 int main(void) { return 0; }
3021 cc_check
&& arpa_inet_h
=yes && def_arpa_inet_h
='#define HAVE_ARPA_INET_H 1'
3022 echores
"$arpa_inet_h"
3025 echocheck
"inet_pton()"
3026 def_inet_pton
='#define HAVE_INET_PTON 0'
3029 #include <sys/types.h>
3030 #include <sys/socket.h>
3031 #include <arpa/inet.h>
3032 int main(void) { (void) inet_pton(0, 0, 0); return 0; }
3034 for _ld_tmp
in "$_ld_sock" "$_ld_sock -lresolv" ; do
3035 cc_check
$_ld_tmp && inet_pton
=yes && break
3037 if test $inet_pton = yes ; then
3038 test $_ld_tmp && _res_comment
="using $_ld_tmp"
3039 def_inet_pton
='#define HAVE_INET_PTON 1'
3041 echores
"$inet_pton"
3044 echocheck
"inet_aton()"
3045 def_inet_aton
='#define HAVE_INET_ATON 0'
3048 #include <sys/types.h>
3049 #include <sys/socket.h>
3050 #include <arpa/inet.h>
3051 int main(void) { (void) inet_aton(0, 0); return 0; }
3053 for _ld_tmp
in "$_ld_sock" "$_ld_sock -lresolv" ; do
3054 cc_check
$_ld_tmp && inet_aton
=yes && break
3056 if test $inet_aton = yes ; then
3057 test $_ld_tmp && _res_comment
="using $_ld_tmp"
3058 def_inet_aton
='#define HAVE_INET_ATON 1'
3060 echores
"$inet_aton"
3063 echocheck
"socklen_t"
3065 for header
in "sys/socket.h" "ws2tcpip.h" "sys/types.h" ; do
3068 int main(void) { socklen_t v = 0; return v; }
3070 cc_check
&& _socklen_t
=yes && break
3072 if test "$_socklen_t" = yes ; then
3073 def_socklen_t
='#define HAVE_SOCKLEN_T 1'
3075 def_socklen_t
='#define HAVE_SOCKLEN_T 0'
3077 echores
"$_socklen_t"
3080 echocheck
"closesocket()"
3083 #include <winsock2.h>
3084 int main(void) { closesocket(~0); return 0; }
3086 cc_check
$_ld_sock && _closesocket
=yes
3087 if test "$_closesocket" = yes ; then
3088 def_closesocket
='#define HAVE_CLOSESOCKET 1'
3090 def_closesocket
='#define HAVE_CLOSESOCKET 0'
3092 echores
"$_closesocket"
3096 test $_winsock2_h = no
&& test $inet_pton = no
&&
3097 test $inet_aton = no
&& _network
=no
3098 if test "$_network" = yes ; then
3099 def_network
='#define CONFIG_NETWORK 1'
3100 extra_ldflags
="$extra_ldflags $_ld_sock"
3101 _inputmodules
="network $_inputmodules"
3103 _noinputmodules
="network $_noinputmodules"
3104 def_network
='#undef CONFIG_NETWORK'
3111 if test "$_inet6" = auto
; then
3113 #include <sys/types.h>
3114 #if !defined(_WIN32) || defined(__CYGWIN__)
3115 #include <sys/socket.h>
3116 #include <netinet/in.h>
3118 #include <ws2tcpip.h>
3120 int main(void) { struct sockaddr_in6 six; socket(AF_INET6, SOCK_STREAM, AF_INET6); return 0; }
3123 if cc_check
$_ld_sock ; then
3127 if test "$_inet6" = yes ; then
3128 def_inet6
='#define HAVE_AF_INET6 1'
3130 def_inet6
='#undef HAVE_AF_INET6'
3135 echocheck
"gethostbyname2"
3136 if test "$_gethostbyname2" = auto
; then
3138 #include <sys/types.h>
3139 #include <sys/socket.h>
3141 int main(void) { gethostbyname2("", AF_INET); return 0; }
3148 if test "$_gethostbyname2" = yes ; then
3149 def_gethostbyname2
='#define HAVE_GETHOSTBYNAME2 1'
3151 def_gethostbyname2
='#undef HAVE_GETHOSTBYNAME2'
3153 echores
"$_gethostbyname2"
3156 echocheck
"inttypes.h (required)"
3158 #include <inttypes.h>
3159 int main(void) { return 0; }
3162 cc_check
&& _inttypes
=yes
3163 echores
"$_inttypes"
3165 if test "$_inttypes" = no
; then
3166 echocheck
"bitypes.h (inttypes.h predecessor)"
3168 #include <sys/bitypes.h>
3169 int main(void) { return 0; }
3171 cc_check
&& _inttypes
=yes
3172 if test "$_inttypes" = yes ; then
3173 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."
3175 die
"Cannot find header either inttypes.h or bitypes.h. There is no chance for compilation to succeed."
3180 echocheck
"int_fastXY_t in inttypes.h"
3182 #include <inttypes.h>
3184 volatile int_fast16_t v= 0;
3188 cc_check
&& _fast_inttypes
=yes
3189 if test "$_fast_inttypes" = no
; then
3191 typedef signed char int_fast8_t;
3192 typedef signed int int_fast16_t;
3193 typedef signed int int_fast32_t;
3194 typedef signed long long int_fast64_t;
3195 typedef unsigned char uint_fast8_t;
3196 typedef unsigned int uint_fast16_t;
3197 typedef unsigned int uint_fast32_t;
3198 typedef unsigned long long uint_fast64_t;'
3200 echores
"$_fast_inttypes"
3203 echocheck
"malloc.h"
3206 int main(void) { (void) malloc(0); return 0; }
3209 cc_check
&& _malloc
=yes
3210 if test "$_malloc" = yes ; then
3211 def_malloc_h
='#define HAVE_MALLOC_H 1'
3213 def_malloc_h
='#define HAVE_MALLOC_H 0'
3215 # malloc.h emits a warning in FreeBSD and OpenBSD
3216 freebsd || openbsd || dragonfly
&& def_malloc_h
='#define HAVE_MALLOC_H 0'
3220 echocheck
"memalign()"
3221 # XXX restrict to x86 ? extend to other CPUs/cacheline sizes ?
3222 def_memalign_hack
='#define CONFIG_MEMALIGN_HACK 0'
3225 int main(void) { (void) memalign(64, sizeof(char)); return 0; }
3228 cc_check
&& _memalign
=yes
3229 if test "$_memalign" = yes ; then
3230 def_memalign
='#define HAVE_MEMALIGN 1'
3232 def_memalign
='#define HAVE_MEMALIGN 0'
3233 def_map_memalign
='#define memalign(a,b) malloc(b)'
3234 darwin || def_memalign_hack
='#define CONFIG_MEMALIGN_HACK 1'
3236 echores
"$_memalign"
3239 echocheck
"posix_memalign()"
3241 def_posix_memalign
='#define HAVE_POSIX_MEMALIGN 0'
3243 #define _XOPEN_SOURCE 600
3245 int main(void) { posix_memalign(NULL, 0, 0); }
3247 cc_check
&& posix_memalign
=yes && def_posix_memalign
='#define HAVE_POSIX_MEMALIGN 1'
3248 echores
"$posix_memalign"
3251 echocheck
"alloca.h"
3254 int main(void) { (void) alloca(0); return 0; }
3257 cc_check
&& _alloca
=yes
3259 def_alloca_h
='#define HAVE_ALLOCA_H 1'
3261 def_alloca_h
='#undef HAVE_ALLOCA_H'
3266 echocheck
"fastmemcpy"
3267 if test "$_fastmemcpy" = yes ; then
3268 def_fastmemcpy
='#define CONFIG_FASTMEMCPY 1'
3270 def_fastmemcpy
='#undef CONFIG_FASTMEMCPY'
3272 echores
"$_fastmemcpy"
3277 #include <sys/types.h>
3278 #include <sys/mman.h>
3279 int main(void) { (void) mmap(0, 0, 0, 0, 0, 0); return 0; }
3282 cc_check
&& _mman
=yes
3283 if test "$_mman" = yes ; then
3284 def_mman_h
='#define HAVE_SYS_MMAN_H 1'
3286 def_mman_h
='#undef HAVE_SYS_MMAN_H'
3287 os2
&& _need_mmap
=yes
3292 #include <sys/types.h>
3293 #include <sys/mman.h>
3294 int main(void) { void *p = MAP_FAILED; return 0; }
3296 _mman_has_map_failed
=no
3297 cc_check
&& _mman_has_map_failed
=yes
3298 if test "$_mman_has_map_failed" = yes ; then
3299 def_mman_has_map_failed
=''
3301 def_mman_has_map_failed
='#define MAP_FAILED ((void *) -1)'
3304 echocheck
"dynamic loader"
3308 int main(void) { dlopen(NULL, 0); dlclose(NULL); dlsym(NULL, NULL); return 0; }
3311 for _ld_tmp
in "" "-ldl" ; do
3312 cc_check
$_ld_tmp && _ld_dl
="$_ld_tmp" && _dl
=yes && break
3314 if test "$_dl" = yes ; then
3315 def_dl
='#define HAVE_LIBDL 1'
3317 def_dl
='#undef HAVE_LIBDL'
3322 echocheck
"dynamic a/v plugins support"
3323 if test "$_dl" = no
; then
3326 if test "$_dynamic_plugins" = yes ; then
3327 def_dynamic_plugins
='#define CONFIG_DYNAMIC_PLUGINS 1'
3329 def_dynamic_plugins
='#undef CONFIG_DYNAMIC_PLUGINS'
3331 echores
"$_dynamic_plugins"
3334 def_threads
='#define HAVE_THREADS 0'
3338 THREAD_CFLAGS
=-D_REENTRANT
3339 elif freebsd || netbsd || openbsd || bsdos
; then
3340 THREAD_CFLAGS
=-D_THREAD_SAFE
3342 if test "$_pthreads" = auto
; then
3344 #include <pthread.h>
3345 void* func(void *arg) { return arg; }
3346 int main(void) { pthread_t tid; return pthread_create(&tid, 0, func, 0) == 0 ? 0 : 1; }
3350 for _ld_tmp
in "-lpthreadGC2" "" "-lpthread" "-pthread" ; do
3351 # for crosscompilation, we cannot execute the program, be happy if we can link statically
3352 cc_check
$THREAD_CFLAGS $_ld_tmp && (tmp_run ||
test "$_ld_static") && _ld_pthread
="$_ld_tmp" && _pthreads
=yes && break
3356 if test "$_pthreads" = yes ; then
3357 test $_ld_pthread && _res_comment
="using $_ld_pthread"
3358 def_pthreads
='#define HAVE_PTHREADS 1'
3359 def_threads
='#define HAVE_THREADS 1'
3360 extra_cflags
="$extra_cflags $THREAD_CFLAGS"
3362 _res_comment
="v4l, v4l2, ao_nas, win32 loader disabled"
3363 def_pthreads
='#undef HAVE_PTHREADS'
3364 _nas
=no
; _tv_v4l1
=no
; _tv_v4l2
=no
3365 mingw32 || _win32dll
=no
3367 echores
"$_pthreads"
3370 if test "$_pthreads" = yes ; then
3371 def_pthread_cache
="#define PTHREAD_CACHE 1"
3374 def_stream_cache
="#undef CONFIG_STREAM_CACHE"
3378 echocheck
"w32threads"
3379 if test "$_pthreads" = yes ; then
3380 _res_comment
="using pthread instead"
3383 if test "$_w32threads" = auto
; then
3385 mingw32
&& _w32threads
=yes
3387 test "$_w32threads" = yes && def_threads
='#define HAVE_THREADS 1'
3388 echores
"$_w32threads"
3392 if test "$_rpath" = yes ; then
3393 for I
in $
(echo $extra_ldflags |
sed 's/-L//g') ; do
3394 tmp
="$tmp $(echo $I | sed 's/.*/ -L& -Wl,-R&/')"
3401 if test "$_iconv" = auto
; then
3406 #define INBUFSIZE 1024
3407 #define OUTBUFSIZE 4096
3409 char inbuffer[INBUFSIZE];
3410 char outbuffer[OUTBUFSIZE];
3415 char *tocode="UTF-8";
3416 char *fromcode="cp1250";
3417 if ((icdsc = iconv_open(tocode, fromcode)) != (iconv_t)(-1)) {
3418 while ((numread = read(0, inbuffer, INBUFSIZE))) {
3419 char *iptr=inbuffer;
3420 char *optr=outbuffer;
3421 size_t inleft=numread;
3422 size_t outleft=OUTBUFSIZE;
3423 if (iconv(icdsc, (const char **)&iptr, &inleft, &optr, &outleft)
3425 write(1, outbuffer, OUTBUFSIZE - outleft);
3428 if (iconv_close(icdsc) == -1)
3435 for _ld_tmp
in "" "-liconv" "-liconv $_ld_dl" ; do
3436 cc_check
$_ld_lm $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && \
3440 if test "$_iconv" = yes ; then
3441 def_iconv
='#define CONFIG_ICONV 1'
3443 def_iconv
='#undef CONFIG_ICONV'
3448 echocheck
"soundcard.h"
3450 def_soundcard_h
='#undef HAVE_SOUNDCARD_H'
3451 def_sys_soundcard_h
='#undef HAVE_SYS_SOUNDCARD_H'
3452 for _soundcard_header
in "sys/soundcard.h" "soundcard.h"; do
3454 #include <$_soundcard_header>
3455 int main(void) { return 0; }
3457 cc_check
&& _soundcard_h
=yes && _res_comment
="$_soundcard_header" && break
3460 if test "$_soundcard_h" = yes ; then
3461 if test $_soundcard_header = "sys/soundcard.h"; then
3462 def_sys_soundcard_h
='#define HAVE_SYS_SOUNDCARD_H 1'
3464 def_soundcard_h
='#define HAVE_SOUNDCARD_H 1'
3467 echores
"$_soundcard_h"
3470 echocheck
"sys/dvdio.h"
3473 #include <sys/dvdio.h>
3474 int main(void) { return 0; }
3477 cc_check
&& _dvdio
=yes
3478 if test "$_dvdio" = yes ; then
3479 def_dvdio
='#define DVD_STRUCT_IN_SYS_DVDIO_H 1'
3481 def_dvdio
='#undef DVD_STRUCT_IN_SYS_DVDIO_H'
3486 echocheck
"sys/cdio.h"
3489 #include <sys/cdio.h>
3490 int main(void) { return 0; }
3493 cc_check
&& _cdio
=yes
3494 if test "$_cdio" = yes ; then
3495 def_cdio
='#define DVD_STRUCT_IN_SYS_CDIO_H 1'
3497 def_cdio
='#undef DVD_STRUCT_IN_SYS_CDIO_H'
3502 echocheck
"linux/cdrom.h"
3504 #include <sys/types.h>
3505 #include <linux/cdrom.h>
3506 int main(void) { return 0; }
3509 cc_check
&& _cdrom
=yes
3510 if test "$_cdrom" = yes ; then
3511 def_cdrom
='#define DVD_STRUCT_IN_LINUX_CDROM_H 1'
3513 def_cdrom
='#undef DVD_STRUCT_IN_LINUX_CDROM_H'
3521 int main(void) { return 0; }
3524 cc_check
&& _dvd
=yes
3525 if test "$_dvd" = yes ; then
3526 def_dvd
='#define DVD_STRUCT_IN_DVD_H 1'
3528 def_dvd
='#undef DVD_STRUCT_IN_DVD_H'
3534 echocheck
"BSDI dvd.h"
3537 int main(void) { return 0; }
3540 cc_check
&& _bsdi_dvd
=yes
3541 if test "$_bsdi_dvd" = yes ; then
3542 def_bsdi_dvd
='#define DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H 1'
3544 def_bsdi_dvd
='#undef DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H'
3546 echores
"$_bsdi_dvd"
3551 # also used by AIX, but AIX does not support VCD and/or libdvdread
3552 echocheck
"HP-UX SCSI header"
3554 #include <sys/scsi.h>
3555 int main(void) { return 0; }
3558 cc_check
&& _hpux_scsi_h
=yes
3559 if test "$_hpux_scsi_h" = yes ; then
3560 def_hpux_scsi_h
='#define HPUX_SCTL_IO 1'
3562 def_hpux_scsi_h
='#undef HPUX_SCTL_IO'
3564 echores
"$_hpux_scsi_h"
3569 echocheck
"userspace SCSI headers (Solaris)"
3572 #include <stropts.h>
3573 #include <sys/scsi/scsi_types.h>
3574 #include <sys/scsi/impl/uscsi.h>
3575 int main(void) { return 0; }
3578 cc_check
&& _sol_scsi_h
=yes
3579 if test "$_sol_scsi_h" = yes ; then
3580 def_sol_scsi_h
='#define SOLARIS_USCSI 1'
3582 def_sol_scsi_h
='#undef SOLARIS_USCSI'
3584 echores
"$_sol_scsi_h"
3589 if test "$_termcap" = auto
; then
3593 int main(void) { tgetent(NULL, NULL); return 0; }
3596 for _ld_tmp
in "-lncurses" "-ltinfo" "-ltermcap"; do
3597 cc_check
$_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" \
3598 && _termcap
=yes && break
3601 if test "$_termcap" = yes ; then
3602 def_termcap
='#define HAVE_TERMCAP 1'
3603 test $_ld_tmp && _res_comment
="using $_ld_tmp"
3605 def_termcap
='#undef HAVE_TERMCAP'
3611 def_termios
='#undef HAVE_TERMIOS'
3612 def_termios_h
='#undef HAVE_TERMIOS_H'
3613 def_termios_sys_h
='#undef HAVE_SYS_TERMIOS_H'
3614 if test "$_termios" = auto
; then
3616 for _termios_header
in "sys/termios.h" "termios.h"; do
3618 #include <$_termios_header>
3619 int main(void) { return 0; }
3621 cc_check
&& _termios
=yes && _res_comment
="using $_termios_header" && break
3625 if test "$_termios" = yes ; then
3626 def_termios
='#define HAVE_TERMIOS 1'
3627 if test "$_termios_header" = "termios.h" ; then
3628 def_termios_h
='#define HAVE_TERMIOS_H 1'
3630 def_termios_sys_h
='#define HAVE_SYS_TERMIOS_H 1'
3637 if test "$_shm" = auto
; then
3639 #include <sys/types.h>
3640 #include <sys/shm.h>
3641 int main(void) { shmget(0, 0, 0); shmat(0, 0, 0); shmctl(0, 0, 0); return 0; }
3644 cc_check
&& _shm
=yes
3646 if test "$_shm" = yes ; then
3647 def_shm
='#define HAVE_SHM 1'
3649 def_shm
='#undef HAVE_SHM'
3654 echocheck
"strsep()"
3657 int main(void) { char *s = "Hello, world!"; (void) strsep(&s, ","); return 0; }
3660 cc_check
&& _strsep
=yes
3661 if test "$_strsep" = yes ; then
3662 def_strsep
='#define HAVE_STRSEP 1'
3665 def_strsep
='#undef HAVE_STRSEP'
3671 echocheck
"vsscanf()"
3673 #define _ISOC99_SOURCE
3676 int main(void) { vsscanf(0, 0, 0); return 0; }
3679 cc_check
&& _vsscanf
=yes
3680 if test "$_vsscanf" = yes ; then
3681 def_vsscanf
='#define HAVE_VSSCANF 1'
3684 def_vsscanf
='#undef HAVE_VSSCANF'
3692 #define _XOPEN_SOURCE 600
3694 int main(void) { swab(0, 0, 0); return 0; }
3697 cc_check
&& _swab
=yes
3698 if test "$_swab" = yes ; then
3699 def_swab
='#define HAVE_SWAB 1'
3702 def_swab
='#undef HAVE_SWAB'
3707 echocheck
"POSIX select()"
3711 #include <sys/types.h>
3713 #include <sys/time.h>
3715 int main(void) {int nfds = 1; fd_set readfds; struct timeval timeout; select(nfds,&readfds,NULL,NULL,&timeout); return 0; }
3718 def_posix_select
='#undef HAVE_POSIX_SELECT'
3719 #select() of kLIBC (OS/2) supports socket only
3720 ! os2
&& cc_check
&& _posix_select
=yes \
3721 && def_posix_select
='#define HAVE_POSIX_SELECT 1'
3722 echores
"$_posix_select"
3725 echocheck
"audio select()"
3726 if test "$_select" = no
; then
3727 def_select
='#undef HAVE_AUDIO_SELECT'
3728 elif test "$_select" = yes ; then
3729 def_select
='#define HAVE_AUDIO_SELECT 1'
3734 echocheck
"gettimeofday()"
3737 #include <sys/time.h>
3738 int main(void) {struct timeval tv_start; gettimeofday(&tv_start, NULL); return 0; }
3741 cc_check
&& _gettimeofday
=yes
3742 if test "$_gettimeofday" = yes ; then
3743 def_gettimeofday
='#define HAVE_GETTIMEOFDAY 1'
3744 _need_gettimeofday
=no
3746 def_gettimeofday
='#undef HAVE_GETTIMEOFDAY'
3747 _need_gettimeofday
=yes
3749 echores
"$_gettimeofday"
3756 int main(void) { glob_t gg; glob("filename",0,NULL,&gg); return 0; }
3759 cc_check
&& _glob
=yes
3760 if test "$_glob" = yes ; then
3761 def_glob
='#define HAVE_GLOB 1'
3764 def_glob
='#undef HAVE_GLOB'
3770 echocheck
"setenv()"
3773 int main(void) { setenv("","",0); return 0; }
3776 cc_check
&& _setenv
=yes
3777 if test "$_setenv" = yes ; then
3778 def_setenv
='#define HAVE_SETENV 1'
3781 def_setenv
='#undef HAVE_SETENV'
3788 echocheck
"sysi86()"
3790 #include <sys/sysi86.h>
3791 int main(void) { sysi86(0); return 0; }
3794 cc_check
&& _sysi86
=yes
3795 if test "$_sysi86" = yes ; then
3796 def_sysi86
='#define HAVE_SYSI86 1'
3798 #include <sys/sysi86.h>
3799 int main(void) { int sysi86(int, void*); sysi86(0); return 0; }
3801 cc_check
&& def_sysi86_iv
='#define HAVE_SYSI86_iv 1'
3803 def_sysi86
='#undef HAVE_SYSI86'
3809 echocheck
"sys/sysinfo.h"
3811 #include <sys/sysinfo.h>
3813 struct sysinfo s_info;
3819 cc_check
&& _sys_sysinfo
=yes
3820 if test "$_sys_sysinfo" = yes ; then
3821 def_sys_sysinfo_h
='#define HAVE_SYS_SYSINFO_H 1'
3823 def_sys_sysinfo_h
='#undef HAVE_SYS_SYSINFO_H'
3825 echores
"$_sys_sysinfo"
3830 echocheck
"Mac OS X Finder Support"
3831 def_macosx_finder
='#undef CONFIG_MACOSX_FINDER'
3832 if test "$_macosx_finder" = yes ; then
3833 def_macosx_finder
='#define CONFIG_MACOSX_FINDER 1'
3834 extra_ldflags
="$extra_ldflags -framework Carbon"
3836 echores
"$_macosx_finder"
3838 echocheck
"Mac OS X Bundle file locations"
3839 def_macosx_bundle
='#undef CONFIG_MACOSX_BUNDLE'
3840 test "$_macosx_bundle" = auto
&& _macosx_bundle
=$_macosx_finder
3841 if test "$_macosx_bundle" = yes ; then
3842 def_macosx_bundle
='#define CONFIG_MACOSX_BUNDLE 1'
3843 extra_ldflags
="$extra_ldflags -framework Carbon"
3845 echores
"$_macosx_bundle"
3847 echocheck
"Apple Remote"
3848 if test "$_apple_remote" = auto
; then
3852 #include <IOKit/IOCFPlugIn.h>
3854 io_iterator_t hidObjectIterator = (io_iterator_t)NULL;
3855 CFMutableDictionaryRef hidMatchDictionary;
3856 IOReturn ioReturnValue;
3858 // Set up a matching dictionary to search the I/O Registry by class.
3859 // name for all HID class devices
3860 hidMatchDictionary = IOServiceMatching("AppleIRController");
3862 // Now search I/O Registry for matching devices.
3863 ioReturnValue = IOServiceGetMatchingServices(kIOMasterPortDefault,
3864 hidMatchDictionary, &hidObjectIterator);
3866 // If search is unsuccessful, return nonzero.
3867 if (ioReturnValue != kIOReturnSuccess ||
3868 !IOIteratorIsValid(hidObjectIterator)) {
3874 cc_check
-framework IOKit
&& tmp_run
&& _apple_remote
=yes
3876 if test "$_apple_remote" = yes ; then
3877 def_apple_remote
='#define CONFIG_APPLE_REMOTE 1'
3878 libs_mplayer
="$libs_mplayer -framework IOKit -framework Cocoa"
3880 def_apple_remote
='#undef CONFIG_APPLE_REMOTE'
3882 echores
"$_apple_remote"
3888 echocheck
"Apple IR"
3889 if test "$_apple_ir" = auto
; then
3892 #include <linux/types.h>
3893 #include <linux/input.h>
3895 struct input_event ev;
3900 cc_check
&& tmp_run
&& _apple_ir
=yes
3902 if test "$_apple_ir" = yes ; then
3903 def_apple_ir
='#define CONFIG_APPLE_IR 1'
3905 def_apple_ir
='#undef CONFIG_APPLE_IR'
3907 echores
"$_apple_ir"
3910 echocheck
"pkg-config"
3911 _pkg_config
=pkg-config
3912 if $
($_pkg_config --version > /dev
/null
2>&1); then
3913 if test "$_ld_static"; then
3914 _pkg_config
="$_pkg_config --static"
3923 echocheck
"Samba support (libsmbclient)"
3924 if test "$_smb" = yes; then
3925 extra_ldflags
="$extra_ldflags -lsmbclient"
3927 if test "$_smb" = auto
; then
3930 #include <libsmbclient.h>
3931 int main(void) { smbc_opendir("smb://"); return 0; }
3933 for _ld_tmp
in "-lsmbclient" "-lsmbclient $_ld_dl" "-lsmbclient $_ld_dl -lnsl" "-lsmbclient $_ld_dl -lssl -lnsl" ; do
3934 cc_check
$_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && \
3939 if test "$_smb" = yes; then
3940 def_smb
="#define CONFIG_LIBSMBCLIENT"
3941 _inputmodules
="smb $_inputmodules"
3943 def_smb
="#undef CONFIG_LIBSMBCLIENT"
3944 _noinputmodules
="smb $_noinputmodules"
3955 if test "$_tdfxfb" = yes ; then
3956 def_tdfxfb
='#define CONFIG_TDFXFB 1'
3957 _vomodules
="tdfxfb $_vomodules"
3959 def_tdfxfb
='#undef CONFIG_TDFXFB'
3960 _novomodules
="tdfxfb $_novomodules"
3965 if test "$_s3fb" = yes ; then
3966 def_s3fb
='#define CONFIG_S3FB 1'
3967 _vomodules
="s3fb $_vomodules"
3969 def_s3fb
='#undef CONFIG_S3FB'
3970 _novomodules
="s3fb $_novomodules"
3975 if test "$_wii" = yes ; then
3976 def_wii
='#define CONFIG_WII 1'
3977 _vomodules
="wii $_vomodules"
3979 def_wii
='#undef CONFIG_WII'
3980 _novomodules
="wii $_novomodules"
3985 if test "$_tdfxvid" = yes ; then
3986 def_tdfxvid
='#define CONFIG_TDFX_VID 1'
3987 _vomodules
="tdfx_vid $_vomodules"
3989 def_tdfxvid
='#undef CONFIG_TDFX_VID'
3990 _novomodules
="tdfx_vid $_novomodules"
3995 if test "$_xvr100" = auto
; then
3998 #include <sys/fbio.h>
3999 #include <sys/visual_io.h>
4001 struct vis_identifier ident;
4002 struct fbgattr attr;
4003 ioctl(0, VIS_GETIDENTIFIER, &ident);
4004 ioctl(0, FBIOGATTR, &attr);
4009 cc_check
&& _xvr100
=yes
4011 if test "$_xvr100" = yes ; then
4012 def_xvr100
='#define CONFIG_XVR100 1'
4013 _vomodules
="xvr100 $_vomodules"
4015 def_tdfxvid
='#undef CONFIG_XVR100'
4016 _novomodules
="xvr100 $_novomodules"
4021 if test "$_tga" = yes ; then
4022 def_tga
='#define CONFIG_TGA 1'
4023 _vomodules
="tga $_vomodules"
4025 def_tga
='#undef CONFIG_TGA'
4026 _novomodules
="tga $_novomodules"
4031 echocheck
"md5sum support"
4032 if test "$_md5sum" = yes; then
4033 def_md5sum
="#define CONFIG_MD5SUM"
4034 _vomodules
="md5sum $_vomodules"
4036 def_md5sum
="#undef CONFIG_MD5SUM"
4037 _novomodules
="md5sum $_novomodules"
4042 echocheck
"yuv4mpeg support"
4043 if test "$_yuv4mpeg" = yes; then
4044 def_yuv4mpeg
="#define CONFIG_YUV4MPEG"
4045 _vomodules
="yuv4mpeg $_vomodules"
4047 def_yuv4mpeg
="#undef CONFIG_YUV4MPEG"
4048 _novomodules
="yuv4mpeg $_novomodules"
4050 echores
"$_yuv4mpeg"
4054 if test "$_bl" = yes ; then
4055 def_bl
='#define CONFIG_BL 1'
4056 _vomodules
="bl $_vomodules"
4058 def_bl
='#undef CONFIG_BL'
4059 _novomodules
="bl $_novomodules"
4064 echocheck
"DirectFB"
4065 if test "$_directfb" = auto
; then
4068 #include <directfb.h>
4069 int main(void) { IDirectFB *foo; DirectFBInit(0,0); return 0; }
4071 for _inc_tmp
in "" -I/usr
/local
/include
/directfb \
4072 -I/usr
/include
/directfb
-I/usr
/local
/include
; do
4073 cc_check
$_inc_tmp -ldirectfb && _directfb
=yes && \
4074 extra_cflags
="$extra_cflags $_inc_tmp" && break
4079 expr $1 \
* 65536 + $2 \
* 256 + $3
4082 if test "$_directfb" = yes; then
4084 #include <directfb_version.h>
4086 dfb_ver = DIRECTFB_MAJOR_VERSION.DIRECTFB_MINOR_VERSION.DIRECTFB_MICRO_VERSION
4089 if $_cc -E $TMPC $extra_cflags > "$TMPEXE"; then
4090 _directfb_version
=$
(sed -n 's/^dfb_ver[^0-9]*\(.*\)/\1/p' "$TMPEXE" |
tr -d '()')
4091 _dfb_major
=$
(echo $_directfb_version | cut
-d .
-f 1)
4092 _dfb_minor
=$
(echo $_directfb_version | cut
-d .
-f 2)
4093 _dfb_micro
=$
(echo $_directfb_version | cut
-d .
-f 3)
4094 _dfb_version
=$
(dfb_version
$_dfb_major $_dfb_minor $_dfb_micro)
4095 if test "$_dfb_version" -ge $
(dfb_version
0 9 13); then
4096 def_directfb_version
="#define DIRECTFBVERSION $_dfb_version"
4097 _res_comment
="$_directfb_version"
4098 test "$_dfb_version" -ge $
(dfb_version
0 9 15) && _dfbmga
=yes
4100 def_directfb_version
='#undef DIRECTFBVERSION'
4102 _res_comment
="version >=0.9.13 required"
4106 _res_comment
="failed to get version"
4109 echores
"$_directfb"
4111 if test "$_directfb" = yes ; then
4112 def_directfb
='#define CONFIG_DIRECTFB 1'
4113 _vomodules
="directfb $_vomodules"
4114 libs_mplayer
="$libs_mplayer -ldirectfb"
4116 def_directfb
='#undef CONFIG_DIRECTFB'
4117 _novomodules
="directfb $_novomodules"
4119 if test "$_dfbmga" = yes; then
4120 _vomodules
="dfbmga $_vomodules"
4121 def_dfbmga
='#define CONFIG_DFBMGA 1'
4123 _novomodules
="dfbmga $_novomodules"
4124 def_dfbmga
='#undef CONFIG_DFBMGA'
4128 echocheck
"X11 headers presence"
4130 _res_comment
="check if the dev(el) packages are installed"
4131 for I
in $
(echo $extra_cflags |
sed s
/-I//g
) /usr
/include
; do
4132 if test -f "$I/X11/Xlib.h" ; then
4138 if test $_cross_compile = no
; then
4139 for I
in /usr
/X11
/include
/usr
/X11R
7/include
/usr
/X11R
6/include \
4140 /usr
/include
/X11R6
/usr
/openwin
/include
; do
4141 if test -f "$I/X11/Xlib.h" ; then
4142 extra_cflags
="$extra_cflags -I$I"
4144 _res_comment
="using $I"
4149 echores
"$_x11_headers"
4153 if test "$_x11" = auto
&& test "$_x11_headers" = yes ; then
4155 #include <X11/Xlib.h>
4156 #include <X11/Xutil.h>
4157 int main(void) { (void) XCreateWindow(0,0,0,0,0,0,0,0,0,0,0,0); return 0; }
4159 for I
in "" -L/usr
/X11R
7/lib
-L/usr
/X11R
6/lib
-L/usr
/lib
/X11R6 \
4160 -L/usr
/X11
/lib
-L/usr
/lib32
-L/usr
/openwin
/lib
-L/usr
/X11R
6/lib64 \
4163 _ld_tmp
="$I -lXext -lX11 $_ld_pthread -Wl,-R$(echo $I | sed s/^-L//)"
4165 _ld_tmp
="$I -lXext -lX11 $_ld_pthread"
4167 cc_check
$_ld_tmp && libs_mplayer
="$libs_mplayer $_ld_tmp" \
4168 && _x11
=yes && break
4171 if test "$_x11" = yes ; then
4172 def_x11
='#define CONFIG_X11 1'
4173 _vomodules
="x11 xover $_vomodules"
4176 def_x11
='#undef CONFIG_X11'
4177 _novomodules
="x11 $_novomodules"
4178 _res_comment
="check if the dev(el) packages are installed"
4179 # disable stuff that depends on X
4180 _xv
=no
; _xvmc
=no
; _xinerama
=no
; _vm
=no
; _xf86keysym
=no
; _vdpau
=no
4184 echocheck
"Xss screensaver extensions"
4185 if test "$_xss" = auto
; then
4187 #include <X11/Xlib.h>
4188 #include <X11/extensions/scrnsaver.h>
4189 int main(void) { XScreenSaverSuspend(NULL, True); return 0; }
4192 cc_check
-lXss && _xss
=yes
4194 if test "$_xss" = yes ; then
4195 def_xss
='#define CONFIG_XSS 1'
4196 libs_mplayer
="$libs_mplayer -lXss"
4198 def_xss
='#undef CONFIG_XSS'
4205 if test "$_x11" = yes ; then
4207 #include <X11/Xmd.h>
4208 #include <X11/Xlib.h>
4209 #include <X11/Xutil.h>
4210 #include <X11/Xatom.h>
4211 #include <X11/extensions/dpms.h>
4212 int main(void) { (void) DPMSQueryExtension(0, 0, 0); return 0; }
4214 cc_check
-lXdpms && _xdpms3
=yes
4216 #include <X11/Xlib.h>
4217 #include <X11/extensions/dpms.h>
4218 int main(void) { (void) DPMSQueryExtension(0, 0, 0); return 0; }
4220 cc_check
-lXext && _xdpms4
=yes
4222 if test "$_xdpms4" = yes ; then
4223 def_xdpms
='#define CONFIG_XDPMS 1'
4224 _res_comment
="using Xdpms 4"
4226 elif test "$_xdpms3" = yes ; then
4227 def_xdpms
='#define CONFIG_XDPMS 1'
4228 libs_mplayer
="$libs_mplayer -lXdpms"
4229 _res_comment
="using Xdpms 3"
4232 def_xdpms
='#undef CONFIG_XDPMS'
4238 if test "$_xv" = auto
; then
4240 #include <X11/Xlib.h>
4241 #include <X11/extensions/Xvlib.h>
4243 (void) XvGetPortAttribute(0, 0, 0, 0);
4244 (void) XvQueryPortAttributes(0, 0, 0);
4248 cc_check
-lXv && _xv
=yes
4251 if test "$_xv" = yes ; then
4252 def_xv
='#define CONFIG_XV 1'
4253 libs_mplayer
="$libs_mplayer -lXv"
4254 _vomodules
="xv $_vomodules"
4256 def_xv
='#undef CONFIG_XV'
4257 _novomodules
="xv $_novomodules"
4263 if test "$_xv" = yes && test "$_xvmc" != no
; then
4266 #include <X11/Xlib.h>
4267 #include <X11/extensions/Xvlib.h>
4268 #include <X11/extensions/XvMClib.h>
4270 (void) XvMCQueryExtension(0,0,0);
4271 (void) XvMCCreateContext(0,0,0,0,0,0,0);
4274 for _ld_tmp
in $_xvmclib XvMCNVIDIA XvMCW I810XvMC
; do
4275 cc_check
-lXvMC -l$_ld_tmp && _xvmc
=yes && _xvmclib
="$_ld_tmp" && break
4278 if test "$_xvmc" = yes ; then
4279 def_xvmc
='#define CONFIG_XVMC 1'
4280 libs_mplayer
="$libs_mplayer -lXvMC -l$_xvmclib"
4281 _vomodules
="xvmc $_vomodules"
4282 _res_comment
="using $_xvmclib"
4284 def_xvmc
='#define CONFIG_XVMC 0'
4285 _novomodules
="xvmc $_novomodules"
4286 _libavdecoders
=$
(echo $_libavdecoders |
sed -e s
/MPEG_XVMC_DECODER
//)
4292 if test "$_vdpau" = auto
; then
4294 if test "$_dl" = yes ; then
4296 #include <vdpau/vdpau_x11.h>
4297 int main(void) {return VDP_VIDEO_MIXER_ATTRIBUTE_SKIP_CHROMA_DEINTERLACE;}
4299 cc_check
&& _vdpau
=yes
4302 if test "$_vdpau" = yes ; then
4303 def_vdpau
='#define CONFIG_VDPAU 1'
4304 _vomodules
="vdpau $_vomodules"
4306 def_vdpau
='#define CONFIG_VDPAU 0'
4307 _novomodules
="vdpau $_novomodules"
4308 _libavdecoders
=$
(echo $_libavdecoders |
sed -e s
/MPEG_VDPAU_DECODER
// -e s
/MPEG1_VDPAU_DECODER
// -e s
/H264_VDPAU_DECODER
// -e s
/WMV3_VDPAU_DECODER
// -e s
/VC1_VDPAU_DECODER
//)
4313 echocheck
"Xinerama"
4314 if test "$_xinerama" = auto
; then
4316 #include <X11/Xlib.h>
4317 #include <X11/extensions/Xinerama.h>
4318 int main(void) { (void) XineramaIsActive(0); return 0; }
4321 cc_check
-lXinerama && _xinerama
=yes
4324 if test "$_xinerama" = yes ; then
4325 def_xinerama
='#define CONFIG_XINERAMA 1'
4326 libs_mplayer
="$libs_mplayer -lXinerama"
4328 def_xinerama
='#undef CONFIG_XINERAMA'
4330 echores
"$_xinerama"
4333 # Note: the -lXxf86vm library is the VideoMode extension and though it's not
4334 # needed for DGA, AFAIK every distribution packages together with DGA stuffs
4335 # named 'X extensions' or something similar.
4336 # This check may be useful for future mplayer versions (to change resolution)
4337 # If you run into problems, remove '-lXxf86vm'.
4339 if test "$_vm" = auto
; then
4341 #include <X11/Xlib.h>
4342 #include <X11/extensions/xf86vmode.h>
4343 int main(void) { (void) XF86VidModeQueryExtension(0, 0, 0); return 0; }
4346 cc_check
-lXxf86vm && _vm
=yes
4348 if test "$_vm" = yes ; then
4349 def_vm
='#define CONFIG_XF86VM 1'
4350 libs_mplayer
="$libs_mplayer -lXxf86vm"
4352 def_vm
='#undef CONFIG_XF86VM'
4356 # Check for the presence of special keycodes, like audio control buttons
4357 # that XFree86 might have. Used to be bundled with the xf86vm check, but
4358 # has nothing to do with xf86vm and XFree 3.x has xf86vm but does NOT
4359 # have these new keycodes.
4360 echocheck
"XF86keysym"
4361 if test "$_xf86keysym" = auto
; then
4364 #include <X11/Xlib.h>
4365 #include <X11/XF86keysym.h>
4366 int main(void) { return XF86XK_AudioPause; }
4368 cc_check
&& _xf86keysym
=yes
4370 if test "$_xf86keysym" = yes ; then
4371 def_xf86keysym
='#define CONFIG_XF86XK 1'
4373 def_xf86keysym
='#undef CONFIG_XF86XK'
4375 echores
"$_xf86keysym"
4378 if test "$_dga2" = auto
&& test "$_x11" = yes ; then
4380 #include <X11/Xlib.h>
4381 #include <X11/extensions/xf86dga.h>
4382 int main(void) { (void) XDGASetViewport(0, 0, 0, 0, 0); return 0; }
4385 cc_check
-lXxf86dga && _dga2
=yes
4387 if test "$_dga1" = auto
&& test "$_dga2" = no
&& test "$_vm" = yes ; then
4389 #include <X11/Xlib.h>
4390 #include <X11/extensions/xf86dga.h>
4391 int main(void) { (void) XF86DGASetViewPort(0, 0, 0, 0); return 0; }
4394 cc_check
-lXxf86dga -lXxf86vm && _dga1
=yes
4398 def_dga
='#undef CONFIG_DGA'
4399 def_dga1
='#undef CONFIG_DGA1'
4400 def_dga2
='#undef CONFIG_DGA2'
4401 if test "$_dga1" = yes ; then
4403 def_dga1
='#define CONFIG_DGA1 1'
4404 _res_comment
="using DGA 1.0"
4405 elif test "$_dga2" = yes ; then
4407 def_dga2
='#define CONFIG_DGA2 1'
4408 _res_comment
="using DGA 2.0"
4410 if test "$_dga" = yes ; then
4411 def_dga
='#define CONFIG_DGA 1'
4412 libs_mplayer
="$libs_mplayer -lXxf86dga"
4413 _vomodules
="dga $_vomodules"
4415 _novomodules
="dga $_novomodules"
4421 if test "$_3dfx" = yes && test "$_dga" = yes ; then
4422 def_3dfx
='#define CONFIG_3DFX 1'
4423 _vomodules
="3dfx $_vomodules"
4425 def_3dfx
='#undef CONFIG_3DFX'
4426 _novomodules
="3dfx $_novomodules"
4432 #Note: this test is run even with --enable-gl since we autodetect linker flags
4433 if (test "$_x11" = yes || win32
) && test "$_gl" != no
; then
4436 #include <windows.h>
4440 #include <X11/Xlib.h>
4446 wglCreateContext(dc);
4448 glXCreateContext(NULL, NULL, NULL, True);
4455 if cc_check
-lGL $_ld_lm ; then
4457 libs_mplayer
="$libs_mplayer -lGL $_ld_dl"
4458 elif cc_check
-lGL $_ld_lm $_ld_pthread ; then
4460 libs_mplayer
="$libs_mplayer -lGL $_ld_pthread $_ld_dl"
4461 elif cc_check
-DGL_WIN32 -lopengl32 ; then
4464 libs_mplayer
="$libs_mplayer -lopengl32 -lgdi32"
4469 if test "$_gl" = yes ; then
4470 def_gl
='#define CONFIG_GL 1'
4471 if test "$_gl_win32" = yes ; then
4472 def_gl_win32
='#define GL_WIN32 1'
4473 _res_comment
="win32 version"
4475 _vomodules
="opengl $_vomodules"
4477 def_gl
='#undef CONFIG_GL'
4478 def_gl_win32
='#undef GL_WIN32'
4479 _novomodules
="opengl $_novomodules"
4485 def_vidix
='#undef CONFIG_VIDIX'
4486 def_vidix_drv_cyberblade
='#undef CONFIG_VIDIX_DRV_CYBERBLADE'
4487 _vidix_drv_cyberblade
=no
4488 def_vidix_drv_ivtv
='#undef CONFIG_VIDIX_DRV_IVTV'
4490 def_vidix_drv_ivtv
='#undef CONFIG_VIDIX_DRV_IVTV'
4492 def_vidix_drv_mach64
='#undef CONFIG_VIDIX_DRV_MACH64'
4493 _vidix_drv_mach64
=no
4494 def_vidix_drv_mga
='#undef CONFIG_VIDIX_DRV_MGA'
4496 def_vidix_drv_mga_crtc2
='#undef CONFIG_VIDIX_DRV_MGA_CRTC2'
4497 _vidix_drv_mga_crtc2
=no
4498 def_vidix_drv_nvidia
='#undef CONFIG_VIDIX_DRV_NVIDIA'
4499 _vidix_drv_nvidia
=no
4500 def_vidix_drv_pm2
='#undef CONFIG_VIDIX_DRV_PM2'
4502 def_vidix_drv_pm3
='#undef CONFIG_VIDIX_DRV_PM3'
4504 def_vidix_drv_radeon
='#undef CONFIG_VIDIX_DRV_RADEON'
4505 _vidix_drv_radeon
=no
4506 def_vidix_drv_rage128
='#undef CONFIG_VIDIX_DRV_RAGE128'
4507 _vidix_drv_rage128
=no
4508 def_vidix_drv_s3
='#undef CONFIG_VIDIX_DRV_S3'
4510 def_vidix_drv_sh_veu
='#undef CONFIG_VIDIX_DRV_SH_VEU'
4511 _vidix_drv_sh_veu
=no
4512 def_vidix_drv_sis
='#undef CONFIG_VIDIX_DRV_SIS'
4514 def_vidix_drv_unichrome
='#undef CONFIG_VIDIX_DRV_UNICHROME'
4515 _vidix_drv_unichrome
=no
4516 if test "$_vidix" = auto
; then
4518 x86
&& (linux || freebsd || netbsd || openbsd || dragonfly || sunos || win32
) \
4520 (ppc || alpha
) && linux
&& _vidix
=yes
4524 if test "$_vidix" = yes ; then
4525 def_vidix
='#define CONFIG_VIDIX 1'
4526 _vomodules
="cvidix $_vomodules"
4527 test "$_vidix_drivers" || _vidix_drivers
="cyberblade ivtv mach64 mga mga_crtc2 nvidia pm2 pm3 radeon rage128 s3 sh_veu sis unichrome"
4528 test $_ivtv = "yes" || _vidix_drivers
=$
(echo $_vidix_drivers |
sed s
/ivtv
//)
4530 # some vidix drivers are architecture and os specific, discard them elsewhere
4531 x86 || _vidix_drivers
=$
(echo $_vidix_drivers |
sed -e s
/cyberblade
// -e s
/sis
// -e s
/unichrome
// -e s
/s
3//)
4532 (test $host_arch = "sh" && linux
) || _vidix_drivers
=$
(echo $_vidix_drivers |
sed s
/sh_veu
//)
4534 for driver
in $_vidix_drivers ; do
4535 uc_driver
=$
(echo $driver |
tr '[a-z]' '[A-Z]')
4536 eval _vidix_drv_
${driver}=yes
4537 eval def_vidix_drv_
${driver}=\"\
#define CONFIG_VIDIX_DRV_${uc_driver} 1\"
4540 echocheck
"VIDIX PCI device name database"
4541 echores
"$_vidix_pcidb"
4542 if test "$_vidix_pcidb" = yes ; then
4548 echocheck
"VIDIX dhahelper support"
4549 test "$_dhahelper" = yes && cflags_dhahelper
=-DCONFIG_DHAHELPER
4550 echores
"$_dhahelper"
4552 echocheck
"VIDIX svgalib_helper support"
4553 test "$_svgalib_helper" = yes && cflags_svgalib_helper
=-DCONFIG_SVGAHELPER
4554 echores
"$_svgalib_helper"
4557 _novomodules
="cvidix $_novomodules"
4560 if test "$_vidix" = yes && win32
; then
4562 _vomodules
="winvidix $_vomodules"
4563 libs_mplayer
="$libs_mplayer -lgdi32"
4565 _novomodules
="winvidix $_novomodules"
4567 if test "$_vidix" = yes && test "$_x11" = yes; then
4569 _vomodules
="xvidix $_vomodules"
4571 _novomodules
="xvidix $_novomodules"
4574 echocheck
"/dev/mga_vid"
4575 if test "$_mga" = auto
; then
4577 test -c /dev
/mga_vid
&& _mga
=yes
4579 if test "$_mga" = yes ; then
4580 def_mga
='#define CONFIG_MGA 1'
4581 _vomodules
="mga $_vomodules"
4583 def_mga
='#undef CONFIG_MGA'
4584 _novomodules
="mga $_novomodules"
4590 if test "$_xmga" = auto
; then
4592 test "$_x11" = yes && test "$_mga" = yes && _xmga
=yes
4594 if test "$_xmga" = yes ; then
4595 def_xmga
='#define CONFIG_XMGA 1'
4596 _vomodules
="xmga $_vomodules"
4598 def_xmga
='#undef CONFIG_XMGA'
4599 _novomodules
="xmga $_novomodules"
4605 if test "$_ggi" = auto
; then
4607 #include <ggi/ggi.h>
4608 int main(void) { ggiInit(); return 0; }
4611 cc_check
-lggi && _ggi
=yes
4613 if test "$_ggi" = yes ; then
4614 def_ggi
='#define CONFIG_GGI 1'
4615 libs_mplayer
="$libs_mplayer -lggi"
4616 _vomodules
="ggi $_vomodules"
4618 def_ggi
='#undef CONFIG_GGI'
4619 _novomodules
="ggi $_novomodules"
4623 echocheck
"GGI extension: libggiwmh"
4624 if test "$_ggiwmh" = auto
; then
4627 #include <ggi/ggi.h>
4628 #include <ggi/wmh.h>
4629 int main(void) { ggiInit(); ggiWmhInit(); return 0; }
4631 cc_check
-lggi -lggiwmh && _ggiwmh
=yes
4633 # needed to get right output on obscure combination
4634 # like --disable-ggi --enable-ggiwmh
4635 if test "$_ggi" = yes && test "$_ggiwmh" = yes ; then
4636 def_ggiwmh
='#define CONFIG_GGIWMH 1'
4637 libs_mplayer
="$libs_mplayer -lggiwmh"
4640 def_ggiwmh
='#undef CONFIG_GGIWMH'
4646 if test "$_aa" = auto
; then
4649 extern struct aa_hardware_params aa_defparams;
4650 extern struct aa_renderparams aa_defrenderparams;
4654 (void) aa_init(0, 0, 0);
4655 c = aa_autoinit(&aa_defparams);
4656 p = aa_getrenderparams();
4657 aa_autoinitkbd(c,0);
4661 for _ld_tmp
in "-laa" ; do
4662 cc_check
$_ld_tmp && libs_mplayer
="$libs_mplayer $_ld_tmp" && _aa
=yes && break
4665 if test "$_aa" = yes ; then
4666 def_aa
='#define CONFIG_AA 1'
4668 libs_mplayer
="$libs_mplayer $(aalib-config --libs | cut -d " " -f 2,5,6)"
4670 _vomodules
="aa $_vomodules"
4672 def_aa
='#undef CONFIG_AA'
4673 _novomodules
="aa $_novomodules"
4679 if test "$_caca" = auto
; then
4681 if ( caca-config
--version ) >> "$TMPLOG" 2>&1 ; then
4684 #ifdef CACA_API_VERSION_1
4687 int main(void) { (void) caca_init(); return 0; }
4689 cc_check $
(caca-config
--libs) && _caca
=yes
4692 if test "$_caca" = yes ; then
4693 def_caca
='#define CONFIG_CACA 1'
4694 extra_cflags
="$extra_cflags $(caca-config --cflags)"
4695 libs_mplayer
="$libs_mplayer $(caca-config --libs)"
4696 _vomodules
="caca $_vomodules"
4698 def_caca
='#undef CONFIG_CACA'
4699 _novomodules
="caca $_novomodules"
4705 if test "$_svga" = auto
; then
4708 int main(void) { return 0; }
4711 cc_check
-lvga $_ld_lm && _svga
=yes
4713 if test "$_svga" = yes ; then
4714 def_svga
='#define CONFIG_SVGALIB 1'
4715 libs_mplayer
="$libs_mplayer -lvga"
4716 _vomodules
="svga $_vomodules"
4718 def_svga
='#undef CONFIG_SVGALIB'
4719 _novomodules
="svga $_novomodules"
4725 if test "$_fbdev" = auto
; then
4729 if test "$_fbdev" = yes ; then
4730 def_fbdev
='#define CONFIG_FBDEV 1'
4731 _vomodules
="fbdev $_vomodules"
4733 def_fbdev
='#undef CONFIG_FBDEV'
4734 _novomodules
="fbdev $_novomodules"
4741 if test "$_dvb" = auto
; then
4745 #include <sys/ioctl.h>
4749 #include <ost/dmx.h>
4750 #include <ost/frontend.h>
4751 #include <ost/sec.h>
4752 #include <ost/video.h>
4753 #include <ost/audio.h>
4754 int main(void) {return 0;}
4756 for _inc_tmp
in "" "-I/usr/src/DVB/ost/include" ; do
4757 cc_check
$_inc_tmp && _dvb
=yes && \
4758 extra_cflags
="$extra_cflags $_inc_tmp" && break
4762 if test "$_dvb" = yes ; then
4763 def_dvb
='#define CONFIG_DVB 1'
4764 def_dvbin
='#define CONFIG_DVBIN 1'
4765 _aomodules
="mpegpes(dvb) $_aomodules"
4766 _vomodules
="mpegpes(dvb) $_vomodules"
4769 echocheck
"DVB HEAD"
4770 if test "$_dvbhead" = auto
; then
4775 #include <sys/ioctl.h>
4779 #include <linux/dvb/dmx.h>
4780 #include <linux/dvb/frontend.h>
4781 #include <linux/dvb/video.h>
4782 #include <linux/dvb/audio.h>
4783 int main(void) {return 0;}
4785 for _inc_tmp
in "" "-I/usr/src/DVB/include" ; do
4786 cc_check
$_inc_tmp && _dvbhead
=yes && \
4787 extra_cflags
="$extra_cflags $_inc_tmp" && break
4791 if test "$_dvbhead" = yes ; then
4792 def_dvb
='#define CONFIG_DVB 1'
4793 def_dvb_head
='#define CONFIG_DVB_HEAD 1'
4794 def_dvbin
='#define CONFIG_DVBIN 1'
4795 _aomodules
="mpegpes(dvb) $_aomodules"
4796 _vomodules
="mpegpes(dvb) $_vomodules"
4799 if test "$_dvbhead" = no
&& test "$_dvb" = no
; then
4800 def_dvb
='#undef CONFIG_DVB'
4801 def_dvb_head
='#undef CONFIG_DVB_HEAD'
4802 def_dvbin
='#undef CONFIG_DVBIN '
4803 _aomodules
="mpegpes(file) $_aomodules"
4804 _vomodules
="mpegpes(file) $_vomodules"
4807 if test "$_dvb" = yes ||
test "$_dvbhead" = yes ; then
4809 _inputmodules
="dvb $_inputmodules"
4812 _noinputmodules
="dvb $_noinputmodules"
4819 if test "$_quartz" = auto
; then
4821 #include <Carbon/Carbon.h>
4822 #include <QuickTime/QuickTime.h>
4826 CFRunLoopRunInMode(kCFRunLoopDefaultMode, 0, false);
4831 cc_check
-framework Carbon
-framework QuickTime
&& _quartz
=yes
4833 if test "$_quartz" = yes ; then
4834 libs_mplayer
="$libs_mplayer -framework Carbon -framework QuickTime"
4835 def_quartz
='#define CONFIG_QUARTZ 1'
4836 _vomodules
="quartz $_vomodules"
4838 def_quartz
='#undef CONFIG_QUARTZ'
4839 _novomodules
="quartz $_novomodules"
4843 echocheck
"CoreVideo"
4844 if test "$_corevideo" = auto
; then
4846 #include <Carbon/Carbon.h>
4847 #include <CoreServices/CoreServices.h>
4848 #include <OpenGL/OpenGL.h>
4849 #include <QuartzCore/CoreVideo.h>
4850 int main(void) { return 0; }
4853 cc_check
-framework Carbon
-framework Cocoa
-framework QuartzCore
-framework OpenGL
&& _corevideo
=yes
4855 if test "$_corevideo" = yes ; then
4856 _vomodules
="corevideo $_vomodules"
4857 libs_mplayer
="$libs_mplayer -framework Carbon -framework Cocoa -framework QuartzCore -framework OpenGL"
4858 def_corevideo
='#define CONFIG_COREVIDEO 1'
4860 _novomodules
="corevideo $_novomodules"
4861 def_corevideo
='#undef CONFIG_COREVIDEO'
4863 echores
"$_corevideo"
4868 echocheck
"PNG support"
4869 if test "$_png" = auto
; then
4872 # Don't check for -lpng on irix since it has its own libpng
4873 # incompatible with the GNU libpng
4874 _res_comment
="disabled on irix (not GNU libpng)"
4880 printf("png.h : %s\n", PNG_LIBPNG_VER_STRING);
4881 printf("libpng: %s\n", png_libpng_ver);
4882 return strcmp(PNG_LIBPNG_VER_STRING, png_libpng_ver);
4885 if cc_check
-lpng -lz $_ld_lm ; then
4889 _res_comment
="mismatch of library and header versions"
4895 if test "$_png" = yes ; then
4896 def_png
='#define CONFIG_PNG 1'
4897 extra_ldflags
="$extra_ldflags -lpng -lz"
4898 _vomodules
="png $_vomodules"
4900 def_png
='#undef CONFIG_PNG'
4901 _novomodules
="png $_novomodules"
4904 echocheck
"MNG support"
4905 if test "$_mng" = auto
; then
4910 const char * p_ver = mng_version_text();
4911 return !p_ver || p_ver[0] == 0;
4914 if cc_check
-lmng -lz $_ld_lm ; then
4919 if test "$_mng" = yes ; then
4920 def_mng
='#define CONFIG_MNG 1'
4921 extra_ldflags
="$extra_ldflags -lmng -lz"
4923 def_mng
='#undef CONFIG_MNG'
4926 echocheck
"JPEG support"
4927 if test "$_jpeg" = auto
; then
4934 #include <jpeglib.h>
4935 int main(void) { return 0; }
4937 if cc_check
-ljpeg $_ld_lm ; then
4945 if test "$_jpeg" = yes ; then
4946 def_jpeg
='#define CONFIG_JPEG 1'
4947 _vomodules
="jpeg $_vomodules"
4948 extra_ldflags
="$extra_ldflags -ljpeg"
4950 def_jpeg
='#undef CONFIG_JPEG'
4951 _novomodules
="jpeg $_novomodules"
4956 echocheck
"PNM support"
4957 if test "$_pnm" = yes; then
4958 def_pnm
="#define CONFIG_PNM 1"
4959 _vomodules
="pnm $_vomodules"
4961 def_pnm
="#undef CONFIG_PNM"
4962 _novomodules
="pnm $_novomodules"
4968 echocheck
"GIF support"
4969 # This is to appease people who want to force gif support.
4970 # If it is forced to yes, then we still do checks to determine
4971 # which gif library to use.
4972 if test "$_gif" = yes ; then
4977 if test "$_gif" = auto
; then
4980 #include <gif_lib.h>
4981 int main(void) { return 0; }
4983 for _ld_gif
in "-lungif" "-lgif" ; do
4984 cc_check
$_ld_gif && tmp_run
&& _gif
=yes && break
4988 # If no library was found, and the user wants support forced,
4989 # then we force it on with libgif, as this is the safest
4990 # assumption IMHO. (libungif & libregif both create symbolic
4991 # links to libgif. We also assume that no x11 support is needed,
4992 # because if you are forcing this, then you _should_ know what
4993 # you are doing. [ Besides, package maintainers should never
4994 # have compiled x11 deps into libungif in the first place. ] )
4997 if test "$_force_gif" = yes && test "$_gif" = no
; then
5002 if test "$_gif" = yes ; then
5003 def_gif
='#define CONFIG_GIF 1'
5004 _codecmodules
="gif $_codecmodules"
5005 _vomodules
="gif89a $_vomodules"
5006 _res_comment
="old version, some encoding functions disabled"
5007 def_gif_4
='#undef CONFIG_GIF_4'
5008 extra_ldflags
="$extra_ldflags $_ld_gif"
5012 #include <gif_lib.h>
5013 void catch() { exit(1); }
5015 signal(SIGSEGV, catch); // catch segfault
5016 printf("EGifPutExtensionFirst is at address %p\n", EGifPutExtensionFirst);
5017 EGifSetGifVersion("89a"); // this will segfault a buggy gif lib.
5021 if cc_check
"$_ld_gif" && tmp_run
; then
5022 def_gif_4
='#define CONFIG_GIF_4 1'
5026 def_gif
='#undef CONFIG_GIF'
5027 def_gif_4
='#undef CONFIG_GIF_4'
5028 _novomodules
="gif89a $_novomodules"
5029 _nocodecmodules
="gif $_nocodecmodules"
5034 case "$_gif" in yes*)
5035 echocheck
"broken giflib workaround"
5036 def_gif_tvt_hack
='#define CONFIG_GIF_TVT_HACK 1'
5039 #include <gif_lib.h>
5042 printf("UserData is at address %p\n", gif.UserData);
5046 if cc_check
"$_ld_gif" && tmp_run
; then
5047 def_gif_tvt_hack
='#undef CONFIG_GIF_TVT_HACK'
5056 echocheck
"VESA support"
5057 if test "$_vesa" = auto
; then
5060 int main(void) { vbeVersion(); return 0; }
5063 cc_check
-lvbe -llrmi && _vesa
=yes
5065 if test "$_vesa" = yes ; then
5066 def_vesa
='#define CONFIG_VESA 1'
5067 libs_mplayer
="$libs_mplayer -lvbe -llrmi"
5068 _vomodules
="vesa $_vomodules"
5070 def_vesa
='#undef CONFIG_VESA'
5071 _novomodules
="vesa $_novomodules"
5081 if test -z "$_sdlconfig" ; then
5082 if ( sdl-config
--version ) >>"$TMPLOG" 2>&1 ; then
5083 _sdlconfig
="sdl-config"
5084 elif ( sdl11-config
--version ) >>"$TMPLOG" 2>&1 ; then
5085 _sdlconfig
="sdl11-config"
5090 if test "$_sdl" = auto ||
test "$_sdl" = yes ; then
5093 int main(int argc, char *argv[]) {
5094 SDL_Init(SDL_INIT_VIDEO|SDL_INIT_NOPARACHUTE);
5099 if "$_sdlconfig" --version >>"$TMPLOG" 2>&1 ; then
5100 if cc_check $
($_sdlconfig --cflags) $
($_sdlconfig --libs) >>"$TMPLOG" 2>&1 ; then
5101 _sdlversion
=$
($_sdlconfig --version |
sed 's/[^0-9]//g')
5102 if test "$_sdlversion" -gt 116 ; then
5103 if test "$_sdlversion" -lt 121 ; then
5104 def_sdlbuggy
='#define BUGGY_SDL'
5106 def_sdlbuggy
='#undef BUGGY_SDL'
5113 if test "$_sdl" = yes ; then
5114 def_sdl
='#define CONFIG_SDL 1'
5116 libs_mplayer
="$libs_mplayer $($_sdlconfig --libs | cut -d " " -f 1,4,6 | sed s/no-cygwin/cygwin/)"
5117 extra_cflags
="$extra_cflags $($_sdlconfig --cflags | cut -d " " -f 1,5,6 | sed s/no-cygwin/cygwin/)"
5119 libs_mplayer
="$libs_mplayer $($_sdlconfig --libs | sed -e s/-mwindows// -e s/-lmingw32//)"
5120 extra_cflags
="$extra_cflags $($_sdlconfig --cflags | sed s/-Dmain=SDL_main//)"
5122 libs_mplayer
="$libs_mplayer $($_sdlconfig --libs)"
5123 extra_cflags
="$extra_cflags $($_sdlconfig --cflags | sed s/-D_GNU_SOURCE=1//)"
5125 _vomodules
="sdl $_vomodules"
5126 _aomodules
="sdl $_aomodules"
5127 _res_comment
="using $_sdlconfig"
5129 def_sdl
='#undef CONFIG_SDL'
5130 _novomodules
="sdl $_novomodules"
5131 _noaomodules
="sdl $_noaomodules"
5137 echocheck
"KVA (SNAP/WarpOverlay!/DIVE)"
5138 if test "$_kva" = auto
; then
5142 int main( void ) { return 0; }
5145 cc_check
-lkva && _kva
=yes
5147 if test "$_kva" = yes ; then
5148 def_kva
='#define CONFIG_KVA 1'
5149 libs_mplayer
="$libs_mplayer -lkva"
5150 _vomodules
="kva $_vomodules"
5152 def_kva
='#undef CONFIG_KVA'
5153 _novomodules
="kva $_novomodules"
5161 echocheck
"Windows waveout"
5162 if test "$_win32waveout" = auto
; then
5164 #include <windows.h>
5165 #include <mmsystem.h>
5166 int main(void) { return 0; }
5169 cc_check
-lwinmm && _win32waveout
=yes
5171 if test "$_win32waveout" = yes ; then
5172 def_win32waveout
='#define CONFIG_WIN32WAVEOUT 1'
5173 libs_mplayer
="$libs_mplayer -lwinmm"
5174 _aomodules
="win32 $_aomodules"
5176 def_win32waveout
='#undef CONFIG_WIN32WAVEOUT'
5177 _noaomodules
="win32 $_noaomodules"
5179 echores
"$_win32waveout"
5181 echocheck
"Direct3D"
5182 if test "$_direct3d" = auto
; then
5184 #include <windows.h>
5186 int main(void) { return 0; }
5189 cc_check
-ld3d9 && _direct3d
=yes
5191 if test "$_direct3d" = yes ; then
5192 def_direct3d
='#define CONFIG_DIRECT3D 1'
5193 libs_mplayer
="$libs_mplayer -ld3d9"
5194 _vomodules
="direct3d $_vomodules"
5196 def_direct3d
='#undef CONFIG_DIRECT3D'
5197 _novomodules
="direct3d $_novomodules"
5199 echores
"$_direct3d"
5202 if test "$_directx" = auto
; then
5204 #include <windows.h>
5207 int main(void) { return 0; }
5210 cc_check
-lgdi32 && _directx
=yes
5212 if test "$_directx" = yes ; then
5213 def_directx
='#define CONFIG_DIRECTX 1'
5214 libs_mplayer
="$libs_mplayer -lgdi32"
5215 _vomodules
="directx $_vomodules"
5216 _aomodules
="dsound $_aomodules"
5218 def_directx
='#undef CONFIG_DIRECTX'
5219 _novomodules
="directx $_novomodules"
5220 _noaomodules
="dsound $_noaomodules"
5228 if test "$_dxr2" = auto
; then
5231 #include <dxr2ioctl.h>
5232 int main(void) { return 0; }
5234 for _inc_tmp
in "" -I/usr
/local
/include
/dxr2
-I/usr
/include
/dxr2
; do
5235 cc_check
$_inc_tmp && _dxr2
=yes && \
5236 extra_cflags
="$extra_cflags $_inc_tmp" && break
5239 if test "$_dxr2" = yes; then
5240 def_dxr2
='#define CONFIG_DXR2 1'
5241 _aomodules
="dxr2 $_aomodules"
5242 _vomodules
="dxr2 $_vomodules"
5244 def_dxr2
='#undef CONFIG_DXR2'
5245 _noaomodules
="dxr2 $_noaomodules"
5246 _novomodules
="dxr2 $_novomodules"
5251 if test "$_dxr3" = auto
; then
5253 #include <linux/em8300.h>
5254 int main(void) { return 0; }
5257 cc_check
&& _dxr3
=yes
5259 if test "$_dxr3" = yes ; then
5260 def_dxr3
='#define CONFIG_DXR3 1'
5261 _vomodules
="dxr3 $_vomodules"
5263 def_dxr3
='#undef CONFIG_DXR3'
5264 _novomodules
="dxr3 $_novomodules"
5269 echocheck
"IVTV TV-Out (pre linux-2.6.24)"
5270 if test "$_ivtv" = auto
; then
5273 #include <inttypes.h>
5274 #include <linux/types.h>
5275 #include <linux/videodev2.h>
5276 #include <linux/ivtv.h>
5277 #include <sys/ioctl.h>
5279 struct ivtv_cfg_stop_decode sd;
5280 struct ivtv_cfg_start_decode sd1;
5281 ioctl(0, IVTV_IOC_START_DECODE, &sd1);
5282 ioctl(0, IVTV_IOC_STOP_DECODE, &sd);
5286 cc_check
&& _ivtv
=yes
5288 if test "$_ivtv" = yes ; then
5289 def_ivtv
='#define CONFIG_IVTV 1'
5290 _vomodules
="ivtv $_vomodules"
5291 _aomodules
="ivtv $_aomodules"
5293 def_ivtv
='#undef CONFIG_IVTV'
5294 _novomodules
="ivtv $_novomodules"
5295 _noaomodules
="ivtv $_noaomodules"
5300 echocheck
"V4L2 MPEG Decoder"
5301 if test "$_v4l2" = auto
; then
5304 #include <inttypes.h>
5305 #include <linux/types.h>
5306 #include <linux/videodev2.h>
5307 #include <linux/version.h>
5309 #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22)
5310 #error kernel headers too old, need 2.6.22
5311 bad_kernel_version();
5313 struct v4l2_ext_controls ctrls;
5314 ctrls.ctrl_class = V4L2_CTRL_CLASS_MPEG;
5319 cc_check
&& _v4l2
=yes
5321 if test "$_v4l2" = yes ; then
5322 def_v4l2
='#define CONFIG_V4L2_DECODER 1'
5323 _vomodules
="v4l2 $_vomodules"
5324 _aomodules
="v4l2 $_aomodules"
5326 def_v4l2
='#undef CONFIG_V4L2_DECODER'
5327 _novomodules
="v4l2 $_novomodules"
5328 _noaomodules
="v4l2 $_noaomodules"
5339 echocheck
"OSS Audio"
5340 if test "$_ossaudio" = auto
; then
5342 #include <sys/ioctl.h>
5343 #include <$_soundcard_header>
5344 int main(void) { int arg = SNDCTL_DSP_SETFRAGMENT; return 0; }
5347 cc_check
&& _ossaudio
=yes
5349 if test "$_ossaudio" = yes ; then
5350 def_ossaudio
='#define CONFIG_OSS_AUDIO 1'
5351 _aomodules
="oss $_aomodules"
5352 if test "$_linux_devfs" = yes; then
5353 def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound/dsp"'
5354 def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/sound/mixer"'
5357 #include <sys/ioctl.h>
5358 #include <$_soundcard_header>
5359 #ifdef OPEN_SOUND_SYSTEM
5360 int main(void) { return 0; }
5362 #error Not the real thing
5366 cc_check
&& _real_ossaudio
=yes
5367 if test "$_real_ossaudio" = yes; then
5368 def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
5369 elif netbsd || openbsd
; then
5370 def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound"'
5371 extra_ldflags
="$extra_ldflags -lossaudio"
5373 def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
5375 def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/mixer"'
5378 def_ossaudio
='#undef CONFIG_OSS_AUDIO'
5379 def_ossaudio_devdsp
='#define PATH_DEV_DSP ""'
5380 def_ossaudio_devmixer
='#define PATH_DEV_MIXER ""'
5381 _noaomodules
="oss $_noaomodules"
5383 echores
"$_ossaudio"
5387 if test "$_arts" = auto
; then
5389 if ( artsc-config
--version ) >> "$TMPLOG" 2>&1 ; then
5393 int main(void) { return 0; }
5395 cc_check $
(artsc-config
--libs) $
(artsc-config
--cflags) && tmp_run
&& _arts
=yes
5400 if test "$_arts" = yes ; then
5401 def_arts
='#define CONFIG_ARTS 1'
5402 _aomodules
="arts $_aomodules"
5403 libs_mplayer
="$libs_mplayer $(artsc-config --libs)"
5404 extra_cflags
="$extra_cflags $(artsc-config --cflags)"
5406 _noaomodules
="arts $_noaomodules"
5412 if test "$_esd" = auto
; then
5414 if ( esd-config
--version ) >> "$TMPLOG" 2>&1 ; then
5418 int main(void) { int fd = esd_open_sound("test"); return fd; }
5420 cc_check $
(esd-config
--libs) $
(esd-config
--cflags) && _esd
=yes
5426 if test "$_esd" = yes ; then
5427 def_esd
='#define CONFIG_ESD 1'
5428 _aomodules
="esd $_aomodules"
5429 libs_mplayer
="$libs_mplayer $(esd-config --libs)"
5430 extra_cflags
="$extra_cflags $(esd-config --cflags)"
5432 echocheck
"esd_get_latency()"
5435 int main(void) { return esd_get_latency(0); }
5437 cc_check $
(esd-config
--libs) $
(esd-config
--cflags) && _esd_latency
=yes && def_esd_latency
='#define CONFIG_ESD_LATENCY'
5438 echores
"$_esd_latency"
5440 def_esd
='#undef CONFIG_ESD'
5441 def_esd_latency
='#undef CONFIG_ESD_LATENCY'
5442 _noaomodules
="esd $_noaomodules"
5447 if test "$_nas" = auto
; then
5449 #include <audio/audiolib.h>
5450 int main(void) { return 0; }
5453 cc_check
$_ld_lm -laudio -lXt && _nas
=yes
5455 if test "$_nas" = yes ; then
5456 def_nas
='#define CONFIG_NAS 1'
5457 libs_mplayer
="$libs_mplayer -laudio -lXt"
5458 _aomodules
="nas $_aomodules"
5460 _noaomodules
="nas $_noaomodules"
5461 def_nas
='#undef CONFIG_NAS'
5467 if test "$_pulse" = auto
; then
5469 if $_pkg_config --exists 'libpulse >= 0.9' ; then
5472 #include <pulse/pulseaudio.h>
5473 int main(void) { return 0; }
5475 cc_check $
($_pkg_config --libs --cflags libpulse
) && tmp_run
&& _pulse
=yes
5481 if test "$_pulse" = yes ; then
5482 def_pulse
='#define CONFIG_PULSE 1'
5483 _aomodules
="pulse $_aomodules"
5484 libs_mplayer
="$libs_mplayer $($_pkg_config --libs libpulse)"
5485 extra_cflags
="$extra_cflags $($_pkg_config --cflags libpulse)"
5487 def_pulse
='#undef CONFIG_PULSE'
5488 _noaomodules
="pulse $_noaomodules"
5493 if test "$_jack" = auto
; then
5497 #include <jack/jack.h>
5498 int main(void) { jack_client_open("test", JackUseExactName, NULL); return 0; }
5500 if cc_check
-ljack ; then
5501 libs_mplayer
="$libs_mplayer -ljack"
5502 elif cc_check $
($_pkg_config --libs --cflags --silence-errors jack
) ; then
5503 libs_mplayer
="$libs_mplayer $($_pkg_config --libs jack)"
5504 extra_cflags
="$extra_cflags "$
($_pkg_config --cflags jack
)""
5510 if test "$_jack" = yes ; then
5511 def_jack
='#define CONFIG_JACK 1'
5512 _aomodules
="jack $_aomodules"
5514 _noaomodules
="jack $_noaomodules"
5519 if test "$_openal" = auto
; then
5523 #include <OpenAL/al.h>
5528 alSourceQueueBuffers(0, 0, 0);
5529 // alGetSourcei(0, AL_SAMPLE_OFFSET, 0);
5533 for I
in "-lopenal" "-lopenal32" "-framework OpenAL" ; do
5534 cc_check
$I && _openal
=yes && break
5535 cc_check
-DOPENAL_AL_H=1 $I && def_openal_h
='#define OPENAL_AL_H 1' && _openal
=yes && break
5537 test "$_openal" = yes && libs_mplayer
="$libs_mplayer $I"
5539 if test "$_openal" = yes ; then
5540 def_openal
='#define CONFIG_OPENAL 1'
5541 _aomodules
="openal $_aomodules"
5543 _noaomodules
="openal $_noaomodules"
5547 echocheck
"ALSA audio"
5548 if test "$_alloca" != yes ; then
5550 _res_comment
="alloca missing"
5552 if test "$_alsa" != no
; then
5555 #include <sys/time.h>
5556 #include <sys/asoundlib.h>
5557 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 5))
5558 #error "alsa version != 0.5.x"
5560 int main(void) { return 0; }
5562 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.5.x'
5565 #include <sys/time.h>
5566 #include <sys/asoundlib.h>
5567 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
5568 #error "alsa version != 0.9.x"
5570 int main(void) { return 0; }
5572 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.9.x-sys'
5574 #include <sys/time.h>
5575 #include <alsa/asoundlib.h>
5576 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
5577 #error "alsa version != 0.9.x"
5579 int main(void) { return 0; }
5581 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.9.x-alsa'
5584 #include <sys/time.h>
5585 #include <sys/asoundlib.h>
5586 #if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
5587 #error "alsa version != 1.0.x"
5589 int main(void) { return 0; }
5591 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='1.0.x-sys'
5593 #include <sys/time.h>
5594 #include <alsa/asoundlib.h>
5595 #if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
5596 #error "alsa version != 1.0.x"
5598 int main(void) { return 0; }
5600 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='1.0.x-alsa'
5602 def_alsa
='#undef CONFIG_ALSA'
5603 def_alsa5
='#undef CONFIG_ALSA5'
5604 def_alsa9
='#undef CONFIG_ALSA9'
5605 def_alsa1x
='#undef CONFIG_ALSA1X'
5606 def_sys_asoundlib_h
='#undef HAVE_SYS_ASOUNDLIB_H'
5607 def_alsa_asoundlib_h
='#undef HAVE_ALSA_ASOUNDLIB_H'
5608 if test "$_alsaver" ; then
5610 if test "$_alsaver" = '0.5.x' ; then
5612 _aomodules
="alsa5 $_aomodules"
5613 def_alsa5
='#define CONFIG_ALSA5 1'
5614 def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
5615 _res_comment
="using alsa 0.5.x and sys/asoundlib.h"
5616 elif test "$_alsaver" = '0.9.x-sys' ; then
5618 _aomodules
="alsa $_aomodules"
5619 def_alsa
='#define CONFIG_ALSA 1'
5620 def_alsa9
='#define CONFIG_ALSA9 1'
5621 def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
5622 _res_comment
="using alsa 0.9.x and sys/asoundlib.h"
5623 elif test "$_alsaver" = '0.9.x-alsa' ; then
5625 _aomodules
="alsa $_aomodules"
5626 def_alsa
='#define CONFIG_ALSA 1'
5627 def_alsa9
='#define CONFIG_ALSA9 1'
5628 def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
5629 _res_comment
="using alsa 0.9.x and alsa/asoundlib.h"
5630 elif test "$_alsaver" = '1.0.x-sys' ; then
5632 _aomodules
="alsa $_aomodules"
5633 def_alsa
='#define CONFIG_ALSA 1'
5634 def_alsa1x
="#define CONFIG_ALSA1X 1"
5635 def_alsa_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
5636 _res_comment
="using alsa 1.0.x and sys/asoundlib.h"
5637 elif test "$_alsaver" = '1.0.x-alsa' ; then
5639 _aomodules
="alsa $_aomodules"
5640 def_alsa
='#define CONFIG_ALSA 1'
5641 def_alsa1x
="#define CONFIG_ALSA1X 1"
5642 def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
5643 _res_comment
="using alsa 1.0.x and alsa/asoundlib.h"
5646 _res_comment
="unknown version"
5648 extra_ldflags
="$extra_ldflags -lasound $_ld_dl $_ld_pthread"
5650 _noaomodules
="alsa $_noaomodules"
5655 echocheck
"Sun audio"
5656 if test "$_sunaudio" = auto
; then
5658 #include <sys/types.h>
5659 #include <sys/audioio.h>
5660 int main(void) { audio_info_t info; AUDIO_INITINFO(&info); return 0; }
5663 cc_check
&& _sunaudio
=yes
5665 if test "$_sunaudio" = yes ; then
5666 def_sunaudio
='#define CONFIG_SUN_AUDIO 1'
5667 _aomodules
="sun $_aomodules"
5669 def_sunaudio
='#undef CONFIG_SUN_AUDIO'
5670 _noaomodules
="sun $_noaomodules"
5672 echores
"$_sunaudio"
5675 def_mlib
='#define CONFIG_MLIB 0'
5677 echocheck
"Sun mediaLib"
5678 if test "$_mlib" = auto
; then
5682 int main(void) { mlib_VideoColorYUV2ABGR420(0,0,0,0,0,0,0,0,0); return 0; }
5684 cc_check
-lmlib && _mlib
=yes && def_mlib
='#define CONFIG_MLIB 1'
5691 echocheck
"CoreAudio"
5692 if test "$_coreaudio" = auto
; then
5694 #include <CoreAudio/CoreAudio.h>
5695 #include <AudioToolbox/AudioToolbox.h>
5696 #include <AudioUnit/AudioUnit.h>
5697 int main(void) { return 0; }
5700 cc_check
-framework CoreAudio
-framework AudioUnit
-framework AudioToolbox
&& _coreaudio
=yes
5702 if test "$_coreaudio" = yes ; then
5703 libs_mplayer
="$libs_mplayer -framework CoreAudio -framework AudioUnit -framework AudioToolbox"
5704 def_coreaudio
='#define CONFIG_COREAUDIO 1'
5705 _aomodules
="coreaudio $_aomodules"
5707 def_coreaudio
='#undef CONFIG_COREAUDIO'
5708 _noaomodules
="coreaudio $_noaomodules"
5715 echocheck
"SGI audio"
5716 if test "$_sgiaudio" = auto
; then
5717 # check for SGI audio
5719 #include <dmedia/audio.h>
5720 int main(void) { return 0; }
5723 cc_check
&& _sgiaudio
=yes
5725 if test "$_sgiaudio" = "yes" ; then
5726 def_sgiaudio
='#define CONFIG_SGI_AUDIO 1'
5727 libs_mplayer
="$libs_mplayer -laudio"
5728 _aomodules
="sgi $_aomodules"
5730 def_sgiaudio
='#undef CONFIG_SGI_AUDIO'
5731 _noaomodules
="sgi $_noaomodules"
5733 echores
"$_sgiaudio"
5739 if test "$_dart" = auto
; then
5743 int main( void ) { return 0; }
5746 cc_check
-ldart && _dart
=yes
5748 if test "$_dart" = yes ; then
5749 def_dart
='#define CONFIG_DART 1'
5750 libs_mplayer
="$libs_mplayer -ldart"
5751 _aomodules
="dart $_aomodules"
5753 def_dart
='#undef CONFIG_DART'
5754 _noaomodules
="dart $_noaomodules"
5760 # set default CD/DVD devices
5761 if win32 || os2
; then
5762 default_cdrom_device
="D:"
5764 default_cdrom_device
="/dev/disk1"
5765 elif dragonfly
; then
5766 default_cdrom_device
="/dev/cd0"
5768 default_cdrom_device
="/dev/acd0"
5770 default_cdrom_device
="/dev/rcd0a"
5772 default_cdrom_device
="/vol/dev/aliases/cdrom0"
5774 default_cdrom_device
="a1ide.device:2"
5776 default_cdrom_device
="/dev/cdrom"
5779 if win32 || os2 || dragonfly || freebsd || openbsd || sunos || amigaos
; then
5780 default_dvd_device
=$default_cdrom_device
5782 default_dvd_device
="/dev/rdiskN"
5784 default_dvd_device
="/dev/dvd"
5788 echocheck
"VCD support"
5789 if test "$_vcd" = auto
; then
5791 if linux || freebsd || netbsd || openbsd || dragonfly || bsdos || darwin || sunos
; then
5795 #include <ddk/ntddcdrm.h>
5796 int main(void) { return 0; }
5798 cc_check
&& _vcd
=yes
5801 if test "$_vcd" = yes; then
5802 _inputmodules
="vcd $_inputmodules"
5803 def_vcd
='#define CONFIG_VCD 1'
5805 def_vcd
='#undef CONFIG_VCD'
5806 _noinputmodules
="vcd $_noinputmodules"
5807 _res_comment
="not supported on this OS"
5814 if test "$_dvdread_internal" = auto
; then
5815 _dvdread_internal
=no
5817 if (linux || freebsd || netbsd || openbsd || dragonfly || sunos || hpux
) \
5818 && (test "$_dvd" = yes ||
test "$_cdrom" = yes ||
test "$_cdio" = yes || \
5819 test "$_dvdio" = yes ||
test "$_bsdi_dvd" = yes) \
5820 || darwin || win32 || os2
; then
5821 _dvdread_internal
=yes
5823 extra_cflags
="-Ilibdvdread4 $extra_cflags"
5825 elif test "$_dvdread" = auto
; then
5827 if test "$_dl" = yes; then
5829 #include <inttypes.h>
5830 #include <dvdread/dvd_reader.h>
5831 #include <dvdread/ifo_types.h>
5832 #include <dvdread/ifo_read.h>
5833 #include <dvdread/nav_read.h>
5834 int main(void) { return 0; }
5836 _dvdreadcflags
=$
($_dvdreadconfig --cflags)
5837 _dvdreadlibs
=$
($_dvdreadconfig --libs)
5838 if cc_check
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE \
5839 $_dvdreadcflags $_dvdreadlibs $_ld_dl ; then
5841 extra_cflags
="$extra_cflags $_dvdreadcflags"
5842 extra_ldflags
="$extra_ldflags $_dvdreadlibs"
5843 _res_comment
="external"
5848 if test "$_dvdread_internal" = yes; then
5849 def_dvdread
='#define CONFIG_DVDREAD 1'
5850 _inputmodules
="dvdread(internal) $_inputmodules"
5852 _res_comment
="internal"
5853 elif test "$_dvdread" = yes; then
5854 def_dvdread
='#define CONFIG_DVDREAD 1'
5856 extra_ldflags
="$extra_ldflags -ldvdread"
5857 _inputmodules
="dvdread(external) $_inputmodules"
5858 _res_comment
="external"
5860 def_dvdread
='#undef CONFIG_DVDREAD'
5861 _noinputmodules
="dvdread $_noinputmodules"
5866 echocheck
"internal libdvdcss"
5867 if test "$_libdvdcss_internal" = auto
; then
5868 _libdvdcss_internal
=no
5869 test "$_dvdread_internal" = yes && _libdvdcss_internal
=yes
5870 hpux
&& test "$_hpux_scsi_h" = no
&& _libdvdcss_internal
=no
5872 if test "$_libdvdcss_internal" = yes ; then
5873 if linux || netbsd || openbsd || bsdos
; then
5874 def_dvd_linux
='#define HAVE_LINUX_DVD_STRUCT 1'
5875 openbsd
&& def_dvd_openbsd
='#define HAVE_OPENBSD_DVD_STRUCT 1'
5876 elif freebsd || dragonfly
; then
5877 def_dvd_bsd
='#define HAVE_BSD_DVD_STRUCT 1'
5879 def_dvd_darwin
='#define DARWIN_DVD_IOCTL'
5880 extra_ldflags
="$extra_ldflags -framework IOKit -framework Carbon"
5882 cflags_libdvdcss
="-DSYS_CYGWIN -DWIN32"
5884 cflags_libdvdcss
="-DSYS_BEOS"
5886 cflags_libdvdcss
="-DSYS_OS2"
5888 cflags_libdvdcss_dvdread
="-Ilibdvdcss"
5889 def_dvdcss
="#define HAVE_DVDCSS_DVDCSS_H 1"
5890 _inputmodules
="libdvdcss(internal) $_inputmodules"
5893 _noinputmodules
="libdvdcss(internal) $_noinputmodules"
5895 echores
"$_libdvdcss_internal"
5898 echocheck
"cdparanoia"
5899 if test "$_cdparanoia" = auto
; then
5901 #include <cdda_interface.h>
5902 #include <cdda_paranoia.h>
5903 // This need a better test. How ?
5904 int main(void) { void *test = cdda_verbose_set; return test == (void *)1; }
5907 for _inc_tmp
in "" "-I/usr/include/cdda" "-I/usr/local/include/cdda" ; do
5908 cc_check
$_inc_tmp -lcdda_interface -lcdda_paranoia $_ld_lm && \
5909 _cdparanoia
=yes && extra_cflags
="$extra_cflags $_inc_tmp" && break
5912 if test "$_cdparanoia" = yes ; then
5914 extra_ldflags
="$extra_ldflags -lcdda_interface -lcdda_paranoia"
5915 openbsd
&& extra_ldflags
="$extra_ldflags -lutil"
5917 echores
"$_cdparanoia"
5921 if test "$_libcdio" = auto
&& test "$_cdparanoia" = no
; then
5924 #include <cdio/version.h>
5925 #include <cdio/cdda.h>
5926 #include <cdio/paranoia.h>
5928 void *test = cdda_verbose_set;
5929 printf("%s\n", CDIO_VERSION);
5930 return test == (void *)1;
5934 for _ld_tmp
in "" "-lwinmm" ; do
5935 _ld_tmp
="-lcdio_cdda -lcdio -lcdio_paranoia $_ld_tmp"
5936 cc_check
$_ld_tmp $_ld_lm \
5937 && _libcdio
=yes && extra_ldflags
="$extra_ldflags $_ld_tmp" && break
5939 if test "$_libcdio" = no
&& $_pkg_config --exists libcdio_paranoia
; then
5940 _inc_tmp
=$
($_pkg_config --cflags libcdio_paranoia
)
5941 _ld_tmp
=$
($_pkg_config --libs libcdio_paranoia
)
5942 cc_check
$_inc_tmp $_ld_tmp $_ld_lm && _libcdio
=yes \
5943 && extra_ldflags
="$extra_ldflags $_ld_tmp" && extra_cflags
="$extra_cflags $_inc_tmp"
5946 if test "$_libcdio" = yes && test "$_cdparanoia" = no
; then
5948 def_libcdio
='#define CONFIG_LIBCDIO'
5949 def_havelibcdio
='yes'
5951 if test "$_cdparanoia" = yes ; then
5952 _res_comment
="using cdparanoia"
5954 def_libcdio
='#undef CONFIG_LIBCDIO'
5955 def_havelibcdio
='no'
5959 if test "$_cdda" = yes ; then
5960 test $_cddb = auto
&& test $_network = yes && _cddb
=yes
5961 def_cdparanoia
='#define CONFIG_CDDA'
5962 _inputmodules
="cdda $_inputmodules"
5964 def_cdparanoia
='#undef CONFIG_CDDA'
5965 _noinputmodules
="cdda $_noinputmodules"
5968 if test "$_cddb" = yes ; then
5969 def_cddb
='#define CONFIG_CDDB'
5970 _inputmodules
="cddb $_inputmodules"
5973 def_cddb
='#undef CONFIG_CDDB'
5974 _noinputmodules
="cddb $_noinputmodules"
5977 echocheck
"bitmap font support"
5978 if test "$_bitmap_font" = yes ; then
5979 def_bitmap_font
="#define CONFIG_BITMAP_FONT 1"
5981 def_bitmap_font
="#undef CONFIG_BITMAP_FONT"
5983 echores
"$_bitmap_font"
5986 echocheck
"freetype >= 2.0.9"
5988 # freetype depends on iconv
5989 if test "$_iconv" = no
; then
5991 _res_comment
="iconv support needed"
5994 if test "$_freetype" = auto
; then
5995 if ( $_freetypeconfig --version ) >/dev
/null
2>&1 ; then
5998 #include <ft2build.h>
5999 #include FT_FREETYPE_H
6000 #if ((FREETYPE_MAJOR < 2) || ((FREETYPE_MINOR == 0) && (FREETYPE_PATCH < 9)))
6001 #error "Need FreeType 2.0.9 or newer"
6005 FT_Int major=-1,minor=-1,patch=-1;
6006 int err=FT_Init_FreeType(&library);
6008 printf("Couldn't initialize freetype2 lib, err code: %d\n",err);
6011 FT_Library_Version(library,&major,&minor,&patch); // in v2.1.0+ only :(((
6012 printf("freetype2 header version: %d.%d.%d library version: %d.%d.%d\n",
6013 FREETYPE_MAJOR,FREETYPE_MINOR,FREETYPE_PATCH,
6014 (int)major,(int)minor,(int)patch );
6015 if (major!=FREETYPE_MAJOR || minor!=FREETYPE_MINOR) {
6016 printf("Library and header version mismatch! Fix it in your distribution!\n");
6023 cc_check $
($_freetypeconfig --cflags) $
($_freetypeconfig --libs) && tmp_run
&& _freetype
=yes
6028 if test "$_freetype" = yes ; then
6029 def_freetype
='#define CONFIG_FREETYPE'
6030 extra_cflags
="$extra_cflags $($_freetypeconfig --cflags)"
6031 extra_ldflags
="$extra_ldflags $($_freetypeconfig --libs)"
6033 def_freetype
='#undef CONFIG_FREETYPE'
6035 echores
"$_freetype"
6037 if test "$_freetype" = no
; then
6039 _res_comment
="FreeType support needed"
6041 echocheck
"fontconfig"
6042 if test "$_fontconfig" = auto
; then
6046 #include <fontconfig/fontconfig.h>
6049 if (err == FcFalse) {
6050 printf("Couldn't initialize fontconfig lib\n");
6057 for _ld_tmp
in "" "-lexpat -lfreetype" "-lexpat -lfreetype -lz" ; do
6058 _ld_tmp
="-lfontconfig $_ld_tmp"
6059 cc_check
$_ld_tmp && _fontconfig
=yes && extra_ldflags
="$extra_ldflags $_ld_tmp" && break
6061 if test "$_fontconfig" = no
&& $_pkg_config --exists fontconfig
; then
6062 _inc_tmp
=$
($_pkg_config --cflags fontconfig
)
6063 _ld_tmp
=$
($_pkg_config --libs fontconfig
)
6064 cc_check
$_inc_tmp $_ld_tmp && _fontconfig
=yes \
6065 && extra_ldflags
="$extra_ldflags $_ld_tmp" && extra_cflags
="$extra_cflags $_inc_tmp"
6068 if test "$_fontconfig" = yes ; then
6069 def_fontconfig
='#define CONFIG_FONTCONFIG'
6071 def_fontconfig
='#undef CONFIG_FONTCONFIG'
6073 echores
"$_fontconfig"
6076 echocheck
"SSA/ASS support"
6077 # libass depends on FreeType
6078 if test "$_freetype" = no
; then
6080 _res_comment
="FreeType support needed"
6083 if test "$_ass" = auto
; then
6085 #include <ft2build.h>
6086 #include FT_FREETYPE_H
6087 #if ((FREETYPE_MAJOR < 2) || (FREETYPE_MINOR < 1) || ((FREETYPE_MINOR == 1) && (FREETYPE_PATCH < 8)))
6088 #error "Need FreeType 2.1.8 or newer"
6090 int main(void) { return 0; }
6093 cc_check $
($_freetypeconfig --cflags) $
($_freetypeconfig --libs) && tmp_run
&& _ass
=yes
6094 if test "$_ass" = no
; then
6095 _res_comment
="FreeType >= 2.1.8 needed"
6098 if test "$_ass" = yes ; then
6099 def_ass
='#define CONFIG_ASS'
6101 def_ass
='#undef CONFIG_ASS'
6106 echocheck
"fribidi with charsets"
6107 if test "$_fribidi" = auto
; then
6108 if ( $_fribidiconfig --version ) >/dev
/null
2>&1 ; then
6111 /* workaround for fribidi 0.10.4 and below */
6112 #define FRIBIDI_CHARSET_UTF8 FRIBIDI_CHAR_SET_UTF8
6113 #include <fribidi/fribidi.h>
6115 if (fribidi_parse_charset("UTF-8") != FRIBIDI_CHAR_SET_UTF8) {
6116 printf("Fribidi headers are not consistents with the library!\n");
6123 cc_check $
($_fribidiconfig --cflags) $
($_fribidiconfig --libs) && tmp_run
&& _fribidi
=yes
6128 if test "$_fribidi" = yes ; then
6129 def_fribidi
='#define CONFIG_FRIBIDI'
6130 extra_cflags
="$extra_cflags $($_fribidiconfig --cflags)"
6131 extra_ldflags
="$extra_ldflags $($_fribidiconfig --libs)"
6133 def_fribidi
='#undef CONFIG_FRIBIDI'
6139 if test "$_enca" = auto
; then
6141 #include <sys/types.h>
6146 langs = enca_get_languages(&langcnt);
6151 cc_check
-lenca $_ld_lm && _enca
=yes
6153 if test "$_enca" = yes ; then
6154 def_enca
='#define CONFIG_ENCA 1'
6155 extra_ldflags
="$extra_ldflags -lenca"
6157 def_enca
='#undef CONFIG_ENCA'
6165 int main(void) { (void) inflate(0, Z_NO_FLUSH); return 0; }
6168 cc_check
-lz && _zlib
=yes
6169 if test "$_zlib" = yes ; then
6170 def_zlib
='#define CONFIG_ZLIB 1'
6171 extra_ldflags
="$extra_ldflags -lz"
6173 def_zlib
='#define CONFIG_ZLIB 0'
6174 _libavdecoders
=$
(echo $_libavdecoders |
sed -e s
/FLASHSV_DECODER
// -e s
/PNG_DECODER
// -e s
/ZMBV_DECODER
// -e s
/DXA_DECODER
// -e s
/TSCC_DECODER
//)
6175 _libavencoders
=$
(echo $_libavencoders |
sed -e s
/FLASHSV_ENCODER
// -e s
/PNG_ENCODER
// -e s
/ZMBV_ENCODER
//)
6182 def_bzlib
='#define CONFIG_BZLIB 0'
6185 int main(void) { BZ2_bzlibVersion(); return 0; }
6187 cc_check
-lbz2 && bzlib
=yes
6188 if test "$bzlib" = yes ; then
6189 def_bzlib
='#define CONFIG_BZLIB 1'
6190 extra_ldflags
="$extra_ldflags -lbz2"
6196 if test "$_rtc" = auto
; then
6198 #include <sys/ioctl.h>
6200 #include <linux/rtc.h>
6203 #define RTC_PIE_ON RTCIO_PIE_ON
6205 int main(void) { return RTC_PIE_ON; }
6208 cc_check
&& _rtc
=yes
6211 if test "$_rtc" = yes ; then
6212 def_rtc
='#define HAVE_RTC 1'
6214 def_rtc
='#undef HAVE_RTC'
6219 echocheck
"liblzo2 support"
6220 if test "$_liblzo" = auto
; then
6223 #include <lzo/lzo1x.h>
6224 int main(void) { lzo_init();return 0; }
6226 cc_check
-llzo2 && _liblzo
=yes
6228 if test "$_liblzo" = yes ; then
6229 def_liblzo
='#define CONFIG_LIBLZO 1'
6230 extra_ldflags
="$extra_ldflags -llzo2"
6231 _codecmodules
="liblzo $_codecmodules"
6233 def_liblzo
='#undef CONFIG_LIBLZO'
6234 _nocodecmodules
="liblzo $_nocodecmodules"
6239 echocheck
"mad support"
6240 if test "$_mad" = auto
; then
6244 int main(void) { return 0; }
6246 cc_check
-lmad && _mad
=yes
6248 if test "$_mad" = yes ; then
6249 def_mad
='#define CONFIG_LIBMAD 1'
6250 extra_ldflags
="$extra_ldflags -lmad"
6251 _codecmodules
="libmad $_codecmodules"
6253 def_mad
='#undef CONFIG_LIBMAD'
6254 _nocodecmodules
="libmad $_nocodecmodules"
6259 if test "$_twolame" = auto
; then
6261 #include <twolame.h>
6262 int main(void) { twolame_init(); return 0; }
6265 cc_check
-ltwolame $_ld_lm && _twolame
=yes
6267 if test "$_twolame" = yes ; then
6268 def_twolame
='#define CONFIG_TWOLAME 1'
6269 libs_mencoder
="$libs_mencoder -ltwolame"
6270 _codecmodules
="twolame $_codecmodules"
6272 def_twolame
='#undef CONFIG_TWOLAME'
6273 _nocodecmodules
="twolame $_nocodecmodules"
6278 if test "$_toolame" = auto
; then
6280 if test "$_twolame" = yes ; then
6281 _res_comment
="disabled by twolame"
6284 #include <toolame.h>
6285 int main(void) { toolame_init(); return 0; }
6287 cc_check
-ltoolame $_ld_lm && _toolame
=yes
6290 if test "$_toolame" = yes ; then
6291 def_toolame
='#define CONFIG_TOOLAME 1'
6292 libs_mencoder
="$libs_mencoder -ltoolame"
6293 _codecmodules
="toolame $_codecmodules"
6295 def_toolame
='#undef CONFIG_TOOLAME'
6296 _nocodecmodules
="toolame $_nocodecmodules"
6298 if test "$_toolamedir" ; then
6299 _res_comment
="using $_toolamedir"
6303 echocheck
"OggVorbis support"
6304 if test "$_tremor_internal" = yes; then
6306 elif test "$_tremor" = auto
; then
6309 #include <tremor/ivorbiscodec.h>
6310 int main(void) { vorbis_packet_blocksize(0,0); return 0; }
6312 cc_check
-logg -lvorbisidec $_ld_lm && _tremor
=yes && _libvorbis
=no
6314 if test "$_libvorbis" = auto
; then
6317 #include <vorbis/codec.h>
6318 int main(void) { vorbis_packet_blocksize(0,0); return 0; }
6320 cc_check
-lvorbis -logg $_ld_lm && _libvorbis
=yes
6322 if test "$_tremor_internal" = yes ; then
6324 def_vorbis
='#define CONFIG_OGGVORBIS 1'
6325 def_tremor
='#define CONFIG_TREMOR 1'
6326 _codecmodules
="tremor(internal) $_codecmodules"
6327 _res_comment
="internal Tremor"
6328 if test "$_tremor_low" = yes ; then
6329 cflags_tremor_low
="-D_LOW_ACCURACY_"
6330 _res_comment
="internal low accuracy Tremor"
6332 elif test "$_tremor" = yes ; then
6334 def_vorbis
='#define CONFIG_OGGVORBIS 1'
6335 def_tremor
='#define CONFIG_TREMOR 1'
6336 _codecmodules
="tremor(external) $_codecmodules"
6337 _res_comment
="external Tremor"
6338 extra_ldflags
="$extra_ldflags -logg -lvorbisidec"
6339 elif test "$_libvorbis" = yes ; then
6341 def_vorbis
='#define CONFIG_OGGVORBIS 1'
6342 _codecmodules
="libvorbis $_codecmodules"
6343 _res_comment
="libvorbis"
6344 extra_ldflags
="$extra_ldflags -lvorbis -logg"
6347 _nocodecmodules
="libvorbis $_nocodecmodules"
6351 echocheck
"libspeex (version >= 1.1 required)"
6352 if test "$_speex" = auto
; then
6355 #include <speex/speex.h>
6356 int main(void) { SpeexBits bits; void *dec; speex_decode_int(dec, &bits, dec); return 0; }
6358 cc_check
-lspeex $_ld_lm && _speex
=yes
6360 if test "$_speex" = yes ; then
6361 def_speex
='#define CONFIG_SPEEX 1'
6362 extra_ldflags
="$extra_ldflags -lspeex"
6363 _codecmodules
="speex $_codecmodules"
6365 def_speex
='#undef CONFIG_SPEEX'
6366 _nocodecmodules
="speex $_nocodecmodules"
6370 echocheck
"OggTheora support"
6371 if test "$_theora" = auto
; then
6374 #include <theora/theora.h>
6377 /* Theora is in flux, make sure that all interface routines and datatypes
6378 * exist and work the way we expect it, so we don't break MPlayer. */
6387 theora_info_init(&inf);
6388 theora_comment_init(&tc);
6392 /* we don't want to execute this kind of nonsense; just for making sure
6393 * that compilation works... */
6394 memset(&op, 0, sizeof(op));
6395 r = theora_decode_header(&inf, &tc, &op);
6396 r = theora_decode_init(&st, &inf);
6397 t = theora_granule_time(&st, op.granulepos);
6398 r = theora_decode_packetin(&st, &op);
6399 r = theora_decode_YUVout(&st, &yuv);
6405 _ld_theora
=$
($_pkg_config --silence-errors --libs theora
)
6406 _inc_theora
=$
($_pkg_config --silence-errors --cflags theora
)
6407 cc_check
$_inc_theora $_ld_theora && extra_ldflags
="$extra_ldflags $_ld_theora" &&
6408 extra_cflags
="$extra_cflags $_inc_theora" && _theora
=yes
6409 if test _theora
= no
; then
6410 _ld_theora
="-ltheora -logg"
6411 cc_check
$_ld_theora && extra_ldflags
="$extra_ldflags $_ld_theora" && _theora
=yes
6413 if test "$_theora" = no
&& test "$_tremor_internal" = yes; then
6414 _ld_theora
=$
($_pkg_config --silence-errors --libs theora
)
6415 _inc_theora
=$
($_pkg_config --silence-errors --cflags theora
)
6416 cc_check tremor
/bitwise.c
$_inc_theora $_ld_theora &&
6417 extra_ldflags
="$extra_ldflags $_ld_theora" &&
6418 extra_cflags
="$extra_cflags $_inc_theora" && _theora
=yes
6419 if test _theora
= no
; then
6420 _ld_theora
="-ltheora -logg"
6421 cc_check tremor
/bitwise.c
$_ld_theora &&
6422 extra_ldflags
="$extra_ldflags $_ld_theora" && _theora
=yes
6426 if test "$_theora" = yes ; then
6427 def_theora
='#define CONFIG_OGGTHEORA 1'
6428 _codecmodules
="libtheora $_codecmodules"
6429 # when --enable-theora is forced, we'd better provide a probably sane
6430 # $_ld_theora than nothing
6431 test -z "$_ld_theora" && extra_ldflags
="$extra_ldflags -ltheora -logg"
6433 def_theora
='#undef CONFIG_OGGTHEORA'
6434 _nocodecmodules
="libtheora $_nocodecmodules"
6438 echocheck
"internal mp3lib support"
6439 if test "$_mp3lib" = auto
; then
6440 test "$cc_vendor" = intel
&& _mp3lib
=no || _mp3lib
=yes
6442 if test "$_mp3lib" = yes ; then
6443 def_mp3lib
='#define CONFIG_MP3LIB 1'
6444 _codecmodules
="mp3lib(internal) $_codecmodules"
6446 def_mp3lib
='#undef CONFIG_MP3LIB'
6447 _nocodecmodules
="mp3lib(internal) $_nocodecmodules"
6451 echocheck
"liba52 support"
6452 if test "$_liba52_internal" = auto
; then
6453 test "$cc_vendor" = intel
&& _liba52_internal
=no || _liba52_internal
=yes
6455 def_liba52
='#undef CONFIG_LIBA52'
6456 def_liba52_internal
="#undef CONFIG_LIBA52_INTERNAL"
6457 if test "$_liba52_internal" = yes ; then
6459 def_liba52_internal
="#define CONFIG_LIBA52_INTERNAL 1"
6460 _res_comment
="internal"
6461 elif test "$_liba52_internal" = no
&& test "$_liba52" = auto
; then
6464 #include <inttypes.h>
6465 #include <a52dec/a52.h>
6466 int main(void) { a52_state_t *testHand; testHand=a52_init(0); return 0; }
6468 cc_check
-la52 && _liba52
=yes && _res_comment
="external" && extra_ldflags
="$extra_ldflags -la52"
6470 if test "$_liba52" = yes ; then
6471 def_liba52
='#define CONFIG_LIBA52 1'
6472 _codecmodules
="liba52($_res_comment) $_codecmodules"
6474 _nocodecmodules
="liba52 $_nocodecmodules"
6478 echocheck
"internal libmpeg2 support"
6479 if test "$_libmpeg2" = auto
; then
6481 if alpha
&& test cc_vendor
=gnu
; then
6483 2*|
3.0*|
3.1*) # cannot compile MVI instructions
6485 _res_comment
="broken gcc"
6490 if test "$_libmpeg2" = yes ; then
6491 def_libmpeg2
='#define CONFIG_LIBMPEG2 1'
6492 _codecmodules
="libmpeg2(internal) $_codecmodules"
6494 def_libmpeg2
='#undef CONFIG_LIBMPEG2'
6495 _nocodecmodules
="libmpeg2(internal) $_nocodecmodules"
6497 echores
"$_libmpeg2"
6499 echocheck
"libdca support"
6500 if test "$_libdca" = auto
; then
6503 #include <inttypes.h>
6505 int main(void) { dts_init(0); return 0; }
6507 for _ld_dca
in -ldts -ldca ; do
6508 cc_check
$_ld_dca $_ld_lm && extra_ldflags
="$extra_ldflags $_ld_dca" \
6509 && _libdca
=yes && break
6512 if test "$_libdca" = yes ; then
6513 def_libdca
='#define CONFIG_LIBDCA 1'
6514 _codecmodules
="libdca $_codecmodules"
6516 def_libdca
='#undef CONFIG_LIBDCA'
6517 _nocodecmodules
="libdca $_nocodecmodules"
6521 echocheck
"libmpcdec (musepack, version >= 1.2.1 required)"
6522 if test "$_musepack" = auto
; then
6526 #include <mpcdec/mpcdec.h>
6528 mpc_streaminfo info;
6529 mpc_decoder decoder;
6530 mpc_decoder_set_streaminfo(&decoder, &info);
6531 mpc_decoder_decode_frame(&decoder, NULL, 0, NULL);
6535 cc_check
-lmpcdec $_ld_lm && _musepack
=yes
6537 if test "$_musepack" = yes ; then
6538 def_musepack
='#define CONFIG_MUSEPACK 1'
6539 extra_ldflags
="$extra_ldflags -lmpcdec"
6540 _codecmodules
="musepack $_codecmodules"
6542 def_musepack
='#undef CONFIG_MUSEPACK'
6543 _nocodecmodules
="musepack $_nocodecmodules"
6545 echores
"$_musepack"
6548 echocheck
"FAAC support"
6549 if test "$_faac" = auto
; then
6551 #include <inttypes.h>
6553 int main(void) { unsigned long x, y; faacEncOpen(48000, 2, &x, &y); return 0; }
6556 for _ld_faac
in "-lfaac" "-lfaac -lmp4v2 -lstdc++" ; do
6557 cc_check
-O4 $_ld_faac $_ld_lm && libs_mencoder
="$libs_mencoder $_ld_faac" && _faac
=yes && break
6560 if test "$_faac" = yes ; then
6561 def_faac
="#define CONFIG_FAAC 1"
6562 test "$_faac_lavc" = auto
&& _faac_lavc
=yes
6563 if test "$_faac_lavc" = yes ; then
6564 def_faac_lavc
="#define CONFIG_LIBFAAC 1"
6565 libs_mplayer
="$libs_mplayer $_ld_faac"
6566 _libavencoders
="$_libavencoders LIBFAAC_ENCODER"
6568 _codecmodules
="faac $_codecmodules"
6571 def_faac
="#undef CONFIG_FAAC"
6572 def_faac_lavc
="#define CONFIG_LIBFAAC 0"
6573 _nocodecmodules
="faac $_nocodecmodules"
6575 _res_comment
="in libavcodec: $_faac_lavc"
6579 echocheck
"FAAD2 support"
6580 if test "$_faad_internal" = auto
; then
6581 if x86_32
&& test cc_vendor
=gnu
; then
6583 3.1*|
3.2) # ICE/insn with these versions
6585 _res_comment
="broken gcc"
6597 if test "$_faad" = auto
; then
6600 #ifndef FAAD_MIN_STREAMSIZE
6601 #error Too old version
6603 int main(void) { faacDecHandle testhand; faacDecFrameInfo testinfo;
6604 testhand = faacDecOpen(); faacDecInit(0, 0, 0, 0, 0); return 0; }
6606 cc_check
-lfaad $_ld_lm && _faad
=yes
6609 def_faad
='#undef CONFIG_FAAD'
6610 def_faad_internal
="#undef CONFIG_FAAD_INTERNAL"
6611 if test "$_faad_internal" = yes ; then
6612 def_faad_internal
="#define CONFIG_FAAD_INTERNAL 1"
6613 _res_comment
="internal floating-point"
6614 if test "$_faad_fixed" = yes ; then
6615 # The FIXED_POINT implementation of FAAD2 improves performance
6616 # on some platforms, especially for SBR files.
6617 cflags_faad_fixed
="-DFIXED_POINT"
6618 _res_comment
="internal fixed-point"
6620 elif test "$_faad" = yes ; then
6621 extra_ldflags
="$extra_ldflags -lfaad"
6624 if test "$_faad" = yes ; then
6625 def_faad
='#define CONFIG_FAAD 1'
6626 if test "$_faad_internal" = yes ; then
6627 _codecmodules
="faad2(internal) $_codecmodules"
6629 _codecmodules
="faad2 $_codecmodules"
6633 _nocodecmodules
="faad2 $_nocodecmodules"
6638 echocheck
"LADSPA plugin support"
6639 if test "$_ladspa" = auto
; then
6644 const LADSPA_Descriptor *ld = NULL;
6649 cc_check
&& _ladspa
=yes
6651 if test "$_ladspa" = yes; then
6652 def_ladspa
="#define CONFIG_LADSPA"
6654 def_ladspa
="#undef CONFIG_LADSPA"
6659 echocheck
"libbs2b audio filter support"
6660 if test "$_libbs2b" = auto
; then
6663 #if BS2B_VERSION_MAJOR < 3
6664 #error Please use libbs2b >= 3.0.0, older versions are not supported.
6674 if $_pkg_config --exists libbs2b
; then
6675 _inc_tmp
=$
($_pkg_config --cflags libbs2b
)
6676 _ld_tmp
=$
($_pkg_config --libs libbs2b
)
6677 cc_check
$_inc_tmp $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" &&
6678 extra_cflags
="$extra_cflags $_inc_tmp" && _libbs2b
=yes
6680 for _inc_tmp
in "" -I/usr
/include
/bs2b
-I/usr
/local
/include \
6681 -I/usr
/local
/include
/bs2b
; do
6682 if cc_check
$_inc_tmp $_ld_lm -lbs2b ; then
6683 extra_ldflags
="$extra_ldflags -lbs2b"
6684 extra_cflags
="$extra_cflags $_inc_tmp"
6691 def_libbs2b
="#undef CONFIG_LIBBS2B"
6692 test "$_libbs2b" = yes && def_libbs2b
="#define CONFIG_LIBBS2B"
6696 if test -z "$_codecsdir" ; then
6697 for dir
in "$_libdir/codecs" "$_libdir/win32" /usr
/local
/lib
/codecs \
6698 /usr
/lib
/codecs
/usr
/local
/lib
/win32
/usr
/lib
/win32
; do
6699 if test -d "$dir" ; then
6705 # Fall back on default directory.
6706 if test -z "$_codecsdir" ; then
6707 _codecsdir
="$_libdir/codecs"
6708 mingw32
&& _codecsdir
="codecs"
6709 os2
&& _codecsdir
="codecs"
6713 echocheck
"Win32 codecs"
6714 if test "$_win32dll" = auto
; then
6716 if x86_32
&& ! qnx
; then
6720 if test "$_win32dll" = yes ; then
6721 def_win32dll
='#define CONFIG_WIN32DLL 1'
6722 test -z "$_win32codecsdir" && _win32codecsdir
=$_codecsdir
6723 _res_comment
="using $_win32codecsdir"
6725 def_win32_loader
='#define WIN32_LOADER 1'
6726 _win32_emulation
=yes
6728 extra_ldflags
="$extra_ldflags -ladvapi32 -lole32"
6729 _res_comment
="using native windows"
6731 _codecmodules
="win32 $_codecmodules"
6733 def_win32dll
='#undef CONFIG_WIN32DLL'
6734 def_win32_loader
='#undef WIN32_LOADER'
6735 _nocodecmodules
="win32 $_nocodecmodules"
6737 echores
"$_win32dll"
6740 echocheck
"XAnim codecs"
6741 if test "$_xanim" = auto
; then
6743 _res_comment
="dynamic loader support needed"
6744 if test "$_dl" = yes ; then
6748 if test "$_xanim" = yes ; then
6749 test -z "$_xanimcodecsdir" && _xanimcodecsdir
=$_codecsdir
6750 def_xanim
='#define CONFIG_XANIM 1'
6751 def_xanim_path
="#define XACODEC_PATH \"$_xanimcodecsdir\""
6752 _codecmodules
="xanim $_codecmodules"
6753 _res_comment
="using $_xanimcodecsdir"
6755 def_xanim
='#undef CONFIG_XANIM'
6756 def_xanim_path
='#undef XACODEC_PATH'
6757 _nocodecmodules
="xanim $_nocodecmodules"
6762 echocheck
"RealPlayer codecs"
6763 if test "$_real" = auto
; then
6765 _res_comment
="dynamic loader support needed"
6766 if test "$_dl" = yes ||
test "$_win32dll" = yes &&
6767 (linux || freebsd || netbsd || openbsd || dragonfly || darwin || win32
) ; then
6771 if test "$_real" = yes ; then
6772 test -z "$_realcodecsdir" && _realcodecsdir
="$_codecsdir"
6773 def_real
='#define CONFIG_REALCODECS 1'
6774 def_real_path
="#define REALCODEC_PATH \"$_realcodecsdir\""
6775 _codecmodules
="real $_codecmodules"
6776 _res_comment
="using $_realcodecsdir"
6778 def_real
='#undef CONFIG_REALCODECS'
6779 def_real_path
="#undef REALCODEC_PATH"
6780 _nocodecmodules
="real $_nocodecmodules"
6785 echocheck
"QuickTime codecs"
6787 def_qtx_win32
='#undef CONFIG_QTX_CODECS_WIN32'
6788 def_quicktime
='#undef CONFIG_QUICKTIME'
6789 if test "$_qtx" = auto
; then
6790 test "$_win32dll" = yes || darwin
&& _qtx
=yes
6792 if test "$_qtx" = yes ; then
6793 darwin
&& extra_ldflags
="$extra_ldflags -framework QuickTime" && def_quicktime
='#define CONFIG_QUICKTIME 1'
6794 def_qtx
='#define CONFIG_QTX_CODECS 1'
6795 win32
&& _qtx_codecs_win32
=yes && def_qtx_win32
='#define CONFIG_QTX_CODECS_WIN32 1'
6796 _codecmodules
="qtx $_codecmodules"
6797 darwin || win32 || _qtx_emulation
=yes
6799 def_qtx
='#undef CONFIG_QTX_CODECS'
6800 _nocodecmodules
="qtx $_nocodecmodules"
6804 echocheck
"Nemesi Streaming Media libraries"
6805 if test "$_nemesi" = auto
&& test "$_network" = yes ; then
6807 if $_pkg_config libnemesi
--atleast-version=0.6.3 ; then
6808 extra_cflags
="$extra_cflags $($_pkg_config --cflags libnemesi)"
6809 extra_ldflags
="$extra_ldflags $($_pkg_config --libs libnemesi)"
6813 if test "$_nemesi" = yes; then
6815 def_nemesi
='#define CONFIG_LIBNEMESI 1'
6816 _inputmodules
="nemesi $_inputmodules"
6818 _native_rtsp
="$_network"
6820 def_nemesi
='#undef CONFIG_LIBNEMESI'
6821 _noinputmodules
="nemesi $_noinputmodules"
6825 echocheck
"LIVE555 Streaming Media libraries"
6826 if test "$_live" = auto
&& test "$_network" = yes ; then
6827 cat > $TMPCPP << EOF
6828 #include <liveMedia.hh>
6829 #if (LIVEMEDIA_LIBRARY_VERSION_INT < 1141257600)
6830 #error Please upgrade to version 2006.03.03 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
6832 int main(void) { return 0; }
6836 for I
in $extra_cflags "-I$_libdir/live" "-I/usr/lib/live" "-I/usr/lib64/live" "-I/usr/local/live" "-I/usr/local/lib/live" ; do
6837 cxx_check
$I/liveMedia
/include
$I/UsageEnvironment
/include \
6838 $I/groupsock
/include
&& _livelibdir
=$
(echo $I|
sed s
/-I//) && \
6839 extra_ldflags
="$_livelibdir/liveMedia/libliveMedia.a \
6840 $_livelibdir/groupsock/libgroupsock.a \
6841 $_livelibdir/UsageEnvironment/libUsageEnvironment.a \
6842 $_livelibdir/BasicUsageEnvironment/libBasicUsageEnvironment.a \
6843 $extra_ldflags -lstdc++" \
6844 extra_cxxflags
="-I$_livelibdir/liveMedia/include \
6845 -I$_livelibdir/UsageEnvironment/include \
6846 -I$_livelibdir/BasicUsageEnvironment/include \
6847 -I$_livelibdir/groupsock/include" && \
6850 if test "$_live" != yes ; then
6851 if cxx_check
-I/usr
/include
/liveMedia
-I/usr
/include
/UsageEnvironment
-I/usr
/include
/groupsock
; then
6856 if test "$_live" = yes && test "$_network" = yes; then
6857 test $_livelibdir && _res_comment
="using $_livelibdir"
6858 def_live
='#define CONFIG_LIVE555 1'
6859 _inputmodules
="live555 $_inputmodules"
6860 elif test "$_live_dist" = yes && test "$_network" = yes; then
6861 _res_comment
="using distribution version"
6863 def_live
='#define CONFIG_LIVE555 1'
6864 extra_ldflags
="$extra_ldflags -lliveMedia -lgroupsock -lUsageEnvironment -lBasicUsageEnvironment -lstdc++"
6865 extra_cxxflags
="-I/usr/include/liveMedia -I/usr/include/UsageEnvironment \
6866 -I/usr/include/BasicUsageEnvironment -I/usr/include/groupsock"
6867 _inputmodules
="live555 $_inputmodules"
6870 def_live
='#undef CONFIG_LIVE555'
6871 _noinputmodules
="live555 $_noinputmodules"
6876 echocheck
"FFmpeg libavutil"
6877 if test "$_libavutil_a" = auto
; then
6878 if test -d libavutil
; then
6880 _res_comment
="static"
6882 die
"MPlayer will not compile without libavutil in the source tree."
6884 elif test "$_libavutil_so" = auto
; then
6887 #include <libavutil/common.h>
6888 int main(void) { av_gcd(1,1); return 0; }
6890 if $_pkg_config --exists libavutil
; then
6891 _inc_libavutil
=$
($_pkg_config --cflags libavutil
)
6892 _ld_tmp
=$
($_pkg_config --libs libavutil
)
6893 cc_check
$_inc_libavutil $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" \
6894 && _libavutil_so
=yes
6895 elif cc_check
-lavutil $_ld_lm ; then
6896 extra_ldflags
="$extra_ldflags -lavutil"
6898 _res_comment
="using libavutil.so, but static libavutil is recommended"
6902 def_libavutil
='#undef CONFIG_LIBAVUTIL'
6903 def_libavutil_a
='#undef CONFIG_LIBAVUTIL_A'
6904 def_libavutil_so
='#undef CONFIG_LIBAVUTIL_SO'
6905 test "$_libavutil_a" = yes ||
test "$_libavutil_so" = yes && _libavutil
=yes
6906 test "$_libavutil" = yes && def_libavutil
='#define CONFIG_LIBAVUTIL 1'
6907 test "$_libavutil_a" = yes && def_libavutil_a
='#define CONFIG_LIBAVUTIL_A 1'
6908 test "$_libavutil_so" = yes && def_libavutil_so
='#define CONFIG_LIBAVUTIL_SO 1'
6909 # neither static nor shared libavutil is available, but it is mandatory ...
6910 if test "$_libavutil" = no
; then
6911 die
"You need static or shared libavutil, MPlayer will not compile without!"
6913 echores
"$_libavutil"
6915 echocheck
"FFmpeg libavcodec"
6916 if test "$_libavcodec_a" = auto
; then
6918 if test -d libavcodec
&& test -f libavcodec
/utils.c
; then
6920 _res_comment
="static"
6922 elif test "$_libavcodec_so" = auto
; then
6924 _res_comment
="libavcodec.so is discouraged over static libavcodec"
6926 #include <libavcodec/avcodec.h>
6927 int main(void) { avcodec_find_encoder_by_name(""); return 0; }
6929 if $_pkg_config --exists libavcodec
; then
6930 _inc_libavcodec
=$
($_pkg_config --cflags libavcodec
)
6931 _ld_tmp
=$
($_pkg_config --libs libavcodec
)
6932 cc_check
$_inc_libavcodec $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" \
6933 && _libavcodec_so
=yes
6934 elif cc_check
-lavcodec $_ld_lm ; then
6935 extra_ldflags
="$extra_ldflags -lavcodec"
6937 _res_comment
="using libavcodec.so, but static libavcodec is recommended"
6941 def_libavcodec
='#undef CONFIG_LIBAVCODEC'
6942 def_libavcodec_a
='#undef CONFIG_LIBAVCODEC_A'
6943 def_libavcodec_so
='#undef CONFIG_LIBAVCODEC_SO'
6944 test "$_libavcodec_a" = yes ||
test "$_libavcodec_so" = yes && _libavcodec
=yes
6945 test "$_libavcodec" = yes && def_libavcodec
='#define CONFIG_LIBAVCODEC 1'
6946 test "$_libavcodec_a" = yes && def_libavcodec_a
='#define CONFIG_LIBAVCODEC_A 1'
6947 test "$_libavcodec_so" = yes && def_libavcodec_so
='#define CONFIG_LIBAVCODEC_SO 1'
6948 test "$_libavcodec_mpegaudio_hp" = yes \
6949 && def_libavcodec_mpegaudio_hp
='#define CONFIG_MPEGAUDIO_HP 1'
6950 if test "$_libavcodec_a" = yes ; then
6951 _codecmodules
="libavcodec(internal) $_codecmodules"
6952 elif test "$_libavcodec_so" = yes ; then
6953 _codecmodules
="libavcodec.so $_codecmodules"
6955 _nocodecmodules
="libavcodec $_nocodecmodules"
6957 echores
"$_libavcodec"
6959 echocheck
"FFmpeg libavformat"
6960 if test "$_libavformat_a" = auto
; then
6962 if test -d libavformat
&& test -f libavformat
/utils.c
; then
6964 _res_comment
="static"
6966 elif test "$_libavformat_so" = auto
; then
6969 #include <libavformat/avformat.h>
6970 #include <libavcodec/opt.h>
6971 int main(void) { av_alloc_format_context(); return 0; }
6973 if $_pkg_config --exists libavformat
; then
6974 _inc_libavformat
=$
($_pkg_config --cflags libavformat
)
6975 _ld_tmp
=$
($_pkg_config --libs libavformat
)
6976 cc_check
$_inc_libavformat $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" \
6977 && _libavformat_so
=yes
6978 elif cc_check
$_ld_lm -lavformat ; then
6979 extra_ldflags
="$extra_ldflags -lavformat"
6981 _res_comment
="using libavformat.so, but static libavformat is recommended"
6985 def_libavformat
='#undef CONFIG_LIBAVFORMAT'
6986 def_libavformat_a
='#undef CONFIG_LIBAVFORMAT_A'
6987 def_libavformat_so
='#undef CONFIG_LIBAVFORMAT_SO'
6988 test "$_libavformat_a" = yes ||
test "$_libavformat_so" = yes && _libavformat
=yes
6989 test "$_libavformat" = yes && def_libavformat
='#define CONFIG_LIBAVFORMAT 1'
6990 test "$_libavformat_a" = yes && def_libavformat_a
='#define CONFIG_LIBAVFORMAT_A 1'
6991 test "$_libavformat_so" = yes \
6992 && def_libavformat_so
='#define CONFIG_LIBAVFORMAT_SO 1'
6993 echores
"$_libavformat"
6995 echocheck
"FFmpeg libpostproc"
6996 if test "$_libpostproc_a" = auto
; then
6998 if test -d libpostproc
&& test -f libpostproc
/postprocess.h
; then
6999 _libpostproc_a
='yes'
7000 _res_comment
="static"
7002 elif test "$_libpostproc_so" = auto
; then
7005 #include <inttypes.h>
7006 #include <libpostproc/postprocess.h>
7007 int main(void) { pp_get_mode_by_name_and_quality("de", 0); return 0; }
7009 if cc_check
-lpostproc $_ld_lm ; then
7010 extra_ldflags
="$extra_ldflags -lpostproc"
7012 _res_comment
="using libpostproc.so, but static libpostproc is recommended"
7016 def_libpostproc
='#undef CONFIG_LIBPOSTPROC'
7017 def_libpostproc_a
='#undef CONFIG_LIBPOSTPROC_A'
7018 def_libpostproc_so
='#undef CONFIG_LIBPOSTPROC_SO'
7019 test "$_libpostproc_a" = yes ||
test "$_libpostproc_so" = yes && _libpostproc
=yes
7020 test "$_libpostproc" = yes && def_libpostproc
='#define CONFIG_LIBPOSTPROC 1'
7021 test "$_libpostproc_a" = yes && def_libpostproc_a
='#define CONFIG_LIBPOSTPROC_A 1'
7022 test "$_libpostproc_so" = yes \
7023 && def_libpostproc_so
='#define CONFIG_LIBPOSTPROC_SO 1'
7024 echores
"$_libpostproc"
7026 echocheck
"FFmpeg libswscale"
7027 if test "$_libswscale_a" = auto
; then
7029 if test -d libswscale
&& test -f libswscale
/swscale.h
; then
7031 _res_comment
="static"
7033 elif test "$_libswscale_so" = auto
; then
7035 _res_comment
="using libswscale.so, but static libswscale is recommended"
7037 #include <libswscale/swscale.h>
7038 int main(void) { sws_scale(0, 0, 0, 0, 0, 0, 0); return 0; }
7040 if $_pkg_config --exists libswscale
; then
7041 _inc_libswscale
=$
($_pkg_config --cflags libswscale
)
7042 _ld_tmp
=$
($_pkg_config --libs libswscale
)
7043 cc_check
$_inc_libswscale $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" \
7044 && _libswscale_so
=yes
7045 elif cc_check
-lswscale ; then
7046 extra_ldflags
="$extra_ldflags -lswscale"
7051 def_libswscale
='#undef CONFIG_LIBSWSCALE'
7052 def_libswscale_a
='#undef CONFIG_LIBSWSCALE_A'
7053 def_libswscale_so
='#undef CONFIG_LIBSWSCALE_SO'
7054 test "$_libswscale_a" = yes ||
test "$_libswscale_so" = yes && _libswscale
=yes
7055 test "$_libswscale" = yes && def_libswscale
='#define CONFIG_LIBSWSCALE 1'
7056 test "$_libswscale_a" = yes && def_libswscale_a
='#define CONFIG_LIBSWSCALE_A 1'
7057 test "$_libswscale_so" = yes \
7058 && def_libswscale_so
='#define CONFIG_LIBSWSCALE_SO 1'
7059 echores
"$_libswscale"
7061 echocheck
"libamr narrowband"
7062 if test "$_libamr_nb" = auto
; then
7065 #include <amrnb/sp_dec.h>
7066 int main(void) { Speech_Decode_Frame_init(); return 0; }
7068 cc_check
-lamrnb && _libamr_nb
=yes
7069 if test "$_libavcodec_a" != yes ; then
7071 _res_comment
="libavcodec (static) is required by libamr_nb, sorry"
7074 if test "$_libamr_nb" = yes ; then
7076 extra_ldflags
="$extra_ldflags -lamrnb"
7077 def_libamr
='#define CONFIG_LIBAMR 1'
7078 def_libamr_nb
='#define CONFIG_LIBAMR_NB 1'
7079 _libavdecoders
="$_libavdecoders LIBAMR_NB_DECODER"
7080 _libavencoders
="$_libavencoders LIBAMR_NB_ENCODER"
7081 _codecmodules
="libamr_nb $_codecmodules"
7083 def_libamr_nb
='#define CONFIG_LIBAMR_NB 0'
7084 _nocodecmodules
="libamr_nb $_nocodecmodules"
7086 echores
"$_libamr_nb"
7089 echocheck
"libamr wideband"
7090 if test "$_libamr_wb" = auto
; then
7093 #include <amrwb/dec_if.h>
7094 int main(void) { D_IF_init(); return 0; }
7096 cc_check
-lamrwb && _libamr_wb
=yes
7097 if test "$_libavcodec_a" != yes ; then
7099 _res_comment
="libavcodec (static) is required by libamr_wb, sorry"
7102 if test "$_libamr_wb" = yes ; then
7104 extra_ldflags
="$extra_ldflags -lamrwb"
7105 def_libamr
='#define CONFIG_LIBAMR 1'
7106 def_libamr_wb
='#define CONFIG_LIBAMR_WB 1'
7107 _libavdecoders
="$_libavdecoders LIBAMR_WB_DECODER"
7108 _libavencoders
="$_libavencoders LIBAMR_WB_ENCODER"
7109 _codecmodules
="libamr_wb $_codecmodules"
7111 def_libamr_wb
='#define CONFIG_LIBAMR_WB 0'
7112 _nocodecmodules
="libamr_wb $_nocodecmodules"
7114 echores
"$_libamr_wb"
7116 echocheck
"libdv-0.9.5+"
7117 if test "$_libdv" = auto
; then
7120 #include <libdv/dv.h>
7121 int main(void) { dv_encoder_t* enc=dv_encoder_new(1,1,1); return 0; }
7123 cc_check
-ldv $_ld_pthread $_ld_lm && _libdv
=yes
7125 if test "$_libdv" = yes ; then
7126 def_libdv
='#define CONFIG_LIBDV095 1'
7127 extra_ldflags
="$extra_ldflags -ldv"
7128 _codecmodules
="libdv $_codecmodules"
7130 def_libdv
='#undef CONFIG_LIBDV095'
7131 _nocodecmodules
="libdv $_nocodecmodules"
7137 if test "$_xvid" = auto
; then
7141 int main(void) { xvid_global(0, 0, 0, 0); return 0; }
7143 for _ld_tmp
in "-lxvidcore $_ld_lm" "-lxvidcore $_ld_lm $_ld_pthread" ; do
7144 cc_check
$_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && _xvid
=yes && break
7148 if test "$_xvid" = yes ; then
7149 def_xvid
='#define CONFIG_XVID4 1'
7150 _codecmodules
="xvid $_codecmodules"
7152 def_xvid
='#undef CONFIG_XVID4'
7153 _nocodecmodules
="xvid $_nocodecmodules"
7157 echocheck
"Xvid two pass plugin"
7158 if test "$_xvid" = yes && test "$_xvid_lavc" = auto
; then
7161 int main(void) { xvid_plugin_2pass2_t s; s.vbv_size=0; return 0; }
7163 cc_check
&& _xvid_lavc
=yes
7165 if test "$_xvid_lavc" = yes ; then
7166 def_xvid_lavc
='#define CONFIG_LIBXVID 1'
7167 _libavencoders
="$_libavencoders LIBXVID_ENCODER"
7170 def_xvid_lavc
='#define CONFIG_LIBXVID 0'
7172 echores
"$_xvid_lavc"
7176 if test "$_x264" = auto
; then
7178 #include <inttypes.h>
7181 #error We do not support old versions of x264. Get the latest from SVN.
7183 int main(void) { x264_encoder_open((void*)0); return 0; }
7186 for _ld_x264
in "-lx264 $_ld_pthread" "-lx264 $_ld_pthread $_ld_lm" ; do
7187 cc_check
$_ld_x264 && libs_mencoder
="$libs_mencoder $_ld_x264" && _x264
=yes && break
7191 if test "$_x264" = yes ; then
7192 def_x264
='#define CONFIG_X264 1'
7193 _codecmodules
="x264 $_codecmodules"
7194 test "$_x264_lavc" = auto
&& _x264_lavc
=yes
7195 if test "$_x264_lavc" = yes ; then
7196 def_x264_lavc
='#define CONFIG_LIBX264 1'
7197 libs_mplayer
="$libs_mplayer $_ld_x264"
7198 _libavencoders
="$_libavencoders LIBX264_ENCODER"
7202 def_x264
='#undef CONFIG_X264'
7203 def_x264_lavc
='#define CONFIG_LIBX264 0'
7204 _nocodecmodules
="x264 $_nocodecmodules"
7206 _res_comment
="in libavcodec: $_x264_lavc"
7210 echocheck
"libdirac"
7211 if test "$_libdirac_lavc" = auto
; then
7213 if test "$_libavcodec_a" != yes; then
7214 _res_comment
="libavcodec (static) is required by libdirac, sorry"
7217 #include <libdirac_encoder/dirac_encoder.h>
7218 #include <libdirac_decoder/dirac_parser.h>
7221 dirac_encoder_context_t enc_ctx;
7222 dirac_decoder_t *dec_handle;
7223 dirac_encoder_context_init(&enc_ctx, VIDEO_FORMAT_SD_576I50);
7224 dec_handle = dirac_decoder_init(0);
7226 dirac_decoder_close(dec_handle);
7230 if $_pkg_config --exists dirac
; then
7231 _inc_dirac
=$
($_pkg_config --silence-errors --cflags dirac
)
7232 _ld_dirac
=$
($_pkg_config --silence-errors --libs dirac
)
7233 cc_check
$_inc_dirac $_ld_dirac &&
7234 _libdirac_lavc
=yes &&
7235 extra_cflags
="$extra_cflags $_inc_dirac" &&
7236 extra_ldflags
="$extra_ldflags $_ld_dirac"
7240 if test "$_libdirac_lavc" = yes ; then
7241 def_libdirac_lavc
='#define CONFIG_LIBDIRAC 1'
7242 _libavencoders
="$_libavencoders LIBDIRAC_ENCODER"
7243 _libavdecoders
="$_libavdecoders LIBDIRAC_DECODER"
7244 _codecmodules
="libdirac $_codecmodules"
7246 def_libdirac_lavc
='#define CONFIG_LIBDIRAC 0'
7247 _nocodecmodules
="libdirac $_nocodecmodules"
7249 echores
"$_libdirac_lavc"
7252 echocheck
"libschroedinger"
7253 if test "$_libschroedinger_lavc" = auto
; then
7254 _libschroedinger_lavc
=no
7255 if test "$_libavcodec_a" != yes; then
7256 _res_comment
="libavcodec (static) is required by libschroedinger, sorry"
7259 #include <schroedinger/schro.h>
7260 int main(void) { schro_init(); return 0; }
7262 if $_pkg_config --exists schroedinger-1.0
; then
7263 _inc_schroedinger
=$
($_pkg_config --silence-errors --cflags schroedinger-1.0
)
7264 _ld_schroedinger
=$
($_pkg_config --silence-errors --libs schroedinger-1.0
)
7265 cc_check
$_inc_schroedinger $_ld_schroedinger &&
7266 _libschroedinger_lavc
=yes &&
7267 extra_cflags
="$extra_cflags $_inc_schroedinger" &&
7268 extra_ldflags
="$extra_ldflags $_ld_schroedinger"
7272 if test "$_libschroedinger_lavc" = yes ; then
7273 def_libschroedinger_lavc
='#define CONFIG_LIBSCHROEDINGER 1'
7274 _libavencoders
="$_libavencoders LIBSCHROEDINGER_ENCODER"
7275 _libavdecoders
="$_libavdecoders LIBSCHROEDINGER_DECODER"
7276 _codecmodules
="libschroedinger $_codecmodules"
7278 def_libschroedinger_lavc
='#define CONFIG_LIBSCHROEDINGER 0'
7279 _nocodecmodules
="libschroedinger $_nocodecmodules"
7281 echores
"$_libschroedinger_lavc"
7284 if test "$_libnut" = auto
; then
7288 #include <inttypes.h>
7290 nut_context_tt * nut;
7291 int main(void) { (void)nut_error(0); return 0; }
7294 cc_check
-lnut && _libnut
=yes
7297 if test "$_libnut" = yes ; then
7298 def_libnut
='#define CONFIG_LIBNUT 1'
7299 extra_ldflags
="$extra_ldflags -lnut"
7301 def_libnut
='#undef CONFIG_LIBNUT'
7305 #check must be done after libavcodec one
7307 if test "$_zr" = auto
; then
7308 #36067's seem to identify themselves as 36057PQC's, so the line
7309 #below should work for 36067's and 36057's.
7310 if grep -q -s -e "Multimedia video controller: Zoran Corporation ZR36057" /proc
/pci
; then
7316 if test "$_zr" = yes ; then
7317 if test "$_libavcodec_a" = yes ; then
7318 def_zr
='#define CONFIG_ZR 1'
7319 _vomodules
="zr zr2 $_vomodules"
7321 _res_comment
="libavcodec (static) is required by zr, sorry"
7322 _novomodules
="zr $_novomodules"
7323 def_zr
='#undef CONFIG_ZR'
7326 def_zr
='#undef CONFIG_ZR'
7327 _novomodules
="zr zr2 $_novomodules"
7331 # mencoder requires (optional) those libs: libmp3lame
7332 if test "$_mencoder" != no
; then
7334 echocheck
"libmp3lame"
7335 def_mp3lame_preset
='#undef CONFIG_MP3LAME_PRESET'
7336 def_mp3lame_preset_medium
='#undef CONFIG_MP3LAME_PRESET_MEDIUM'
7337 if test "$_mp3lame" = auto
; then
7340 #include <lame/lame.h>
7341 int main(void) { lame_version_t lv; (void) lame_init();
7342 get_lame_version_numerical(&lv); printf("%d%d\n",lv.major,lv.minor);
7345 cc_check
-lmp3lame $_ld_lm && tmp_run
&& _mp3lame
=yes
7347 if test "$_mp3lame" = yes ; then
7348 def_mp3lame
="#define CONFIG_MP3LAME"
7349 _ld_mp3lame
=-lmp3lame
7350 libs_mencoder
="$libs_mencoder $_ld_mp3lame"
7352 #include <lame/lame.h>
7353 int main(void) { lame_set_preset(NULL, STANDARD_FAST); return 0; }
7355 cc_check
$_ld_mp3lame $_ld_lm && def_mp3lame_preset
="#define CONFIG_MP3LAME_PRESET"
7357 #include <lame/lame.h>
7358 int main(void) { lame_set_preset(NULL, MEDIUM_FAST); return 0; }
7360 cc_check
$_ld_mp3lame $_ld_lm && def_mp3lame_preset_medium
="#define CONFIG_MP3LAME_PRESET_MEDIUM"
7361 test "$_mp3lame_lavc" = auto
&& _mp3lame_lavc
=yes
7362 if test "$_mp3lame_lavc" = yes ; then
7363 def_mp3lame_lavc
="#define CONFIG_LIBMP3LAME 1"
7364 _libavencoders
="$_libavencoders LIBMP3LAME_ENCODER"
7365 libs_mplayer
="$libs_mplayer $_ld_mp3lame"
7369 def_mp3lame
='#undef CONFIG_MP3LAME'
7370 def_mp3lame_lavc
="#define CONFIG_LIBMP3LAME 0"
7372 _res_comment
="in libavcodec: $_mp3lame_lavc"
7375 fi # test "$_mencoder" != no
7377 echocheck
"mencoder"
7378 if test "$_mencoder" = yes ; then
7379 def_muxers
='#define CONFIG_MUXERS 1'
7381 # mpeg1video for vf_lavc, snow for vf_uspp and vf_mcdeint, png for vf_screenshot
7382 _libavencoders
="MPEG1VIDEO_ENCODER SNOW_ENCODER"
7383 test "$_zlib" = yes && _libavencoders
="$_libavencoders PNG_ENCODER"
7385 def_muxers
='#define CONFIG_MUXERS 0'
7387 echores
"$_mencoder"
7390 echocheck
"UnRAR executable"
7391 if test "$_unrar_exec" = auto
; then
7393 mingw32
&& _unrar_exec
="no"
7395 if test "$_unrar_exec" = yes ; then
7396 def_unrar_exec
='#define CONFIG_UNRAR_EXEC 1'
7398 def_unrar_exec
='#undef CONFIG_UNRAR_EXEC'
7400 echores
"$_unrar_exec"
7402 echocheck
"TV interface"
7403 if test "$_tv" = yes ; then
7404 def_tv
='#define CONFIG_TV 1'
7405 _inputmodules
="tv $_inputmodules"
7407 _noinputmodules
="tv $_noinputmodules"
7408 def_tv
='#undef CONFIG_TV'
7413 if freebsd || netbsd || openbsd || dragonfly || bsdos
; then
7414 echocheck
"*BSD BT848 bt8xx header"
7416 for file in "machine/ioctl_bt848.h" \
7417 "dev/bktr/ioctl_bt848.h" \
7418 "dev/video/bktr/ioctl_bt848.h" \
7419 "dev/ic/bt8xx.h" ; do
7421 #include <sys/types.h>
7422 #include <sys/ioctl.h>
7424 int main(void) { ioctl(0, TVTUNER_GETFREQ, 0); return 0; }
7428 _ioctl_bt848_h_name
="$file"
7432 if test "$_ioctl_bt848_h" = yes ; then
7433 def_ioctl_bt848_h_name
="#define IOCTL_BT848_H_NAME <$_ioctl_bt848_h_name>"
7434 _res_comment
="using $_ioctl_bt848_h_name"
7436 def_ioctl_bt848_h_name
="#undef IOCTL_BT848_H_NAME"
7438 echores
"$_ioctl_bt848_h"
7440 echocheck
"*BSD ioctl_meteor.h"
7442 for file in "machine/ioctl_meteor.h" \
7443 "dev/bktr/ioctl_meteor.h" \
7444 "dev/video/bktr/ioctl_meteor.h" ; do
7446 #include <sys/types.h>
7448 int main(void) { ioctl(0, METEORSINPUT, 0); return 0; }
7452 _ioctl_meteor_h_name
="$file"
7456 if test "$_ioctl_meteor_h" = yes ; then
7457 def_ioctl_meteor_h_name
="#define IOCTL_METEOR_H_NAME <$_ioctl_meteor_h_name>"
7458 _res_comment
="using $_ioctl_meteor_h_name"
7460 def_ioctl_meteor_h_name
="#undef IOCTL_METEOR_H_NAME"
7462 echores
"$_ioctl_meteor_h"
7464 echocheck
"*BSD BrookTree 848 TV interface"
7465 if test "$_tv_bsdbt848" = auto
; then
7467 if test "$_tv" = yes ; then
7469 #include <sys/types.h>
7470 $def_ioctl_meteor_h_name
7471 $def_ioctl_bt848_h_name
7472 #ifdef IOCTL_METEOR_H_NAME
7473 #include IOCTL_METEOR_H_NAME
7475 #ifdef IOCTL_BT848_H_NAME
7476 #include IOCTL_BT848_H_NAME
7479 ioctl(0, METEORSINPUT, 0);
7480 ioctl(0, TVTUNER_GETFREQ, 0);
7484 cc_check
&& _tv_bsdbt848
=yes
7487 if test "$_tv_bsdbt848" = yes ; then
7488 def_tv_bsdbt848
='#define CONFIG_TV_BSDBT848 1'
7489 _inputmodules
="tv-bsdbt848 $_inputmodules"
7491 def_tv_bsdbt848
='#undef CONFIG_TV_BSDBT848'
7492 _noinputmodules
="tv-bsdbt848 $_noinputmodules"
7494 echores
"$_tv_bsdbt848"
7495 fi #if freebsd || netbsd || openbsd || dragonfly || bsdos
7498 echocheck
"DirectShow TV interface"
7499 if test "$_tv_dshow" = auto
; then
7501 if test "$_tv" = yes && win32
; then
7506 CoCreateInstance((GUID*)&GUID_NULL, NULL, CLSCTX_INPROC_SERVER, &GUID_NULL, &p);
7510 cc_check
-lole32 -luuid && _tv_dshow
=yes
7513 if test "$_tv_dshow" = yes ; then
7514 _inputmodules
="tv-dshow $_inputmodules"
7515 def_tv_dshow
='#define CONFIG_TV_DSHOW 1'
7516 extra_ldflags
="$extra_ldflags -lole32 -luuid"
7518 _noinputmodules
="tv-dshow $_noinputmodules"
7519 def_tv_dshow
='#undef CONFIG_TV_DSHOW'
7521 echores
"$_tv_dshow"
7524 echocheck
"Video 4 Linux TV interface"
7525 if test "$_tv_v4l1" = auto
; then
7527 if test "$_tv" = yes && linux
; then
7530 #include <linux/videodev.h>
7531 int main(void) { return 0; }
7533 cc_check
&& _tv_v4l1
=yes
7536 if test "$_tv_v4l1" = yes ; then
7539 def_tv_v4l
='#define CONFIG_TV_V4L 1'
7540 def_tv_v4l1
='#define CONFIG_TV_V4L1 1'
7541 _inputmodules
="tv-v4l $_inputmodules"
7543 _noinputmodules
="tv-v4l1 $_noinputmodules"
7544 def_tv_v4l
='#undef CONFIG_TV_V4L'
7549 echocheck
"Video 4 Linux 2 TV interface"
7550 if test "$_tv_v4l2" = auto
; then
7552 if test "$_tv" = yes && linux
; then
7555 #include <linux/types.h>
7556 #include <linux/videodev2.h>
7557 int main(void) { return 0; }
7559 cc_check
&& _tv_v4l2
=yes
7562 if test "$_tv_v4l2" = yes ; then
7565 def_tv_v4l
='#define CONFIG_TV_V4L 1'
7566 def_tv_v4l2
='#define CONFIG_TV_V4L2 1'
7567 _inputmodules
="tv-v4l2 $_inputmodules"
7569 _noinputmodules
="tv-v4l2 $_noinputmodules"
7570 def_tv_v4l2
='#undef CONFIG_TV_V4L2'
7575 echocheck
"TV teletext interface"
7576 if test "$_tv_teletext" = auto
; then
7578 if test "$_freetype" = yes && test "$_pthreads" = yes; then
7579 if test "$_tv_v4l2" = yes ||
test "$_v4l" = yes ||
test "$_tv_dshow" = yes; then
7584 if test "$_tv_teletext" = yes ; then
7585 def_tv_teletext
='#define CONFIG_TV_TELETEXT 1'
7586 _inputmodules
="tv-teletext $_inputmodules"
7588 _noinputmodules
="tv-teletext $_noinputmodules"
7589 def_tv_teletext
='#undef CONFIG_TV_TELETEXT'
7591 echores
"$_tv_teletext"
7594 echocheck
"Radio interface"
7595 if test "$_radio" = yes ; then
7596 def_radio
='#define CONFIG_RADIO 1'
7597 _inputmodules
="radio $_inputmodules"
7598 if test "$_alsa9" != yes -a "$_alsa1x" != yes -a "$_ossaudio" != yes ; then
7601 if test "$_radio_capture" = yes ; then
7603 def_radio_capture
="#define CONFIG_RADIO_CAPTURE 1"
7605 def_radio_capture
="#undef CONFIG_RADIO_CAPTURE"
7608 _noinputmodules
="radio $_noinputmodules"
7609 def_radio
='#undef CONFIG_RADIO'
7610 def_radio_capture
="#undef CONFIG_RADIO_CAPTURE"
7614 echocheck
"Capture for Radio interface"
7615 echores
"$_radio_capture"
7617 echocheck
"Video 4 Linux 2 Radio interface"
7618 if test "$_radio_v4l2" = auto
; then
7620 if test "$_radio" = yes && linux
; then
7623 #include <linux/types.h>
7624 #include <linux/videodev2.h>
7625 int main(void) { return 0; }
7627 cc_check
&& _radio_v4l2
=yes
7630 if test "$_radio_v4l2" = yes ; then
7631 def_radio_v4l2
='#define CONFIG_RADIO_V4L2 1'
7633 def_radio_v4l2
='#undef CONFIG_RADIO_V4L2'
7635 echores
"$_radio_v4l2"
7637 echocheck
"Video 4 Linux Radio interface"
7638 if test "$_radio_v4l" = auto
; then
7640 if test "$_radio" = yes && linux
; then
7643 #include <linux/videodev.h>
7644 int main(void) { return 0; }
7646 cc_check
&& _radio_v4l
=yes
7649 if test "$_radio_v4l" = yes ; then
7650 def_radio_v4l
='#define CONFIG_RADIO_V4L 1'
7652 def_radio_v4l
='#undef CONFIG_RADIO_V4L'
7654 echores
"$_radio_v4l"
7656 if freebsd || netbsd || openbsd || dragonfly || bsdos \
7657 && test "$_radio" = yes && test "$_radio_bsdbt848" = auto
; then
7658 echocheck
"*BSD BrookTree 848 Radio interface"
7661 #include <sys/types.h>
7662 $def_ioctl_bt848_h_name
7663 #ifdef IOCTL_BT848_H_NAME
7664 #include IOCTL_BT848_H_NAME
7666 int main(void) { ioctl(0, RADIO_GETFREQ, 0); return 0; }
7668 cc_check
&& _radio_bsdbt848
=yes
7669 echores
"$_radio_bsdbt848"
7670 fi #if freebsd || netbsd || openbsd || dragonfly || bsdos && _radio && _radio_bsdbt848
7672 if test "$_radio_bsdbt848" = yes ; then
7673 def_radio_bsdbt848
='#define CONFIG_RADIO_BSDBT848 1'
7675 def_radio_bsdbt848
='#undef CONFIG_RADIO_BSDBT848'
7678 if test "$_radio_v4l" = no
&& test "$_radio_v4l2" = no
&& \
7679 test "$_radio_bsdbt848" = no
&& test "$_radio" = yes ; then
7680 die
"Radio driver requires BSD BT848, V4L or V4L2!"
7683 echocheck
"Video 4 Linux 2 MPEG PVR interface"
7684 if test "$_pvr" = auto
; then
7686 if test "$_tv_v4l2" = yes && linux
; then
7689 #include <inttypes.h>
7690 #include <linux/types.h>
7691 #include <linux/videodev2.h>
7692 int main(void) { struct v4l2_ext_controls ext; return 0; }
7694 cc_check
&& _pvr
=yes
7697 if test "$_pvr" = yes ; then
7698 def_pvr
='#define CONFIG_PVR 1'
7699 _inputmodules
="pvr $_inputmodules"
7701 _noinputmodules
="pvr $_noinputmodules"
7702 def_pvr
='#undef CONFIG_PVR'
7708 if ! beos
&& test "$_ftp" = yes ; then
7709 def_ftp
='#define CONFIG_FTP 1'
7710 _inputmodules
="ftp $_inputmodules"
7712 _noinputmodules
="ftp $_noinputmodules"
7713 def_ftp
='#undef CONFIG_FTP'
7717 echocheck
"vstream client"
7718 if test "$_vstream" = auto
; then
7721 #include <vstream-client.h>
7722 void vstream_error(const char *format, ... ) {}
7723 int main(void) { vstream_start(); return 0; }
7725 cc_check
-lvstream-client && _vstream
=yes
7727 if test "$_vstream" = yes ; then
7728 def_vstream
='#define CONFIG_VSTREAM 1'
7729 _inputmodules
="vstream $_inputmodules"
7730 extra_ldflags
="$extra_ldflags -lvstream-client"
7732 _noinputmodules
="vstream $_noinputmodules"
7733 def_vstream
='#undef CONFIG_VSTREAM'
7738 echocheck
"OSD menu"
7739 if test "$_menu" = yes ; then
7740 def_menu
='#define CONFIG_MENU 1'
7741 test $_dvbin = "yes" && _menu_dvbin
=yes
7743 def_menu
='#undef CONFIG_MENU'
7749 echocheck
"Subtitles sorting"
7750 if test "$_sortsub" = yes ; then
7751 def_sortsub
='#define CONFIG_SORTSUB 1'
7753 def_sortsub
='#undef CONFIG_SORTSUB'
7758 echocheck
"XMMS inputplugin support"
7759 if test "$_xmms" = yes ; then
7760 if ( xmms-config
--version ) >/dev
/null
2>&1 ; then
7761 _xmmsplugindir
=$
(xmms-config
--input-plugin-dir)
7762 _xmmslibdir
=$
(xmms-config
--exec-prefix)/lib
7764 _xmmsplugindir
=/usr
/lib
/xmms
/Input
7765 _xmmslibdir
=/usr
/lib
7768 def_xmms
='#define CONFIG_XMMS 1'
7770 extra_ldflags
="$extra_ldflags ${_xmmslibdir}/libxmms.dylib"
7772 extra_ldflags
="$extra_ldflags ${_xmmslibdir}/libxmms.so.1 -export-dynamic"
7775 def_xmms
='#undef CONFIG_XMMS'
7780 # --------------- GUI specific tests begin -------------------
7783 if test "$_gui" = yes ; then
7785 # Required libraries
7786 if test "$_libavcodec" != yes ||
7787 ! echo $_libavdecoders |
grep -q PNG_DECODER
; then
7788 die
"The GUI requires libavcodec with PNG support (needs zlib)."
7790 test "$_freetype" = no
&& test "$_bitmap_font" = no
&& \
7791 die
"The GUI requires either FreeType or bitmap font support."
7794 test "$_x11" != yes && die
"X11 support required for GUI compilation."
7796 echocheck
"XShape extension"
7797 if test "$_xshape" = auto
; then
7800 #include <X11/Xlib.h>
7801 #include <X11/Xproto.h>
7802 #include <X11/Xutil.h>
7803 #include <X11/extensions/shape.h>
7806 char *name = ":0.0";
7809 int eventbase, errorbase;
7810 if (getenv("DISPLAY"))
7811 name=getenv("DISPLAY");
7812 wsDisplay=XOpenDisplay(name);
7813 if (!XShapeQueryExtension(wsDisplay,&eventbase,&errorbase))
7815 XCloseDisplay(wsDisplay);
7819 cc_check
-lXext && _xshape
=yes
7821 if test "$_xshape" = yes ; then
7822 def_xshape
='#define CONFIG_XSHAPE 1'
7824 die
"The GUI requires the X11 extension XShape (which was not found)."
7829 if test "$_gtk1" = no
; then
7831 echocheck
"GTK+ version"
7833 if $_pkg_config gtk
+-2.0
--exists ; then
7834 _gtk
=$
($_pkg_config gtk
+-2.0
--modversion 2>/dev
/null
)
7835 extra_cflags
="$extra_cflags $($_pkg_config gtk+-2.0 --cflags 2>/dev/null)"
7836 libs_mplayer
="$libs_mplayer $($_pkg_config gtk+-2.0 --libs 2>/dev/null)"
7840 if $_pkg_config glib-2.0
--exists ; then
7841 echocheck
"glib version"
7842 _glib
=$
($_pkg_config glib-2.0
--modversion 2>/dev
/null
)
7843 libs_mplayer
="$libs_mplayer $($_pkg_config glib-2.0 --libs 2>/dev/null)"
7846 def_gui
='#define CONFIG_GUI 1'
7847 def_gtk2
='#define CONFIG_GTK2 1'
7850 echo "GLIB-2 devel packages were not found, trying GTK 1.2"
7853 echo "GTK-2 devel packages were not found, trying GTK 1.2"
7858 if test "$_gtk1" = yes ; then
7859 # Check for old GTK (1.2.x)
7860 echocheck
"GTK version"
7861 if test -z "$_gtkconfig" ; then
7862 if ( gtk-config
--version ) >/dev
/null
2>&1 ; then
7863 _gtkconfig
="gtk-config"
7864 elif ( gtk12-config
--version ) >/dev
/null
2>&1 ; then
7865 _gtkconfig
="gtk12-config"
7867 die
"The GUI requires GTK devel packages (which were not found)."
7870 _gtk
=$
($_gtkconfig --version 2>&1)
7871 extra_cflags
="$extra_cflags $($_gtkconfig --cflags 2>&1)"
7872 libs_mplayer
="$libs_mplayer $($_gtkconfig --libs 2>&1)"
7873 echores
"$_gtk (using $_gtkconfig)"
7876 echocheck
"glib version"
7877 if test -z "$_glibconfig" ; then
7878 if ( glib-config
--version ) >/dev
/null
2>&1 ; then
7879 _glibconfig
="glib-config"
7880 elif ( glib12-config
--version ) >/dev
/null
2>&1 ; then
7881 _glibconfig
="glib12-config"
7883 die
"The GUI requires GLIB devel packages (which were not found)"
7886 _glib
=$
($_glibconfig --version 2>&1)
7887 libs_mplayer
="$libs_mplayer $($_glibconfig --libs 2>&1)"
7888 echores
"$_glib (using $_glibconfig)"
7890 def_gui
='#define CONFIG_GUI 1'
7891 def_gtk2
='#undef CONFIG_GTK2'
7896 libs_mplayer
="$libs_mplayer -lcomdlg32 -lcomctl32 -lshell32 -lkernel32"
7897 def_gui
='#define CONFIG_GUI 1'
7898 def_gtk2
='#undef CONFIG_GTK2'
7901 else #if test "$_gui"
7902 def_gui
='#undef CONFIG_GUI'
7903 def_gtk2
='#undef CONFIG_GTK2'
7905 # --------------- GUI specific tests end -------------------
7908 if test "$_charset" != "noconv" ; then
7909 def_charset
="#define MSG_CHARSET \"$_charset\""
7911 def_charset
="#undef MSG_CHARSET"
7915 if test -n "$_charset" && test "$_charset" != "UTF-8" ; then
7916 echocheck
"iconv program"
7917 iconv -f UTF-8
-t $_charset ${_mp_help} > /dev
/null
2>> "$TMPLOG"
7918 if test "$?" -ne 0 ; then
7920 echo "No working iconv program found, use "
7921 echo "--charset=UTF-8 to continue anyway."
7922 echo "If you also have problems with iconv library functions use --charset=noconv."
7923 echo "Messages in the GTK-2 interface will be broken then."
7930 #############################################################################
7932 echocheck
"automatic gdb attach"
7933 if test "$_crash_debug" = yes ; then
7934 def_crash_debug
='#define CONFIG_CRASH_DEBUG 1'
7936 def_crash_debug
='#undef CONFIG_CRASH_DEBUG'
7939 echores
"$_crash_debug"
7941 echocheck
"compiler support for noexecstack"
7943 int main(void) { return 0; }
7945 if cc_check
-Wl,-z,noexecstack
; then
7946 extra_ldflags
="-Wl,-z,noexecstack $extra_ldflags"
7953 # Dynamic linking flags
7954 # (FIXME: 'echocheck "dynamic linking"' above and modify here accordingly)
7956 freebsd || netbsd || openbsd || dragonfly || bsdos
&& _ld_dl_dynamic
='-rdynamic'
7957 if test "$_real" = yes ||
test "$_xanim" = yes && ! win32
&& ! qnx
&& ! darwin
&& ! os2
&& ! sunos
; then
7958 _ld_dl_dynamic
='-rdynamic'
7961 extra_ldflags
="$extra_ldflags $_ld_pthread $_ld_dl $_ld_dl_dynamic"
7962 bsdos
&& extra_ldflags
="$extra_ldflags -ldvd"
7963 (netbsd || openbsd
) && x86_32
&& extra_ldflags
="$extra_ldflags -li386"
7965 def_debug
='#undef MP_DEBUG'
7966 test "$_debug" != "" && def_debug
='#define MP_DEBUG 1'
7969 echocheck
"joystick"
7970 def_joystick
='#undef CONFIG_JOYSTICK'
7971 if test "$_joystick" = yes ; then
7973 # TODO add some check
7974 def_joystick
='#define CONFIG_JOYSTICK 1'
7977 _res_comment
="unsupported under $system_name"
7980 echores
"$_joystick"
7983 if test "$_lirc" = auto
; then
7986 #include <lirc/lirc_client.h>
7987 int main(void) { return 0; }
7989 cc_check
-llirc_client && _lirc
=yes
7991 if test "$_lirc" = yes ; then
7992 def_lirc
='#define CONFIG_LIRC 1'
7993 libs_mplayer
="$libs_mplayer -llirc_client"
7995 def_lirc
='#undef CONFIG_LIRC'
8000 if test "$_lircc" = auto
; then
8003 #include <lirc/lircc.h>
8004 int main(void) { return 0; }
8006 cc_check
-llircc && _lircc
=yes
8008 if test "$_lircc" = yes ; then
8009 def_lircc
='#define CONFIG_LIRCC 1'
8010 libs_mplayer
="$libs_mplayer -llircc"
8012 def_lircc
='#undef CONFIG_LIRCC'
8017 # Detect maemo development platform libraries availability (http://www.maemo.org),
8018 # they are used when run on Nokia 770|8x0
8019 echocheck
"maemo (Nokia 770|8x0)"
8020 if test "$_maemo" = auto
; then
8023 #include <libosso.h>
8024 int main(void) { (void) osso_initialize("", "", 0, NULL); return 0; }
8026 cc_check $
($_pkg_config --cflags --libs libosso
2>/dev
/null
) && _maemo
=yes
8028 if test "$_maemo" = yes ; then
8029 def_maemo
='#define CONFIG_MAEMO 1'
8030 extra_cflags
="$extra_cflags $($_pkg_config --cflags libosso)"
8031 extra_ldflags
="$extra_ldflags $($_pkg_config --libs libosso) -lXsp"
8033 def_maemo
='#undef CONFIG_MAEMO'
8038 #############################################################################
8040 # On OS/2 nm supports only a.out. So the -Zomf compiler option to generate
8041 # the OMF format needs to come after the 'extern symbol prefix' check, which
8044 extra_ldflags
="$extra_ldflags -Zomf -Zstack 16384 -Zbin-files -Zargs-wild"
8047 # linker paths should be the same for mencoder and mplayer
8049 for I
in $libs_mplayer ; do
8050 _tmp
=$
(echo $I |
sed -e 's/^-L.*$//')
8051 if test -z "$_tmp" ; then
8052 extra_ldflags
="$extra_ldflags $I"
8054 _ld_tmp
="$_ld_tmp $I"
8057 libs_mplayer
=$_ld_tmp
8060 #############################################################################
8061 # 64 bit file offsets?
8062 if test "$_largefiles" = yes || freebsd
; then
8063 CFLAGS
="$CFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
8064 if test "$_dvdread" = yes ||
test "$_libdvdcss_internal" = yes ; then
8065 # dvdread support requires this (for off64_t)
8066 CFLAGS
="$CFLAGS -D_LARGEFILE64_SOURCE"
8070 CXXFLAGS
=" $CFLAGS -D__STDC_LIMIT_MACROS"
8072 # This must be the last test to be performed. Any other tests following it
8073 # could fail due to linker errors. libdvdnavmini is intentionally not linked
8074 # against libdvdread (to permit MPlayer to use its own copy of the library).
8075 # So any compilation using the flags added here but not linking against
8076 # libdvdread can fail.
8077 echocheck
"DVD support (libdvdnav)"
8079 if test "$_dvdnav" = auto
; then
8080 if test "$_dvdread_internal" = yes ; then
8083 _res_comment
="internal"
8085 $_dvdnavconfig --version --minilibs >> $TMPLOG 2>&1 || _dvdnav
=no
8088 if test "$_dvdnav" = auto
; then
8090 #include <inttypes.h>
8091 #include <dvdnav/dvdnav.h>
8092 int main(void) { dvdnav_t *dvd=0; return 0; }
8095 _dvdnavdir
=$
($_dvdnavconfig --cflags)
8096 _dvdnavlibs
=$
($_dvdnavconfig --libs)
8097 cc_check
$_dvdnavdir $_dvdnavlibs $_ld_dl $_ld_pthread && _dvdnav
=yes
8099 if test "$_dvdnav" = yes ; then
8101 def_dvdnav
='#define CONFIG_DVDNAV 1'
8102 if test "$dvdnav_internal" = yes ; then
8103 cflags_libdvdnav
="-Ilibdvdnav"
8104 _inputmodules
="dvdnav(internal) $_inputmodules"
8106 extra_cflags
="$extra_cflags $($_dvdnavconfig --cflags)"
8107 extra_ldflags
="$extra_ldflags $($_dvdnavconfig --minilibs)"
8108 _inputmodules
="dvdnav $_inputmodules"
8111 def_dvdnav
='#undef CONFIG_DVDNAV'
8112 _noinputmodules
="dvdnav $_noinputmodules"
8116 # DO NOT ADD ANY TESTS THAT USE LINKER FLAGS HERE (like cc_check).
8117 # Read dvdnav comment above.
8119 #############################################################################
8120 echo "Creating config.mak"
8121 cat > config.mak
<< EOF
8122 # -------- Generated by configure -----------
8124 # Ensure that locale settings do not interfere with shell commands.
8127 CONFIGURATION = $_configuration
8130 DOC_LANGS = $language_doc
8131 DOC_LANG_ALL = $doc_lang_all
8132 MAN_LANGS = $language_man
8133 MAN_LANG_ALL = $man_lang_all
8135 prefix = \$(DESTDIR)$_prefix
8136 BINDIR = \$(DESTDIR)$_bindir
8137 DATADIR = \$(DESTDIR)$_datadir
8138 LIBDIR = \$(DESTDIR)$_libdir
8139 MANDIR = \$(DESTDIR)$_mandir
8140 CONFDIR = \$(DESTDIR)$_confdir
8149 INSTALLSTRIP = $_install_strip
8153 CFLAGS = $CFLAGS $extra_cflags
8154 OPTFLAGS = $CFLAGS $extra_cflags
8155 CXXFLAGS = $CXXFLAGS $extra_cflags $extra_cxxflags
8156 CFLAGS_DHAHELPER = $cflags_dhahelper
8157 CFLAGS_FAAD_FIXED = $cflags_faad_fixed
8158 CFLAGS_LIBDVDCSS = $cflags_libdvdcss
8159 CFLAGS_LIBDVDCSS_DVDREAD = $cflags_libdvdcss_dvdread
8160 CFLAGS_LIBDVDNAV = $cflags_libdvdnav
8161 CFLAGS_NO_OMIT_LEAF_FRAME_POINTER = $cflags_no_omit_leaf_frame_pointer
8162 CFLAGS_STACKREALIGN = $cflags_stackrealign
8163 CFLAGS_SVGALIB_HELPER = $cflags_svgalib_helper
8164 CFLAGS_TREMOR_LOW = $cflags_tremor_low
8165 YASMFLAGS = $YASMFLAGS
8167 EXTRALIBS = $extra_libs
8168 EXTRA_LIB = $extra_ldflags $_ld_static $_ld_lm
8169 EXTRALIBS_MPLAYER = $libs_mplayer
8170 EXTRALIBS_MENCODER = $libs_mencoder
8172 DEPEND_CMD = \$(CC) -MM \$(CFLAGS) \$(filter-out %.h,\$^) | sed "s,[0-9a-z._-]*: \(\$(SRC_DIR)/\)*\([a-z0-9]*/\)[^/]* ,\\2&,"
8174 MPDEPEND_CMD = \$(CC) -MM \$(CFLAGS) \$(filter-out %.xpm,\$(filter-out %.h,$^)) | sed -e "s,[0-9a-z._-]*: \([a-z0-9/]*/\)[^/]* ,\1&," -e "s,\(.*\)\.o: ,\1.d &,"
8175 MPDEPEND_CMD_CXX = \$(CC) -MM \$(CXXFLAGS) \$(filter-out %.hh,\$(filter-out %.h,$^)) | sed -e "s,[0-9a-z._-]*: \([a-z0-9/]*/\)[^/]* ,\1&," -e "s,\(.*\)\.o: ,\1.d &,"
8178 HELP_FILE = $_mp_help
8186 $(echo $_cpuexts | tr '[a-z] ' '[A-Z]\n' | sed 's/^/HAVE_/;s/$/=yes/')
8188 MENCODER = $_mencoder
8191 NEED_GETTIMEOFDAY = $_need_gettimeofday
8192 NEED_GLOB = $_need_glob
8193 NEED_MMAP = $_need_mmap
8194 NEED_SETENV = $_need_setenv
8195 NEED_SHMEM = $_need_shmem
8196 NEED_STRSEP = $_need_strsep
8197 NEED_SWAB = $_need_swab
8198 NEED_VSSCANF = $_need_vsscanf
8206 APPLE_IR = $_apple_ir
8207 APPLE_REMOTE = $_apple_remote
8209 AUDIO_INPUT = $_audio_input
8210 BITMAP_FONT = $_bitmap_font
8215 COREAUDIO = $_coreaudio
8216 COREVIDEO = $_corevideo
8220 DIRECT3D = $_direct3d
8221 DIRECTFB = $_directfb
8225 DVDNAV_INTERNAL = $dvdnav_internal
8227 DVDREAD_INTERNAL = $_dvdread_internal
8233 FAAD_INTERNAL = $_faad_internal
8234 FASTMEMCPY = $_fastmemcpy
8236 FREETYPE = $_freetype
8241 GL_WIN32 = $_gl_win32
8244 GUI_WIN32 = $_gui_win32
8245 HAVE_POSIX_SELECT = $_posix_select
8246 HAVE_SYS_MMAN_H = $_mman
8249 JOYSTICK = $_joystick
8254 LIBA52_INTERNAL = $_liba52_internal
8259 LIBDVDCSS_INTERNAL = $_libdvdcss_internal
8263 LIBMENU_DVBIN = $_menu_dvbin
8264 LIBMPEG2 = $_libmpeg2
8265 LIBNEMESI = $_nemesi
8267 LIBSMBCLIENT = $_smb
8268 LIBTHEORA = $_theora
8271 MACOSX_BUNDLE = $_macosx_bundle
8272 MACOSX_FINDER = $_macosx_finder
8278 MUSEPACK = $_musepack
8280 NATIVE_RTSP = $_native_rtsp
8284 PE_EXECUTABLE = $_pe_executable
8287 PRIORITY = $_priority
8291 QTX_CODECS_WIN32 = $_qtx_codecs_win32
8292 QTX_EMULATION = $_qtx_emulation
8295 RADIO_CAPTURE=$_radio_capture
8296 REAL_CODECS = $_real
8300 STREAM_CACHE = $_stream_cache
8301 SGIAUDIO = $_sgiaudio
8302 SUNAUDIO = $_sunaudio
8308 TREMOR_INTERNAL = $_tremor_internal
8310 TV_BSDBT848 = $_tv_bsdbt848
8311 TV_DSHOW = $_tv_dshow
8312 TV_TELETEXT = $_tv_teletext
8317 UNRAR_EXEC = $_unrar_exec
8323 VIDIX_PCIDB = $_vidix_pcidb_val
8324 VIDIX_CYBERBLADE=$_vidix_drv_cyberblade
8325 VIDIX_IVTV=$_vidix_drv_ivtv
8326 VIDIX_MACH64=$_vidix_drv_mach64
8327 VIDIX_MGA=$_vidix_drv_mga
8328 VIDIX_MGA_CRTC2=$_vidix_drv_mga_crtc2
8329 VIDIX_NVIDIA=$_vidix_drv_nvidia
8330 VIDIX_PM2=$_vidix_drv_pm2
8331 VIDIX_PM3=$_vidix_drv_pm3
8332 VIDIX_RADEON=$_vidix_drv_radeon
8333 VIDIX_RAGE128=$_vidix_drv_rage128
8334 VIDIX_S3=$_vidix_drv_s3
8335 VIDIX_SH_VEU=$_vidix_drv_sh_veu
8336 VIDIX_SIS=$_vidix_drv_sis
8337 VIDIX_UNICHROME=$_vidix_drv_unichrome
8341 WIN32DLL = $_win32dll
8342 WIN32WAVEOUT = $_win32waveout
8343 WIN32_EMULATION = $_win32_emulation
8344 WINVIDIX = $winvidix
8347 XANIM_CODECS = $_xanim
8349 XMMS_PLUGINS = $_xmms
8355 YUV4MPEG = $_yuv4mpeg
8359 LIBAVUTIL = $_libavutil
8360 LIBAVUTIL_A = $_libavutil_a
8361 LIBAVUTIL_SO = $_libavutil_so
8362 LIBAVCODEC = $_libavcodec
8363 LIBAVCODEC_A = $_libavcodec_a
8364 LIBAVCODEC_SO = $_libavcodec_so
8365 LIBAVFORMAT = $_libavformat
8366 LIBAVFORMAT_A = $_libavformat_a
8367 LIBAVFORMAT_SO = $_libavformat_so
8368 LIBPOSTPROC = $_libpostproc
8369 LIBPOSTPROC_A = $_libpostproc_a
8370 LIBPOSTPROC_SO = $_libpostproc_so
8371 LIBSWSCALE = $_libswscale
8372 LIBSWSCALE_A = $_libswscale_a
8373 LIBSWSCALE_SO = $_libswscale_so
8380 LIBNAME=\$(LIBPREF)\$(NAME)\$(LIBSUF)
8382 # Some FFmpeg codecs depend on these. Enable them unconditionally for now.
8385 CONFIG_FFT_MMX=$fft_mmx
8393 CONFIG_LIBAMR=$_libamr
8394 CONFIG_LIBAMR_NB=$_libamr_nb
8395 CONFIG_LIBAMR_WB=$_libamr_wb
8396 CONFIG_LIBDIRAC=$_libdirac_lavc
8397 CONFIG_LIBFAAC=$_faac_lavc
8398 CONFIG_LIBMP3LAME=$_mp3lame_lavc
8399 CONFIG_LIBSCHROEDINGER=$_libschroedinger_lavc
8400 CONFIG_LIBVORBIS=$_libvorbis
8401 CONFIG_LIBX264=$_x264_lavc
8402 CONFIG_LIBXVID=$_xvid_lavc
8403 CONFIG_MLIB = $_mlib
8404 CONFIG_MUXERS=$_mencoder
8405 CONFIG_POSTPROC = yes
8406 # Prevent building libavcodec/imgresample.c with conflicting symbols
8408 CONFIG_VDPAU=$_vdpau
8412 HAVE_PTHREADS = $_pthreads
8413 HAVE_W32THREADS = $_w32threads
8414 HAVE_YASM = $_have_yasm
8416 $(echo $_libavdecoders | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8417 $(echo $_libavencoders | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8418 $(echo $_libavparsers | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8419 $(echo $_libavdemuxers | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8420 $(echo $_libavmuxers | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8421 $(echo $_libavbsfs | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8424 #############################################################################
8426 ff_config_enable
() {
8428 test -z "$_nprefix" && _nprefix
='CONFIG'
8430 if $
(echo $2 |
grep -q -E "(^| )$part($| )"); then
8431 echo "#define ${_nprefix}_$part 1"
8433 echo "#define ${_nprefix}_$part 0"
8438 echo "Creating config.h"
8440 /*----------------------------------------------------------------------------
8441 ** This file has been automatically generated by configure any changes in it
8442 ** will be lost when you run configure again.
8443 ** Instead of modifying definitions here, use the --enable/--disable options
8444 ** of the configure script! See ./configure --help for details.
8445 *---------------------------------------------------------------------------*/
8447 #ifndef MPLAYER_CONFIG_H
8448 #define MPLAYER_CONFIG_H
8450 /* Undefine this if you do not want to select mono audio (left or right)
8451 with a stereo MPEG layer 2/3 audio stream. The command line option
8452 -stereo has three possible values (0 for stereo, 1 for left-only, 2 for
8453 right-only), with 0 being the default.
8455 #define CONFIG_FAKE_MONO 1
8457 /* set up max. outburst. use 65536 for ALSA 0.5, for others 16384 is enough */
8458 #define MAX_OUTBURST 65536
8460 /* set up audio OUTBURST. Do not change this! */
8461 #define OUTBURST 512
8463 /* Enable fast OSD/SUB renderer (looks ugly, but uses less CPU power) */
8465 #undef FAST_OSD_TABLE
8467 /* Define this to enable MPEG-1/2 image postprocessing in libmpeg2 */
8468 #define MPEG12_POSTPROC 1
8469 #define ATTRIBUTE_ALIGNED_MAX 16
8473 #define CONFIGURATION "$_configuration"
8475 #define MPLAYER_DATADIR "$_datadir"
8476 #define MPLAYER_CONFDIR "$_confdir"
8477 #define MPLAYER_LIBDIR "$_libdir"
8479 /* definitions needed by included libraries */
8480 #define HAVE_INTTYPES_H 1
8481 /* libmpeg2 + FFmpeg */
8484 #define HAVE_ERRNO_H 1
8485 /* libdvdcss + libdvdread */
8486 #define HAVE_LIMITS_H 1
8487 /* libdvdcss + libfaad2 */
8488 #define HAVE_UNISTD_H 1
8489 /* libfaad2 + libdvdread */
8490 #define STDC_HEADERS 1
8491 #define HAVE_MEMCPY 1
8493 #define HAVE_STRING_H 1
8494 #define HAVE_STRINGS_H 1
8495 #define HAVE_SYS_STAT_H 1
8496 #define HAVE_SYS_TYPES_H 1
8498 #define READ_CACHE_TRACE 0
8500 #define HAVE_DLFCN_H 1
8504 /* system headers */
8506 $def_alsa_asoundlib_h
8510 $def_mman_has_map_failed
8512 $def_sys_asoundlib_h
8513 $def_sys_soundcard_h
8520 /* system functions */
8547 /* system-specific features */
8560 $def_restrict_keyword
8565 /* configurable options */
8569 $def_dynamic_plugins
8572 $def_runtime_cpudetection
8580 #define __CPU__ $iproc
8582 $(ff_config_enable "$_arch_all" "$_arch" "ARCH")
8583 $(ff_config_enable "$_cpuexts_all" "$_cpuexts" "HAVE")
8587 #define DEFAULT_CDROM_DEVICE "$default_cdrom_device"
8588 #define DEFAULT_DVD_DEVICE "$default_dvd_device"
8608 /* codec libraries */
8613 $def_liba52_internal
8621 $def_mp3lame_preset_medium
8644 #define WIN32_PATH "$_win32codecsdir"
8648 #define XMMS_INPUT_PLUGIN_DIR "$_xmmsplugindir"
8657 /* Audio output drivers */
8672 $def_ossaudio_devdsp
8673 $def_ossaudio_devmixer
8686 $def_ioctl_bt848_h_name
8687 $def_ioctl_meteor_h_name
8741 $def_directfb_version
8776 $def_vidix_drv_cyberblade
8778 $def_vidix_drv_mach64
8780 $def_vidix_drv_mga_crtc2
8781 $def_vidix_drv_nvidia
8783 $def_vidix_drv_radeon
8784 $def_vidix_drv_rage128
8786 $def_vidix_drv_sh_veu
8788 $def_vidix_drv_unichrome
8822 #define CONFIG_DECODERS 1
8823 #define CONFIG_ENCODERS 1
8824 #define CONFIG_DEMUXERS 1
8834 $def_libavcodec_mpegaudio_hp
8845 #define CONFIG_FASTDIV 0
8846 #define CONFIG_FFSERVER 0
8847 #define CONFIG_GPL 1
8848 #define CONFIG_GRAY 0
8849 #define CONFIG_HARDCODED_TABLES 0
8850 #define CONFIG_LIBAMR_NB_FIXED 0
8851 #define CONFIG_LIBVORBIS 0
8852 #define CONFIG_POWERPC_PERF 0
8853 #define CONFIG_SMALL 0
8854 #define CONFIG_SWSCALE 1
8855 #define CONFIG_SWSCALE_ALPHA 1
8857 #define HAVE_GETHRTIME 0
8858 #define HAVE_INLINE_ASM 0
8859 #define HAVE_LDBRX 0
8860 #define HAVE_POLL_H 1
8861 #define HAVE_PPC4XX 0
8862 #define HAVE_VIRTUALALLOC 0
8864 /* Some FFmpeg codecs depend on these. Enable them unconditionally for now. */
8865 #define CONFIG_AANDCT 1
8866 #define CONFIG_FFT 1
8867 #define CONFIG_GOLOMB 1
8868 #define CONFIG_MDCT 1
8869 #define CONFIG_RDFT 1
8871 /* Use these registers in FFmpeg x86 inline asm. No proper detection yet. */
8872 #define HAVE_EBX_AVAILABLE 1
8874 #define HAVE_EBP_AVAILABLE 1
8876 #define HAVE_EBP_AVAILABLE 0
8879 /* External libraries used through libavcodec. */
8885 $def_libschroedinger_lavc
8890 $(ff_config_enable "$_libavdecoders_all" "$_libavdecoders")
8891 $(ff_config_enable "$_libavencoders_all" "$_libavencoders")
8892 $(ff_config_enable "$_libavparsers_all" "$_libavparsers")
8893 $(ff_config_enable "$_libavdemuxers_all" "$_libavdemuxers")
8894 $(ff_config_enable "$_libavmuxers_all" "$_libavmuxers")
8895 $(ff_config_enable "$_libavprotocols_all" "$_libavprotocols")
8896 $(ff_config_enable "$_libavbsfs_all" "$_libavbsfs")
8898 #define CONFIG_H263_VAAPI_HWACCEL 0
8899 #define CONFIG_MPEG2_VAAPI_HWACCEL 0
8900 #define CONFIG_MPEG4_VAAPI_HWACCEL 0
8901 #define CONFIG_H264_VAAPI_HWACCEL 0
8902 #define CONFIG_VC1_VAAPI_HWACCEL 0
8903 #define CONFIG_WMV3_VAAPI_HWACCEL 0
8905 #endif /* MPLAYER_CONFIG_H */
8908 # Do not overwrite an unchanged config.h to avoid superfluous rebuilds.
8909 cmp -s "$TMPH" config.h ||
mv -f "$TMPH" config.h
8911 #############################################################################
8915 Config files successfully generated by ./configure $_configuration !
8917 Install prefix: $_prefix
8918 Data directory: $_datadir
8919 Config direct.: $_confdir
8921 Byte order: $_byte_order
8922 Optimizing for: $_optimizing
8925 Messages/GUI: $language_msg
8926 Manual pages: $language_man
8927 Documentation: $language_doc
8929 Enabled optional drivers:
8930 Input: $_inputmodules
8931 Codecs: $_codecmodules
8932 Audio output: $_aomodules
8933 Video output: $_vomodules
8935 Disabled optional drivers:
8936 Input: $_noinputmodules
8937 Codecs: $_nocodecmodules
8938 Audio output: $_noaomodules
8939 Video output: $_novomodules
8941 'config.h' and 'config.mak' contain your configuration options.
8942 Note: If you alter theses files (for instance CFLAGS) MPlayer may no longer
8943 compile *** DO NOT REPORT BUGS if you tweak these files ***
8945 'make' will now compile MPlayer and 'make install' will install it.
8946 Note: On non-Linux systems you might need to use 'gmake' instead of 'make'.
8951 if test "$_mtrr" = yes ; then
8952 echo "Please check mtrr settings at /proc/mtrr (see DOCS/HTML/$doc_lang/video.html#mtrr)"
8958 NOTE: Win32 codec DLLs are not supported on your CPU ($host_arch) or your
8959 operating system ($system_name). You may encounter a few files that cannot
8960 be played due to missing open source video/audio codec support.
8967 Check $TMPLOG if you wonder why an autodetection failed (make sure
8968 development headers/packages are installed).
8970 NOTE: The --enable-* parameters unconditionally force options on, completely
8971 skipping autodetection. This behavior is unlike what you may be used to from
8972 autoconf-based configure scripts that can decide to override you. This greater
8973 level of control comes at a price. You may have to provide the correct compiler
8974 and linker flags yourself.
8975 If you used one of these options (except --enable-gui and similar ones that
8976 turn on internal features) and experience a compilation or linking failure,
8977 make sure you have passed the necessary compiler/linker flags to configure.
8979 If you suspect a bug, please read DOCS/HTML/$doc_lang/bugreports.html.
8983 if test "$_warn_CFLAGS" = yes; then
8986 MPlayer compilation will use the CPPFLAGS/CFLAGS/LDFLAGS/YASMFLAGS set by you,
8989 *** *** DO NOT REPORT BUGS IF IT DOES NOT COMPILE/WORK! *** ***
8991 It is strongly recommended to let MPlayer choose the correct CFLAGS!
8992 To do so, execute 'CFLAGS= ./configure <options>'
8998 rm -f "$TMPEXE" "$TMPC" "$TMPS" "$TMPCPP" "$TMPH"