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"
5773 # Modern Solaris versions use HAL instead of the vold daemon, the volfs
5774 # file system and the volfs service.
5775 test -r "/cdrom/cdrom0" && default_cdrom_device
="/cdrom/cdrom0"
5777 default_cdrom_device
="a1ide.device:2"
5779 default_cdrom_device
="/dev/cdrom"
5782 if win32 || os2 || dragonfly || freebsd || openbsd || sunos || amigaos
; then
5783 default_dvd_device
=$default_cdrom_device
5785 default_dvd_device
="/dev/rdiskN"
5787 default_dvd_device
="/dev/dvd"
5791 echocheck
"VCD support"
5792 if test "$_vcd" = auto
; then
5794 if linux || freebsd || netbsd || openbsd || dragonfly || bsdos || darwin || sunos
; then
5798 #include <ddk/ntddcdrm.h>
5799 int main(void) { return 0; }
5801 cc_check
&& _vcd
=yes
5804 if test "$_vcd" = yes; then
5805 _inputmodules
="vcd $_inputmodules"
5806 def_vcd
='#define CONFIG_VCD 1'
5808 def_vcd
='#undef CONFIG_VCD'
5809 _noinputmodules
="vcd $_noinputmodules"
5810 _res_comment
="not supported on this OS"
5817 if test "$_dvdread_internal" = auto
; then
5818 _dvdread_internal
=no
5820 if (linux || freebsd || netbsd || openbsd || dragonfly || sunos || hpux
) \
5821 && (test "$_dvd" = yes ||
test "$_cdrom" = yes ||
test "$_cdio" = yes || \
5822 test "$_dvdio" = yes ||
test "$_bsdi_dvd" = yes) \
5823 || darwin || win32 || os2
; then
5824 _dvdread_internal
=yes
5826 extra_cflags
="-Ilibdvdread4 $extra_cflags"
5828 elif test "$_dvdread" = auto
; then
5830 if test "$_dl" = yes; then
5832 #include <inttypes.h>
5833 #include <dvdread/dvd_reader.h>
5834 #include <dvdread/ifo_types.h>
5835 #include <dvdread/ifo_read.h>
5836 #include <dvdread/nav_read.h>
5837 int main(void) { return 0; }
5839 _dvdreadcflags
=$
($_dvdreadconfig --cflags)
5840 _dvdreadlibs
=$
($_dvdreadconfig --libs)
5841 if cc_check
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE \
5842 $_dvdreadcflags $_dvdreadlibs $_ld_dl ; then
5844 extra_cflags
="$extra_cflags $_dvdreadcflags"
5845 extra_ldflags
="$extra_ldflags $_dvdreadlibs"
5846 _res_comment
="external"
5851 if test "$_dvdread_internal" = yes; then
5852 def_dvdread
='#define CONFIG_DVDREAD 1'
5853 _inputmodules
="dvdread(internal) $_inputmodules"
5855 _res_comment
="internal"
5856 elif test "$_dvdread" = yes; then
5857 def_dvdread
='#define CONFIG_DVDREAD 1'
5859 extra_ldflags
="$extra_ldflags -ldvdread"
5860 _inputmodules
="dvdread(external) $_inputmodules"
5861 _res_comment
="external"
5863 def_dvdread
='#undef CONFIG_DVDREAD'
5864 _noinputmodules
="dvdread $_noinputmodules"
5869 echocheck
"internal libdvdcss"
5870 if test "$_libdvdcss_internal" = auto
; then
5871 _libdvdcss_internal
=no
5872 test "$_dvdread_internal" = yes && _libdvdcss_internal
=yes
5873 hpux
&& test "$_hpux_scsi_h" = no
&& _libdvdcss_internal
=no
5875 if test "$_libdvdcss_internal" = yes ; then
5876 if linux || netbsd || openbsd || bsdos
; then
5877 def_dvd_linux
='#define HAVE_LINUX_DVD_STRUCT 1'
5878 openbsd
&& def_dvd_openbsd
='#define HAVE_OPENBSD_DVD_STRUCT 1'
5879 elif freebsd || dragonfly
; then
5880 def_dvd_bsd
='#define HAVE_BSD_DVD_STRUCT 1'
5882 def_dvd_darwin
='#define DARWIN_DVD_IOCTL'
5883 extra_ldflags
="$extra_ldflags -framework IOKit -framework Carbon"
5885 cflags_libdvdcss
="-DSYS_CYGWIN -DWIN32"
5887 cflags_libdvdcss
="-DSYS_BEOS"
5889 cflags_libdvdcss
="-DSYS_OS2"
5891 cflags_libdvdcss_dvdread
="-Ilibdvdcss"
5892 def_dvdcss
="#define HAVE_DVDCSS_DVDCSS_H 1"
5893 _inputmodules
="libdvdcss(internal) $_inputmodules"
5896 _noinputmodules
="libdvdcss(internal) $_noinputmodules"
5898 echores
"$_libdvdcss_internal"
5901 echocheck
"cdparanoia"
5902 if test "$_cdparanoia" = auto
; then
5904 #include <cdda_interface.h>
5905 #include <cdda_paranoia.h>
5906 // This need a better test. How ?
5907 int main(void) { void *test = cdda_verbose_set; return test == (void *)1; }
5910 for _inc_tmp
in "" "-I/usr/include/cdda" "-I/usr/local/include/cdda" ; do
5911 cc_check
$_inc_tmp -lcdda_interface -lcdda_paranoia $_ld_lm && \
5912 _cdparanoia
=yes && extra_cflags
="$extra_cflags $_inc_tmp" && break
5915 if test "$_cdparanoia" = yes ; then
5917 extra_ldflags
="$extra_ldflags -lcdda_interface -lcdda_paranoia"
5918 openbsd
&& extra_ldflags
="$extra_ldflags -lutil"
5920 echores
"$_cdparanoia"
5924 if test "$_libcdio" = auto
&& test "$_cdparanoia" = no
; then
5927 #include <cdio/version.h>
5928 #include <cdio/cdda.h>
5929 #include <cdio/paranoia.h>
5931 void *test = cdda_verbose_set;
5932 printf("%s\n", CDIO_VERSION);
5933 return test == (void *)1;
5937 for _ld_tmp
in "" "-lwinmm" ; do
5938 _ld_tmp
="-lcdio_cdda -lcdio -lcdio_paranoia $_ld_tmp"
5939 cc_check
$_ld_tmp $_ld_lm \
5940 && _libcdio
=yes && extra_ldflags
="$extra_ldflags $_ld_tmp" && break
5942 if test "$_libcdio" = no
&& $_pkg_config --exists libcdio_paranoia
; then
5943 _inc_tmp
=$
($_pkg_config --cflags libcdio_paranoia
)
5944 _ld_tmp
=$
($_pkg_config --libs libcdio_paranoia
)
5945 cc_check
$_inc_tmp $_ld_tmp $_ld_lm && _libcdio
=yes \
5946 && extra_ldflags
="$extra_ldflags $_ld_tmp" && extra_cflags
="$extra_cflags $_inc_tmp"
5949 if test "$_libcdio" = yes && test "$_cdparanoia" = no
; then
5951 def_libcdio
='#define CONFIG_LIBCDIO'
5952 def_havelibcdio
='yes'
5954 if test "$_cdparanoia" = yes ; then
5955 _res_comment
="using cdparanoia"
5957 def_libcdio
='#undef CONFIG_LIBCDIO'
5958 def_havelibcdio
='no'
5962 if test "$_cdda" = yes ; then
5963 test $_cddb = auto
&& test $_network = yes && _cddb
=yes
5964 def_cdparanoia
='#define CONFIG_CDDA'
5965 _inputmodules
="cdda $_inputmodules"
5967 def_cdparanoia
='#undef CONFIG_CDDA'
5968 _noinputmodules
="cdda $_noinputmodules"
5971 if test "$_cddb" = yes ; then
5972 def_cddb
='#define CONFIG_CDDB'
5973 _inputmodules
="cddb $_inputmodules"
5976 def_cddb
='#undef CONFIG_CDDB'
5977 _noinputmodules
="cddb $_noinputmodules"
5980 echocheck
"bitmap font support"
5981 if test "$_bitmap_font" = yes ; then
5982 def_bitmap_font
="#define CONFIG_BITMAP_FONT 1"
5984 def_bitmap_font
="#undef CONFIG_BITMAP_FONT"
5986 echores
"$_bitmap_font"
5989 echocheck
"freetype >= 2.0.9"
5991 # freetype depends on iconv
5992 if test "$_iconv" = no
; then
5994 _res_comment
="iconv support needed"
5997 if test "$_freetype" = auto
; then
5998 if ( $_freetypeconfig --version ) >/dev
/null
2>&1 ; then
6001 #include <ft2build.h>
6002 #include FT_FREETYPE_H
6003 #if ((FREETYPE_MAJOR < 2) || ((FREETYPE_MINOR == 0) && (FREETYPE_PATCH < 9)))
6004 #error "Need FreeType 2.0.9 or newer"
6008 FT_Int major=-1,minor=-1,patch=-1;
6009 int err=FT_Init_FreeType(&library);
6011 printf("Couldn't initialize freetype2 lib, err code: %d\n",err);
6014 FT_Library_Version(library,&major,&minor,&patch); // in v2.1.0+ only :(((
6015 printf("freetype2 header version: %d.%d.%d library version: %d.%d.%d\n",
6016 FREETYPE_MAJOR,FREETYPE_MINOR,FREETYPE_PATCH,
6017 (int)major,(int)minor,(int)patch );
6018 if (major!=FREETYPE_MAJOR || minor!=FREETYPE_MINOR) {
6019 printf("Library and header version mismatch! Fix it in your distribution!\n");
6026 cc_check $
($_freetypeconfig --cflags) $
($_freetypeconfig --libs) && tmp_run
&& _freetype
=yes
6031 if test "$_freetype" = yes ; then
6032 def_freetype
='#define CONFIG_FREETYPE'
6033 extra_cflags
="$extra_cflags $($_freetypeconfig --cflags)"
6034 extra_ldflags
="$extra_ldflags $($_freetypeconfig --libs)"
6036 def_freetype
='#undef CONFIG_FREETYPE'
6038 echores
"$_freetype"
6040 if test "$_freetype" = no
; then
6042 _res_comment
="FreeType support needed"
6044 echocheck
"fontconfig"
6045 if test "$_fontconfig" = auto
; then
6049 #include <fontconfig/fontconfig.h>
6052 if (err == FcFalse) {
6053 printf("Couldn't initialize fontconfig lib\n");
6060 for _ld_tmp
in "" "-lexpat -lfreetype" "-lexpat -lfreetype -lz" ; do
6061 _ld_tmp
="-lfontconfig $_ld_tmp"
6062 cc_check
$_ld_tmp && _fontconfig
=yes && extra_ldflags
="$extra_ldflags $_ld_tmp" && break
6064 if test "$_fontconfig" = no
&& $_pkg_config --exists fontconfig
; then
6065 _inc_tmp
=$
($_pkg_config --cflags fontconfig
)
6066 _ld_tmp
=$
($_pkg_config --libs fontconfig
)
6067 cc_check
$_inc_tmp $_ld_tmp && _fontconfig
=yes \
6068 && extra_ldflags
="$extra_ldflags $_ld_tmp" && extra_cflags
="$extra_cflags $_inc_tmp"
6071 if test "$_fontconfig" = yes ; then
6072 def_fontconfig
='#define CONFIG_FONTCONFIG'
6074 def_fontconfig
='#undef CONFIG_FONTCONFIG'
6076 echores
"$_fontconfig"
6079 echocheck
"SSA/ASS support"
6080 # libass depends on FreeType
6081 if test "$_freetype" = no
; then
6083 _res_comment
="FreeType support needed"
6086 if test "$_ass" = auto
; then
6088 #include <ft2build.h>
6089 #include FT_FREETYPE_H
6090 #if ((FREETYPE_MAJOR < 2) || (FREETYPE_MINOR < 1) || ((FREETYPE_MINOR == 1) && (FREETYPE_PATCH < 8)))
6091 #error "Need FreeType 2.1.8 or newer"
6093 int main(void) { return 0; }
6096 cc_check $
($_freetypeconfig --cflags) $
($_freetypeconfig --libs) && tmp_run
&& _ass
=yes
6097 if test "$_ass" = no
; then
6098 _res_comment
="FreeType >= 2.1.8 needed"
6101 if test "$_ass" = yes ; then
6102 def_ass
='#define CONFIG_ASS'
6104 def_ass
='#undef CONFIG_ASS'
6109 echocheck
"fribidi with charsets"
6110 if test "$_fribidi" = auto
; then
6111 if ( $_fribidiconfig --version ) >/dev
/null
2>&1 ; then
6114 /* workaround for fribidi 0.10.4 and below */
6115 #define FRIBIDI_CHARSET_UTF8 FRIBIDI_CHAR_SET_UTF8
6116 #include <fribidi/fribidi.h>
6118 if (fribidi_parse_charset("UTF-8") != FRIBIDI_CHAR_SET_UTF8) {
6119 printf("Fribidi headers are not consistents with the library!\n");
6126 cc_check $
($_fribidiconfig --cflags) $
($_fribidiconfig --libs) && tmp_run
&& _fribidi
=yes
6131 if test "$_fribidi" = yes ; then
6132 def_fribidi
='#define CONFIG_FRIBIDI'
6133 extra_cflags
="$extra_cflags $($_fribidiconfig --cflags)"
6134 extra_ldflags
="$extra_ldflags $($_fribidiconfig --libs)"
6136 def_fribidi
='#undef CONFIG_FRIBIDI'
6142 if test "$_enca" = auto
; then
6144 #include <sys/types.h>
6149 langs = enca_get_languages(&langcnt);
6154 cc_check
-lenca $_ld_lm && _enca
=yes
6156 if test "$_enca" = yes ; then
6157 def_enca
='#define CONFIG_ENCA 1'
6158 extra_ldflags
="$extra_ldflags -lenca"
6160 def_enca
='#undef CONFIG_ENCA'
6168 int main(void) { (void) inflate(0, Z_NO_FLUSH); return 0; }
6171 cc_check
-lz && _zlib
=yes
6172 if test "$_zlib" = yes ; then
6173 def_zlib
='#define CONFIG_ZLIB 1'
6174 extra_ldflags
="$extra_ldflags -lz"
6176 def_zlib
='#define CONFIG_ZLIB 0'
6177 _libavdecoders
=$
(echo $_libavdecoders |
sed -e s
/FLASHSV_DECODER
// -e s
/PNG_DECODER
// -e s
/ZMBV_DECODER
// -e s
/DXA_DECODER
// -e s
/TSCC_DECODER
//)
6178 _libavencoders
=$
(echo $_libavencoders |
sed -e s
/FLASHSV_ENCODER
// -e s
/PNG_ENCODER
// -e s
/ZMBV_ENCODER
//)
6185 def_bzlib
='#define CONFIG_BZLIB 0'
6188 int main(void) { BZ2_bzlibVersion(); return 0; }
6190 cc_check
-lbz2 && bzlib
=yes
6191 if test "$bzlib" = yes ; then
6192 def_bzlib
='#define CONFIG_BZLIB 1'
6193 extra_ldflags
="$extra_ldflags -lbz2"
6199 if test "$_rtc" = auto
; then
6201 #include <sys/ioctl.h>
6203 #include <linux/rtc.h>
6206 #define RTC_PIE_ON RTCIO_PIE_ON
6208 int main(void) { return RTC_PIE_ON; }
6211 cc_check
&& _rtc
=yes
6214 if test "$_rtc" = yes ; then
6215 def_rtc
='#define HAVE_RTC 1'
6217 def_rtc
='#undef HAVE_RTC'
6222 echocheck
"liblzo2 support"
6223 if test "$_liblzo" = auto
; then
6226 #include <lzo/lzo1x.h>
6227 int main(void) { lzo_init();return 0; }
6229 cc_check
-llzo2 && _liblzo
=yes
6231 if test "$_liblzo" = yes ; then
6232 def_liblzo
='#define CONFIG_LIBLZO 1'
6233 extra_ldflags
="$extra_ldflags -llzo2"
6234 _codecmodules
="liblzo $_codecmodules"
6236 def_liblzo
='#undef CONFIG_LIBLZO'
6237 _nocodecmodules
="liblzo $_nocodecmodules"
6242 echocheck
"mad support"
6243 if test "$_mad" = auto
; then
6247 int main(void) { return 0; }
6249 cc_check
-lmad && _mad
=yes
6251 if test "$_mad" = yes ; then
6252 def_mad
='#define CONFIG_LIBMAD 1'
6253 extra_ldflags
="$extra_ldflags -lmad"
6254 _codecmodules
="libmad $_codecmodules"
6256 def_mad
='#undef CONFIG_LIBMAD'
6257 _nocodecmodules
="libmad $_nocodecmodules"
6262 if test "$_twolame" = auto
; then
6264 #include <twolame.h>
6265 int main(void) { twolame_init(); return 0; }
6268 cc_check
-ltwolame $_ld_lm && _twolame
=yes
6270 if test "$_twolame" = yes ; then
6271 def_twolame
='#define CONFIG_TWOLAME 1'
6272 libs_mencoder
="$libs_mencoder -ltwolame"
6273 _codecmodules
="twolame $_codecmodules"
6275 def_twolame
='#undef CONFIG_TWOLAME'
6276 _nocodecmodules
="twolame $_nocodecmodules"
6281 if test "$_toolame" = auto
; then
6283 if test "$_twolame" = yes ; then
6284 _res_comment
="disabled by twolame"
6287 #include <toolame.h>
6288 int main(void) { toolame_init(); return 0; }
6290 cc_check
-ltoolame $_ld_lm && _toolame
=yes
6293 if test "$_toolame" = yes ; then
6294 def_toolame
='#define CONFIG_TOOLAME 1'
6295 libs_mencoder
="$libs_mencoder -ltoolame"
6296 _codecmodules
="toolame $_codecmodules"
6298 def_toolame
='#undef CONFIG_TOOLAME'
6299 _nocodecmodules
="toolame $_nocodecmodules"
6301 if test "$_toolamedir" ; then
6302 _res_comment
="using $_toolamedir"
6306 echocheck
"OggVorbis support"
6307 if test "$_tremor_internal" = yes; then
6309 elif test "$_tremor" = auto
; then
6312 #include <tremor/ivorbiscodec.h>
6313 int main(void) { vorbis_packet_blocksize(0,0); return 0; }
6315 cc_check
-logg -lvorbisidec $_ld_lm && _tremor
=yes && _libvorbis
=no
6317 if test "$_libvorbis" = auto
; then
6320 #include <vorbis/codec.h>
6321 int main(void) { vorbis_packet_blocksize(0,0); return 0; }
6323 cc_check
-lvorbis -logg $_ld_lm && _libvorbis
=yes
6325 if test "$_tremor_internal" = yes ; then
6327 def_vorbis
='#define CONFIG_OGGVORBIS 1'
6328 def_tremor
='#define CONFIG_TREMOR 1'
6329 _codecmodules
="tremor(internal) $_codecmodules"
6330 _res_comment
="internal Tremor"
6331 if test "$_tremor_low" = yes ; then
6332 cflags_tremor_low
="-D_LOW_ACCURACY_"
6333 _res_comment
="internal low accuracy Tremor"
6335 elif test "$_tremor" = yes ; then
6337 def_vorbis
='#define CONFIG_OGGVORBIS 1'
6338 def_tremor
='#define CONFIG_TREMOR 1'
6339 _codecmodules
="tremor(external) $_codecmodules"
6340 _res_comment
="external Tremor"
6341 extra_ldflags
="$extra_ldflags -logg -lvorbisidec"
6342 elif test "$_libvorbis" = yes ; then
6344 def_vorbis
='#define CONFIG_OGGVORBIS 1'
6345 _codecmodules
="libvorbis $_codecmodules"
6346 _res_comment
="libvorbis"
6347 extra_ldflags
="$extra_ldflags -lvorbis -logg"
6350 _nocodecmodules
="libvorbis $_nocodecmodules"
6354 echocheck
"libspeex (version >= 1.1 required)"
6355 if test "$_speex" = auto
; then
6358 #include <speex/speex.h>
6359 int main(void) { SpeexBits bits; void *dec; speex_decode_int(dec, &bits, dec); return 0; }
6361 cc_check
-lspeex $_ld_lm && _speex
=yes
6363 if test "$_speex" = yes ; then
6364 def_speex
='#define CONFIG_SPEEX 1'
6365 extra_ldflags
="$extra_ldflags -lspeex"
6366 _codecmodules
="speex $_codecmodules"
6368 def_speex
='#undef CONFIG_SPEEX'
6369 _nocodecmodules
="speex $_nocodecmodules"
6373 echocheck
"OggTheora support"
6374 if test "$_theora" = auto
; then
6377 #include <theora/theora.h>
6380 /* Theora is in flux, make sure that all interface routines and datatypes
6381 * exist and work the way we expect it, so we don't break MPlayer. */
6390 theora_info_init(&inf);
6391 theora_comment_init(&tc);
6395 /* we don't want to execute this kind of nonsense; just for making sure
6396 * that compilation works... */
6397 memset(&op, 0, sizeof(op));
6398 r = theora_decode_header(&inf, &tc, &op);
6399 r = theora_decode_init(&st, &inf);
6400 t = theora_granule_time(&st, op.granulepos);
6401 r = theora_decode_packetin(&st, &op);
6402 r = theora_decode_YUVout(&st, &yuv);
6408 _ld_theora
=$
($_pkg_config --silence-errors --libs theora
)
6409 _inc_theora
=$
($_pkg_config --silence-errors --cflags theora
)
6410 cc_check
$_inc_theora $_ld_theora && extra_ldflags
="$extra_ldflags $_ld_theora" &&
6411 extra_cflags
="$extra_cflags $_inc_theora" && _theora
=yes
6412 if test _theora
= no
; then
6413 _ld_theora
="-ltheora -logg"
6414 cc_check
$_ld_theora && extra_ldflags
="$extra_ldflags $_ld_theora" && _theora
=yes
6416 if test "$_theora" = no
&& test "$_tremor_internal" = yes; then
6417 _ld_theora
=$
($_pkg_config --silence-errors --libs theora
)
6418 _inc_theora
=$
($_pkg_config --silence-errors --cflags theora
)
6419 cc_check tremor
/bitwise.c
$_inc_theora $_ld_theora &&
6420 extra_ldflags
="$extra_ldflags $_ld_theora" &&
6421 extra_cflags
="$extra_cflags $_inc_theora" && _theora
=yes
6422 if test _theora
= no
; then
6423 _ld_theora
="-ltheora -logg"
6424 cc_check tremor
/bitwise.c
$_ld_theora &&
6425 extra_ldflags
="$extra_ldflags $_ld_theora" && _theora
=yes
6429 if test "$_theora" = yes ; then
6430 def_theora
='#define CONFIG_OGGTHEORA 1'
6431 _codecmodules
="libtheora $_codecmodules"
6432 # when --enable-theora is forced, we'd better provide a probably sane
6433 # $_ld_theora than nothing
6434 test -z "$_ld_theora" && extra_ldflags
="$extra_ldflags -ltheora -logg"
6436 def_theora
='#undef CONFIG_OGGTHEORA'
6437 _nocodecmodules
="libtheora $_nocodecmodules"
6441 echocheck
"internal mp3lib support"
6442 if test "$_mp3lib" = auto
; then
6443 test "$cc_vendor" = intel
&& _mp3lib
=no || _mp3lib
=yes
6445 if test "$_mp3lib" = yes ; then
6446 def_mp3lib
='#define CONFIG_MP3LIB 1'
6447 _codecmodules
="mp3lib(internal) $_codecmodules"
6449 def_mp3lib
='#undef CONFIG_MP3LIB'
6450 _nocodecmodules
="mp3lib(internal) $_nocodecmodules"
6454 echocheck
"liba52 support"
6455 if test "$_liba52_internal" = auto
; then
6456 test "$cc_vendor" = intel
&& _liba52_internal
=no || _liba52_internal
=yes
6458 def_liba52
='#undef CONFIG_LIBA52'
6459 def_liba52_internal
="#undef CONFIG_LIBA52_INTERNAL"
6460 if test "$_liba52_internal" = yes ; then
6462 def_liba52_internal
="#define CONFIG_LIBA52_INTERNAL 1"
6463 _res_comment
="internal"
6464 elif test "$_liba52_internal" = no
&& test "$_liba52" = auto
; then
6467 #include <inttypes.h>
6468 #include <a52dec/a52.h>
6469 int main(void) { a52_state_t *testHand; testHand=a52_init(0); return 0; }
6471 cc_check
-la52 && _liba52
=yes && _res_comment
="external" && extra_ldflags
="$extra_ldflags -la52"
6473 if test "$_liba52" = yes ; then
6474 def_liba52
='#define CONFIG_LIBA52 1'
6475 _codecmodules
="liba52($_res_comment) $_codecmodules"
6477 _nocodecmodules
="liba52 $_nocodecmodules"
6481 echocheck
"internal libmpeg2 support"
6482 if test "$_libmpeg2" = auto
; then
6484 if alpha
&& test cc_vendor
=gnu
; then
6486 2*|
3.0*|
3.1*) # cannot compile MVI instructions
6488 _res_comment
="broken gcc"
6493 if test "$_libmpeg2" = yes ; then
6494 def_libmpeg2
='#define CONFIG_LIBMPEG2 1'
6495 _codecmodules
="libmpeg2(internal) $_codecmodules"
6497 def_libmpeg2
='#undef CONFIG_LIBMPEG2'
6498 _nocodecmodules
="libmpeg2(internal) $_nocodecmodules"
6500 echores
"$_libmpeg2"
6502 echocheck
"libdca support"
6503 if test "$_libdca" = auto
; then
6506 #include <inttypes.h>
6508 int main(void) { dts_init(0); return 0; }
6510 for _ld_dca
in -ldts -ldca ; do
6511 cc_check
$_ld_dca $_ld_lm && extra_ldflags
="$extra_ldflags $_ld_dca" \
6512 && _libdca
=yes && break
6515 if test "$_libdca" = yes ; then
6516 def_libdca
='#define CONFIG_LIBDCA 1'
6517 _codecmodules
="libdca $_codecmodules"
6519 def_libdca
='#undef CONFIG_LIBDCA'
6520 _nocodecmodules
="libdca $_nocodecmodules"
6524 echocheck
"libmpcdec (musepack, version >= 1.2.1 required)"
6525 if test "$_musepack" = auto
; then
6529 #include <mpcdec/mpcdec.h>
6531 mpc_streaminfo info;
6532 mpc_decoder decoder;
6533 mpc_decoder_set_streaminfo(&decoder, &info);
6534 mpc_decoder_decode_frame(&decoder, NULL, 0, NULL);
6538 cc_check
-lmpcdec $_ld_lm && _musepack
=yes
6540 if test "$_musepack" = yes ; then
6541 def_musepack
='#define CONFIG_MUSEPACK 1'
6542 extra_ldflags
="$extra_ldflags -lmpcdec"
6543 _codecmodules
="musepack $_codecmodules"
6545 def_musepack
='#undef CONFIG_MUSEPACK'
6546 _nocodecmodules
="musepack $_nocodecmodules"
6548 echores
"$_musepack"
6551 echocheck
"FAAC support"
6552 if test "$_faac" = auto
; then
6554 #include <inttypes.h>
6556 int main(void) { unsigned long x, y; faacEncOpen(48000, 2, &x, &y); return 0; }
6559 for _ld_faac
in "-lfaac" "-lfaac -lmp4v2 -lstdc++" ; do
6560 cc_check
-O4 $_ld_faac $_ld_lm && libs_mencoder
="$libs_mencoder $_ld_faac" && _faac
=yes && break
6563 if test "$_faac" = yes ; then
6564 def_faac
="#define CONFIG_FAAC 1"
6565 test "$_faac_lavc" = auto
&& _faac_lavc
=yes
6566 if test "$_faac_lavc" = yes ; then
6567 def_faac_lavc
="#define CONFIG_LIBFAAC 1"
6568 libs_mplayer
="$libs_mplayer $_ld_faac"
6569 _libavencoders
="$_libavencoders LIBFAAC_ENCODER"
6571 _codecmodules
="faac $_codecmodules"
6574 def_faac
="#undef CONFIG_FAAC"
6575 def_faac_lavc
="#define CONFIG_LIBFAAC 0"
6576 _nocodecmodules
="faac $_nocodecmodules"
6578 _res_comment
="in libavcodec: $_faac_lavc"
6582 echocheck
"FAAD2 support"
6583 if test "$_faad_internal" = auto
; then
6584 if x86_32
&& test cc_vendor
=gnu
; then
6586 3.1*|
3.2) # ICE/insn with these versions
6588 _res_comment
="broken gcc"
6600 if test "$_faad" = auto
; then
6603 #ifndef FAAD_MIN_STREAMSIZE
6604 #error Too old version
6606 int main(void) { faacDecHandle testhand; faacDecFrameInfo testinfo;
6607 testhand = faacDecOpen(); faacDecInit(0, 0, 0, 0, 0); return 0; }
6609 cc_check
-lfaad $_ld_lm && _faad
=yes
6612 def_faad
='#undef CONFIG_FAAD'
6613 def_faad_internal
="#undef CONFIG_FAAD_INTERNAL"
6614 if test "$_faad_internal" = yes ; then
6615 def_faad_internal
="#define CONFIG_FAAD_INTERNAL 1"
6616 _res_comment
="internal floating-point"
6617 if test "$_faad_fixed" = yes ; then
6618 # The FIXED_POINT implementation of FAAD2 improves performance
6619 # on some platforms, especially for SBR files.
6620 cflags_faad_fixed
="-DFIXED_POINT"
6621 _res_comment
="internal fixed-point"
6623 elif test "$_faad" = yes ; then
6624 extra_ldflags
="$extra_ldflags -lfaad"
6627 if test "$_faad" = yes ; then
6628 def_faad
='#define CONFIG_FAAD 1'
6629 if test "$_faad_internal" = yes ; then
6630 _codecmodules
="faad2(internal) $_codecmodules"
6632 _codecmodules
="faad2 $_codecmodules"
6636 _nocodecmodules
="faad2 $_nocodecmodules"
6641 echocheck
"LADSPA plugin support"
6642 if test "$_ladspa" = auto
; then
6647 const LADSPA_Descriptor *ld = NULL;
6652 cc_check
&& _ladspa
=yes
6654 if test "$_ladspa" = yes; then
6655 def_ladspa
="#define CONFIG_LADSPA"
6657 def_ladspa
="#undef CONFIG_LADSPA"
6662 echocheck
"libbs2b audio filter support"
6663 if test "$_libbs2b" = auto
; then
6666 #if BS2B_VERSION_MAJOR < 3
6667 #error Please use libbs2b >= 3.0.0, older versions are not supported.
6677 if $_pkg_config --exists libbs2b
; then
6678 _inc_tmp
=$
($_pkg_config --cflags libbs2b
)
6679 _ld_tmp
=$
($_pkg_config --libs libbs2b
)
6680 cc_check
$_inc_tmp $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" &&
6681 extra_cflags
="$extra_cflags $_inc_tmp" && _libbs2b
=yes
6683 for _inc_tmp
in "" -I/usr
/include
/bs2b
-I/usr
/local
/include \
6684 -I/usr
/local
/include
/bs2b
; do
6685 if cc_check
$_inc_tmp $_ld_lm -lbs2b ; then
6686 extra_ldflags
="$extra_ldflags -lbs2b"
6687 extra_cflags
="$extra_cflags $_inc_tmp"
6694 def_libbs2b
="#undef CONFIG_LIBBS2B"
6695 test "$_libbs2b" = yes && def_libbs2b
="#define CONFIG_LIBBS2B"
6699 if test -z "$_codecsdir" ; then
6700 for dir
in "$_libdir/codecs" "$_libdir/win32" /usr
/local
/lib
/codecs \
6701 /usr
/lib
/codecs
/usr
/local
/lib
/win32
/usr
/lib
/win32
; do
6702 if test -d "$dir" ; then
6708 # Fall back on default directory.
6709 if test -z "$_codecsdir" ; then
6710 _codecsdir
="$_libdir/codecs"
6711 mingw32
&& _codecsdir
="codecs"
6712 os2
&& _codecsdir
="codecs"
6716 echocheck
"Win32 codecs"
6717 if test "$_win32dll" = auto
; then
6719 if x86_32
&& ! qnx
; then
6723 if test "$_win32dll" = yes ; then
6724 def_win32dll
='#define CONFIG_WIN32DLL 1'
6725 test -z "$_win32codecsdir" && _win32codecsdir
=$_codecsdir
6726 _res_comment
="using $_win32codecsdir"
6728 def_win32_loader
='#define WIN32_LOADER 1'
6729 _win32_emulation
=yes
6731 extra_ldflags
="$extra_ldflags -ladvapi32 -lole32"
6732 _res_comment
="using native windows"
6734 _codecmodules
="win32 $_codecmodules"
6736 def_win32dll
='#undef CONFIG_WIN32DLL'
6737 def_win32_loader
='#undef WIN32_LOADER'
6738 _nocodecmodules
="win32 $_nocodecmodules"
6740 echores
"$_win32dll"
6743 echocheck
"XAnim codecs"
6744 if test "$_xanim" = auto
; then
6746 _res_comment
="dynamic loader support needed"
6747 if test "$_dl" = yes ; then
6751 if test "$_xanim" = yes ; then
6752 test -z "$_xanimcodecsdir" && _xanimcodecsdir
=$_codecsdir
6753 def_xanim
='#define CONFIG_XANIM 1'
6754 def_xanim_path
="#define XACODEC_PATH \"$_xanimcodecsdir\""
6755 _codecmodules
="xanim $_codecmodules"
6756 _res_comment
="using $_xanimcodecsdir"
6758 def_xanim
='#undef CONFIG_XANIM'
6759 def_xanim_path
='#undef XACODEC_PATH'
6760 _nocodecmodules
="xanim $_nocodecmodules"
6765 echocheck
"RealPlayer codecs"
6766 if test "$_real" = auto
; then
6768 _res_comment
="dynamic loader support needed"
6769 if test "$_dl" = yes ||
test "$_win32dll" = yes &&
6770 (linux || freebsd || netbsd || openbsd || dragonfly || darwin || win32
) ; then
6774 if test "$_real" = yes ; then
6775 test -z "$_realcodecsdir" && _realcodecsdir
="$_codecsdir"
6776 def_real
='#define CONFIG_REALCODECS 1'
6777 def_real_path
="#define REALCODEC_PATH \"$_realcodecsdir\""
6778 _codecmodules
="real $_codecmodules"
6779 _res_comment
="using $_realcodecsdir"
6781 def_real
='#undef CONFIG_REALCODECS'
6782 def_real_path
="#undef REALCODEC_PATH"
6783 _nocodecmodules
="real $_nocodecmodules"
6788 echocheck
"QuickTime codecs"
6790 def_qtx_win32
='#undef CONFIG_QTX_CODECS_WIN32'
6791 def_quicktime
='#undef CONFIG_QUICKTIME'
6792 if test "$_qtx" = auto
; then
6793 test "$_win32dll" = yes || darwin
&& _qtx
=yes
6795 if test "$_qtx" = yes ; then
6796 darwin
&& extra_ldflags
="$extra_ldflags -framework QuickTime" && def_quicktime
='#define CONFIG_QUICKTIME 1'
6797 def_qtx
='#define CONFIG_QTX_CODECS 1'
6798 win32
&& _qtx_codecs_win32
=yes && def_qtx_win32
='#define CONFIG_QTX_CODECS_WIN32 1'
6799 _codecmodules
="qtx $_codecmodules"
6800 darwin || win32 || _qtx_emulation
=yes
6802 def_qtx
='#undef CONFIG_QTX_CODECS'
6803 _nocodecmodules
="qtx $_nocodecmodules"
6807 echocheck
"Nemesi Streaming Media libraries"
6808 if test "$_nemesi" = auto
&& test "$_network" = yes ; then
6810 if $_pkg_config libnemesi
--atleast-version=0.6.3 ; then
6811 extra_cflags
="$extra_cflags $($_pkg_config --cflags libnemesi)"
6812 extra_ldflags
="$extra_ldflags $($_pkg_config --libs libnemesi)"
6816 if test "$_nemesi" = yes; then
6818 def_nemesi
='#define CONFIG_LIBNEMESI 1'
6819 _inputmodules
="nemesi $_inputmodules"
6821 _native_rtsp
="$_network"
6823 def_nemesi
='#undef CONFIG_LIBNEMESI'
6824 _noinputmodules
="nemesi $_noinputmodules"
6828 echocheck
"LIVE555 Streaming Media libraries"
6829 if test "$_live" = auto
&& test "$_network" = yes ; then
6830 cat > $TMPCPP << EOF
6831 #include <liveMedia.hh>
6832 #if (LIVEMEDIA_LIBRARY_VERSION_INT < 1141257600)
6833 #error Please upgrade to version 2006.03.03 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
6835 int main(void) { return 0; }
6839 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
6840 cxx_check
$I/liveMedia
/include
$I/UsageEnvironment
/include \
6841 $I/groupsock
/include
&& _livelibdir
=$
(echo $I|
sed s
/-I//) && \
6842 extra_ldflags
="$_livelibdir/liveMedia/libliveMedia.a \
6843 $_livelibdir/groupsock/libgroupsock.a \
6844 $_livelibdir/UsageEnvironment/libUsageEnvironment.a \
6845 $_livelibdir/BasicUsageEnvironment/libBasicUsageEnvironment.a \
6846 $extra_ldflags -lstdc++" \
6847 extra_cxxflags
="-I$_livelibdir/liveMedia/include \
6848 -I$_livelibdir/UsageEnvironment/include \
6849 -I$_livelibdir/BasicUsageEnvironment/include \
6850 -I$_livelibdir/groupsock/include" && \
6853 if test "$_live" != yes ; then
6854 if cxx_check
-I/usr
/include
/liveMedia
-I/usr
/include
/UsageEnvironment
-I/usr
/include
/groupsock
; then
6859 if test "$_live" = yes && test "$_network" = yes; then
6860 test $_livelibdir && _res_comment
="using $_livelibdir"
6861 def_live
='#define CONFIG_LIVE555 1'
6862 _inputmodules
="live555 $_inputmodules"
6863 elif test "$_live_dist" = yes && test "$_network" = yes; then
6864 _res_comment
="using distribution version"
6866 def_live
='#define CONFIG_LIVE555 1'
6867 extra_ldflags
="$extra_ldflags -lliveMedia -lgroupsock -lUsageEnvironment -lBasicUsageEnvironment -lstdc++"
6868 extra_cxxflags
="-I/usr/include/liveMedia -I/usr/include/UsageEnvironment \
6869 -I/usr/include/BasicUsageEnvironment -I/usr/include/groupsock"
6870 _inputmodules
="live555 $_inputmodules"
6873 def_live
='#undef CONFIG_LIVE555'
6874 _noinputmodules
="live555 $_noinputmodules"
6879 echocheck
"FFmpeg libavutil"
6880 if test "$_libavutil_a" = auto
; then
6881 if test -d libavutil
; then
6883 _res_comment
="static"
6885 die
"MPlayer will not compile without libavutil in the source tree."
6887 elif test "$_libavutil_so" = auto
; then
6890 #include <libavutil/common.h>
6891 int main(void) { av_gcd(1,1); return 0; }
6893 if $_pkg_config --exists libavutil
; then
6894 _inc_libavutil
=$
($_pkg_config --cflags libavutil
)
6895 _ld_tmp
=$
($_pkg_config --libs libavutil
)
6896 cc_check
$_inc_libavutil $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" \
6897 && _libavutil_so
=yes
6898 elif cc_check
-lavutil $_ld_lm ; then
6899 extra_ldflags
="$extra_ldflags -lavutil"
6901 _res_comment
="using libavutil.so, but static libavutil is recommended"
6905 def_libavutil
='#undef CONFIG_LIBAVUTIL'
6906 def_libavutil_a
='#undef CONFIG_LIBAVUTIL_A'
6907 def_libavutil_so
='#undef CONFIG_LIBAVUTIL_SO'
6908 test "$_libavutil_a" = yes ||
test "$_libavutil_so" = yes && _libavutil
=yes
6909 test "$_libavutil" = yes && def_libavutil
='#define CONFIG_LIBAVUTIL 1'
6910 test "$_libavutil_a" = yes && def_libavutil_a
='#define CONFIG_LIBAVUTIL_A 1'
6911 test "$_libavutil_so" = yes && def_libavutil_so
='#define CONFIG_LIBAVUTIL_SO 1'
6912 # neither static nor shared libavutil is available, but it is mandatory ...
6913 if test "$_libavutil" = no
; then
6914 die
"You need static or shared libavutil, MPlayer will not compile without!"
6916 echores
"$_libavutil"
6918 echocheck
"FFmpeg libavcodec"
6919 if test "$_libavcodec_a" = auto
; then
6921 if test -d libavcodec
&& test -f libavcodec
/utils.c
; then
6923 _res_comment
="static"
6925 elif test "$_libavcodec_so" = auto
; then
6927 _res_comment
="libavcodec.so is discouraged over static libavcodec"
6929 #include <libavcodec/avcodec.h>
6930 int main(void) { avcodec_find_encoder_by_name(""); return 0; }
6932 if $_pkg_config --exists libavcodec
; then
6933 _inc_libavcodec
=$
($_pkg_config --cflags libavcodec
)
6934 _ld_tmp
=$
($_pkg_config --libs libavcodec
)
6935 cc_check
$_inc_libavcodec $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" \
6936 && _libavcodec_so
=yes
6937 elif cc_check
-lavcodec $_ld_lm ; then
6938 extra_ldflags
="$extra_ldflags -lavcodec"
6940 _res_comment
="using libavcodec.so, but static libavcodec is recommended"
6944 def_libavcodec
='#undef CONFIG_LIBAVCODEC'
6945 def_libavcodec_a
='#undef CONFIG_LIBAVCODEC_A'
6946 def_libavcodec_so
='#undef CONFIG_LIBAVCODEC_SO'
6947 test "$_libavcodec_a" = yes ||
test "$_libavcodec_so" = yes && _libavcodec
=yes
6948 test "$_libavcodec" = yes && def_libavcodec
='#define CONFIG_LIBAVCODEC 1'
6949 test "$_libavcodec_a" = yes && def_libavcodec_a
='#define CONFIG_LIBAVCODEC_A 1'
6950 test "$_libavcodec_so" = yes && def_libavcodec_so
='#define CONFIG_LIBAVCODEC_SO 1'
6951 test "$_libavcodec_mpegaudio_hp" = yes \
6952 && def_libavcodec_mpegaudio_hp
='#define CONFIG_MPEGAUDIO_HP 1'
6953 if test "$_libavcodec_a" = yes ; then
6954 _codecmodules
="libavcodec(internal) $_codecmodules"
6955 elif test "$_libavcodec_so" = yes ; then
6956 _codecmodules
="libavcodec.so $_codecmodules"
6958 _nocodecmodules
="libavcodec $_nocodecmodules"
6960 echores
"$_libavcodec"
6962 echocheck
"FFmpeg libavformat"
6963 if test "$_libavformat_a" = auto
; then
6965 if test -d libavformat
&& test -f libavformat
/utils.c
; then
6967 _res_comment
="static"
6969 elif test "$_libavformat_so" = auto
; then
6972 #include <libavformat/avformat.h>
6973 #include <libavcodec/opt.h>
6974 int main(void) { av_alloc_format_context(); return 0; }
6976 if $_pkg_config --exists libavformat
; then
6977 _inc_libavformat
=$
($_pkg_config --cflags libavformat
)
6978 _ld_tmp
=$
($_pkg_config --libs libavformat
)
6979 cc_check
$_inc_libavformat $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" \
6980 && _libavformat_so
=yes
6981 elif cc_check
$_ld_lm -lavformat ; then
6982 extra_ldflags
="$extra_ldflags -lavformat"
6984 _res_comment
="using libavformat.so, but static libavformat is recommended"
6988 def_libavformat
='#undef CONFIG_LIBAVFORMAT'
6989 def_libavformat_a
='#undef CONFIG_LIBAVFORMAT_A'
6990 def_libavformat_so
='#undef CONFIG_LIBAVFORMAT_SO'
6991 test "$_libavformat_a" = yes ||
test "$_libavformat_so" = yes && _libavformat
=yes
6992 test "$_libavformat" = yes && def_libavformat
='#define CONFIG_LIBAVFORMAT 1'
6993 test "$_libavformat_a" = yes && def_libavformat_a
='#define CONFIG_LIBAVFORMAT_A 1'
6994 test "$_libavformat_so" = yes \
6995 && def_libavformat_so
='#define CONFIG_LIBAVFORMAT_SO 1'
6996 echores
"$_libavformat"
6998 echocheck
"FFmpeg libpostproc"
6999 if test "$_libpostproc_a" = auto
; then
7001 if test -d libpostproc
&& test -f libpostproc
/postprocess.h
; then
7002 _libpostproc_a
='yes'
7003 _res_comment
="static"
7005 elif test "$_libpostproc_so" = auto
; then
7008 #include <inttypes.h>
7009 #include <libpostproc/postprocess.h>
7010 int main(void) { pp_get_mode_by_name_and_quality("de", 0); return 0; }
7012 if cc_check
-lpostproc $_ld_lm ; then
7013 extra_ldflags
="$extra_ldflags -lpostproc"
7015 _res_comment
="using libpostproc.so, but static libpostproc is recommended"
7019 def_libpostproc
='#undef CONFIG_LIBPOSTPROC'
7020 def_libpostproc_a
='#undef CONFIG_LIBPOSTPROC_A'
7021 def_libpostproc_so
='#undef CONFIG_LIBPOSTPROC_SO'
7022 test "$_libpostproc_a" = yes ||
test "$_libpostproc_so" = yes && _libpostproc
=yes
7023 test "$_libpostproc" = yes && def_libpostproc
='#define CONFIG_LIBPOSTPROC 1'
7024 test "$_libpostproc_a" = yes && def_libpostproc_a
='#define CONFIG_LIBPOSTPROC_A 1'
7025 test "$_libpostproc_so" = yes \
7026 && def_libpostproc_so
='#define CONFIG_LIBPOSTPROC_SO 1'
7027 echores
"$_libpostproc"
7029 echocheck
"FFmpeg libswscale"
7030 if test "$_libswscale_a" = auto
; then
7032 if test -d libswscale
&& test -f libswscale
/swscale.h
; then
7034 _res_comment
="static"
7036 elif test "$_libswscale_so" = auto
; then
7038 _res_comment
="using libswscale.so, but static libswscale is recommended"
7040 #include <libswscale/swscale.h>
7041 int main(void) { sws_scale(0, 0, 0, 0, 0, 0, 0); return 0; }
7043 if $_pkg_config --exists libswscale
; then
7044 _inc_libswscale
=$
($_pkg_config --cflags libswscale
)
7045 _ld_tmp
=$
($_pkg_config --libs libswscale
)
7046 cc_check
$_inc_libswscale $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" \
7047 && _libswscale_so
=yes
7048 elif cc_check
-lswscale ; then
7049 extra_ldflags
="$extra_ldflags -lswscale"
7054 def_libswscale
='#undef CONFIG_LIBSWSCALE'
7055 def_libswscale_a
='#undef CONFIG_LIBSWSCALE_A'
7056 def_libswscale_so
='#undef CONFIG_LIBSWSCALE_SO'
7057 test "$_libswscale_a" = yes ||
test "$_libswscale_so" = yes && _libswscale
=yes
7058 test "$_libswscale" = yes && def_libswscale
='#define CONFIG_LIBSWSCALE 1'
7059 test "$_libswscale_a" = yes && def_libswscale_a
='#define CONFIG_LIBSWSCALE_A 1'
7060 test "$_libswscale_so" = yes \
7061 && def_libswscale_so
='#define CONFIG_LIBSWSCALE_SO 1'
7062 echores
"$_libswscale"
7064 echocheck
"libamr narrowband"
7065 if test "$_libamr_nb" = auto
; then
7068 #include <amrnb/sp_dec.h>
7069 int main(void) { Speech_Decode_Frame_init(); return 0; }
7071 cc_check
-lamrnb && _libamr_nb
=yes
7072 if test "$_libavcodec_a" != yes ; then
7074 _res_comment
="libavcodec (static) is required by libamr_nb, sorry"
7077 if test "$_libamr_nb" = yes ; then
7079 extra_ldflags
="$extra_ldflags -lamrnb"
7080 def_libamr
='#define CONFIG_LIBAMR 1'
7081 def_libamr_nb
='#define CONFIG_LIBAMR_NB 1'
7082 _libavdecoders
="$_libavdecoders LIBAMR_NB_DECODER"
7083 _libavencoders
="$_libavencoders LIBAMR_NB_ENCODER"
7084 _codecmodules
="libamr_nb $_codecmodules"
7086 def_libamr_nb
='#define CONFIG_LIBAMR_NB 0'
7087 _nocodecmodules
="libamr_nb $_nocodecmodules"
7089 echores
"$_libamr_nb"
7092 echocheck
"libamr wideband"
7093 if test "$_libamr_wb" = auto
; then
7096 #include <amrwb/dec_if.h>
7097 int main(void) { D_IF_init(); return 0; }
7099 cc_check
-lamrwb && _libamr_wb
=yes
7100 if test "$_libavcodec_a" != yes ; then
7102 _res_comment
="libavcodec (static) is required by libamr_wb, sorry"
7105 if test "$_libamr_wb" = yes ; then
7107 extra_ldflags
="$extra_ldflags -lamrwb"
7108 def_libamr
='#define CONFIG_LIBAMR 1'
7109 def_libamr_wb
='#define CONFIG_LIBAMR_WB 1'
7110 _libavdecoders
="$_libavdecoders LIBAMR_WB_DECODER"
7111 _libavencoders
="$_libavencoders LIBAMR_WB_ENCODER"
7112 _codecmodules
="libamr_wb $_codecmodules"
7114 def_libamr_wb
='#define CONFIG_LIBAMR_WB 0'
7115 _nocodecmodules
="libamr_wb $_nocodecmodules"
7117 echores
"$_libamr_wb"
7119 echocheck
"libdv-0.9.5+"
7120 if test "$_libdv" = auto
; then
7123 #include <libdv/dv.h>
7124 int main(void) { dv_encoder_t* enc=dv_encoder_new(1,1,1); return 0; }
7126 cc_check
-ldv $_ld_pthread $_ld_lm && _libdv
=yes
7128 if test "$_libdv" = yes ; then
7129 def_libdv
='#define CONFIG_LIBDV095 1'
7130 extra_ldflags
="$extra_ldflags -ldv"
7131 _codecmodules
="libdv $_codecmodules"
7133 def_libdv
='#undef CONFIG_LIBDV095'
7134 _nocodecmodules
="libdv $_nocodecmodules"
7140 if test "$_xvid" = auto
; then
7144 int main(void) { xvid_global(0, 0, 0, 0); return 0; }
7146 for _ld_tmp
in "-lxvidcore $_ld_lm" "-lxvidcore $_ld_lm $_ld_pthread" ; do
7147 cc_check
$_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && _xvid
=yes && break
7151 if test "$_xvid" = yes ; then
7152 def_xvid
='#define CONFIG_XVID4 1'
7153 _codecmodules
="xvid $_codecmodules"
7155 def_xvid
='#undef CONFIG_XVID4'
7156 _nocodecmodules
="xvid $_nocodecmodules"
7160 echocheck
"Xvid two pass plugin"
7161 if test "$_xvid" = yes && test "$_xvid_lavc" = auto
; then
7164 int main(void) { xvid_plugin_2pass2_t s; s.vbv_size=0; return 0; }
7166 cc_check
&& _xvid_lavc
=yes
7168 if test "$_xvid_lavc" = yes ; then
7169 def_xvid_lavc
='#define CONFIG_LIBXVID 1'
7170 _libavencoders
="$_libavencoders LIBXVID_ENCODER"
7173 def_xvid_lavc
='#define CONFIG_LIBXVID 0'
7175 echores
"$_xvid_lavc"
7179 if test "$_x264" = auto
; then
7181 #include <inttypes.h>
7184 #error We do not support old versions of x264. Get the latest from SVN.
7186 int main(void) { x264_encoder_open((void*)0); return 0; }
7189 for _ld_x264
in "-lx264 $_ld_pthread" "-lx264 $_ld_pthread $_ld_lm" ; do
7190 cc_check
$_ld_x264 && libs_mencoder
="$libs_mencoder $_ld_x264" && _x264
=yes && break
7194 if test "$_x264" = yes ; then
7195 def_x264
='#define CONFIG_X264 1'
7196 _codecmodules
="x264 $_codecmodules"
7197 test "$_x264_lavc" = auto
&& _x264_lavc
=yes
7198 if test "$_x264_lavc" = yes ; then
7199 def_x264_lavc
='#define CONFIG_LIBX264 1'
7200 libs_mplayer
="$libs_mplayer $_ld_x264"
7201 _libavencoders
="$_libavencoders LIBX264_ENCODER"
7205 def_x264
='#undef CONFIG_X264'
7206 def_x264_lavc
='#define CONFIG_LIBX264 0'
7207 _nocodecmodules
="x264 $_nocodecmodules"
7209 _res_comment
="in libavcodec: $_x264_lavc"
7213 echocheck
"libdirac"
7214 if test "$_libdirac_lavc" = auto
; then
7216 if test "$_libavcodec_a" != yes; then
7217 _res_comment
="libavcodec (static) is required by libdirac, sorry"
7220 #include <libdirac_encoder/dirac_encoder.h>
7221 #include <libdirac_decoder/dirac_parser.h>
7224 dirac_encoder_context_t enc_ctx;
7225 dirac_decoder_t *dec_handle;
7226 dirac_encoder_context_init(&enc_ctx, VIDEO_FORMAT_SD_576I50);
7227 dec_handle = dirac_decoder_init(0);
7229 dirac_decoder_close(dec_handle);
7233 if $_pkg_config --exists dirac
; then
7234 _inc_dirac
=$
($_pkg_config --silence-errors --cflags dirac
)
7235 _ld_dirac
=$
($_pkg_config --silence-errors --libs dirac
)
7236 cc_check
$_inc_dirac $_ld_dirac &&
7237 _libdirac_lavc
=yes &&
7238 extra_cflags
="$extra_cflags $_inc_dirac" &&
7239 extra_ldflags
="$extra_ldflags $_ld_dirac"
7243 if test "$_libdirac_lavc" = yes ; then
7244 def_libdirac_lavc
='#define CONFIG_LIBDIRAC 1'
7245 _libavencoders
="$_libavencoders LIBDIRAC_ENCODER"
7246 _libavdecoders
="$_libavdecoders LIBDIRAC_DECODER"
7247 _codecmodules
="libdirac $_codecmodules"
7249 def_libdirac_lavc
='#define CONFIG_LIBDIRAC 0'
7250 _nocodecmodules
="libdirac $_nocodecmodules"
7252 echores
"$_libdirac_lavc"
7255 echocheck
"libschroedinger"
7256 if test "$_libschroedinger_lavc" = auto
; then
7257 _libschroedinger_lavc
=no
7258 if test "$_libavcodec_a" != yes; then
7259 _res_comment
="libavcodec (static) is required by libschroedinger, sorry"
7262 #include <schroedinger/schro.h>
7263 int main(void) { schro_init(); return 0; }
7265 if $_pkg_config --exists schroedinger-1.0
; then
7266 _inc_schroedinger
=$
($_pkg_config --silence-errors --cflags schroedinger-1.0
)
7267 _ld_schroedinger
=$
($_pkg_config --silence-errors --libs schroedinger-1.0
)
7268 cc_check
$_inc_schroedinger $_ld_schroedinger &&
7269 _libschroedinger_lavc
=yes &&
7270 extra_cflags
="$extra_cflags $_inc_schroedinger" &&
7271 extra_ldflags
="$extra_ldflags $_ld_schroedinger"
7275 if test "$_libschroedinger_lavc" = yes ; then
7276 def_libschroedinger_lavc
='#define CONFIG_LIBSCHROEDINGER 1'
7277 _libavencoders
="$_libavencoders LIBSCHROEDINGER_ENCODER"
7278 _libavdecoders
="$_libavdecoders LIBSCHROEDINGER_DECODER"
7279 _codecmodules
="libschroedinger $_codecmodules"
7281 def_libschroedinger_lavc
='#define CONFIG_LIBSCHROEDINGER 0'
7282 _nocodecmodules
="libschroedinger $_nocodecmodules"
7284 echores
"$_libschroedinger_lavc"
7287 if test "$_libnut" = auto
; then
7291 #include <inttypes.h>
7293 nut_context_tt * nut;
7294 int main(void) { (void)nut_error(0); return 0; }
7297 cc_check
-lnut && _libnut
=yes
7300 if test "$_libnut" = yes ; then
7301 def_libnut
='#define CONFIG_LIBNUT 1'
7302 extra_ldflags
="$extra_ldflags -lnut"
7304 def_libnut
='#undef CONFIG_LIBNUT'
7308 #check must be done after libavcodec one
7310 if test "$_zr" = auto
; then
7311 #36067's seem to identify themselves as 36057PQC's, so the line
7312 #below should work for 36067's and 36057's.
7313 if grep -q -s -e "Multimedia video controller: Zoran Corporation ZR36057" /proc
/pci
; then
7319 if test "$_zr" = yes ; then
7320 if test "$_libavcodec_a" = yes ; then
7321 def_zr
='#define CONFIG_ZR 1'
7322 _vomodules
="zr zr2 $_vomodules"
7324 _res_comment
="libavcodec (static) is required by zr, sorry"
7325 _novomodules
="zr $_novomodules"
7326 def_zr
='#undef CONFIG_ZR'
7329 def_zr
='#undef CONFIG_ZR'
7330 _novomodules
="zr zr2 $_novomodules"
7334 # mencoder requires (optional) those libs: libmp3lame
7335 if test "$_mencoder" != no
; then
7337 echocheck
"libmp3lame"
7338 def_mp3lame_preset
='#undef CONFIG_MP3LAME_PRESET'
7339 def_mp3lame_preset_medium
='#undef CONFIG_MP3LAME_PRESET_MEDIUM'
7340 if test "$_mp3lame" = auto
; then
7343 #include <lame/lame.h>
7344 int main(void) { lame_version_t lv; (void) lame_init();
7345 get_lame_version_numerical(&lv); printf("%d%d\n",lv.major,lv.minor);
7348 cc_check
-lmp3lame $_ld_lm && tmp_run
&& _mp3lame
=yes
7350 if test "$_mp3lame" = yes ; then
7351 def_mp3lame
="#define CONFIG_MP3LAME"
7352 _ld_mp3lame
=-lmp3lame
7353 libs_mencoder
="$libs_mencoder $_ld_mp3lame"
7355 #include <lame/lame.h>
7356 int main(void) { lame_set_preset(NULL, STANDARD_FAST); return 0; }
7358 cc_check
$_ld_mp3lame $_ld_lm && def_mp3lame_preset
="#define CONFIG_MP3LAME_PRESET"
7360 #include <lame/lame.h>
7361 int main(void) { lame_set_preset(NULL, MEDIUM_FAST); return 0; }
7363 cc_check
$_ld_mp3lame $_ld_lm && def_mp3lame_preset_medium
="#define CONFIG_MP3LAME_PRESET_MEDIUM"
7364 test "$_mp3lame_lavc" = auto
&& _mp3lame_lavc
=yes
7365 if test "$_mp3lame_lavc" = yes ; then
7366 def_mp3lame_lavc
="#define CONFIG_LIBMP3LAME 1"
7367 _libavencoders
="$_libavencoders LIBMP3LAME_ENCODER"
7368 libs_mplayer
="$libs_mplayer $_ld_mp3lame"
7372 def_mp3lame
='#undef CONFIG_MP3LAME'
7373 def_mp3lame_lavc
="#define CONFIG_LIBMP3LAME 0"
7375 _res_comment
="in libavcodec: $_mp3lame_lavc"
7378 fi # test "$_mencoder" != no
7380 echocheck
"mencoder"
7381 if test "$_mencoder" = yes ; then
7382 def_muxers
='#define CONFIG_MUXERS 1'
7384 # mpeg1video for vf_lavc, snow for vf_uspp and vf_mcdeint, png for vf_screenshot
7385 _libavencoders
="MPEG1VIDEO_ENCODER SNOW_ENCODER"
7386 test "$_zlib" = yes && _libavencoders
="$_libavencoders PNG_ENCODER"
7388 def_muxers
='#define CONFIG_MUXERS 0'
7390 echores
"$_mencoder"
7393 echocheck
"UnRAR executable"
7394 if test "$_unrar_exec" = auto
; then
7396 mingw32
&& _unrar_exec
="no"
7398 if test "$_unrar_exec" = yes ; then
7399 def_unrar_exec
='#define CONFIG_UNRAR_EXEC 1'
7401 def_unrar_exec
='#undef CONFIG_UNRAR_EXEC'
7403 echores
"$_unrar_exec"
7405 echocheck
"TV interface"
7406 if test "$_tv" = yes ; then
7407 def_tv
='#define CONFIG_TV 1'
7408 _inputmodules
="tv $_inputmodules"
7410 _noinputmodules
="tv $_noinputmodules"
7411 def_tv
='#undef CONFIG_TV'
7416 if freebsd || netbsd || openbsd || dragonfly || bsdos
; then
7417 echocheck
"*BSD BT848 bt8xx header"
7419 for file in "machine/ioctl_bt848.h" \
7420 "dev/bktr/ioctl_bt848.h" \
7421 "dev/video/bktr/ioctl_bt848.h" \
7422 "dev/ic/bt8xx.h" ; do
7424 #include <sys/types.h>
7425 #include <sys/ioctl.h>
7427 int main(void) { ioctl(0, TVTUNER_GETFREQ, 0); return 0; }
7431 _ioctl_bt848_h_name
="$file"
7435 if test "$_ioctl_bt848_h" = yes ; then
7436 def_ioctl_bt848_h_name
="#define IOCTL_BT848_H_NAME <$_ioctl_bt848_h_name>"
7437 _res_comment
="using $_ioctl_bt848_h_name"
7439 def_ioctl_bt848_h_name
="#undef IOCTL_BT848_H_NAME"
7441 echores
"$_ioctl_bt848_h"
7443 echocheck
"*BSD ioctl_meteor.h"
7445 for file in "machine/ioctl_meteor.h" \
7446 "dev/bktr/ioctl_meteor.h" \
7447 "dev/video/bktr/ioctl_meteor.h" ; do
7449 #include <sys/types.h>
7451 int main(void) { ioctl(0, METEORSINPUT, 0); return 0; }
7455 _ioctl_meteor_h_name
="$file"
7459 if test "$_ioctl_meteor_h" = yes ; then
7460 def_ioctl_meteor_h_name
="#define IOCTL_METEOR_H_NAME <$_ioctl_meteor_h_name>"
7461 _res_comment
="using $_ioctl_meteor_h_name"
7463 def_ioctl_meteor_h_name
="#undef IOCTL_METEOR_H_NAME"
7465 echores
"$_ioctl_meteor_h"
7467 echocheck
"*BSD BrookTree 848 TV interface"
7468 if test "$_tv_bsdbt848" = auto
; then
7470 if test "$_tv" = yes ; then
7472 #include <sys/types.h>
7473 $def_ioctl_meteor_h_name
7474 $def_ioctl_bt848_h_name
7475 #ifdef IOCTL_METEOR_H_NAME
7476 #include IOCTL_METEOR_H_NAME
7478 #ifdef IOCTL_BT848_H_NAME
7479 #include IOCTL_BT848_H_NAME
7482 ioctl(0, METEORSINPUT, 0);
7483 ioctl(0, TVTUNER_GETFREQ, 0);
7487 cc_check
&& _tv_bsdbt848
=yes
7490 if test "$_tv_bsdbt848" = yes ; then
7491 def_tv_bsdbt848
='#define CONFIG_TV_BSDBT848 1'
7492 _inputmodules
="tv-bsdbt848 $_inputmodules"
7494 def_tv_bsdbt848
='#undef CONFIG_TV_BSDBT848'
7495 _noinputmodules
="tv-bsdbt848 $_noinputmodules"
7497 echores
"$_tv_bsdbt848"
7498 fi #if freebsd || netbsd || openbsd || dragonfly || bsdos
7501 echocheck
"DirectShow TV interface"
7502 if test "$_tv_dshow" = auto
; then
7504 if test "$_tv" = yes && win32
; then
7509 CoCreateInstance((GUID*)&GUID_NULL, NULL, CLSCTX_INPROC_SERVER, &GUID_NULL, &p);
7513 cc_check
-lole32 -luuid && _tv_dshow
=yes
7516 if test "$_tv_dshow" = yes ; then
7517 _inputmodules
="tv-dshow $_inputmodules"
7518 def_tv_dshow
='#define CONFIG_TV_DSHOW 1'
7519 extra_ldflags
="$extra_ldflags -lole32 -luuid"
7521 _noinputmodules
="tv-dshow $_noinputmodules"
7522 def_tv_dshow
='#undef CONFIG_TV_DSHOW'
7524 echores
"$_tv_dshow"
7527 echocheck
"Video 4 Linux TV interface"
7528 if test "$_tv_v4l1" = auto
; then
7530 if test "$_tv" = yes && linux
; then
7533 #include <linux/videodev.h>
7534 int main(void) { return 0; }
7536 cc_check
&& _tv_v4l1
=yes
7539 if test "$_tv_v4l1" = yes ; then
7542 def_tv_v4l
='#define CONFIG_TV_V4L 1'
7543 def_tv_v4l1
='#define CONFIG_TV_V4L1 1'
7544 _inputmodules
="tv-v4l $_inputmodules"
7546 _noinputmodules
="tv-v4l1 $_noinputmodules"
7547 def_tv_v4l
='#undef CONFIG_TV_V4L'
7552 echocheck
"Video 4 Linux 2 TV interface"
7553 if test "$_tv_v4l2" = auto
; then
7555 if test "$_tv" = yes && linux
; then
7558 #include <linux/types.h>
7559 #include <linux/videodev2.h>
7560 int main(void) { return 0; }
7562 cc_check
&& _tv_v4l2
=yes
7565 if test "$_tv_v4l2" = yes ; then
7568 def_tv_v4l
='#define CONFIG_TV_V4L 1'
7569 def_tv_v4l2
='#define CONFIG_TV_V4L2 1'
7570 _inputmodules
="tv-v4l2 $_inputmodules"
7572 _noinputmodules
="tv-v4l2 $_noinputmodules"
7573 def_tv_v4l2
='#undef CONFIG_TV_V4L2'
7578 echocheck
"TV teletext interface"
7579 if test "$_tv_teletext" = auto
; then
7581 if test "$_freetype" = yes && test "$_pthreads" = yes; then
7582 if test "$_tv_v4l2" = yes ||
test "$_v4l" = yes ||
test "$_tv_dshow" = yes; then
7587 if test "$_tv_teletext" = yes ; then
7588 def_tv_teletext
='#define CONFIG_TV_TELETEXT 1'
7589 _inputmodules
="tv-teletext $_inputmodules"
7591 _noinputmodules
="tv-teletext $_noinputmodules"
7592 def_tv_teletext
='#undef CONFIG_TV_TELETEXT'
7594 echores
"$_tv_teletext"
7597 echocheck
"Radio interface"
7598 if test "$_radio" = yes ; then
7599 def_radio
='#define CONFIG_RADIO 1'
7600 _inputmodules
="radio $_inputmodules"
7601 if test "$_alsa9" != yes -a "$_alsa1x" != yes -a "$_ossaudio" != yes ; then
7604 if test "$_radio_capture" = yes ; then
7606 def_radio_capture
="#define CONFIG_RADIO_CAPTURE 1"
7608 def_radio_capture
="#undef CONFIG_RADIO_CAPTURE"
7611 _noinputmodules
="radio $_noinputmodules"
7612 def_radio
='#undef CONFIG_RADIO'
7613 def_radio_capture
="#undef CONFIG_RADIO_CAPTURE"
7617 echocheck
"Capture for Radio interface"
7618 echores
"$_radio_capture"
7620 echocheck
"Video 4 Linux 2 Radio interface"
7621 if test "$_radio_v4l2" = auto
; then
7623 if test "$_radio" = yes && linux
; then
7626 #include <linux/types.h>
7627 #include <linux/videodev2.h>
7628 int main(void) { return 0; }
7630 cc_check
&& _radio_v4l2
=yes
7633 if test "$_radio_v4l2" = yes ; then
7634 def_radio_v4l2
='#define CONFIG_RADIO_V4L2 1'
7636 def_radio_v4l2
='#undef CONFIG_RADIO_V4L2'
7638 echores
"$_radio_v4l2"
7640 echocheck
"Video 4 Linux Radio interface"
7641 if test "$_radio_v4l" = auto
; then
7643 if test "$_radio" = yes && linux
; then
7646 #include <linux/videodev.h>
7647 int main(void) { return 0; }
7649 cc_check
&& _radio_v4l
=yes
7652 if test "$_radio_v4l" = yes ; then
7653 def_radio_v4l
='#define CONFIG_RADIO_V4L 1'
7655 def_radio_v4l
='#undef CONFIG_RADIO_V4L'
7657 echores
"$_radio_v4l"
7659 if freebsd || netbsd || openbsd || dragonfly || bsdos \
7660 && test "$_radio" = yes && test "$_radio_bsdbt848" = auto
; then
7661 echocheck
"*BSD BrookTree 848 Radio interface"
7664 #include <sys/types.h>
7665 $def_ioctl_bt848_h_name
7666 #ifdef IOCTL_BT848_H_NAME
7667 #include IOCTL_BT848_H_NAME
7669 int main(void) { ioctl(0, RADIO_GETFREQ, 0); return 0; }
7671 cc_check
&& _radio_bsdbt848
=yes
7672 echores
"$_radio_bsdbt848"
7673 fi #if freebsd || netbsd || openbsd || dragonfly || bsdos && _radio && _radio_bsdbt848
7675 if test "$_radio_bsdbt848" = yes ; then
7676 def_radio_bsdbt848
='#define CONFIG_RADIO_BSDBT848 1'
7678 def_radio_bsdbt848
='#undef CONFIG_RADIO_BSDBT848'
7681 if test "$_radio_v4l" = no
&& test "$_radio_v4l2" = no
&& \
7682 test "$_radio_bsdbt848" = no
&& test "$_radio" = yes ; then
7683 die
"Radio driver requires BSD BT848, V4L or V4L2!"
7686 echocheck
"Video 4 Linux 2 MPEG PVR interface"
7687 if test "$_pvr" = auto
; then
7689 if test "$_tv_v4l2" = yes && linux
; then
7692 #include <inttypes.h>
7693 #include <linux/types.h>
7694 #include <linux/videodev2.h>
7695 int main(void) { struct v4l2_ext_controls ext; return 0; }
7697 cc_check
&& _pvr
=yes
7700 if test "$_pvr" = yes ; then
7701 def_pvr
='#define CONFIG_PVR 1'
7702 _inputmodules
="pvr $_inputmodules"
7704 _noinputmodules
="pvr $_noinputmodules"
7705 def_pvr
='#undef CONFIG_PVR'
7711 if ! beos
&& test "$_ftp" = yes ; then
7712 def_ftp
='#define CONFIG_FTP 1'
7713 _inputmodules
="ftp $_inputmodules"
7715 _noinputmodules
="ftp $_noinputmodules"
7716 def_ftp
='#undef CONFIG_FTP'
7720 echocheck
"vstream client"
7721 if test "$_vstream" = auto
; then
7724 #include <vstream-client.h>
7725 void vstream_error(const char *format, ... ) {}
7726 int main(void) { vstream_start(); return 0; }
7728 cc_check
-lvstream-client && _vstream
=yes
7730 if test "$_vstream" = yes ; then
7731 def_vstream
='#define CONFIG_VSTREAM 1'
7732 _inputmodules
="vstream $_inputmodules"
7733 extra_ldflags
="$extra_ldflags -lvstream-client"
7735 _noinputmodules
="vstream $_noinputmodules"
7736 def_vstream
='#undef CONFIG_VSTREAM'
7741 echocheck
"OSD menu"
7742 if test "$_menu" = yes ; then
7743 def_menu
='#define CONFIG_MENU 1'
7744 test $_dvbin = "yes" && _menu_dvbin
=yes
7746 def_menu
='#undef CONFIG_MENU'
7752 echocheck
"Subtitles sorting"
7753 if test "$_sortsub" = yes ; then
7754 def_sortsub
='#define CONFIG_SORTSUB 1'
7756 def_sortsub
='#undef CONFIG_SORTSUB'
7761 echocheck
"XMMS inputplugin support"
7762 if test "$_xmms" = yes ; then
7763 if ( xmms-config
--version ) >/dev
/null
2>&1 ; then
7764 _xmmsplugindir
=$
(xmms-config
--input-plugin-dir)
7765 _xmmslibdir
=$
(xmms-config
--exec-prefix)/lib
7767 _xmmsplugindir
=/usr
/lib
/xmms
/Input
7768 _xmmslibdir
=/usr
/lib
7771 def_xmms
='#define CONFIG_XMMS 1'
7773 extra_ldflags
="$extra_ldflags ${_xmmslibdir}/libxmms.dylib"
7775 extra_ldflags
="$extra_ldflags ${_xmmslibdir}/libxmms.so.1 -export-dynamic"
7778 def_xmms
='#undef CONFIG_XMMS'
7783 # --------------- GUI specific tests begin -------------------
7786 if test "$_gui" = yes ; then
7788 # Required libraries
7789 if test "$_libavcodec" != yes ||
7790 ! echo $_libavdecoders |
grep -q PNG_DECODER
; then
7791 die
"The GUI requires libavcodec with PNG support (needs zlib)."
7793 test "$_freetype" = no
&& test "$_bitmap_font" = no
&& \
7794 die
"The GUI requires either FreeType or bitmap font support."
7797 test "$_x11" != yes && die
"X11 support required for GUI compilation."
7799 echocheck
"XShape extension"
7800 if test "$_xshape" = auto
; then
7803 #include <X11/Xlib.h>
7804 #include <X11/Xproto.h>
7805 #include <X11/Xutil.h>
7806 #include <X11/extensions/shape.h>
7809 char *name = ":0.0";
7812 int eventbase, errorbase;
7813 if (getenv("DISPLAY"))
7814 name=getenv("DISPLAY");
7815 wsDisplay=XOpenDisplay(name);
7816 if (!XShapeQueryExtension(wsDisplay,&eventbase,&errorbase))
7818 XCloseDisplay(wsDisplay);
7822 cc_check
-lXext && _xshape
=yes
7824 if test "$_xshape" = yes ; then
7825 def_xshape
='#define CONFIG_XSHAPE 1'
7827 die
"The GUI requires the X11 extension XShape (which was not found)."
7832 if test "$_gtk1" = no
; then
7834 echocheck
"GTK+ version"
7836 if $_pkg_config gtk
+-2.0
--exists ; then
7837 _gtk
=$
($_pkg_config gtk
+-2.0
--modversion 2>/dev
/null
)
7838 extra_cflags
="$extra_cflags $($_pkg_config gtk+-2.0 --cflags 2>/dev/null)"
7839 libs_mplayer
="$libs_mplayer $($_pkg_config gtk+-2.0 --libs 2>/dev/null)"
7843 if $_pkg_config glib-2.0
--exists ; then
7844 echocheck
"glib version"
7845 _glib
=$
($_pkg_config glib-2.0
--modversion 2>/dev
/null
)
7846 libs_mplayer
="$libs_mplayer $($_pkg_config glib-2.0 --libs 2>/dev/null)"
7849 def_gui
='#define CONFIG_GUI 1'
7850 def_gtk2
='#define CONFIG_GTK2 1'
7853 echo "GLIB-2 devel packages were not found, trying GTK 1.2"
7856 echo "GTK-2 devel packages were not found, trying GTK 1.2"
7861 if test "$_gtk1" = yes ; then
7862 # Check for old GTK (1.2.x)
7863 echocheck
"GTK version"
7864 if test -z "$_gtkconfig" ; then
7865 if ( gtk-config
--version ) >/dev
/null
2>&1 ; then
7866 _gtkconfig
="gtk-config"
7867 elif ( gtk12-config
--version ) >/dev
/null
2>&1 ; then
7868 _gtkconfig
="gtk12-config"
7870 die
"The GUI requires GTK devel packages (which were not found)."
7873 _gtk
=$
($_gtkconfig --version 2>&1)
7874 extra_cflags
="$extra_cflags $($_gtkconfig --cflags 2>&1)"
7875 libs_mplayer
="$libs_mplayer $($_gtkconfig --libs 2>&1)"
7876 echores
"$_gtk (using $_gtkconfig)"
7879 echocheck
"glib version"
7880 if test -z "$_glibconfig" ; then
7881 if ( glib-config
--version ) >/dev
/null
2>&1 ; then
7882 _glibconfig
="glib-config"
7883 elif ( glib12-config
--version ) >/dev
/null
2>&1 ; then
7884 _glibconfig
="glib12-config"
7886 die
"The GUI requires GLIB devel packages (which were not found)"
7889 _glib
=$
($_glibconfig --version 2>&1)
7890 libs_mplayer
="$libs_mplayer $($_glibconfig --libs 2>&1)"
7891 echores
"$_glib (using $_glibconfig)"
7893 def_gui
='#define CONFIG_GUI 1'
7894 def_gtk2
='#undef CONFIG_GTK2'
7899 libs_mplayer
="$libs_mplayer -lcomdlg32 -lcomctl32 -lshell32 -lkernel32"
7900 def_gui
='#define CONFIG_GUI 1'
7901 def_gtk2
='#undef CONFIG_GTK2'
7904 else #if test "$_gui"
7905 def_gui
='#undef CONFIG_GUI'
7906 def_gtk2
='#undef CONFIG_GTK2'
7908 # --------------- GUI specific tests end -------------------
7911 if test "$_charset" != "noconv" ; then
7912 def_charset
="#define MSG_CHARSET \"$_charset\""
7914 def_charset
="#undef MSG_CHARSET"
7918 if test -n "$_charset" && test "$_charset" != "UTF-8" ; then
7919 echocheck
"iconv program"
7920 iconv -f UTF-8
-t $_charset ${_mp_help} > /dev
/null
2>> "$TMPLOG"
7921 if test "$?" -ne 0 ; then
7923 echo "No working iconv program found, use "
7924 echo "--charset=UTF-8 to continue anyway."
7925 echo "If you also have problems with iconv library functions use --charset=noconv."
7926 echo "Messages in the GTK-2 interface will be broken then."
7933 #############################################################################
7935 echocheck
"automatic gdb attach"
7936 if test "$_crash_debug" = yes ; then
7937 def_crash_debug
='#define CONFIG_CRASH_DEBUG 1'
7939 def_crash_debug
='#undef CONFIG_CRASH_DEBUG'
7942 echores
"$_crash_debug"
7944 echocheck
"compiler support for noexecstack"
7946 int main(void) { return 0; }
7948 if cc_check
-Wl,-z,noexecstack
; then
7949 extra_ldflags
="-Wl,-z,noexecstack $extra_ldflags"
7956 # Dynamic linking flags
7957 # (FIXME: 'echocheck "dynamic linking"' above and modify here accordingly)
7959 freebsd || netbsd || openbsd || dragonfly || bsdos
&& _ld_dl_dynamic
='-rdynamic'
7960 if test "$_real" = yes ||
test "$_xanim" = yes && ! win32
&& ! qnx
&& ! darwin
&& ! os2
&& ! sunos
; then
7961 _ld_dl_dynamic
='-rdynamic'
7964 extra_ldflags
="$extra_ldflags $_ld_pthread $_ld_dl $_ld_dl_dynamic"
7965 bsdos
&& extra_ldflags
="$extra_ldflags -ldvd"
7966 (netbsd || openbsd
) && x86_32
&& extra_ldflags
="$extra_ldflags -li386"
7968 def_debug
='#undef MP_DEBUG'
7969 test "$_debug" != "" && def_debug
='#define MP_DEBUG 1'
7972 echocheck
"joystick"
7973 def_joystick
='#undef CONFIG_JOYSTICK'
7974 if test "$_joystick" = yes ; then
7976 # TODO add some check
7977 def_joystick
='#define CONFIG_JOYSTICK 1'
7980 _res_comment
="unsupported under $system_name"
7983 echores
"$_joystick"
7986 if test "$_lirc" = auto
; then
7989 #include <lirc/lirc_client.h>
7990 int main(void) { return 0; }
7992 cc_check
-llirc_client && _lirc
=yes
7994 if test "$_lirc" = yes ; then
7995 def_lirc
='#define CONFIG_LIRC 1'
7996 libs_mplayer
="$libs_mplayer -llirc_client"
7998 def_lirc
='#undef CONFIG_LIRC'
8003 if test "$_lircc" = auto
; then
8006 #include <lirc/lircc.h>
8007 int main(void) { return 0; }
8009 cc_check
-llircc && _lircc
=yes
8011 if test "$_lircc" = yes ; then
8012 def_lircc
='#define CONFIG_LIRCC 1'
8013 libs_mplayer
="$libs_mplayer -llircc"
8015 def_lircc
='#undef CONFIG_LIRCC'
8020 # Detect maemo development platform libraries availability (http://www.maemo.org),
8021 # they are used when run on Nokia 770|8x0
8022 echocheck
"maemo (Nokia 770|8x0)"
8023 if test "$_maemo" = auto
; then
8026 #include <libosso.h>
8027 int main(void) { (void) osso_initialize("", "", 0, NULL); return 0; }
8029 cc_check $
($_pkg_config --cflags --libs libosso
2>/dev
/null
) && _maemo
=yes
8031 if test "$_maemo" = yes ; then
8032 def_maemo
='#define CONFIG_MAEMO 1'
8033 extra_cflags
="$extra_cflags $($_pkg_config --cflags libosso)"
8034 extra_ldflags
="$extra_ldflags $($_pkg_config --libs libosso) -lXsp"
8036 def_maemo
='#undef CONFIG_MAEMO'
8041 #############################################################################
8043 # On OS/2 nm supports only a.out. So the -Zomf compiler option to generate
8044 # the OMF format needs to come after the 'extern symbol prefix' check, which
8047 extra_ldflags
="$extra_ldflags -Zomf -Zstack 16384 -Zbin-files -Zargs-wild"
8050 # linker paths should be the same for mencoder and mplayer
8052 for I
in $libs_mplayer ; do
8053 _tmp
=$
(echo $I |
sed -e 's/^-L.*$//')
8054 if test -z "$_tmp" ; then
8055 extra_ldflags
="$extra_ldflags $I"
8057 _ld_tmp
="$_ld_tmp $I"
8060 libs_mplayer
=$_ld_tmp
8063 #############################################################################
8064 # 64 bit file offsets?
8065 if test "$_largefiles" = yes || freebsd
; then
8066 CFLAGS
="$CFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
8067 if test "$_dvdread" = yes ||
test "$_libdvdcss_internal" = yes ; then
8068 # dvdread support requires this (for off64_t)
8069 CFLAGS
="$CFLAGS -D_LARGEFILE64_SOURCE"
8073 CXXFLAGS
=" $CFLAGS -D__STDC_LIMIT_MACROS"
8075 # This must be the last test to be performed. Any other tests following it
8076 # could fail due to linker errors. libdvdnavmini is intentionally not linked
8077 # against libdvdread (to permit MPlayer to use its own copy of the library).
8078 # So any compilation using the flags added here but not linking against
8079 # libdvdread can fail.
8080 echocheck
"DVD support (libdvdnav)"
8082 if test "$_dvdnav" = auto
; then
8083 if test "$_dvdread_internal" = yes ; then
8086 _res_comment
="internal"
8088 $_dvdnavconfig --version --minilibs >> $TMPLOG 2>&1 || _dvdnav
=no
8091 if test "$_dvdnav" = auto
; then
8093 #include <inttypes.h>
8094 #include <dvdnav/dvdnav.h>
8095 int main(void) { dvdnav_t *dvd=0; return 0; }
8098 _dvdnavdir
=$
($_dvdnavconfig --cflags)
8099 _dvdnavlibs
=$
($_dvdnavconfig --libs)
8100 cc_check
$_dvdnavdir $_dvdnavlibs $_ld_dl $_ld_pthread && _dvdnav
=yes
8102 if test "$_dvdnav" = yes ; then
8104 def_dvdnav
='#define CONFIG_DVDNAV 1'
8105 if test "$dvdnav_internal" = yes ; then
8106 cflags_libdvdnav
="-Ilibdvdnav"
8107 _inputmodules
="dvdnav(internal) $_inputmodules"
8109 extra_cflags
="$extra_cflags $($_dvdnavconfig --cflags)"
8110 extra_ldflags
="$extra_ldflags $($_dvdnavconfig --minilibs)"
8111 _inputmodules
="dvdnav $_inputmodules"
8114 def_dvdnav
='#undef CONFIG_DVDNAV'
8115 _noinputmodules
="dvdnav $_noinputmodules"
8119 # DO NOT ADD ANY TESTS THAT USE LINKER FLAGS HERE (like cc_check).
8120 # Read dvdnav comment above.
8122 #############################################################################
8123 echo "Creating config.mak"
8124 cat > config.mak
<< EOF
8125 # -------- Generated by configure -----------
8127 # Ensure that locale settings do not interfere with shell commands.
8130 CONFIGURATION = $_configuration
8133 DOC_LANGS = $language_doc
8134 DOC_LANG_ALL = $doc_lang_all
8135 MAN_LANGS = $language_man
8136 MAN_LANG_ALL = $man_lang_all
8138 prefix = \$(DESTDIR)$_prefix
8139 BINDIR = \$(DESTDIR)$_bindir
8140 DATADIR = \$(DESTDIR)$_datadir
8141 LIBDIR = \$(DESTDIR)$_libdir
8142 MANDIR = \$(DESTDIR)$_mandir
8143 CONFDIR = \$(DESTDIR)$_confdir
8152 INSTALLSTRIP = $_install_strip
8156 CFLAGS = $CFLAGS $extra_cflags
8157 OPTFLAGS = $CFLAGS $extra_cflags
8158 CXXFLAGS = $CXXFLAGS $extra_cflags $extra_cxxflags
8159 CFLAGS_DHAHELPER = $cflags_dhahelper
8160 CFLAGS_FAAD_FIXED = $cflags_faad_fixed
8161 CFLAGS_LIBDVDCSS = $cflags_libdvdcss
8162 CFLAGS_LIBDVDCSS_DVDREAD = $cflags_libdvdcss_dvdread
8163 CFLAGS_LIBDVDNAV = $cflags_libdvdnav
8164 CFLAGS_NO_OMIT_LEAF_FRAME_POINTER = $cflags_no_omit_leaf_frame_pointer
8165 CFLAGS_STACKREALIGN = $cflags_stackrealign
8166 CFLAGS_SVGALIB_HELPER = $cflags_svgalib_helper
8167 CFLAGS_TREMOR_LOW = $cflags_tremor_low
8168 YASMFLAGS = $YASMFLAGS
8170 EXTRALIBS = $extra_libs
8171 EXTRA_LIB = $extra_ldflags $_ld_static $_ld_lm
8172 EXTRALIBS_MPLAYER = $libs_mplayer
8173 EXTRALIBS_MENCODER = $libs_mencoder
8175 DEPEND_CMD = \$(CC) -MM \$(CFLAGS) \$(filter-out %.h,\$^) | sed "s,[0-9a-z._-]*: \(\$(SRC_DIR)/\)*\([a-z0-9]*/\)[^/]* ,\\2&,"
8177 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 &,"
8178 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 &,"
8181 HELP_FILE = $_mp_help
8189 $(echo $_cpuexts | tr '[a-z] ' '[A-Z]\n' | sed 's/^/HAVE_/;s/$/=yes/')
8191 MENCODER = $_mencoder
8194 NEED_GETTIMEOFDAY = $_need_gettimeofday
8195 NEED_GLOB = $_need_glob
8196 NEED_MMAP = $_need_mmap
8197 NEED_SETENV = $_need_setenv
8198 NEED_SHMEM = $_need_shmem
8199 NEED_STRSEP = $_need_strsep
8200 NEED_SWAB = $_need_swab
8201 NEED_VSSCANF = $_need_vsscanf
8209 APPLE_IR = $_apple_ir
8210 APPLE_REMOTE = $_apple_remote
8212 AUDIO_INPUT = $_audio_input
8213 BITMAP_FONT = $_bitmap_font
8218 COREAUDIO = $_coreaudio
8219 COREVIDEO = $_corevideo
8223 DIRECT3D = $_direct3d
8224 DIRECTFB = $_directfb
8228 DVDNAV_INTERNAL = $dvdnav_internal
8230 DVDREAD_INTERNAL = $_dvdread_internal
8236 FAAD_INTERNAL = $_faad_internal
8237 FASTMEMCPY = $_fastmemcpy
8239 FREETYPE = $_freetype
8244 GL_WIN32 = $_gl_win32
8247 GUI_WIN32 = $_gui_win32
8248 HAVE_POSIX_SELECT = $_posix_select
8249 HAVE_SYS_MMAN_H = $_mman
8252 JOYSTICK = $_joystick
8257 LIBA52_INTERNAL = $_liba52_internal
8262 LIBDVDCSS_INTERNAL = $_libdvdcss_internal
8266 LIBMENU_DVBIN = $_menu_dvbin
8267 LIBMPEG2 = $_libmpeg2
8268 LIBNEMESI = $_nemesi
8270 LIBSMBCLIENT = $_smb
8271 LIBTHEORA = $_theora
8274 MACOSX_BUNDLE = $_macosx_bundle
8275 MACOSX_FINDER = $_macosx_finder
8281 MUSEPACK = $_musepack
8283 NATIVE_RTSP = $_native_rtsp
8287 PE_EXECUTABLE = $_pe_executable
8290 PRIORITY = $_priority
8294 QTX_CODECS_WIN32 = $_qtx_codecs_win32
8295 QTX_EMULATION = $_qtx_emulation
8298 RADIO_CAPTURE=$_radio_capture
8299 REAL_CODECS = $_real
8303 STREAM_CACHE = $_stream_cache
8304 SGIAUDIO = $_sgiaudio
8305 SUNAUDIO = $_sunaudio
8311 TREMOR_INTERNAL = $_tremor_internal
8313 TV_BSDBT848 = $_tv_bsdbt848
8314 TV_DSHOW = $_tv_dshow
8315 TV_TELETEXT = $_tv_teletext
8320 UNRAR_EXEC = $_unrar_exec
8326 VIDIX_PCIDB = $_vidix_pcidb_val
8327 VIDIX_CYBERBLADE=$_vidix_drv_cyberblade
8328 VIDIX_IVTV=$_vidix_drv_ivtv
8329 VIDIX_MACH64=$_vidix_drv_mach64
8330 VIDIX_MGA=$_vidix_drv_mga
8331 VIDIX_MGA_CRTC2=$_vidix_drv_mga_crtc2
8332 VIDIX_NVIDIA=$_vidix_drv_nvidia
8333 VIDIX_PM2=$_vidix_drv_pm2
8334 VIDIX_PM3=$_vidix_drv_pm3
8335 VIDIX_RADEON=$_vidix_drv_radeon
8336 VIDIX_RAGE128=$_vidix_drv_rage128
8337 VIDIX_S3=$_vidix_drv_s3
8338 VIDIX_SH_VEU=$_vidix_drv_sh_veu
8339 VIDIX_SIS=$_vidix_drv_sis
8340 VIDIX_UNICHROME=$_vidix_drv_unichrome
8344 WIN32DLL = $_win32dll
8345 WIN32WAVEOUT = $_win32waveout
8346 WIN32_EMULATION = $_win32_emulation
8347 WINVIDIX = $winvidix
8350 XANIM_CODECS = $_xanim
8352 XMMS_PLUGINS = $_xmms
8358 YUV4MPEG = $_yuv4mpeg
8362 LIBAVUTIL = $_libavutil
8363 LIBAVUTIL_A = $_libavutil_a
8364 LIBAVUTIL_SO = $_libavutil_so
8365 LIBAVCODEC = $_libavcodec
8366 LIBAVCODEC_A = $_libavcodec_a
8367 LIBAVCODEC_SO = $_libavcodec_so
8368 LIBAVFORMAT = $_libavformat
8369 LIBAVFORMAT_A = $_libavformat_a
8370 LIBAVFORMAT_SO = $_libavformat_so
8371 LIBPOSTPROC = $_libpostproc
8372 LIBPOSTPROC_A = $_libpostproc_a
8373 LIBPOSTPROC_SO = $_libpostproc_so
8374 LIBSWSCALE = $_libswscale
8375 LIBSWSCALE_A = $_libswscale_a
8376 LIBSWSCALE_SO = $_libswscale_so
8383 LIBNAME=\$(LIBPREF)\$(NAME)\$(LIBSUF)
8385 # Some FFmpeg codecs depend on these. Enable them unconditionally for now.
8388 CONFIG_FFT_MMX=$fft_mmx
8396 CONFIG_LIBAMR=$_libamr
8397 CONFIG_LIBAMR_NB=$_libamr_nb
8398 CONFIG_LIBAMR_WB=$_libamr_wb
8399 CONFIG_LIBDIRAC=$_libdirac_lavc
8400 CONFIG_LIBFAAC=$_faac_lavc
8401 CONFIG_LIBMP3LAME=$_mp3lame_lavc
8402 CONFIG_LIBSCHROEDINGER=$_libschroedinger_lavc
8403 CONFIG_LIBVORBIS=$_libvorbis
8404 CONFIG_LIBX264=$_x264_lavc
8405 CONFIG_LIBXVID=$_xvid_lavc
8406 CONFIG_MLIB = $_mlib
8407 CONFIG_MUXERS=$_mencoder
8408 CONFIG_POSTPROC = yes
8409 # Prevent building libavcodec/imgresample.c with conflicting symbols
8411 CONFIG_VDPAU=$_vdpau
8415 HAVE_PTHREADS = $_pthreads
8416 HAVE_W32THREADS = $_w32threads
8417 HAVE_YASM = $_have_yasm
8419 $(echo $_libavdecoders | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8420 $(echo $_libavencoders | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8421 $(echo $_libavparsers | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8422 $(echo $_libavdemuxers | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8423 $(echo $_libavmuxers | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8424 $(echo $_libavbsfs | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8427 #############################################################################
8429 ff_config_enable
() {
8431 test -z "$_nprefix" && _nprefix
='CONFIG'
8433 if $
(echo $2 |
grep -q -E "(^| )$part($| )"); then
8434 echo "#define ${_nprefix}_$part 1"
8436 echo "#define ${_nprefix}_$part 0"
8441 echo "Creating config.h"
8443 /*----------------------------------------------------------------------------
8444 ** This file has been automatically generated by configure any changes in it
8445 ** will be lost when you run configure again.
8446 ** Instead of modifying definitions here, use the --enable/--disable options
8447 ** of the configure script! See ./configure --help for details.
8448 *---------------------------------------------------------------------------*/
8450 #ifndef MPLAYER_CONFIG_H
8451 #define MPLAYER_CONFIG_H
8453 /* Undefine this if you do not want to select mono audio (left or right)
8454 with a stereo MPEG layer 2/3 audio stream. The command line option
8455 -stereo has three possible values (0 for stereo, 1 for left-only, 2 for
8456 right-only), with 0 being the default.
8458 #define CONFIG_FAKE_MONO 1
8460 /* set up max. outburst. use 65536 for ALSA 0.5, for others 16384 is enough */
8461 #define MAX_OUTBURST 65536
8463 /* set up audio OUTBURST. Do not change this! */
8464 #define OUTBURST 512
8466 /* Enable fast OSD/SUB renderer (looks ugly, but uses less CPU power) */
8468 #undef FAST_OSD_TABLE
8470 /* Define this to enable MPEG-1/2 image postprocessing in libmpeg2 */
8471 #define MPEG12_POSTPROC 1
8472 #define ATTRIBUTE_ALIGNED_MAX 16
8476 #define CONFIGURATION "$_configuration"
8478 #define MPLAYER_DATADIR "$_datadir"
8479 #define MPLAYER_CONFDIR "$_confdir"
8480 #define MPLAYER_LIBDIR "$_libdir"
8482 /* definitions needed by included libraries */
8483 #define HAVE_INTTYPES_H 1
8484 /* libmpeg2 + FFmpeg */
8487 #define HAVE_ERRNO_H 1
8488 /* libdvdcss + libdvdread */
8489 #define HAVE_LIMITS_H 1
8490 /* libdvdcss + libfaad2 */
8491 #define HAVE_UNISTD_H 1
8492 /* libfaad2 + libdvdread */
8493 #define STDC_HEADERS 1
8494 #define HAVE_MEMCPY 1
8496 #define HAVE_STRING_H 1
8497 #define HAVE_STRINGS_H 1
8498 #define HAVE_SYS_STAT_H 1
8499 #define HAVE_SYS_TYPES_H 1
8501 #define READ_CACHE_TRACE 0
8503 #define HAVE_DLFCN_H 1
8507 /* system headers */
8509 $def_alsa_asoundlib_h
8513 $def_mman_has_map_failed
8515 $def_sys_asoundlib_h
8516 $def_sys_soundcard_h
8523 /* system functions */
8550 /* system-specific features */
8563 $def_restrict_keyword
8568 /* configurable options */
8572 $def_dynamic_plugins
8575 $def_runtime_cpudetection
8583 #define __CPU__ $iproc
8585 $(ff_config_enable "$_arch_all" "$_arch" "ARCH")
8586 $(ff_config_enable "$_cpuexts_all" "$_cpuexts" "HAVE")
8590 #define DEFAULT_CDROM_DEVICE "$default_cdrom_device"
8591 #define DEFAULT_DVD_DEVICE "$default_dvd_device"
8611 /* codec libraries */
8616 $def_liba52_internal
8624 $def_mp3lame_preset_medium
8647 #define WIN32_PATH "$_win32codecsdir"
8651 #define XMMS_INPUT_PLUGIN_DIR "$_xmmsplugindir"
8660 /* Audio output drivers */
8675 $def_ossaudio_devdsp
8676 $def_ossaudio_devmixer
8689 $def_ioctl_bt848_h_name
8690 $def_ioctl_meteor_h_name
8744 $def_directfb_version
8779 $def_vidix_drv_cyberblade
8781 $def_vidix_drv_mach64
8783 $def_vidix_drv_mga_crtc2
8784 $def_vidix_drv_nvidia
8786 $def_vidix_drv_radeon
8787 $def_vidix_drv_rage128
8789 $def_vidix_drv_sh_veu
8791 $def_vidix_drv_unichrome
8825 #define CONFIG_DECODERS 1
8826 #define CONFIG_ENCODERS 1
8827 #define CONFIG_DEMUXERS 1
8837 $def_libavcodec_mpegaudio_hp
8848 #define CONFIG_FASTDIV 0
8849 #define CONFIG_FFSERVER 0
8850 #define CONFIG_GPL 1
8851 #define CONFIG_GRAY 0
8852 #define CONFIG_HARDCODED_TABLES 0
8853 #define CONFIG_LIBAMR_NB_FIXED 0
8854 #define CONFIG_LIBVORBIS 0
8855 #define CONFIG_POWERPC_PERF 0
8856 #define CONFIG_SMALL 0
8857 #define CONFIG_SWSCALE 1
8858 #define CONFIG_SWSCALE_ALPHA 1
8860 #define HAVE_GETHRTIME 0
8861 #define HAVE_INLINE_ASM 0
8862 #define HAVE_LDBRX 0
8863 #define HAVE_POLL_H 1
8864 #define HAVE_PPC4XX 0
8865 #define HAVE_VIRTUALALLOC 0
8867 /* Some FFmpeg codecs depend on these. Enable them unconditionally for now. */
8868 #define CONFIG_AANDCT 1
8869 #define CONFIG_FFT 1
8870 #define CONFIG_GOLOMB 1
8871 #define CONFIG_MDCT 1
8872 #define CONFIG_RDFT 1
8874 /* Use these registers in FFmpeg x86 inline asm. No proper detection yet. */
8875 #define HAVE_EBX_AVAILABLE 1
8877 #define HAVE_EBP_AVAILABLE 1
8879 #define HAVE_EBP_AVAILABLE 0
8882 /* External libraries used through libavcodec. */
8888 $def_libschroedinger_lavc
8893 $(ff_config_enable "$_libavdecoders_all" "$_libavdecoders")
8894 $(ff_config_enable "$_libavencoders_all" "$_libavencoders")
8895 $(ff_config_enable "$_libavparsers_all" "$_libavparsers")
8896 $(ff_config_enable "$_libavdemuxers_all" "$_libavdemuxers")
8897 $(ff_config_enable "$_libavmuxers_all" "$_libavmuxers")
8898 $(ff_config_enable "$_libavprotocols_all" "$_libavprotocols")
8899 $(ff_config_enable "$_libavbsfs_all" "$_libavbsfs")
8901 #define CONFIG_H263_VAAPI_HWACCEL 0
8902 #define CONFIG_MPEG2_VAAPI_HWACCEL 0
8903 #define CONFIG_MPEG4_VAAPI_HWACCEL 0
8904 #define CONFIG_H264_VAAPI_HWACCEL 0
8905 #define CONFIG_VC1_VAAPI_HWACCEL 0
8906 #define CONFIG_WMV3_VAAPI_HWACCEL 0
8908 #endif /* MPLAYER_CONFIG_H */
8911 # Do not overwrite an unchanged config.h to avoid superfluous rebuilds.
8912 cmp -s "$TMPH" config.h ||
mv -f "$TMPH" config.h
8914 #############################################################################
8918 Config files successfully generated by ./configure $_configuration !
8920 Install prefix: $_prefix
8921 Data directory: $_datadir
8922 Config direct.: $_confdir
8924 Byte order: $_byte_order
8925 Optimizing for: $_optimizing
8928 Messages/GUI: $language_msg
8929 Manual pages: $language_man
8930 Documentation: $language_doc
8932 Enabled optional drivers:
8933 Input: $_inputmodules
8934 Codecs: $_codecmodules
8935 Audio output: $_aomodules
8936 Video output: $_vomodules
8938 Disabled optional drivers:
8939 Input: $_noinputmodules
8940 Codecs: $_nocodecmodules
8941 Audio output: $_noaomodules
8942 Video output: $_novomodules
8944 'config.h' and 'config.mak' contain your configuration options.
8945 Note: If you alter theses files (for instance CFLAGS) MPlayer may no longer
8946 compile *** DO NOT REPORT BUGS if you tweak these files ***
8948 'make' will now compile MPlayer and 'make install' will install it.
8949 Note: On non-Linux systems you might need to use 'gmake' instead of 'make'.
8954 if test "$_mtrr" = yes ; then
8955 echo "Please check mtrr settings at /proc/mtrr (see DOCS/HTML/$doc_lang/video.html#mtrr)"
8961 NOTE: Win32 codec DLLs are not supported on your CPU ($host_arch) or your
8962 operating system ($system_name). You may encounter a few files that cannot
8963 be played due to missing open source video/audio codec support.
8970 Check $TMPLOG if you wonder why an autodetection failed (make sure
8971 development headers/packages are installed).
8973 NOTE: The --enable-* parameters unconditionally force options on, completely
8974 skipping autodetection. This behavior is unlike what you may be used to from
8975 autoconf-based configure scripts that can decide to override you. This greater
8976 level of control comes at a price. You may have to provide the correct compiler
8977 and linker flags yourself.
8978 If you used one of these options (except --enable-gui and similar ones that
8979 turn on internal features) and experience a compilation or linking failure,
8980 make sure you have passed the necessary compiler/linker flags to configure.
8982 If you suspect a bug, please read DOCS/HTML/$doc_lang/bugreports.html.
8986 if test "$_warn_CFLAGS" = yes; then
8989 MPlayer compilation will use the CPPFLAGS/CFLAGS/LDFLAGS/YASMFLAGS set by you,
8992 *** *** DO NOT REPORT BUGS IF IT DOES NOT COMPILE/WORK! *** ***
8994 It is strongly recommended to let MPlayer choose the correct CFLAGS!
8995 To do so, execute 'CFLAGS= ./configure <options>'
9001 rm -f "$TMPEXE" "$TMPC" "$TMPS" "$TMPCPP" "$TMPH"