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' ffmpeg
/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' ffmpeg
/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' ffmpeg
/libavcodec
/allcodecs.c |
tr '[a-z]' '[A-Z]')
545 _libavparsers
=$_libavparsers_all
546 _libavbsfs_all
=$
(sed -n 's/^[^#]*BSF.*(.*, *\(.*\)).*/\1_bsf/p' ffmpeg
/libavcodec
/allcodecs.c |
tr '[a-z]' '[A-Z]')
547 _libavbsfs
=$_libavbsfs_all
548 _libavdemuxers_all
=$
(sed -n 's/^[^#]*DEMUX.*(.*, *\(.*\)).*/\1_demuxer/p' ffmpeg
/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' ffmpeg
/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' ffmpeg
/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 if test "$_gui" = yes ; then
1338 echo "Error: --enable-gui is no longer supported. Use an external frontend if you want a GUI." >&2
1342 # Atmos: moved this here, to be correct, if --prefix is specified
1343 test -z "$_bindir" && _bindir
="$_prefix/bin"
1344 test -z "$_datadir" && _datadir
="$_prefix/share/mplayer"
1345 test -z "$_mandir" && _mandir
="$_prefix/share/man"
1346 test -z "$_confdir" && _confdir
="$_prefix/etc/mplayer"
1347 test -z "$_libdir" && _libdir
="$_prefix/lib"
1349 # Determine our OS name and CPU architecture
1350 if test -z "$_target" ; then
1352 system_name
=$
(uname
-s 2>&1)
1353 case "$system_name" in
1354 Linux|FreeBSD|NetBSD|OpenBSD|DragonFly|BSD
/OS|Darwin|SunOS|QNX|GNU|BeOS|MorphOS|AIX|AmigaOS
)
1365 [cC
][yY
][gG
][wW
][iI
][nN
]*)
1375 system_name
="$system_name-UNKNOWN"
1380 # host's CPU/instruction set
1381 host_arch
=$
(uname
-p 2>&1)
1382 case "$host_arch" in
1383 i386|sparc|ppc|alpha|arm|mips|vax
)
1385 powerpc
) # Darwin returns 'powerpc'
1388 *) # uname -p on Linux returns 'unknown' for the processor type,
1389 # OpenBSD returns 'Intel Pentium/MMX ("Genuine Intel" 586-class)'
1391 # Maybe uname -m (machine hardware name) returns something we
1394 # x86/x86pc is used by QNX
1395 case "$(uname -m 2>&1)" in
1396 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
;;
1397 ia64
) host_arch
=ia64
;;
1399 if [ -n "$($_cc -dumpmachine | sed -n '/^x86_64-/p;/^amd64-/p')" -a \
1400 -z "$(echo $CFLAGS $_cc | grep -- -m32)" ]; then
1406 macppc|ppc
) host_arch
=ppc
;;
1407 ppc64
) host_arch
=ppc64
;;
1408 alpha
) host_arch
=alpha
;;
1409 sparc
) host_arch
=sparc
;;
1410 sparc64
) host_arch
=sparc64
;;
1411 parisc
*|hppa
*|
9000*) host_arch
=hppa
;;
1412 arm
*|zaurus|cats
) host_arch
=arm
;;
1413 sh3|sh4|sh4a
) host_arch
=sh
;;
1414 s390
) host_arch
=s390
;;
1415 s390x
) host_arch
=s390x
;;
1416 mips
*) host_arch
=mips
;;
1417 vax
) host_arch
=vax
;;
1418 xtensa
*) host_arch
=xtensa
;;
1419 *) host_arch
=UNKNOWN
;;
1423 else # if test -z "$_target"
1424 system_name
=$
(echo $_target | cut
-d '-' -f 2)
1425 case "$(echo $system_name | tr A-Z a-z)" in
1426 linux
) system_name
=Linux
;;
1427 freebsd
) system_name
=FreeBSD
;;
1428 gnu
/kfreebsd
) system_name
=FreeBSD
;;
1429 netbsd
) system_name
=NetBSD
;;
1430 bsd
/os
) system_name
=BSD
/OS
;;
1431 openbsd
) system_name
=OpenBSD
;;
1432 dragonfly
) system_name
=DragonFly
;;
1433 sunos
) system_name
=SunOS
;;
1434 qnx
) system_name
=QNX
;;
1435 morphos
) system_name
=MorphOS
;;
1436 amigaos
) system_name
=AmigaOS
;;
1437 mingw32msvc
) system_name
=MINGW32
;;
1439 # We need to convert underscores so that values like k6-2 and pentium-mmx can be passed
1440 host_arch
=$
(echo $_target | cut
-d '-' -f 1)
1441 if test $
(echo $host_arch) != "x86_64" ; then
1442 host_arch
=$
(echo $host_arch |
tr '_' '-')
1446 echo "Detected operating system: $system_name"
1447 echo "Detected host architecture: $host_arch"
1449 if test "$_runtime_cpudetection" = yes && ! x86
&& ! ppc
; then
1450 die
"Runtime CPU detection only works for x86, x86-64 and PPC!"
1454 extra_cflags
="-I. $extra_cflags"
1455 _timer
=timer-linux.c
1458 extra_ldflags
="$extra_ldflags -L/usr/local/lib"
1459 extra_cflags
="$extra_cflags -I/usr/local/include"
1462 if netbsd || dragonfly
; then
1463 extra_ldflags
="$extra_ldflags -L/usr/pkg/lib"
1464 extra_cflags
="$extra_cflags -I/usr/pkg/include"
1468 extra_cflags
="-mdynamic-no-pic -falign-loops=16 -shared-libgcc $extra_cflags"
1469 _timer
=timer-darwin.c
1473 extra_ldflags
="$extra_ldflags -lC"
1484 # -lwinmm is always needed for osdep/timer-win2.c
1485 extra_ldflags
="$extra_ldflags -lwinmm"
1489 def_dos_paths
="#define HAVE_DOS_PATHS 1"
1490 def_priority
="#define CONFIG_PRIORITY 1"
1502 def_stream_cache
="#undef CONFIG_STREAM_CACHE"
1503 extra_cflags
="-DNEWLIB -D__USE_INLINE__ $extra_cflags"
1507 extra_ldflags
="$extra_ldflags -lph"
1515 def_dos_paths
="#define HAVE_DOS_PATHS 1"
1516 def_priority
="#define CONFIG_PRIORITY 1"
1519 for I
in "$TMPDIR" "$TEMPDIR" "/tmp" ; do
1524 TMPLOG
="configure.log"
1525 TMPC
="$I/mplayer-conf-$RANDOM-$$.c"
1526 TMPCPP
="$I/mplayer-conf-$RANDOM-$$.cpp"
1527 TMPEXE
="$I/mplayer-conf-$RANDOM-$$$_exesuf"
1528 TMPH
="$I/mplayer-conf-$RANDOM-$$.h"
1529 TMPS
="$I/mplayer-conf-$RANDOM-$$.S"
1532 echo configuration
: $_configuration > "$TMPLOG"
1536 # Checking CC version...
1537 # Intel C++ Compilers (no autoselect, use CC=/some/binary ./configure)
1538 if test "$(basename $_cc)" = "icc" ||
test "$(basename $_cc)" = "ecc"; then
1539 echocheck
"$_cc version"
1541 cc_name
=$
($_cc -V 2>&1 |
head -n 1 | cut
-d ',' -f 1)
1542 cc_version
=$
($_cc -V 2>&1 |
head -n 1 | cut
-d ',' -f 2 | cut
-d ' ' -f 3)
1543 _cc_major
=$
(echo $cc_version | cut
-d '.' -f 1)
1544 _cc_minor
=$
(echo $cc_version | cut
-d '.' -f 2)
1545 # TODO verify older icc/ecc compatibility
1548 cc_version
="v. ?.??, bad"
1552 cc_version
="$cc_version, ok"
1555 cc_version
="$cc_version, bad"
1559 echores
"$cc_version"
1561 for _cc
in "$_cc" cc gcc
; do
1562 cc_name_tmp
=$
($_cc -v 2>&1 |
tail -n 1 | cut
-d ' ' -f 1)
1563 if test "$cc_name_tmp" = "gcc"; then
1564 cc_name
=$cc_name_tmp
1565 echocheck
"$_cc version"
1567 cc_version
=$
($_cc -dumpversion 2>&1)
1573 _cc_major
=$
(echo $cc_version | cut
-d '.' -f 1)
1574 _cc_minor
=$
(echo $cc_version | cut
-d '.' -f 2)
1575 _cc_mini
=$
(echo $cc_version | cut
-d '.' -f 3)
1578 echores
"$cc_version"
1583 test "$cc_fail" = yes && die
"unsupported compiler version"
1586 test "$_host_cc" || _host_cc
=$_cc
1589 echocheck
"cross compilation"
1590 if test $_cross_compile = auto
; then
1592 int main(void) { return 0; }
1595 cc_check
&& "$TMPEXE" && _cross_compile
=no
1597 echores
$_cross_compile
1599 if test $_cross_compile = yes; then
1607 # now that we know what compiler should be used for compilation, try to find
1608 # out which assembler is used by the $_cc compiler
1609 if test "$_as" = auto
; then
1610 _as
=$
($_cc -print-prog-name=as
)
1611 test -z "$_as" && _as
=as
1614 if test "$_nm" = auto
; then
1615 _nm
=$
($_cc -print-prog-name=nm
)
1616 test -z "$_nm" && _nm
=nm
1619 # XXX: this should be ok..
1622 if test "$_runtime_cpudetection" = no
; then
1624 # Cygwin has /proc/cpuinfo, but only supports Intel CPUs
1625 # FIXME: Remove the cygwin check once AMD CPUs are supported
1626 if test -r /proc
/cpuinfo
&& ! cygwin
; then
1627 # Linux with /proc mounted, extract CPU information from it
1628 _cpuinfo
="cat /proc/cpuinfo"
1629 elif test -r /compat
/linux
/proc
/cpuinfo
&& ! x86_32
; then
1630 # FreeBSD with Linux emulation /proc mounted,
1631 # extract CPU information from it
1632 _cpuinfo
="cat /compat/linux/proc/cpuinfo"
1633 elif darwin
&& ! x86
; then
1634 # use hostinfo on Darwin
1637 # use 'lsattr' on AIX
1638 _cpuinfo
="lsattr -E -l proc0 -a type"
1640 # all other OSes try to extract CPU information from a small helper
1641 # program cpuinfo instead
1642 $_cc -o cpuinfo
$_exesuf cpuinfo.c
1643 _cpuinfo
="./cpuinfo$_exesuf"
1647 # gather more CPU information
1648 pname
=$
($_cpuinfo |
grep 'model name' | cut
-d ':' -f 2 |
head -n 1)
1649 pvendor
=$
($_cpuinfo |
grep 'vendor_id' | cut
-d ':' -f 2 | cut
-d ' ' -f 2 |
head -n 1)
1650 pfamily
=$
($_cpuinfo |
grep 'cpu family' | cut
-d ':' -f 2 | cut
-d ' ' -f 2 |
head -n 1)
1651 pmodel
=$
($_cpuinfo |
grep -v 'model name' |
grep 'model' | cut
-d ':' -f 2 | cut
-d ' ' -f 2 |
head -n 1)
1652 pstepping
=$
($_cpuinfo |
grep 'stepping' | cut
-d ':' -f 2 | cut
-d ' ' -f 2 |
head -n 1)
1654 exts
=$
($_cpuinfo |
egrep 'features|flags' | cut
-d ':' -f 2 |
head -n 1)
1656 pparam
=$
(echo $exts |
sed -e s
/k6_mtrr
/mtrr
/ -e s
/cyrix_arr
/mtrr
/ -e s
/centaur_mcr
/mtrr
/ \
1657 -e s
/xmm
/sse
/ -e s
/kni
/sse
/)
1659 for ext
in $pparam ; do
1660 eval test \"\
$_$ext\" = auto
2>/dev
/null
&& eval _
$ext=kernel_check
1663 # SSE implies MMX2, but not all SSE processors report the mmxext CPU flag.
1664 test $_sse = kernel_check
&& _mmxext
=kernel_check
1666 echocheck
"CPU vendor"
1667 echores
"$pvendor ($pfamily:$pmodel:$pstepping)"
1669 echocheck
"CPU type"
1673 fi # test "$_runtime_cpudetection" = no
1675 if x86
&& test "$_runtime_cpudetection" = no
; then
1677 if test "$1" = kernel_check
; then
1678 echocheck
"kernel support of $2"
1682 void catch() { exit(1); }
1684 signal(SIGILL, catch);
1685 __asm__ volatile ("$3":::"memory"); return 0;
1689 if cc_check
&& tmp_run
; then
1692 _optimizing
="$_optimizing $2"
1697 echo "It seems that your kernel does not correctly support $2."
1698 echo "To use $2 extensions in MPlayer, you have to upgrade/recompile your kernel!"
1705 extcheck
$_mmx "mmx" "emms"
1706 extcheck
$_mmxext "mmxext" "sfence"
1707 extcheck
$_3dnow "3dnow" "femms"
1708 extcheck
$_3dnowext "3dnowext" "pswapd %%mm0, %%mm0"
1709 extcheck
$_sse "sse" "xorps %%xmm0, %%xmm0" || _gcc3_ext
="$_gcc3_ext -mno-sse"
1710 extcheck
$_sse2 "sse2" "xorpd %%xmm0, %%xmm0" || _gcc3_ext
="$_gcc3_ext -mno-sse2"
1711 extcheck
$_ssse3 "ssse3" "pabsd %%xmm0, %%xmm0"
1712 extcheck
$_cmov "cmov" "cmovb %%eax,%%ebx"
1714 echocheck
"mtrr support"
1715 if test "$_mtrr" = kernel_check
; then
1717 _optimizing
="$_optimizing mtrr"
1721 if test "$_gcc3_ext" != ""; then
1722 # if we had to disable sse/sse2 because the active kernel does not
1723 # support this instruction set extension, we also have to tell
1724 # gcc3 to not generate sse/sse2 instructions for normal C code
1726 int main(void) { return 0; }
1728 cc_check
$_march $_gcc3_ext && _march
="$_march $_gcc3_ext"
1734 def_fast_64bit
='#define HAVE_FAST_64BIT 0'
1735 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 0'
1736 _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'
1737 case "$host_arch" in
1738 i
[3-9]86|x86|x86pc|k5|k6|k6-2|k6-3|pentium
*|athlon
*|i586-i686
)
1740 _target_arch
="ARCH_X86 = yes"
1741 _target_subarch
="ARCH_X86_32 = yes"
1742 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
1747 if test "$_runtime_cpudetection" = no
; then
1751 3) proc
=i386 iproc
=386 ;;
1752 4) proc
=i486 iproc
=486 ;;
1753 5) iproc
=586 # LGB: models are: K5/SSA5 K5 K5 K5 ? ? K6 K6 K6-2 K6-3
1754 # K6 model 13 are the K6-2+ and K6-III+, only differing in cache size.
1755 if test "$pmodel" -eq 9 -o "$pmodel" -eq 13; then
1757 elif test "$pmodel" -eq 5 -o "$pmodel" -eq 10; then
1759 elif test "$pmodel" -ge 8; then
1761 elif test "$pmodel" -ge 6; then
1768 # It's a bit difficult to determine the correct type of Family 6
1769 # AMD CPUs just from their signature. Instead, we check directly
1770 # whether it supports SSE.
1771 if test "$_sse" = yes; then
1772 # gcc treats athlon-xp, athlon-4 and athlon-mp similarly.
1775 # Again, gcc treats athlon and athlon-tbird similarly.
1780 # k8 cpu-type only supported in gcc >= 3.4.0, but that will be
1781 # caught and remedied in the optimization tests below.
1785 *) proc
=k8 iproc
=686 ;;
1790 3) proc
=i386 iproc
=386 ;;
1791 4) proc
=i486 iproc
=486 ;;
1793 if test "$pmodel" -eq 4 ||
test "$pmodel" -eq 8; then
1794 proc
=pentium-mmx
# 4 is desktop, 8 is mobile
1800 if test "$pmodel" -ge 15; then
1802 elif test "$pmodel" -eq 9 -o "$pmodel" -ge 13; then
1804 elif test "$pmodel" -ge 7; then
1806 elif test "$pmodel" -ge 3; then
1813 # A nocona in 32-bit mode has no more capabilities than a prescott.
1814 if test "$pmodel" -ge 3; then
1819 test $_fast_cmov = "auto" && _fast_cmov
=no
1821 *) proc
=prescott iproc
=686 ;;
1827 if test "$pmodel" -ge 8; then
1829 elif test "$pmodel" -ge 4; then
1836 if test "$pmodel" -ge 9; then
1843 *) proc
=i686 iproc
=i686
;;
1848 3) proc
=i386 iproc
=386 ;;
1849 4) proc
=i486 iproc
=486 ;;
1850 *) proc
=i586 iproc
=586 ;;
1854 proc
=i586 iproc
=586 ;;
1856 fi # test "$_runtime_cpudetection" = no
1859 # check that gcc supports our CPU, if not, fall back to earlier ones
1860 # LGB: check -mcpu and -march swithing step by step with enabling
1861 # to fall back till 386.
1863 # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
1865 if [ "$cc_vendor" = "gnu" ] && ([ "$_cc_major" -gt 3 ] ||
( [ "$_cc_major" = 3 ] && [ "$_cc_minor" -ge 4 ])) ; then
1871 echocheck
"GCC & CPU optimization abilities"
1873 int main(void) { return 0; }
1875 if test "$_runtime_cpudetection" = no
; then
1876 cc_check
-march=native
&& proc
=native
1877 if test "$proc" = "k8"; then
1878 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon-xp
1880 if test "$proc" = "athlon-xp"; then
1881 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon
1883 if test "$proc" = "k6-3" ||
test "$proc" = "k6-2"; then
1884 cc_check
-march=$proc $cpuopt=$proc || proc
=k6
1886 if test "$proc" = "k6" ||
test "$proc" = "c3"; then
1887 if ! cc_check
-march=$proc $cpuopt=$proc; then
1888 if cc_check
-march=i586
$cpuopt=i686
; then
1895 if test "$proc" = "prescott" ; then
1896 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium4
1898 if test "$proc" = "core2" ; then
1899 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium-m
1901 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
1902 cc_check
-march=$proc $cpuopt=$proc || proc
=i686
1904 if test "$proc" = "i686" ||
test "$proc" = "pentium-mmx" ||
test "$proc" = "winchip-c6" ||
test "$proc" = "winchip2"; then
1905 cc_check
-march=$proc $cpuopt=$proc || proc
=i586
1907 if test "$proc" = "i586"; then
1908 cc_check
-march=$proc $cpuopt=$proc || proc
=i486
1910 if test "$proc" = "i486" ; then
1911 cc_check
-march=$proc $cpuopt=$proc || proc
=i386
1913 if test "$proc" = "i386" ; then
1914 cc_check
-march=$proc $cpuopt=$proc || proc
=error
1916 if test "$proc" = "error" ; then
1917 echores
"CPU optimization disabled. CPU not recognized or your compiler is too old."
1921 elif test "$proc" = "i586-i686"; then
1922 _march
="-march=i586"
1923 _mcpu
="$cpuopt=i686"
1926 _march
="-march=$proc"
1927 _mcpu
="$cpuopt=$proc"
1930 else # if test "$_runtime_cpudetection" = no
1931 _mcpu
="$cpuopt=generic"
1932 # at least i486 required, for bswap instruction
1933 _march
="-march=i486"
1934 cc_check
$_mcpu || _mcpu
="$cpuopt=i686"
1935 cc_check
$_mcpu || _mcpu
=""
1936 cc_check
$_march $_mcpu || _march
=""
1939 ## Gabucino : --target takes effect here (hopefully...) by overwriting
1940 ## autodetected mcpu/march parameters
1941 if test "$_target" ; then
1942 # TODO: it may be a good idea to check GCC and fall back in all cases
1943 if test "$host_arch" = "i586-i686"; then
1944 _march
="-march=i586"
1945 _mcpu
="$cpuopt=i686"
1947 _march
="-march=$host_arch"
1948 _mcpu
="$cpuopt=$host_arch"
1956 i586|k5|k6|k6-2|k6-3|pentium|pentium-mmx
) iproc
=586 ;;
1957 i686|athlon
*|pentium
*) iproc
=686 ;;
1962 if test $_cmov = "yes" && test $_fast_cmov = "auto" ; then
1973 _target_arch
='ARCH_IA64 = yes'
1974 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
1980 _target_subarch
='ARCH_X86_64 = yes'
1981 _target_arch
="ARCH_X86 = yes"
1982 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
1983 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
1986 # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
1987 if test "$cc_vendor" = "gnu" && test "$_cc_major" -gt 3 -o "$_cc_major" -eq 3 -a "$_cc_minor" -ge 4 ; then
1992 test $_fast_cmov = "auto" && _fast_cmov
=yes
1993 if test "$_runtime_cpudetection" = no
; then
2001 # 64-bit prescotts exist, but as far as GCC is concerned they
2002 # have the same capabilities as a nocona.
2010 fi # test "$_runtime_cpudetection" = no
2012 echocheck
"GCC & CPU optimization abilities"
2014 int main(void) { return 0; }
2016 # This is a stripped-down version of the i386 fallback.
2017 if test "$_runtime_cpudetection" = no
; then
2018 cc_check
-march=native
&& proc
=native
2019 # --- AMD processors ---
2020 if test "$proc" = "k8"; then
2021 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon-xp
2023 # This will fail if gcc version < 3.3, which is ok because earlier
2024 # versions don't really support 64-bit on amd64.
2025 # Is this a valid assumption? -Corey
2026 if test "$proc" = "athlon-xp"; then
2027 cc_check
-march=$proc $cpuopt=$proc || proc
=error
2029 # --- Intel processors ---
2030 if test "$proc" = "core2"; then
2031 cc_check
-march=$proc $cpuopt=$proc || proc
=nocona
2033 if test "$proc" = "nocona"; then
2034 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium4
2036 if test "$proc" = "pentium4"; then
2037 cc_check
-march=$proc $cpuopt=$proc || proc
=error
2040 _march
="-march=$proc"
2041 _mcpu
="$cpuopt=$proc"
2042 if test "$proc" = "error" ; then
2043 echores
"CPU optimization disabled. CPU not recognized or your compiler is too old."
2047 else # if test "$_runtime_cpudetection" = no
2048 # x86-64 is an undocumented option, an intersection of k8 and nocona.
2049 _march
="-march=x86-64"
2050 _mcpu
="$cpuopt=generic"
2051 cc_check
$_mcpu || _mcpu
="x86-64"
2052 cc_check
$_mcpu || _mcpu
=""
2053 cc_check
$_march $_mcpu || _march
=""
2063 _target_arch
='ARCH_SPARC = yes'
2065 if test "$host_arch" = "sparc64" ; then
2068 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
2070 echocheck
"CPU type"
2072 case "$(echo $karch)" in
2077 sun4u
) proc
=ultrasparc _vis
='yes' ;;
2089 arm|armv4l|armv5tel
)
2091 _target_arch
='ARCH_ARM = yes'
2097 _target_arch
='ARCH_AVR32 = yes'
2098 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
2104 _target_arch
='ARCH_SH4 = yes'
2108 ppc|ppc64|powerpc|powerpc64
)
2110 def_dcbzl
='#define HAVE_DCBZL 0'
2111 _target_arch
='ARCH_PPC = yes'
2112 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
2115 if test "$host_arch" = "ppc64" -o "$host_arch" = "powerpc64" ; then
2117 _target_subarch
='ARCH_PPC64 = yes'
2118 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
2120 echocheck
"CPU type"
2121 case $system_name in
2123 proc
=$
($_cpuinfo |
grep 'cpu' | cut
-d ':' -f 2 | cut
-d ',' -f 1 | cut
-b 2- |
head -n 1)
2124 if test -n "$($_cpuinfo | grep altivec)"; then
2125 test $_altivec = auto
&& _altivec
=yes
2129 proc
=$
($_cpuinfo |
grep "Processor type" | cut
-f 3 -d ' ' |
sed 's/ppc//')
2130 if [ $
(sysctl
-n hw.vectorunit
) -eq 1 -o \
2131 "$(sysctl -n hw.optional.altivec 2> /dev/null)" = "1" ]; then
2132 test $_altivec = auto
&& _altivec
=yes
2136 # only gcc 3.4 works reliably with AltiVec code under NetBSD
2138 2*|
3.0*|
3.1*|
3.2*|
3.3*)
2141 if [ $
(sysctl
-n machdep.altivec
) -eq 1 ]; then
2142 test $_altivec = auto
&& _altivec
=yes
2148 proc
=$
($_cpuinfo |
grep 'type' | cut
-f 2 -d ' ' |
sed 's/PowerPC_//')
2151 if test "$_altivec" = yes; then
2152 echores
"$proc altivec"
2158 echocheck
"GCC & CPU optimization abilities"
2160 if test -n "$proc"; then
2162 601) _march
='-mcpu=601' _mcpu
='-mtune=601' ;;
2163 603) _march
='-mcpu=603' _mcpu
='-mtune=603' ;;
2164 603e|
603ev
) _march
='-mcpu=603e' _mcpu
='-mtune=603e' ;;
2165 604|
604e|
604r|
604ev
) _march
='-mcpu=604' _mcpu
='-mtune=604' ;;
2166 740|
740/750|
745/755) _march
='-mcpu=740' _mcpu
='-mtune=740' ;;
2167 750|
750CX
) _march
='-mcpu=750' _mcpu
='-mtune=750' ;;
2168 POWER
) _march
='-mcpu=power' _mcpu
='-mtune=power' ;;
2169 POWER2
) _march
='-mcpu=power2' _mcpu
='-mtune=power2' ;;
2170 POWER3
) _march
='-mcpu=power3' _mcpu
='-mtune=power3' ;;
2173 # gcc 3.1(.1) and up supports 7400 and 7450
2174 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "1" ||
test "$_cc_major" -ge "4"; then
2176 7400*|
7410*) _march
='-mcpu=7400' _mcpu
='-mtune=7400' ;;
2177 7447*|
7450*|
7455*) _march
='-mcpu=7450' _mcpu
='-mtune=7450' ;;
2181 # gcc 3.2 and up supports 970
2182 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "3" ||
test "$_cc_major" -ge "4"; then
2184 970*|PPC970
*) _march
='-mcpu=970' _mcpu
='-mtune=970'
2185 def_dcbzl
='#define HAVE_DCBZL 1' ;;
2189 # gcc 3.3 and up supports POWER4
2190 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "3" ||
test "$_cc_major" -ge "4"; then
2192 POWER4
) _march
='-mcpu=power4' _mcpu
='-mtune=power4' ;;
2196 # gcc 3.4 and up supports 440*
2197 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "4" ||
test "$_cc_major" -ge "4"; then
2199 440EP
*) _march
='-mcpu=440fp' _mcpu
='-mtune=440fp' ;;
2200 440G
* ) _march
='-mcpu=440' _mcpu
='-mtune=440' ;;
2204 # gcc 4.0 and up supports POWER5
2205 if test "$_cc_major" -ge "4"; then
2207 POWER5
*) _march
='-mcpu=power5' _mcpu
='-mtune=power5' ;;
2213 if test -n "$_mcpu"; then
2214 _optimizing
=$
(echo $_mcpu | cut
-c 8-)
2215 echores
"$_optimizing"
2224 _target_arch
='ARCH_ALPHA = yes'
2226 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
2228 echocheck
"CPU type"
2231 unsigned long ver, mask;
2232 __asm__ ("implver %0" : "=r" (ver));
2233 __asm__ ("amask %1, %0" : "=r" (mask) : "r" (-1));
2234 printf("%ld-%x\n", ver, ~mask);
2238 $_cc -o "$TMPEXE" "$TMPC"
2239 case $
("$TMPEXE") in
2241 0-0) proc
="ev4"; _mvi
="0";;
2242 1-0) proc
="ev5"; _mvi
="0";;
2243 1-1) proc
="ev56"; _mvi
="0";;
2244 1-101) proc
="pca56"; _mvi
="1";;
2245 2-303) proc
="ev6"; _mvi
="1";;
2246 2-307) proc
="ev67"; _mvi
="1";;
2247 2-1307) proc
="ev68"; _mvi
="1";;
2251 echocheck
"GCC & CPU optimization abilities"
2252 if test "$proc" = "ev68" ; then
2253 cc_check
-mcpu=$proc || proc
=ev67
2255 if test "$proc" = "ev67" ; then
2256 cc_check
-mcpu=$proc || proc
=ev6
2266 _target_arch
='ARCH_SGI_MIPS = yes'
2270 echocheck
"CPU type"
2271 proc
=$
(hinv
-c processor |
grep CPU | cut
-d " " -f3)
2272 case "$(echo $proc)" in
2273 R3000
) _march
='-mips1' _mcpu
='-mtune=r2000' ;;
2274 R4000
) _march
='-mips3' _mcpu
='-mtune=r4000' ;;
2275 R4400
) _march
='-mips3' _mcpu
='-mtune=r4400' ;;
2276 R4600
) _march
='-mips3' _mcpu
='-mtune=r4600' ;;
2277 R5000
) _march
='-mips4' _mcpu
='-mtune=r5000' ;;
2278 R8000|R10000|R12000|R14000|R16000
) _march
='-mips4' _mcpu
='-mtune=r8000' ;;
2280 # gcc < 3.x does not support -mtune.
2281 if test "$cc_vendor" = "gnu" && test "$_cc_major" -lt 3 ; then
2291 _target_arch
='ARCH_PA_RISC = yes'
2297 _target_arch
='ARCH_S390 = yes'
2303 _target_arch
='ARCH_S390X = yes'
2309 _target_arch
='ARCH_VAX = yes'
2315 _target_arch
='ARCH_XTENSA = yes'
2321 _target_arch
='ARCH_GENERIC = yes'
2325 echo "The architecture of your CPU ($host_arch) is not supported by this configure script"
2326 echo "It seems nobody has ported MPlayer to your OS or CPU type yet."
2327 die
"unsupported architecture $host_arch"
2329 esac # case "$host_arch" in
2331 if test "$_runtime_cpudetection" = yes ; then
2333 test "$_cmov" != no
&& _cmov
=yes
2335 test "$_mmx" != no
&& _mmx
=yes
2336 test "$_3dnow" != no
&& _3dnow
=yes
2337 test "$_3dnowext" != no
&& _3dnowext
=yes
2338 test "$_mmxext" != no
&& _mmxext
=yes
2339 test "$_sse" != no
&& _sse
=yes
2340 test "$_sse2" != no
&& _sse2
=yes
2341 test "$_ssse3" != no
&& _ssse3
=yes
2342 test "$_mtrr" != no
&& _mtrr
=yes
2351 echocheck
"byte order"
2352 if test "$_big_endian" = auto
; then
2354 short ascii_name[] = { (('M'<<8)|'P'),(('l'<<8)|'a'),(('y'<<8)|'e'),(('r'<<8)|'B'),
2355 (('i'<<8)|'g'),(('E'<<8)|'n'),(('d'<<8)|'i'),(('a'<<8)|'n'),0};
2356 int main(void) { return (int)ascii_name; }
2359 if strings $TMPEXE |
grep -q -l MPlayerBigEndian
; then
2365 echo ${_echo_n} "failed to autodetect byte order, defaulting to ${_echo_c}"
2368 if test "$_big_endian" = yes ; then
2369 _byte_order
='big-endian'
2370 def_words_endian
='#define WORDS_BIGENDIAN 1'
2372 _byte_order
='little-endian'
2373 def_words_endian
='#undef WORDS_BIGENDIAN'
2375 echores
"$_byte_order"
2378 echocheck
"extern symbol prefix"
2382 cc_check
-c || die
"Symbol mangling check failed."
2383 sym
=$
($_nm -P -g $TMPEXE)
2384 extern_prefix
=${sym%%ff_extern*}
2385 def_extern_prefix
="#define EXTERN_PREFIX \"$extern_prefix\""
2386 echores
$extern_prefix
2389 echocheck
"assembler support of -pipe option"
2391 int main(void) { return 0; }
2393 cc_check
-pipe && _pipe
="-pipe" && echores
"yes" || echores
"no"
2396 echocheck
"compiler support of named assembler arguments"
2398 def_named_asm_args
="#define NAMED_ASM_ARGS 1"
2399 if test "$cc_vendor" = "gnu" && test "$_cc_major" -lt 3 \
2400 -o "$_cc_major" -eq 3 -a "$_cc_minor" = 0 ; then
2402 def_named_asm_args
="#undef NAMED_ASM_ARGS"
2404 echores
$_named_asm_args
2407 if darwin
&& test "$cc_vendor" = "gnu" ; then
2408 echocheck
"GCC support of -mstackrealign"
2409 # GCC 4.2 and some earlier Apple versions support this flag on x86. Since
2410 # Mac OS X/Intel has an ABI different from Windows this is needed to avoid
2411 # crashes when loading Win32 DLLs. Unfortunately some gcc versions create
2412 # wrong code with this flag, but this can be worked around by adding
2413 # -fno-unit-at-a-time as described in the blog post at
2414 # http://www.dribin.org/dave/blog/archives/2006/12/05/missing_third_param/
2416 __attribute__((noinline)) static int foo3(int i1, int i2, int i3) { return i3; }
2417 int main(void) { return foo3(1,2,3) == 3 ? 0 : 1; }
2419 cc_check
-O4 -mstackrealign && tmp_run
&& cflags_stackrealign
=-mstackrealign
2420 test -z "$cflags_stackrealign" && cc_check
-O4 -mstackrealign -fno-unit-at-a-time \
2421 && tmp_run
&& cflags_stackrealign
="-mstackrealign -fno-unit-at-a-time"
2422 test -n "$cflags_stackrealign" && echores
"yes" || echores
"no"
2423 fi # if darwin && test "$cc_vendor" = "gnu" ; then
2426 # Checking for CFLAGS
2428 if test "$_profile" != "" ||
test "$_debug" != "" ; then
2429 CFLAGS
="-W -Wall -O2 $_march $_mcpu $_pipe $_debug $_profile"
2431 elif test -z "$CFLAGS" ; then
2432 if test "$cc_vendor" = "intel" ; then
2433 CFLAGS
="-O2 $_march $_mcpu $_pipe -fomit-frame-pointer -wd167 -wd556 -wd144"
2434 elif test "$cc_vendor" != "gnu" ; then
2435 CFLAGS
="-O2 $_march $_mcpu $_pipe"
2437 CFLAGS
="-Wall -Wno-switch -Wpointer-arith -Wredundant-decls -O4 $_march $_mcpu $_pipe -ffast-math -fomit-frame-pointer"
2438 extra_ldflags
="$extra_ldflags -ffast-math"
2445 int main(void) { return 0; }
2447 if test "$cc_vendor" = "gnu" ; then
2448 cc_check
-std=gnu99
&& CFLAGS
="-std=gnu99 $CFLAGS"
2449 cc_check
-Wno-pointer-sign && CFLAGS
="-Wno-pointer-sign $CFLAGS"
2450 cc_check
-Wdisabled-optimization && CFLAGS
="-Wdisabled-optimization $CFLAGS"
2451 cc_check
-Wundef && CFLAGS
="-Wundef $CFLAGS"
2453 CFLAGS
="-D_ISOC99_SOURCE -D_BSD_SOURCE $CFLAGS"
2456 cc_check
-mno-omit-leaf-frame-pointer && cflags_no_omit_leaf_frame_pointer
="-mno-omit-leaf-frame-pointer"
2459 if test -n "$LDFLAGS" ; then
2460 extra_ldflags
="$extra_ldflags $LDFLAGS"
2462 elif test "$cc_vendor" = "intel" ; then
2463 extra_ldflags
="$extra_ldflags -i-static"
2465 if test -n "$CPPFLAGS" ; then
2466 extra_cflags
="$extra_cflags $CPPFLAGS"
2473 # Checking assembler (_as) compatibility...
2474 # Added workaround for older as that reads from stdin by default - atmos
2475 as_version
=$
(echo '' |
$_as -version 2>&1 |
sed -n 's/^.*assembler \(version \)*\([0-9.]*\).*$/\2/p')
2476 echocheck
"assembler ($_as $as_version)"
2478 _pref_as_version
='2.9.1'
2480 if test "$_mmx" = yes ; then
2481 echo 'emms' >> $TMPS
2483 if test "$_3dnow" = yes ; then
2484 _pref_as_version
='2.10.1'
2485 echo 'femms' >> $TMPS
2487 if test "$_3dnowext" = yes ; then
2488 _pref_as_version
='2.10.1'
2489 echo 'pswapd %mm0, %mm0' >> $TMPS
2491 if test "$_mmxext" = yes ; then
2492 _pref_as_version
='2.10.1'
2493 echo 'movntq %mm0, (%eax)' >> $TMPS
2495 if test "$_sse" = yes ; then
2496 _pref_as_version
='2.10.1'
2497 echo 'xorps %xmm0, %xmm0' >> $TMPS
2499 #if test "$_sse2" = yes ; then
2500 # _pref_as_version='2.11'
2501 # echo 'xorpd %xmm0, %xmm0' >> $TMPS
2503 if test "$_cmov" = yes ; then
2504 _pref_as_version
='2.10.1'
2505 echo 'cmovb %eax, %ebx' >> $TMPS
2507 if test "$_ssse3" = yes ; then
2508 _pref_as_version
='2.16.92'
2509 echo 'pabsd %xmm0, %xmm1' >> $TMPS
2511 $_as $TMPS -o $TMPEXE > /dev
/null
2>&1 || as_verc_fail
=yes
2513 if test "$as_verc_fail" != yes ; then
2516 _res_comment
="Upgrade binutils to ${_pref_as_version} or use --disable-ssse3 etc."
2518 die
"obsolete binutils version"
2523 echocheck
".align is a power of two"
2524 if test "$_asmalign_pot" = auto
; then
2527 int main(void) { __asm__ (".align 3"); return 0; }
2529 cc_check
&& _asmalign_pot
=yes
2531 if test "$_asmalign_pot" = "yes" ; then
2532 def_asmalign_pot
='#define ASMALIGN(ZEROBITS) ".align " #ZEROBITS "\n\t"'
2534 def_asmalign_pot
='#define ASMALIGN(ZEROBITS) ".align 1<<" #ZEROBITS "\n\t"'
2536 echores
$_asmalign_pot
2539 echocheck
"10 assembler operands"
2541 def_ten_operands
='#define HAVE_TEN_OPERANDS 0'
2547 :"+&rm"(x), "+&rm"(x), "+&rm"(x), "+&rm"(x), "+&rm"(x), "+&rm"(x)
2552 cc_check
&& ten_operands
=yes && def_ten_operands
='#define HAVE_TEN_OPERANDS 1'
2553 echores
$ten_operands
2556 if test -z "$YASMFLAGS" ; then
2558 x86_64
&& objformat
="macho64" || objformat
="macho"
2564 # currently tested for Linux x86, x86_64
2565 YASMFLAGS
="-f $objformat"
2566 x86_64
&& YASMFLAGS
="$YASMFLAGS -DARCH_X86_64 -m amd64"
2567 case "$objformat" in
2568 elf
) test $_debug && YASMFLAGS
="$YASMFLAGS -g dwarf2" ;;
2569 macho64
) YASMFLAGS
="$YASMFLAGS -DPIC -DPREFIX" ;;
2570 *) YASMFLAGS
="$YASMFLAGS -DPREFIX" ;;
2576 echo "pabsw xmm0, xmm0" > $TMPS
2577 yasm_check || _yasm
=""
2578 if test $_yasm ; then
2579 test "$_mmx" = "yes" && fft_mmx
="yes"
2580 def_yasm
='#define HAVE_YASM 1'
2584 def_yasm
='#define HAVE_YASM 0'
2591 def_bswap
='#define HAVE_BSWAP 0'
2592 echo 'bswap %eax' > $TMPS
2593 $_as $TMPS -o $TMPEXE > /dev
/null
2>&1 && def_bswap
='#define HAVE_BSWAP 1' && bswap
=yes || bswap
=no
2598 #FIXME: This should happen before the check for CFLAGS..
2599 def_altivec_h
='#define HAVE_ALTIVEC_H 0'
2600 if ppc
&& ( test "$_altivec" = yes ||
test "$_runtime_cpudetection" = yes ) ; then
2602 # check if AltiVec is supported by the compiler, and how to enable it
2603 echocheck
"GCC AltiVec flags"
2605 int main(void) { return 0; }
2607 if $
(cc_check
-maltivec -mabi=altivec
) ; then
2608 _altivec_gcc_flags
="-maltivec -mabi=altivec"
2609 # check if <altivec.h> should be included
2611 #include <altivec.h>
2612 int main(void) { return 0; }
2614 if $
(cc_check
$_altivec_gcc_flags) ; then
2615 def_altivec_h
='#define HAVE_ALTIVEC_H 1'
2616 inc_altivec_h
='#include <altivec.h>'
2619 int main(void) { return 0; }
2621 if $
(cc_check
-faltivec) ; then
2622 _altivec_gcc_flags
="-faltivec"
2625 _altivec_gcc_flags
="none, AltiVec disabled"
2629 echores
"$_altivec_gcc_flags"
2631 # check if the compiler supports braces for vector declarations
2634 int main(void) { (vector int) {1}; return 0; }
2636 cc_check
$_altivec_gcc_flags || die
"You need a compiler that supports {} in AltiVec vector declarations."
2638 # Disable runtime cpudetection if we cannot generate AltiVec code or
2639 # AltiVec is disabled by the user.
2640 test "$_runtime_cpudetection" = yes && test "$_altivec" = no \
2641 && _runtime_cpudetection
=no
2643 # Show that we are optimizing for AltiVec (if enabled and supported).
2644 test "$_runtime_cpudetection" = no
&& test "$_altivec" = yes \
2645 && _optimizing
="$_optimizing altivec"
2647 # If AltiVec is enabled, make sure the correct flags turn up in CFLAGS.
2648 test "$_altivec" = yes && CFLAGS
="$CFLAGS $_altivec_gcc_flags"
2652 def_xform_asm
='#define HAVE_XFORM_ASM 0'
2654 echocheck
"XFORM ASM support"
2656 int main(void) { __asm__ volatile ("lwzx 0, %y0" :: "Z"(*(int*)0)); return 0; }
2658 cc_check
&& xform_asm
=yes && def_xform_asm
='#define HAVE_XFORM_ASM 1'
2659 echores
"$xform_asm"
2663 echocheck
"ARM pld instruction"
2665 int main(void) { __asm__ volatile ("pld [r0]"); return 0; }
2671 echocheck
"ARMv5TE (Enhanced DSP Extensions)"
2672 if test $_armv5te = "auto" ; then
2674 int main(void) { __asm__ volatile ("qadd r0, r0, r0"); return 0; }
2677 cc_check
&& _armv5te
=yes
2681 echocheck
"ARMv6 (SIMD instructions)"
2682 if test $_armv6 = "auto" ; then
2684 int main(void) { __asm__ volatile ("sadd16 r0, r0, r0"); return 0; }
2687 cc_check
&& _armv6
=yes
2691 echocheck
"ARMv6t2 (SIMD instructions)"
2692 if test $_armv6t2 = "auto" ; then
2694 int main(void) { __asm__ volatile ("movt r0, #0"); return 0; }
2697 cc_check
&& _armv6t2
=yes
2702 if test $_armvfp = "auto" ; then
2704 int main(void) { __asm__ volatile ("fadds s0, s0, s0"); return 0; }
2707 cc_check
&& _armvfp
=yes
2711 echocheck
"iWMMXt (Intel XScale SIMD instructions)"
2712 if test $_iwmmxt = "auto" ; then
2714 int main(void) { __asm__ volatile ("wunpckelub wr6, wr4"); return 0; }
2717 cc_check
&& _iwmmxt
=yes
2722 _cpuexts_all
='ALTIVEC MMX MMX2 AMD3DNOW AMD3DNOWEXT SSE SSE2 SSSE3 FAST_CMOV CMOV PLD ARMV5TE ARMV6 ARMV6T2 ARMVFP IWMMXT MMI VIS MVI'
2723 test "$_altivec" = yes && _cpuexts
="ALTIVEC $_cpuexts"
2724 test "$_mmx" = yes && _cpuexts
="MMX $_cpuexts"
2725 test "$_mmxext" = yes && _cpuexts
="MMX2 $_cpuexts"
2726 test "$_3dnow" = yes && _cpuexts
="AMD3DNOW $_cpuexts"
2727 test "$_3dnowext" = yes && _cpuexts
="AMD3DNOWEXT $_cpuexts"
2728 test "$_sse" = yes && _cpuexts
="SSE $_cpuexts"
2729 test "$_sse2" = yes && _cpuexts
="SSE2 $_cpuexts"
2730 test "$_ssse3" = yes && _cpuexts
="SSSE3 $_cpuexts"
2731 test "$_cmov" = yes && _cpuexts
="CMOV $_cpuexts"
2732 test "$_fast_cmov" = yes && _cpuexts
="FAST_CMOV $_cpuexts"
2733 test "$pld" = yes && _cpuexts
="PLD $_cpuexts"
2734 test "$_armv5te" = yes && _cpuexts
="ARMV5TE $_cpuexts"
2735 test "$_armv6" = yes && _cpuexts
="ARMV6 $_cpuexts"
2736 test "$_armv6t2" = yes && _cpuexts
="ARMV6T2 $_cpuexts"
2737 test "$_armvfp" = yes && _cpuexts
="ARMVFP $_cpuexts"
2738 test "$_iwmmxt" = yes && _cpuexts
="IWMMXT $_cpuexts"
2739 test "$_vis" = yes && _cpuexts
="VIS $_cpuexts"
2740 test "$_mvi" = yes && _cpuexts
="MVI $_cpuexts"
2742 # Checking kernel version...
2743 if x86_32
&& linux
; then
2745 kernel_version
=$
(uname
-r 2>&1)
2746 echocheck
"$system_name kernel version"
2747 case "$kernel_version" in
2748 '') kernel_version
="?.??"; _k_verc_fail
=yes;;
2749 [0-1].
[0-9].
[0-9]*|
2.
[0-3].
[0-9]*)
2750 _k_verc_problem
=yes;;
2752 if test "$_k_verc_problem" = yes && test "$_sse" = yes ; then
2755 if test "$_k_verc_fail" ; then
2756 echores
"$kernel_version, fail"
2757 echo "WARNING! If you want to run MPlayer on this system, get prepared for problems!"
2758 echo "2.2.x has limited SSE support. Upgrade the kernel or use --disable-sse if you"
2759 echo "experience crashes. MPlayer tries to autodetect if your kernel correctly"
2760 echo "supports SSE, but you have been warned! If you are using a kernel older than"
2761 echo "2.2.x you must upgrade it to get SSE support!"
2762 # die "Your kernel is too old for this CPU." # works fine on some 2.2.x so don't die (later check will test)
2764 echores
"$kernel_version, ok"
2768 ######################
2769 # MAIN TESTS GO HERE #
2770 ######################
2775 int main(void) { return 0; }
2777 if cc_check
-lposix ; then
2778 extra_ldflags
="$extra_ldflags -lposix"
2786 int main(void) { return 0; }
2788 if cc_check
-lm ; then
2797 echocheck
"langinfo"
2798 if test "$_langinfo" = auto
; then
2800 #include <langinfo.h>
2801 int main(void) { nl_langinfo(CODESET); return 0; }
2804 cc_check
&& _langinfo
=yes
2806 if test "$_langinfo" = yes ; then
2807 def_langinfo
='#define HAVE_LANGINFO 1'
2809 def_langinfo
='#undef HAVE_LANGINFO'
2811 echores
"$_langinfo"
2814 echocheck
"language"
2815 # Set preferred languages, "all" uses English as main language.
2816 test -z "$language" && language
=$LINGUAS
2817 test -z "$language_doc" && language_doc
=$language
2818 test -z "$language_man" && language_man
=$language
2819 test -z "$language_msg" && language_msg
=$language
2820 language_doc
=$
(echo $language_doc |
tr , " ")
2821 language_man
=$
(echo $language_man |
tr , " ")
2822 language_msg
=$
(echo $language_msg |
tr , " ")
2824 test "$language_doc" = "all" && language_doc
=$doc_lang_all
2825 test "$language_man" = "all" && language_man
=$man_lang_all
2826 test "$language_msg" = "all" && language_msg
=en
2828 # Prune non-existing translations from language lists.
2829 # Set message translation to the first available language.
2830 # Fall back on English.
2831 for lang
in $language_doc ; do
2832 test -d DOCS
/xml
/$lang && tmp_language_doc
="$tmp_language_doc $lang"
2834 language_doc
=$tmp_language_doc
2835 test -z "$language_doc" && language_doc
=en
2837 for lang
in $language_man ; do
2838 test -d DOCS
/man
/$lang && tmp_language_man
="$tmp_language_man $lang"
2840 language_man
=$tmp_language_man
2841 test -z "$language_man" && language_man
=en
2843 for lang
in $language_msg ; do
2844 test -f "help/help_mp-${lang}.h" && language_msg
=$lang && break
2846 test -z "$language_msg" && language_msg
=en
2847 _mp_help
="help/help_mp-${language_msg}.h"
2848 echores
"messages: $language_msg - man pages: $language_man - documentation: $language_doc"
2851 echocheck
"enable sighandler"
2852 if test "$_sighandler" = yes ; then
2853 def_sighandler
='#define CONFIG_SIGHANDLER 1'
2855 def_sighandler
='#undef CONFIG_SIGHANDLER'
2857 echores
"$_sighandler"
2859 echocheck
"runtime cpudetection"
2860 if test "$_runtime_cpudetection" = yes ; then
2861 _optimizing
="Runtime CPU-Detection enabled"
2862 def_runtime_cpudetection
='#define CONFIG_RUNTIME_CPUDETECT 1'
2864 def_runtime_cpudetection
='#define CONFIG_RUNTIME_CPUDETECT 0'
2866 echores
"$_runtime_cpudetection"
2869 echocheck
"restrict keyword"
2870 for restrict_keyword
in restrict __restrict __restrict__
; do
2871 echo "void foo(char * $restrict_keyword p); int main(void) { return 0; }" > $TMPC
2873 def_restrict_keyword
=$restrict_keyword
2877 if [ -n "$def_restrict_keyword" ]; then
2878 echores
"$def_restrict_keyword"
2882 # Avoid infinite recursion loop ("#define restrict restrict")
2883 if [ "$def_restrict_keyword" != "restrict" ]; then
2884 def_restrict_keyword
="#define restrict $def_restrict_keyword"
2886 def_restrict_keyword
=""
2890 echocheck
"__builtin_expect"
2891 # GCC branch prediction hint
2894 a = __builtin_expect(a, 10);
2895 return a == 10 ? 0 : 1;
2897 int main(void) { return foo(10) && foo(0); }
2900 cc_check
&& _builtin_expect
=yes
2901 if test "$_builtin_expect" = yes ; then
2902 def_builtin_expect
='#define HAVE_BUILTIN_EXPECT 1'
2904 def_builtin_expect
='#undef HAVE_BUILTIN_EXPECT'
2906 echores
"$_builtin_expect"
2912 int main(void) { (void) kstat_open(); (void) kstat_close(0); return 0; }
2915 cc_check
-lkstat && _kstat
=yes
2916 if test "$_kstat" = yes ; then
2917 def_kstat
="#define HAVE_LIBKSTAT 1"
2918 extra_ldflags
="$extra_ldflags -lkstat"
2920 def_kstat
="#undef HAVE_LIBKSTAT"
2926 # required for nanosleep on some systems
2929 int main(void) { (void) nanosleep(0, 0); return 0; }
2932 cc_check
-lposix4 && _posix4
=yes
2933 if test "$_posix4" = yes ; then
2934 extra_ldflags
="$extra_ldflags -lposix4"
2938 for func
in llrint lrint lrintf round roundf truncf
; do
2942 int main(void) { long (*foo)(float); foo = $func; (void)(*foo)(0.0); return 0; }
2945 cc_check
-D_ISOC99_SOURCE $_ld_lm && eval _
$func=yes
2946 if eval test "x\$_$func" = "xyes"; then
2947 eval def_
$func="\"#define HAVE_$(echo $func | tr '[a-z]' '[A-Z]') 1\""
2950 eval def_
$func="\"#define HAVE_$(echo $func | tr '[a-z]' '[A-Z]') 0\""
2959 int main(void) { char a; mkstemp(&a); return 0; }
2962 cc_check
&& _mkstemp
=yes
2963 if test "$_mkstemp" = yes ; then
2964 def_mkstemp
='#define HAVE_MKSTEMP 1'
2966 def_mkstemp
='#undef HAVE_MKSTEMP'
2971 echocheck
"nanosleep"
2972 # also check for nanosleep
2975 int main(void) { (void) nanosleep(0, 0); return 0; }
2978 cc_check
&& _nanosleep
=yes
2979 if test "$_nanosleep" = yes ; then
2980 def_nanosleep
='#define HAVE_NANOSLEEP 1'
2982 def_nanosleep
='#undef HAVE_NANOSLEEP'
2984 echores
"$_nanosleep"
2988 # for Solaris (socket stuff is in -lsocket, gethostbyname and friends in -lnsl):
2989 # for BeOS (socket stuff is in -lsocket, gethostbyname and friends in -lbind):
2992 #include <sys/socket.h>
2993 int main(void) { (void) gethostbyname(0); (void) socket(AF_INET, SOCK_STREAM, 0); return 0; }
2996 for _ld_tmp
in "" "-lsocket -lbind" "-lsocket -ldnet" "-lsocket -lnsl" "-lnsl" "-lsocket" ; do
2997 cc_check
$_ld_tmp && _ld_sock
="$_ld_tmp" && _socklib
=yes && break
2999 if test $_winsock2_h = auto
&& ! cygwin
; then
3002 #include <winsock2.h>
3003 int main(void) { (void) gethostbyname(0); return 0; }
3005 cc_check
-lws2_32 && _ld_sock
="-lws2_32" && _winsock2_h
=yes
3007 test "$_ld_sock" && _res_comment
="using $_ld_sock"
3011 if test $_winsock2_h = yes ; then
3013 def_winsock2_h
='#define HAVE_WINSOCK2_H 1'
3015 def_winsock2_h
='#define HAVE_WINSOCK2_H 0'
3019 echocheck
"arpa/inet.h"
3021 def_arpa_inet_h
='#define HAVE_ARPA_INET_H 0'
3023 #include <arpa/inet.h>
3024 int main(void) { return 0; }
3026 cc_check
&& arpa_inet_h
=yes && def_arpa_inet_h
='#define HAVE_ARPA_INET_H 1'
3027 echores
"$arpa_inet_h"
3030 echocheck
"inet_pton()"
3031 def_inet_pton
='#define HAVE_INET_PTON 0'
3034 #include <sys/types.h>
3035 #include <sys/socket.h>
3036 #include <arpa/inet.h>
3037 int main(void) { (void) inet_pton(0, 0, 0); return 0; }
3039 for _ld_tmp
in "$_ld_sock" "$_ld_sock -lresolv" ; do
3040 cc_check
$_ld_tmp && inet_pton
=yes && break
3042 if test $inet_pton = yes ; then
3043 test $_ld_tmp && _res_comment
="using $_ld_tmp"
3044 def_inet_pton
='#define HAVE_INET_PTON 1'
3046 echores
"$inet_pton"
3049 echocheck
"inet_aton()"
3050 def_inet_aton
='#define HAVE_INET_ATON 0'
3053 #include <sys/types.h>
3054 #include <sys/socket.h>
3055 #include <arpa/inet.h>
3056 int main(void) { (void) inet_aton(0, 0); return 0; }
3058 for _ld_tmp
in "$_ld_sock" "$_ld_sock -lresolv" ; do
3059 cc_check
$_ld_tmp && inet_aton
=yes && break
3061 if test $inet_aton = yes ; then
3062 test $_ld_tmp && _res_comment
="using $_ld_tmp"
3063 def_inet_aton
='#define HAVE_INET_ATON 1'
3065 echores
"$inet_aton"
3068 echocheck
"socklen_t"
3070 for header
in "sys/socket.h" "ws2tcpip.h" "sys/types.h" ; do
3073 int main(void) { socklen_t v = 0; return v; }
3075 cc_check
&& _socklen_t
=yes && break
3077 if test "$_socklen_t" = yes ; then
3078 def_socklen_t
='#define HAVE_SOCKLEN_T 1'
3080 def_socklen_t
='#define HAVE_SOCKLEN_T 0'
3082 echores
"$_socklen_t"
3085 echocheck
"closesocket()"
3088 #include <winsock2.h>
3089 int main(void) { closesocket(~0); return 0; }
3091 cc_check
$_ld_sock && _closesocket
=yes
3092 if test "$_closesocket" = yes ; then
3093 def_closesocket
='#define HAVE_CLOSESOCKET 1'
3095 def_closesocket
='#define HAVE_CLOSESOCKET 0'
3097 echores
"$_closesocket"
3101 test $_winsock2_h = no
&& test $inet_pton = no
&&
3102 test $inet_aton = no
&& _network
=no
3103 if test "$_network" = yes ; then
3104 def_network
='#define CONFIG_NETWORK 1'
3105 extra_ldflags
="$extra_ldflags $_ld_sock"
3106 _inputmodules
="network $_inputmodules"
3108 _noinputmodules
="network $_noinputmodules"
3109 def_network
='#undef CONFIG_NETWORK'
3116 if test "$_inet6" = auto
; then
3118 #include <sys/types.h>
3119 #if !defined(_WIN32) || defined(__CYGWIN__)
3120 #include <sys/socket.h>
3121 #include <netinet/in.h>
3123 #include <ws2tcpip.h>
3125 int main(void) { struct sockaddr_in6 six; socket(AF_INET6, SOCK_STREAM, AF_INET6); return 0; }
3128 if cc_check
$_ld_sock ; then
3132 if test "$_inet6" = yes ; then
3133 def_inet6
='#define HAVE_AF_INET6 1'
3135 def_inet6
='#undef HAVE_AF_INET6'
3140 echocheck
"gethostbyname2"
3141 if test "$_gethostbyname2" = auto
; then
3143 #include <sys/types.h>
3144 #include <sys/socket.h>
3146 int main(void) { gethostbyname2("", AF_INET); return 0; }
3153 if test "$_gethostbyname2" = yes ; then
3154 def_gethostbyname2
='#define HAVE_GETHOSTBYNAME2 1'
3156 def_gethostbyname2
='#undef HAVE_GETHOSTBYNAME2'
3158 echores
"$_gethostbyname2"
3161 echocheck
"inttypes.h (required)"
3163 #include <inttypes.h>
3164 int main(void) { return 0; }
3167 cc_check
&& _inttypes
=yes
3168 echores
"$_inttypes"
3170 if test "$_inttypes" = no
; then
3171 echocheck
"bitypes.h (inttypes.h predecessor)"
3173 #include <sys/bitypes.h>
3174 int main(void) { return 0; }
3176 cc_check
&& _inttypes
=yes
3177 if test "$_inttypes" = yes ; then
3178 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."
3180 die
"Cannot find header either inttypes.h or bitypes.h. There is no chance for compilation to succeed."
3185 echocheck
"int_fastXY_t in inttypes.h"
3187 #include <inttypes.h>
3189 volatile int_fast16_t v= 0;
3193 cc_check
&& _fast_inttypes
=yes
3194 if test "$_fast_inttypes" = no
; then
3196 typedef signed char int_fast8_t;
3197 typedef signed int int_fast16_t;
3198 typedef signed int int_fast32_t;
3199 typedef signed long long int_fast64_t;
3200 typedef unsigned char uint_fast8_t;
3201 typedef unsigned int uint_fast16_t;
3202 typedef unsigned int uint_fast32_t;
3203 typedef unsigned long long uint_fast64_t;'
3205 echores
"$_fast_inttypes"
3208 echocheck
"malloc.h"
3211 int main(void) { (void) malloc(0); return 0; }
3214 cc_check
&& _malloc
=yes
3215 if test "$_malloc" = yes ; then
3216 def_malloc_h
='#define HAVE_MALLOC_H 1'
3218 def_malloc_h
='#define HAVE_MALLOC_H 0'
3220 # malloc.h emits a warning in FreeBSD and OpenBSD
3221 freebsd || openbsd || dragonfly
&& def_malloc_h
='#define HAVE_MALLOC_H 0'
3225 echocheck
"memalign()"
3226 # XXX restrict to x86 ? extend to other CPUs/cacheline sizes ?
3227 def_memalign_hack
='#define CONFIG_MEMALIGN_HACK 0'
3230 int main(void) { (void) memalign(64, sizeof(char)); return 0; }
3233 cc_check
&& _memalign
=yes
3234 if test "$_memalign" = yes ; then
3235 def_memalign
='#define HAVE_MEMALIGN 1'
3237 def_memalign
='#define HAVE_MEMALIGN 0'
3238 def_map_memalign
='#define memalign(a,b) malloc(b)'
3239 darwin || def_memalign_hack
='#define CONFIG_MEMALIGN_HACK 1'
3241 echores
"$_memalign"
3244 echocheck
"posix_memalign()"
3246 def_posix_memalign
='#define HAVE_POSIX_MEMALIGN 0'
3248 #define _XOPEN_SOURCE 600
3250 int main(void) { posix_memalign(NULL, 0, 0); }
3252 cc_check
&& posix_memalign
=yes && def_posix_memalign
='#define HAVE_POSIX_MEMALIGN 1'
3253 echores
"$posix_memalign"
3256 echocheck
"alloca.h"
3259 int main(void) { (void) alloca(0); return 0; }
3262 cc_check
&& _alloca
=yes
3264 def_alloca_h
='#define HAVE_ALLOCA_H 1'
3266 def_alloca_h
='#undef HAVE_ALLOCA_H'
3271 echocheck
"fastmemcpy"
3272 if test "$_fastmemcpy" = yes ; then
3273 def_fastmemcpy
='#define CONFIG_FASTMEMCPY 1'
3275 def_fastmemcpy
='#undef CONFIG_FASTMEMCPY'
3277 echores
"$_fastmemcpy"
3282 #include <sys/types.h>
3283 #include <sys/mman.h>
3284 int main(void) { (void) mmap(0, 0, 0, 0, 0, 0); return 0; }
3287 cc_check
&& _mman
=yes
3288 if test "$_mman" = yes ; then
3289 def_mman_h
='#define HAVE_SYS_MMAN_H 1'
3291 def_mman_h
='#undef HAVE_SYS_MMAN_H'
3292 os2
&& _need_mmap
=yes
3297 #include <sys/types.h>
3298 #include <sys/mman.h>
3299 int main(void) { void *p = MAP_FAILED; return 0; }
3301 _mman_has_map_failed
=no
3302 cc_check
&& _mman_has_map_failed
=yes
3303 if test "$_mman_has_map_failed" = yes ; then
3304 def_mman_has_map_failed
=''
3306 def_mman_has_map_failed
='#define MAP_FAILED ((void *) -1)'
3309 echocheck
"dynamic loader"
3313 int main(void) { dlopen(NULL, 0); dlclose(NULL); dlsym(NULL, NULL); return 0; }
3316 for _ld_tmp
in "" "-ldl" ; do
3317 cc_check
$_ld_tmp && _ld_dl
="$_ld_tmp" && _dl
=yes && break
3319 if test "$_dl" = yes ; then
3320 def_dl
='#define HAVE_LIBDL 1'
3322 def_dl
='#undef HAVE_LIBDL'
3327 echocheck
"dynamic a/v plugins support"
3328 if test "$_dl" = no
; then
3331 if test "$_dynamic_plugins" = yes ; then
3332 def_dynamic_plugins
='#define CONFIG_DYNAMIC_PLUGINS 1'
3334 def_dynamic_plugins
='#undef CONFIG_DYNAMIC_PLUGINS'
3336 echores
"$_dynamic_plugins"
3339 def_threads
='#define HAVE_THREADS 0'
3343 THREAD_CFLAGS
=-D_REENTRANT
3344 elif freebsd || netbsd || openbsd || bsdos
; then
3345 THREAD_CFLAGS
=-D_THREAD_SAFE
3347 if test "$_pthreads" = auto
; then
3349 #include <pthread.h>
3350 void* func(void *arg) { return arg; }
3351 int main(void) { pthread_t tid; return pthread_create(&tid, 0, func, 0) == 0 ? 0 : 1; }
3355 for _ld_tmp
in "-lpthreadGC2" "" "-lpthread" "-pthread" ; do
3356 # for crosscompilation, we cannot execute the program, be happy if we can link statically
3357 cc_check
$THREAD_CFLAGS $_ld_tmp && (tmp_run ||
test "$_ld_static") && _ld_pthread
="$_ld_tmp" && _pthreads
=yes && break
3361 if test "$_pthreads" = yes ; then
3362 test $_ld_pthread && _res_comment
="using $_ld_pthread"
3363 def_pthreads
='#define HAVE_PTHREADS 1'
3364 def_threads
='#define HAVE_THREADS 1'
3365 extra_cflags
="$extra_cflags $THREAD_CFLAGS"
3367 _res_comment
="v4l, v4l2, ao_nas, win32 loader disabled"
3368 def_pthreads
='#undef HAVE_PTHREADS'
3369 _nas
=no
; _tv_v4l1
=no
; _tv_v4l2
=no
3370 mingw32 || _win32dll
=no
3372 echores
"$_pthreads"
3375 if test "$_pthreads" = yes ; then
3376 def_pthread_cache
="#define PTHREAD_CACHE 1"
3379 def_stream_cache
="#undef CONFIG_STREAM_CACHE"
3383 echocheck
"w32threads"
3384 if test "$_pthreads" = yes ; then
3385 _res_comment
="using pthread instead"
3388 if test "$_w32threads" = auto
; then
3390 mingw32
&& _w32threads
=yes
3392 test "$_w32threads" = yes && def_threads
='#define HAVE_THREADS 1'
3393 echores
"$_w32threads"
3397 if test "$_rpath" = yes ; then
3398 for I
in $
(echo $extra_ldflags |
sed 's/-L//g') ; do
3399 tmp
="$tmp $(echo $I | sed 's/.*/ -L& -Wl,-R&/')"
3406 if test "$_iconv" = auto
; then
3411 #define INBUFSIZE 1024
3412 #define OUTBUFSIZE 4096
3414 char inbuffer[INBUFSIZE];
3415 char outbuffer[OUTBUFSIZE];
3420 char *tocode="UTF-8";
3421 char *fromcode="cp1250";
3422 if ((icdsc = iconv_open(tocode, fromcode)) != (iconv_t)(-1)) {
3423 while ((numread = read(0, inbuffer, INBUFSIZE))) {
3424 char *iptr=inbuffer;
3425 char *optr=outbuffer;
3426 size_t inleft=numread;
3427 size_t outleft=OUTBUFSIZE;
3428 if (iconv(icdsc, (const char **)&iptr, &inleft, &optr, &outleft)
3430 write(1, outbuffer, OUTBUFSIZE - outleft);
3433 if (iconv_close(icdsc) == -1)
3440 for _ld_tmp
in "" "-liconv" "-liconv $_ld_dl" ; do
3441 cc_check
$_ld_lm $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && \
3445 if test "$_iconv" = yes ; then
3446 def_iconv
='#define CONFIG_ICONV 1'
3448 def_iconv
='#undef CONFIG_ICONV'
3453 echocheck
"soundcard.h"
3455 def_soundcard_h
='#undef HAVE_SOUNDCARD_H'
3456 def_sys_soundcard_h
='#undef HAVE_SYS_SOUNDCARD_H'
3457 for _soundcard_header
in "sys/soundcard.h" "soundcard.h"; do
3459 #include <$_soundcard_header>
3460 int main(void) { return 0; }
3462 cc_check
&& _soundcard_h
=yes && _res_comment
="$_soundcard_header" && break
3465 if test "$_soundcard_h" = yes ; then
3466 if test $_soundcard_header = "sys/soundcard.h"; then
3467 def_sys_soundcard_h
='#define HAVE_SYS_SOUNDCARD_H 1'
3469 def_soundcard_h
='#define HAVE_SOUNDCARD_H 1'
3472 echores
"$_soundcard_h"
3475 echocheck
"sys/dvdio.h"
3478 #include <sys/dvdio.h>
3479 int main(void) { return 0; }
3482 cc_check
&& _dvdio
=yes
3483 if test "$_dvdio" = yes ; then
3484 def_dvdio
='#define DVD_STRUCT_IN_SYS_DVDIO_H 1'
3486 def_dvdio
='#undef DVD_STRUCT_IN_SYS_DVDIO_H'
3491 echocheck
"sys/cdio.h"
3494 #include <sys/cdio.h>
3495 int main(void) { return 0; }
3498 cc_check
&& _cdio
=yes
3499 if test "$_cdio" = yes ; then
3500 def_cdio
='#define DVD_STRUCT_IN_SYS_CDIO_H 1'
3502 def_cdio
='#undef DVD_STRUCT_IN_SYS_CDIO_H'
3507 echocheck
"linux/cdrom.h"
3509 #include <sys/types.h>
3510 #include <linux/cdrom.h>
3511 int main(void) { return 0; }
3514 cc_check
&& _cdrom
=yes
3515 if test "$_cdrom" = yes ; then
3516 def_cdrom
='#define DVD_STRUCT_IN_LINUX_CDROM_H 1'
3518 def_cdrom
='#undef DVD_STRUCT_IN_LINUX_CDROM_H'
3526 int main(void) { return 0; }
3529 cc_check
&& _dvd
=yes
3530 if test "$_dvd" = yes ; then
3531 def_dvd
='#define DVD_STRUCT_IN_DVD_H 1'
3533 def_dvd
='#undef DVD_STRUCT_IN_DVD_H'
3539 echocheck
"BSDI dvd.h"
3542 int main(void) { return 0; }
3545 cc_check
&& _bsdi_dvd
=yes
3546 if test "$_bsdi_dvd" = yes ; then
3547 def_bsdi_dvd
='#define DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H 1'
3549 def_bsdi_dvd
='#undef DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H'
3551 echores
"$_bsdi_dvd"
3556 # also used by AIX, but AIX does not support VCD and/or libdvdread
3557 echocheck
"HP-UX SCSI header"
3559 #include <sys/scsi.h>
3560 int main(void) { return 0; }
3563 cc_check
&& _hpux_scsi_h
=yes
3564 if test "$_hpux_scsi_h" = yes ; then
3565 def_hpux_scsi_h
='#define HPUX_SCTL_IO 1'
3567 def_hpux_scsi_h
='#undef HPUX_SCTL_IO'
3569 echores
"$_hpux_scsi_h"
3574 echocheck
"userspace SCSI headers (Solaris)"
3577 #include <stropts.h>
3578 #include <sys/scsi/scsi_types.h>
3579 #include <sys/scsi/impl/uscsi.h>
3580 int main(void) { return 0; }
3583 cc_check
&& _sol_scsi_h
=yes
3584 if test "$_sol_scsi_h" = yes ; then
3585 def_sol_scsi_h
='#define SOLARIS_USCSI 1'
3587 def_sol_scsi_h
='#undef SOLARIS_USCSI'
3589 echores
"$_sol_scsi_h"
3594 if test "$_termcap" = auto
; then
3598 int main(void) { tgetent(NULL, NULL); return 0; }
3601 for _ld_tmp
in "-lncurses" "-ltinfo" "-ltermcap"; do
3602 cc_check
$_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" \
3603 && _termcap
=yes && break
3606 if test "$_termcap" = yes ; then
3607 def_termcap
='#define HAVE_TERMCAP 1'
3608 test $_ld_tmp && _res_comment
="using $_ld_tmp"
3610 def_termcap
='#undef HAVE_TERMCAP'
3616 def_termios
='#undef HAVE_TERMIOS'
3617 def_termios_h
='#undef HAVE_TERMIOS_H'
3618 def_termios_sys_h
='#undef HAVE_SYS_TERMIOS_H'
3619 if test "$_termios" = auto
; then
3621 for _termios_header
in "sys/termios.h" "termios.h"; do
3623 #include <$_termios_header>
3624 int main(void) { return 0; }
3626 cc_check
&& _termios
=yes && _res_comment
="using $_termios_header" && break
3630 if test "$_termios" = yes ; then
3631 def_termios
='#define HAVE_TERMIOS 1'
3632 if test "$_termios_header" = "termios.h" ; then
3633 def_termios_h
='#define HAVE_TERMIOS_H 1'
3635 def_termios_sys_h
='#define HAVE_SYS_TERMIOS_H 1'
3642 if test "$_shm" = auto
; then
3644 #include <sys/types.h>
3645 #include <sys/shm.h>
3646 int main(void) { shmget(0, 0, 0); shmat(0, 0, 0); shmctl(0, 0, 0); return 0; }
3649 cc_check
&& _shm
=yes
3651 if test "$_shm" = yes ; then
3652 def_shm
='#define HAVE_SHM 1'
3654 def_shm
='#undef HAVE_SHM'
3659 echocheck
"strsep()"
3662 int main(void) { char *s = "Hello, world!"; (void) strsep(&s, ","); return 0; }
3665 cc_check
&& _strsep
=yes
3666 if test "$_strsep" = yes ; then
3667 def_strsep
='#define HAVE_STRSEP 1'
3670 def_strsep
='#undef HAVE_STRSEP'
3676 echocheck
"vsscanf()"
3678 #define _ISOC99_SOURCE
3681 int main(void) { vsscanf(0, 0, 0); return 0; }
3684 cc_check
&& _vsscanf
=yes
3685 if test "$_vsscanf" = yes ; then
3686 def_vsscanf
='#define HAVE_VSSCANF 1'
3689 def_vsscanf
='#undef HAVE_VSSCANF'
3697 #define _XOPEN_SOURCE 600
3699 int main(void) { swab(0, 0, 0); return 0; }
3702 cc_check
&& _swab
=yes
3703 if test "$_swab" = yes ; then
3704 def_swab
='#define HAVE_SWAB 1'
3707 def_swab
='#undef HAVE_SWAB'
3712 echocheck
"POSIX select()"
3716 #include <sys/types.h>
3718 #include <sys/time.h>
3720 int main(void) {int nfds = 1; fd_set readfds; struct timeval timeout; select(nfds,&readfds,NULL,NULL,&timeout); return 0; }
3723 def_posix_select
='#undef HAVE_POSIX_SELECT'
3724 #select() of kLIBC (OS/2) supports socket only
3725 ! os2
&& cc_check
&& _posix_select
=yes \
3726 && def_posix_select
='#define HAVE_POSIX_SELECT 1'
3727 echores
"$_posix_select"
3730 echocheck
"audio select()"
3731 if test "$_select" = no
; then
3732 def_select
='#undef HAVE_AUDIO_SELECT'
3733 elif test "$_select" = yes ; then
3734 def_select
='#define HAVE_AUDIO_SELECT 1'
3739 echocheck
"gettimeofday()"
3742 #include <sys/time.h>
3743 int main(void) {struct timeval tv_start; gettimeofday(&tv_start, NULL); return 0; }
3746 cc_check
&& _gettimeofday
=yes
3747 if test "$_gettimeofday" = yes ; then
3748 def_gettimeofday
='#define HAVE_GETTIMEOFDAY 1'
3749 _need_gettimeofday
=no
3751 def_gettimeofday
='#undef HAVE_GETTIMEOFDAY'
3752 _need_gettimeofday
=yes
3754 echores
"$_gettimeofday"
3761 int main(void) { glob_t gg; glob("filename",0,NULL,&gg); return 0; }
3764 cc_check
&& _glob
=yes
3765 if test "$_glob" = yes ; then
3766 def_glob
='#define HAVE_GLOB 1'
3769 def_glob
='#undef HAVE_GLOB'
3775 echocheck
"setenv()"
3778 int main(void) { setenv("","",0); return 0; }
3781 cc_check
&& _setenv
=yes
3782 if test "$_setenv" = yes ; then
3783 def_setenv
='#define HAVE_SETENV 1'
3786 def_setenv
='#undef HAVE_SETENV'
3793 echocheck
"sysi86()"
3795 #include <sys/sysi86.h>
3796 int main(void) { sysi86(0); return 0; }
3799 cc_check
&& _sysi86
=yes
3800 if test "$_sysi86" = yes ; then
3801 def_sysi86
='#define HAVE_SYSI86 1'
3803 #include <sys/sysi86.h>
3804 int main(void) { int sysi86(int, void*); sysi86(0); return 0; }
3806 cc_check
&& def_sysi86_iv
='#define HAVE_SYSI86_iv 1'
3808 def_sysi86
='#undef HAVE_SYSI86'
3814 echocheck
"sys/sysinfo.h"
3816 #include <sys/sysinfo.h>
3818 struct sysinfo s_info;
3824 cc_check
&& _sys_sysinfo
=yes
3825 if test "$_sys_sysinfo" = yes ; then
3826 def_sys_sysinfo_h
='#define HAVE_SYS_SYSINFO_H 1'
3828 def_sys_sysinfo_h
='#undef HAVE_SYS_SYSINFO_H'
3830 echores
"$_sys_sysinfo"
3835 echocheck
"Mac OS X Finder Support"
3836 def_macosx_finder
='#undef CONFIG_MACOSX_FINDER'
3837 if test "$_macosx_finder" = yes ; then
3838 def_macosx_finder
='#define CONFIG_MACOSX_FINDER 1'
3839 extra_ldflags
="$extra_ldflags -framework Carbon"
3841 echores
"$_macosx_finder"
3843 echocheck
"Mac OS X Bundle file locations"
3844 def_macosx_bundle
='#undef CONFIG_MACOSX_BUNDLE'
3845 test "$_macosx_bundle" = auto
&& _macosx_bundle
=$_macosx_finder
3846 if test "$_macosx_bundle" = yes ; then
3847 def_macosx_bundle
='#define CONFIG_MACOSX_BUNDLE 1'
3848 extra_ldflags
="$extra_ldflags -framework Carbon"
3850 echores
"$_macosx_bundle"
3852 echocheck
"Apple Remote"
3853 if test "$_apple_remote" = auto
; then
3857 #include <IOKit/IOCFPlugIn.h>
3859 io_iterator_t hidObjectIterator = (io_iterator_t)NULL;
3860 CFMutableDictionaryRef hidMatchDictionary;
3861 IOReturn ioReturnValue;
3863 // Set up a matching dictionary to search the I/O Registry by class.
3864 // name for all HID class devices
3865 hidMatchDictionary = IOServiceMatching("AppleIRController");
3867 // Now search I/O Registry for matching devices.
3868 ioReturnValue = IOServiceGetMatchingServices(kIOMasterPortDefault,
3869 hidMatchDictionary, &hidObjectIterator);
3871 // If search is unsuccessful, return nonzero.
3872 if (ioReturnValue != kIOReturnSuccess ||
3873 !IOIteratorIsValid(hidObjectIterator)) {
3879 cc_check
-framework IOKit
&& tmp_run
&& _apple_remote
=yes
3881 if test "$_apple_remote" = yes ; then
3882 def_apple_remote
='#define CONFIG_APPLE_REMOTE 1'
3883 libs_mplayer
="$libs_mplayer -framework IOKit -framework Cocoa"
3885 def_apple_remote
='#undef CONFIG_APPLE_REMOTE'
3887 echores
"$_apple_remote"
3893 echocheck
"Apple IR"
3894 if test "$_apple_ir" = auto
; then
3897 #include <linux/types.h>
3898 #include <linux/input.h>
3900 struct input_event ev;
3905 cc_check
&& tmp_run
&& _apple_ir
=yes
3907 if test "$_apple_ir" = yes ; then
3908 def_apple_ir
='#define CONFIG_APPLE_IR 1'
3910 def_apple_ir
='#undef CONFIG_APPLE_IR'
3912 echores
"$_apple_ir"
3915 echocheck
"pkg-config"
3916 _pkg_config
=pkg-config
3917 if $
($_pkg_config --version > /dev
/null
2>&1); then
3918 if test "$_ld_static"; then
3919 _pkg_config
="$_pkg_config --static"
3928 echocheck
"Samba support (libsmbclient)"
3929 if test "$_smb" = yes; then
3930 extra_ldflags
="$extra_ldflags -lsmbclient"
3932 if test "$_smb" = auto
; then
3935 #include <libsmbclient.h>
3936 int main(void) { smbc_opendir("smb://"); return 0; }
3938 for _ld_tmp
in "-lsmbclient" "-lsmbclient $_ld_dl" "-lsmbclient $_ld_dl -lnsl" "-lsmbclient $_ld_dl -lssl -lnsl" ; do
3939 cc_check
$_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && \
3944 if test "$_smb" = yes; then
3945 def_smb
="#define CONFIG_LIBSMBCLIENT"
3946 _inputmodules
="smb $_inputmodules"
3948 def_smb
="#undef CONFIG_LIBSMBCLIENT"
3949 _noinputmodules
="smb $_noinputmodules"
3960 if test "$_tdfxfb" = yes ; then
3961 def_tdfxfb
='#define CONFIG_TDFXFB 1'
3962 _vomodules
="tdfxfb $_vomodules"
3964 def_tdfxfb
='#undef CONFIG_TDFXFB'
3965 _novomodules
="tdfxfb $_novomodules"
3970 if test "$_s3fb" = yes ; then
3971 def_s3fb
='#define CONFIG_S3FB 1'
3972 _vomodules
="s3fb $_vomodules"
3974 def_s3fb
='#undef CONFIG_S3FB'
3975 _novomodules
="s3fb $_novomodules"
3980 if test "$_wii" = yes ; then
3981 def_wii
='#define CONFIG_WII 1'
3982 _vomodules
="wii $_vomodules"
3984 def_wii
='#undef CONFIG_WII'
3985 _novomodules
="wii $_novomodules"
3990 if test "$_tdfxvid" = yes ; then
3991 def_tdfxvid
='#define CONFIG_TDFX_VID 1'
3992 _vomodules
="tdfx_vid $_vomodules"
3994 def_tdfxvid
='#undef CONFIG_TDFX_VID'
3995 _novomodules
="tdfx_vid $_novomodules"
4000 if test "$_xvr100" = auto
; then
4003 #include <sys/fbio.h>
4004 #include <sys/visual_io.h>
4006 struct vis_identifier ident;
4007 struct fbgattr attr;
4008 ioctl(0, VIS_GETIDENTIFIER, &ident);
4009 ioctl(0, FBIOGATTR, &attr);
4014 cc_check
&& _xvr100
=yes
4016 if test "$_xvr100" = yes ; then
4017 def_xvr100
='#define CONFIG_XVR100 1'
4018 _vomodules
="xvr100 $_vomodules"
4020 def_tdfxvid
='#undef CONFIG_XVR100'
4021 _novomodules
="xvr100 $_novomodules"
4026 if test "$_tga" = yes ; then
4027 def_tga
='#define CONFIG_TGA 1'
4028 _vomodules
="tga $_vomodules"
4030 def_tga
='#undef CONFIG_TGA'
4031 _novomodules
="tga $_novomodules"
4036 echocheck
"md5sum support"
4037 if test "$_md5sum" = yes; then
4038 def_md5sum
="#define CONFIG_MD5SUM"
4039 _vomodules
="md5sum $_vomodules"
4041 def_md5sum
="#undef CONFIG_MD5SUM"
4042 _novomodules
="md5sum $_novomodules"
4047 echocheck
"yuv4mpeg support"
4048 if test "$_yuv4mpeg" = yes; then
4049 def_yuv4mpeg
="#define CONFIG_YUV4MPEG"
4050 _vomodules
="yuv4mpeg $_vomodules"
4052 def_yuv4mpeg
="#undef CONFIG_YUV4MPEG"
4053 _novomodules
="yuv4mpeg $_novomodules"
4055 echores
"$_yuv4mpeg"
4059 if test "$_bl" = yes ; then
4060 def_bl
='#define CONFIG_BL 1'
4061 _vomodules
="bl $_vomodules"
4063 def_bl
='#undef CONFIG_BL'
4064 _novomodules
="bl $_novomodules"
4069 echocheck
"DirectFB"
4070 if test "$_directfb" = auto
; then
4073 #include <directfb.h>
4074 int main(void) { IDirectFB *foo; DirectFBInit(0,0); return 0; }
4076 for _inc_tmp
in "" -I/usr
/local
/include
/directfb \
4077 -I/usr
/include
/directfb
-I/usr
/local
/include
; do
4078 cc_check
$_inc_tmp -ldirectfb && _directfb
=yes && \
4079 extra_cflags
="$extra_cflags $_inc_tmp" && break
4084 expr $1 \
* 65536 + $2 \
* 256 + $3
4087 if test "$_directfb" = yes; then
4089 #include <directfb_version.h>
4091 dfb_ver = DIRECTFB_MAJOR_VERSION.DIRECTFB_MINOR_VERSION.DIRECTFB_MICRO_VERSION
4094 if $_cc -E $TMPC $extra_cflags > "$TMPEXE"; then
4095 _directfb_version
=$
(sed -n 's/^dfb_ver[^0-9]*\(.*\)/\1/p' "$TMPEXE" |
tr -d '()')
4096 _dfb_major
=$
(echo $_directfb_version | cut
-d .
-f 1)
4097 _dfb_minor
=$
(echo $_directfb_version | cut
-d .
-f 2)
4098 _dfb_micro
=$
(echo $_directfb_version | cut
-d .
-f 3)
4099 _dfb_version
=$
(dfb_version
$_dfb_major $_dfb_minor $_dfb_micro)
4100 if test "$_dfb_version" -ge $
(dfb_version
0 9 13); then
4101 def_directfb_version
="#define DIRECTFBVERSION $_dfb_version"
4102 _res_comment
="$_directfb_version"
4103 test "$_dfb_version" -ge $
(dfb_version
0 9 15) && _dfbmga
=yes
4105 def_directfb_version
='#undef DIRECTFBVERSION'
4107 _res_comment
="version >=0.9.13 required"
4111 _res_comment
="failed to get version"
4114 echores
"$_directfb"
4116 if test "$_directfb" = yes ; then
4117 def_directfb
='#define CONFIG_DIRECTFB 1'
4118 _vomodules
="directfb $_vomodules"
4119 libs_mplayer
="$libs_mplayer -ldirectfb"
4121 def_directfb
='#undef CONFIG_DIRECTFB'
4122 _novomodules
="directfb $_novomodules"
4124 if test "$_dfbmga" = yes; then
4125 _vomodules
="dfbmga $_vomodules"
4126 def_dfbmga
='#define CONFIG_DFBMGA 1'
4128 _novomodules
="dfbmga $_novomodules"
4129 def_dfbmga
='#undef CONFIG_DFBMGA'
4133 echocheck
"X11 headers presence"
4135 _res_comment
="check if the dev(el) packages are installed"
4136 for I
in $
(echo $extra_cflags |
sed s
/-I//g
) /usr
/include
; do
4137 if test -f "$I/X11/Xlib.h" ; then
4143 if test $_cross_compile = no
; then
4144 for I
in /usr
/X11
/include
/usr
/X11R
7/include
/usr
/X11R
6/include \
4145 /usr
/include
/X11R6
/usr
/openwin
/include
; do
4146 if test -f "$I/X11/Xlib.h" ; then
4147 extra_cflags
="$extra_cflags -I$I"
4149 _res_comment
="using $I"
4154 echores
"$_x11_headers"
4158 if test "$_x11" = auto
&& test "$_x11_headers" = yes ; then
4160 #include <X11/Xlib.h>
4161 #include <X11/Xutil.h>
4162 int main(void) { (void) XCreateWindow(0,0,0,0,0,0,0,0,0,0,0,0); return 0; }
4164 for I
in "" -L/usr
/X11R
7/lib
-L/usr
/X11R
6/lib
-L/usr
/lib
/X11R6 \
4165 -L/usr
/X11
/lib
-L/usr
/lib32
-L/usr
/openwin
/lib
-L/usr
/X11R
6/lib64 \
4168 _ld_tmp
="$I -lXext -lX11 $_ld_pthread -Wl,-R$(echo $I | sed s/^-L//)"
4170 _ld_tmp
="$I -lXext -lX11 $_ld_pthread"
4172 cc_check
$_ld_tmp && libs_mplayer
="$libs_mplayer $_ld_tmp" \
4173 && _x11
=yes && break
4176 if test "$_x11" = yes ; then
4177 def_x11
='#define CONFIG_X11 1'
4178 _vomodules
="x11 xover $_vomodules"
4181 def_x11
='#undef CONFIG_X11'
4182 _novomodules
="x11 $_novomodules"
4183 _res_comment
="check if the dev(el) packages are installed"
4184 # disable stuff that depends on X
4185 _xv
=no
; _xvmc
=no
; _xinerama
=no
; _vm
=no
; _xf86keysym
=no
; _vdpau
=no
4189 echocheck
"Xss screensaver extensions"
4190 if test "$_xss" = auto
; then
4192 #include <X11/Xlib.h>
4193 #include <X11/extensions/scrnsaver.h>
4194 int main(void) { XScreenSaverSuspend(NULL, True); return 0; }
4197 cc_check
-lXss && _xss
=yes
4199 if test "$_xss" = yes ; then
4200 def_xss
='#define CONFIG_XSS 1'
4201 libs_mplayer
="$libs_mplayer -lXss"
4203 def_xss
='#undef CONFIG_XSS'
4210 if test "$_x11" = yes ; then
4212 #include <X11/Xmd.h>
4213 #include <X11/Xlib.h>
4214 #include <X11/Xutil.h>
4215 #include <X11/Xatom.h>
4216 #include <X11/extensions/dpms.h>
4217 int main(void) { (void) DPMSQueryExtension(0, 0, 0); return 0; }
4219 cc_check
-lXdpms && _xdpms3
=yes
4221 #include <X11/Xlib.h>
4222 #include <X11/extensions/dpms.h>
4223 int main(void) { (void) DPMSQueryExtension(0, 0, 0); return 0; }
4225 cc_check
-lXext && _xdpms4
=yes
4227 if test "$_xdpms4" = yes ; then
4228 def_xdpms
='#define CONFIG_XDPMS 1'
4229 _res_comment
="using Xdpms 4"
4231 elif test "$_xdpms3" = yes ; then
4232 def_xdpms
='#define CONFIG_XDPMS 1'
4233 libs_mplayer
="$libs_mplayer -lXdpms"
4234 _res_comment
="using Xdpms 3"
4237 def_xdpms
='#undef CONFIG_XDPMS'
4243 if test "$_xv" = auto
; then
4245 #include <X11/Xlib.h>
4246 #include <X11/extensions/Xvlib.h>
4248 (void) XvGetPortAttribute(0, 0, 0, 0);
4249 (void) XvQueryPortAttributes(0, 0, 0);
4253 cc_check
-lXv && _xv
=yes
4256 if test "$_xv" = yes ; then
4257 def_xv
='#define CONFIG_XV 1'
4258 libs_mplayer
="$libs_mplayer -lXv"
4259 _vomodules
="xv $_vomodules"
4261 def_xv
='#undef CONFIG_XV'
4262 _novomodules
="xv $_novomodules"
4268 if test "$_xv" = yes && test "$_xvmc" != no
; then
4271 #include <X11/Xlib.h>
4272 #include <X11/extensions/Xvlib.h>
4273 #include <X11/extensions/XvMClib.h>
4275 (void) XvMCQueryExtension(0,0,0);
4276 (void) XvMCCreateContext(0,0,0,0,0,0,0);
4279 for _ld_tmp
in $_xvmclib XvMCNVIDIA XvMCW I810XvMC
; do
4280 cc_check
-lXvMC -l$_ld_tmp && _xvmc
=yes && _xvmclib
="$_ld_tmp" && break
4283 if test "$_xvmc" = yes ; then
4284 def_xvmc
='#define CONFIG_XVMC 1'
4285 libs_mplayer
="$libs_mplayer -lXvMC -l$_xvmclib"
4286 _vomodules
="xvmc $_vomodules"
4287 _res_comment
="using $_xvmclib"
4289 def_xvmc
='#define CONFIG_XVMC 0'
4290 _novomodules
="xvmc $_novomodules"
4291 _libavdecoders
=$
(echo $_libavdecoders |
sed -e s
/MPEG_XVMC_DECODER
//)
4297 if test "$_vdpau" = auto
; then
4299 if test "$_dl" = yes ; then
4301 #include <vdpau/vdpau_x11.h>
4302 int main(void) {return VDP_VIDEO_MIXER_ATTRIBUTE_SKIP_CHROMA_DEINTERLACE;}
4304 cc_check
&& _vdpau
=yes
4307 if test "$_vdpau" = yes ; then
4308 def_vdpau
='#define CONFIG_VDPAU 1'
4309 _vomodules
="vdpau $_vomodules"
4311 def_vdpau
='#define CONFIG_VDPAU 0'
4312 _novomodules
="vdpau $_novomodules"
4313 _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
//)
4318 echocheck
"Xinerama"
4319 if test "$_xinerama" = auto
; then
4321 #include <X11/Xlib.h>
4322 #include <X11/extensions/Xinerama.h>
4323 int main(void) { (void) XineramaIsActive(0); return 0; }
4326 cc_check
-lXinerama && _xinerama
=yes
4329 if test "$_xinerama" = yes ; then
4330 def_xinerama
='#define CONFIG_XINERAMA 1'
4331 libs_mplayer
="$libs_mplayer -lXinerama"
4333 def_xinerama
='#undef CONFIG_XINERAMA'
4335 echores
"$_xinerama"
4338 # Note: the -lXxf86vm library is the VideoMode extension and though it's not
4339 # needed for DGA, AFAIK every distribution packages together with DGA stuffs
4340 # named 'X extensions' or something similar.
4341 # This check may be useful for future mplayer versions (to change resolution)
4342 # If you run into problems, remove '-lXxf86vm'.
4344 if test "$_vm" = auto
; then
4346 #include <X11/Xlib.h>
4347 #include <X11/extensions/xf86vmode.h>
4348 int main(void) { (void) XF86VidModeQueryExtension(0, 0, 0); return 0; }
4351 cc_check
-lXxf86vm && _vm
=yes
4353 if test "$_vm" = yes ; then
4354 def_vm
='#define CONFIG_XF86VM 1'
4355 libs_mplayer
="$libs_mplayer -lXxf86vm"
4357 def_vm
='#undef CONFIG_XF86VM'
4361 # Check for the presence of special keycodes, like audio control buttons
4362 # that XFree86 might have. Used to be bundled with the xf86vm check, but
4363 # has nothing to do with xf86vm and XFree 3.x has xf86vm but does NOT
4364 # have these new keycodes.
4365 echocheck
"XF86keysym"
4366 if test "$_xf86keysym" = auto
; then
4369 #include <X11/Xlib.h>
4370 #include <X11/XF86keysym.h>
4371 int main(void) { return XF86XK_AudioPause; }
4373 cc_check
&& _xf86keysym
=yes
4375 if test "$_xf86keysym" = yes ; then
4376 def_xf86keysym
='#define CONFIG_XF86XK 1'
4378 def_xf86keysym
='#undef CONFIG_XF86XK'
4380 echores
"$_xf86keysym"
4383 if test "$_dga2" = auto
&& test "$_x11" = yes ; then
4385 #include <X11/Xlib.h>
4386 #include <X11/extensions/xf86dga.h>
4387 int main(void) { (void) XDGASetViewport(0, 0, 0, 0, 0); return 0; }
4390 cc_check
-lXxf86dga && _dga2
=yes
4392 if test "$_dga1" = auto
&& test "$_dga2" = no
&& test "$_vm" = yes ; then
4394 #include <X11/Xlib.h>
4395 #include <X11/extensions/xf86dga.h>
4396 int main(void) { (void) XF86DGASetViewPort(0, 0, 0, 0); return 0; }
4399 cc_check
-lXxf86dga -lXxf86vm && _dga1
=yes
4403 def_dga
='#undef CONFIG_DGA'
4404 def_dga1
='#undef CONFIG_DGA1'
4405 def_dga2
='#undef CONFIG_DGA2'
4406 if test "$_dga1" = yes ; then
4408 def_dga1
='#define CONFIG_DGA1 1'
4409 _res_comment
="using DGA 1.0"
4410 elif test "$_dga2" = yes ; then
4412 def_dga2
='#define CONFIG_DGA2 1'
4413 _res_comment
="using DGA 2.0"
4415 if test "$_dga" = yes ; then
4416 def_dga
='#define CONFIG_DGA 1'
4417 libs_mplayer
="$libs_mplayer -lXxf86dga"
4418 _vomodules
="dga $_vomodules"
4420 _novomodules
="dga $_novomodules"
4426 if test "$_3dfx" = yes && test "$_dga" = yes ; then
4427 def_3dfx
='#define CONFIG_3DFX 1'
4428 _vomodules
="3dfx $_vomodules"
4430 def_3dfx
='#undef CONFIG_3DFX'
4431 _novomodules
="3dfx $_novomodules"
4437 #Note: this test is run even with --enable-gl since we autodetect linker flags
4438 if (test "$_x11" = yes || win32
) && test "$_gl" != no
; then
4441 #include <windows.h>
4445 #include <X11/Xlib.h>
4451 wglCreateContext(dc);
4453 glXCreateContext(NULL, NULL, NULL, True);
4460 if cc_check
-lGL $_ld_lm ; then
4462 libs_mplayer
="$libs_mplayer -lGL $_ld_dl"
4463 elif cc_check
-lGL $_ld_lm $_ld_pthread ; then
4465 libs_mplayer
="$libs_mplayer -lGL $_ld_pthread $_ld_dl"
4466 elif cc_check
-DGL_WIN32 -lopengl32 ; then
4469 libs_mplayer
="$libs_mplayer -lopengl32 -lgdi32"
4474 if test "$_gl" = yes ; then
4475 def_gl
='#define CONFIG_GL 1'
4476 if test "$_gl_win32" = yes ; then
4477 def_gl_win32
='#define GL_WIN32 1'
4478 _res_comment
="win32 version"
4480 _vomodules
="opengl $_vomodules"
4482 def_gl
='#undef CONFIG_GL'
4483 def_gl_win32
='#undef GL_WIN32'
4484 _novomodules
="opengl $_novomodules"
4490 def_vidix
='#undef CONFIG_VIDIX'
4491 def_vidix_drv_cyberblade
='#undef CONFIG_VIDIX_DRV_CYBERBLADE'
4492 _vidix_drv_cyberblade
=no
4493 def_vidix_drv_ivtv
='#undef CONFIG_VIDIX_DRV_IVTV'
4495 def_vidix_drv_ivtv
='#undef CONFIG_VIDIX_DRV_IVTV'
4497 def_vidix_drv_mach64
='#undef CONFIG_VIDIX_DRV_MACH64'
4498 _vidix_drv_mach64
=no
4499 def_vidix_drv_mga
='#undef CONFIG_VIDIX_DRV_MGA'
4501 def_vidix_drv_mga_crtc2
='#undef CONFIG_VIDIX_DRV_MGA_CRTC2'
4502 _vidix_drv_mga_crtc2
=no
4503 def_vidix_drv_nvidia
='#undef CONFIG_VIDIX_DRV_NVIDIA'
4504 _vidix_drv_nvidia
=no
4505 def_vidix_drv_pm2
='#undef CONFIG_VIDIX_DRV_PM2'
4507 def_vidix_drv_pm3
='#undef CONFIG_VIDIX_DRV_PM3'
4509 def_vidix_drv_radeon
='#undef CONFIG_VIDIX_DRV_RADEON'
4510 _vidix_drv_radeon
=no
4511 def_vidix_drv_rage128
='#undef CONFIG_VIDIX_DRV_RAGE128'
4512 _vidix_drv_rage128
=no
4513 def_vidix_drv_s3
='#undef CONFIG_VIDIX_DRV_S3'
4515 def_vidix_drv_sh_veu
='#undef CONFIG_VIDIX_DRV_SH_VEU'
4516 _vidix_drv_sh_veu
=no
4517 def_vidix_drv_sis
='#undef CONFIG_VIDIX_DRV_SIS'
4519 def_vidix_drv_unichrome
='#undef CONFIG_VIDIX_DRV_UNICHROME'
4520 _vidix_drv_unichrome
=no
4521 if test "$_vidix" = auto
; then
4523 x86
&& (linux || freebsd || netbsd || openbsd || dragonfly || sunos || win32
) \
4525 (ppc || alpha
) && linux
&& _vidix
=yes
4529 if test "$_vidix" = yes ; then
4530 def_vidix
='#define CONFIG_VIDIX 1'
4531 _vomodules
="cvidix $_vomodules"
4532 test "$_vidix_drivers" || _vidix_drivers
="cyberblade ivtv mach64 mga mga_crtc2 nvidia pm2 pm3 radeon rage128 s3 sh_veu sis unichrome"
4533 test $_ivtv = "yes" || _vidix_drivers
=$
(echo $_vidix_drivers |
sed s
/ivtv
//)
4535 # some vidix drivers are architecture and os specific, discard them elsewhere
4536 x86 || _vidix_drivers
=$
(echo $_vidix_drivers |
sed -e s
/cyberblade
// -e s
/sis
// -e s
/unichrome
// -e s
/s
3//)
4537 (test $host_arch = "sh" && linux
) || _vidix_drivers
=$
(echo $_vidix_drivers |
sed s
/sh_veu
//)
4539 for driver
in $_vidix_drivers ; do
4540 uc_driver
=$
(echo $driver |
tr '[a-z]' '[A-Z]')
4541 eval _vidix_drv_
${driver}=yes
4542 eval def_vidix_drv_
${driver}=\"\
#define CONFIG_VIDIX_DRV_${uc_driver} 1\"
4545 echocheck
"VIDIX PCI device name database"
4546 echores
"$_vidix_pcidb"
4547 if test "$_vidix_pcidb" = yes ; then
4553 echocheck
"VIDIX dhahelper support"
4554 test "$_dhahelper" = yes && cflags_dhahelper
=-DCONFIG_DHAHELPER
4555 echores
"$_dhahelper"
4557 echocheck
"VIDIX svgalib_helper support"
4558 test "$_svgalib_helper" = yes && cflags_svgalib_helper
=-DCONFIG_SVGAHELPER
4559 echores
"$_svgalib_helper"
4562 _novomodules
="cvidix $_novomodules"
4565 if test "$_vidix" = yes && win32
; then
4567 _vomodules
="winvidix $_vomodules"
4568 libs_mplayer
="$libs_mplayer -lgdi32"
4570 _novomodules
="winvidix $_novomodules"
4572 if test "$_vidix" = yes && test "$_x11" = yes; then
4574 _vomodules
="xvidix $_vomodules"
4576 _novomodules
="xvidix $_novomodules"
4579 echocheck
"/dev/mga_vid"
4580 if test "$_mga" = auto
; then
4582 test -c /dev
/mga_vid
&& _mga
=yes
4584 if test "$_mga" = yes ; then
4585 def_mga
='#define CONFIG_MGA 1'
4586 _vomodules
="mga $_vomodules"
4588 def_mga
='#undef CONFIG_MGA'
4589 _novomodules
="mga $_novomodules"
4595 if test "$_xmga" = auto
; then
4597 test "$_x11" = yes && test "$_mga" = yes && _xmga
=yes
4599 if test "$_xmga" = yes ; then
4600 def_xmga
='#define CONFIG_XMGA 1'
4601 _vomodules
="xmga $_vomodules"
4603 def_xmga
='#undef CONFIG_XMGA'
4604 _novomodules
="xmga $_novomodules"
4610 if test "$_ggi" = auto
; then
4612 #include <ggi/ggi.h>
4613 int main(void) { ggiInit(); return 0; }
4616 cc_check
-lggi && _ggi
=yes
4618 if test "$_ggi" = yes ; then
4619 def_ggi
='#define CONFIG_GGI 1'
4620 libs_mplayer
="$libs_mplayer -lggi"
4621 _vomodules
="ggi $_vomodules"
4623 def_ggi
='#undef CONFIG_GGI'
4624 _novomodules
="ggi $_novomodules"
4628 echocheck
"GGI extension: libggiwmh"
4629 if test "$_ggiwmh" = auto
; then
4632 #include <ggi/ggi.h>
4633 #include <ggi/wmh.h>
4634 int main(void) { ggiInit(); ggiWmhInit(); return 0; }
4636 cc_check
-lggi -lggiwmh && _ggiwmh
=yes
4638 # needed to get right output on obscure combination
4639 # like --disable-ggi --enable-ggiwmh
4640 if test "$_ggi" = yes && test "$_ggiwmh" = yes ; then
4641 def_ggiwmh
='#define CONFIG_GGIWMH 1'
4642 libs_mplayer
="$libs_mplayer -lggiwmh"
4645 def_ggiwmh
='#undef CONFIG_GGIWMH'
4651 if test "$_aa" = auto
; then
4654 extern struct aa_hardware_params aa_defparams;
4655 extern struct aa_renderparams aa_defrenderparams;
4659 (void) aa_init(0, 0, 0);
4660 c = aa_autoinit(&aa_defparams);
4661 p = aa_getrenderparams();
4662 aa_autoinitkbd(c,0);
4666 for _ld_tmp
in "-laa" ; do
4667 cc_check
$_ld_tmp && libs_mplayer
="$libs_mplayer $_ld_tmp" && _aa
=yes && break
4670 if test "$_aa" = yes ; then
4671 def_aa
='#define CONFIG_AA 1'
4673 libs_mplayer
="$libs_mplayer $(aalib-config --libs | cut -d " " -f 2,5,6)"
4675 _vomodules
="aa $_vomodules"
4677 def_aa
='#undef CONFIG_AA'
4678 _novomodules
="aa $_novomodules"
4684 if test "$_caca" = auto
; then
4686 if ( caca-config
--version ) >> "$TMPLOG" 2>&1 ; then
4689 #ifdef CACA_API_VERSION_1
4692 int main(void) { (void) caca_init(); return 0; }
4694 cc_check $
(caca-config
--libs) && _caca
=yes
4697 if test "$_caca" = yes ; then
4698 def_caca
='#define CONFIG_CACA 1'
4699 extra_cflags
="$extra_cflags $(caca-config --cflags)"
4700 libs_mplayer
="$libs_mplayer $(caca-config --libs)"
4701 _vomodules
="caca $_vomodules"
4703 def_caca
='#undef CONFIG_CACA'
4704 _novomodules
="caca $_novomodules"
4710 if test "$_svga" = auto
; then
4713 int main(void) { return 0; }
4716 cc_check
-lvga $_ld_lm && _svga
=yes
4718 if test "$_svga" = yes ; then
4719 def_svga
='#define CONFIG_SVGALIB 1'
4720 libs_mplayer
="$libs_mplayer -lvga"
4721 _vomodules
="svga $_vomodules"
4723 def_svga
='#undef CONFIG_SVGALIB'
4724 _novomodules
="svga $_novomodules"
4730 if test "$_fbdev" = auto
; then
4734 if test "$_fbdev" = yes ; then
4735 def_fbdev
='#define CONFIG_FBDEV 1'
4736 _vomodules
="fbdev $_vomodules"
4738 def_fbdev
='#undef CONFIG_FBDEV'
4739 _novomodules
="fbdev $_novomodules"
4746 if test "$_dvb" = auto
; then
4750 #include <sys/ioctl.h>
4754 #include <ost/dmx.h>
4755 #include <ost/frontend.h>
4756 #include <ost/sec.h>
4757 #include <ost/video.h>
4758 #include <ost/audio.h>
4759 int main(void) {return 0;}
4761 for _inc_tmp
in "" "-I/usr/src/DVB/ost/include" ; do
4762 cc_check
$_inc_tmp && _dvb
=yes && \
4763 extra_cflags
="$extra_cflags $_inc_tmp" && break
4767 if test "$_dvb" = yes ; then
4768 def_dvb
='#define CONFIG_DVB 1'
4769 def_dvbin
='#define CONFIG_DVBIN 1'
4770 _aomodules
="mpegpes(dvb) $_aomodules"
4771 _vomodules
="mpegpes(dvb) $_vomodules"
4774 echocheck
"DVB HEAD"
4775 if test "$_dvbhead" = auto
; then
4780 #include <sys/ioctl.h>
4784 #include <linux/dvb/dmx.h>
4785 #include <linux/dvb/frontend.h>
4786 #include <linux/dvb/video.h>
4787 #include <linux/dvb/audio.h>
4788 int main(void) {return 0;}
4790 for _inc_tmp
in "" "-I/usr/src/DVB/include" ; do
4791 cc_check
$_inc_tmp && _dvbhead
=yes && \
4792 extra_cflags
="$extra_cflags $_inc_tmp" && break
4796 if test "$_dvbhead" = yes ; then
4797 def_dvb
='#define CONFIG_DVB 1'
4798 def_dvb_head
='#define CONFIG_DVB_HEAD 1'
4799 def_dvbin
='#define CONFIG_DVBIN 1'
4800 _aomodules
="mpegpes(dvb) $_aomodules"
4801 _vomodules
="mpegpes(dvb) $_vomodules"
4804 if test "$_dvbhead" = no
&& test "$_dvb" = no
; then
4805 def_dvb
='#undef CONFIG_DVB'
4806 def_dvb_head
='#undef CONFIG_DVB_HEAD'
4807 def_dvbin
='#undef CONFIG_DVBIN '
4808 _aomodules
="mpegpes(file) $_aomodules"
4809 _vomodules
="mpegpes(file) $_vomodules"
4812 if test "$_dvb" = yes ||
test "$_dvbhead" = yes ; then
4814 _inputmodules
="dvb $_inputmodules"
4817 _noinputmodules
="dvb $_noinputmodules"
4824 if test "$_quartz" = auto
; then
4826 #include <Carbon/Carbon.h>
4827 #include <QuickTime/QuickTime.h>
4831 CFRunLoopRunInMode(kCFRunLoopDefaultMode, 0, false);
4836 cc_check
-framework Carbon
-framework QuickTime
&& _quartz
=yes
4838 if test "$_quartz" = yes ; then
4839 libs_mplayer
="$libs_mplayer -framework Carbon -framework QuickTime"
4840 def_quartz
='#define CONFIG_QUARTZ 1'
4841 _vomodules
="quartz $_vomodules"
4843 def_quartz
='#undef CONFIG_QUARTZ'
4844 _novomodules
="quartz $_novomodules"
4848 echocheck
"CoreVideo"
4849 if test "$_corevideo" = auto
; then
4851 #include <Carbon/Carbon.h>
4852 #include <CoreServices/CoreServices.h>
4853 #include <OpenGL/OpenGL.h>
4854 #include <QuartzCore/CoreVideo.h>
4855 int main(void) { return 0; }
4858 cc_check
-framework Carbon
-framework Cocoa
-framework QuartzCore
-framework OpenGL
&& _corevideo
=yes
4860 if test "$_corevideo" = yes ; then
4861 _vomodules
="corevideo $_vomodules"
4862 libs_mplayer
="$libs_mplayer -framework Carbon -framework Cocoa -framework QuartzCore -framework OpenGL"
4863 def_corevideo
='#define CONFIG_COREVIDEO 1'
4865 _novomodules
="corevideo $_novomodules"
4866 def_corevideo
='#undef CONFIG_COREVIDEO'
4868 echores
"$_corevideo"
4873 echocheck
"PNG support"
4874 if test "$_png" = auto
; then
4877 # Don't check for -lpng on irix since it has its own libpng
4878 # incompatible with the GNU libpng
4879 _res_comment
="disabled on irix (not GNU libpng)"
4885 printf("png.h : %s\n", PNG_LIBPNG_VER_STRING);
4886 printf("libpng: %s\n", png_libpng_ver);
4887 return strcmp(PNG_LIBPNG_VER_STRING, png_libpng_ver);
4890 if cc_check
-lpng -lz $_ld_lm ; then
4894 _res_comment
="mismatch of library and header versions"
4900 if test "$_png" = yes ; then
4901 def_png
='#define CONFIG_PNG 1'
4902 extra_ldflags
="$extra_ldflags -lpng -lz"
4903 _vomodules
="png $_vomodules"
4905 def_png
='#undef CONFIG_PNG'
4906 _novomodules
="png $_novomodules"
4909 echocheck
"MNG support"
4910 if test "$_mng" = auto
; then
4915 const char * p_ver = mng_version_text();
4916 return !p_ver || p_ver[0] == 0;
4919 if cc_check
-lmng -lz $_ld_lm ; then
4924 if test "$_mng" = yes ; then
4925 def_mng
='#define CONFIG_MNG 1'
4926 extra_ldflags
="$extra_ldflags -lmng -lz"
4928 def_mng
='#undef CONFIG_MNG'
4931 echocheck
"JPEG support"
4932 if test "$_jpeg" = auto
; then
4939 #include <jpeglib.h>
4940 int main(void) { return 0; }
4942 if cc_check
-ljpeg $_ld_lm ; then
4950 if test "$_jpeg" = yes ; then
4951 def_jpeg
='#define CONFIG_JPEG 1'
4952 _vomodules
="jpeg $_vomodules"
4953 extra_ldflags
="$extra_ldflags -ljpeg"
4955 def_jpeg
='#undef CONFIG_JPEG'
4956 _novomodules
="jpeg $_novomodules"
4961 echocheck
"PNM support"
4962 if test "$_pnm" = yes; then
4963 def_pnm
="#define CONFIG_PNM 1"
4964 _vomodules
="pnm $_vomodules"
4966 def_pnm
="#undef CONFIG_PNM"
4967 _novomodules
="pnm $_novomodules"
4973 echocheck
"GIF support"
4974 # This is to appease people who want to force gif support.
4975 # If it is forced to yes, then we still do checks to determine
4976 # which gif library to use.
4977 if test "$_gif" = yes ; then
4982 if test "$_gif" = auto
; then
4985 #include <gif_lib.h>
4986 int main(void) { return 0; }
4988 for _ld_gif
in "-lungif" "-lgif" ; do
4989 cc_check
$_ld_gif && tmp_run
&& _gif
=yes && break
4993 # If no library was found, and the user wants support forced,
4994 # then we force it on with libgif, as this is the safest
4995 # assumption IMHO. (libungif & libregif both create symbolic
4996 # links to libgif. We also assume that no x11 support is needed,
4997 # because if you are forcing this, then you _should_ know what
4998 # you are doing. [ Besides, package maintainers should never
4999 # have compiled x11 deps into libungif in the first place. ] )
5002 if test "$_force_gif" = yes && test "$_gif" = no
; then
5007 if test "$_gif" = yes ; then
5008 def_gif
='#define CONFIG_GIF 1'
5009 _codecmodules
="gif $_codecmodules"
5010 _vomodules
="gif89a $_vomodules"
5011 _res_comment
="old version, some encoding functions disabled"
5012 def_gif_4
='#undef CONFIG_GIF_4'
5013 extra_ldflags
="$extra_ldflags $_ld_gif"
5017 #include <gif_lib.h>
5018 void catch() { exit(1); }
5020 signal(SIGSEGV, catch); // catch segfault
5021 printf("EGifPutExtensionFirst is at address %p\n", EGifPutExtensionFirst);
5022 EGifSetGifVersion("89a"); // this will segfault a buggy gif lib.
5026 if cc_check
"$_ld_gif" && tmp_run
; then
5027 def_gif_4
='#define CONFIG_GIF_4 1'
5031 def_gif
='#undef CONFIG_GIF'
5032 def_gif_4
='#undef CONFIG_GIF_4'
5033 _novomodules
="gif89a $_novomodules"
5034 _nocodecmodules
="gif $_nocodecmodules"
5039 case "$_gif" in yes*)
5040 echocheck
"broken giflib workaround"
5041 def_gif_tvt_hack
='#define CONFIG_GIF_TVT_HACK 1'
5044 #include <gif_lib.h>
5047 printf("UserData is at address %p\n", gif.UserData);
5051 if cc_check
"$_ld_gif" && tmp_run
; then
5052 def_gif_tvt_hack
='#undef CONFIG_GIF_TVT_HACK'
5061 echocheck
"VESA support"
5062 if test "$_vesa" = auto
; then
5065 int main(void) { vbeVersion(); return 0; }
5068 cc_check
-lvbe -llrmi && _vesa
=yes
5070 if test "$_vesa" = yes ; then
5071 def_vesa
='#define CONFIG_VESA 1'
5072 libs_mplayer
="$libs_mplayer -lvbe -llrmi"
5073 _vomodules
="vesa $_vomodules"
5075 def_vesa
='#undef CONFIG_VESA'
5076 _novomodules
="vesa $_novomodules"
5086 if test -z "$_sdlconfig" ; then
5087 if ( sdl-config
--version ) >>"$TMPLOG" 2>&1 ; then
5088 _sdlconfig
="sdl-config"
5089 elif ( sdl11-config
--version ) >>"$TMPLOG" 2>&1 ; then
5090 _sdlconfig
="sdl11-config"
5095 if test "$_sdl" = auto ||
test "$_sdl" = yes ; then
5098 int main(int argc, char *argv[]) {
5099 SDL_Init(SDL_INIT_VIDEO|SDL_INIT_NOPARACHUTE);
5104 if "$_sdlconfig" --version >>"$TMPLOG" 2>&1 ; then
5105 if cc_check $
($_sdlconfig --cflags) $
($_sdlconfig --libs) >>"$TMPLOG" 2>&1 ; then
5106 _sdlversion
=$
($_sdlconfig --version |
sed 's/[^0-9]//g')
5107 if test "$_sdlversion" -gt 116 ; then
5108 if test "$_sdlversion" -lt 121 ; then
5109 def_sdlbuggy
='#define BUGGY_SDL'
5111 def_sdlbuggy
='#undef BUGGY_SDL'
5118 if test "$_sdl" = yes ; then
5119 def_sdl
='#define CONFIG_SDL 1'
5121 libs_mplayer
="$libs_mplayer $($_sdlconfig --libs | cut -d " " -f 1,4,6 | sed s/no-cygwin/cygwin/)"
5122 extra_cflags
="$extra_cflags $($_sdlconfig --cflags | cut -d " " -f 1,5,6 | sed s/no-cygwin/cygwin/)"
5124 libs_mplayer
="$libs_mplayer $($_sdlconfig --libs | sed -e s/-mwindows// -e s/-lmingw32//)"
5125 extra_cflags
="$extra_cflags $($_sdlconfig --cflags | sed s/-Dmain=SDL_main//)"
5127 libs_mplayer
="$libs_mplayer $($_sdlconfig --libs)"
5128 extra_cflags
="$extra_cflags $($_sdlconfig --cflags | sed s/-D_GNU_SOURCE=1//)"
5130 _vomodules
="sdl $_vomodules"
5131 _aomodules
="sdl $_aomodules"
5132 _res_comment
="using $_sdlconfig"
5134 def_sdl
='#undef CONFIG_SDL'
5135 _novomodules
="sdl $_novomodules"
5136 _noaomodules
="sdl $_noaomodules"
5142 echocheck
"KVA (SNAP/WarpOverlay!/DIVE)"
5143 if test "$_kva" = auto
; then
5147 int main( void ) { return 0; }
5150 cc_check
-lkva && _kva
=yes
5152 if test "$_kva" = yes ; then
5153 def_kva
='#define CONFIG_KVA 1'
5154 libs_mplayer
="$libs_mplayer -lkva"
5155 _vomodules
="kva $_vomodules"
5157 def_kva
='#undef CONFIG_KVA'
5158 _novomodules
="kva $_novomodules"
5166 echocheck
"Windows waveout"
5167 if test "$_win32waveout" = auto
; then
5169 #include <windows.h>
5170 #include <mmsystem.h>
5171 int main(void) { return 0; }
5174 cc_check
-lwinmm && _win32waveout
=yes
5176 if test "$_win32waveout" = yes ; then
5177 def_win32waveout
='#define CONFIG_WIN32WAVEOUT 1'
5178 libs_mplayer
="$libs_mplayer -lwinmm"
5179 _aomodules
="win32 $_aomodules"
5181 def_win32waveout
='#undef CONFIG_WIN32WAVEOUT'
5182 _noaomodules
="win32 $_noaomodules"
5184 echores
"$_win32waveout"
5186 echocheck
"Direct3D"
5187 if test "$_direct3d" = auto
; then
5189 #include <windows.h>
5191 int main(void) { return 0; }
5194 cc_check
-ld3d9 && _direct3d
=yes
5196 if test "$_direct3d" = yes ; then
5197 def_direct3d
='#define CONFIG_DIRECT3D 1'
5198 libs_mplayer
="$libs_mplayer -ld3d9"
5199 _vomodules
="direct3d $_vomodules"
5201 def_direct3d
='#undef CONFIG_DIRECT3D'
5202 _novomodules
="direct3d $_novomodules"
5204 echores
"$_direct3d"
5207 if test "$_directx" = auto
; then
5209 #include <windows.h>
5212 int main(void) { return 0; }
5215 cc_check
-lgdi32 && _directx
=yes
5217 if test "$_directx" = yes ; then
5218 def_directx
='#define CONFIG_DIRECTX 1'
5219 libs_mplayer
="$libs_mplayer -lgdi32"
5220 _vomodules
="directx $_vomodules"
5221 _aomodules
="dsound $_aomodules"
5223 def_directx
='#undef CONFIG_DIRECTX'
5224 _novomodules
="directx $_novomodules"
5225 _noaomodules
="dsound $_noaomodules"
5233 if test "$_dxr2" = auto
; then
5236 #include <dxr2ioctl.h>
5237 int main(void) { return 0; }
5239 for _inc_tmp
in "" -I/usr
/local
/include
/dxr2
-I/usr
/include
/dxr2
; do
5240 cc_check
$_inc_tmp && _dxr2
=yes && \
5241 extra_cflags
="$extra_cflags $_inc_tmp" && break
5244 if test "$_dxr2" = yes; then
5245 def_dxr2
='#define CONFIG_DXR2 1'
5246 _aomodules
="dxr2 $_aomodules"
5247 _vomodules
="dxr2 $_vomodules"
5249 def_dxr2
='#undef CONFIG_DXR2'
5250 _noaomodules
="dxr2 $_noaomodules"
5251 _novomodules
="dxr2 $_novomodules"
5256 if test "$_dxr3" = auto
; then
5258 #include <linux/em8300.h>
5259 int main(void) { return 0; }
5262 cc_check
&& _dxr3
=yes
5264 if test "$_dxr3" = yes ; then
5265 def_dxr3
='#define CONFIG_DXR3 1'
5266 _vomodules
="dxr3 $_vomodules"
5268 def_dxr3
='#undef CONFIG_DXR3'
5269 _novomodules
="dxr3 $_novomodules"
5274 echocheck
"IVTV TV-Out (pre linux-2.6.24)"
5275 if test "$_ivtv" = auto
; then
5278 #include <inttypes.h>
5279 #include <linux/types.h>
5280 #include <linux/videodev2.h>
5281 #include <linux/ivtv.h>
5282 #include <sys/ioctl.h>
5284 struct ivtv_cfg_stop_decode sd;
5285 struct ivtv_cfg_start_decode sd1;
5286 ioctl(0, IVTV_IOC_START_DECODE, &sd1);
5287 ioctl(0, IVTV_IOC_STOP_DECODE, &sd);
5291 cc_check
&& _ivtv
=yes
5293 if test "$_ivtv" = yes ; then
5294 def_ivtv
='#define CONFIG_IVTV 1'
5295 _vomodules
="ivtv $_vomodules"
5296 _aomodules
="ivtv $_aomodules"
5298 def_ivtv
='#undef CONFIG_IVTV'
5299 _novomodules
="ivtv $_novomodules"
5300 _noaomodules
="ivtv $_noaomodules"
5305 echocheck
"V4L2 MPEG Decoder"
5306 if test "$_v4l2" = auto
; then
5309 #include <inttypes.h>
5310 #include <linux/types.h>
5311 #include <linux/videodev2.h>
5312 #include <linux/version.h>
5314 #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22)
5315 #error kernel headers too old, need 2.6.22
5316 bad_kernel_version();
5318 struct v4l2_ext_controls ctrls;
5319 ctrls.ctrl_class = V4L2_CTRL_CLASS_MPEG;
5324 cc_check
&& _v4l2
=yes
5326 if test "$_v4l2" = yes ; then
5327 def_v4l2
='#define CONFIG_V4L2_DECODER 1'
5328 _vomodules
="v4l2 $_vomodules"
5329 _aomodules
="v4l2 $_aomodules"
5331 def_v4l2
='#undef CONFIG_V4L2_DECODER'
5332 _novomodules
="v4l2 $_novomodules"
5333 _noaomodules
="v4l2 $_noaomodules"
5344 echocheck
"OSS Audio"
5345 if test "$_ossaudio" = auto
; then
5347 #include <sys/ioctl.h>
5348 #include <$_soundcard_header>
5349 int main(void) { int arg = SNDCTL_DSP_SETFRAGMENT; return 0; }
5352 cc_check
&& _ossaudio
=yes
5354 if test "$_ossaudio" = yes ; then
5355 def_ossaudio
='#define CONFIG_OSS_AUDIO 1'
5356 _aomodules
="oss $_aomodules"
5357 if test "$_linux_devfs" = yes; then
5358 def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound/dsp"'
5359 def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/sound/mixer"'
5362 #include <sys/ioctl.h>
5363 #include <$_soundcard_header>
5364 #ifdef OPEN_SOUND_SYSTEM
5365 int main(void) { return 0; }
5367 #error Not the real thing
5371 cc_check
&& _real_ossaudio
=yes
5372 if test "$_real_ossaudio" = yes; then
5373 def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
5374 # Check for OSS4 headers (override default headers)
5375 # Does not apply to systems where OSS4 is native (e.g. FreeBSD)
5376 if test -f /etc
/oss.conf
; then
5378 _ossinc
="$OSSLIBDIR/include"
5379 if test -f "$_ossinc/sys/soundcard.h"; then
5380 extra_cflags
="-I$_ossinc $extra_cflags"
5383 elif netbsd || openbsd
; then
5384 def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound"'
5385 extra_ldflags
="$extra_ldflags -lossaudio"
5387 def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
5389 def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/mixer"'
5392 def_ossaudio
='#undef CONFIG_OSS_AUDIO'
5393 def_ossaudio_devdsp
='#define PATH_DEV_DSP ""'
5394 def_ossaudio_devmixer
='#define PATH_DEV_MIXER ""'
5395 _noaomodules
="oss $_noaomodules"
5397 echores
"$_ossaudio"
5401 if test "$_arts" = auto
; then
5403 if ( artsc-config
--version ) >> "$TMPLOG" 2>&1 ; then
5407 int main(void) { return 0; }
5409 cc_check $
(artsc-config
--libs) $
(artsc-config
--cflags) && tmp_run
&& _arts
=yes
5414 if test "$_arts" = yes ; then
5415 def_arts
='#define CONFIG_ARTS 1'
5416 _aomodules
="arts $_aomodules"
5417 libs_mplayer
="$libs_mplayer $(artsc-config --libs)"
5418 extra_cflags
="$extra_cflags $(artsc-config --cflags)"
5420 _noaomodules
="arts $_noaomodules"
5426 if test "$_esd" = auto
; then
5428 if ( esd-config
--version ) >> "$TMPLOG" 2>&1 ; then
5432 int main(void) { int fd = esd_open_sound("test"); return fd; }
5434 cc_check $
(esd-config
--libs) $
(esd-config
--cflags) && _esd
=yes
5440 if test "$_esd" = yes ; then
5441 def_esd
='#define CONFIG_ESD 1'
5442 _aomodules
="esd $_aomodules"
5443 libs_mplayer
="$libs_mplayer $(esd-config --libs)"
5444 extra_cflags
="$extra_cflags $(esd-config --cflags)"
5446 echocheck
"esd_get_latency()"
5449 int main(void) { return esd_get_latency(0); }
5451 cc_check $
(esd-config
--libs) $
(esd-config
--cflags) && _esd_latency
=yes && def_esd_latency
='#define CONFIG_ESD_LATENCY'
5452 echores
"$_esd_latency"
5454 def_esd
='#undef CONFIG_ESD'
5455 def_esd_latency
='#undef CONFIG_ESD_LATENCY'
5456 _noaomodules
="esd $_noaomodules"
5461 if test "$_nas" = auto
; then
5463 #include <audio/audiolib.h>
5464 int main(void) { return 0; }
5467 cc_check
$_ld_lm -laudio -lXt && _nas
=yes
5469 if test "$_nas" = yes ; then
5470 def_nas
='#define CONFIG_NAS 1'
5471 libs_mplayer
="$libs_mplayer -laudio -lXt"
5472 _aomodules
="nas $_aomodules"
5474 _noaomodules
="nas $_noaomodules"
5475 def_nas
='#undef CONFIG_NAS'
5481 if test "$_pulse" = auto
; then
5483 if $_pkg_config --exists 'libpulse >= 0.9' ; then
5486 #include <pulse/pulseaudio.h>
5487 int main(void) { return 0; }
5489 cc_check $
($_pkg_config --libs --cflags libpulse
) && tmp_run
&& _pulse
=yes
5495 if test "$_pulse" = yes ; then
5496 def_pulse
='#define CONFIG_PULSE 1'
5497 _aomodules
="pulse $_aomodules"
5498 libs_mplayer
="$libs_mplayer $($_pkg_config --libs libpulse)"
5499 extra_cflags
="$extra_cflags $($_pkg_config --cflags libpulse)"
5501 def_pulse
='#undef CONFIG_PULSE'
5502 _noaomodules
="pulse $_noaomodules"
5507 if test "$_jack" = auto
; then
5511 #include <jack/jack.h>
5512 int main(void) { jack_client_open("test", JackUseExactName, NULL); return 0; }
5514 if cc_check
-ljack ; then
5515 libs_mplayer
="$libs_mplayer -ljack"
5516 elif cc_check $
($_pkg_config --libs --cflags --silence-errors jack
) ; then
5517 libs_mplayer
="$libs_mplayer $($_pkg_config --libs jack)"
5518 extra_cflags
="$extra_cflags "$
($_pkg_config --cflags jack
)""
5524 if test "$_jack" = yes ; then
5525 def_jack
='#define CONFIG_JACK 1'
5526 _aomodules
="jack $_aomodules"
5528 _noaomodules
="jack $_noaomodules"
5533 if test "$_openal" = auto
; then
5537 #include <OpenAL/al.h>
5542 alSourceQueueBuffers(0, 0, 0);
5543 // alGetSourcei(0, AL_SAMPLE_OFFSET, 0);
5547 for I
in "-lopenal" "-lopenal32" "-framework OpenAL" ; do
5548 cc_check
$I && _openal
=yes && break
5549 cc_check
-DOPENAL_AL_H=1 $I && def_openal_h
='#define OPENAL_AL_H 1' && _openal
=yes && break
5551 test "$_openal" = yes && libs_mplayer
="$libs_mplayer $I"
5553 if test "$_openal" = yes ; then
5554 def_openal
='#define CONFIG_OPENAL 1'
5555 _aomodules
="openal $_aomodules"
5557 _noaomodules
="openal $_noaomodules"
5561 echocheck
"ALSA audio"
5562 if test "$_alloca" != yes ; then
5564 _res_comment
="alloca missing"
5566 if test "$_alsa" != no
; then
5569 #include <sys/time.h>
5570 #include <sys/asoundlib.h>
5571 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 5))
5572 #error "alsa version != 0.5.x"
5574 int main(void) { return 0; }
5576 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.5.x'
5579 #include <sys/time.h>
5580 #include <sys/asoundlib.h>
5581 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
5582 #error "alsa version != 0.9.x"
5584 int main(void) { return 0; }
5586 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.9.x-sys'
5588 #include <sys/time.h>
5589 #include <alsa/asoundlib.h>
5590 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
5591 #error "alsa version != 0.9.x"
5593 int main(void) { return 0; }
5595 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.9.x-alsa'
5598 #include <sys/time.h>
5599 #include <sys/asoundlib.h>
5600 #if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
5601 #error "alsa version != 1.0.x"
5603 int main(void) { return 0; }
5605 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='1.0.x-sys'
5607 #include <sys/time.h>
5608 #include <alsa/asoundlib.h>
5609 #if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
5610 #error "alsa version != 1.0.x"
5612 int main(void) { return 0; }
5614 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='1.0.x-alsa'
5616 def_alsa
='#undef CONFIG_ALSA'
5617 def_alsa5
='#undef CONFIG_ALSA5'
5618 def_alsa9
='#undef CONFIG_ALSA9'
5619 def_alsa1x
='#undef CONFIG_ALSA1X'
5620 def_sys_asoundlib_h
='#undef HAVE_SYS_ASOUNDLIB_H'
5621 def_alsa_asoundlib_h
='#undef HAVE_ALSA_ASOUNDLIB_H'
5622 if test "$_alsaver" ; then
5624 if test "$_alsaver" = '0.5.x' ; then
5626 _aomodules
="alsa5 $_aomodules"
5627 def_alsa5
='#define CONFIG_ALSA5 1'
5628 def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
5629 _res_comment
="using alsa 0.5.x and sys/asoundlib.h"
5630 elif test "$_alsaver" = '0.9.x-sys' ; then
5632 _aomodules
="alsa $_aomodules"
5633 def_alsa
='#define CONFIG_ALSA 1'
5634 def_alsa9
='#define CONFIG_ALSA9 1'
5635 def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
5636 _res_comment
="using alsa 0.9.x and sys/asoundlib.h"
5637 elif test "$_alsaver" = '0.9.x-alsa' ; then
5639 _aomodules
="alsa $_aomodules"
5640 def_alsa
='#define CONFIG_ALSA 1'
5641 def_alsa9
='#define CONFIG_ALSA9 1'
5642 def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
5643 _res_comment
="using alsa 0.9.x and alsa/asoundlib.h"
5644 elif test "$_alsaver" = '1.0.x-sys' ; then
5646 _aomodules
="alsa $_aomodules"
5647 def_alsa
='#define CONFIG_ALSA 1'
5648 def_alsa1x
="#define CONFIG_ALSA1X 1"
5649 def_alsa_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
5650 _res_comment
="using alsa 1.0.x and sys/asoundlib.h"
5651 elif test "$_alsaver" = '1.0.x-alsa' ; then
5653 _aomodules
="alsa $_aomodules"
5654 def_alsa
='#define CONFIG_ALSA 1'
5655 def_alsa1x
="#define CONFIG_ALSA1X 1"
5656 def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
5657 _res_comment
="using alsa 1.0.x and alsa/asoundlib.h"
5660 _res_comment
="unknown version"
5662 extra_ldflags
="$extra_ldflags -lasound $_ld_dl $_ld_pthread"
5664 _noaomodules
="alsa $_noaomodules"
5669 echocheck
"Sun audio"
5670 if test "$_sunaudio" = auto
; then
5672 #include <sys/types.h>
5673 #include <sys/audioio.h>
5674 int main(void) { audio_info_t info; AUDIO_INITINFO(&info); return 0; }
5677 cc_check
&& _sunaudio
=yes
5679 if test "$_sunaudio" = yes ; then
5680 def_sunaudio
='#define CONFIG_SUN_AUDIO 1'
5681 _aomodules
="sun $_aomodules"
5683 def_sunaudio
='#undef CONFIG_SUN_AUDIO'
5684 _noaomodules
="sun $_noaomodules"
5686 echores
"$_sunaudio"
5689 def_mlib
='#define CONFIG_MLIB 0'
5691 echocheck
"Sun mediaLib"
5692 if test "$_mlib" = auto
; then
5696 int main(void) { mlib_VideoColorYUV2ABGR420(0,0,0,0,0,0,0,0,0); return 0; }
5698 cc_check
-lmlib && _mlib
=yes && def_mlib
='#define CONFIG_MLIB 1'
5705 echocheck
"CoreAudio"
5706 if test "$_coreaudio" = auto
; then
5708 #include <CoreAudio/CoreAudio.h>
5709 #include <AudioToolbox/AudioToolbox.h>
5710 #include <AudioUnit/AudioUnit.h>
5711 int main(void) { return 0; }
5714 cc_check
-framework CoreAudio
-framework AudioUnit
-framework AudioToolbox
&& _coreaudio
=yes
5716 if test "$_coreaudio" = yes ; then
5717 libs_mplayer
="$libs_mplayer -framework CoreAudio -framework AudioUnit -framework AudioToolbox"
5718 def_coreaudio
='#define CONFIG_COREAUDIO 1'
5719 _aomodules
="coreaudio $_aomodules"
5721 def_coreaudio
='#undef CONFIG_COREAUDIO'
5722 _noaomodules
="coreaudio $_noaomodules"
5729 echocheck
"SGI audio"
5730 if test "$_sgiaudio" = auto
; then
5731 # check for SGI audio
5733 #include <dmedia/audio.h>
5734 int main(void) { return 0; }
5737 cc_check
&& _sgiaudio
=yes
5739 if test "$_sgiaudio" = "yes" ; then
5740 def_sgiaudio
='#define CONFIG_SGI_AUDIO 1'
5741 libs_mplayer
="$libs_mplayer -laudio"
5742 _aomodules
="sgi $_aomodules"
5744 def_sgiaudio
='#undef CONFIG_SGI_AUDIO'
5745 _noaomodules
="sgi $_noaomodules"
5747 echores
"$_sgiaudio"
5753 if test "$_dart" = auto
; then
5757 int main( void ) { return 0; }
5760 cc_check
-ldart && _dart
=yes
5762 if test "$_dart" = yes ; then
5763 def_dart
='#define CONFIG_DART 1'
5764 libs_mplayer
="$libs_mplayer -ldart"
5765 _aomodules
="dart $_aomodules"
5767 def_dart
='#undef CONFIG_DART'
5768 _noaomodules
="dart $_noaomodules"
5774 # set default CD/DVD devices
5775 if win32 || os2
; then
5776 default_cdrom_device
="D:"
5778 default_cdrom_device
="/dev/disk1"
5779 elif dragonfly
; then
5780 default_cdrom_device
="/dev/cd0"
5782 default_cdrom_device
="/dev/acd0"
5784 default_cdrom_device
="/dev/rcd0a"
5786 default_cdrom_device
="/vol/dev/aliases/cdrom0"
5787 # Modern Solaris versions use HAL instead of the vold daemon, the volfs
5788 # file system and the volfs service.
5789 test -r "/cdrom/cdrom0" && default_cdrom_device
="/cdrom/cdrom0"
5791 default_cdrom_device
="a1ide.device:2"
5793 default_cdrom_device
="/dev/cdrom"
5796 if win32 || os2 || dragonfly || freebsd || openbsd || sunos || amigaos
; then
5797 default_dvd_device
=$default_cdrom_device
5799 default_dvd_device
="/dev/rdiskN"
5801 default_dvd_device
="/dev/dvd"
5805 echocheck
"VCD support"
5806 if test "$_vcd" = auto
; then
5808 if linux || freebsd || netbsd || openbsd || dragonfly || bsdos || darwin || sunos
; then
5812 #include <ddk/ntddcdrm.h>
5813 int main(void) { return 0; }
5815 cc_check
&& _vcd
=yes
5818 if test "$_vcd" = yes; then
5819 _inputmodules
="vcd $_inputmodules"
5820 def_vcd
='#define CONFIG_VCD 1'
5822 def_vcd
='#undef CONFIG_VCD'
5823 _noinputmodules
="vcd $_noinputmodules"
5824 _res_comment
="not supported on this OS"
5831 if test "$_dvdread_internal" = auto
&& test ! -f "libdvdread4/dvd_reader.c" ; then
5832 _dvdread_internal
=no
5834 if test "$_dvdread_internal" = auto
; then
5835 _dvdread_internal
=no
5837 if (linux || freebsd || netbsd || openbsd || dragonfly || sunos || hpux
) \
5838 && (test "$_dvd" = yes ||
test "$_cdrom" = yes ||
test "$_cdio" = yes || \
5839 test "$_dvdio" = yes ||
test "$_bsdi_dvd" = yes) \
5840 || darwin || win32 || os2
; then
5841 _dvdread_internal
=yes
5843 extra_cflags
="-Ilibdvdread4 $extra_cflags"
5845 elif test "$_dvdread" = auto
; then
5847 if test "$_dl" = yes; then
5849 #include <inttypes.h>
5850 #include <dvdread/dvd_reader.h>
5851 #include <dvdread/ifo_types.h>
5852 #include <dvdread/ifo_read.h>
5853 #include <dvdread/nav_read.h>
5854 int main(void) { return 0; }
5856 _dvdreadcflags
=$
($_dvdreadconfig --cflags)
5857 _dvdreadlibs
=$
($_dvdreadconfig --libs)
5858 if cc_check
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE \
5859 $_dvdreadcflags $_dvdreadlibs $_ld_dl ; then
5861 extra_cflags
="$extra_cflags $_dvdreadcflags"
5862 extra_ldflags
="$extra_ldflags $_dvdreadlibs"
5863 _res_comment
="external"
5868 if test "$_dvdread_internal" = yes; then
5869 def_dvdread
='#define CONFIG_DVDREAD 1'
5870 _inputmodules
="dvdread(internal) $_inputmodules"
5872 _res_comment
="internal"
5873 elif test "$_dvdread" = yes; then
5874 def_dvdread
='#define CONFIG_DVDREAD 1'
5876 extra_ldflags
="$extra_ldflags -ldvdread"
5877 _inputmodules
="dvdread(external) $_inputmodules"
5878 _res_comment
="external"
5880 def_dvdread
='#undef CONFIG_DVDREAD'
5881 _noinputmodules
="dvdread $_noinputmodules"
5886 echocheck
"internal libdvdcss"
5887 if test "$_libdvdcss_internal" = auto
; then
5888 _libdvdcss_internal
=no
5889 test "$_dvdread_internal" = yes && _libdvdcss_internal
=yes
5890 hpux
&& test "$_hpux_scsi_h" = no
&& _libdvdcss_internal
=no
5892 if test "$_libdvdcss_internal" = yes ; then
5893 if linux || netbsd || openbsd || bsdos
; then
5894 def_dvd_linux
='#define HAVE_LINUX_DVD_STRUCT 1'
5895 openbsd
&& def_dvd_openbsd
='#define HAVE_OPENBSD_DVD_STRUCT 1'
5896 elif freebsd || dragonfly
; then
5897 def_dvd_bsd
='#define HAVE_BSD_DVD_STRUCT 1'
5899 def_dvd_darwin
='#define DARWIN_DVD_IOCTL'
5900 extra_ldflags
="$extra_ldflags -framework IOKit -framework Carbon"
5902 cflags_libdvdcss
="-DSYS_CYGWIN -DWIN32"
5904 cflags_libdvdcss
="-DSYS_BEOS"
5906 cflags_libdvdcss
="-DSYS_OS2"
5908 cflags_libdvdcss_dvdread
="-Ilibdvdcss"
5909 def_dvdcss
="#define HAVE_DVDCSS_DVDCSS_H 1"
5910 _inputmodules
="libdvdcss(internal) $_inputmodules"
5913 _noinputmodules
="libdvdcss(internal) $_noinputmodules"
5915 echores
"$_libdvdcss_internal"
5918 echocheck
"cdparanoia"
5919 if test "$_cdparanoia" = auto
; then
5921 #include <cdda_interface.h>
5922 #include <cdda_paranoia.h>
5923 // This need a better test. How ?
5924 int main(void) { void *test = cdda_verbose_set; return test == (void *)1; }
5927 for _inc_tmp
in "" "-I/usr/include/cdda" "-I/usr/local/include/cdda" ; do
5928 cc_check
$_inc_tmp -lcdda_interface -lcdda_paranoia $_ld_lm && \
5929 _cdparanoia
=yes && extra_cflags
="$extra_cflags $_inc_tmp" && break
5932 if test "$_cdparanoia" = yes ; then
5934 extra_ldflags
="$extra_ldflags -lcdda_interface -lcdda_paranoia"
5935 openbsd
&& extra_ldflags
="$extra_ldflags -lutil"
5937 echores
"$_cdparanoia"
5941 if test "$_libcdio" = auto
&& test "$_cdparanoia" = no
; then
5944 #include <cdio/version.h>
5945 #include <cdio/cdda.h>
5946 #include <cdio/paranoia.h>
5948 void *test = cdda_verbose_set;
5949 printf("%s\n", CDIO_VERSION);
5950 return test == (void *)1;
5954 for _ld_tmp
in "" "-lwinmm" ; do
5955 _ld_tmp
="-lcdio_cdda -lcdio -lcdio_paranoia $_ld_tmp"
5956 cc_check
$_ld_tmp $_ld_lm \
5957 && _libcdio
=yes && extra_ldflags
="$extra_ldflags $_ld_tmp" && break
5959 if test "$_libcdio" = no
&& $_pkg_config --exists libcdio_paranoia
; then
5960 _inc_tmp
=$
($_pkg_config --cflags libcdio_paranoia
)
5961 _ld_tmp
=$
($_pkg_config --libs libcdio_paranoia
)
5962 cc_check
$_inc_tmp $_ld_tmp $_ld_lm && _libcdio
=yes \
5963 && extra_ldflags
="$extra_ldflags $_ld_tmp" && extra_cflags
="$extra_cflags $_inc_tmp"
5966 if test "$_libcdio" = yes && test "$_cdparanoia" = no
; then
5968 def_libcdio
='#define CONFIG_LIBCDIO'
5969 def_havelibcdio
='yes'
5971 if test "$_cdparanoia" = yes ; then
5972 _res_comment
="using cdparanoia"
5974 def_libcdio
='#undef CONFIG_LIBCDIO'
5975 def_havelibcdio
='no'
5979 if test "$_cdda" = yes ; then
5980 test $_cddb = auto
&& test $_network = yes && _cddb
=yes
5981 def_cdparanoia
='#define CONFIG_CDDA'
5982 _inputmodules
="cdda $_inputmodules"
5984 def_cdparanoia
='#undef CONFIG_CDDA'
5985 _noinputmodules
="cdda $_noinputmodules"
5988 if test "$_cddb" = yes ; then
5989 def_cddb
='#define CONFIG_CDDB'
5990 _inputmodules
="cddb $_inputmodules"
5993 def_cddb
='#undef CONFIG_CDDB'
5994 _noinputmodules
="cddb $_noinputmodules"
5997 echocheck
"bitmap font support"
5998 if test "$_bitmap_font" = yes ; then
5999 def_bitmap_font
="#define CONFIG_BITMAP_FONT 1"
6001 def_bitmap_font
="#undef CONFIG_BITMAP_FONT"
6003 echores
"$_bitmap_font"
6006 echocheck
"freetype >= 2.0.9"
6008 # freetype depends on iconv
6009 if test "$_iconv" = no
; then
6011 _res_comment
="iconv support needed"
6014 if test "$_freetype" = auto
; then
6015 if ( $_freetypeconfig --version ) >/dev
/null
2>&1 ; then
6018 #include <ft2build.h>
6019 #include FT_FREETYPE_H
6020 #if ((FREETYPE_MAJOR < 2) || ((FREETYPE_MINOR == 0) && (FREETYPE_PATCH < 9)))
6021 #error "Need FreeType 2.0.9 or newer"
6025 FT_Int major=-1,minor=-1,patch=-1;
6026 int err=FT_Init_FreeType(&library);
6028 printf("Couldn't initialize freetype2 lib, err code: %d\n",err);
6031 FT_Library_Version(library,&major,&minor,&patch); // in v2.1.0+ only :(((
6032 printf("freetype2 header version: %d.%d.%d library version: %d.%d.%d\n",
6033 FREETYPE_MAJOR,FREETYPE_MINOR,FREETYPE_PATCH,
6034 (int)major,(int)minor,(int)patch );
6035 if (major!=FREETYPE_MAJOR || minor!=FREETYPE_MINOR) {
6036 printf("Library and header version mismatch! Fix it in your distribution!\n");
6043 cc_check $
($_freetypeconfig --cflags) $
($_freetypeconfig --libs) && tmp_run
&& _freetype
=yes
6048 if test "$_freetype" = yes ; then
6049 def_freetype
='#define CONFIG_FREETYPE'
6050 extra_cflags
="$extra_cflags $($_freetypeconfig --cflags)"
6051 extra_ldflags
="$extra_ldflags $($_freetypeconfig --libs)"
6053 def_freetype
='#undef CONFIG_FREETYPE'
6055 echores
"$_freetype"
6057 if test "$_freetype" = no
; then
6059 _res_comment
="FreeType support needed"
6061 echocheck
"fontconfig"
6062 if test "$_fontconfig" = auto
; then
6066 #include <fontconfig/fontconfig.h>
6069 if (err == FcFalse) {
6070 printf("Couldn't initialize fontconfig lib\n");
6077 for _ld_tmp
in "" "-lexpat -lfreetype" "-lexpat -lfreetype -lz" ; do
6078 _ld_tmp
="-lfontconfig $_ld_tmp"
6079 cc_check
$_ld_tmp && _fontconfig
=yes && extra_ldflags
="$extra_ldflags $_ld_tmp" && break
6081 if test "$_fontconfig" = no
&& $_pkg_config --exists fontconfig
; then
6082 _inc_tmp
=$
($_pkg_config --cflags fontconfig
)
6083 _ld_tmp
=$
($_pkg_config --libs fontconfig
)
6084 cc_check
$_inc_tmp $_ld_tmp && _fontconfig
=yes \
6085 && extra_ldflags
="$extra_ldflags $_ld_tmp" && extra_cflags
="$extra_cflags $_inc_tmp"
6088 if test "$_fontconfig" = yes ; then
6089 def_fontconfig
='#define CONFIG_FONTCONFIG'
6091 def_fontconfig
='#undef CONFIG_FONTCONFIG'
6093 echores
"$_fontconfig"
6096 echocheck
"SSA/ASS support"
6097 # libass depends on FreeType
6098 if test "$_freetype" = no
; then
6100 _res_comment
="FreeType support needed"
6103 if test "$_ass" = auto
; then
6105 #include <ft2build.h>
6106 #include FT_FREETYPE_H
6107 #if ((FREETYPE_MAJOR < 2) || (FREETYPE_MINOR < 1) || ((FREETYPE_MINOR == 1) && (FREETYPE_PATCH < 8)))
6108 #error "Need FreeType 2.1.8 or newer"
6110 int main(void) { return 0; }
6113 cc_check $
($_freetypeconfig --cflags) $
($_freetypeconfig --libs) && tmp_run
&& _ass
=yes
6114 if test "$_ass" = no
; then
6115 _res_comment
="FreeType >= 2.1.8 needed"
6118 if test "$_ass" = yes ; then
6119 def_ass
='#define CONFIG_ASS'
6121 def_ass
='#undef CONFIG_ASS'
6126 echocheck
"fribidi with charsets"
6127 if test "$_fribidi" = auto
; then
6128 if ( $_fribidiconfig --version ) >/dev
/null
2>&1 ; then
6131 /* workaround for fribidi 0.10.4 and below */
6132 #define FRIBIDI_CHARSET_UTF8 FRIBIDI_CHAR_SET_UTF8
6133 #include <fribidi/fribidi.h>
6135 if (fribidi_parse_charset("UTF-8") != FRIBIDI_CHAR_SET_UTF8) {
6136 printf("Fribidi headers are not consistents with the library!\n");
6143 cc_check $
($_fribidiconfig --cflags) $
($_fribidiconfig --libs) && tmp_run
&& _fribidi
=yes
6148 if test "$_fribidi" = yes ; then
6149 def_fribidi
='#define CONFIG_FRIBIDI'
6150 extra_cflags
="$extra_cflags $($_fribidiconfig --cflags)"
6151 extra_ldflags
="$extra_ldflags $($_fribidiconfig --libs)"
6153 def_fribidi
='#undef CONFIG_FRIBIDI'
6159 if test "$_enca" = auto
; then
6161 #include <sys/types.h>
6166 langs = enca_get_languages(&langcnt);
6171 cc_check
-lenca $_ld_lm && _enca
=yes
6173 if test "$_enca" = yes ; then
6174 def_enca
='#define CONFIG_ENCA 1'
6175 extra_ldflags
="$extra_ldflags -lenca"
6177 def_enca
='#undef CONFIG_ENCA'
6185 int main(void) { (void) inflate(0, Z_NO_FLUSH); return 0; }
6188 cc_check
-lz && _zlib
=yes
6189 if test "$_zlib" = yes ; then
6190 def_zlib
='#define CONFIG_ZLIB 1'
6191 extra_ldflags
="$extra_ldflags -lz"
6193 def_zlib
='#define CONFIG_ZLIB 0'
6194 _libavdecoders
=$
(echo $_libavdecoders |
sed -e s
/FLASHSV_DECODER
// -e s
/PNG_DECODER
// -e s
/ZMBV_DECODER
// -e s
/DXA_DECODER
// -e s
/TSCC_DECODER
//)
6195 _libavencoders
=$
(echo $_libavencoders |
sed -e s
/FLASHSV_ENCODER
// -e s
/PNG_ENCODER
// -e s
/ZMBV_ENCODER
//)
6202 def_bzlib
='#define CONFIG_BZLIB 0'
6205 int main(void) { BZ2_bzlibVersion(); return 0; }
6207 cc_check
-lbz2 && bzlib
=yes
6208 if test "$bzlib" = yes ; then
6209 def_bzlib
='#define CONFIG_BZLIB 1'
6210 extra_ldflags
="$extra_ldflags -lbz2"
6216 if test "$_rtc" = auto
; then
6218 #include <sys/ioctl.h>
6220 #include <linux/rtc.h>
6223 #define RTC_PIE_ON RTCIO_PIE_ON
6225 int main(void) { return RTC_PIE_ON; }
6228 cc_check
&& _rtc
=yes
6231 if test "$_rtc" = yes ; then
6232 def_rtc
='#define HAVE_RTC 1'
6234 def_rtc
='#undef HAVE_RTC'
6239 echocheck
"liblzo2 support"
6240 if test "$_liblzo" = auto
; then
6243 #include <lzo/lzo1x.h>
6244 int main(void) { lzo_init();return 0; }
6246 cc_check
-llzo2 && _liblzo
=yes
6248 if test "$_liblzo" = yes ; then
6249 def_liblzo
='#define CONFIG_LIBLZO 1'
6250 extra_ldflags
="$extra_ldflags -llzo2"
6251 _codecmodules
="liblzo $_codecmodules"
6253 def_liblzo
='#undef CONFIG_LIBLZO'
6254 _nocodecmodules
="liblzo $_nocodecmodules"
6259 echocheck
"mad support"
6260 if test "$_mad" = auto
; then
6264 int main(void) { return 0; }
6266 cc_check
-lmad && _mad
=yes
6268 if test "$_mad" = yes ; then
6269 def_mad
='#define CONFIG_LIBMAD 1'
6270 extra_ldflags
="$extra_ldflags -lmad"
6271 _codecmodules
="libmad $_codecmodules"
6273 def_mad
='#undef CONFIG_LIBMAD'
6274 _nocodecmodules
="libmad $_nocodecmodules"
6279 if test "$_twolame" = auto
; then
6281 #include <twolame.h>
6282 int main(void) { twolame_init(); return 0; }
6285 cc_check
-ltwolame $_ld_lm && _twolame
=yes
6287 if test "$_twolame" = yes ; then
6288 def_twolame
='#define CONFIG_TWOLAME 1'
6289 libs_mencoder
="$libs_mencoder -ltwolame"
6290 _codecmodules
="twolame $_codecmodules"
6292 def_twolame
='#undef CONFIG_TWOLAME'
6293 _nocodecmodules
="twolame $_nocodecmodules"
6298 if test "$_toolame" = auto
; then
6300 if test "$_twolame" = yes ; then
6301 _res_comment
="disabled by twolame"
6304 #include <toolame.h>
6305 int main(void) { toolame_init(); return 0; }
6307 cc_check
-ltoolame $_ld_lm && _toolame
=yes
6310 if test "$_toolame" = yes ; then
6311 def_toolame
='#define CONFIG_TOOLAME 1'
6312 libs_mencoder
="$libs_mencoder -ltoolame"
6313 _codecmodules
="toolame $_codecmodules"
6315 def_toolame
='#undef CONFIG_TOOLAME'
6316 _nocodecmodules
="toolame $_nocodecmodules"
6318 if test "$_toolamedir" ; then
6319 _res_comment
="using $_toolamedir"
6323 echocheck
"OggVorbis support"
6324 if test "$_tremor_internal" = yes; then
6326 elif test "$_tremor" = auto
; then
6329 #include <tremor/ivorbiscodec.h>
6330 int main(void) { vorbis_packet_blocksize(0,0); return 0; }
6332 cc_check
-logg -lvorbisidec $_ld_lm && _tremor
=yes && _libvorbis
=no
6334 if test "$_libvorbis" = auto
; then
6337 #include <vorbis/codec.h>
6338 int main(void) { vorbis_packet_blocksize(0,0); return 0; }
6340 cc_check
-lvorbis -logg $_ld_lm && _libvorbis
=yes
6342 if test "$_tremor_internal" = yes ; then
6344 def_vorbis
='#define CONFIG_OGGVORBIS 1'
6345 def_tremor
='#define CONFIG_TREMOR 1'
6346 _codecmodules
="tremor(internal) $_codecmodules"
6347 _res_comment
="internal Tremor"
6348 if test "$_tremor_low" = yes ; then
6349 cflags_tremor_low
="-D_LOW_ACCURACY_"
6350 _res_comment
="internal low accuracy Tremor"
6352 elif test "$_tremor" = yes ; then
6354 def_vorbis
='#define CONFIG_OGGVORBIS 1'
6355 def_tremor
='#define CONFIG_TREMOR 1'
6356 _codecmodules
="tremor(external) $_codecmodules"
6357 _res_comment
="external Tremor"
6358 extra_ldflags
="$extra_ldflags -logg -lvorbisidec"
6359 elif test "$_libvorbis" = yes ; then
6361 def_vorbis
='#define CONFIG_OGGVORBIS 1'
6362 _codecmodules
="libvorbis $_codecmodules"
6363 _res_comment
="libvorbis"
6364 extra_ldflags
="$extra_ldflags -lvorbis -logg"
6367 _nocodecmodules
="libvorbis $_nocodecmodules"
6371 echocheck
"libspeex (version >= 1.1 required)"
6372 if test "$_speex" = auto
; then
6375 #include <speex/speex.h>
6376 int main(void) { SpeexBits bits; void *dec; speex_decode_int(dec, &bits, dec); return 0; }
6378 cc_check
-lspeex $_ld_lm && _speex
=yes
6380 if test "$_speex" = yes ; then
6381 def_speex
='#define CONFIG_SPEEX 1'
6382 extra_ldflags
="$extra_ldflags -lspeex"
6383 _codecmodules
="speex $_codecmodules"
6385 def_speex
='#undef CONFIG_SPEEX'
6386 _nocodecmodules
="speex $_nocodecmodules"
6390 echocheck
"OggTheora support"
6391 if test "$_theora" = auto
; then
6394 #include <theora/theora.h>
6397 /* Theora is in flux, make sure that all interface routines and datatypes
6398 * exist and work the way we expect it, so we don't break MPlayer. */
6407 theora_info_init(&inf);
6408 theora_comment_init(&tc);
6412 /* we don't want to execute this kind of nonsense; just for making sure
6413 * that compilation works... */
6414 memset(&op, 0, sizeof(op));
6415 r = theora_decode_header(&inf, &tc, &op);
6416 r = theora_decode_init(&st, &inf);
6417 t = theora_granule_time(&st, op.granulepos);
6418 r = theora_decode_packetin(&st, &op);
6419 r = theora_decode_YUVout(&st, &yuv);
6425 _ld_theora
=$
($_pkg_config --silence-errors --libs theora
)
6426 _inc_theora
=$
($_pkg_config --silence-errors --cflags theora
)
6427 cc_check
$_inc_theora $_ld_theora && extra_ldflags
="$extra_ldflags $_ld_theora" &&
6428 extra_cflags
="$extra_cflags $_inc_theora" && _theora
=yes
6429 if test _theora
= no
; then
6430 _ld_theora
="-ltheora -logg"
6431 cc_check
$_ld_theora && extra_ldflags
="$extra_ldflags $_ld_theora" && _theora
=yes
6433 if test "$_theora" = no
&& test "$_tremor_internal" = yes; then
6434 _ld_theora
=$
($_pkg_config --silence-errors --libs theora
)
6435 _inc_theora
=$
($_pkg_config --silence-errors --cflags theora
)
6436 cc_check tremor
/bitwise.c
$_inc_theora $_ld_theora &&
6437 extra_ldflags
="$extra_ldflags $_ld_theora" &&
6438 extra_cflags
="$extra_cflags $_inc_theora" && _theora
=yes
6439 if test _theora
= no
; then
6440 _ld_theora
="-ltheora -logg"
6441 cc_check tremor
/bitwise.c
$_ld_theora &&
6442 extra_ldflags
="$extra_ldflags $_ld_theora" && _theora
=yes
6446 if test "$_theora" = yes ; then
6447 def_theora
='#define CONFIG_OGGTHEORA 1'
6448 _codecmodules
="libtheora $_codecmodules"
6449 # when --enable-theora is forced, we'd better provide a probably sane
6450 # $_ld_theora than nothing
6451 test -z "$_ld_theora" && extra_ldflags
="$extra_ldflags -ltheora -logg"
6453 def_theora
='#undef CONFIG_OGGTHEORA'
6454 _nocodecmodules
="libtheora $_nocodecmodules"
6458 echocheck
"internal mp3lib support"
6459 if test "$_mp3lib" = auto
; then
6460 test "$cc_vendor" = intel
&& _mp3lib
=no || _mp3lib
=yes
6462 if test "$_mp3lib" = yes ; then
6463 def_mp3lib
='#define CONFIG_MP3LIB 1'
6464 _codecmodules
="mp3lib(internal) $_codecmodules"
6466 def_mp3lib
='#undef CONFIG_MP3LIB'
6467 _nocodecmodules
="mp3lib(internal) $_nocodecmodules"
6471 echocheck
"liba52 support"
6472 if test "$_liba52_internal" = auto
; then
6473 test "$cc_vendor" = intel
&& _liba52_internal
=no || _liba52_internal
=yes
6475 def_liba52
='#undef CONFIG_LIBA52'
6476 def_liba52_internal
="#undef CONFIG_LIBA52_INTERNAL"
6477 if test "$_liba52_internal" = yes ; then
6479 def_liba52_internal
="#define CONFIG_LIBA52_INTERNAL 1"
6480 _res_comment
="internal"
6481 elif test "$_liba52_internal" = no
&& test "$_liba52" = auto
; then
6484 #include <inttypes.h>
6485 #include <a52dec/a52.h>
6486 int main(void) { a52_state_t *testHand; testHand=a52_init(0); return 0; }
6488 cc_check
-la52 && _liba52
=yes && _res_comment
="external" && extra_ldflags
="$extra_ldflags -la52"
6490 if test "$_liba52" = yes ; then
6491 def_liba52
='#define CONFIG_LIBA52 1'
6492 _codecmodules
="liba52($_res_comment) $_codecmodules"
6494 _nocodecmodules
="liba52 $_nocodecmodules"
6498 echocheck
"internal libmpeg2 support"
6499 if test "$_libmpeg2" = auto
; then
6501 if alpha
&& test cc_vendor
=gnu
; then
6503 2*|
3.0*|
3.1*) # cannot compile MVI instructions
6505 _res_comment
="broken gcc"
6510 if test "$_libmpeg2" = yes ; then
6511 def_libmpeg2
='#define CONFIG_LIBMPEG2 1'
6512 _codecmodules
="libmpeg2(internal) $_codecmodules"
6514 def_libmpeg2
='#undef CONFIG_LIBMPEG2'
6515 _nocodecmodules
="libmpeg2(internal) $_nocodecmodules"
6517 echores
"$_libmpeg2"
6519 echocheck
"libdca support"
6520 if test "$_libdca" = auto
; then
6523 #include <inttypes.h>
6525 int main(void) { dts_init(0); return 0; }
6527 for _ld_dca
in -ldts -ldca ; do
6528 cc_check
$_ld_dca $_ld_lm && extra_ldflags
="$extra_ldflags $_ld_dca" \
6529 && _libdca
=yes && break
6532 if test "$_libdca" = yes ; then
6533 def_libdca
='#define CONFIG_LIBDCA 1'
6534 _codecmodules
="libdca $_codecmodules"
6536 def_libdca
='#undef CONFIG_LIBDCA'
6537 _nocodecmodules
="libdca $_nocodecmodules"
6541 echocheck
"libmpcdec (musepack, version >= 1.2.1 required)"
6542 if test "$_musepack" = auto
; then
6546 #include <mpcdec/mpcdec.h>
6548 mpc_streaminfo info;
6549 mpc_decoder decoder;
6550 mpc_decoder_set_streaminfo(&decoder, &info);
6551 mpc_decoder_decode_frame(&decoder, NULL, 0, NULL);
6555 cc_check
-lmpcdec $_ld_lm && _musepack
=yes
6557 if test "$_musepack" = yes ; then
6558 def_musepack
='#define CONFIG_MUSEPACK 1'
6559 extra_ldflags
="$extra_ldflags -lmpcdec"
6560 _codecmodules
="musepack $_codecmodules"
6562 def_musepack
='#undef CONFIG_MUSEPACK'
6563 _nocodecmodules
="musepack $_nocodecmodules"
6565 echores
"$_musepack"
6568 echocheck
"FAAC support"
6569 if test "$_faac" = auto
; then
6571 #include <inttypes.h>
6573 int main(void) { unsigned long x, y; faacEncOpen(48000, 2, &x, &y); return 0; }
6576 for _ld_faac
in "-lfaac" "-lfaac -lmp4v2 -lstdc++" ; do
6577 cc_check
-O4 $_ld_faac $_ld_lm && libs_mencoder
="$libs_mencoder $_ld_faac" && _faac
=yes && break
6580 if test "$_faac" = yes ; then
6581 def_faac
="#define CONFIG_FAAC 1"
6582 test "$_faac_lavc" = auto
&& _faac_lavc
=yes
6583 if test "$_faac_lavc" = yes ; then
6584 def_faac_lavc
="#define CONFIG_LIBFAAC 1"
6585 libs_mplayer
="$libs_mplayer $_ld_faac"
6586 _libavencoders
="$_libavencoders LIBFAAC_ENCODER"
6588 _codecmodules
="faac $_codecmodules"
6591 def_faac
="#undef CONFIG_FAAC"
6592 def_faac_lavc
="#define CONFIG_LIBFAAC 0"
6593 _nocodecmodules
="faac $_nocodecmodules"
6595 _res_comment
="in libavcodec: $_faac_lavc"
6599 echocheck
"FAAD2 support"
6600 if test "$_faad_internal" = auto
; then
6601 if x86_32
&& test cc_vendor
=gnu
; then
6603 3.1*|
3.2) # ICE/insn with these versions
6605 _res_comment
="broken gcc"
6617 if test "$_faad" = auto
; then
6620 #ifndef FAAD_MIN_STREAMSIZE
6621 #error Too old version
6623 int main(void) { faacDecHandle testhand; faacDecFrameInfo testinfo;
6624 testhand = faacDecOpen(); faacDecInit(0, 0, 0, 0, 0); return 0; }
6626 cc_check
-lfaad $_ld_lm && _faad
=yes
6629 def_faad
='#undef CONFIG_FAAD'
6630 def_faad_internal
="#undef CONFIG_FAAD_INTERNAL"
6631 if test "$_faad_internal" = yes ; then
6632 def_faad_internal
="#define CONFIG_FAAD_INTERNAL 1"
6633 _res_comment
="internal floating-point"
6634 if test "$_faad_fixed" = yes ; then
6635 # The FIXED_POINT implementation of FAAD2 improves performance
6636 # on some platforms, especially for SBR files.
6637 cflags_faad_fixed
="-DFIXED_POINT"
6638 _res_comment
="internal fixed-point"
6640 elif test "$_faad" = yes ; then
6641 extra_ldflags
="$extra_ldflags -lfaad"
6644 if test "$_faad" = yes ; then
6645 def_faad
='#define CONFIG_FAAD 1'
6646 if test "$_faad_internal" = yes ; then
6647 _codecmodules
="faad2(internal) $_codecmodules"
6649 _codecmodules
="faad2 $_codecmodules"
6653 _nocodecmodules
="faad2 $_nocodecmodules"
6658 echocheck
"LADSPA plugin support"
6659 if test "$_ladspa" = auto
; then
6664 const LADSPA_Descriptor *ld = NULL;
6669 cc_check
&& _ladspa
=yes
6671 if test "$_ladspa" = yes; then
6672 def_ladspa
="#define CONFIG_LADSPA"
6674 def_ladspa
="#undef CONFIG_LADSPA"
6679 echocheck
"libbs2b audio filter support"
6680 if test "$_libbs2b" = auto
; then
6683 #if BS2B_VERSION_MAJOR < 3
6684 #error Please use libbs2b >= 3.0.0, older versions are not supported.
6694 if $_pkg_config --exists libbs2b
; then
6695 _inc_tmp
=$
($_pkg_config --cflags libbs2b
)
6696 _ld_tmp
=$
($_pkg_config --libs libbs2b
)
6697 cc_check
$_inc_tmp $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" &&
6698 extra_cflags
="$extra_cflags $_inc_tmp" && _libbs2b
=yes
6700 for _inc_tmp
in "" -I/usr
/include
/bs2b
-I/usr
/local
/include \
6701 -I/usr
/local
/include
/bs2b
; do
6702 if cc_check
$_inc_tmp $_ld_lm -lbs2b ; then
6703 extra_ldflags
="$extra_ldflags -lbs2b"
6704 extra_cflags
="$extra_cflags $_inc_tmp"
6711 def_libbs2b
="#undef CONFIG_LIBBS2B"
6712 test "$_libbs2b" = yes && def_libbs2b
="#define CONFIG_LIBBS2B"
6716 if test -z "$_codecsdir" ; then
6717 for dir
in "$_libdir/codecs" "$_libdir/win32" /usr
/local
/lib
/codecs \
6718 /usr
/lib
/codecs
/usr
/local
/lib
/win32
/usr
/lib
/win32
; do
6719 if test -d "$dir" ; then
6725 # Fall back on default directory.
6726 if test -z "$_codecsdir" ; then
6727 _codecsdir
="$_libdir/codecs"
6728 mingw32
&& _codecsdir
="codecs"
6729 os2
&& _codecsdir
="codecs"
6733 echocheck
"Win32 codecs"
6734 if test "$_win32dll" = auto
; then
6736 if x86_32
&& ! qnx
; then
6740 if test "$_win32dll" = yes ; then
6741 def_win32dll
='#define CONFIG_WIN32DLL 1'
6742 test -z "$_win32codecsdir" && _win32codecsdir
=$_codecsdir
6743 _res_comment
="using $_win32codecsdir"
6745 def_win32_loader
='#define WIN32_LOADER 1'
6746 _win32_emulation
=yes
6748 extra_ldflags
="$extra_ldflags -ladvapi32 -lole32"
6749 _res_comment
="using native windows"
6751 _codecmodules
="win32 $_codecmodules"
6753 def_win32dll
='#undef CONFIG_WIN32DLL'
6754 def_win32_loader
='#undef WIN32_LOADER'
6755 _nocodecmodules
="win32 $_nocodecmodules"
6757 echores
"$_win32dll"
6760 echocheck
"XAnim codecs"
6761 if test "$_xanim" = auto
; then
6763 _res_comment
="dynamic loader support needed"
6764 if test "$_dl" = yes ; then
6768 if test "$_xanim" = yes ; then
6769 test -z "$_xanimcodecsdir" && _xanimcodecsdir
=$_codecsdir
6770 def_xanim
='#define CONFIG_XANIM 1'
6771 def_xanim_path
="#define XACODEC_PATH \"$_xanimcodecsdir\""
6772 _codecmodules
="xanim $_codecmodules"
6773 _res_comment
="using $_xanimcodecsdir"
6775 def_xanim
='#undef CONFIG_XANIM'
6776 def_xanim_path
='#undef XACODEC_PATH'
6777 _nocodecmodules
="xanim $_nocodecmodules"
6782 echocheck
"RealPlayer codecs"
6783 if test "$_real" = auto
; then
6785 _res_comment
="dynamic loader support needed"
6786 if test "$_dl" = yes ||
test "$_win32dll" = yes &&
6787 (linux || freebsd || netbsd || openbsd || dragonfly || darwin || win32
) ; then
6791 if test "$_real" = yes ; then
6792 test -z "$_realcodecsdir" && _realcodecsdir
="$_codecsdir"
6793 def_real
='#define CONFIG_REALCODECS 1'
6794 def_real_path
="#define REALCODEC_PATH \"$_realcodecsdir\""
6795 _codecmodules
="real $_codecmodules"
6796 _res_comment
="using $_realcodecsdir"
6798 def_real
='#undef CONFIG_REALCODECS'
6799 def_real_path
="#undef REALCODEC_PATH"
6800 _nocodecmodules
="real $_nocodecmodules"
6805 echocheck
"QuickTime codecs"
6807 def_qtx_win32
='#undef CONFIG_QTX_CODECS_WIN32'
6808 def_quicktime
='#undef CONFIG_QUICKTIME'
6809 if test "$_qtx" = auto
; then
6810 test "$_win32dll" = yes || darwin
&& _qtx
=yes
6812 if test "$_qtx" = yes ; then
6813 darwin
&& extra_ldflags
="$extra_ldflags -framework QuickTime" && def_quicktime
='#define CONFIG_QUICKTIME 1'
6814 def_qtx
='#define CONFIG_QTX_CODECS 1'
6815 win32
&& _qtx_codecs_win32
=yes && def_qtx_win32
='#define CONFIG_QTX_CODECS_WIN32 1'
6816 _codecmodules
="qtx $_codecmodules"
6817 darwin || win32 || _qtx_emulation
=yes
6819 def_qtx
='#undef CONFIG_QTX_CODECS'
6820 _nocodecmodules
="qtx $_nocodecmodules"
6824 echocheck
"Nemesi Streaming Media libraries"
6825 if test "$_nemesi" = auto
&& test "$_network" = yes ; then
6827 if $_pkg_config libnemesi
--atleast-version=0.6.3 ; then
6828 extra_cflags
="$extra_cflags $($_pkg_config --cflags libnemesi)"
6829 extra_ldflags
="$extra_ldflags $($_pkg_config --libs libnemesi)"
6833 if test "$_nemesi" = yes; then
6835 def_nemesi
='#define CONFIG_LIBNEMESI 1'
6836 _inputmodules
="nemesi $_inputmodules"
6838 _native_rtsp
="$_network"
6840 def_nemesi
='#undef CONFIG_LIBNEMESI'
6841 _noinputmodules
="nemesi $_noinputmodules"
6845 echocheck
"LIVE555 Streaming Media libraries"
6846 if test "$_live" = auto
&& test "$_network" = yes ; then
6847 cat > $TMPCPP << EOF
6848 #include <liveMedia.hh>
6849 #if (LIVEMEDIA_LIBRARY_VERSION_INT < 1141257600)
6850 #error Please upgrade to version 2006.03.03 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
6852 int main(void) { return 0; }
6856 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
6857 cxx_check
$I/liveMedia
/include
$I/UsageEnvironment
/include \
6858 $I/groupsock
/include
&& _livelibdir
=$
(echo $I|
sed s
/-I//) && \
6859 extra_ldflags
="$_livelibdir/liveMedia/libliveMedia.a \
6860 $_livelibdir/groupsock/libgroupsock.a \
6861 $_livelibdir/UsageEnvironment/libUsageEnvironment.a \
6862 $_livelibdir/BasicUsageEnvironment/libBasicUsageEnvironment.a \
6863 $extra_ldflags -lstdc++" \
6864 extra_cxxflags
="-I$_livelibdir/liveMedia/include \
6865 -I$_livelibdir/UsageEnvironment/include \
6866 -I$_livelibdir/BasicUsageEnvironment/include \
6867 -I$_livelibdir/groupsock/include" && \
6870 if test "$_live" != yes ; then
6871 if cxx_check
-I/usr
/include
/liveMedia
-I/usr
/include
/UsageEnvironment
-I/usr
/include
/groupsock
; then
6876 if test "$_live" = yes && test "$_network" = yes; then
6877 test $_livelibdir && _res_comment
="using $_livelibdir"
6878 def_live
='#define CONFIG_LIVE555 1'
6879 _inputmodules
="live555 $_inputmodules"
6880 elif test "$_live_dist" = yes && test "$_network" = yes; then
6881 _res_comment
="using distribution version"
6883 def_live
='#define CONFIG_LIVE555 1'
6884 extra_ldflags
="$extra_ldflags -lliveMedia -lgroupsock -lUsageEnvironment -lBasicUsageEnvironment -lstdc++"
6885 extra_cxxflags
="-I/usr/include/liveMedia -I/usr/include/UsageEnvironment \
6886 -I/usr/include/BasicUsageEnvironment -I/usr/include/groupsock"
6887 _inputmodules
="live555 $_inputmodules"
6890 def_live
='#undef CONFIG_LIVE555'
6891 _noinputmodules
="live555 $_noinputmodules"
6896 echocheck
"FFmpeg libavutil"
6897 if test "$_libavutil_a" = auto
; then
6898 if test -d ffmpeg
/libavutil
; then
6900 _res_comment
="static"
6902 die
"MPlayer will not compile without libavutil in the source tree."
6904 elif test "$_libavutil_so" = auto
; then
6907 #include <libavutil/common.h>
6908 int main(void) { av_gcd(1,1); return 0; }
6910 if $_pkg_config --exists libavutil
; then
6911 _inc_libavutil
=$
($_pkg_config --cflags libavutil
)
6912 _ld_tmp
=$
($_pkg_config --libs libavutil
)
6913 cc_check
$_inc_libavutil $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" \
6914 && _libavutil_so
=yes
6915 elif cc_check
-lavutil $_ld_lm ; then
6916 extra_ldflags
="$extra_ldflags -lavutil"
6918 _res_comment
="using libavutil.so, but static libavutil is recommended"
6922 def_libavutil
='#undef CONFIG_LIBAVUTIL'
6923 def_libavutil_a
='#undef CONFIG_LIBAVUTIL_A'
6924 def_libavutil_so
='#undef CONFIG_LIBAVUTIL_SO'
6925 test "$_libavutil_a" = yes ||
test "$_libavutil_so" = yes && _libavutil
=yes
6926 test "$_libavutil" = yes && def_libavutil
='#define CONFIG_LIBAVUTIL 1'
6927 test "$_libavutil_a" = yes && def_libavutil_a
='#define CONFIG_LIBAVUTIL_A 1'
6928 test "$_libavutil_so" = yes && def_libavutil_so
='#define CONFIG_LIBAVUTIL_SO 1'
6929 # neither static nor shared libavutil is available, but it is mandatory ...
6930 if test "$_libavutil" = no
; then
6931 die
"You need static or shared libavutil, MPlayer will not compile without!"
6933 echores
"$_libavutil"
6935 echocheck
"FFmpeg libavcodec"
6936 if test "$_libavcodec_a" = auto
; then
6938 if test -d ffmpeg
/libavcodec
&& test -f ffmpeg
/libavcodec
/utils.c
; then
6940 _res_comment
="static"
6942 elif test "$_libavcodec_so" = auto
; then
6944 _res_comment
="libavcodec.so is discouraged over static libavcodec"
6946 #include <libavcodec/avcodec.h>
6947 int main(void) { avcodec_find_encoder_by_name(""); return 0; }
6949 if $_pkg_config --exists libavcodec
; then
6950 _inc_libavcodec
=$
($_pkg_config --cflags libavcodec
)
6951 _ld_tmp
=$
($_pkg_config --libs libavcodec
)
6952 cc_check
$_inc_libavcodec $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" \
6953 && _libavcodec_so
=yes
6954 elif cc_check
-lavcodec $_ld_lm ; then
6955 extra_ldflags
="$extra_ldflags -lavcodec"
6957 _res_comment
="using libavcodec.so, but static libavcodec is recommended"
6961 def_libavcodec
='#undef CONFIG_LIBAVCODEC'
6962 def_libavcodec_a
='#undef CONFIG_LIBAVCODEC_A'
6963 def_libavcodec_so
='#undef CONFIG_LIBAVCODEC_SO'
6964 test "$_libavcodec_a" = yes ||
test "$_libavcodec_so" = yes && _libavcodec
=yes
6965 test "$_libavcodec" = yes && def_libavcodec
='#define CONFIG_LIBAVCODEC 1'
6966 test "$_libavcodec_a" = yes && def_libavcodec_a
='#define CONFIG_LIBAVCODEC_A 1'
6967 test "$_libavcodec_so" = yes && def_libavcodec_so
='#define CONFIG_LIBAVCODEC_SO 1'
6968 test "$_libavcodec_mpegaudio_hp" = yes \
6969 && def_libavcodec_mpegaudio_hp
='#define CONFIG_MPEGAUDIO_HP 1'
6970 if test "$_libavcodec_a" = yes ; then
6971 _codecmodules
="libavcodec(internal) $_codecmodules"
6972 elif test "$_libavcodec_so" = yes ; then
6973 _codecmodules
="libavcodec.so $_codecmodules"
6975 _nocodecmodules
="libavcodec $_nocodecmodules"
6977 echores
"$_libavcodec"
6979 echocheck
"FFmpeg libavformat"
6980 if test "$_libavformat_a" = auto
; then
6982 if test -d ffmpeg
/libavformat
&& test -f ffmpeg
/libavformat
/utils.c
; then
6984 _res_comment
="static"
6986 elif test "$_libavformat_so" = auto
; then
6989 #include <libavformat/avformat.h>
6990 #include <libavcodec/opt.h>
6991 int main(void) { av_alloc_format_context(); return 0; }
6993 if $_pkg_config --exists libavformat
; then
6994 _inc_libavformat
=$
($_pkg_config --cflags libavformat
)
6995 _ld_tmp
=$
($_pkg_config --libs libavformat
)
6996 cc_check
$_inc_libavformat $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" \
6997 && _libavformat_so
=yes
6998 elif cc_check
$_ld_lm -lavformat ; then
6999 extra_ldflags
="$extra_ldflags -lavformat"
7001 _res_comment
="using libavformat.so, but static libavformat is recommended"
7005 def_libavformat
='#undef CONFIG_LIBAVFORMAT'
7006 def_libavformat_a
='#undef CONFIG_LIBAVFORMAT_A'
7007 def_libavformat_so
='#undef CONFIG_LIBAVFORMAT_SO'
7008 test "$_libavformat_a" = yes ||
test "$_libavformat_so" = yes && _libavformat
=yes
7009 test "$_libavformat" = yes && def_libavformat
='#define CONFIG_LIBAVFORMAT 1'
7010 test "$_libavformat_a" = yes && def_libavformat_a
='#define CONFIG_LIBAVFORMAT_A 1'
7011 test "$_libavformat_so" = yes \
7012 && def_libavformat_so
='#define CONFIG_LIBAVFORMAT_SO 1'
7013 echores
"$_libavformat"
7015 echocheck
"FFmpeg libpostproc"
7016 if test "$_libpostproc_a" = auto
; then
7018 if test -d ffmpeg
/libpostproc
&& test -f ffmpeg
/libpostproc
/postprocess.h
; then
7019 _libpostproc_a
='yes'
7020 _res_comment
="static"
7022 elif test "$_libpostproc_so" = auto
; then
7025 #include <inttypes.h>
7026 #include <libpostproc/postprocess.h>
7027 int main(void) { pp_get_mode_by_name_and_quality("de", 0); return 0; }
7029 if cc_check
-lpostproc $_ld_lm ; then
7030 extra_ldflags
="$extra_ldflags -lpostproc"
7032 _res_comment
="using libpostproc.so, but static libpostproc is recommended"
7036 def_libpostproc
='#undef CONFIG_LIBPOSTPROC'
7037 def_libpostproc_a
='#undef CONFIG_LIBPOSTPROC_A'
7038 def_libpostproc_so
='#undef CONFIG_LIBPOSTPROC_SO'
7039 test "$_libpostproc_a" = yes ||
test "$_libpostproc_so" = yes && _libpostproc
=yes
7040 test "$_libpostproc" = yes && def_libpostproc
='#define CONFIG_LIBPOSTPROC 1'
7041 test "$_libpostproc_a" = yes && def_libpostproc_a
='#define CONFIG_LIBPOSTPROC_A 1'
7042 test "$_libpostproc_so" = yes \
7043 && def_libpostproc_so
='#define CONFIG_LIBPOSTPROC_SO 1'
7044 echores
"$_libpostproc"
7046 echocheck
"FFmpeg libswscale"
7047 if test "$_libswscale_a" = auto
; then
7049 if test -d libswscale
&& test -f libswscale
/swscale.h
; then
7051 _res_comment
="static"
7053 elif test "$_libswscale_so" = auto
; then
7055 _res_comment
="using libswscale.so, but static libswscale is recommended"
7057 #include <libswscale/swscale.h>
7058 int main(void) { sws_scale(0, 0, 0, 0, 0, 0, 0); return 0; }
7060 if $_pkg_config --exists libswscale
; then
7061 _inc_libswscale
=$
($_pkg_config --cflags libswscale
)
7062 _ld_tmp
=$
($_pkg_config --libs libswscale
)
7063 cc_check
$_inc_libswscale $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" \
7064 && _libswscale_so
=yes
7065 elif cc_check
-lswscale ; then
7066 extra_ldflags
="$extra_ldflags -lswscale"
7071 def_libswscale
='#undef CONFIG_LIBSWSCALE'
7072 def_libswscale_a
='#undef CONFIG_LIBSWSCALE_A'
7073 def_libswscale_so
='#undef CONFIG_LIBSWSCALE_SO'
7074 test "$_libswscale_a" = yes ||
test "$_libswscale_so" = yes && _libswscale
=yes
7075 test "$_libswscale" = yes && def_libswscale
='#define CONFIG_LIBSWSCALE 1'
7076 test "$_libswscale_a" = yes && def_libswscale_a
='#define CONFIG_LIBSWSCALE_A 1'
7077 test "$_libswscale_so" = yes \
7078 && def_libswscale_so
='#define CONFIG_LIBSWSCALE_SO 1'
7079 echores
"$_libswscale"
7081 echocheck
"libamr narrowband"
7082 if test "$_libamr_nb" = auto
; then
7085 #include <amrnb/sp_dec.h>
7086 int main(void) { Speech_Decode_Frame_init(); return 0; }
7088 cc_check
-lamrnb && _libamr_nb
=yes
7089 if test "$_libavcodec_a" != yes ; then
7091 _res_comment
="libavcodec (static) is required by libamr_nb, sorry"
7094 if test "$_libamr_nb" = yes ; then
7096 extra_ldflags
="$extra_ldflags -lamrnb"
7097 def_libamr
='#define CONFIG_LIBAMR 1'
7098 def_libamr_nb
='#define CONFIG_LIBAMR_NB 1'
7099 _libavdecoders
="$_libavdecoders LIBAMR_NB_DECODER"
7100 _libavencoders
="$_libavencoders LIBAMR_NB_ENCODER"
7101 _codecmodules
="libamr_nb $_codecmodules"
7103 def_libamr_nb
='#define CONFIG_LIBAMR_NB 0'
7104 _nocodecmodules
="libamr_nb $_nocodecmodules"
7106 echores
"$_libamr_nb"
7109 echocheck
"libamr wideband"
7110 if test "$_libamr_wb" = auto
; then
7113 #include <amrwb/dec_if.h>
7114 int main(void) { D_IF_init(); return 0; }
7116 cc_check
-lamrwb && _libamr_wb
=yes
7117 if test "$_libavcodec_a" != yes ; then
7119 _res_comment
="libavcodec (static) is required by libamr_wb, sorry"
7122 if test "$_libamr_wb" = yes ; then
7124 extra_ldflags
="$extra_ldflags -lamrwb"
7125 def_libamr
='#define CONFIG_LIBAMR 1'
7126 def_libamr_wb
='#define CONFIG_LIBAMR_WB 1'
7127 _libavdecoders
="$_libavdecoders LIBAMR_WB_DECODER"
7128 _libavencoders
="$_libavencoders LIBAMR_WB_ENCODER"
7129 _codecmodules
="libamr_wb $_codecmodules"
7131 def_libamr_wb
='#define CONFIG_LIBAMR_WB 0'
7132 _nocodecmodules
="libamr_wb $_nocodecmodules"
7134 echores
"$_libamr_wb"
7136 echocheck
"libdv-0.9.5+"
7137 if test "$_libdv" = auto
; then
7140 #include <libdv/dv.h>
7141 int main(void) { dv_encoder_t* enc=dv_encoder_new(1,1,1); return 0; }
7143 cc_check
-ldv $_ld_pthread $_ld_lm && _libdv
=yes
7145 if test "$_libdv" = yes ; then
7146 def_libdv
='#define CONFIG_LIBDV095 1'
7147 extra_ldflags
="$extra_ldflags -ldv"
7148 _codecmodules
="libdv $_codecmodules"
7150 def_libdv
='#undef CONFIG_LIBDV095'
7151 _nocodecmodules
="libdv $_nocodecmodules"
7157 if test "$_xvid" = auto
; then
7161 int main(void) { xvid_global(0, 0, 0, 0); return 0; }
7163 for _ld_tmp
in "-lxvidcore $_ld_lm" "-lxvidcore $_ld_lm $_ld_pthread" ; do
7164 cc_check
$_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && _xvid
=yes && break
7168 if test "$_xvid" = yes ; then
7169 def_xvid
='#define CONFIG_XVID4 1'
7170 _codecmodules
="xvid $_codecmodules"
7172 def_xvid
='#undef CONFIG_XVID4'
7173 _nocodecmodules
="xvid $_nocodecmodules"
7177 echocheck
"Xvid two pass plugin"
7178 if test "$_xvid" = yes && test "$_xvid_lavc" = auto
; then
7181 int main(void) { xvid_plugin_2pass2_t s; s.vbv_size=0; return 0; }
7183 cc_check
&& _xvid_lavc
=yes
7185 if test "$_xvid_lavc" = yes ; then
7186 def_xvid_lavc
='#define CONFIG_LIBXVID 1'
7187 _libavencoders
="$_libavencoders LIBXVID_ENCODER"
7190 def_xvid_lavc
='#define CONFIG_LIBXVID 0'
7192 echores
"$_xvid_lavc"
7196 if test "$_x264" = auto
; then
7198 #include <inttypes.h>
7201 #error We do not support old versions of x264. Get the latest from SVN.
7203 int main(void) { x264_encoder_open((void*)0); return 0; }
7206 for _ld_x264
in "-lx264 $_ld_pthread" "-lx264 $_ld_pthread $_ld_lm" ; do
7207 cc_check
$_ld_x264 && libs_mencoder
="$libs_mencoder $_ld_x264" && _x264
=yes && break
7211 if test "$_x264" = yes ; then
7212 def_x264
='#define CONFIG_X264 1'
7213 _codecmodules
="x264 $_codecmodules"
7214 test "$_x264_lavc" = auto
&& _x264_lavc
=yes
7215 if test "$_x264_lavc" = yes ; then
7216 def_x264_lavc
='#define CONFIG_LIBX264 1'
7217 libs_mplayer
="$libs_mplayer $_ld_x264"
7218 _libavencoders
="$_libavencoders LIBX264_ENCODER"
7222 def_x264
='#undef CONFIG_X264'
7223 def_x264_lavc
='#define CONFIG_LIBX264 0'
7224 _nocodecmodules
="x264 $_nocodecmodules"
7226 _res_comment
="in libavcodec: $_x264_lavc"
7230 echocheck
"libdirac"
7231 if test "$_libdirac_lavc" = auto
; then
7233 if test "$_libavcodec_a" != yes; then
7234 _res_comment
="libavcodec (static) is required by libdirac, sorry"
7237 #include <libdirac_encoder/dirac_encoder.h>
7238 #include <libdirac_decoder/dirac_parser.h>
7241 dirac_encoder_context_t enc_ctx;
7242 dirac_decoder_t *dec_handle;
7243 dirac_encoder_context_init(&enc_ctx, VIDEO_FORMAT_SD_576I50);
7244 dec_handle = dirac_decoder_init(0);
7246 dirac_decoder_close(dec_handle);
7250 if $_pkg_config --exists dirac
; then
7251 _inc_dirac
=$
($_pkg_config --silence-errors --cflags dirac
)
7252 _ld_dirac
=$
($_pkg_config --silence-errors --libs dirac
)
7253 cc_check
$_inc_dirac $_ld_dirac &&
7254 _libdirac_lavc
=yes &&
7255 extra_cflags
="$extra_cflags $_inc_dirac" &&
7256 extra_ldflags
="$extra_ldflags $_ld_dirac"
7260 if test "$_libdirac_lavc" = yes ; then
7261 def_libdirac_lavc
='#define CONFIG_LIBDIRAC 1'
7262 _libavencoders
="$_libavencoders LIBDIRAC_ENCODER"
7263 _libavdecoders
="$_libavdecoders LIBDIRAC_DECODER"
7264 _codecmodules
="libdirac $_codecmodules"
7266 def_libdirac_lavc
='#define CONFIG_LIBDIRAC 0'
7267 _nocodecmodules
="libdirac $_nocodecmodules"
7269 echores
"$_libdirac_lavc"
7272 echocheck
"libschroedinger"
7273 if test "$_libschroedinger_lavc" = auto
; then
7274 _libschroedinger_lavc
=no
7275 if test "$_libavcodec_a" != yes; then
7276 _res_comment
="libavcodec (static) is required by libschroedinger, sorry"
7279 #include <schroedinger/schro.h>
7280 int main(void) { schro_init(); return 0; }
7282 if $_pkg_config --exists schroedinger-1.0
; then
7283 _inc_schroedinger
=$
($_pkg_config --silence-errors --cflags schroedinger-1.0
)
7284 _ld_schroedinger
=$
($_pkg_config --silence-errors --libs schroedinger-1.0
)
7285 cc_check
$_inc_schroedinger $_ld_schroedinger &&
7286 _libschroedinger_lavc
=yes &&
7287 extra_cflags
="$extra_cflags $_inc_schroedinger" &&
7288 extra_ldflags
="$extra_ldflags $_ld_schroedinger"
7292 if test "$_libschroedinger_lavc" = yes ; then
7293 def_libschroedinger_lavc
='#define CONFIG_LIBSCHROEDINGER 1'
7294 _libavencoders
="$_libavencoders LIBSCHROEDINGER_ENCODER"
7295 _libavdecoders
="$_libavdecoders LIBSCHROEDINGER_DECODER"
7296 _codecmodules
="libschroedinger $_codecmodules"
7298 def_libschroedinger_lavc
='#define CONFIG_LIBSCHROEDINGER 0'
7299 _nocodecmodules
="libschroedinger $_nocodecmodules"
7301 echores
"$_libschroedinger_lavc"
7304 if test "$_libnut" = auto
; then
7308 #include <inttypes.h>
7310 nut_context_tt * nut;
7311 int main(void) { (void)nut_error(0); return 0; }
7314 cc_check
-lnut && _libnut
=yes
7317 if test "$_libnut" = yes ; then
7318 def_libnut
='#define CONFIG_LIBNUT 1'
7319 extra_ldflags
="$extra_ldflags -lnut"
7321 def_libnut
='#undef CONFIG_LIBNUT'
7325 #check must be done after libavcodec one
7327 if test "$_zr" = auto
; then
7328 #36067's seem to identify themselves as 36057PQC's, so the line
7329 #below should work for 36067's and 36057's.
7330 if grep -q -s -e "Multimedia video controller: Zoran Corporation ZR36057" /proc
/pci
; then
7336 if test "$_zr" = yes ; then
7337 if test "$_libavcodec_a" = yes ; then
7338 def_zr
='#define CONFIG_ZR 1'
7339 _vomodules
="zr zr2 $_vomodules"
7341 _res_comment
="libavcodec (static) is required by zr, sorry"
7342 _novomodules
="zr $_novomodules"
7343 def_zr
='#undef CONFIG_ZR'
7346 def_zr
='#undef CONFIG_ZR'
7347 _novomodules
="zr zr2 $_novomodules"
7351 # mencoder requires (optional) those libs: libmp3lame
7352 if test "$_mencoder" != no
; then
7354 echocheck
"libmp3lame"
7355 def_mp3lame_preset
='#undef CONFIG_MP3LAME_PRESET'
7356 def_mp3lame_preset_medium
='#undef CONFIG_MP3LAME_PRESET_MEDIUM'
7357 if test "$_mp3lame" = auto
; then
7360 #include <lame/lame.h>
7361 int main(void) { lame_version_t lv; (void) lame_init();
7362 get_lame_version_numerical(&lv); printf("%d%d\n",lv.major,lv.minor);
7365 cc_check
-lmp3lame $_ld_lm && tmp_run
&& _mp3lame
=yes
7367 if test "$_mp3lame" = yes ; then
7368 def_mp3lame
="#define CONFIG_MP3LAME"
7369 _ld_mp3lame
=-lmp3lame
7370 libs_mencoder
="$libs_mencoder $_ld_mp3lame"
7372 #include <lame/lame.h>
7373 int main(void) { lame_set_preset(NULL, STANDARD_FAST); return 0; }
7375 cc_check
$_ld_mp3lame $_ld_lm && def_mp3lame_preset
="#define CONFIG_MP3LAME_PRESET"
7377 #include <lame/lame.h>
7378 int main(void) { lame_set_preset(NULL, MEDIUM_FAST); return 0; }
7380 cc_check
$_ld_mp3lame $_ld_lm && def_mp3lame_preset_medium
="#define CONFIG_MP3LAME_PRESET_MEDIUM"
7381 test "$_mp3lame_lavc" = auto
&& _mp3lame_lavc
=yes
7382 if test "$_mp3lame_lavc" = yes ; then
7383 def_mp3lame_lavc
="#define CONFIG_LIBMP3LAME 1"
7384 _libavencoders
="$_libavencoders LIBMP3LAME_ENCODER"
7385 libs_mplayer
="$libs_mplayer $_ld_mp3lame"
7389 def_mp3lame
='#undef CONFIG_MP3LAME'
7390 def_mp3lame_lavc
="#define CONFIG_LIBMP3LAME 0"
7392 _res_comment
="in libavcodec: $_mp3lame_lavc"
7395 fi # test "$_mencoder" != no
7397 echocheck
"mencoder"
7398 if test "$_mencoder" = yes ; then
7399 def_muxers
='#define CONFIG_MUXERS 1'
7401 # mpeg1video for vf_lavc, snow for vf_uspp and vf_mcdeint, png for vf_screenshot
7402 _libavencoders
="MPEG1VIDEO_ENCODER SNOW_ENCODER"
7403 test "$_zlib" = yes && _libavencoders
="$_libavencoders PNG_ENCODER"
7405 def_muxers
='#define CONFIG_MUXERS 0'
7407 echores
"$_mencoder"
7410 echocheck
"UnRAR executable"
7411 if test "$_unrar_exec" = auto
; then
7413 mingw32
&& _unrar_exec
="no"
7415 if test "$_unrar_exec" = yes ; then
7416 def_unrar_exec
='#define CONFIG_UNRAR_EXEC 1'
7418 def_unrar_exec
='#undef CONFIG_UNRAR_EXEC'
7420 echores
"$_unrar_exec"
7422 echocheck
"TV interface"
7423 if test "$_tv" = yes ; then
7424 def_tv
='#define CONFIG_TV 1'
7425 _inputmodules
="tv $_inputmodules"
7427 _noinputmodules
="tv $_noinputmodules"
7428 def_tv
='#undef CONFIG_TV'
7433 if freebsd || netbsd || openbsd || dragonfly || bsdos
; then
7434 echocheck
"*BSD BT848 bt8xx header"
7436 for file in "machine/ioctl_bt848.h" \
7437 "dev/bktr/ioctl_bt848.h" \
7438 "dev/video/bktr/ioctl_bt848.h" \
7439 "dev/ic/bt8xx.h" ; do
7441 #include <sys/types.h>
7442 #include <sys/ioctl.h>
7444 int main(void) { ioctl(0, TVTUNER_GETFREQ, 0); return 0; }
7448 _ioctl_bt848_h_name
="$file"
7452 if test "$_ioctl_bt848_h" = yes ; then
7453 def_ioctl_bt848_h_name
="#define IOCTL_BT848_H_NAME <$_ioctl_bt848_h_name>"
7454 _res_comment
="using $_ioctl_bt848_h_name"
7456 def_ioctl_bt848_h_name
="#undef IOCTL_BT848_H_NAME"
7458 echores
"$_ioctl_bt848_h"
7460 echocheck
"*BSD ioctl_meteor.h"
7462 for file in "machine/ioctl_meteor.h" \
7463 "dev/bktr/ioctl_meteor.h" \
7464 "dev/video/bktr/ioctl_meteor.h" ; do
7466 #include <sys/types.h>
7468 int main(void) { ioctl(0, METEORSINPUT, 0); return 0; }
7472 _ioctl_meteor_h_name
="$file"
7476 if test "$_ioctl_meteor_h" = yes ; then
7477 def_ioctl_meteor_h_name
="#define IOCTL_METEOR_H_NAME <$_ioctl_meteor_h_name>"
7478 _res_comment
="using $_ioctl_meteor_h_name"
7480 def_ioctl_meteor_h_name
="#undef IOCTL_METEOR_H_NAME"
7482 echores
"$_ioctl_meteor_h"
7484 echocheck
"*BSD BrookTree 848 TV interface"
7485 if test "$_tv_bsdbt848" = auto
; then
7487 if test "$_tv" = yes ; then
7489 #include <sys/types.h>
7490 $def_ioctl_meteor_h_name
7491 $def_ioctl_bt848_h_name
7492 #ifdef IOCTL_METEOR_H_NAME
7493 #include IOCTL_METEOR_H_NAME
7495 #ifdef IOCTL_BT848_H_NAME
7496 #include IOCTL_BT848_H_NAME
7499 ioctl(0, METEORSINPUT, 0);
7500 ioctl(0, TVTUNER_GETFREQ, 0);
7504 cc_check
&& _tv_bsdbt848
=yes
7507 if test "$_tv_bsdbt848" = yes ; then
7508 def_tv_bsdbt848
='#define CONFIG_TV_BSDBT848 1'
7509 _inputmodules
="tv-bsdbt848 $_inputmodules"
7511 def_tv_bsdbt848
='#undef CONFIG_TV_BSDBT848'
7512 _noinputmodules
="tv-bsdbt848 $_noinputmodules"
7514 echores
"$_tv_bsdbt848"
7515 fi #if freebsd || netbsd || openbsd || dragonfly || bsdos
7518 echocheck
"DirectShow TV interface"
7519 if test "$_tv_dshow" = auto
; then
7521 if test "$_tv" = yes && win32
; then
7526 CoCreateInstance((GUID*)&GUID_NULL, NULL, CLSCTX_INPROC_SERVER, &GUID_NULL, &p);
7530 cc_check
-lole32 -luuid && _tv_dshow
=yes
7533 if test "$_tv_dshow" = yes ; then
7534 _inputmodules
="tv-dshow $_inputmodules"
7535 def_tv_dshow
='#define CONFIG_TV_DSHOW 1'
7536 extra_ldflags
="$extra_ldflags -lole32 -luuid"
7538 _noinputmodules
="tv-dshow $_noinputmodules"
7539 def_tv_dshow
='#undef CONFIG_TV_DSHOW'
7541 echores
"$_tv_dshow"
7544 echocheck
"Video 4 Linux TV interface"
7545 if test "$_tv_v4l1" = auto
; then
7547 if test "$_tv" = yes && linux
; then
7550 #include <linux/videodev.h>
7551 int main(void) { return 0; }
7553 cc_check
&& _tv_v4l1
=yes
7556 if test "$_tv_v4l1" = yes ; then
7559 def_tv_v4l
='#define CONFIG_TV_V4L 1'
7560 def_tv_v4l1
='#define CONFIG_TV_V4L1 1'
7561 _inputmodules
="tv-v4l $_inputmodules"
7563 _noinputmodules
="tv-v4l1 $_noinputmodules"
7564 def_tv_v4l
='#undef CONFIG_TV_V4L'
7569 echocheck
"Video 4 Linux 2 TV interface"
7570 if test "$_tv_v4l2" = auto
; then
7572 if test "$_tv" = yes && linux
; then
7575 #include <linux/types.h>
7576 #include <linux/videodev2.h>
7577 int main(void) { return 0; }
7579 cc_check
&& _tv_v4l2
=yes
7582 if test "$_tv_v4l2" = yes ; then
7585 def_tv_v4l
='#define CONFIG_TV_V4L 1'
7586 def_tv_v4l2
='#define CONFIG_TV_V4L2 1'
7587 _inputmodules
="tv-v4l2 $_inputmodules"
7589 _noinputmodules
="tv-v4l2 $_noinputmodules"
7590 def_tv_v4l2
='#undef CONFIG_TV_V4L2'
7595 echocheck
"TV teletext interface"
7596 if test "$_tv_teletext" = auto
; then
7598 if test "$_freetype" = yes && test "$_pthreads" = yes; then
7599 if test "$_tv_v4l2" = yes ||
test "$_v4l" = yes ||
test "$_tv_dshow" = yes; then
7604 if test "$_tv_teletext" = yes ; then
7605 def_tv_teletext
='#define CONFIG_TV_TELETEXT 1'
7606 _inputmodules
="tv-teletext $_inputmodules"
7608 _noinputmodules
="tv-teletext $_noinputmodules"
7609 def_tv_teletext
='#undef CONFIG_TV_TELETEXT'
7611 echores
"$_tv_teletext"
7614 echocheck
"Radio interface"
7615 if test "$_radio" = yes ; then
7616 def_radio
='#define CONFIG_RADIO 1'
7617 _inputmodules
="radio $_inputmodules"
7618 if test "$_alsa9" != yes -a "$_alsa1x" != yes -a "$_ossaudio" != yes ; then
7621 if test "$_radio_capture" = yes ; then
7623 def_radio_capture
="#define CONFIG_RADIO_CAPTURE 1"
7625 def_radio_capture
="#undef CONFIG_RADIO_CAPTURE"
7628 _noinputmodules
="radio $_noinputmodules"
7629 def_radio
='#undef CONFIG_RADIO'
7630 def_radio_capture
="#undef CONFIG_RADIO_CAPTURE"
7634 echocheck
"Capture for Radio interface"
7635 echores
"$_radio_capture"
7637 echocheck
"Video 4 Linux 2 Radio interface"
7638 if test "$_radio_v4l2" = auto
; then
7640 if test "$_radio" = yes && linux
; then
7643 #include <linux/types.h>
7644 #include <linux/videodev2.h>
7645 int main(void) { return 0; }
7647 cc_check
&& _radio_v4l2
=yes
7650 if test "$_radio_v4l2" = yes ; then
7651 def_radio_v4l2
='#define CONFIG_RADIO_V4L2 1'
7653 def_radio_v4l2
='#undef CONFIG_RADIO_V4L2'
7655 echores
"$_radio_v4l2"
7657 echocheck
"Video 4 Linux Radio interface"
7658 if test "$_radio_v4l" = auto
; then
7660 if test "$_radio" = yes && linux
; then
7663 #include <linux/videodev.h>
7664 int main(void) { return 0; }
7666 cc_check
&& _radio_v4l
=yes
7669 if test "$_radio_v4l" = yes ; then
7670 def_radio_v4l
='#define CONFIG_RADIO_V4L 1'
7672 def_radio_v4l
='#undef CONFIG_RADIO_V4L'
7674 echores
"$_radio_v4l"
7676 if freebsd || netbsd || openbsd || dragonfly || bsdos \
7677 && test "$_radio" = yes && test "$_radio_bsdbt848" = auto
; then
7678 echocheck
"*BSD BrookTree 848 Radio interface"
7681 #include <sys/types.h>
7682 $def_ioctl_bt848_h_name
7683 #ifdef IOCTL_BT848_H_NAME
7684 #include IOCTL_BT848_H_NAME
7686 int main(void) { ioctl(0, RADIO_GETFREQ, 0); return 0; }
7688 cc_check
&& _radio_bsdbt848
=yes
7689 echores
"$_radio_bsdbt848"
7690 fi #if freebsd || netbsd || openbsd || dragonfly || bsdos && _radio && _radio_bsdbt848
7692 if test "$_radio_bsdbt848" = yes ; then
7693 def_radio_bsdbt848
='#define CONFIG_RADIO_BSDBT848 1'
7695 def_radio_bsdbt848
='#undef CONFIG_RADIO_BSDBT848'
7698 if test "$_radio_v4l" = no
&& test "$_radio_v4l2" = no
&& \
7699 test "$_radio_bsdbt848" = no
&& test "$_radio" = yes ; then
7700 die
"Radio driver requires BSD BT848, V4L or V4L2!"
7703 echocheck
"Video 4 Linux 2 MPEG PVR interface"
7704 if test "$_pvr" = auto
; then
7706 if test "$_tv_v4l2" = yes && linux
; then
7709 #include <inttypes.h>
7710 #include <linux/types.h>
7711 #include <linux/videodev2.h>
7712 int main(void) { struct v4l2_ext_controls ext; return 0; }
7714 cc_check
&& _pvr
=yes
7717 if test "$_pvr" = yes ; then
7718 def_pvr
='#define CONFIG_PVR 1'
7719 _inputmodules
="pvr $_inputmodules"
7721 _noinputmodules
="pvr $_noinputmodules"
7722 def_pvr
='#undef CONFIG_PVR'
7728 if ! beos
&& test "$_ftp" = yes ; then
7729 def_ftp
='#define CONFIG_FTP 1'
7730 _inputmodules
="ftp $_inputmodules"
7732 _noinputmodules
="ftp $_noinputmodules"
7733 def_ftp
='#undef CONFIG_FTP'
7737 echocheck
"vstream client"
7738 if test "$_vstream" = auto
; then
7741 #include <vstream-client.h>
7742 void vstream_error(const char *format, ... ) {}
7743 int main(void) { vstream_start(); return 0; }
7745 cc_check
-lvstream-client && _vstream
=yes
7747 if test "$_vstream" = yes ; then
7748 def_vstream
='#define CONFIG_VSTREAM 1'
7749 _inputmodules
="vstream $_inputmodules"
7750 extra_ldflags
="$extra_ldflags -lvstream-client"
7752 _noinputmodules
="vstream $_noinputmodules"
7753 def_vstream
='#undef CONFIG_VSTREAM'
7758 echocheck
"OSD menu"
7759 if test "$_menu" = yes ; then
7760 def_menu
='#define CONFIG_MENU 1'
7761 test $_dvbin = "yes" && _menu_dvbin
=yes
7763 def_menu
='#undef CONFIG_MENU'
7769 echocheck
"Subtitles sorting"
7770 if test "$_sortsub" = yes ; then
7771 def_sortsub
='#define CONFIG_SORTSUB 1'
7773 def_sortsub
='#undef CONFIG_SORTSUB'
7778 echocheck
"XMMS inputplugin support"
7779 if test "$_xmms" = yes ; then
7780 if ( xmms-config
--version ) >/dev
/null
2>&1 ; then
7781 _xmmsplugindir
=$
(xmms-config
--input-plugin-dir)
7782 _xmmslibdir
=$
(xmms-config
--exec-prefix)/lib
7784 _xmmsplugindir
=/usr
/lib
/xmms
/Input
7785 _xmmslibdir
=/usr
/lib
7788 def_xmms
='#define CONFIG_XMMS 1'
7790 extra_ldflags
="$extra_ldflags ${_xmmslibdir}/libxmms.dylib"
7792 extra_ldflags
="$extra_ldflags ${_xmmslibdir}/libxmms.so.1 -export-dynamic"
7795 def_xmms
='#undef CONFIG_XMMS'
7800 # --------------- GUI specific tests begin -------------------
7803 if test "$_gui" = yes ; then
7805 # Required libraries
7806 if test "$_libavcodec" != yes ||
7807 ! echo $_libavdecoders |
grep -q PNG_DECODER
; then
7808 die
"The GUI requires libavcodec with PNG support (needs zlib)."
7810 test "$_freetype" = no
&& test "$_bitmap_font" = no
&& \
7811 die
"The GUI requires either FreeType or bitmap font support."
7814 test "$_x11" != yes && die
"X11 support required for GUI compilation."
7816 echocheck
"XShape extension"
7817 if test "$_xshape" = auto
; then
7820 #include <X11/Xlib.h>
7821 #include <X11/Xproto.h>
7822 #include <X11/Xutil.h>
7823 #include <X11/extensions/shape.h>
7826 char *name = ":0.0";
7829 int eventbase, errorbase;
7830 if (getenv("DISPLAY"))
7831 name=getenv("DISPLAY");
7832 wsDisplay=XOpenDisplay(name);
7833 if (!XShapeQueryExtension(wsDisplay,&eventbase,&errorbase))
7835 XCloseDisplay(wsDisplay);
7839 cc_check
-lXext && _xshape
=yes
7841 if test "$_xshape" = yes ; then
7842 def_xshape
='#define CONFIG_XSHAPE 1'
7844 die
"The GUI requires the X11 extension XShape (which was not found)."
7849 if test "$_gtk1" = no
; then
7851 echocheck
"GTK+ version"
7853 if $_pkg_config gtk
+-2.0
--exists ; then
7854 _gtk
=$
($_pkg_config gtk
+-2.0
--modversion 2>/dev
/null
)
7855 extra_cflags
="$extra_cflags $($_pkg_config gtk+-2.0 --cflags 2>/dev/null)"
7856 libs_mplayer
="$libs_mplayer $($_pkg_config gtk+-2.0 --libs 2>/dev/null)"
7860 if $_pkg_config glib-2.0
--exists ; then
7861 echocheck
"glib version"
7862 _glib
=$
($_pkg_config glib-2.0
--modversion 2>/dev
/null
)
7863 libs_mplayer
="$libs_mplayer $($_pkg_config glib-2.0 --libs 2>/dev/null)"
7866 def_gui
='#define CONFIG_GUI 1'
7867 def_gtk2
='#define CONFIG_GTK2 1'
7870 echo "GLIB-2 devel packages were not found, trying GTK 1.2"
7873 echo "GTK-2 devel packages were not found, trying GTK 1.2"
7878 if test "$_gtk1" = yes ; then
7879 # Check for old GTK (1.2.x)
7880 echocheck
"GTK version"
7881 if test -z "$_gtkconfig" ; then
7882 if ( gtk-config
--version ) >/dev
/null
2>&1 ; then
7883 _gtkconfig
="gtk-config"
7884 elif ( gtk12-config
--version ) >/dev
/null
2>&1 ; then
7885 _gtkconfig
="gtk12-config"
7887 die
"The GUI requires GTK devel packages (which were not found)."
7890 _gtk
=$
($_gtkconfig --version 2>&1)
7891 extra_cflags
="$extra_cflags $($_gtkconfig --cflags 2>&1)"
7892 libs_mplayer
="$libs_mplayer $($_gtkconfig --libs 2>&1)"
7893 echores
"$_gtk (using $_gtkconfig)"
7896 echocheck
"glib version"
7897 if test -z "$_glibconfig" ; then
7898 if ( glib-config
--version ) >/dev
/null
2>&1 ; then
7899 _glibconfig
="glib-config"
7900 elif ( glib12-config
--version ) >/dev
/null
2>&1 ; then
7901 _glibconfig
="glib12-config"
7903 die
"The GUI requires GLIB devel packages (which were not found)"
7906 _glib
=$
($_glibconfig --version 2>&1)
7907 libs_mplayer
="$libs_mplayer $($_glibconfig --libs 2>&1)"
7908 echores
"$_glib (using $_glibconfig)"
7910 def_gui
='#define CONFIG_GUI 1'
7911 def_gtk2
='#undef CONFIG_GTK2'
7916 libs_mplayer
="$libs_mplayer -lcomdlg32 -lcomctl32 -lshell32 -lkernel32"
7917 def_gui
='#define CONFIG_GUI 1'
7918 def_gtk2
='#undef CONFIG_GTK2'
7921 else #if test "$_gui"
7922 def_gui
='#undef CONFIG_GUI'
7923 def_gtk2
='#undef CONFIG_GTK2'
7925 # --------------- GUI specific tests end -------------------
7928 if test "$_charset" != "noconv" ; then
7929 def_charset
="#define MSG_CHARSET \"$_charset\""
7931 def_charset
="#undef MSG_CHARSET"
7935 if test -n "$_charset" && test "$_charset" != "UTF-8" ; then
7936 echocheck
"iconv program"
7937 iconv -f UTF-8
-t $_charset ${_mp_help} > /dev
/null
2>> "$TMPLOG"
7938 if test "$?" -ne 0 ; then
7940 echo "No working iconv program found, use "
7941 echo "--charset=UTF-8 to continue anyway."
7942 echo "If you also have problems with iconv library functions use --charset=noconv."
7943 echo "Messages in the GTK-2 interface will be broken then."
7950 #############################################################################
7952 echocheck
"automatic gdb attach"
7953 if test "$_crash_debug" = yes ; then
7954 def_crash_debug
='#define CONFIG_CRASH_DEBUG 1'
7956 def_crash_debug
='#undef CONFIG_CRASH_DEBUG'
7959 echores
"$_crash_debug"
7961 echocheck
"compiler support for noexecstack"
7963 int main(void) { return 0; }
7965 if cc_check
-Wl,-z,noexecstack
; then
7966 extra_ldflags
="-Wl,-z,noexecstack $extra_ldflags"
7973 # Dynamic linking flags
7974 # (FIXME: 'echocheck "dynamic linking"' above and modify here accordingly)
7976 freebsd || netbsd || openbsd || dragonfly || bsdos
&& _ld_dl_dynamic
='-rdynamic'
7977 if test "$_real" = yes ||
test "$_xanim" = yes && ! win32
&& ! qnx
&& ! darwin
&& ! os2
&& ! sunos
; then
7978 _ld_dl_dynamic
='-rdynamic'
7981 extra_ldflags
="$extra_ldflags $_ld_pthread $_ld_dl $_ld_dl_dynamic"
7982 bsdos
&& extra_ldflags
="$extra_ldflags -ldvd"
7983 (netbsd || openbsd
) && x86_32
&& extra_ldflags
="$extra_ldflags -li386"
7985 def_debug
='#undef MP_DEBUG'
7986 test "$_debug" != "" && def_debug
='#define MP_DEBUG 1'
7989 echocheck
"joystick"
7990 def_joystick
='#undef CONFIG_JOYSTICK'
7991 if test "$_joystick" = yes ; then
7993 # TODO add some check
7994 def_joystick
='#define CONFIG_JOYSTICK 1'
7997 _res_comment
="unsupported under $system_name"
8000 echores
"$_joystick"
8003 if test "$_lirc" = auto
; then
8006 #include <lirc/lirc_client.h>
8007 int main(void) { return 0; }
8009 cc_check
-llirc_client && _lirc
=yes
8011 if test "$_lirc" = yes ; then
8012 def_lirc
='#define CONFIG_LIRC 1'
8013 libs_mplayer
="$libs_mplayer -llirc_client"
8015 def_lirc
='#undef CONFIG_LIRC'
8020 if test "$_lircc" = auto
; then
8023 #include <lirc/lircc.h>
8024 int main(void) { return 0; }
8026 cc_check
-llircc && _lircc
=yes
8028 if test "$_lircc" = yes ; then
8029 def_lircc
='#define CONFIG_LIRCC 1'
8030 libs_mplayer
="$libs_mplayer -llircc"
8032 def_lircc
='#undef CONFIG_LIRCC'
8037 # Detect maemo development platform libraries availability (http://www.maemo.org),
8038 # they are used when run on Nokia 770|8x0
8039 echocheck
"maemo (Nokia 770|8x0)"
8040 if test "$_maemo" = auto
; then
8043 #include <libosso.h>
8044 int main(void) { (void) osso_initialize("", "", 0, NULL); return 0; }
8046 cc_check $
($_pkg_config --cflags --libs libosso
2>/dev
/null
) && _maemo
=yes
8048 if test "$_maemo" = yes ; then
8049 def_maemo
='#define CONFIG_MAEMO 1'
8050 extra_cflags
="$extra_cflags $($_pkg_config --cflags libosso)"
8051 extra_ldflags
="$extra_ldflags $($_pkg_config --libs libosso) -lXsp"
8053 def_maemo
='#undef CONFIG_MAEMO'
8058 #############################################################################
8060 # On OS/2 nm supports only a.out. So the -Zomf compiler option to generate
8061 # the OMF format needs to come after the 'extern symbol prefix' check, which
8064 extra_ldflags
="$extra_ldflags -Zomf -Zstack 16384 -Zbin-files -Zargs-wild"
8067 # linker paths should be the same for mencoder and mplayer
8069 for I
in $libs_mplayer ; do
8070 _tmp
=$
(echo $I |
sed -e 's/^-L.*$//')
8071 if test -z "$_tmp" ; then
8072 extra_ldflags
="$extra_ldflags $I"
8074 _ld_tmp
="$_ld_tmp $I"
8077 libs_mplayer
=$_ld_tmp
8080 #############################################################################
8081 # 64 bit file offsets?
8082 if test "$_largefiles" = yes || freebsd
; then
8083 CFLAGS
="$CFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
8084 if test "$_dvdread" = yes ||
test "$_libdvdcss_internal" = yes ; then
8085 # dvdread support requires this (for off64_t)
8086 CFLAGS
="$CFLAGS -D_LARGEFILE64_SOURCE"
8090 CXXFLAGS
=" $CFLAGS -Iffmpeg -D__STDC_LIMIT_MACROS"
8092 # This must be the last test to be performed. Any other tests following it
8093 # could fail due to linker errors. libdvdnavmini is intentionally not linked
8094 # against libdvdread (to permit MPlayer to use its own copy of the library).
8095 # So any compilation using the flags added here but not linking against
8096 # libdvdread can fail.
8097 echocheck
"DVD support (libdvdnav)"
8098 if test "$_dvdread_internal" = yes && test ! -f "libdvdnav/dvdnav.c" ; then
8102 if test "$_dvdnav" = auto
; then
8103 if test "$_dvdread_internal" = yes ; then
8106 _res_comment
="internal"
8108 $_dvdnavconfig --version --minilibs >> $TMPLOG 2>&1 || _dvdnav
=no
8111 if test "$_dvdnav" = auto
; then
8113 #include <inttypes.h>
8114 #include <dvdnav/dvdnav.h>
8115 int main(void) { dvdnav_t *dvd=0; return 0; }
8118 _dvdnavdir
=$
($_dvdnavconfig --cflags)
8119 _dvdnavlibs
=$
($_dvdnavconfig --libs)
8120 cc_check
$_dvdnavdir $_dvdnavlibs $_ld_dl $_ld_pthread && _dvdnav
=yes
8122 if test "$_dvdnav" = yes ; then
8124 def_dvdnav
='#define CONFIG_DVDNAV 1'
8125 if test "$dvdnav_internal" = yes ; then
8126 cflags_libdvdnav
="-Ilibdvdnav"
8127 _inputmodules
="dvdnav(internal) $_inputmodules"
8129 extra_cflags
="$extra_cflags $($_dvdnavconfig --cflags)"
8130 extra_ldflags
="$extra_ldflags $($_dvdnavconfig --minilibs)"
8131 _inputmodules
="dvdnav $_inputmodules"
8134 def_dvdnav
='#undef CONFIG_DVDNAV'
8135 _noinputmodules
="dvdnav $_noinputmodules"
8139 # DO NOT ADD ANY TESTS THAT USE LINKER FLAGS HERE (like cc_check).
8140 # Read dvdnav comment above.
8142 CFLAGS_FFMPEG
="-I../.. $CFLAGS"
8143 CFLAGS
="-Iffmpeg $CFLAGS"
8145 #############################################################################
8146 echo "Creating config.mak"
8147 cat > config.mak
<< EOF
8148 # -------- Generated by configure -----------
8150 # Ensure that locale settings do not interfere with shell commands.
8153 CONFIGURATION = $_configuration
8156 DOC_LANGS = $language_doc
8157 DOC_LANG_ALL = $doc_lang_all
8158 MAN_LANGS = $language_man
8159 MAN_LANG_ALL = $man_lang_all
8161 prefix = \$(DESTDIR)$_prefix
8162 BINDIR = \$(DESTDIR)$_bindir
8163 DATADIR = \$(DESTDIR)$_datadir
8164 LIBDIR = \$(DESTDIR)$_libdir
8165 MANDIR = \$(DESTDIR)$_mandir
8166 CONFDIR = \$(DESTDIR)$_confdir
8175 INSTALLSTRIP = $_install_strip
8179 CFLAGS = $CFLAGS $extra_cflags
8180 OPTFLAGS = $CFLAGS $extra_cflags
8181 FFMPEG_OFLAGS = $CFLAGS_FFMPEG $extra_cflags
8182 CXXFLAGS = $CXXFLAGS $extra_cflags $extra_cxxflags
8183 CFLAGS_DHAHELPER = $cflags_dhahelper
8184 CFLAGS_FAAD_FIXED = $cflags_faad_fixed
8185 CFLAGS_LIBDVDCSS = $cflags_libdvdcss
8186 CFLAGS_LIBDVDCSS_DVDREAD = $cflags_libdvdcss_dvdread
8187 CFLAGS_LIBDVDNAV = $cflags_libdvdnav
8188 CFLAGS_NO_OMIT_LEAF_FRAME_POINTER = $cflags_no_omit_leaf_frame_pointer
8189 CFLAGS_STACKREALIGN = $cflags_stackrealign
8190 CFLAGS_SVGALIB_HELPER = $cflags_svgalib_helper
8191 CFLAGS_TREMOR_LOW = $cflags_tremor_low
8192 YASMFLAGS = $YASMFLAGS
8194 EXTRALIBS = $extra_libs
8195 EXTRA_LIB = $extra_ldflags $_ld_static $_ld_lm
8196 EXTRALIBS_MPLAYER = $libs_mplayer
8197 EXTRALIBS_MENCODER = $libs_mencoder
8199 DEPEND_CMD = \$(CC) -MM \$(CFLAGS) \$(filter-out %.h,\$^) | sed "s,[0-9a-z._-]*: \(\$(SRC_DIR)/\)*\([a-z0-9]*/\)[^/]* ,\\2&,"
8201 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 &,"
8202 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 &,"
8205 HELP_FILE = $_mp_help
8213 $(echo $_cpuexts | tr '[a-z] ' '[A-Z]\n' | sed 's/^/HAVE_/;s/$/=yes/')
8215 MENCODER = $_mencoder
8218 NEED_GETTIMEOFDAY = $_need_gettimeofday
8219 NEED_GLOB = $_need_glob
8220 NEED_MMAP = $_need_mmap
8221 NEED_SETENV = $_need_setenv
8222 NEED_SHMEM = $_need_shmem
8223 NEED_STRSEP = $_need_strsep
8224 NEED_SWAB = $_need_swab
8225 NEED_VSSCANF = $_need_vsscanf
8233 APPLE_IR = $_apple_ir
8234 APPLE_REMOTE = $_apple_remote
8236 AUDIO_INPUT = $_audio_input
8237 BITMAP_FONT = $_bitmap_font
8242 COREAUDIO = $_coreaudio
8243 COREVIDEO = $_corevideo
8247 DIRECT3D = $_direct3d
8248 DIRECTFB = $_directfb
8252 DVDNAV_INTERNAL = $dvdnav_internal
8254 DVDREAD_INTERNAL = $_dvdread_internal
8260 FAAD_INTERNAL = $_faad_internal
8261 FASTMEMCPY = $_fastmemcpy
8263 FREETYPE = $_freetype
8268 GL_WIN32 = $_gl_win32
8271 GUI_WIN32 = $_gui_win32
8272 HAVE_POSIX_SELECT = $_posix_select
8273 HAVE_SYS_MMAN_H = $_mman
8276 JOYSTICK = $_joystick
8281 LIBA52_INTERNAL = $_liba52_internal
8286 LIBDVDCSS_INTERNAL = $_libdvdcss_internal
8290 LIBMENU_DVBIN = $_menu_dvbin
8291 LIBMPEG2 = $_libmpeg2
8292 LIBNEMESI = $_nemesi
8294 LIBSMBCLIENT = $_smb
8295 LIBTHEORA = $_theora
8298 MACOSX_BUNDLE = $_macosx_bundle
8299 MACOSX_FINDER = $_macosx_finder
8305 MUSEPACK = $_musepack
8307 NATIVE_RTSP = $_native_rtsp
8311 PE_EXECUTABLE = $_pe_executable
8314 PRIORITY = $_priority
8318 QTX_CODECS_WIN32 = $_qtx_codecs_win32
8319 QTX_EMULATION = $_qtx_emulation
8322 RADIO_CAPTURE=$_radio_capture
8323 REAL_CODECS = $_real
8327 STREAM_CACHE = $_stream_cache
8328 SGIAUDIO = $_sgiaudio
8329 SUNAUDIO = $_sunaudio
8335 TREMOR_INTERNAL = $_tremor_internal
8337 TV_BSDBT848 = $_tv_bsdbt848
8338 TV_DSHOW = $_tv_dshow
8339 TV_TELETEXT = $_tv_teletext
8344 UNRAR_EXEC = $_unrar_exec
8350 VIDIX_PCIDB = $_vidix_pcidb_val
8351 VIDIX_CYBERBLADE=$_vidix_drv_cyberblade
8352 VIDIX_IVTV=$_vidix_drv_ivtv
8353 VIDIX_MACH64=$_vidix_drv_mach64
8354 VIDIX_MGA=$_vidix_drv_mga
8355 VIDIX_MGA_CRTC2=$_vidix_drv_mga_crtc2
8356 VIDIX_NVIDIA=$_vidix_drv_nvidia
8357 VIDIX_PM2=$_vidix_drv_pm2
8358 VIDIX_PM3=$_vidix_drv_pm3
8359 VIDIX_RADEON=$_vidix_drv_radeon
8360 VIDIX_RAGE128=$_vidix_drv_rage128
8361 VIDIX_S3=$_vidix_drv_s3
8362 VIDIX_SH_VEU=$_vidix_drv_sh_veu
8363 VIDIX_SIS=$_vidix_drv_sis
8364 VIDIX_UNICHROME=$_vidix_drv_unichrome
8368 WIN32DLL = $_win32dll
8369 WIN32WAVEOUT = $_win32waveout
8370 WIN32_EMULATION = $_win32_emulation
8371 WINVIDIX = $winvidix
8374 XANIM_CODECS = $_xanim
8376 XMMS_PLUGINS = $_xmms
8382 YUV4MPEG = $_yuv4mpeg
8386 LIBAVUTIL = $_libavutil
8387 LIBAVUTIL_A = $_libavutil_a
8388 LIBAVUTIL_SO = $_libavutil_so
8389 LIBAVCODEC = $_libavcodec
8390 LIBAVCODEC_A = $_libavcodec_a
8391 LIBAVCODEC_SO = $_libavcodec_so
8392 LIBAVFORMAT = $_libavformat
8393 LIBAVFORMAT_A = $_libavformat_a
8394 LIBAVFORMAT_SO = $_libavformat_so
8395 LIBPOSTPROC = $_libpostproc
8396 LIBPOSTPROC_A = $_libpostproc_a
8397 LIBPOSTPROC_SO = $_libpostproc_so
8398 LIBSWSCALE = $_libswscale
8399 LIBSWSCALE_A = $_libswscale_a
8400 LIBSWSCALE_SO = $_libswscale_so
8407 LIBNAME=\$(LIBPREF)\$(NAME)\$(LIBSUF)
8409 # Some FFmpeg codecs depend on these. Enable them unconditionally for now.
8412 CONFIG_FFT_MMX=$fft_mmx
8420 CONFIG_LIBAMR=$_libamr
8421 CONFIG_LIBAMR_NB=$_libamr_nb
8422 CONFIG_LIBAMR_WB=$_libamr_wb
8423 CONFIG_LIBDIRAC=$_libdirac_lavc
8424 CONFIG_LIBFAAC=$_faac_lavc
8425 CONFIG_LIBMP3LAME=$_mp3lame_lavc
8426 CONFIG_LIBSCHROEDINGER=$_libschroedinger_lavc
8427 CONFIG_LIBVORBIS=$_libvorbis
8428 CONFIG_LIBX264=$_x264_lavc
8429 CONFIG_LIBXVID=$_xvid_lavc
8430 CONFIG_MLIB = $_mlib
8431 CONFIG_MUXERS=$_mencoder
8432 CONFIG_POSTPROC = yes
8433 # Prevent building libavcodec/imgresample.c with conflicting symbols
8435 CONFIG_VDPAU=$_vdpau
8439 HAVE_PTHREADS = $_pthreads
8440 HAVE_W32THREADS = $_w32threads
8441 HAVE_YASM = $_have_yasm
8443 $(echo $_libavdecoders | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8444 $(echo $_libavencoders | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8445 $(echo $_libavparsers | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8446 $(echo $_libavdemuxers | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8447 $(echo $_libavmuxers | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8448 $(echo $_libavbsfs | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/')
8451 #############################################################################
8453 ff_config_enable
() {
8455 test -z "$_nprefix" && _nprefix
='CONFIG'
8457 if $
(echo $2 |
grep -q -E "(^| )$part($| )"); then
8458 echo "#define ${_nprefix}_$part 1"
8460 echo "#define ${_nprefix}_$part 0"
8465 echo "Creating config.h"
8467 /*----------------------------------------------------------------------------
8468 ** This file has been automatically generated by configure any changes in it
8469 ** will be lost when you run configure again.
8470 ** Instead of modifying definitions here, use the --enable/--disable options
8471 ** of the configure script! See ./configure --help for details.
8472 *---------------------------------------------------------------------------*/
8474 #ifndef MPLAYER_CONFIG_H
8475 #define MPLAYER_CONFIG_H
8477 /* Undefine this if you do not want to select mono audio (left or right)
8478 with a stereo MPEG layer 2/3 audio stream. The command line option
8479 -stereo has three possible values (0 for stereo, 1 for left-only, 2 for
8480 right-only), with 0 being the default.
8482 #define CONFIG_FAKE_MONO 1
8484 /* set up max. outburst. use 65536 for ALSA 0.5, for others 16384 is enough */
8485 #define MAX_OUTBURST 65536
8487 /* set up audio OUTBURST. Do not change this! */
8488 #define OUTBURST 512
8490 /* Enable fast OSD/SUB renderer (looks ugly, but uses less CPU power) */
8492 #undef FAST_OSD_TABLE
8494 /* Define this to enable MPEG-1/2 image postprocessing in libmpeg2 */
8495 #define MPEG12_POSTPROC 1
8496 #define ATTRIBUTE_ALIGNED_MAX 16
8500 #define CONFIGURATION "$_configuration"
8502 #define MPLAYER_DATADIR "$_datadir"
8503 #define MPLAYER_CONFDIR "$_confdir"
8504 #define MPLAYER_LIBDIR "$_libdir"
8506 /* definitions needed by included libraries */
8507 #define HAVE_INTTYPES_H 1
8508 /* libmpeg2 + FFmpeg */
8511 #define HAVE_ERRNO_H 1
8512 /* libdvdcss + libdvdread */
8513 #define HAVE_LIMITS_H 1
8514 /* libdvdcss + libfaad2 */
8515 #define HAVE_UNISTD_H 1
8516 /* libfaad2 + libdvdread */
8517 #define STDC_HEADERS 1
8518 #define HAVE_MEMCPY 1
8520 #define HAVE_STRING_H 1
8521 #define HAVE_STRINGS_H 1
8522 #define HAVE_SYS_STAT_H 1
8523 #define HAVE_SYS_TYPES_H 1
8525 #define READ_CACHE_TRACE 0
8527 #define HAVE_DLFCN_H 1
8531 /* system headers */
8533 $def_alsa_asoundlib_h
8537 $def_mman_has_map_failed
8539 $def_sys_asoundlib_h
8540 $def_sys_soundcard_h
8547 /* system functions */
8574 /* system-specific features */
8587 $def_restrict_keyword
8592 /* configurable options */
8596 $def_dynamic_plugins
8599 $def_runtime_cpudetection
8607 #define __CPU__ $iproc
8609 $(ff_config_enable "$_arch_all" "$_arch" "ARCH")
8610 $(ff_config_enable "$_cpuexts_all" "$_cpuexts" "HAVE")
8614 #define DEFAULT_CDROM_DEVICE "$default_cdrom_device"
8615 #define DEFAULT_DVD_DEVICE "$default_dvd_device"
8635 /* codec libraries */
8640 $def_liba52_internal
8648 $def_mp3lame_preset_medium
8671 #define WIN32_PATH "$_win32codecsdir"
8675 #define XMMS_INPUT_PLUGIN_DIR "$_xmmsplugindir"
8684 /* Audio output drivers */
8699 $def_ossaudio_devdsp
8700 $def_ossaudio_devmixer
8713 $def_ioctl_bt848_h_name
8714 $def_ioctl_meteor_h_name
8768 $def_directfb_version
8803 $def_vidix_drv_cyberblade
8805 $def_vidix_drv_mach64
8807 $def_vidix_drv_mga_crtc2
8808 $def_vidix_drv_nvidia
8810 $def_vidix_drv_radeon
8811 $def_vidix_drv_rage128
8813 $def_vidix_drv_sh_veu
8815 $def_vidix_drv_unichrome
8849 #define CONFIG_DECODERS 1
8850 #define CONFIG_ENCODERS 1
8851 #define CONFIG_DEMUXERS 1
8861 $def_libavcodec_mpegaudio_hp
8872 #define CONFIG_FASTDIV 0
8873 #define CONFIG_FFSERVER 0
8874 #define CONFIG_GPL 1
8875 #define CONFIG_GRAY 0
8876 #define CONFIG_HARDCODED_TABLES 0
8877 #define CONFIG_LIBAMR_NB_FIXED 0
8878 #define CONFIG_LIBVORBIS 0
8879 #define CONFIG_POWERPC_PERF 0
8880 #define CONFIG_SMALL 0
8881 #define CONFIG_SWSCALE 1
8882 #define CONFIG_SWSCALE_ALPHA 1
8884 #define HAVE_GETHRTIME 0
8885 #define HAVE_INLINE_ASM 0
8886 #define HAVE_LDBRX 0
8887 #define HAVE_POLL_H 1
8888 #define HAVE_PPC4XX 0
8889 #define HAVE_VIRTUALALLOC 0
8891 /* Some FFmpeg codecs depend on these. Enable them unconditionally for now. */
8892 #define CONFIG_AANDCT 1
8893 #define CONFIG_FFT 1
8894 #define CONFIG_GOLOMB 1
8895 #define CONFIG_MDCT 1
8896 #define CONFIG_RDFT 1
8898 /* Use these registers in FFmpeg x86 inline asm. No proper detection yet. */
8899 #define HAVE_EBX_AVAILABLE 1
8901 #define HAVE_EBP_AVAILABLE 1
8903 #define HAVE_EBP_AVAILABLE 0
8906 /* External libraries used through libavcodec. */
8912 $def_libschroedinger_lavc
8917 $(ff_config_enable "$_libavdecoders_all" "$_libavdecoders")
8918 $(ff_config_enable "$_libavencoders_all" "$_libavencoders")
8919 $(ff_config_enable "$_libavparsers_all" "$_libavparsers")
8920 $(ff_config_enable "$_libavdemuxers_all" "$_libavdemuxers")
8921 $(ff_config_enable "$_libavmuxers_all" "$_libavmuxers")
8922 $(ff_config_enable "$_libavprotocols_all" "$_libavprotocols")
8923 $(ff_config_enable "$_libavbsfs_all" "$_libavbsfs")
8925 #define CONFIG_H263_VAAPI_HWACCEL 0
8926 #define CONFIG_MPEG2_VAAPI_HWACCEL 0
8927 #define CONFIG_MPEG4_VAAPI_HWACCEL 0
8928 #define CONFIG_H264_VAAPI_HWACCEL 0
8929 #define CONFIG_VC1_VAAPI_HWACCEL 0
8930 #define CONFIG_WMV3_VAAPI_HWACCEL 0
8932 #endif /* MPLAYER_CONFIG_H */
8935 # Do not overwrite an unchanged config.h to avoid superfluous rebuilds.
8936 cmp -s "$TMPH" config.h ||
mv -f "$TMPH" config.h
8938 cp -p config.h ffmpeg
/config.h
8939 sed -e 's/OPTFLAGS/MPLAYER_OPTFLAGS/' -e 's/FFMPEG_OFLAGS/OPTFLAGS/' config.mak
>ffmpeg
/config.mak
8941 #############################################################################
8945 Config files successfully generated by ./configure $_configuration !
8947 Install prefix: $_prefix
8948 Data directory: $_datadir
8949 Config direct.: $_confdir
8951 Byte order: $_byte_order
8952 Optimizing for: $_optimizing
8955 Messages/GUI: $language_msg
8956 Manual pages: $language_man
8957 Documentation: $language_doc
8959 Enabled optional drivers:
8960 Input: $_inputmodules
8961 Codecs: $_codecmodules
8962 Audio output: $_aomodules
8963 Video output: $_vomodules
8965 Disabled optional drivers:
8966 Input: $_noinputmodules
8967 Codecs: $_nocodecmodules
8968 Audio output: $_noaomodules
8969 Video output: $_novomodules
8971 'config.h' and 'config.mak' contain your configuration options.
8972 Note: If you alter theses files (for instance CFLAGS) MPlayer may no longer
8973 compile *** DO NOT REPORT BUGS if you tweak these files ***
8975 'make' will now compile MPlayer and 'make install' will install it.
8976 Note: On non-Linux systems you might need to use 'gmake' instead of 'make'.
8981 if test "$_mtrr" = yes ; then
8982 echo "Please check mtrr settings at /proc/mtrr (see DOCS/HTML/$doc_lang/video.html#mtrr)"
8988 NOTE: Win32 codec DLLs are not supported on your CPU ($host_arch) or your
8989 operating system ($system_name). You may encounter a few files that cannot
8990 be played due to missing open source video/audio codec support.
8997 Check $TMPLOG if you wonder why an autodetection failed (make sure
8998 development headers/packages are installed).
9000 NOTE: The --enable-* parameters unconditionally force options on, completely
9001 skipping autodetection. This behavior is unlike what you may be used to from
9002 autoconf-based configure scripts that can decide to override you. This greater
9003 level of control comes at a price. You may have to provide the correct compiler
9004 and linker flags yourself.
9005 If you used one of these options (except --enable-gui and similar ones that
9006 turn on internal features) and experience a compilation or linking failure,
9007 make sure you have passed the necessary compiler/linker flags to configure.
9009 If you suspect a bug, please read DOCS/HTML/$doc_lang/bugreports.html.
9013 if test "$_warn_CFLAGS" = yes; then
9016 MPlayer compilation will use the CPPFLAGS/CFLAGS/LDFLAGS/YASMFLAGS set by you,
9019 *** *** DO NOT REPORT BUGS IF IT DOES NOT COMPILE/WORK! *** ***
9021 It is strongly recommended to let MPlayer choose the correct CFLAGS!
9022 To do so, execute 'CFLAGS= ./configure <options>'
9028 rm -f "$TMPEXE" "$TMPC" "$TMPS" "$TMPCPP" "$TMPH"