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 --disable-largefiles disable support for files > 2GB [enable]
229 --enable-linux-devfs set default devices to devfs [disable]
230 --enable-termcap use termcap database for key codes [autodetect]
231 --enable-termios use termios database for key codes [autodetect]
232 --disable-iconv disable iconv for encoding conversion [autodetect]
233 --disable-langinfo do not use langinfo [autodetect]
234 --enable-lirc enable LIRC (remote control) support [autodetect]
235 --enable-lircc enable LIRCCD (LIRC client daemon) input [autodetect]
236 --enable-joystick enable joystick support [disable]
237 --enable-apple-remote enable Apple Remote input (Mac OS X only) [autodetect]
238 --enable-apple-ir enable Apple IR Remote input (Linux only) [autodetect]
239 --disable-vm disable X video mode extensions [autodetect]
240 --disable-xf86keysym disable support for multimedia keys [autodetect]
241 --enable-radio enable radio interface [disable]
242 --enable-radio-capture enable radio capture (through PCI/line-in) [disable]
243 --disable-radio-v4l2 disable Video4Linux2 radio interface [autodetect]
244 --disable-radio-bsdbt848 disable BSD BT848 radio interface [autodetect]
245 --disable-tv disable TV interface (TV/DVB grabbers) [enable]
246 --disable-tv-v4l1 disable Video4Linux TV interface [autodetect]
247 --disable-tv-v4l2 disable Video4Linux2 TV interface [autodetect]
248 --disable-tv-bsdbt848 disable BSD BT848 interface [autodetect]
249 --disable-tv-teletext disable TV teletext interface [autodetect]
250 --disable-pvr disable Video4Linux2 MPEG PVR [autodetect]
251 --disable-rtc disable RTC (/dev/rtc) on Linux [autodetect]
252 --disable-network disable networking [enable]
253 --enable-winsock2_h enable winsock2_h [autodetect]
254 --enable-smb enable Samba (SMB) input [autodetect]
255 --enable-live enable LIVE555 Streaming Media [autodetect]
256 --enable-nemesi enable Nemesi Streaming Media [autodetect]
257 --disable-vcd disable VCD support [autodetect]
258 --disable-dvdnav disable libdvdnav [autodetect]
259 --disable-dvdread disable libdvdread [autodetect]
260 --disable-dvdread-internal disable internal libdvdread [autodetect]
261 --disable-libdvdcss-internal disable internal libdvdcss [autodetect]
262 --disable-cdparanoia disable cdparanoia [autodetect]
263 --disable-cddb disable cddb [autodetect]
264 --disable-bitmap-font disable bitmap font support [enable]
265 --disable-freetype disable FreeType 2 font rendering [autodetect]
266 --disable-fontconfig disable fontconfig font lookup [autodetect]
267 --disable-unrarexec disable using of UnRAR executable [enabled]
268 --enable-menu enable OSD menu (not DVD menu) [disabled]
269 --disable-sortsub disable subtitle sorting [enabled]
270 --enable-fribidi enable the FriBiDi libs [autodetect]
271 --disable-enca disable ENCA charset oracle library [autodetect]
272 --disable-maemo disable maemo specific features [autodetect]
273 --enable-macosx-finder enable Mac OS X Finder invocation parameter
275 --enable-macosx-bundle enable Mac OS X bundle file locations [autodetect]
276 --disable-inet6 disable IPv6 support [autodetect]
277 --disable-gethostbyname2 gethostbyname2 part of the C library [autodetect]
278 --disable-ftp disable FTP support [enabled]
279 --disable-vstream disable TiVo vstream client support [autodetect]
280 --disable-pthreads disable Posix threads support [autodetect]
281 --disable-w32threads disable Win32 threads support [autodetect]
282 --disable-ass disable internal SSA/ASS subtitle support [autodetect]
283 --enable-rpath enable runtime linker path for extra libs [disabled]
286 --enable-gif enable GIF support [autodetect]
287 --enable-png enable PNG input/output support [autodetect]
288 --enable-mng enable MNG input support [autodetect]
289 --enable-jpeg enable JPEG input/output support [autodetect]
290 --enable-libcdio enable libcdio support [autodetect]
291 --enable-liblzo enable liblzo support [autodetect]
292 --disable-win32dll disable Win32 DLL support [enabled]
293 --disable-qtx disable QuickTime codecs support [enabled]
294 --disable-xanim disable XAnim codecs support [enabled]
295 --disable-real disable RealPlayer codecs support [enabled]
296 --disable-xvid disable Xvid [autodetect]
297 --disable-x264 disable x264 [autodetect]
298 --disable-libnut disable libnut [autodetect]
299 --disable-libavutil disable libavutil [autodetect]
300 --disable-libavcodec disable libavcodec [autodetect]
301 --disable-libavformat disable libavformat [autodetect]
302 --disable-libpostproc disable libpostproc [autodetect]
303 --disable-libswscale disable libswscale [autodetect]
304 --disable-tremor-internal disable internal Tremor [enabled]
305 --enable-tremor-low enable lower accuracy internal Tremor [disabled]
306 --enable-tremor enable external Tremor [autodetect]
307 --disable-libvorbis disable libvorbis support [autodetect]
308 --disable-speex disable Speex support [autodetect]
309 --enable-theora enable OggTheora libraries [autodetect]
310 --enable-faad enable external FAAD2 (AAC) [autodetect]
311 --disable-faad-internal disable internal FAAD2 (AAC) [autodetect]
312 --enable-faad-fixed enable fixed-point mode in internal FAAD2 [disabled]
313 --disable-faac disable support for FAAC (AAC encoder) [autodetect]
314 --disable-ladspa disable LADSPA plugin support [autodetect]
315 --disable-libbs2b disable libbs2b audio filter support [autodetect]
316 --disable-libdv disable libdv 0.9.5 en/decoding support [autodetect]
317 --disable-mad disable libmad (MPEG audio) support [autodetect]
318 --disable-mp3lame disable LAME MP3 encoding support [autodetect]
319 --disable-toolame disable Toolame (MPEG layer 2) encoding [autodetect]
320 --disable-twolame disable Twolame (MPEG layer 2) encoding [autodetect]
321 --enable-xmms enable XMMS input plugin support [disabled]
322 --enable-libdca enable libdca support [autodetect]
323 --disable-mp3lib disable builtin mp3lib [autodetect]
324 --disable-liba52 disable liba52 [autodetect]
325 --disable-liba52-internal disable builtin liba52 [autodetect]
326 --disable-libmpeg2 disable builtin libmpeg2 [autodetect]
327 --disable-musepack disable musepack support [autodetect]
330 --disable-vidix disable VIDIX [for x86 *nix]
331 --with-vidix-drivers[=*] list of VIDIX drivers to be compiled in
332 Available: cyberblade,ivtv,mach64,mga,mga_crtc2,
333 nvidia,pm2,pm3,radeon,rage128,s3,sis,unichrome
334 --disable-vidix-pcidb disable VIDIX PCI device name database
335 --enable-dhahelper enable VIDIX dhahelper support
336 --enable-svgalib_helper enable VIDIX svgalib_helper support
337 --enable-gl enable OpenGL video output [autodetect]
338 --enable-dga2 enable DGA 2 support [autodetect]
339 --enable-dga1 enable DGA 1 support [autodetect]
340 --enable-vesa enable VESA video output [autodetect]
341 --enable-svga enable SVGAlib video output [autodetect]
342 --enable-sdl enable SDL video output [autodetect]
343 --enable-kva enable KVA video output [autodetect]
344 --enable-aa enable AAlib video output [autodetect]
345 --enable-caca enable CACA video output [autodetect]
346 --enable-ggi enable GGI video output [autodetect]
347 --enable-ggiwmh enable GGI libggiwmh extension [autodetect]
348 --enable-direct3d enable Direct3D video output [autodetect]
349 --enable-directx enable DirectX video output [autodetect]
350 --enable-dxr2 enable DXR2 video output [autodetect]
351 --enable-dxr3 enable DXR3/H+ video output [autodetect]
352 --enable-ivtv enable IVTV TV-Out video output [autodetect]
353 --enable-v4l2 enable V4L2 Decoder audio/video output [autodetect]
354 --enable-dvb enable DVB video output [autodetect]
355 --enable-dvbhead enable DVB video output (HEAD version) [autodetect]
356 --enable-mga enable mga_vid video output [autodetect]
357 --enable-xmga enable mga_vid X11 video output [autodetect]
358 --enable-xv enable Xv video output [autodetect]
359 --enable-xvmc enable XvMC acceleration [disable]
360 --enable-vdpau enable VDPAU acceleration [autodetect]
361 --enable-vm enable XF86VidMode support [autodetect]
362 --enable-xinerama enable Xinerama support [autodetect]
363 --enable-x11 enable X11 video output [autodetect]
364 --enable-xshape enable XShape support [autodetect]
365 --disable-xss disable screensaver support via xss [autodetect]
366 --enable-fbdev enable FBDev video output [autodetect]
367 --enable-mlib enable mediaLib video output (Solaris) [disable]
368 --enable-3dfx enable obsolete /dev/3dfx video output [disable]
369 --enable-tdfxfb enable tdfxfb video output [disable]
370 --enable-s3fb enable s3fb (S3 ViRGE) video output [disable]
371 --enable-wii enable Nintendo Wii/GameCube video output [disable]
372 --enable-directfb enable DirectFB video output [autodetect]
373 --enable-zr enable ZR360[56]7/ZR36060 video output [autodetect]
374 --enable-bl enable Blinkenlights video output [disable]
375 --enable-tdfxvid enable tdfx_vid video output [disable]
376 --enable-xvr100 enable SUN XVR-100 video output [autodetect]
377 --disable-tga disable Targa video output [enable]
378 --disable-pnm disable PNM video output [enable]
379 --disable-md5sum disable md5sum video output [enable]
380 --disable-yuv4mpeg disable yuv4mpeg video output [enable]
381 --disable-corevideo disable CoreVideo video output [autodetect]
382 --disable-quartz disable Quartz video output [autodetect]
383 --disable-glamo disable Glamo accelerated video output [enable]
386 --disable-alsa disable ALSA audio output [autodetect]
387 --disable-ossaudio disable OSS audio output [autodetect]
388 --disable-arts disable aRts audio output [autodetect]
389 --disable-esd disable esd audio output [autodetect]
390 --disable-pulse disable Pulseaudio audio output [autodetect]
391 --disable-jack disable JACK audio output [autodetect]
392 --enable-openal enable OpenAL audio output [disable]
393 --disable-nas disable NAS audio output [autodetect]
394 --disable-sgiaudio disable SGI audio output [autodetect]
395 --disable-sunaudio disable Sun audio output [autodetect]
396 --disable-dart disable DART audio output [autodetect]
397 --disable-win32waveout disable Windows waveout audio output [autodetect]
398 --disable-coreaudio disable CoreAudio audio output [autodetect]
399 --disable-select disable using select() on the audio device [enable]
402 --charset=charset convert the console messages to this character set
403 --language-doc=lang language to use for the documentation [en]
404 --language-man=lang language to use for the man pages [en]
405 --language-msg=lang language to use for the messages [en]
406 --language=lang default language to use [en]
407 Specific options override --language. You can pass a list of languages separated
408 by whitespace or commas instead of a single language. Nonexisting translations
409 will be dropped from each list. All documentation and man page translations
410 available in the list will be installed, for the messages the first available
411 translation will be used. The value "all" will activate all translations. The
412 LINGUAS environment variable is honored. In all cases the fallback is English.
413 Available values are: all $msg_lang_all
415 Miscellaneous options:
416 --enable-runtime-cpudetection enable runtime CPU detection [disable]
417 --enable-cross-compile enable cross-compilation [autodetect]
418 --cc=COMPILER C compiler to build MPlayer [gcc]
419 --host-cc=COMPILER C compiler for tools needed while building [gcc]
420 --as=ASSEMBLER assembler to build MPlayer [as]
421 --nm=NM nm tool to build MPlayer [nm]
422 --yasm=YASM Yasm assembler to build MPlayer [yasm]
423 --ar=AR librarian to build MPlayer [ar]
424 --ranlib=RANLIB ranlib to build MPlayer [ranlib]
425 --windres=WINDRES windres to build MPlayer [windres]
426 --target=PLATFORM target platform (i386-linux, arm-linux, etc)
427 --enable-static build a statically linked binary
428 --with-install=PATH path to a custom install program
431 --enable-mmx enable MMX [autodetect]
432 --enable-mmxext enable MMX2 (Pentium III, Athlon) [autodetect]
433 --enable-3dnow enable 3DNow! [autodetect]
434 --enable-3dnowext enable extended 3DNow! [autodetect]
435 --enable-sse enable SSE [autodetect]
436 --enable-sse2 enable SSE2 [autodetect]
437 --enable-ssse3 enable SSSE3 [autodetect]
438 --enable-shm enable shm [autodetect]
439 --enable-altivec enable AltiVec (PowerPC) [autodetect]
440 --enable-armv5te enable DSP extensions (ARM) [autodetect]
441 --enable-armv6 enable ARMv6 (ARM) [autodetect]
442 --enable-armv6t2 enable ARMv6t2 (ARM) [autodetect]
443 --enable-armvfp enable ARM VFP (ARM) [autodetect]
444 --enable-neon enable NEON (ARM) [autodetect]
445 --enable-iwmmxt enable iWMMXt (ARM) [autodetect]
446 --disable-fastmemcpy disable 3DNow!/SSE/MMX optimized memcpy [enable]
447 --enable-big-endian force byte order to big-endian [autodetect]
448 --enable-debug[=1-3] compile-in debugging information [disable]
449 --enable-profile compile-in profiling information [disable]
450 --disable-sighandler disable sighandler for crashes [enable]
451 --enable-crash-debug enable automatic gdb attach on crash [disable]
452 --enable-dynamic-plugins enable dynamic A/V plugins [disable]
453 --ffmpeg-source-dir=PATH enable features requiring internal FFmpeg headers
455 Use these options if autodetection fails:
456 --extra-cflags=FLAGS extra CFLAGS
457 --extra-ldflags=FLAGS extra LDFLAGS
458 --extra-libs=FLAGS extra linker flags
459 --extra-libs-mplayer=FLAGS extra linker flags for MPlayer
460 --extra-libs-mencoder=FLAGS extra linker flags for MEncoder
461 --with-xvmclib=NAME adapter-specific library name (e.g. XvMCNVIDIA)
463 --with-freetype-config=PATH path to freetype-config
464 --with-fribidi-config=PATH path to fribidi-config
465 --with-glib-config=PATH path to glib*-config
466 --with-gtk-config=PATH path to gtk*-config
467 --with-sdl-config=PATH path to sdl*-config
468 --with-dvdnav-config=PATH path to dvdnav-config
469 --with-dvdread-config=PATH path to dvdread-config
471 This configure script is NOT autoconf-based, even though its output is similar.
472 It will try to autodetect all configuration options. If you --enable an option
473 it will be forcefully turned on, skipping autodetection. This can break
474 compilation, so you need to know what you are doing.
479 # GOTCHA: the variables below defines the default behavior for autodetection
480 # and have - unless stated otherwise - at least 2 states : yes no
481 # If autodetection is available then the third state is: auto
504 test "$CC" && _cc
="$CC"
508 _runtime_cpudetection
=no
516 _libavcodec_internals
=no
517 _libswscale_internals
=no
526 _xvmc
=no
#auto when complete
579 _liba52_internal
=auto
591 _dvdnavconfig
=dvdnav-config
592 _dvdreadconfig
=dvdread-config
594 _dvdread_internal
=auto
595 _libdvdcss_internal
=auto
606 _mlib
=no
#broken, thus disabled
681 _freetypeconfig
='freetype-config'
683 _fribidiconfig
='fribidi-config'
697 def_dos_paths
="#define HAVE_DOS_PATHS 0"
698 def_stream_cache
="#define CONFIG_STREAM_CACHE 1"
699 def_priority
="#undef CONFIG_PRIORITY"
700 def_pthread_cache
="#undef PTHREAD_CACHE"
708 _prefix
=$
(echo $ac_option | cut
-d '=' -f 2)
711 _bindir
=$
(echo $ac_option | cut
-d '=' -f 2)
714 _datadir
=$
(echo $ac_option | cut
-d '=' -f 2)
717 _mandir
=$
(echo $ac_option | cut
-d '=' -f 2)
720 _confdir
=$
(echo $ac_option | cut
-d '=' -f 2)
723 _libdir
=$
(echo $ac_option | cut
-d '=' -f 2)
726 _codecsdir
=$
(echo $ac_option | cut
-d '=' -f 2)
729 _win32codecsdir
=$
(echo $ac_option | cut
-d '=' -f 2)
732 _xanimcodecsdir
=$
(echo $ac_option | cut
-d '=' -f 2)
735 _realcodecsdir
=$
(echo $ac_option | cut
-d '=' -f 2)
739 _install
=$
(echo $ac_option | cut
-d '=' -f 2 )
742 _xvmclib
=$
(echo $ac_option | cut
-d '=' -f 2)
746 _sdlconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
748 --with-freetype-config=*)
749 _freetypeconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
751 --with-fribidi-config=*)
752 _fribidiconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
755 _gtkconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
757 --with-glib-config=*)
758 _glibconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
760 --with-dvdnav-config=*)
761 _dvdnavconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
763 --with-dvdread-config=*)
764 _dvdreadconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
768 extra_cflags
="$extra_cflags $(echo $ac_option | cut -d '=' -f 2-)"
771 extra_ldflags
="$extra_ldflags $(echo $ac_option | cut -d '=' -f 2-)"
774 extra_libs
=$
(echo $ac_option | cut
-d '=' -f 2)
776 --extra-libs-mplayer=*)
777 libs_mplayer
=$
(echo $ac_option | cut
-d '=' -f 2)
779 --extra-libs-mencoder=*)
780 libs_mencoder
=$
(echo $ac_option | cut
-d '=' -f 2)
784 _target
=$
(echo $ac_option | cut
-d '=' -f 2)
787 _cc
=$
(echo $ac_option | cut
-d '=' -f 2)
790 _host_cc
=$
(echo $ac_option | cut
-d '=' -f 2)
793 _as
=$
(echo $ac_option | cut
-d '=' -f 2)
796 _nm
=$
(echo $ac_option | cut
-d '=' -f 2)
799 _yasm
=$
(echo $ac_option | cut
-d '=' -f 2)
802 _ar
=$
(echo $ac_option | cut
-d '=' -f 2)
805 _ranlib
=$
(echo $ac_option | cut
-d '=' -f 2)
808 _windres
=$
(echo $ac_option | cut
-d '=' -f 2)
811 _charset
=$
(echo $ac_option | cut
-d '=' -f 2)
814 language_doc
=$
(echo $ac_option | cut
-d '=' -f 2)
817 language_man
=$
(echo $ac_option | cut
-d '=' -f 2)
820 language_msg
=$
(echo $ac_option | cut
-d '=' -f 2)
823 language
=$
(echo $ac_option | cut
-d '=' -f 2)
842 _debug
=$
(echo $_echo_n '-g'$_echo_c; echo $ac_option | cut
-d '=' -f 2)
847 --enable-runtime-cpudetection) _runtime_cpudetection
=yes ;;
848 --disable-runtime-cpudetection) _runtime_cpudetection
=no
;;
849 --enable-cross-compile) _cross_compile
=yes ;;
850 --disable-cross-compile) _cross_compile
=no
;;
851 --enable-mencoder) _mencoder
=yes ;;
852 --disable-mencoder) _mencoder
=no
;;
853 --enable-mplayer) _mplayer
=yes ;;
854 --disable-mplayer) _mplayer
=no
;;
855 --enable-dynamic-plugins) _dynamic_plugins
=yes ;;
856 --disable-dynamic-plugins) _dynamic_plugins
=no
;;
857 --enable-x11) _x11
=yes ;;
858 --disable-x11) _x11
=no
;;
859 --enable-xshape) _xshape
=yes ;;
860 --disable-xshape) _xshape
=no
;;
861 --enable-xss) _xss
=yes ;;
862 --disable-xss) _xss
=no
;;
863 --enable-xv) _xv
=yes ;;
864 --disable-xv) _xv
=no
;;
865 --enable-xvmc) _xvmc
=yes ;;
866 --disable-xvmc) _xvmc
=no
;;
867 --enable-vdpau) _vdpau
=yes ;;
868 --disable-vdpau) _vdpau
=no
;;
869 --enable-sdl) _sdl
=yes ;;
870 --disable-sdl) _sdl
=no
;;
871 --enable-kva) _kva
=yes ;;
872 --disable-kva) _kva
=no
;;
873 --enable-direct3d) _direct3d
=yes ;;
874 --disable-direct3d) _direct3d
=no
;;
875 --enable-directx) _directx
=yes ;;
876 --disable-directx) _directx
=no
;;
877 --enable-win32waveout) _win32waveout
=yes ;;
878 --disable-win32waveout) _win32waveout
=no
;;
879 --enable-nas) _nas
=yes ;;
880 --disable-nas) _nas
=no
;;
881 --enable-png) _png
=yes ;;
882 --disable-png) _png
=no
;;
883 --enable-mng) _mng
=yes ;;
884 --disable-mng) _mng
=no
;;
885 --enable-jpeg) _jpeg
=yes ;;
886 --disable-jpeg) _jpeg
=no
;;
887 --enable-pnm) _pnm
=yes ;;
888 --disable-pnm) _pnm
=no
;;
889 --enable-md5sum) _md5sum
=yes ;;
890 --disable-md5sum) _md5sum
=no
;;
891 --enable-yuv4mpeg) _yuv4mpeg
=yes ;;
892 --disable-yuv4mpeg) _yuv4mpeg
=no
;;
893 --enable-gif) _gif
=yes ;;
894 --disable-gif) _gif
=no
;;
895 --enable-gl) _gl
=yes ;;
896 --disable-gl) _gl
=no
;;
897 --enable-ggi) _ggi
=yes ;;
898 --disable-ggi) _ggi
=no
;;
899 --enable-ggiwmh) _ggiwmh
=yes ;;
900 --disable-ggiwmh) _ggiwmh
=no
;;
901 --enable-aa) _aa
=yes ;;
902 --disable-aa) _aa
=no
;;
903 --enable-caca) _caca
=yes ;;
904 --disable-caca) _caca
=no
;;
905 --enable-svga) _svga
=yes ;;
906 --disable-svga) _svga
=no
;;
907 --enable-vesa) _vesa
=yes ;;
908 --disable-vesa) _vesa
=no
;;
909 --enable-fbdev) _fbdev
=yes ;;
910 --disable-fbdev) _fbdev
=no
;;
911 --enable-dvb) _dvb
=yes ;;
912 --disable-dvb) _dvb
=no
;;
913 --enable-dvbhead) _dvbhead
=yes ;;
914 --disable-dvbhead) _dvbhead
=no
;;
915 --enable-dxr2) _dxr2
=yes ;;
916 --disable-dxr2) _dxr2
=no
;;
917 --enable-dxr3) _dxr3
=yes ;;
918 --disable-dxr3) _dxr3
=no
;;
919 --enable-ivtv) _ivtv
=yes ;;
920 --disable-ivtv) _ivtv
=no
;;
921 --enable-v4l2) _v4l2
=yes ;;
922 --disable-v4l2) _v4l2
=no
;;
923 --enable-iconv) _iconv
=yes ;;
924 --disable-iconv) _iconv
=no
;;
925 --enable-langinfo) _langinfo
=yes ;;
926 --disable-langinfo) _langinfo
=no
;;
927 --enable-rtc) _rtc
=yes ;;
928 --disable-rtc) _rtc
=no
;;
929 --enable-libdv) _libdv
=yes ;;
930 --disable-libdv) _libdv
=no
;;
931 --enable-ossaudio) _ossaudio
=yes ;;
932 --disable-ossaudio) _ossaudio
=no
;;
933 --enable-arts) _arts
=yes ;;
934 --disable-arts) _arts
=no
;;
935 --enable-esd) _esd
=yes ;;
936 --disable-esd) _esd
=no
;;
937 --enable-pulse) _pulse
=yes ;;
938 --disable-pulse) _pulse
=no
;;
939 --enable-jack) _jack
=yes ;;
940 --disable-jack) _jack
=no
;;
941 --enable-openal) _openal
=yes ;;
942 --disable-openal) _openal
=no
;;
943 --enable-dart) _dart
=yes ;;
944 --disable-dart) _dart
=no
;;
945 --enable-mad) _mad
=yes ;;
946 --disable-mad) _mad
=no
;;
947 --enable-mp3lame) _mp3lame
=yes ;;
948 --disable-mp3lame) _mp3lame
=no
;;
949 --enable-toolame) _toolame
=yes ;;
950 --disable-toolame) _toolame
=no
;;
951 --enable-twolame) _twolame
=yes ;;
952 --disable-twolame) _twolame
=no
;;
953 --enable-libcdio) _libcdio
=yes ;;
954 --disable-libcdio) _libcdio
=no
;;
955 --enable-liblzo) _liblzo
=yes ;;
956 --disable-liblzo) _liblzo
=no
;;
957 --enable-libvorbis) _libvorbis
=yes ;;
958 --disable-libvorbis) _libvorbis
=no
;;
959 --enable-speex) _speex
=yes ;;
960 --disable-speex) _speex
=no
;;
961 --enable-tremor) _tremor
=yes ;;
962 --disable-tremor) _tremor
=no
;;
963 --enable-tremor-internal) _tremor_internal
=yes ;;
964 --disable-tremor-internal) _tremor_internal
=no
;;
965 --enable-tremor-low) _tremor_low
=yes ;;
966 --disable-tremor-low) _tremor_low
=no
;;
967 --enable-theora) _theora
=yes ;;
968 --disable-theora) _theora
=no
;;
969 --enable-mp3lib) _mp3lib
=yes ;;
970 --disable-mp3lib) _mp3lib
=no
;;
971 --enable-liba52-internal) _liba52_internal
=yes ;;
972 --disable-liba52-internal) _liba52_internal
=no
;;
973 --enable-liba52) _liba52
=yes ;;
974 --disable-liba52) _liba52
=no
;;
975 --enable-libdca) _libdca
=yes ;;
976 --disable-libdca) _libdca
=no
;;
977 --enable-libmpeg2) _libmpeg2
=yes ;;
978 --disable-libmpeg2) _libmpeg2
=no
;;
979 --enable-musepack) _musepack
=yes ;;
980 --disable-musepack) _musepack
=no
;;
981 --enable-faad) _faad
=yes ;;
982 --disable-faad) _faad
=no
;;
983 --enable-faad-internal) _faad_internal
=yes ;;
984 --disable-faad-internal) _faad_internal
=no
;;
985 --enable-faad-fixed) _faad_fixed
=yes ;;
986 --disable-faad-fixed) _faad_fixed
=no
;;
987 --enable-faac) _faac
=yes ;;
988 --disable-faac) _faac
=no
;;
989 --enable-ladspa) _ladspa
=yes ;;
990 --disable-ladspa) _ladspa
=no
;;
991 --enable-libbs2b) _libbs2b
=yes ;;
992 --disable-libbs2b) _libbs2b
=no
;;
993 --enable-xmms) _xmms
=yes ;;
994 --disable-xmms) _xmms
=no
;;
995 --enable-vcd) _vcd
=yes ;;
996 --disable-vcd) _vcd
=no
;;
997 --enable-dvdread) _dvdread
=yes ;;
998 --disable-dvdread) _dvdread
=no
;;
999 --enable-dvdread-internal) _dvdread_internal
=yes ;;
1000 --disable-dvdread-internal) _dvdread_internal
=no
;;
1001 --enable-libdvdcss-internal) _libdvdcss_internal
=yes ;;
1002 --disable-libdvdcss-internal) _libdvdcss_internal
=no
;;
1003 --enable-dvdnav) _dvdnav
=yes ;;
1004 --disable-dvdnav) _dvdnav
=no
;;
1005 --enable-xanim) _xanim
=yes ;;
1006 --disable-xanim) _xanim
=no
;;
1007 --enable-real) _real
=yes ;;
1008 --disable-real) _real
=no
;;
1009 --enable-live) _live
=yes ;;
1010 --disable-live) _live
=no
;;
1011 --enable-nemesi) _nemesi
=yes ;;
1012 --disable-nemesi) _nemesi
=no
;;
1013 --enable-xinerama) _xinerama
=yes ;;
1014 --disable-xinerama) _xinerama
=no
;;
1015 --enable-mga) _mga
=yes ;;
1016 --disable-mga) _mga
=no
;;
1017 --enable-xmga) _xmga
=yes ;;
1018 --disable-xmga) _xmga
=no
;;
1019 --enable-vm) _vm
=yes ;;
1020 --disable-vm) _vm
=no
;;
1021 --enable-xf86keysym) _xf86keysym
=yes ;;
1022 --disable-xf86keysym) _xf86keysym
=no
;;
1023 --enable-mlib) _mlib
=yes ;;
1024 --disable-mlib) _mlib
=no
;;
1025 --enable-sunaudio) _sunaudio
=yes ;;
1026 --disable-sunaudio) _sunaudio
=no
;;
1027 --enable-sgiaudio) _sgiaudio
=yes ;;
1028 --disable-sgiaudio) _sgiaudio
=no
;;
1029 --enable-alsa) _alsa
=yes ;;
1030 --disable-alsa) _alsa
=no
;;
1031 --enable-tv) _tv
=yes ;;
1032 --disable-tv) _tv
=no
;;
1033 --enable-tv-bsdbt848) _tv_bsdbt848
=yes ;;
1034 --disable-tv-bsdbt848) _tv_bsdbt848
=no
;;
1035 --enable-tv-v4l1) _tv_v4l1
=yes ;;
1036 --disable-tv-v4l1) _tv_v4l1
=no
;;
1037 --enable-tv-v4l2) _tv_v4l2
=yes ;;
1038 --disable-tv-v4l2) _tv_v4l2
=no
;;
1039 --enable-tv-dshow) _tv_dshow
=yes ;;
1040 --disable-tv-dshow) _tv_dshow
=no
;;
1041 --enable-tv-teletext) _tv_teletext
=yes ;;
1042 --disable-tv-teletext) _tv_teletext
=no
;;
1043 --enable-radio) _radio
=yes ;;
1044 --enable-radio-capture) _radio_capture
=yes ;;
1045 --disable-radio-capture) _radio_capture
=no
;;
1046 --disable-radio) _radio
=no
;;
1047 --enable-radio-v4l) _radio_v4l
=yes ;;
1048 --disable-radio-v4l) _radio_v4l
=no
;;
1049 --enable-radio-v4l2) _radio_v4l2
=yes ;;
1050 --disable-radio-v4l2) _radio_v4l2
=no
;;
1051 --enable-radio-bsdbt848) _radio_bsdbt848
=yes ;;
1052 --disable-radio-bsdbt848) _radio_bsdbt848
=no
;;
1053 --enable-pvr) _pvr
=yes ;;
1054 --disable-pvr) _pvr
=no
;;
1055 --enable-fastmemcpy) _fastmemcpy
=yes ;;
1056 --disable-fastmemcpy) _fastmemcpy
=no
;;
1057 --enable-network) _network
=yes ;;
1058 --disable-network) _network
=no
;;
1059 --enable-winsock2_h) _winsock2_h
=yes ;;
1060 --disable-winsock2_h) _winsock2_h
=no
;;
1061 --enable-smb) _smb
=yes ;;
1062 --disable-smb) _smb
=no
;;
1063 --enable-vidix) _vidix
=yes ;;
1064 --disable-vidix) _vidix
=no
;;
1065 --with-vidix-drivers=*)
1066 _vidix_drivers
=$
(echo $ac_option | cut
-d '=' -f 2)
1068 --disable-vidix-pcidb) _vidix_pcidb
=no
;;
1069 --enable-dhahelper) _dhahelper
=yes ;;
1070 --disable-dhahelper) _dhahelper
=no
;;
1071 --enable-svgalib_helper) _svgalib_helper
=yes ;;
1072 --disable-svgalib_helper) _svgalib_helper
=no
;;
1073 --enable-joystick) _joystick
=yes ;;
1074 --disable-joystick) _joystick
=no
;;
1075 --enable-xvid) _xvid
=yes ;;
1076 --disable-xvid) _xvid
=no
;;
1077 --enable-x264) _x264
=yes ;;
1078 --disable-x264) _x264
=no
;;
1079 --enable-libnut) _libnut
=yes ;;
1080 --disable-libnut) _libnut
=no
;;
1081 --enable-libavutil) _libavutil
=yes ;;
1082 --disable-libavutil) _libavutil
=no
;;
1083 --enable-libavcodec) _libavcodec
=yes ;;
1084 --disable-libavcodec) _libavcodec
=no
;;
1085 --enable-libavformat) _libavformat
=yes ;;
1086 --disable-libavformat) _libavformat
=no
;;
1087 --enable-libpostproc) _libpostproc
=yes ;;
1088 --disable-libpostproc) _libpostproc
=no
;;
1089 --enable-libswscale) _libswscale
=yes ;;
1090 --disable-libswscale) _libswscale
=no
;;
1091 --ffmpeg-source-dir=*)
1092 _ffmpeg_source
=$
(echo $ac_option | cut
-d '=' -f 2 ) ;;
1094 --enable-lirc) _lirc
=yes ;;
1095 --disable-lirc) _lirc
=no
;;
1096 --enable-lircc) _lircc
=yes ;;
1097 --disable-lircc) _lircc
=no
;;
1098 --enable-apple-remote) _apple_remote
=yes ;;
1099 --disable-apple-remote) _apple_remote
=no
;;
1100 --enable-apple-ir) _apple_ir
=yes ;;
1101 --disable-apple-ir) _apple_ir
=no
;;
1102 --enable-gui) _gui
=yes ;;
1103 --disable-gui) _gui
=no
;;
1104 --enable-gtk1) _gtk1
=yes ;;
1105 --disable-gtk1) _gtk1
=no
;;
1106 --enable-termcap) _termcap
=yes ;;
1107 --disable-termcap) _termcap
=no
;;
1108 --enable-termios) _termios
=yes ;;
1109 --disable-termios) _termios
=no
;;
1110 --enable-3dfx) _3dfx
=yes ;;
1111 --disable-3dfx) _3dfx
=no
;;
1112 --enable-s3fb) _s3fb
=yes ;;
1113 --disable-s3fb) _s3fb
=no
;;
1114 --enable-wii) _wii
=yes ;;
1115 --disable-wii) _wii
=no
;;
1116 --enable-tdfxfb) _tdfxfb
=yes ;;
1117 --disable-tdfxfb) _tdfxfb
=no
;;
1118 --disable-tdfxvid) _tdfxvid
=no
;;
1119 --enable-tdfxvid) _tdfxvid
=yes ;;
1120 --disable-xvr100) _xvr100
=no
;;
1121 --enable-xvr100) _xvr100
=yes ;;
1122 --disable-tga) _tga
=no
;;
1123 --enable-tga) _tga
=yes ;;
1124 --enable-directfb) _directfb
=yes ;;
1125 --disable-directfb) _directfb
=no
;;
1126 --enable-zr) _zr
=yes ;;
1127 --disable-zr) _zr
=no
;;
1128 --enable-bl) _bl
=yes ;;
1129 --disable-bl) _bl
=no
;;
1130 --enable-glamo) _glamo
=yes ;;
1131 --disable-glamo) _glamo
=no
;;
1132 --enable-mtrr) _mtrr
=yes ;;
1133 --disable-mtrr) _mtrr
=no
;;
1134 --enable-largefiles) _largefiles
=yes ;;
1135 --disable-largefiles) _largefiles
=no
;;
1136 --enable-shm) _shm
=yes ;;
1137 --disable-shm) _shm
=no
;;
1138 --enable-select) _select
=yes ;;
1139 --disable-select) _select
=no
;;
1140 --enable-linux-devfs) _linux_devfs
=yes ;;
1141 --disable-linux-devfs) _linux_devfs
=no
;;
1142 --enable-cdparanoia) _cdparanoia
=yes ;;
1143 --disable-cdparanoia) _cdparanoia
=no
;;
1144 --enable-cddb) _cddb
=yes ;;
1145 --disable-cddb) _cddb
=no
;;
1146 --enable-big-endian) _big_endian
=yes ;;
1147 --disable-big-endian) _big_endian
=no
;;
1148 --enable-bitmap-font) _bitmap_font
=yes ;;
1149 --disable-bitmap-font) _bitmap_font
=no
;;
1150 --enable-freetype) _freetype
=yes ;;
1151 --disable-freetype) _freetype
=no
;;
1152 --enable-fontconfig) _fontconfig
=yes ;;
1153 --disable-fontconfig) _fontconfig
=no
;;
1154 --enable-unrarexec) _unrar_exec
=yes ;;
1155 --disable-unrarexec) _unrar_exec
=no
;;
1156 --enable-ftp) _ftp
=yes ;;
1157 --disable-ftp) _ftp
=no
;;
1158 --enable-vstream) _vstream
=yes ;;
1159 --disable-vstream) _vstream
=no
;;
1160 --enable-pthreads) _pthreads
=yes ;;
1161 --disable-pthreads) _pthreads
=no
;;
1162 --enable-w32threads) _w32threads
=yes ;;
1163 --disable-w32threads) _w32threads
=no
;;
1164 --enable-ass) _ass
=yes ;;
1165 --disable-ass) _ass
=no
;;
1166 --enable-rpath) _rpath
=yes ;;
1167 --disable-rpath) _rpath
=no
;;
1169 --enable-fribidi) _fribidi
=yes ;;
1170 --disable-fribidi) _fribidi
=no
;;
1172 --enable-enca) _enca
=yes ;;
1173 --disable-enca) _enca
=no
;;
1175 --enable-inet6) _inet6
=yes ;;
1176 --disable-inet6) _inet6
=no
;;
1178 --enable-gethostbyname2) _gethostbyname2
=yes ;;
1179 --disable-gethostbyname2) _gethostbyname2
=no
;;
1181 --enable-dga1) _dga1
=yes ;;
1182 --disable-dga1) _dga1
=no
;;
1183 --enable-dga2) _dga2
=yes ;;
1184 --disable-dga2) _dga2
=no
;;
1186 --enable-menu) _menu
=yes ;;
1187 --disable-menu) _menu
=no
;;
1189 --enable-qtx) _qtx
=yes ;;
1190 --disable-qtx) _qtx
=no
;;
1192 --enable-coreaudio) _coreaudio
=yes ;;
1193 --disable-coreaudio) _coreaudio
=no
;;
1194 --enable-corevideo) _corevideo
=yes ;;
1195 --disable-corevideo) _corevideo
=no
;;
1196 --enable-quartz) _quartz
=yes ;;
1197 --disable-quartz) _quartz
=no
;;
1198 --enable-macosx-finder) _macosx_finder
=yes ;;
1199 --disable-macosx-finder) _macosx_finder
=no
;;
1200 --enable-macosx-bundle) _macosx_bundle
=yes;;
1201 --disable-macosx-bundle) _macosx_bundle
=no
;;
1203 --enable-maemo) _maemo
=yes ;;
1204 --disable-maemo) _maemo
=no
;;
1206 --enable-sortsub) _sortsub
=yes ;;
1207 --disable-sortsub) _sortsub
=no
;;
1209 --enable-crash-debug) _crash_debug
=yes ;;
1210 --disable-crash-debug) _crash_debug
=no
;;
1211 --enable-sighandler) _sighandler
=yes ;;
1212 --disable-sighandler) _sighandler
=no
;;
1213 --enable-win32dll) _win32dll
=yes ;;
1214 --disable-win32dll) _win32dll
=no
;;
1216 --enable-sse) _sse
=yes ;;
1217 --disable-sse) _sse
=no
;;
1218 --enable-sse2) _sse2
=yes ;;
1219 --disable-sse2) _sse2
=no
;;
1220 --enable-ssse3) _ssse3
=yes ;;
1221 --disable-ssse3) _ssse3
=no
;;
1222 --enable-mmxext) _mmxext
=yes ;;
1223 --disable-mmxext) _mmxext
=no
;;
1224 --enable-3dnow) _3dnow
=yes ;;
1225 --disable-3dnow) _3dnow
=no _3dnowext
=no
;;
1226 --enable-3dnowext) _3dnow
=yes _3dnowext
=yes ;;
1227 --disable-3dnowext) _3dnowext
=no
;;
1228 --enable-cmov) _cmov
=yes ;;
1229 --disable-cmov) _cmov
=no
;;
1230 --enable-fast-cmov) _fast_cmov
=yes ;;
1231 --disable-fast-cmov) _fast_cmov
=no
;;
1232 --enable-altivec) _altivec
=yes ;;
1233 --disable-altivec) _altivec
=no
;;
1234 --enable-armv5te) _armv5te
=yes ;;
1235 --disable-armv5te) _armv5te
=no
;;
1236 --enable-armv6) _armv6
=yes ;;
1237 --disable-armv6) _armv6
=no
;;
1238 --enable-armv6t2) _armv6t2
=yes ;;
1239 --disable-armv6t2) _armv6t2
=no
;;
1240 --enable-armvfp) _armvfp
=yes ;;
1241 --disable-armvfp) _armvfp
=no
;;
1242 --enable-neon) neon
=yes ;;
1243 --disable-neon) neon
=no
;;
1244 --enable-iwmmxt) _iwmmxt
=yes ;;
1245 --disable-iwmmxt) _iwmmxt
=no
;;
1246 --enable-mmx) _mmx
=yes ;;
1247 --disable-mmx) # 3Dnow! and MMX2 require MMX
1248 _3dnow
=no _3dnowext
=no _mmx
=no _mmxext
=no
;;
1251 echo "Unknown parameter: $ac_option"
1258 if test "$_gui" = yes ; then
1259 die
"Internal GUI was removed from MPlayer. Please use one of many available\n frontends\
1260 (http://www.mplayerhq.hu/design7/projects.html#mplayer_frontends)."
1263 # Atmos: moved this here, to be correct, if --prefix is specified
1264 test -z "$_bindir" && _bindir
="$_prefix/bin"
1265 test -z "$_datadir" && _datadir
="$_prefix/share/mplayer"
1266 test -z "$_mandir" && _mandir
="$_prefix/share/man"
1267 test -z "$_confdir" && _confdir
="$_prefix/etc/mplayer"
1268 test -z "$_libdir" && _libdir
="$_prefix/lib"
1270 # Determine our OS name and CPU architecture
1271 if test -z "$_target" ; then
1273 system_name
=$
(uname
-s 2>&1)
1274 case "$system_name" in
1275 Linux|FreeBSD|NetBSD|OpenBSD|DragonFly|BSD
/OS|Darwin|SunOS|QNX|GNU|BeOS|MorphOS|AIX|AmigaOS
)
1289 [cC
][yY
][gG
][wW
][iI
][nN
]*)
1299 system_name
="$system_name-UNKNOWN"
1304 # host's CPU/instruction set
1305 host_arch
=$
(uname
-p 2>&1)
1306 case "$host_arch" in
1307 i386|sparc|ppc|alpha|arm|mips|vax
)
1309 powerpc
) # Darwin returns 'powerpc'
1312 *) # uname -p on Linux returns 'unknown' for the processor type,
1313 # OpenBSD returns 'Intel Pentium/MMX ("Genuine Intel" 586-class)'
1315 # Maybe uname -m (machine hardware name) returns something we
1318 # x86/x86pc is used by QNX
1319 case "$(uname -m 2>&1)" in
1320 x86_64|amd64|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
;;
1321 ia64
) host_arch
=ia64
;;
1322 macppc|ppc
) host_arch
=ppc
;;
1323 ppc64
) host_arch
=ppc64
;;
1324 alpha
) host_arch
=alpha
;;
1325 sparc
) host_arch
=sparc
;;
1326 sparc64
) host_arch
=sparc64
;;
1327 parisc
*|hppa
*|
9000*) host_arch
=hppa
;;
1328 arm
*|zaurus|cats
) host_arch
=arm
;;
1329 sh3|sh4|sh4a
) host_arch
=sh
;;
1330 s390
) host_arch
=s390
;;
1331 s390x
) host_arch
=s390x
;;
1332 *mips
*) host_arch
=mips
;;
1333 vax
) host_arch
=vax
;;
1334 xtensa
*) host_arch
=xtensa
;;
1335 *) host_arch
=UNKNOWN
;;
1339 else # if test -z "$_target"
1340 system_name
=$
(echo $_target | cut
-d '-' -f 2)
1341 case "$(echo $system_name | tr A-Z a-z)" in
1342 linux
) system_name
=Linux
;;
1343 freebsd
) system_name
=FreeBSD
;;
1344 gnu
/kfreebsd
) system_name
=FreeBSD
;;
1345 netbsd
) system_name
=NetBSD
;;
1346 bsd
/os
) system_name
=BSD
/OS
;;
1347 openbsd
) system_name
=OpenBSD
;;
1348 dragonfly
) system_name
=DragonFly
;;
1349 sunos
) system_name
=SunOS
;;
1350 qnx
) system_name
=QNX
;;
1351 morphos
) system_name
=MorphOS
;;
1352 amigaos
) system_name
=AmigaOS
;;
1353 mingw32msvc
) system_name
=MINGW32
;;
1355 # We need to convert underscores so that values like k6-2 and pentium-mmx can be passed
1356 host_arch
=$
(echo $_target | cut
-d '-' -f 1)
1357 if test $
(echo $host_arch) != "x86_64" ; then
1358 host_arch
=$
(echo $host_arch |
tr '_' '-')
1362 extra_cflags
="-I. $extra_cflags"
1363 _timer
=timer-linux.c
1366 extra_ldflags
="$extra_ldflags -L/usr/local/lib"
1367 extra_cflags
="$extra_cflags -I/usr/local/include"
1370 if netbsd || dragonfly
; then
1371 extra_ldflags
="$extra_ldflags -L/usr/pkg/lib"
1372 extra_cflags
="$extra_cflags -I/usr/pkg/include"
1376 extra_cflags
="-mdynamic-no-pic -falign-loops=16 -shared-libgcc $extra_cflags"
1377 _timer
=timer-darwin.c
1381 extra_ldflags
="$extra_ldflags -lC"
1392 # -lwinmm is always needed for osdep/timer-win2.c
1393 extra_ldflags
="$extra_ldflags -lwinmm"
1397 def_dos_paths
="#define HAVE_DOS_PATHS 1"
1398 def_priority
="#define CONFIG_PRIORITY 1"
1410 def_stream_cache
="#undef CONFIG_STREAM_CACHE"
1411 extra_cflags
="-DNEWLIB -D__USE_INLINE__ $extra_cflags"
1415 extra_ldflags
="$extra_ldflags -lph"
1423 def_dos_paths
="#define HAVE_DOS_PATHS 1"
1424 def_priority
="#define CONFIG_PRIORITY 1"
1427 for I
in "$TMPDIR" "$TEMPDIR" "/tmp" ; do
1432 TMPLOG
="configure.log"
1433 TMPC
="$I/mplayer-conf-$RANDOM-$$.c"
1434 TMPCPP
="$I/mplayer-conf-$RANDOM-$$.cpp"
1435 TMPEXE
="$I/mplayer-conf-$RANDOM-$$$_exesuf"
1436 TMPH
="$I/mplayer-conf-$RANDOM-$$.h"
1437 TMPS
="$I/mplayer-conf-$RANDOM-$$.S"
1440 echo configuration
: $_configuration > "$TMPLOG"
1444 if test -z "$_target" && x86
; then
1447 int test[sizeof(char *)-7];
1451 cc_check
&& host_arch
=x86_64 || host_arch
=i386
1454 echo "Detected operating system: $system_name"
1455 echo "Detected host architecture: $host_arch"
1457 if test "$_runtime_cpudetection" = yes && ! x86
&& ! ppc
; then
1458 die
"Runtime CPU detection only works for x86, x86-64 and PPC!"
1462 # Checking CC version...
1463 # Intel C++ Compilers (no autoselect, use CC=/some/binary ./configure)
1464 if test "$(basename $_cc)" = "icc" ||
test "$(basename $_cc)" = "ecc"; then
1465 echocheck
"$_cc version"
1467 cc_name
=$
($_cc -V 2>&1 |
head -n 1 | cut
-d ',' -f 1)
1468 cc_version
=$
($_cc -V 2>&1 |
head -n 1 | cut
-d ',' -f 2 | cut
-d ' ' -f 3)
1469 _cc_major
=$
(echo $cc_version | cut
-d '.' -f 1)
1470 _cc_minor
=$
(echo $cc_version | cut
-d '.' -f 2)
1471 # TODO verify older icc/ecc compatibility
1474 cc_version
="v. ?.??, bad"
1478 cc_version
="$cc_version, ok"
1481 cc_version
="$cc_version, bad"
1485 echores
"$cc_version"
1487 for _cc
in "$_cc" cc gcc
; do
1488 cc_name_tmp
=$
($_cc -v 2>&1 |
tail -n 1 | cut
-d ' ' -f 1)
1489 if test "$cc_name_tmp" = "gcc"; then
1490 cc_name
=$cc_name_tmp
1491 echocheck
"$_cc version"
1493 cc_version
=$
($_cc -dumpversion 2>&1)
1499 _cc_major
=$
(echo $cc_version | cut
-d '.' -f 1)
1500 _cc_minor
=$
(echo $cc_version | cut
-d '.' -f 2)
1501 _cc_mini
=$
(echo $cc_version | cut
-d '.' -f 3)
1504 echores
"$cc_version"
1509 test "$cc_fail" = yes && die
"unsupported compiler version"
1512 test "$_host_cc" || _host_cc
=$_cc
1515 echocheck
"cross compilation"
1516 if test $_cross_compile = auto
; then
1518 int main(void) { return 0; }
1521 cc_check
&& "$TMPEXE" && _cross_compile
=no
1523 echores
$_cross_compile
1525 if test $_cross_compile = yes; then
1533 # now that we know what compiler should be used for compilation, try to find
1534 # out which assembler is used by the $_cc compiler
1535 if test "$_as" = auto
; then
1536 _as
=$
($_cc -print-prog-name=as
)
1537 test -z "$_as" && _as
=as
1540 if test "$_nm" = auto
; then
1541 _nm
=$
($_cc -print-prog-name=nm
)
1542 test -z "$_nm" && _nm
=nm
1545 # XXX: this should be ok..
1548 if test "$_runtime_cpudetection" = no
; then
1550 # Cygwin has /proc/cpuinfo, but only supports Intel CPUs
1551 # FIXME: Remove the cygwin check once AMD CPUs are supported
1552 if test -r /proc
/cpuinfo
&& ! cygwin
; then
1553 # Linux with /proc mounted, extract CPU information from it
1554 _cpuinfo
="cat /proc/cpuinfo"
1555 elif test -r /compat
/linux
/proc
/cpuinfo
&& ! x86_32
; then
1556 # FreeBSD with Linux emulation /proc mounted,
1557 # extract CPU information from it
1558 _cpuinfo
="cat /compat/linux/proc/cpuinfo"
1559 elif darwin
&& ! x86
; then
1560 # use hostinfo on Darwin
1563 # use 'lsattr' on AIX
1564 _cpuinfo
="lsattr -E -l proc0 -a type"
1566 # all other OSes try to extract CPU information from a small helper
1567 # program cpuinfo instead
1568 $_cc -o cpuinfo
$_exesuf cpuinfo.c
1569 _cpuinfo
="./cpuinfo$_exesuf"
1573 # gather more CPU information
1574 pname
=$
($_cpuinfo |
grep 'model name' | cut
-d ':' -f 2 |
head -n 1)
1575 pvendor
=$
($_cpuinfo |
grep 'vendor_id' | cut
-d ':' -f 2 | cut
-d ' ' -f 2 |
head -n 1)
1576 pfamily
=$
($_cpuinfo |
grep 'cpu family' | cut
-d ':' -f 2 | cut
-d ' ' -f 2 |
head -n 1)
1577 pmodel
=$
($_cpuinfo |
grep -v 'model name' |
grep 'model' | cut
-d ':' -f 2 | cut
-d ' ' -f 2 |
head -n 1)
1578 pstepping
=$
($_cpuinfo |
grep 'stepping' | cut
-d ':' -f 2 | cut
-d ' ' -f 2 |
head -n 1)
1580 exts
=$
($_cpuinfo |
egrep 'features|flags' | cut
-d ':' -f 2 |
head -n 1)
1582 pparam
=$
(echo $exts |
sed -e s
/k6_mtrr
/mtrr
/ -e s
/cyrix_arr
/mtrr
/ -e s
/centaur_mcr
/mtrr
/ \
1583 -e s
/xmm
/sse
/ -e s
/kni
/sse
/)
1585 for ext
in $pparam ; do
1586 eval test \"\
$_$ext\" = auto
2>/dev
/null
&& eval _
$ext=kernel_check
1589 # SSE implies MMX2, but not all SSE processors report the mmxext CPU flag.
1590 test $_sse = kernel_check
&& _mmxext
=kernel_check
1592 echocheck
"CPU vendor"
1593 echores
"$pvendor ($pfamily:$pmodel:$pstepping)"
1595 echocheck
"CPU type"
1599 fi # test "$_runtime_cpudetection" = no
1601 if x86
&& test "$_runtime_cpudetection" = no
; then
1603 if test "$1" = kernel_check
; then
1604 echocheck
"kernel support of $2"
1608 void catch() { exit(1); }
1610 signal(SIGILL, catch);
1611 __asm__ volatile ("$3":::"memory"); return 0;
1615 if cc_check
&& tmp_run
; then
1618 _optimizing
="$_optimizing $2"
1623 echo "It seems that your kernel does not correctly support $2."
1624 echo "To use $2 extensions in MPlayer, you have to upgrade/recompile your kernel!"
1631 extcheck
$_mmx "mmx" "emms"
1632 extcheck
$_mmxext "mmxext" "sfence"
1633 extcheck
$_3dnow "3dnow" "femms"
1634 extcheck
$_3dnowext "3dnowext" "pswapd %%mm0, %%mm0"
1635 extcheck
$_sse "sse" "xorps %%xmm0, %%xmm0" || _gcc3_ext
="$_gcc3_ext -mno-sse"
1636 extcheck
$_sse2 "sse2" "xorpd %%xmm0, %%xmm0" || _gcc3_ext
="$_gcc3_ext -mno-sse2"
1637 extcheck
$_ssse3 "ssse3" "pabsd %%xmm0, %%xmm0"
1638 extcheck
$_cmov "cmov" "cmovb %%eax,%%ebx"
1640 echocheck
"mtrr support"
1641 if test "$_mtrr" = kernel_check
; then
1643 _optimizing
="$_optimizing mtrr"
1647 if test "$_gcc3_ext" != ""; then
1648 # if we had to disable sse/sse2 because the active kernel does not
1649 # support this instruction set extension, we also have to tell
1650 # gcc3 to not generate sse/sse2 instructions for normal C code
1652 int main(void) { return 0; }
1654 cc_check
$_march $_gcc3_ext && _march
="$_march $_gcc3_ext"
1660 def_fast_64bit
='#define HAVE_FAST_64BIT 0'
1661 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 0'
1662 _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'
1663 case "$host_arch" in
1664 i
[3-9]86|x86|x86pc|k5|k6|k6-2|k6-3|pentium
*|athlon
*|i586-i686
)
1666 _target_arch
="ARCH_X86 = yes"
1667 _target_subarch
="ARCH_X86_32 = yes"
1668 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
1673 if test "$_runtime_cpudetection" = no
; then
1677 3) proc
=i386 iproc
=386 ;;
1678 4) proc
=i486 iproc
=486 ;;
1679 5) iproc
=586 # LGB: models are: K5/SSA5 K5 K5 K5 ? ? K6 K6 K6-2 K6-3
1680 # K6 model 13 are the K6-2+ and K6-III+, only differing in cache size.
1681 if test "$pmodel" -eq 9 -o "$pmodel" -eq 13; then
1683 elif test "$pmodel" -eq 5 -o "$pmodel" -eq 10; then
1685 elif test "$pmodel" -ge 8; then
1687 elif test "$pmodel" -ge 6; then
1694 # It's a bit difficult to determine the correct type of Family 6
1695 # AMD CPUs just from their signature. Instead, we check directly
1696 # whether it supports SSE.
1697 if test "$_sse" = yes; then
1698 # gcc treats athlon-xp, athlon-4 and athlon-mp similarly.
1701 # Again, gcc treats athlon and athlon-tbird similarly.
1706 # k8 cpu-type only supported in gcc >= 3.4.0, but that will be
1707 # caught and remedied in the optimization tests below.
1711 *) proc
=k8 iproc
=686 ;;
1716 3) proc
=i386 iproc
=386 ;;
1717 4) proc
=i486 iproc
=486 ;;
1719 if test "$pmodel" -eq 4 ||
test "$pmodel" -eq 8; then
1720 proc
=pentium-mmx
# 4 is desktop, 8 is mobile
1726 if test "$pmodel" -ge 15; then
1728 elif test "$pmodel" -eq 9 -o "$pmodel" -ge 13; then
1730 elif test "$pmodel" -ge 7; then
1732 elif test "$pmodel" -ge 3; then
1739 # A nocona in 32-bit mode has no more capabilities than a prescott.
1740 if test "$pmodel" -ge 3; then
1745 test $_fast_cmov = "auto" && _fast_cmov
=no
1747 *) proc
=prescott iproc
=686 ;;
1753 if test "$pmodel" -ge 8; then
1755 elif test "$pmodel" -ge 4; then
1762 if test "$pmodel" -ge 9; then
1769 *) proc
=i686 iproc
=i686
;;
1774 3) proc
=i386 iproc
=386 ;;
1775 4) proc
=i486 iproc
=486 ;;
1776 *) proc
=i586 iproc
=586 ;;
1780 proc
=i586 iproc
=586 ;;
1782 fi # test "$_runtime_cpudetection" = no
1785 # check that gcc supports our CPU, if not, fall back to earlier ones
1786 # LGB: check -mcpu and -march swithing step by step with enabling
1787 # to fall back till 386.
1789 # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
1791 if [ "$cc_vendor" = "gnu" ] && ([ "$_cc_major" -gt 3 ] ||
( [ "$_cc_major" = 3 ] && [ "$_cc_minor" -ge 4 ])) ; then
1797 echocheck
"GCC & CPU optimization abilities"
1799 int main(void) { return 0; }
1801 if test "$_runtime_cpudetection" = no
; then
1802 cc_check
-march=native
&& proc
=native
1803 if test "$proc" = "k8"; then
1804 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon-xp
1806 if test "$proc" = "athlon-xp"; then
1807 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon
1809 if test "$proc" = "k6-3" ||
test "$proc" = "k6-2"; then
1810 cc_check
-march=$proc $cpuopt=$proc || proc
=k6
1812 if test "$proc" = "k6" ||
test "$proc" = "c3"; then
1813 if ! cc_check
-march=$proc $cpuopt=$proc; then
1814 if cc_check
-march=i586
$cpuopt=i686
; then
1821 if test "$proc" = "prescott" ; then
1822 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium4
1824 if test "$proc" = "core2" ; then
1825 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium-m
1827 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
1828 cc_check
-march=$proc $cpuopt=$proc || proc
=i686
1830 if test "$proc" = "i686" ||
test "$proc" = "pentium-mmx" ||
test "$proc" = "winchip-c6" ||
test "$proc" = "winchip2"; then
1831 cc_check
-march=$proc $cpuopt=$proc || proc
=i586
1833 if test "$proc" = "i586"; then
1834 cc_check
-march=$proc $cpuopt=$proc || proc
=i486
1836 if test "$proc" = "i486" ; then
1837 cc_check
-march=$proc $cpuopt=$proc || proc
=i386
1839 if test "$proc" = "i386" ; then
1840 cc_check
-march=$proc $cpuopt=$proc || proc
=error
1842 if test "$proc" = "error" ; then
1843 echores
"CPU optimization disabled. CPU not recognized or your compiler is too old."
1847 elif test "$proc" = "i586-i686"; then
1848 _march
="-march=i586"
1849 _mcpu
="$cpuopt=i686"
1852 _march
="-march=$proc"
1853 _mcpu
="$cpuopt=$proc"
1856 else # if test "$_runtime_cpudetection" = no
1857 _mcpu
="$cpuopt=generic"
1858 # at least i486 required, for bswap instruction
1859 _march
="-march=i486"
1860 cc_check
$_mcpu || _mcpu
="$cpuopt=i686"
1861 cc_check
$_mcpu || _mcpu
=""
1862 cc_check
$_march $_mcpu || _march
=""
1865 ## Gabucino : --target takes effect here (hopefully...) by overwriting
1866 ## autodetected mcpu/march parameters
1867 if test "$_target" ; then
1868 # TODO: it may be a good idea to check GCC and fall back in all cases
1869 if test "$host_arch" = "i586-i686"; then
1870 _march
="-march=i586"
1871 _mcpu
="$cpuopt=i686"
1873 _march
="-march=$host_arch"
1874 _mcpu
="$cpuopt=$host_arch"
1882 i586|k5|k6|k6-2|k6-3|pentium|pentium-mmx
) iproc
=586 ;;
1883 i686|athlon
*|pentium
*) iproc
=686 ;;
1888 if test $_cmov = "yes" && test $_fast_cmov = "auto" ; then
1899 _target_arch
='ARCH_IA64 = yes'
1900 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
1906 _target_subarch
='ARCH_X86_64 = yes'
1907 _target_arch
="ARCH_X86 = yes"
1908 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
1909 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
1912 # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
1913 if test "$cc_vendor" = "gnu" && test "$_cc_major" -gt 3 -o "$_cc_major" -eq 3 -a "$_cc_minor" -ge 4 ; then
1918 test $_fast_cmov = "auto" && _fast_cmov
=yes
1919 if test "$_runtime_cpudetection" = no
; then
1927 # 64-bit prescotts exist, but as far as GCC is concerned they
1928 # have the same capabilities as a nocona.
1936 fi # test "$_runtime_cpudetection" = no
1938 echocheck
"GCC & CPU optimization abilities"
1940 int main(void) { return 0; }
1942 # This is a stripped-down version of the i386 fallback.
1943 if test "$_runtime_cpudetection" = no
; then
1944 cc_check
-march=native
&& proc
=native
1945 # --- AMD processors ---
1946 if test "$proc" = "k8"; then
1947 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon-xp
1949 # This will fail if gcc version < 3.3, which is ok because earlier
1950 # versions don't really support 64-bit on amd64.
1951 # Is this a valid assumption? -Corey
1952 if test "$proc" = "athlon-xp"; then
1953 cc_check
-march=$proc $cpuopt=$proc || proc
=error
1955 # --- Intel processors ---
1956 if test "$proc" = "core2"; then
1957 cc_check
-march=$proc $cpuopt=$proc || proc
=nocona
1959 if test "$proc" = "nocona"; then
1960 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium4
1962 if test "$proc" = "pentium4"; then
1963 cc_check
-march=$proc $cpuopt=$proc || proc
=error
1966 _march
="-march=$proc"
1967 _mcpu
="$cpuopt=$proc"
1968 if test "$proc" = "error" ; then
1969 echores
"CPU optimization disabled. CPU not recognized or your compiler is too old."
1973 else # if test "$_runtime_cpudetection" = no
1974 # x86-64 is an undocumented option, an intersection of k8 and nocona.
1975 _march
="-march=x86-64"
1976 _mcpu
="$cpuopt=generic"
1977 cc_check
$_mcpu || _mcpu
="x86-64"
1978 cc_check
$_mcpu || _mcpu
=""
1979 cc_check
$_march $_mcpu || _march
=""
1989 _target_arch
='ARCH_SPARC = yes'
1991 if test "$host_arch" = "sparc64" ; then
1994 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
1996 echocheck
"CPU type"
1998 case "$(echo $karch)" in
2003 sun4u
) proc
=ultrasparc _vis
='yes' ;;
2015 arm|armv4l|armv5tel
)
2017 _target_arch
='ARCH_ARM = yes'
2023 _target_arch
='ARCH_AVR32 = yes'
2024 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
2030 _target_arch
='ARCH_SH4 = yes'
2034 ppc|ppc64|powerpc|powerpc64
)
2036 def_dcbzl
='#define HAVE_DCBZL 0'
2037 _target_arch
='ARCH_PPC = yes'
2038 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
2041 if test "$host_arch" = "ppc64" -o "$host_arch" = "powerpc64" ; then
2043 _target_subarch
='ARCH_PPC64 = yes'
2044 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
2046 echocheck
"CPU type"
2047 case $system_name in
2049 proc
=$
($_cpuinfo |
grep 'cpu' | cut
-d ':' -f 2 | cut
-d ',' -f 1 | cut
-b 2- |
head -n 1)
2050 if test -n "$($_cpuinfo | grep altivec)"; then
2051 test $_altivec = auto
&& _altivec
=yes
2055 proc
=$
($_cpuinfo |
grep "Processor type" | cut
-f 3 -d ' ' |
sed 's/ppc//')
2056 if [ $
(sysctl
-n hw.vectorunit
) -eq 1 -o \
2057 "$(sysctl -n hw.optional.altivec 2> /dev/null)" = "1" ]; then
2058 test $_altivec = auto
&& _altivec
=yes
2062 # only gcc 3.4 works reliably with AltiVec code under NetBSD
2064 2*|
3.0*|
3.1*|
3.2*|
3.3*)
2067 if [ $
(sysctl
-n machdep.altivec
) -eq 1 ]; then
2068 test $_altivec = auto
&& _altivec
=yes
2074 proc
=$
($_cpuinfo |
grep 'type' | cut
-f 2 -d ' ' |
sed 's/PowerPC_//')
2077 if test "$_altivec" = yes; then
2078 echores
"$proc altivec"
2084 echocheck
"GCC & CPU optimization abilities"
2086 if test -n "$proc"; then
2088 601) _march
='-mcpu=601' _mcpu
='-mtune=601' ;;
2089 603) _march
='-mcpu=603' _mcpu
='-mtune=603' ;;
2090 603e|
603ev
) _march
='-mcpu=603e' _mcpu
='-mtune=603e' ;;
2091 604|
604e|
604r|
604ev
) _march
='-mcpu=604' _mcpu
='-mtune=604' ;;
2092 740|
740/750|
745/755) _march
='-mcpu=740' _mcpu
='-mtune=740' ;;
2093 750|
750CX
) _march
='-mcpu=750' _mcpu
='-mtune=750' ;;
2094 POWER
) _march
='-mcpu=power' _mcpu
='-mtune=power' ;;
2095 POWER2
) _march
='-mcpu=power2' _mcpu
='-mtune=power2' ;;
2096 POWER3
) _march
='-mcpu=power3' _mcpu
='-mtune=power3' ;;
2099 # gcc 3.1(.1) and up supports 7400 and 7450
2100 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "1" ||
test "$_cc_major" -ge "4"; then
2102 7400*|
7410*) _march
='-mcpu=7400' _mcpu
='-mtune=7400' ;;
2103 7447*|
7450*|
7455*) _march
='-mcpu=7450' _mcpu
='-mtune=7450' ;;
2107 # gcc 3.2 and up supports 970
2108 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "3" ||
test "$_cc_major" -ge "4"; then
2110 970*|PPC970
*) _march
='-mcpu=970' _mcpu
='-mtune=970'
2111 def_dcbzl
='#define HAVE_DCBZL 1' ;;
2115 # gcc 3.3 and up supports POWER4
2116 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "3" ||
test "$_cc_major" -ge "4"; then
2118 POWER4
) _march
='-mcpu=power4' _mcpu
='-mtune=power4' ;;
2122 # gcc 3.4 and up supports 440*
2123 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "4" ||
test "$_cc_major" -ge "4"; then
2125 440EP
*) _march
='-mcpu=440fp' _mcpu
='-mtune=440fp' ;;
2126 440G
* ) _march
='-mcpu=440' _mcpu
='-mtune=440' ;;
2130 # gcc 4.0 and up supports POWER5
2131 if test "$_cc_major" -ge "4"; then
2133 POWER5
*) _march
='-mcpu=power5' _mcpu
='-mtune=power5' ;;
2139 if test -n "$_mcpu"; then
2140 _optimizing
=$
(echo $_mcpu | cut
-c 8-)
2141 echores
"$_optimizing"
2150 _target_arch
='ARCH_ALPHA = yes'
2152 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
2154 echocheck
"CPU type"
2157 unsigned long ver, mask;
2158 __asm__ ("implver %0" : "=r" (ver));
2159 __asm__ ("amask %1, %0" : "=r" (mask) : "r" (-1));
2160 printf("%ld-%x\n", ver, ~mask);
2164 $_cc -o "$TMPEXE" "$TMPC"
2165 case $
("$TMPEXE") in
2167 0-0) proc
="ev4"; _mvi
="0";;
2168 1-0) proc
="ev5"; _mvi
="0";;
2169 1-1) proc
="ev56"; _mvi
="0";;
2170 1-101) proc
="pca56"; _mvi
="1";;
2171 2-303) proc
="ev6"; _mvi
="1";;
2172 2-307) proc
="ev67"; _mvi
="1";;
2173 2-1307) proc
="ev68"; _mvi
="1";;
2177 echocheck
"GCC & CPU optimization abilities"
2178 if test "$proc" = "ev68" ; then
2179 cc_check
-mcpu=$proc || proc
=ev67
2181 if test "$proc" = "ev67" ; then
2182 cc_check
-mcpu=$proc || proc
=ev6
2192 _target_arch
='ARCH_SGI_MIPS = yes'
2196 echocheck
"CPU type"
2197 proc
=$
(hinv
-c processor |
grep CPU | cut
-d " " -f3)
2198 case "$(echo $proc)" in
2199 R3000
) _march
='-mips1' _mcpu
='-mtune=r2000' ;;
2200 R4000
) _march
='-mips3' _mcpu
='-mtune=r4000' ;;
2201 R4400
) _march
='-mips3' _mcpu
='-mtune=r4400' ;;
2202 R4600
) _march
='-mips3' _mcpu
='-mtune=r4600' ;;
2203 R5000
) _march
='-mips4' _mcpu
='-mtune=r5000' ;;
2204 R8000|R10000|R12000|R14000|R16000
) _march
='-mips4' _mcpu
='-mtune=r8000' ;;
2206 # gcc < 3.x does not support -mtune.
2207 if test "$cc_vendor" = "gnu" && test "$_cc_major" -lt 3 ; then
2217 _target_arch
='ARCH_PA_RISC = yes'
2223 _target_arch
='ARCH_S390 = yes'
2229 _target_arch
='ARCH_S390X = yes'
2235 _target_arch
='ARCH_VAX = yes'
2241 _target_arch
='ARCH_XTENSA = yes'
2247 _target_arch
='ARCH_GENERIC = yes'
2251 echo "The architecture of your CPU ($host_arch) is not supported by this configure script"
2252 echo "It seems nobody has ported MPlayer to your OS or CPU type yet."
2253 die
"unsupported architecture $host_arch"
2255 esac # case "$host_arch" in
2257 if test "$_runtime_cpudetection" = yes ; then
2259 test "$_cmov" != no
&& _cmov
=yes
2261 test "$_mmx" != no
&& _mmx
=yes
2262 test "$_3dnow" != no
&& _3dnow
=yes
2263 test "$_3dnowext" != no
&& _3dnowext
=yes
2264 test "$_mmxext" != no
&& _mmxext
=yes
2265 test "$_sse" != no
&& _sse
=yes
2266 test "$_sse2" != no
&& _sse2
=yes
2267 test "$_ssse3" != no
&& _ssse3
=yes
2268 test "$_mtrr" != no
&& _mtrr
=yes
2277 echocheck
"byte order"
2278 if test "$_big_endian" = auto
; then
2280 short ascii_name[] = { (('M'<<8)|'P'),(('l'<<8)|'a'),(('y'<<8)|'e'),(('r'<<8)|'B'),
2281 (('i'<<8)|'g'),(('E'<<8)|'n'),(('d'<<8)|'i'),(('a'<<8)|'n'),0};
2282 int main(void) { return (int)ascii_name; }
2285 if strings $TMPEXE |
grep -q -l MPlayerBigEndian
; then
2291 echo ${_echo_n} "failed to autodetect byte order, defaulting to ${_echo_c}"
2294 if test "$_big_endian" = yes ; then
2295 _byte_order
='big-endian'
2296 def_words_endian
='#define WORDS_BIGENDIAN 1'
2297 def_bigendian
='#define HAVE_BIGENDIAN 1'
2299 _byte_order
='little-endian'
2300 def_words_endian
='#undef WORDS_BIGENDIAN'
2301 def_bigendian
='#define HAVE_BIGENDIAN 0'
2303 echores
"$_byte_order"
2306 echocheck
"extern symbol prefix"
2310 cc_check
-c || die
"Symbol mangling check failed."
2311 sym
=$
($_nm -P -g $TMPEXE)
2312 extern_prefix
=${sym%%ff_extern*}
2313 def_extern_asm
="#define EXTERN_ASM $extern_prefix"
2314 def_extern_prefix
="#define EXTERN_PREFIX \"$extern_prefix\""
2315 echores
$extern_prefix
2318 echocheck
"assembler support of -pipe option"
2320 int main(void) { return 0; }
2322 cc_check
-pipe && _pipe
="-pipe" && echores
"yes" || echores
"no"
2325 echocheck
"compiler support of named assembler arguments"
2327 def_named_asm_args
="#define NAMED_ASM_ARGS 1"
2328 if test "$cc_vendor" = "gnu" && test "$_cc_major" -lt 3 \
2329 -o "$_cc_major" -eq 3 -a "$_cc_minor" = 0 ; then
2331 def_named_asm_args
="#undef NAMED_ASM_ARGS"
2333 echores
$_named_asm_args
2336 if darwin
&& test "$cc_vendor" = "gnu" ; then
2337 echocheck
"GCC support of -mstackrealign"
2338 # GCC 4.2 and some earlier Apple versions support this flag on x86. Since
2339 # Mac OS X/Intel has an ABI different from Windows this is needed to avoid
2340 # crashes when loading Win32 DLLs. Unfortunately some gcc versions create
2341 # wrong code with this flag, but this can be worked around by adding
2342 # -fno-unit-at-a-time as described in the blog post at
2343 # http://www.dribin.org/dave/blog/archives/2006/12/05/missing_third_param/
2345 __attribute__((noinline)) static int foo3(int i1, int i2, int i3) { return i3; }
2346 int main(void) { return foo3(1,2,3) == 3 ? 0 : 1; }
2348 cc_check
-O2 -mstackrealign && tmp_run
&& cflags_stackrealign
=-mstackrealign
2349 test -z "$cflags_stackrealign" && cc_check
-O2 -mstackrealign -fno-unit-at-a-time \
2350 && tmp_run
&& cflags_stackrealign
="-mstackrealign -fno-unit-at-a-time"
2351 test -n "$cflags_stackrealign" && echores
"yes" || echores
"no"
2352 fi # if darwin && test "$cc_vendor" = "gnu" ; then
2355 # Checking for CFLAGS
2357 if test "$_profile" != "" ||
test "$_debug" != "" ; then
2358 CFLAGS
="-W -Wall -O2 $_march $_mcpu $_pipe $_debug $_profile"
2360 elif test -z "$CFLAGS" ; then
2361 if test "$cc_vendor" = "intel" ; then
2362 CFLAGS
="-O2 $_march $_mcpu $_pipe -fomit-frame-pointer -wd167 -wd556 -wd144"
2363 elif test "$cc_vendor" != "gnu" ; then
2364 CFLAGS
="-O2 $_march $_mcpu $_pipe"
2366 CFLAGS
="-Wall -Wno-switch -Wpointer-arith -Wredundant-decls -O2 $_march $_mcpu $_pipe -ffast-math -fomit-frame-pointer"
2367 extra_ldflags
="$extra_ldflags -ffast-math"
2374 int main(void) { return 0; }
2376 if test "$cc_vendor" = "gnu" ; then
2377 cc_check
-std=gnu99
&& CFLAGS
="-std=gnu99 $CFLAGS"
2378 cc_check
-Wno-pointer-sign && CFLAGS
="-Wno-pointer-sign $CFLAGS"
2379 cc_check
-Wdisabled-optimization && CFLAGS
="-Wdisabled-optimization $CFLAGS"
2380 cc_check
-Wundef && CFLAGS
="-Wundef $CFLAGS"
2382 CFLAGS
="-D_ISOC99_SOURCE -D_BSD_SOURCE $CFLAGS"
2385 cc_check
-mno-omit-leaf-frame-pointer && cflags_no_omit_leaf_frame_pointer
="-mno-omit-leaf-frame-pointer"
2388 if test -n "$LDFLAGS" ; then
2389 extra_ldflags
="$extra_ldflags $LDFLAGS"
2391 elif test "$cc_vendor" = "intel" ; then
2392 extra_ldflags
="$extra_ldflags -i-static"
2394 if test -n "$CPPFLAGS" ; then
2395 extra_cflags
="$extra_cflags $CPPFLAGS"
2402 # Checking assembler (_as) compatibility...
2403 # Added workaround for older as that reads from stdin by default - atmos
2404 as_version
=$
(echo '' |
$_as -version 2>&1 |
sed -n 's/^.*assembler \(version \)*\([0-9.]*\).*$/\2/p')
2405 echocheck
"assembler ($_as $as_version)"
2407 _pref_as_version
='2.9.1'
2409 if test "$_mmx" = yes ; then
2410 echo 'emms' >> $TMPS
2412 if test "$_3dnow" = yes ; then
2413 _pref_as_version
='2.10.1'
2414 echo 'femms' >> $TMPS
2416 if test "$_3dnowext" = yes ; then
2417 _pref_as_version
='2.10.1'
2418 echo 'pswapd %mm0, %mm0' >> $TMPS
2420 if test "$_mmxext" = yes ; then
2421 _pref_as_version
='2.10.1'
2422 echo 'movntq %mm0, (%eax)' >> $TMPS
2424 if test "$_sse" = yes ; then
2425 _pref_as_version
='2.10.1'
2426 echo 'xorps %xmm0, %xmm0' >> $TMPS
2428 #if test "$_sse2" = yes ; then
2429 # _pref_as_version='2.11'
2430 # echo 'xorpd %xmm0, %xmm0' >> $TMPS
2432 if test "$_cmov" = yes ; then
2433 _pref_as_version
='2.10.1'
2434 echo 'cmovb %eax, %ebx' >> $TMPS
2436 if test "$_ssse3" = yes ; then
2437 _pref_as_version
='2.16.92'
2438 echo 'pabsd %xmm0, %xmm1' >> $TMPS
2440 $_as $TMPS -o $TMPEXE > /dev
/null
2>&1 || as_verc_fail
=yes
2442 if test "$as_verc_fail" != yes ; then
2445 _res_comment
="Upgrade binutils to ${_pref_as_version} or use --disable-ssse3 etc."
2447 die
"obsolete binutils version"
2452 echocheck
".align is a power of two"
2453 if test "$_asmalign_pot" = auto
; then
2456 int main(void) { __asm__ (".align 3"); return 0; }
2458 cc_check
&& _asmalign_pot
=yes
2460 if test "$_asmalign_pot" = "yes" ; then
2461 def_asmalign_pot
='#define ASMALIGN(ZEROBITS) ".align " #ZEROBITS "\n\t"'
2463 def_asmalign_pot
='#define ASMALIGN(ZEROBITS) ".align 1<<" #ZEROBITS "\n\t"'
2465 echores
$_asmalign_pot
2468 echocheck
"10 assembler operands"
2470 def_ten_operands
='#define HAVE_TEN_OPERANDS 0'
2476 :"+&rm"(x), "+&rm"(x), "+&rm"(x), "+&rm"(x), "+&rm"(x), "+&rm"(x)
2481 cc_check
&& ten_operands
=yes && def_ten_operands
='#define HAVE_TEN_OPERANDS 1'
2482 echores
$ten_operands
2484 echocheck
"ebx availability"
2486 def_ebx_available
='#define HAVE_EBX_AVAILABLE 0'
2493 // just adding ebx to clobber list seems unreliable with some
2494 // compilers, e.g. Haiku's gcc 2.95
2496 // and the above check does not work for OSX 64 bit...
2497 __asm__ volatile("":::"%ebx");
2501 cc_check
&& ebx_available
=yes && def_ebx_available
='#define HAVE_EBX_AVAILABLE 1'
2502 echores
$ebx_available
2505 if test -z "$YASMFLAGS" ; then
2507 x86_64
&& objformat
="macho64" || objformat
="macho"
2513 # currently tested for Linux x86, x86_64
2514 YASMFLAGS
="-f $objformat"
2515 x86_64
&& YASMFLAGS
="$YASMFLAGS -DARCH_X86_64 -m amd64"
2516 case "$objformat" in
2517 elf
) test $_debug && YASMFLAGS
="$YASMFLAGS -g dwarf2" ;;
2518 macho64
) YASMFLAGS
="$YASMFLAGS -DPIC -DPREFIX" ;;
2519 *) YASMFLAGS
="$YASMFLAGS -DPREFIX" ;;
2525 echo "pabsw xmm0, xmm0" > $TMPS
2526 yasm_check || _yasm
=""
2527 if test $_yasm ; then
2528 test "$_mmx" = "yes" && fft_mmx
="yes"
2529 def_yasm
='#define HAVE_YASM 1'
2533 def_yasm
='#define HAVE_YASM 0'
2540 def_bswap
='#define HAVE_BSWAP 0'
2541 echo 'bswap %eax' > $TMPS
2542 $_as $TMPS -o $TMPEXE > /dev
/null
2>&1 && def_bswap
='#define HAVE_BSWAP 1' && bswap
=yes || bswap
=no
2547 #FIXME: This should happen before the check for CFLAGS..
2548 def_altivec_h
='#define HAVE_ALTIVEC_H 0'
2549 if ppc
&& ( test "$_altivec" = yes ||
test "$_runtime_cpudetection" = yes ) ; then
2551 # check if AltiVec is supported by the compiler, and how to enable it
2552 echocheck
"GCC AltiVec flags"
2554 int main(void) { return 0; }
2556 if $
(cc_check
-maltivec -mabi=altivec
) ; then
2557 _altivec_gcc_flags
="-maltivec -mabi=altivec"
2558 # check if <altivec.h> should be included
2560 #include <altivec.h>
2561 int main(void) { return 0; }
2563 if $
(cc_check
$_altivec_gcc_flags) ; then
2564 def_altivec_h
='#define HAVE_ALTIVEC_H 1'
2565 inc_altivec_h
='#include <altivec.h>'
2568 int main(void) { return 0; }
2570 if $
(cc_check
-faltivec) ; then
2571 _altivec_gcc_flags
="-faltivec"
2574 _altivec_gcc_flags
="none, AltiVec disabled"
2578 echores
"$_altivec_gcc_flags"
2580 # check if the compiler supports braces for vector declarations
2583 int main(void) { (vector int) {1}; return 0; }
2585 cc_check
$_altivec_gcc_flags || die
"You need a compiler that supports {} in AltiVec vector declarations."
2587 # Disable runtime cpudetection if we cannot generate AltiVec code or
2588 # AltiVec is disabled by the user.
2589 test "$_runtime_cpudetection" = yes && test "$_altivec" = no \
2590 && _runtime_cpudetection
=no
2592 # Show that we are optimizing for AltiVec (if enabled and supported).
2593 test "$_runtime_cpudetection" = no
&& test "$_altivec" = yes \
2594 && _optimizing
="$_optimizing altivec"
2596 # If AltiVec is enabled, make sure the correct flags turn up in CFLAGS.
2597 test "$_altivec" = yes && CFLAGS
="$CFLAGS $_altivec_gcc_flags"
2601 def_xform_asm
='#define HAVE_XFORM_ASM 0'
2603 echocheck
"XFORM ASM support"
2605 int main(void) { __asm__ volatile ("lwzx 0, %y0" :: "Z"(*(int*)0)); return 0; }
2607 cc_check
&& xform_asm
=yes && def_xform_asm
='#define HAVE_XFORM_ASM 1'
2608 echores
"$xform_asm"
2612 echocheck
"ARM pld instruction"
2614 int main(void) { __asm__ volatile ("pld [r0]"); return 0; }
2620 echocheck
"ARMv5TE (Enhanced DSP Extensions)"
2621 if test $_armv5te = "auto" ; then
2623 int main(void) { __asm__ volatile ("qadd r0, r0, r0"); return 0; }
2626 cc_check
&& _armv5te
=yes
2630 echocheck
"ARMv6 (SIMD instructions)"
2631 if test $_armv6 = "auto" ; then
2633 int main(void) { __asm__ volatile ("sadd16 r0, r0, r0"); return 0; }
2636 cc_check
&& _armv6
=yes
2640 echocheck
"ARMv6t2 (SIMD instructions)"
2641 if test $_armv6t2 = "auto" ; then
2643 int main(void) { __asm__ volatile ("movt r0, #0"); return 0; }
2646 cc_check
&& _armv6t2
=yes
2651 if test $_armvfp = "auto" ; then
2653 int main(void) { __asm__ volatile ("fadds s0, s0, s0"); return 0; }
2656 cc_check
&& _armvfp
=yes
2660 echocheck
"ARM NEON"
2661 if test $neon = "auto" ; then
2663 int main(void) { __asm__ volatile ("vadd.i16 q0, q0, q0"); return 0; }
2666 cc_check
&& neon
=yes
2670 echocheck
"iWMMXt (Intel XScale SIMD instructions)"
2671 if test $_iwmmxt = "auto" ; then
2673 int main(void) { __asm__ volatile ("wunpckelub wr6, wr4"); return 0; }
2676 cc_check
&& _iwmmxt
=yes
2681 _cpuexts_all
='ALTIVEC MMX MMX2 AMD3DNOW AMD3DNOWEXT SSE SSE2 SSSE3 FAST_CMOV CMOV PLD ARMV5TE ARMV6 ARMV6T2 ARMVFP NEON IWMMXT MMI VIS MVI'
2682 test "$_altivec" = yes && _cpuexts
="ALTIVEC $_cpuexts"
2683 test "$_mmx" = yes && _cpuexts
="MMX $_cpuexts"
2684 test "$_mmxext" = yes && _cpuexts
="MMX2 $_cpuexts"
2685 test "$_3dnow" = yes && _cpuexts
="AMD3DNOW $_cpuexts"
2686 test "$_3dnowext" = yes && _cpuexts
="AMD3DNOWEXT $_cpuexts"
2687 test "$_sse" = yes && _cpuexts
="SSE $_cpuexts"
2688 test "$_sse2" = yes && _cpuexts
="SSE2 $_cpuexts"
2689 test "$_ssse3" = yes && _cpuexts
="SSSE3 $_cpuexts"
2690 test "$_cmov" = yes && _cpuexts
="CMOV $_cpuexts"
2691 test "$_fast_cmov" = yes && _cpuexts
="FAST_CMOV $_cpuexts"
2692 test "$pld" = yes && _cpuexts
="PLD $_cpuexts"
2693 test "$_armv5te" = yes && _cpuexts
="ARMV5TE $_cpuexts"
2694 test "$_armv6" = yes && _cpuexts
="ARMV6 $_cpuexts"
2695 test "$_armv6t2" = yes && _cpuexts
="ARMV6T2 $_cpuexts"
2696 test "$_armvfp" = yes && _cpuexts
="ARMVFP $_cpuexts"
2697 test "$neon" = yes && _cpuexts
="NEON $_cpuexts"
2698 test "$_iwmmxt" = yes && _cpuexts
="IWMMXT $_cpuexts"
2699 test "$_vis" = yes && _cpuexts
="VIS $_cpuexts"
2700 test "$_mvi" = yes && _cpuexts
="MVI $_cpuexts"
2702 # Checking kernel version...
2703 if x86_32
&& linux
; then
2705 kernel_version
=$
(uname
-r 2>&1)
2706 echocheck
"$system_name kernel version"
2707 case "$kernel_version" in
2708 '') kernel_version
="?.??"; _k_verc_fail
=yes;;
2709 [0-1].
[0-9].
[0-9]*|
2.
[0-3].
[0-9]*)
2710 _k_verc_problem
=yes;;
2712 if test "$_k_verc_problem" = yes && test "$_sse" = yes ; then
2715 if test "$_k_verc_fail" ; then
2716 echores
"$kernel_version, fail"
2717 echo "WARNING! If you want to run MPlayer on this system, get prepared for problems!"
2718 echo "2.2.x has limited SSE support. Upgrade the kernel or use --disable-sse if you"
2719 echo "experience crashes. MPlayer tries to autodetect if your kernel correctly"
2720 echo "supports SSE, but you have been warned! If you are using a kernel older than"
2721 echo "2.2.x you must upgrade it to get SSE support!"
2722 # die "Your kernel is too old for this CPU." # works fine on some 2.2.x so don't die (later check will test)
2724 echores
"$kernel_version, ok"
2728 ######################
2729 # MAIN TESTS GO HERE #
2730 ######################
2735 int main(void) { return 0; }
2737 if cc_check
-lposix ; then
2738 extra_ldflags
="$extra_ldflags -lposix"
2746 int main(void) { return 0; }
2748 if cc_check
-lm ; then
2757 echocheck
"langinfo"
2758 if test "$_langinfo" = auto
; then
2760 #include <langinfo.h>
2761 int main(void) { nl_langinfo(CODESET); return 0; }
2764 cc_check
&& _langinfo
=yes
2766 if test "$_langinfo" = yes ; then
2767 def_langinfo
='#define HAVE_LANGINFO 1'
2769 def_langinfo
='#undef HAVE_LANGINFO'
2771 echores
"$_langinfo"
2774 echocheck
"language"
2775 # Set preferred languages, "all" uses English as main language.
2776 test -z "$language" && language
=$LINGUAS
2777 test -z "$language_doc" && language_doc
=$language
2778 test -z "$language_man" && language_man
=$language
2779 test -z "$language_msg" && language_msg
=$language
2780 language_doc
=$
(echo $language_doc |
tr , " ")
2781 language_man
=$
(echo $language_man |
tr , " ")
2782 language_msg
=$
(echo $language_msg |
tr , " ")
2784 test "$language_doc" = "all" && language_doc
=$doc_lang_all
2785 test "$language_man" = "all" && language_man
=$man_lang_all
2786 test "$language_msg" = "all" && language_msg
=en
2788 # Prune non-existing translations from language lists.
2789 # Set message translation to the first available language.
2790 # Fall back on English.
2791 for lang
in $language_doc ; do
2792 test -d DOCS
/xml
/$lang && tmp_language_doc
="$tmp_language_doc $lang"
2794 language_doc
=$tmp_language_doc
2795 test -z "$language_doc" && language_doc
=en
2797 for lang
in $language_man ; do
2798 test -d DOCS
/man
/$lang && tmp_language_man
="$tmp_language_man $lang"
2800 language_man
=$tmp_language_man
2801 test -z "$language_man" && language_man
=en
2803 for lang
in $language_msg ; do
2804 test -f "help/help_mp-${lang}.h" && tmp_language_msg
=$lang && break
2806 language_msg
=$tmp_language_msg
2807 test -z "$language_msg" && language_msg
=en
2808 _mp_help
="help/help_mp-${language_msg}.h"
2809 echores
"messages: $language_msg - man pages: $language_man - documentation: $language_doc"
2812 echocheck
"enable sighandler"
2813 if test "$_sighandler" = yes ; then
2814 def_sighandler
='#define CONFIG_SIGHANDLER 1'
2816 def_sighandler
='#undef CONFIG_SIGHANDLER'
2818 echores
"$_sighandler"
2820 echocheck
"runtime cpudetection"
2821 if test "$_runtime_cpudetection" = yes ; then
2822 _optimizing
="Runtime CPU-Detection enabled"
2823 def_runtime_cpudetection
='#define CONFIG_RUNTIME_CPUDETECT 1'
2825 def_runtime_cpudetection
='#define CONFIG_RUNTIME_CPUDETECT 0'
2827 echores
"$_runtime_cpudetection"
2830 echocheck
"restrict keyword"
2831 for restrict_keyword
in restrict __restrict __restrict__
; do
2832 echo "void foo(char * $restrict_keyword p); int main(void) { return 0; }" > $TMPC
2834 def_restrict_keyword
=$restrict_keyword
2838 if [ -n "$def_restrict_keyword" ]; then
2839 echores
"$def_restrict_keyword"
2843 # Avoid infinite recursion loop ("#define restrict restrict")
2844 if [ "$def_restrict_keyword" != "restrict" ]; then
2845 def_restrict_keyword
="#define restrict $def_restrict_keyword"
2847 def_restrict_keyword
=""
2851 echocheck
"__builtin_expect"
2852 # GCC branch prediction hint
2855 a = __builtin_expect(a, 10);
2856 return a == 10 ? 0 : 1;
2858 int main(void) { return foo(10) && foo(0); }
2861 cc_check
&& _builtin_expect
=yes
2862 if test "$_builtin_expect" = yes ; then
2863 def_builtin_expect
='#define HAVE_BUILTIN_EXPECT 1'
2865 def_builtin_expect
='#undef HAVE_BUILTIN_EXPECT'
2867 echores
"$_builtin_expect"
2873 int main(void) { (void) kstat_open(); (void) kstat_close(0); return 0; }
2876 cc_check
-lkstat && _kstat
=yes
2877 if test "$_kstat" = yes ; then
2878 def_kstat
="#define HAVE_LIBKSTAT 1"
2879 extra_ldflags
="$extra_ldflags -lkstat"
2881 def_kstat
="#undef HAVE_LIBKSTAT"
2887 # required for nanosleep on some systems
2890 int main(void) { (void) nanosleep(0, 0); return 0; }
2893 cc_check
-lposix4 && _posix4
=yes
2894 if test "$_posix4" = yes ; then
2895 extra_ldflags
="$extra_ldflags -lposix4"
2899 for func
in llrint log2 lrint lrintf round roundf truncf
; do
2903 int main(void) { long (*foo)(float); foo = $func; (void)(*foo)(0.0); return 0; }
2906 cc_check
-D_ISOC99_SOURCE $_ld_lm && eval _
$func=yes
2907 if eval test "x\$_$func" = "xyes"; then
2908 eval def_
$func="\"#define HAVE_$(echo $func | tr '[a-z]' '[A-Z]') 1\""
2911 eval def_
$func="\"#define HAVE_$(echo $func | tr '[a-z]' '[A-Z]') 0\""
2920 int main(void) { char a; mkstemp(&a); return 0; }
2923 cc_check
&& _mkstemp
=yes
2924 if test "$_mkstemp" = yes ; then
2925 def_mkstemp
='#define HAVE_MKSTEMP 1'
2927 def_mkstemp
='#undef HAVE_MKSTEMP'
2932 echocheck
"nanosleep"
2933 # also check for nanosleep
2936 int main(void) { (void) nanosleep(0, 0); return 0; }
2939 cc_check
&& _nanosleep
=yes
2940 if test "$_nanosleep" = yes ; then
2941 def_nanosleep
='#define HAVE_NANOSLEEP 1'
2943 def_nanosleep
='#undef HAVE_NANOSLEEP'
2945 echores
"$_nanosleep"
2949 # for Solaris (socket stuff is in -lsocket, gethostbyname and friends in -lnsl):
2950 # for BeOS (socket stuff is in -lsocket, gethostbyname and friends in -lbind):
2953 #include <sys/socket.h>
2954 int main(void) { (void) gethostbyname(0); (void) socket(AF_INET, SOCK_STREAM, 0); return 0; }
2957 for _ld_tmp
in "" "-lsocket -lbind" "-lsocket -ldnet" "-lsocket -lnsl" "-lnsl" "-lsocket" ; do
2958 cc_check
$_ld_tmp && _ld_sock
="$_ld_tmp" && _socklib
=yes && break
2960 if test $_winsock2_h = auto
&& ! cygwin
; then
2963 #include <winsock2.h>
2964 int main(void) { (void) gethostbyname(0); return 0; }
2966 cc_check
-lws2_32 && _ld_sock
="-lws2_32" && _winsock2_h
=yes
2968 test "$_ld_sock" && _res_comment
="using $_ld_sock"
2972 if test $_winsock2_h = yes ; then
2974 def_winsock2_h
='#define HAVE_WINSOCK2_H 1'
2976 def_winsock2_h
='#define HAVE_WINSOCK2_H 0'
2980 echocheck
"arpa/inet.h"
2982 def_arpa_inet_h
='#define HAVE_ARPA_INET_H 0'
2984 #include <arpa/inet.h>
2985 int main(void) { return 0; }
2987 cc_check
&& arpa_inet_h
=yes && def_arpa_inet_h
='#define HAVE_ARPA_INET_H 1'
2988 echores
"$arpa_inet_h"
2991 echocheck
"inet_pton()"
2992 def_inet_pton
='#define HAVE_INET_PTON 0'
2995 #include <sys/types.h>
2996 #include <sys/socket.h>
2997 #include <arpa/inet.h>
2998 int main(void) { (void) inet_pton(0, 0, 0); return 0; }
3000 for _ld_tmp
in "$_ld_sock" "$_ld_sock -lresolv" ; do
3001 cc_check
$_ld_tmp && inet_pton
=yes && break
3003 if test $inet_pton = yes ; then
3004 test $_ld_tmp && _res_comment
="using $_ld_tmp"
3005 def_inet_pton
='#define HAVE_INET_PTON 1'
3007 echores
"$inet_pton"
3010 echocheck
"inet_aton()"
3011 def_inet_aton
='#define HAVE_INET_ATON 0'
3014 #include <sys/types.h>
3015 #include <sys/socket.h>
3016 #include <arpa/inet.h>
3017 int main(void) { (void) inet_aton(0, 0); return 0; }
3019 for _ld_tmp
in "$_ld_sock" "$_ld_sock -lresolv" ; do
3020 cc_check
$_ld_tmp && inet_aton
=yes && break
3022 if test $inet_aton = yes ; then
3023 test $_ld_tmp && _res_comment
="using $_ld_tmp"
3024 def_inet_aton
='#define HAVE_INET_ATON 1'
3026 echores
"$inet_aton"
3029 echocheck
"socklen_t"
3031 for header
in "sys/socket.h" "ws2tcpip.h" "sys/types.h" ; do
3034 int main(void) { socklen_t v = 0; return v; }
3036 cc_check
&& _socklen_t
=yes && break
3038 if test "$_socklen_t" = yes ; then
3039 def_socklen_t
='#define HAVE_SOCKLEN_T 1'
3041 def_socklen_t
='#define HAVE_SOCKLEN_T 0'
3043 echores
"$_socklen_t"
3046 echocheck
"closesocket()"
3049 #include <winsock2.h>
3050 int main(void) { closesocket(~0); return 0; }
3052 cc_check
$_ld_sock && _closesocket
=yes
3053 if test "$_closesocket" = yes ; then
3054 def_closesocket
='#define HAVE_CLOSESOCKET 1'
3056 def_closesocket
='#define HAVE_CLOSESOCKET 0'
3058 echores
"$_closesocket"
3062 test $_winsock2_h = no
&& test $inet_pton = no
&&
3063 test $inet_aton = no
&& _network
=no
3064 if test "$_network" = yes ; then
3065 def_network
='#define CONFIG_NETWORK 1'
3066 extra_ldflags
="$extra_ldflags $_ld_sock"
3067 _inputmodules
="network $_inputmodules"
3069 _noinputmodules
="network $_noinputmodules"
3070 def_network
='#undef CONFIG_NETWORK'
3077 if test "$_inet6" = auto
; then
3079 #include <sys/types.h>
3080 #if !defined(_WIN32) || defined(__CYGWIN__)
3081 #include <sys/socket.h>
3082 #include <netinet/in.h>
3084 #include <ws2tcpip.h>
3086 int main(void) { struct sockaddr_in6 six; socket(AF_INET6, SOCK_STREAM, AF_INET6); return 0; }
3089 if cc_check
$_ld_sock ; then
3093 if test "$_inet6" = yes ; then
3094 def_inet6
='#define HAVE_AF_INET6 1'
3096 def_inet6
='#undef HAVE_AF_INET6'
3101 echocheck
"gethostbyname2"
3102 if test "$_gethostbyname2" = auto
; then
3104 #include <sys/types.h>
3105 #include <sys/socket.h>
3107 int main(void) { gethostbyname2("", AF_INET); return 0; }
3114 if test "$_gethostbyname2" = yes ; then
3115 def_gethostbyname2
='#define HAVE_GETHOSTBYNAME2 1'
3117 def_gethostbyname2
='#undef HAVE_GETHOSTBYNAME2'
3119 echores
"$_gethostbyname2"
3122 echocheck
"inttypes.h (required)"
3124 #include <inttypes.h>
3125 int main(void) { return 0; }
3128 cc_check
&& _inttypes
=yes
3129 echores
"$_inttypes"
3131 if test "$_inttypes" = no
; then
3132 echocheck
"bitypes.h (inttypes.h predecessor)"
3134 #include <sys/bitypes.h>
3135 int main(void) { return 0; }
3137 cc_check
&& _inttypes
=yes
3138 if test "$_inttypes" = yes ; then
3139 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."
3141 die
"Cannot find header either inttypes.h or bitypes.h. There is no chance for compilation to succeed."
3146 echocheck
"int_fastXY_t in inttypes.h"
3148 #include <inttypes.h>
3150 volatile int_fast16_t v= 0;
3154 cc_check
&& _fast_inttypes
=yes
3155 if test "$_fast_inttypes" = no
; then
3157 typedef signed char int_fast8_t;
3158 typedef signed int int_fast16_t;
3159 typedef signed int int_fast32_t;
3160 typedef signed long long int_fast64_t;
3161 typedef unsigned char uint_fast8_t;
3162 typedef unsigned int uint_fast16_t;
3163 typedef unsigned int uint_fast32_t;
3164 typedef unsigned long long uint_fast64_t;'
3166 echores
"$_fast_inttypes"
3169 echocheck
"malloc.h"
3172 int main(void) { (void) malloc(0); return 0; }
3175 cc_check
&& _malloc
=yes
3176 if test "$_malloc" = yes ; then
3177 def_malloc_h
='#define HAVE_MALLOC_H 1'
3179 def_malloc_h
='#define HAVE_MALLOC_H 0'
3181 # malloc.h emits a warning in FreeBSD and OpenBSD
3182 freebsd || openbsd || dragonfly
&& def_malloc_h
='#define HAVE_MALLOC_H 0'
3186 echocheck
"memalign()"
3187 # XXX restrict to x86 ? extend to other CPUs/cacheline sizes ?
3188 def_memalign_hack
='#define CONFIG_MEMALIGN_HACK 0'
3191 int main(void) { (void) memalign(64, sizeof(char)); return 0; }
3194 cc_check
&& _memalign
=yes
3195 if test "$_memalign" = yes ; then
3196 def_memalign
='#define HAVE_MEMALIGN 1'
3198 def_memalign
='#define HAVE_MEMALIGN 0'
3199 def_map_memalign
='#define memalign(a,b) malloc(b)'
3200 darwin || def_memalign_hack
='#define CONFIG_MEMALIGN_HACK 1'
3202 echores
"$_memalign"
3205 echocheck
"posix_memalign()"
3207 def_posix_memalign
='#define HAVE_POSIX_MEMALIGN 0'
3209 #define _XOPEN_SOURCE 600
3211 int main(void) { posix_memalign(NULL, 0, 0); }
3213 cc_check
&& posix_memalign
=yes && def_posix_memalign
='#define HAVE_POSIX_MEMALIGN 1'
3214 echores
"$posix_memalign"
3217 echocheck
"alloca.h"
3220 int main(void) { (void) alloca(0); return 0; }
3223 cc_check
&& _alloca
=yes
3225 def_alloca_h
='#define HAVE_ALLOCA_H 1'
3227 def_alloca_h
='#undef HAVE_ALLOCA_H'
3232 echocheck
"fastmemcpy"
3233 if test "$_fastmemcpy" = yes ; then
3234 def_fastmemcpy
='#define CONFIG_FASTMEMCPY 1'
3236 def_fastmemcpy
='#undef CONFIG_FASTMEMCPY'
3238 echores
"$_fastmemcpy"
3243 #include <sys/types.h>
3244 #include <sys/mman.h>
3245 int main(void) { (void) mmap(0, 0, 0, 0, 0, 0); return 0; }
3248 cc_check
&& _mman
=yes
3249 if test "$_mman" = yes ; then
3250 def_mman_h
='#define HAVE_SYS_MMAN_H 1'
3252 def_mman_h
='#undef HAVE_SYS_MMAN_H'
3253 os2
&& _need_mmap
=yes
3258 #include <sys/types.h>
3259 #include <sys/mman.h>
3260 int main(void) { void *p = MAP_FAILED; return 0; }
3262 _mman_has_map_failed
=no
3263 cc_check
&& _mman_has_map_failed
=yes
3264 if test "$_mman_has_map_failed" = yes ; then
3265 def_mman_has_map_failed
=''
3267 def_mman_has_map_failed
='#define MAP_FAILED ((void *) -1)'
3270 echocheck
"dynamic loader"
3274 int main(void) { dlopen(NULL, 0); dlclose(NULL); dlsym(NULL, NULL); return 0; }
3277 for _ld_tmp
in "" "-ldl" ; do
3278 cc_check
$_ld_tmp && _ld_dl
="$_ld_tmp" && _dl
=yes && break
3280 if test "$_dl" = yes ; then
3281 def_dl
='#define HAVE_LIBDL 1'
3283 def_dl
='#undef HAVE_LIBDL'
3288 echocheck
"dynamic a/v plugins support"
3289 if test "$_dl" = no
; then
3292 if test "$_dynamic_plugins" = yes ; then
3293 def_dynamic_plugins
='#define CONFIG_DYNAMIC_PLUGINS 1'
3295 def_dynamic_plugins
='#undef CONFIG_DYNAMIC_PLUGINS'
3297 echores
"$_dynamic_plugins"
3300 def_threads
='#define HAVE_THREADS 0'
3304 THREAD_CFLAGS
=-D_REENTRANT
3305 elif freebsd || netbsd || openbsd || bsdos
; then
3306 THREAD_CFLAGS
=-D_THREAD_SAFE
3308 if test "$_pthreads" = auto
; then
3310 #include <pthread.h>
3311 void* func(void *arg) { return arg; }
3312 int main(void) { pthread_t tid; return pthread_create(&tid, 0, func, 0) == 0 ? 0 : 1; }
3316 for _ld_tmp
in "-lpthreadGC2" "" "-lpthread" "-pthread" ; do
3317 # for crosscompilation, we cannot execute the program, be happy if we can link statically
3318 cc_check
$THREAD_CFLAGS $_ld_tmp && (tmp_run ||
test "$_ld_static") && _ld_pthread
="$_ld_tmp" && _pthreads
=yes && break
3322 if test "$_pthreads" = yes ; then
3323 test $_ld_pthread && _res_comment
="using $_ld_pthread"
3324 def_pthreads
='#define HAVE_PTHREADS 1'
3325 def_threads
='#define HAVE_THREADS 1'
3326 extra_cflags
="$extra_cflags $THREAD_CFLAGS"
3328 _res_comment
="v4l, v4l2, ao_nas, win32 loader disabled"
3329 def_pthreads
='#undef HAVE_PTHREADS'
3330 _nas
=no
; _tv_v4l1
=no
; _tv_v4l2
=no
3331 mingw32 || _win32dll
=no
3333 echores
"$_pthreads"
3336 if test "$_pthreads" = yes ; then
3337 def_pthread_cache
="#define PTHREAD_CACHE 1"
3340 def_stream_cache
="#undef CONFIG_STREAM_CACHE"
3344 echocheck
"w32threads"
3345 if test "$_pthreads" = yes ; then
3346 _res_comment
="using pthread instead"
3349 if test "$_w32threads" = auto
; then
3351 mingw32
&& _w32threads
=yes
3353 test "$_w32threads" = yes && def_threads
='#define HAVE_THREADS 1'
3354 echores
"$_w32threads"
3358 if test "$_rpath" = yes ; then
3359 for I
in $
(echo $extra_ldflags |
sed 's/-L//g') ; do
3360 tmp
="$tmp $(echo $I | sed 's/.*/ -L& -Wl,-R&/')"
3367 if test "$_iconv" = auto
; then
3372 #define INBUFSIZE 1024
3373 #define OUTBUFSIZE 4096
3375 char inbuffer[INBUFSIZE];
3376 char outbuffer[OUTBUFSIZE];
3381 char *tocode="UTF-8";
3382 char *fromcode="cp1250";
3383 if ((icdsc = iconv_open(tocode, fromcode)) != (iconv_t)(-1)) {
3384 while ((numread = read(0, inbuffer, INBUFSIZE))) {
3385 char *iptr=inbuffer;
3386 char *optr=outbuffer;
3387 size_t inleft=numread;
3388 size_t outleft=OUTBUFSIZE;
3389 if (iconv(icdsc, (const char **)&iptr, &inleft, &optr, &outleft)
3391 write(1, outbuffer, OUTBUFSIZE - outleft);
3394 if (iconv_close(icdsc) == -1)
3401 for _ld_tmp
in "" "-liconv" "-liconv $_ld_dl" ; do
3402 cc_check
$_ld_lm $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && \
3406 if test "$_iconv" = yes ; then
3407 def_iconv
='#define CONFIG_ICONV 1'
3409 def_iconv
='#undef CONFIG_ICONV'
3414 echocheck
"soundcard.h"
3416 def_soundcard_h
='#undef HAVE_SOUNDCARD_H'
3417 def_sys_soundcard_h
='#undef HAVE_SYS_SOUNDCARD_H'
3418 for _soundcard_header
in "sys/soundcard.h" "soundcard.h"; do
3420 #include <$_soundcard_header>
3421 int main(void) { return 0; }
3423 cc_check
&& _soundcard_h
=yes && _res_comment
="$_soundcard_header" && break
3426 if test "$_soundcard_h" = yes ; then
3427 if test $_soundcard_header = "sys/soundcard.h"; then
3428 def_sys_soundcard_h
='#define HAVE_SYS_SOUNDCARD_H 1'
3430 def_soundcard_h
='#define HAVE_SOUNDCARD_H 1'
3433 echores
"$_soundcard_h"
3436 echocheck
"sys/dvdio.h"
3439 #include <sys/dvdio.h>
3440 int main(void) { return 0; }
3443 cc_check
&& _dvdio
=yes
3444 if test "$_dvdio" = yes ; then
3445 def_dvdio
='#define DVD_STRUCT_IN_SYS_DVDIO_H 1'
3447 def_dvdio
='#undef DVD_STRUCT_IN_SYS_DVDIO_H'
3452 echocheck
"sys/cdio.h"
3455 #include <sys/cdio.h>
3456 int main(void) { return 0; }
3459 cc_check
&& _cdio
=yes
3460 if test "$_cdio" = yes ; then
3461 def_cdio
='#define DVD_STRUCT_IN_SYS_CDIO_H 1'
3463 def_cdio
='#undef DVD_STRUCT_IN_SYS_CDIO_H'
3468 echocheck
"linux/cdrom.h"
3470 #include <sys/types.h>
3471 #include <linux/cdrom.h>
3472 int main(void) { return 0; }
3475 cc_check
&& _cdrom
=yes
3476 if test "$_cdrom" = yes ; then
3477 def_cdrom
='#define DVD_STRUCT_IN_LINUX_CDROM_H 1'
3479 def_cdrom
='#undef DVD_STRUCT_IN_LINUX_CDROM_H'
3487 int main(void) { return 0; }
3490 cc_check
&& _dvd
=yes
3491 if test "$_dvd" = yes ; then
3492 def_dvd
='#define DVD_STRUCT_IN_DVD_H 1'
3494 def_dvd
='#undef DVD_STRUCT_IN_DVD_H'
3500 echocheck
"BSDI dvd.h"
3503 int main(void) { return 0; }
3506 cc_check
&& _bsdi_dvd
=yes
3507 if test "$_bsdi_dvd" = yes ; then
3508 def_bsdi_dvd
='#define DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H 1'
3510 def_bsdi_dvd
='#undef DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H'
3512 echores
"$_bsdi_dvd"
3517 # also used by AIX, but AIX does not support VCD and/or libdvdread
3518 echocheck
"HP-UX SCSI header"
3520 #include <sys/scsi.h>
3521 int main(void) { return 0; }
3524 cc_check
&& _hpux_scsi_h
=yes
3525 if test "$_hpux_scsi_h" = yes ; then
3526 def_hpux_scsi_h
='#define HPUX_SCTL_IO 1'
3528 def_hpux_scsi_h
='#undef HPUX_SCTL_IO'
3530 echores
"$_hpux_scsi_h"
3535 echocheck
"userspace SCSI headers (Solaris)"
3538 #include <stropts.h>
3539 #include <sys/scsi/scsi_types.h>
3540 #include <sys/scsi/impl/uscsi.h>
3541 int main(void) { return 0; }
3544 cc_check
&& _sol_scsi_h
=yes
3545 if test "$_sol_scsi_h" = yes ; then
3546 def_sol_scsi_h
='#define SOLARIS_USCSI 1'
3548 def_sol_scsi_h
='#undef SOLARIS_USCSI'
3550 echores
"$_sol_scsi_h"
3555 if test "$_termcap" = auto
; then
3559 int main(void) { tgetent(NULL, NULL); return 0; }
3562 for _ld_tmp
in "-lncurses" "-ltinfo" "-ltermcap"; do
3563 cc_check
$_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" \
3564 && _termcap
=yes && break
3567 if test "$_termcap" = yes ; then
3568 def_termcap
='#define HAVE_TERMCAP 1'
3569 test $_ld_tmp && _res_comment
="using $_ld_tmp"
3571 def_termcap
='#undef HAVE_TERMCAP'
3577 def_termios
='#undef HAVE_TERMIOS'
3578 def_termios_h
='#undef HAVE_TERMIOS_H'
3579 def_termios_sys_h
='#undef HAVE_SYS_TERMIOS_H'
3580 if test "$_termios" = auto
; then
3582 for _termios_header
in "sys/termios.h" "termios.h"; do
3584 #include <$_termios_header>
3585 int main(void) { return 0; }
3587 cc_check
&& _termios
=yes && _res_comment
="using $_termios_header" && break
3591 if test "$_termios" = yes ; then
3592 def_termios
='#define HAVE_TERMIOS 1'
3593 if test "$_termios_header" = "termios.h" ; then
3594 def_termios_h
='#define HAVE_TERMIOS_H 1'
3596 def_termios_sys_h
='#define HAVE_SYS_TERMIOS_H 1'
3603 if test "$_shm" = auto
; then
3605 #include <sys/types.h>
3606 #include <sys/shm.h>
3607 int main(void) { shmget(0, 0, 0); shmat(0, 0, 0); shmctl(0, 0, 0); return 0; }
3610 cc_check
&& _shm
=yes
3612 if test "$_shm" = yes ; then
3613 def_shm
='#define HAVE_SHM 1'
3615 def_shm
='#undef HAVE_SHM'
3620 echocheck
"strsep()"
3623 int main(void) { char *s = "Hello, world!"; (void) strsep(&s, ","); return 0; }
3626 cc_check
&& _strsep
=yes
3627 if test "$_strsep" = yes ; then
3628 def_strsep
='#define HAVE_STRSEP 1'
3631 def_strsep
='#undef HAVE_STRSEP'
3637 echocheck
"vsscanf()"
3639 #define _ISOC99_SOURCE
3642 int main(void) { vsscanf(0, 0, 0); return 0; }
3645 cc_check
&& _vsscanf
=yes
3646 if test "$_vsscanf" = yes ; then
3647 def_vsscanf
='#define HAVE_VSSCANF 1'
3650 def_vsscanf
='#undef HAVE_VSSCANF'
3658 #define _XOPEN_SOURCE 600
3660 int main(void) { swab(0, 0, 0); return 0; }
3663 cc_check
&& _swab
=yes
3664 if test "$_swab" = yes ; then
3665 def_swab
='#define HAVE_SWAB 1'
3668 def_swab
='#undef HAVE_SWAB'
3673 echocheck
"POSIX select()"
3677 #include <sys/types.h>
3679 #include <sys/time.h>
3681 int main(void) {int nfds = 1; fd_set readfds; struct timeval timeout; select(nfds,&readfds,NULL,NULL,&timeout); return 0; }
3684 def_posix_select
='#undef HAVE_POSIX_SELECT'
3685 #select() of kLIBC (OS/2) supports socket only
3686 ! os2
&& cc_check
&& _posix_select
=yes \
3687 && def_posix_select
='#define HAVE_POSIX_SELECT 1'
3688 echores
"$_posix_select"
3691 echocheck
"audio select()"
3692 if test "$_select" = no
; then
3693 def_select
='#undef HAVE_AUDIO_SELECT'
3694 elif test "$_select" = yes ; then
3695 def_select
='#define HAVE_AUDIO_SELECT 1'
3700 echocheck
"gettimeofday()"
3703 #include <sys/time.h>
3704 int main(void) {struct timeval tv_start; gettimeofday(&tv_start, NULL); return 0; }
3707 cc_check
&& _gettimeofday
=yes
3708 if test "$_gettimeofday" = yes ; then
3709 def_gettimeofday
='#define HAVE_GETTIMEOFDAY 1'
3710 _need_gettimeofday
=no
3712 def_gettimeofday
='#undef HAVE_GETTIMEOFDAY'
3713 _need_gettimeofday
=yes
3715 echores
"$_gettimeofday"
3722 int main(void) { glob_t gg; glob("filename",0,NULL,&gg); return 0; }
3725 cc_check
&& _glob
=yes
3726 if test "$_glob" = yes ; then
3727 def_glob
='#define HAVE_GLOB 1'
3730 def_glob
='#undef HAVE_GLOB'
3736 echocheck
"setenv()"
3739 int main(void) { setenv("","",0); return 0; }
3742 cc_check
&& _setenv
=yes
3743 if test "$_setenv" = yes ; then
3744 def_setenv
='#define HAVE_SETENV 1'
3747 def_setenv
='#undef HAVE_SETENV'
3754 echocheck
"sysi86()"
3756 #include <sys/sysi86.h>
3757 int main(void) { sysi86(0); return 0; }
3760 cc_check
&& _sysi86
=yes
3761 if test "$_sysi86" = yes ; then
3762 def_sysi86
='#define HAVE_SYSI86 1'
3764 #include <sys/sysi86.h>
3765 int main(void) { int sysi86(int, void*); sysi86(0); return 0; }
3767 cc_check
&& def_sysi86_iv
='#define HAVE_SYSI86_iv 1'
3769 def_sysi86
='#undef HAVE_SYSI86'
3775 echocheck
"sys/sysinfo.h"
3777 #include <sys/sysinfo.h>
3779 struct sysinfo s_info;
3785 cc_check
&& _sys_sysinfo
=yes
3786 if test "$_sys_sysinfo" = yes ; then
3787 def_sys_sysinfo_h
='#define HAVE_SYS_SYSINFO_H 1'
3789 def_sys_sysinfo_h
='#undef HAVE_SYS_SYSINFO_H'
3791 echores
"$_sys_sysinfo"
3796 echocheck
"Mac OS X Finder Support"
3797 def_macosx_finder
='#undef CONFIG_MACOSX_FINDER'
3798 if test "$_macosx_finder" = yes ; then
3799 def_macosx_finder
='#define CONFIG_MACOSX_FINDER 1'
3800 extra_ldflags
="$extra_ldflags -framework Carbon"
3802 echores
"$_macosx_finder"
3804 echocheck
"Mac OS X Bundle file locations"
3805 def_macosx_bundle
='#undef CONFIG_MACOSX_BUNDLE'
3806 test "$_macosx_bundle" = auto
&& _macosx_bundle
=$_macosx_finder
3807 if test "$_macosx_bundle" = yes ; then
3808 def_macosx_bundle
='#define CONFIG_MACOSX_BUNDLE 1'
3809 extra_ldflags
="$extra_ldflags -framework Carbon"
3811 echores
"$_macosx_bundle"
3813 echocheck
"Apple Remote"
3814 if test "$_apple_remote" = auto
; then
3818 #include <IOKit/IOCFPlugIn.h>
3820 io_iterator_t hidObjectIterator = (io_iterator_t)NULL;
3821 CFMutableDictionaryRef hidMatchDictionary;
3822 IOReturn ioReturnValue;
3824 // Set up a matching dictionary to search the I/O Registry by class.
3825 // name for all HID class devices
3826 hidMatchDictionary = IOServiceMatching("AppleIRController");
3828 // Now search I/O Registry for matching devices.
3829 ioReturnValue = IOServiceGetMatchingServices(kIOMasterPortDefault,
3830 hidMatchDictionary, &hidObjectIterator);
3832 // If search is unsuccessful, return nonzero.
3833 if (ioReturnValue != kIOReturnSuccess ||
3834 !IOIteratorIsValid(hidObjectIterator)) {
3840 cc_check
-framework IOKit
&& tmp_run
&& _apple_remote
=yes
3842 if test "$_apple_remote" = yes ; then
3843 def_apple_remote
='#define CONFIG_APPLE_REMOTE 1'
3844 libs_mplayer
="$libs_mplayer -framework IOKit -framework Cocoa"
3846 def_apple_remote
='#undef CONFIG_APPLE_REMOTE'
3848 echores
"$_apple_remote"
3854 echocheck
"Apple IR"
3855 if test "$_apple_ir" = auto
; then
3858 #include <linux/types.h>
3859 #include <linux/input.h>
3861 struct input_event ev;
3866 cc_check
&& tmp_run
&& _apple_ir
=yes
3868 if test "$_apple_ir" = yes ; then
3869 def_apple_ir
='#define CONFIG_APPLE_IR 1'
3871 def_apple_ir
='#undef CONFIG_APPLE_IR'
3873 echores
"$_apple_ir"
3876 echocheck
"pkg-config"
3877 _pkg_config
=pkg-config
3878 if $
($_pkg_config --version > /dev
/null
2>&1); then
3879 if test "$_ld_static"; then
3880 _pkg_config
="$_pkg_config --static"
3889 echocheck
"Samba support (libsmbclient)"
3890 if test "$_smb" = yes; then
3891 extra_ldflags
="$extra_ldflags -lsmbclient"
3893 if test "$_smb" = auto
; then
3896 #include <libsmbclient.h>
3897 int main(void) { smbc_opendir("smb://"); return 0; }
3899 for _ld_tmp
in "-lsmbclient" "-lsmbclient $_ld_dl" "-lsmbclient $_ld_dl -lnsl" "-lsmbclient $_ld_dl -lssl -lnsl" ; do
3900 cc_check
$_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && \
3905 if test "$_smb" = yes; then
3906 def_smb
="#define CONFIG_LIBSMBCLIENT"
3907 _inputmodules
="smb $_inputmodules"
3909 def_smb
="#undef CONFIG_LIBSMBCLIENT"
3910 _noinputmodules
="smb $_noinputmodules"
3921 if test "$_tdfxfb" = yes ; then
3922 def_tdfxfb
='#define CONFIG_TDFXFB 1'
3923 _vomodules
="tdfxfb $_vomodules"
3925 def_tdfxfb
='#undef CONFIG_TDFXFB'
3926 _novomodules
="tdfxfb $_novomodules"
3931 if test "$_s3fb" = yes ; then
3932 def_s3fb
='#define CONFIG_S3FB 1'
3933 _vomodules
="s3fb $_vomodules"
3935 def_s3fb
='#undef CONFIG_S3FB'
3936 _novomodules
="s3fb $_novomodules"
3941 if test "$_wii" = yes ; then
3942 def_wii
='#define CONFIG_WII 1'
3943 _vomodules
="wii $_vomodules"
3945 def_wii
='#undef CONFIG_WII'
3946 _novomodules
="wii $_novomodules"
3951 if test "$_tdfxvid" = yes ; then
3952 def_tdfxvid
='#define CONFIG_TDFX_VID 1'
3953 _vomodules
="tdfx_vid $_vomodules"
3955 def_tdfxvid
='#undef CONFIG_TDFX_VID'
3956 _novomodules
="tdfx_vid $_novomodules"
3961 if test "$_xvr100" = auto
; then
3964 #include <sys/fbio.h>
3965 #include <sys/visual_io.h>
3967 struct vis_identifier ident;
3968 struct fbgattr attr;
3969 ioctl(0, VIS_GETIDENTIFIER, &ident);
3970 ioctl(0, FBIOGATTR, &attr);
3975 cc_check
&& _xvr100
=yes
3977 if test "$_xvr100" = yes ; then
3978 def_xvr100
='#define CONFIG_XVR100 1'
3979 _vomodules
="xvr100 $_vomodules"
3981 def_tdfxvid
='#undef CONFIG_XVR100'
3982 _novomodules
="xvr100 $_novomodules"
3987 if test "$_tga" = yes ; then
3988 def_tga
='#define CONFIG_TGA 1'
3989 _vomodules
="tga $_vomodules"
3991 def_tga
='#undef CONFIG_TGA'
3992 _novomodules
="tga $_novomodules"
3997 echocheck
"md5sum support"
3998 if test "$_md5sum" = yes; then
3999 def_md5sum
="#define CONFIG_MD5SUM"
4000 _vomodules
="md5sum $_vomodules"
4002 def_md5sum
="#undef CONFIG_MD5SUM"
4003 _novomodules
="md5sum $_novomodules"
4008 echocheck
"yuv4mpeg support"
4009 if test "$_yuv4mpeg" = yes; then
4010 def_yuv4mpeg
="#define CONFIG_YUV4MPEG"
4011 _vomodules
="yuv4mpeg $_vomodules"
4013 def_yuv4mpeg
="#undef CONFIG_YUV4MPEG"
4014 _novomodules
="yuv4mpeg $_novomodules"
4016 echores
"$_yuv4mpeg"
4020 if test "$_bl" = yes ; then
4021 def_bl
='#define CONFIG_BL 1'
4022 _vomodules
="bl $_vomodules"
4024 def_bl
='#undef CONFIG_BL'
4025 _novomodules
="bl $_novomodules"
4030 echocheck
"DirectFB"
4031 if test "$_directfb" = auto
; then
4034 #include <directfb.h>
4035 int main(void) { IDirectFB *foo; DirectFBInit(0,0); return 0; }
4037 for _inc_tmp
in "" -I/usr
/local
/include
/directfb \
4038 -I/usr
/include
/directfb
-I/usr
/local
/include
; do
4039 cc_check
$_inc_tmp -ldirectfb && _directfb
=yes && \
4040 extra_cflags
="$extra_cflags $_inc_tmp" && break
4045 expr $1 \
* 65536 + $2 \
* 256 + $3
4048 if test "$_directfb" = yes; then
4050 #include <directfb_version.h>
4052 dfb_ver = DIRECTFB_MAJOR_VERSION.DIRECTFB_MINOR_VERSION.DIRECTFB_MICRO_VERSION
4055 if $_cc -E $TMPC $extra_cflags > "$TMPEXE"; then
4056 _directfb_version
=$
(sed -n 's/^dfb_ver[^0-9]*\(.*\)/\1/p' "$TMPEXE" |
tr -d '()')
4057 _dfb_major
=$
(echo $_directfb_version | cut
-d .
-f 1)
4058 _dfb_minor
=$
(echo $_directfb_version | cut
-d .
-f 2)
4059 _dfb_micro
=$
(echo $_directfb_version | cut
-d .
-f 3)
4060 _dfb_version
=$
(dfb_version
$_dfb_major $_dfb_minor $_dfb_micro)
4061 if test "$_dfb_version" -ge $
(dfb_version
0 9 13); then
4062 def_directfb_version
="#define DIRECTFBVERSION $_dfb_version"
4063 _res_comment
="$_directfb_version"
4064 test "$_dfb_version" -ge $
(dfb_version
0 9 15) && _dfbmga
=yes
4066 def_directfb_version
='#undef DIRECTFBVERSION'
4068 _res_comment
="version >=0.9.13 required"
4072 _res_comment
="failed to get version"
4075 echores
"$_directfb"
4077 if test "$_directfb" = yes ; then
4078 def_directfb
='#define CONFIG_DIRECTFB 1'
4079 _vomodules
="directfb $_vomodules"
4080 libs_mplayer
="$libs_mplayer -ldirectfb"
4082 def_directfb
='#undef CONFIG_DIRECTFB'
4083 _novomodules
="directfb $_novomodules"
4085 if test "$_dfbmga" = yes; then
4086 _vomodules
="dfbmga $_vomodules"
4087 def_dfbmga
='#define CONFIG_DFBMGA 1'
4089 _novomodules
="dfbmga $_novomodules"
4090 def_dfbmga
='#undef CONFIG_DFBMGA'
4094 echocheck
"X11 headers presence"
4096 _res_comment
="check if the dev(el) packages are installed"
4097 for I
in $
(echo $extra_cflags |
sed s
/-I//g
) /usr
/include
; do
4098 if test -f "$I/X11/Xlib.h" ; then
4104 if test $_cross_compile = no
; then
4105 for I
in /usr
/X11
/include
/usr
/X11R
7/include
/usr
/X11R
6/include \
4106 /usr
/include
/X11R6
/usr
/openwin
/include
; do
4107 if test -f "$I/X11/Xlib.h" ; then
4108 extra_cflags
="$extra_cflags -I$I"
4110 _res_comment
="using $I"
4115 echores
"$_x11_headers"
4119 if test "$_x11" = auto
&& test "$_x11_headers" = yes ; then
4121 #include <X11/Xlib.h>
4122 #include <X11/Xutil.h>
4123 int main(void) { (void) XCreateWindow(0,0,0,0,0,0,0,0,0,0,0,0); return 0; }
4125 for I
in "" -L/usr
/X11R
7/lib
-L/usr
/X11R
6/lib
-L/usr
/lib
/X11R6 \
4126 -L/usr
/X11
/lib
-L/usr
/lib32
-L/usr
/openwin
/lib
-L/usr
/X11R
6/lib64 \
4129 _ld_tmp
="$I -lXext -lX11 $_ld_pthread -Wl,-R$(echo $I | sed s/^-L//)"
4131 _ld_tmp
="$I -lXext -lX11 $_ld_pthread"
4133 cc_check
$_ld_tmp && libs_mplayer
="$libs_mplayer $_ld_tmp" \
4134 && _x11
=yes && break
4137 if test "$_x11" = yes ; then
4138 def_x11
='#define CONFIG_X11 1'
4139 _vomodules
="x11 xover $_vomodules"
4142 def_x11
='#undef CONFIG_X11'
4143 _novomodules
="x11 $_novomodules"
4144 _res_comment
="check if the dev(el) packages are installed"
4145 # disable stuff that depends on X
4146 _xv
=no
; _xvmc
=no
; _xinerama
=no
; _vm
=no
; _xf86keysym
=no
; _vdpau
=no
4150 echocheck
"Xss screensaver extensions"
4151 if test "$_xss" = auto
; then
4153 #include <X11/Xlib.h>
4154 #include <X11/extensions/scrnsaver.h>
4155 int main(void) { XScreenSaverSuspend(NULL, True); return 0; }
4158 cc_check
-lXss && _xss
=yes
4160 if test "$_xss" = yes ; then
4161 def_xss
='#define CONFIG_XSS 1'
4162 libs_mplayer
="$libs_mplayer -lXss"
4164 def_xss
='#undef CONFIG_XSS'
4171 if test "$_x11" = yes ; then
4173 #include <X11/Xmd.h>
4174 #include <X11/Xlib.h>
4175 #include <X11/Xutil.h>
4176 #include <X11/Xatom.h>
4177 #include <X11/extensions/dpms.h>
4178 int main(void) { (void) DPMSQueryExtension(0, 0, 0); return 0; }
4180 cc_check
-lXdpms && _xdpms3
=yes
4182 #include <X11/Xlib.h>
4183 #include <X11/extensions/dpms.h>
4184 int main(void) { (void) DPMSQueryExtension(0, 0, 0); return 0; }
4186 cc_check
-lXext && _xdpms4
=yes
4188 if test "$_xdpms4" = yes ; then
4189 def_xdpms
='#define CONFIG_XDPMS 1'
4190 _res_comment
="using Xdpms 4"
4192 elif test "$_xdpms3" = yes ; then
4193 def_xdpms
='#define CONFIG_XDPMS 1'
4194 libs_mplayer
="$libs_mplayer -lXdpms"
4195 _res_comment
="using Xdpms 3"
4198 def_xdpms
='#undef CONFIG_XDPMS'
4204 if test "$_xv" = auto
; then
4206 #include <X11/Xlib.h>
4207 #include <X11/extensions/Xvlib.h>
4209 (void) XvGetPortAttribute(0, 0, 0, 0);
4210 (void) XvQueryPortAttributes(0, 0, 0);
4214 cc_check
-lXv && _xv
=yes
4217 if test "$_xv" = yes ; then
4218 def_xv
='#define CONFIG_XV 1'
4219 libs_mplayer
="$libs_mplayer -lXv"
4220 _vomodules
="xv $_vomodules"
4222 def_xv
='#undef CONFIG_XV'
4223 _novomodules
="xv $_novomodules"
4229 if test "$_xv" = yes && test "$_xvmc" != no
; then
4232 #include <X11/Xlib.h>
4233 #include <X11/extensions/Xvlib.h>
4234 #include <X11/extensions/XvMClib.h>
4236 (void) XvMCQueryExtension(0,0,0);
4237 (void) XvMCCreateContext(0,0,0,0,0,0,0);
4240 for _ld_tmp
in $_xvmclib XvMCNVIDIA XvMCW I810XvMC
; do
4241 cc_check
-lXvMC -l$_ld_tmp && _xvmc
=yes && _xvmclib
="$_ld_tmp" && break
4244 if test "$_xvmc" = yes ; then
4245 def_xvmc
='#define CONFIG_XVMC 1'
4246 libs_mplayer
="$libs_mplayer -lXvMC -l$_xvmclib"
4247 _vomodules
="xvmc $_vomodules"
4248 _res_comment
="using $_xvmclib"
4250 def_xvmc
='#define CONFIG_XVMC 0'
4251 _novomodules
="xvmc $_novomodules"
4257 if test "$_vdpau" = auto
; then
4259 if test "$_dl" = yes ; then
4261 #include <vdpau/vdpau_x11.h>
4262 int main(void) {return VDP_VIDEO_MIXER_ATTRIBUTE_SKIP_CHROMA_DEINTERLACE;}
4264 cc_check
&& _vdpau
=yes
4267 if test "$_vdpau" = yes ; then
4268 def_vdpau
='#define CONFIG_VDPAU 1'
4269 _vomodules
="vdpau $_vomodules"
4271 def_vdpau
='#define CONFIG_VDPAU 0'
4272 _novomodules
="vdpau $_novomodules"
4277 echocheck
"Xinerama"
4278 if test "$_xinerama" = auto
; then
4280 #include <X11/Xlib.h>
4281 #include <X11/extensions/Xinerama.h>
4282 int main(void) { (void) XineramaIsActive(0); return 0; }
4285 cc_check
-lXinerama && _xinerama
=yes
4288 if test "$_xinerama" = yes ; then
4289 def_xinerama
='#define CONFIG_XINERAMA 1'
4290 libs_mplayer
="$libs_mplayer -lXinerama"
4292 def_xinerama
='#undef CONFIG_XINERAMA'
4294 echores
"$_xinerama"
4297 # Note: the -lXxf86vm library is the VideoMode extension and though it's not
4298 # needed for DGA, AFAIK every distribution packages together with DGA stuffs
4299 # named 'X extensions' or something similar.
4300 # This check may be useful for future mplayer versions (to change resolution)
4301 # If you run into problems, remove '-lXxf86vm'.
4303 if test "$_vm" = auto
; then
4305 #include <X11/Xlib.h>
4306 #include <X11/extensions/xf86vmode.h>
4307 int main(void) { (void) XF86VidModeQueryExtension(0, 0, 0); return 0; }
4310 cc_check
-lXxf86vm && _vm
=yes
4312 if test "$_vm" = yes ; then
4313 def_vm
='#define CONFIG_XF86VM 1'
4314 libs_mplayer
="$libs_mplayer -lXxf86vm"
4316 def_vm
='#undef CONFIG_XF86VM'
4320 # Check for the presence of special keycodes, like audio control buttons
4321 # that XFree86 might have. Used to be bundled with the xf86vm check, but
4322 # has nothing to do with xf86vm and XFree 3.x has xf86vm but does NOT
4323 # have these new keycodes.
4324 echocheck
"XF86keysym"
4325 if test "$_xf86keysym" = auto
; then
4328 #include <X11/Xlib.h>
4329 #include <X11/XF86keysym.h>
4330 int main(void) { return XF86XK_AudioPause; }
4332 cc_check
&& _xf86keysym
=yes
4334 if test "$_xf86keysym" = yes ; then
4335 def_xf86keysym
='#define CONFIG_XF86XK 1'
4337 def_xf86keysym
='#undef CONFIG_XF86XK'
4339 echores
"$_xf86keysym"
4342 if test "$_dga2" = auto
&& test "$_x11" = yes ; then
4344 #include <X11/Xlib.h>
4345 #include <X11/extensions/xf86dga.h>
4346 int main(void) { (void) XDGASetViewport(0, 0, 0, 0, 0); return 0; }
4349 cc_check
-lXxf86dga && _dga2
=yes
4351 if test "$_dga1" = auto
&& test "$_dga2" = no
&& test "$_vm" = yes ; then
4353 #include <X11/Xlib.h>
4354 #include <X11/extensions/xf86dga.h>
4355 int main(void) { (void) XF86DGASetViewPort(0, 0, 0, 0); return 0; }
4358 cc_check
-lXxf86dga -lXxf86vm && _dga1
=yes
4362 def_dga
='#undef CONFIG_DGA'
4363 def_dga1
='#undef CONFIG_DGA1'
4364 def_dga2
='#undef CONFIG_DGA2'
4365 if test "$_dga1" = yes ; then
4367 def_dga1
='#define CONFIG_DGA1 1'
4368 _res_comment
="using DGA 1.0"
4369 elif test "$_dga2" = yes ; then
4371 def_dga2
='#define CONFIG_DGA2 1'
4372 _res_comment
="using DGA 2.0"
4374 if test "$_dga" = yes ; then
4375 def_dga
='#define CONFIG_DGA 1'
4376 libs_mplayer
="$libs_mplayer -lXxf86dga"
4377 _vomodules
="dga $_vomodules"
4379 _novomodules
="dga $_novomodules"
4385 if test "$_3dfx" = yes && test "$_dga" = yes ; then
4386 def_3dfx
='#define CONFIG_3DFX 1'
4387 _vomodules
="3dfx $_vomodules"
4389 def_3dfx
='#undef CONFIG_3DFX'
4390 _novomodules
="3dfx $_novomodules"
4396 def_vidix
='#undef CONFIG_VIDIX'
4397 def_vidix_drv_cyberblade
='#undef CONFIG_VIDIX_DRV_CYBERBLADE'
4398 _vidix_drv_cyberblade
=no
4399 def_vidix_drv_ivtv
='#undef CONFIG_VIDIX_DRV_IVTV'
4401 def_vidix_drv_mach64
='#undef CONFIG_VIDIX_DRV_MACH64'
4402 _vidix_drv_mach64
=no
4403 def_vidix_drv_mga
='#undef CONFIG_VIDIX_DRV_MGA'
4405 def_vidix_drv_mga_crtc2
='#undef CONFIG_VIDIX_DRV_MGA_CRTC2'
4406 _vidix_drv_mga_crtc2
=no
4407 def_vidix_drv_nvidia
='#undef CONFIG_VIDIX_DRV_NVIDIA'
4408 _vidix_drv_nvidia
=no
4409 def_vidix_drv_pm2
='#undef CONFIG_VIDIX_DRV_PM2'
4411 def_vidix_drv_pm3
='#undef CONFIG_VIDIX_DRV_PM3'
4413 def_vidix_drv_radeon
='#undef CONFIG_VIDIX_DRV_RADEON'
4414 _vidix_drv_radeon
=no
4415 def_vidix_drv_rage128
='#undef CONFIG_VIDIX_DRV_RAGE128'
4416 _vidix_drv_rage128
=no
4417 def_vidix_drv_s3
='#undef CONFIG_VIDIX_DRV_S3'
4419 def_vidix_drv_sh_veu
='#undef CONFIG_VIDIX_DRV_SH_VEU'
4420 _vidix_drv_sh_veu
=no
4421 def_vidix_drv_sis
='#undef CONFIG_VIDIX_DRV_SIS'
4423 def_vidix_drv_unichrome
='#undef CONFIG_VIDIX_DRV_UNICHROME'
4424 _vidix_drv_unichrome
=no
4425 if test "$_vidix" = auto
; then
4427 x86
&& (linux || freebsd || netbsd || openbsd || dragonfly || sunos || win32
) \
4429 (ppc || alpha
) && linux
&& _vidix
=yes
4433 if test "$_vidix" = yes ; then
4434 def_vidix
='#define CONFIG_VIDIX 1'
4435 _vomodules
="cvidix $_vomodules"
4436 # FIXME: ivtv driver temporarily disabled until we have a proper test
4437 #test "$_vidix_drivers" || _vidix_drivers="cyberblade ivtv mach64 mga mga_crtc2 nvidia pm2 pm3 radeon rage128 s3 sh_veu sis unichrome"
4438 test "$_vidix_drivers" || _vidix_drivers
="cyberblade mach64 mga mga_crtc2 nvidia pm2 pm3 radeon rage128 s3 sh_veu sis unichrome"
4440 # some vidix drivers are architecture and os specific, discard them elsewhere
4441 x86 || _vidix_drivers
=$
(echo $_vidix_drivers |
sed -e s
/cyberblade
// -e s
/sis
// -e s
/unichrome
// -e s
/s
3//)
4442 (test $host_arch = "sh" && linux
) || _vidix_drivers
=$
(echo $_vidix_drivers |
sed s
/sh_veu
//)
4444 for driver
in $_vidix_drivers ; do
4445 uc_driver
=$
(echo $driver |
tr '[a-z]' '[A-Z]')
4446 eval _vidix_drv_
${driver}=yes
4447 eval def_vidix_drv_
${driver}=\"\
#define CONFIG_VIDIX_DRV_${uc_driver} 1\"
4450 echocheck
"VIDIX PCI device name database"
4451 echores
"$_vidix_pcidb"
4452 if test "$_vidix_pcidb" = yes ; then
4458 echocheck
"VIDIX dhahelper support"
4459 test "$_dhahelper" = yes && cflags_dhahelper
=-DCONFIG_DHAHELPER
4460 echores
"$_dhahelper"
4462 echocheck
"VIDIX svgalib_helper support"
4463 test "$_svgalib_helper" = yes && cflags_svgalib_helper
=-DCONFIG_SVGAHELPER
4464 echores
"$_svgalib_helper"
4467 _novomodules
="cvidix $_novomodules"
4470 if test "$_vidix" = yes && win32
; then
4472 _vomodules
="winvidix $_vomodules"
4473 libs_mplayer
="$libs_mplayer -lgdi32"
4475 _novomodules
="winvidix $_novomodules"
4477 if test "$_vidix" = yes && test "$_x11" = yes; then
4479 _vomodules
="xvidix $_vomodules"
4481 _novomodules
="xvidix $_novomodules"
4485 if test "$_ggi" = auto
; then
4487 #include <ggi/ggi.h>
4488 int main(void) { ggiInit(); return 0; }
4491 cc_check
-lggi && _ggi
=yes
4493 if test "$_ggi" = yes ; then
4494 def_ggi
='#define CONFIG_GGI 1'
4495 libs_mplayer
="$libs_mplayer -lggi"
4496 _vomodules
="ggi $_vomodules"
4498 def_ggi
='#undef CONFIG_GGI'
4499 _novomodules
="ggi $_novomodules"
4503 echocheck
"GGI extension: libggiwmh"
4504 if test "$_ggiwmh" = auto
; then
4507 #include <ggi/ggi.h>
4508 #include <ggi/wmh.h>
4509 int main(void) { ggiInit(); ggiWmhInit(); return 0; }
4511 cc_check
-lggi -lggiwmh && _ggiwmh
=yes
4513 # needed to get right output on obscure combination
4514 # like --disable-ggi --enable-ggiwmh
4515 if test "$_ggi" = yes && test "$_ggiwmh" = yes ; then
4516 def_ggiwmh
='#define CONFIG_GGIWMH 1'
4517 libs_mplayer
="$libs_mplayer -lggiwmh"
4520 def_ggiwmh
='#undef CONFIG_GGIWMH'
4526 if test "$_aa" = auto
; then
4529 extern struct aa_hardware_params aa_defparams;
4530 extern struct aa_renderparams aa_defrenderparams;
4534 (void) aa_init(0, 0, 0);
4535 c = aa_autoinit(&aa_defparams);
4536 p = aa_getrenderparams();
4537 aa_autoinitkbd(c,0);
4541 for _ld_tmp
in "-laa" ; do
4542 cc_check
$_ld_tmp && libs_mplayer
="$libs_mplayer $_ld_tmp" && _aa
=yes && break
4545 if test "$_aa" = yes ; then
4546 def_aa
='#define CONFIG_AA 1'
4548 libs_mplayer
="$libs_mplayer $(aalib-config --libs | cut -d " " -f 2,5,6)"
4550 _vomodules
="aa $_vomodules"
4552 def_aa
='#undef CONFIG_AA'
4553 _novomodules
="aa $_novomodules"
4559 if test "$_caca" = auto
; then
4561 if ( caca-config
--version ) >> "$TMPLOG" 2>&1 ; then
4564 #ifdef CACA_API_VERSION_1
4567 int main(void) { (void) caca_init(); return 0; }
4569 cc_check $
(caca-config
--libs) && _caca
=yes
4572 if test "$_caca" = yes ; then
4573 def_caca
='#define CONFIG_CACA 1'
4574 extra_cflags
="$extra_cflags $(caca-config --cflags)"
4575 libs_mplayer
="$libs_mplayer $(caca-config --libs)"
4576 _vomodules
="caca $_vomodules"
4578 def_caca
='#undef CONFIG_CACA'
4579 _novomodules
="caca $_novomodules"
4585 if test "$_svga" = auto
; then
4588 int main(void) { return 0; }
4591 cc_check
-lvga $_ld_lm && _svga
=yes
4593 if test "$_svga" = yes ; then
4594 def_svga
='#define CONFIG_SVGALIB 1'
4595 libs_mplayer
="$libs_mplayer -lvga"
4596 _vomodules
="svga $_vomodules"
4598 def_svga
='#undef CONFIG_SVGALIB'
4599 _novomodules
="svga $_novomodules"
4605 if test "$_fbdev" = auto
; then
4609 if test "$_fbdev" = yes ; then
4610 def_fbdev
='#define CONFIG_FBDEV 1'
4611 _vomodules
="fbdev $_vomodules"
4613 def_fbdev
='#undef CONFIG_FBDEV'
4614 _novomodules
="fbdev $_novomodules"
4621 if test "$_dvb" = auto
; then
4625 #include <sys/ioctl.h>
4629 #include <ost/dmx.h>
4630 #include <ost/frontend.h>
4631 #include <ost/sec.h>
4632 #include <ost/video.h>
4633 #include <ost/audio.h>
4634 int main(void) {return 0;}
4636 for _inc_tmp
in "" "-I/usr/src/DVB/ost/include" ; do
4637 cc_check
$_inc_tmp && _dvb
=yes && \
4638 extra_cflags
="$extra_cflags $_inc_tmp" && break
4642 if test "$_dvb" = yes ; then
4643 def_dvb
='#define CONFIG_DVB 1'
4644 def_dvbin
='#define CONFIG_DVBIN 1'
4645 _aomodules
="mpegpes(dvb) $_aomodules"
4646 _vomodules
="mpegpes(dvb) $_vomodules"
4649 echocheck
"DVB HEAD"
4650 if test "$_dvbhead" = auto
; then
4655 #include <sys/ioctl.h>
4659 #include <linux/dvb/dmx.h>
4660 #include <linux/dvb/frontend.h>
4661 #include <linux/dvb/video.h>
4662 #include <linux/dvb/audio.h>
4663 int main(void) {return 0;}
4665 for _inc_tmp
in "" "-I/usr/src/DVB/include" ; do
4666 cc_check
$_inc_tmp && _dvbhead
=yes && \
4667 extra_cflags
="$extra_cflags $_inc_tmp" && break
4671 if test "$_dvbhead" = yes ; then
4672 def_dvb
='#define CONFIG_DVB 1'
4673 def_dvb_head
='#define CONFIG_DVB_HEAD 1'
4674 def_dvbin
='#define CONFIG_DVBIN 1'
4675 _aomodules
="mpegpes(dvb) $_aomodules"
4676 _vomodules
="mpegpes(dvb) $_vomodules"
4679 if test "$_dvbhead" = no
&& test "$_dvb" = no
; then
4680 def_dvb
='#undef CONFIG_DVB'
4681 def_dvb_head
='#undef CONFIG_DVB_HEAD'
4682 def_dvbin
='#undef CONFIG_DVBIN '
4683 _aomodules
="mpegpes(file) $_aomodules"
4684 _vomodules
="mpegpes(file) $_vomodules"
4687 if test "$_dvb" = yes ||
test "$_dvbhead" = yes ; then
4689 _inputmodules
="dvb $_inputmodules"
4692 _noinputmodules
="dvb $_noinputmodules"
4698 echocheck
"QuickTime"
4699 if test "$quicktime" = auto
; then
4701 #include <QuickTime/QuickTime.h>
4703 ImageDescription *desc;
4710 cc_check
-framework QuickTime
&& quicktime
=yes
4712 if test "$quicktime" = yes ; then
4713 extra_ldflags
="$extra_ldflags -framework QuickTime"
4714 def_quicktime
='#define CONFIG_QUICKTIME 1'
4716 def_quicktime
='#undef CONFIG_QUICKTIME'
4722 if test "$_quartz" = auto
; then
4724 #include <Carbon/Carbon.h>
4726 CFRunLoopRunInMode(kCFRunLoopDefaultMode, 0, false);
4731 cc_check
-framework Carbon
&& _quartz
=yes
4733 if test "$_quartz" = yes ; then
4734 libs_mplayer
="$libs_mplayer -framework Carbon"
4735 def_quartz
='#define CONFIG_QUARTZ 1'
4736 _vomodules
="quartz $_vomodules"
4738 def_quartz
='#undef CONFIG_QUARTZ'
4739 _novomodules
="quartz $_novomodules"
4743 echocheck
"CoreVideo"
4744 if test "$_corevideo" = auto
; then
4746 #include <Carbon/Carbon.h>
4747 #include <CoreServices/CoreServices.h>
4748 #include <OpenGL/OpenGL.h>
4749 #include <QuartzCore/CoreVideo.h>
4750 int main(void) { return 0; }
4753 cc_check
-framework Carbon
-framework Cocoa
-framework QuartzCore
-framework OpenGL
&& _corevideo
=yes
4755 if test "$_corevideo" = yes ; then
4756 _vomodules
="corevideo $_vomodules"
4757 libs_mplayer
="$libs_mplayer -framework Carbon -framework Cocoa -framework QuartzCore -framework OpenGL"
4758 def_corevideo
='#define CONFIG_COREVIDEO 1'
4760 _novomodules
="corevideo $_novomodules"
4761 def_corevideo
='#undef CONFIG_COREVIDEO'
4763 echores
"$_corevideo"
4768 # make sure this stays below CoreVideo to avoid issues due to namespace
4769 # conflicts between -lGL and -framework OpenGL
4771 #Note: this test is run even with --enable-gl since we autodetect linker flags
4772 if (test "$_x11" = yes || win32
) && test "$_gl" != no
; then
4775 #include <windows.h>
4779 #include <X11/Xlib.h>
4785 wglCreateContext(dc);
4787 glXCreateContext(NULL, NULL, NULL, True);
4794 if cc_check
-lGL $_ld_lm ; then
4796 libs_mplayer
="$libs_mplayer -lGL $_ld_dl"
4797 elif cc_check
-lGL $_ld_lm $_ld_pthread ; then
4799 libs_mplayer
="$libs_mplayer -lGL $_ld_pthread $_ld_dl"
4800 elif cc_check
-DGL_WIN32 -lopengl32 ; then
4803 libs_mplayer
="$libs_mplayer -lopengl32 -lgdi32"
4808 if test "$_gl" = yes ; then
4809 def_gl
='#define CONFIG_GL 1'
4810 if test "$_gl_win32" = yes ; then
4811 def_gl_win32
='#define GL_WIN32 1'
4812 _res_comment
="win32 version"
4814 _vomodules
="opengl $_vomodules"
4816 def_gl
='#undef CONFIG_GL'
4817 def_gl_win32
='#undef GL_WIN32'
4818 _novomodules
="opengl $_novomodules"
4823 echocheck
"PNG support"
4824 if test "$_png" = auto
; then
4827 # Don't check for -lpng on irix since it has its own libpng
4828 # incompatible with the GNU libpng
4829 _res_comment
="disabled on irix (not GNU libpng)"
4835 printf("png.h : %s\n", PNG_LIBPNG_VER_STRING);
4836 printf("libpng: %s\n", png_libpng_ver);
4837 return strcmp(PNG_LIBPNG_VER_STRING, png_libpng_ver);
4840 if cc_check
-lpng -lz $_ld_lm ; then
4844 _res_comment
="mismatch of library and header versions"
4850 if test "$_png" = yes ; then
4851 def_png
='#define CONFIG_PNG 1'
4852 extra_ldflags
="$extra_ldflags -lpng -lz"
4853 _vomodules
="png $_vomodules"
4855 def_png
='#undef CONFIG_PNG'
4856 _novomodules
="png $_novomodules"
4859 echocheck
"MNG support"
4860 if test "$_mng" = auto
; then
4865 const char * p_ver = mng_version_text();
4866 return !p_ver || p_ver[0] == 0;
4869 if cc_check
-lmng -lz $_ld_lm ; then
4874 if test "$_mng" = yes ; then
4875 def_mng
='#define CONFIG_MNG 1'
4876 extra_ldflags
="$extra_ldflags -lmng -lz"
4878 def_mng
='#undef CONFIG_MNG'
4881 echocheck
"JPEG support"
4882 if test "$_jpeg" = auto
; then
4889 #include <jpeglib.h>
4890 int main(void) { return 0; }
4892 if cc_check
-ljpeg $_ld_lm ; then
4900 if test "$_jpeg" = yes ; then
4901 def_jpeg
='#define CONFIG_JPEG 1'
4902 _vomodules
="jpeg $_vomodules"
4903 extra_ldflags
="$extra_ldflags -ljpeg"
4905 def_jpeg
='#undef CONFIG_JPEG'
4906 _novomodules
="jpeg $_novomodules"
4911 echocheck
"PNM support"
4912 if test "$_pnm" = yes; then
4913 def_pnm
="#define CONFIG_PNM 1"
4914 _vomodules
="pnm $_vomodules"
4916 def_pnm
="#undef CONFIG_PNM"
4917 _novomodules
="pnm $_novomodules"
4923 echocheck
"GIF support"
4924 # This is to appease people who want to force gif support.
4925 # If it is forced to yes, then we still do checks to determine
4926 # which gif library to use.
4927 if test "$_gif" = yes ; then
4932 if test "$_gif" = auto
; then
4935 #include <gif_lib.h>
4936 int main(void) { return 0; }
4938 for _ld_gif
in "-lungif" "-lgif" ; do
4939 cc_check
$_ld_gif && tmp_run
&& _gif
=yes && break
4943 # If no library was found, and the user wants support forced,
4944 # then we force it on with libgif, as this is the safest
4945 # assumption IMHO. (libungif & libregif both create symbolic
4946 # links to libgif. We also assume that no x11 support is needed,
4947 # because if you are forcing this, then you _should_ know what
4948 # you are doing. [ Besides, package maintainers should never
4949 # have compiled x11 deps into libungif in the first place. ] )
4952 if test "$_force_gif" = yes && test "$_gif" = no
; then
4957 if test "$_gif" = yes ; then
4958 def_gif
='#define CONFIG_GIF 1'
4959 _codecmodules
="gif $_codecmodules"
4960 _vomodules
="gif89a $_vomodules"
4961 _res_comment
="old version, some encoding functions disabled"
4962 def_gif_4
='#undef CONFIG_GIF_4'
4963 extra_ldflags
="$extra_ldflags $_ld_gif"
4967 #include <gif_lib.h>
4968 void catch() { exit(1); }
4970 signal(SIGSEGV, catch); // catch segfault
4971 printf("EGifPutExtensionFirst is at address %p\n", EGifPutExtensionFirst);
4972 EGifSetGifVersion("89a"); // this will segfault a buggy gif lib.
4976 if cc_check
"$_ld_gif" && tmp_run
; then
4977 def_gif_4
='#define CONFIG_GIF_4 1'
4981 def_gif
='#undef CONFIG_GIF'
4982 def_gif_4
='#undef CONFIG_GIF_4'
4983 _novomodules
="gif89a $_novomodules"
4984 _nocodecmodules
="gif $_nocodecmodules"
4989 case "$_gif" in yes*)
4990 echocheck
"broken giflib workaround"
4991 def_gif_tvt_hack
='#define CONFIG_GIF_TVT_HACK 1'
4994 #include <gif_lib.h>
4997 printf("UserData is at address %p\n", gif.UserData);
5001 if cc_check
"$_ld_gif" && tmp_run
; then
5002 def_gif_tvt_hack
='#undef CONFIG_GIF_TVT_HACK'
5011 echocheck
"VESA support"
5012 if test "$_vesa" = auto
; then
5015 int main(void) { vbeVersion(); return 0; }
5018 cc_check
-lvbe -llrmi && _vesa
=yes
5020 if test "$_vesa" = yes ; then
5021 def_vesa
='#define CONFIG_VESA 1'
5022 libs_mplayer
="$libs_mplayer -lvbe -llrmi"
5023 _vomodules
="vesa $_vomodules"
5025 def_vesa
='#undef CONFIG_VESA'
5026 _novomodules
="vesa $_novomodules"
5036 if test -z "$_sdlconfig" ; then
5037 if ( sdl-config
--version ) >>"$TMPLOG" 2>&1 ; then
5038 _sdlconfig
="sdl-config"
5039 elif ( sdl11-config
--version ) >>"$TMPLOG" 2>&1 ; then
5040 _sdlconfig
="sdl11-config"
5045 if test "$_sdl" = auto ||
test "$_sdl" = yes ; then
5048 int main(int argc, char *argv[]) {
5049 SDL_Init(SDL_INIT_VIDEO|SDL_INIT_NOPARACHUTE);
5054 if "$_sdlconfig" --version >>"$TMPLOG" 2>&1 ; then
5055 if cc_check $
($_sdlconfig --cflags) $
($_sdlconfig --libs) >>"$TMPLOG" 2>&1 ; then
5056 _sdlversion
=$
($_sdlconfig --version |
sed 's/[^0-9]//g')
5057 if test "$_sdlversion" -gt 116 ; then
5058 if test "$_sdlversion" -lt 121 ; then
5059 def_sdlbuggy
='#define BUGGY_SDL'
5061 def_sdlbuggy
='#undef BUGGY_SDL'
5068 if test "$_sdl" = yes ; then
5069 def_sdl
='#define CONFIG_SDL 1'
5071 libs_mplayer
="$libs_mplayer $($_sdlconfig --libs | cut -d " " -f 1,4,6 | sed s/no-cygwin/cygwin/)"
5072 extra_cflags
="$extra_cflags $($_sdlconfig --cflags | cut -d " " -f 1,5,6 | sed s/no-cygwin/cygwin/)"
5074 libs_mplayer
="$libs_mplayer $($_sdlconfig --libs | sed -e s/-mwindows// -e s/-lmingw32//)"
5075 extra_cflags
="$extra_cflags $($_sdlconfig --cflags | sed s/-Dmain=SDL_main//)"
5077 libs_mplayer
="$libs_mplayer $($_sdlconfig --libs)"
5078 extra_cflags
="$extra_cflags $($_sdlconfig --cflags | sed s/-D_GNU_SOURCE=1//)"
5080 _vomodules
="sdl $_vomodules"
5081 _aomodules
="sdl $_aomodules"
5082 _res_comment
="using $_sdlconfig"
5084 def_sdl
='#undef CONFIG_SDL'
5085 _novomodules
="sdl $_novomodules"
5086 _noaomodules
="sdl $_noaomodules"
5092 echocheck
"KVA (SNAP/WarpOverlay!/DIVE)"
5093 if test "$_kva" = auto
; then
5097 int main( void ) { return 0; }
5100 cc_check
-lkva && _kva
=yes
5102 if test "$_kva" = yes ; then
5103 def_kva
='#define CONFIG_KVA 1'
5104 libs_mplayer
="$libs_mplayer -lkva"
5105 _vomodules
="kva $_vomodules"
5107 def_kva
='#undef CONFIG_KVA'
5108 _novomodules
="kva $_novomodules"
5116 echocheck
"Windows waveout"
5117 if test "$_win32waveout" = auto
; then
5119 #include <windows.h>
5120 #include <mmsystem.h>
5121 int main(void) { return 0; }
5124 cc_check
-lwinmm && _win32waveout
=yes
5126 if test "$_win32waveout" = yes ; then
5127 def_win32waveout
='#define CONFIG_WIN32WAVEOUT 1'
5128 libs_mplayer
="$libs_mplayer -lwinmm"
5129 _aomodules
="win32 $_aomodules"
5131 def_win32waveout
='#undef CONFIG_WIN32WAVEOUT'
5132 _noaomodules
="win32 $_noaomodules"
5134 echores
"$_win32waveout"
5136 echocheck
"Direct3D"
5137 if test "$_direct3d" = auto
; then
5139 #include <windows.h>
5141 int main(void) { return 0; }
5144 cc_check
-ld3d9 && _direct3d
=yes
5146 if test "$_direct3d" = yes ; then
5147 def_direct3d
='#define CONFIG_DIRECT3D 1'
5148 libs_mplayer
="$libs_mplayer -ld3d9"
5149 _vomodules
="direct3d $_vomodules"
5151 def_direct3d
='#undef CONFIG_DIRECT3D'
5152 _novomodules
="direct3d $_novomodules"
5154 echores
"$_direct3d"
5157 if test "$_directx" = auto
; then
5159 #include <windows.h>
5162 int main(void) { return 0; }
5165 cc_check
-lgdi32 && _directx
=yes
5167 if test "$_directx" = yes ; then
5168 def_directx
='#define CONFIG_DIRECTX 1'
5169 libs_mplayer
="$libs_mplayer -lgdi32"
5170 _vomodules
="directx $_vomodules"
5171 _aomodules
="dsound $_aomodules"
5173 def_directx
='#undef CONFIG_DIRECTX'
5174 _novomodules
="directx $_novomodules"
5175 _noaomodules
="dsound $_noaomodules"
5183 if test "$_dxr2" = auto
; then
5186 #include <dxr2ioctl.h>
5187 int main(void) { return 0; }
5189 for _inc_tmp
in "" -I/usr
/local
/include
/dxr2
-I/usr
/include
/dxr2
; do
5190 cc_check
$_inc_tmp && _dxr2
=yes && \
5191 extra_cflags
="$extra_cflags $_inc_tmp" && break
5194 if test "$_dxr2" = yes; then
5195 def_dxr2
='#define CONFIG_DXR2 1'
5196 _aomodules
="dxr2 $_aomodules"
5197 _vomodules
="dxr2 $_vomodules"
5199 def_dxr2
='#undef CONFIG_DXR2'
5200 _noaomodules
="dxr2 $_noaomodules"
5201 _novomodules
="dxr2 $_novomodules"
5206 if test "$_dxr3" = auto
; then
5208 #include <linux/em8300.h>
5209 int main(void) { return 0; }
5212 cc_check
&& _dxr3
=yes
5214 if test "$_dxr3" = yes ; then
5215 def_dxr3
='#define CONFIG_DXR3 1'
5216 _vomodules
="dxr3 $_vomodules"
5218 def_dxr3
='#undef CONFIG_DXR3'
5219 _novomodules
="dxr3 $_novomodules"
5224 echocheck
"IVTV TV-Out (pre linux-2.6.24)"
5225 if test "$_ivtv" = auto
; then
5228 #include <inttypes.h>
5229 #include <linux/types.h>
5230 #include <linux/videodev2.h>
5231 #include <linux/ivtv.h>
5232 #include <sys/ioctl.h>
5234 struct ivtv_cfg_stop_decode sd;
5235 struct ivtv_cfg_start_decode sd1;
5236 ioctl(0, IVTV_IOC_START_DECODE, &sd1);
5237 ioctl(0, IVTV_IOC_STOP_DECODE, &sd);
5241 cc_check
&& _ivtv
=yes
5243 if test "$_ivtv" = yes ; then
5244 def_ivtv
='#define CONFIG_IVTV 1'
5245 _vomodules
="ivtv $_vomodules"
5246 _aomodules
="ivtv $_aomodules"
5248 def_ivtv
='#undef CONFIG_IVTV'
5249 _novomodules
="ivtv $_novomodules"
5250 _noaomodules
="ivtv $_noaomodules"
5255 echocheck
"V4L2 MPEG Decoder"
5256 if test "$_v4l2" = auto
; then
5259 #include <inttypes.h>
5260 #include <linux/types.h>
5261 #include <linux/videodev2.h>
5262 #include <linux/version.h>
5264 #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22)
5265 #error kernel headers too old, need 2.6.22
5266 bad_kernel_version();
5268 struct v4l2_ext_controls ctrls;
5269 ctrls.ctrl_class = V4L2_CTRL_CLASS_MPEG;
5274 cc_check
&& _v4l2
=yes
5276 if test "$_v4l2" = yes ; then
5277 def_v4l2
='#define CONFIG_V4L2_DECODER 1'
5278 _vomodules
="v4l2 $_vomodules"
5279 _aomodules
="v4l2 $_aomodules"
5281 def_v4l2
='#undef CONFIG_V4L2_DECODER'
5282 _novomodules
="v4l2 $_novomodules"
5283 _noaomodules
="v4l2 $_noaomodules"
5294 echocheck
"OSS Audio"
5295 if test "$_ossaudio" = auto
; then
5297 #include <sys/ioctl.h>
5298 #include <$_soundcard_header>
5299 int main(void) { int arg = SNDCTL_DSP_SETFRAGMENT; return 0; }
5302 cc_check
&& _ossaudio
=yes
5304 if test "$_ossaudio" = yes ; then
5305 def_ossaudio
='#define CONFIG_OSS_AUDIO 1'
5306 _aomodules
="oss $_aomodules"
5307 if test "$_linux_devfs" = yes; then
5308 def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound/dsp"'
5309 def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/sound/mixer"'
5312 #include <sys/ioctl.h>
5313 #include <$_soundcard_header>
5314 #ifdef OPEN_SOUND_SYSTEM
5315 int main(void) { return 0; }
5317 #error Not the real thing
5321 cc_check
&& _real_ossaudio
=yes
5322 if test "$_real_ossaudio" = yes; then
5323 def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
5324 # Check for OSS4 headers (override default headers)
5325 # Does not apply to systems where OSS4 is native (e.g. FreeBSD)
5326 if test -f /etc
/oss.conf
; then
5328 _ossinc
="$OSSLIBDIR/include"
5329 if test -f "$_ossinc/sys/soundcard.h"; then
5330 extra_cflags
="-I$_ossinc $extra_cflags"
5333 elif netbsd || openbsd
; then
5334 def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound"'
5335 extra_ldflags
="$extra_ldflags -lossaudio"
5337 def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
5339 def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/mixer"'
5342 def_ossaudio
='#undef CONFIG_OSS_AUDIO'
5343 def_ossaudio_devdsp
='#define PATH_DEV_DSP ""'
5344 def_ossaudio_devmixer
='#define PATH_DEV_MIXER ""'
5345 _noaomodules
="oss $_noaomodules"
5347 echores
"$_ossaudio"
5351 if test "$_arts" = auto
; then
5353 if ( artsc-config
--version ) >> "$TMPLOG" 2>&1 ; then
5357 int main(void) { return 0; }
5359 cc_check $
(artsc-config
--libs) $
(artsc-config
--cflags) && tmp_run
&& _arts
=yes
5364 if test "$_arts" = yes ; then
5365 def_arts
='#define CONFIG_ARTS 1'
5366 _aomodules
="arts $_aomodules"
5367 libs_mplayer
="$libs_mplayer $(artsc-config --libs)"
5368 extra_cflags
="$extra_cflags $(artsc-config --cflags)"
5370 _noaomodules
="arts $_noaomodules"
5376 if test "$_esd" = auto
; then
5378 if ( esd-config
--version ) >> "$TMPLOG" 2>&1 ; then
5382 int main(void) { int fd = esd_open_sound("test"); return fd; }
5384 cc_check $
(esd-config
--libs) $
(esd-config
--cflags) && _esd
=yes
5390 if test "$_esd" = yes ; then
5391 def_esd
='#define CONFIG_ESD 1'
5392 _aomodules
="esd $_aomodules"
5393 libs_mplayer
="$libs_mplayer $(esd-config --libs)"
5394 extra_cflags
="$extra_cflags $(esd-config --cflags)"
5396 echocheck
"esd_get_latency()"
5399 int main(void) { return esd_get_latency(0); }
5401 cc_check $
(esd-config
--libs) $
(esd-config
--cflags) && _esd_latency
=yes && def_esd_latency
='#define CONFIG_ESD_LATENCY'
5402 echores
"$_esd_latency"
5404 def_esd
='#undef CONFIG_ESD'
5405 def_esd_latency
='#undef CONFIG_ESD_LATENCY'
5406 _noaomodules
="esd $_noaomodules"
5411 if test "$_nas" = auto
; then
5413 #include <audio/audiolib.h>
5414 int main(void) { return 0; }
5417 cc_check
$_ld_lm -laudio -lXt && _nas
=yes
5419 if test "$_nas" = yes ; then
5420 def_nas
='#define CONFIG_NAS 1'
5421 libs_mplayer
="$libs_mplayer -laudio -lXt"
5422 _aomodules
="nas $_aomodules"
5424 _noaomodules
="nas $_noaomodules"
5425 def_nas
='#undef CONFIG_NAS'
5431 if test "$_pulse" = auto
; then
5433 if $_pkg_config --exists 'libpulse >= 0.9' ; then
5436 #include <pulse/pulseaudio.h>
5437 int main(void) { return 0; }
5439 cc_check $
($_pkg_config --libs --cflags libpulse
) && tmp_run
&& _pulse
=yes
5445 if test "$_pulse" = yes ; then
5446 def_pulse
='#define CONFIG_PULSE 1'
5447 _aomodules
="pulse $_aomodules"
5448 libs_mplayer
="$libs_mplayer $($_pkg_config --libs libpulse)"
5449 extra_cflags
="$extra_cflags $($_pkg_config --cflags libpulse)"
5451 def_pulse
='#undef CONFIG_PULSE'
5452 _noaomodules
="pulse $_noaomodules"
5457 if test "$_jack" = auto
; then
5461 #include <jack/jack.h>
5462 int main(void) { jack_client_open("test", JackUseExactName, NULL); return 0; }
5464 if cc_check
-ljack ; then
5465 libs_mplayer
="$libs_mplayer -ljack"
5466 elif cc_check $
($_pkg_config --libs --cflags --silence-errors jack
) ; then
5467 libs_mplayer
="$libs_mplayer $($_pkg_config --libs jack)"
5468 extra_cflags
="$extra_cflags "$
($_pkg_config --cflags jack
)""
5474 if test "$_jack" = yes ; then
5475 def_jack
='#define CONFIG_JACK 1'
5476 _aomodules
="jack $_aomodules"
5478 _noaomodules
="jack $_noaomodules"
5483 if test "$_openal" = auto
; then
5487 #include <OpenAL/al.h>
5492 alSourceQueueBuffers(0, 0, 0);
5493 // alGetSourcei(0, AL_SAMPLE_OFFSET, 0);
5497 for I
in "-lopenal" "-lopenal32" "-framework OpenAL" ; do
5498 cc_check
$I && _openal
=yes && break
5499 cc_check
-DOPENAL_AL_H=1 $I && def_openal_h
='#define OPENAL_AL_H 1' && _openal
=yes && break
5501 test "$_openal" = yes && libs_mplayer
="$libs_mplayer $I"
5503 if test "$_openal" = yes ; then
5504 def_openal
='#define CONFIG_OPENAL 1'
5505 _aomodules
="openal $_aomodules"
5507 _noaomodules
="openal $_noaomodules"
5511 echocheck
"ALSA audio"
5512 if test "$_alloca" != yes ; then
5514 _res_comment
="alloca missing"
5516 if test "$_alsa" != no
; then
5519 #include <sys/time.h>
5520 #include <sys/asoundlib.h>
5521 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 5))
5522 #error "alsa version != 0.5.x"
5524 int main(void) { return 0; }
5526 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.5.x'
5529 #include <sys/time.h>
5530 #include <sys/asoundlib.h>
5531 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
5532 #error "alsa version != 0.9.x"
5534 int main(void) { return 0; }
5536 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.9.x-sys'
5538 #include <sys/time.h>
5539 #include <alsa/asoundlib.h>
5540 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
5541 #error "alsa version != 0.9.x"
5543 int main(void) { return 0; }
5545 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.9.x-alsa'
5548 #include <sys/time.h>
5549 #include <sys/asoundlib.h>
5550 #if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
5551 #error "alsa version != 1.0.x"
5553 int main(void) { return 0; }
5555 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='1.0.x-sys'
5557 #include <sys/time.h>
5558 #include <alsa/asoundlib.h>
5559 #if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
5560 #error "alsa version != 1.0.x"
5562 int main(void) { return 0; }
5564 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='1.0.x-alsa'
5566 def_alsa
='#undef CONFIG_ALSA'
5567 def_alsa5
='#undef CONFIG_ALSA5'
5568 def_alsa9
='#undef CONFIG_ALSA9'
5569 def_alsa1x
='#undef CONFIG_ALSA1X'
5570 def_sys_asoundlib_h
='#undef HAVE_SYS_ASOUNDLIB_H'
5571 def_alsa_asoundlib_h
='#undef HAVE_ALSA_ASOUNDLIB_H'
5572 if test "$_alsaver" ; then
5574 if test "$_alsaver" = '0.5.x' ; then
5576 _aomodules
="alsa5 $_aomodules"
5577 def_alsa5
='#define CONFIG_ALSA5 1'
5578 def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
5579 _res_comment
="using alsa 0.5.x and sys/asoundlib.h"
5580 elif test "$_alsaver" = '0.9.x-sys' ; then
5582 _aomodules
="alsa $_aomodules"
5583 def_alsa
='#define CONFIG_ALSA 1'
5584 def_alsa9
='#define CONFIG_ALSA9 1'
5585 def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
5586 _res_comment
="using alsa 0.9.x and sys/asoundlib.h"
5587 elif test "$_alsaver" = '0.9.x-alsa' ; then
5589 _aomodules
="alsa $_aomodules"
5590 def_alsa
='#define CONFIG_ALSA 1'
5591 def_alsa9
='#define CONFIG_ALSA9 1'
5592 def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
5593 _res_comment
="using alsa 0.9.x and alsa/asoundlib.h"
5594 elif test "$_alsaver" = '1.0.x-sys' ; then
5596 _aomodules
="alsa $_aomodules"
5597 def_alsa
='#define CONFIG_ALSA 1'
5598 def_alsa1x
="#define CONFIG_ALSA1X 1"
5599 def_alsa_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
5600 _res_comment
="using alsa 1.0.x and sys/asoundlib.h"
5601 elif test "$_alsaver" = '1.0.x-alsa' ; then
5603 _aomodules
="alsa $_aomodules"
5604 def_alsa
='#define CONFIG_ALSA 1'
5605 def_alsa1x
="#define CONFIG_ALSA1X 1"
5606 def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
5607 _res_comment
="using alsa 1.0.x and alsa/asoundlib.h"
5610 _res_comment
="unknown version"
5612 extra_ldflags
="$extra_ldflags -lasound $_ld_dl $_ld_pthread"
5614 _noaomodules
="alsa $_noaomodules"
5619 echocheck
"Sun audio"
5620 if test "$_sunaudio" = auto
; then
5622 #include <sys/types.h>
5623 #include <sys/audioio.h>
5624 int main(void) { audio_info_t info; AUDIO_INITINFO(&info); return 0; }
5627 cc_check
&& _sunaudio
=yes
5629 if test "$_sunaudio" = yes ; then
5630 def_sunaudio
='#define CONFIG_SUN_AUDIO 1'
5631 _aomodules
="sun $_aomodules"
5633 def_sunaudio
='#undef CONFIG_SUN_AUDIO'
5634 _noaomodules
="sun $_noaomodules"
5636 echores
"$_sunaudio"
5639 def_mlib
='#define CONFIG_MLIB 0'
5641 echocheck
"Sun mediaLib"
5642 if test "$_mlib" = auto
; then
5646 int main(void) { mlib_VideoColorYUV2ABGR420(0,0,0,0,0,0,0,0,0); return 0; }
5648 cc_check
-lmlib && _mlib
=yes && def_mlib
='#define CONFIG_MLIB 1'
5655 echocheck
"CoreAudio"
5656 if test "$_coreaudio" = auto
; then
5658 #include <CoreAudio/CoreAudio.h>
5659 #include <AudioToolbox/AudioToolbox.h>
5660 #include <AudioUnit/AudioUnit.h>
5661 int main(void) { return 0; }
5664 cc_check
-framework CoreAudio
-framework AudioUnit
-framework AudioToolbox
&& _coreaudio
=yes
5666 if test "$_coreaudio" = yes ; then
5667 libs_mplayer
="$libs_mplayer -framework CoreAudio -framework AudioUnit -framework AudioToolbox"
5668 def_coreaudio
='#define CONFIG_COREAUDIO 1'
5669 _aomodules
="coreaudio $_aomodules"
5671 def_coreaudio
='#undef CONFIG_COREAUDIO'
5672 _noaomodules
="coreaudio $_noaomodules"
5679 echocheck
"SGI audio"
5680 if test "$_sgiaudio" = auto
; then
5681 # check for SGI audio
5683 #include <dmedia/audio.h>
5684 int main(void) { return 0; }
5687 cc_check
&& _sgiaudio
=yes
5689 if test "$_sgiaudio" = "yes" ; then
5690 def_sgiaudio
='#define CONFIG_SGI_AUDIO 1'
5691 libs_mplayer
="$libs_mplayer -laudio"
5692 _aomodules
="sgi $_aomodules"
5694 def_sgiaudio
='#undef CONFIG_SGI_AUDIO'
5695 _noaomodules
="sgi $_noaomodules"
5697 echores
"$_sgiaudio"
5703 if test "$_dart" = auto
; then
5707 int main( void ) { return 0; }
5710 cc_check
-ldart && _dart
=yes
5712 if test "$_dart" = yes ; then
5713 def_dart
='#define CONFIG_DART 1'
5714 libs_mplayer
="$libs_mplayer -ldart"
5715 _aomodules
="dart $_aomodules"
5717 def_dart
='#undef CONFIG_DART'
5718 _noaomodules
="dart $_noaomodules"
5724 # set default CD/DVD devices
5725 if win32 || os2
; then
5726 default_cdrom_device
="D:"
5728 default_cdrom_device
="/dev/disk1"
5729 elif dragonfly
; then
5730 default_cdrom_device
="/dev/cd0"
5732 default_cdrom_device
="/dev/acd0"
5734 default_cdrom_device
="/dev/rcd0a"
5736 default_cdrom_device
="/vol/dev/aliases/cdrom0"
5737 # Modern Solaris versions use HAL instead of the vold daemon, the volfs
5738 # file system and the volfs service.
5739 test -r "/cdrom/cdrom0" && default_cdrom_device
="/cdrom/cdrom0"
5741 default_cdrom_device
="a1ide.device:2"
5743 default_cdrom_device
="/dev/cdrom"
5746 if win32 || os2 || dragonfly || freebsd || openbsd || sunos || amigaos
; then
5747 default_dvd_device
=$default_cdrom_device
5749 default_dvd_device
="/dev/rdiskN"
5751 default_dvd_device
="/dev/dvd"
5755 echocheck
"VCD support"
5756 if test "$_vcd" = auto
; then
5758 if linux || freebsd || netbsd || openbsd || dragonfly || bsdos || darwin || sunos
; then
5762 #include <ddk/ntddcdrm.h>
5763 int main(void) { return 0; }
5765 cc_check
&& _vcd
=yes
5768 if test "$_vcd" = yes; then
5769 _inputmodules
="vcd $_inputmodules"
5770 def_vcd
='#define CONFIG_VCD 1'
5772 def_vcd
='#undef CONFIG_VCD'
5773 _noinputmodules
="vcd $_noinputmodules"
5774 _res_comment
="not supported on this OS"
5781 if test "$_dvdread_internal" = auto
&& test ! -f "libdvdread4/dvd_reader.c" ; then
5782 _dvdread_internal
=no
5784 if test "$_dvdread_internal" = auto
; then
5785 _dvdread_internal
=no
5787 if (linux || freebsd || netbsd || openbsd || dragonfly || sunos || hpux
) \
5788 && (test "$_dvd" = yes ||
test "$_cdrom" = yes ||
test "$_cdio" = yes || \
5789 test "$_dvdio" = yes ||
test "$_bsdi_dvd" = yes) \
5790 || darwin || win32 || os2
; then
5791 _dvdread_internal
=yes
5793 extra_cflags
="-Ilibdvdread4 $extra_cflags"
5795 elif test "$_dvdread" = auto
; then
5797 if test "$_dl" = yes; then
5799 #include <inttypes.h>
5800 #include <dvdread/dvd_reader.h>
5801 #include <dvdread/ifo_types.h>
5802 #include <dvdread/ifo_read.h>
5803 #include <dvdread/nav_read.h>
5804 int main(void) { return 0; }
5806 _dvdreadcflags
=$
($_dvdreadconfig --cflags)
5807 _dvdreadlibs
=$
($_dvdreadconfig --libs)
5808 if cc_check
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE \
5809 $_dvdreadcflags $_dvdreadlibs $_ld_dl ; then
5811 extra_cflags
="$extra_cflags $_dvdreadcflags"
5812 extra_ldflags
="$extra_ldflags $_dvdreadlibs"
5813 _res_comment
="external"
5818 if test "$_dvdread_internal" = yes; then
5819 def_dvdread
='#define CONFIG_DVDREAD 1'
5820 _inputmodules
="dvdread(internal) $_inputmodules"
5822 _res_comment
="internal"
5823 elif test "$_dvdread" = yes; then
5824 def_dvdread
='#define CONFIG_DVDREAD 1'
5826 extra_ldflags
="$extra_ldflags -ldvdread"
5827 _inputmodules
="dvdread(external) $_inputmodules"
5828 _res_comment
="external"
5830 def_dvdread
='#undef CONFIG_DVDREAD'
5831 _noinputmodules
="dvdread $_noinputmodules"
5836 echocheck
"internal libdvdcss"
5837 if test "$_libdvdcss_internal" = auto
; then
5838 _libdvdcss_internal
=no
5839 test "$_dvdread_internal" = yes && _libdvdcss_internal
=yes
5840 hpux
&& test "$_hpux_scsi_h" = no
&& _libdvdcss_internal
=no
5842 if test "$_libdvdcss_internal" = yes ; then
5843 if linux || netbsd || openbsd || bsdos
; then
5844 def_dvd_linux
='#define HAVE_LINUX_DVD_STRUCT 1'
5845 openbsd
&& def_dvd_openbsd
='#define HAVE_OPENBSD_DVD_STRUCT 1'
5846 elif freebsd || dragonfly
; then
5847 def_dvd_bsd
='#define HAVE_BSD_DVD_STRUCT 1'
5849 def_dvd_darwin
='#define DARWIN_DVD_IOCTL'
5850 extra_ldflags
="$extra_ldflags -framework IOKit -framework Carbon"
5852 cflags_libdvdcss
="-DSYS_CYGWIN -DWIN32"
5854 cflags_libdvdcss
="-DSYS_BEOS"
5856 cflags_libdvdcss
="-DSYS_OS2"
5858 cflags_libdvdcss_dvdread
="-Ilibdvdcss"
5859 def_dvdcss
="#define HAVE_DVDCSS_DVDCSS_H 1"
5860 _inputmodules
="libdvdcss(internal) $_inputmodules"
5863 _noinputmodules
="libdvdcss(internal) $_noinputmodules"
5865 echores
"$_libdvdcss_internal"
5868 echocheck
"cdparanoia"
5869 if test "$_cdparanoia" = auto
; then
5871 #include <cdda_interface.h>
5872 #include <cdda_paranoia.h>
5873 // This need a better test. How ?
5874 int main(void) { void *test = cdda_verbose_set; return test == (void *)1; }
5877 for _inc_tmp
in "" "-I/usr/include/cdda" "-I/usr/local/include/cdda" ; do
5878 cc_check
$_inc_tmp -lcdda_interface -lcdda_paranoia $_ld_lm && \
5879 _cdparanoia
=yes && extra_cflags
="$extra_cflags $_inc_tmp" && break
5882 if test "$_cdparanoia" = yes ; then
5884 extra_ldflags
="$extra_ldflags -lcdda_interface -lcdda_paranoia"
5885 openbsd
&& extra_ldflags
="$extra_ldflags -lutil"
5887 echores
"$_cdparanoia"
5891 if test "$_libcdio" = auto
&& test "$_cdparanoia" = no
; then
5894 #include <cdio/version.h>
5895 #include <cdio/cdda.h>
5896 #include <cdio/paranoia.h>
5898 void *test = cdda_verbose_set;
5899 printf("%s\n", CDIO_VERSION);
5900 return test == (void *)1;
5904 for _ld_tmp
in "" "-lwinmm" ; do
5905 _ld_tmp
="-lcdio_cdda -lcdio -lcdio_paranoia $_ld_tmp"
5906 cc_check
$_ld_tmp $_ld_lm \
5907 && _libcdio
=yes && extra_ldflags
="$extra_ldflags $_ld_tmp" && break
5909 if test "$_libcdio" = no
&& $_pkg_config --exists libcdio_paranoia
; then
5910 _inc_tmp
=$
($_pkg_config --cflags libcdio_paranoia
)
5911 _ld_tmp
=$
($_pkg_config --libs libcdio_paranoia
)
5912 cc_check
$_inc_tmp $_ld_tmp $_ld_lm && _libcdio
=yes \
5913 && extra_ldflags
="$extra_ldflags $_ld_tmp" && extra_cflags
="$extra_cflags $_inc_tmp"
5916 if test "$_libcdio" = yes && test "$_cdparanoia" = no
; then
5918 def_libcdio
='#define CONFIG_LIBCDIO'
5919 def_havelibcdio
='yes'
5921 if test "$_cdparanoia" = yes ; then
5922 _res_comment
="using cdparanoia"
5924 def_libcdio
='#undef CONFIG_LIBCDIO'
5925 def_havelibcdio
='no'
5929 if test "$_cdda" = yes ; then
5930 test $_cddb = auto
&& test $_network = yes && _cddb
=yes
5931 def_cdparanoia
='#define CONFIG_CDDA'
5932 _inputmodules
="cdda $_inputmodules"
5934 def_cdparanoia
='#undef CONFIG_CDDA'
5935 _noinputmodules
="cdda $_noinputmodules"
5938 if test "$_cddb" = yes ; then
5939 def_cddb
='#define CONFIG_CDDB'
5940 _inputmodules
="cddb $_inputmodules"
5943 def_cddb
='#undef CONFIG_CDDB'
5944 _noinputmodules
="cddb $_noinputmodules"
5947 echocheck
"bitmap font support"
5948 if test "$_bitmap_font" = yes ; then
5949 def_bitmap_font
="#define CONFIG_BITMAP_FONT 1"
5951 def_bitmap_font
="#undef CONFIG_BITMAP_FONT"
5953 echores
"$_bitmap_font"
5956 echocheck
"freetype >= 2.0.9"
5958 # freetype depends on iconv
5959 if test "$_iconv" = no
; then
5961 _res_comment
="iconv support needed"
5964 if test "$_freetype" = auto
; then
5965 if ( $_freetypeconfig --version ) >/dev
/null
2>&1 ; then
5968 #include <ft2build.h>
5969 #include FT_FREETYPE_H
5970 #if ((FREETYPE_MAJOR < 2) || ((FREETYPE_MINOR == 0) && (FREETYPE_PATCH < 9)))
5971 #error "Need FreeType 2.0.9 or newer"
5975 FT_Int major=-1,minor=-1,patch=-1;
5976 int err=FT_Init_FreeType(&library);
5978 printf("Couldn't initialize freetype2 lib, err code: %d\n",err);
5981 FT_Library_Version(library,&major,&minor,&patch); // in v2.1.0+ only :(((
5982 printf("freetype2 header version: %d.%d.%d library version: %d.%d.%d\n",
5983 FREETYPE_MAJOR,FREETYPE_MINOR,FREETYPE_PATCH,
5984 (int)major,(int)minor,(int)patch );
5985 if (major!=FREETYPE_MAJOR || minor!=FREETYPE_MINOR) {
5986 printf("Library and header version mismatch! Fix it in your distribution!\n");
5993 cc_check $
($_freetypeconfig --cflags) $
($_freetypeconfig --libs) && tmp_run
&& _freetype
=yes
5998 if test "$_freetype" = yes ; then
5999 def_freetype
='#define CONFIG_FREETYPE'
6000 extra_cflags
="$extra_cflags $($_freetypeconfig --cflags)"
6001 extra_ldflags
="$extra_ldflags $($_freetypeconfig --libs)"
6003 def_freetype
='#undef CONFIG_FREETYPE'
6005 echores
"$_freetype"
6007 if test "$_freetype" = no
; then
6009 _res_comment
="FreeType support needed"
6011 echocheck
"fontconfig"
6012 if test "$_fontconfig" = auto
; then
6016 #include <fontconfig/fontconfig.h>
6019 if (err == FcFalse) {
6020 printf("Couldn't initialize fontconfig lib\n");
6027 for _ld_tmp
in "" "-lexpat -lfreetype" "-lexpat -lfreetype -lz" ; do
6028 _ld_tmp
="-lfontconfig $_ld_tmp"
6029 cc_check
$_ld_tmp && _fontconfig
=yes && extra_ldflags
="$extra_ldflags $_ld_tmp" && break
6031 if test "$_fontconfig" = no
&& $_pkg_config --exists fontconfig
; then
6032 _inc_tmp
=$
($_pkg_config --cflags fontconfig
)
6033 _ld_tmp
=$
($_pkg_config --libs fontconfig
)
6034 cc_check
$_inc_tmp $_ld_tmp && _fontconfig
=yes \
6035 && extra_ldflags
="$extra_ldflags $_ld_tmp" && extra_cflags
="$extra_cflags $_inc_tmp"
6038 if test "$_fontconfig" = yes ; then
6039 def_fontconfig
='#define CONFIG_FONTCONFIG'
6041 def_fontconfig
='#undef CONFIG_FONTCONFIG'
6043 echores
"$_fontconfig"
6046 echocheck
"SSA/ASS support"
6047 if test "$_ass" = auto
-o "$_ass" = yes ; then
6048 if $_pkg_config libass
; then
6050 def_ass
='#define CONFIG_ASS'
6051 extra_ldflags
="$extra_ldflags $($_pkg_config --libs libass)"
6052 extra_cflags
="$extra_cflags $($_pkg_config --cflags libass)"
6055 def_ass
='#undef CONFIG_ASS'
6058 def_ass
='#undef CONFIG_ASS'
6063 echocheck
"fribidi with charsets"
6064 if test "$_fribidi" = auto
; then
6065 if ( $_fribidiconfig --version ) >/dev
/null
2>&1 ; then
6068 /* workaround for fribidi 0.10.4 and below */
6069 #define FRIBIDI_CHARSET_UTF8 FRIBIDI_CHAR_SET_UTF8
6070 #include <fribidi/fribidi.h>
6072 if (fribidi_parse_charset("UTF-8") != FRIBIDI_CHAR_SET_UTF8) {
6073 printf("Fribidi headers are not consistents with the library!\n");
6080 cc_check $
($_fribidiconfig --cflags) $
($_fribidiconfig --libs) && tmp_run
&& _fribidi
=yes
6085 if test "$_fribidi" = yes ; then
6086 def_fribidi
='#define CONFIG_FRIBIDI'
6087 extra_cflags
="$extra_cflags $($_fribidiconfig --cflags)"
6088 extra_ldflags
="$extra_ldflags $($_fribidiconfig --libs)"
6090 def_fribidi
='#undef CONFIG_FRIBIDI'
6096 if test "$_enca" = auto
; then
6098 #include <sys/types.h>
6103 langs = enca_get_languages(&langcnt);
6108 cc_check
-lenca $_ld_lm && _enca
=yes
6110 if test "$_enca" = yes ; then
6111 def_enca
='#define CONFIG_ENCA 1'
6112 extra_ldflags
="$extra_ldflags -lenca"
6114 def_enca
='#undef CONFIG_ENCA'
6122 int main(void) { (void) inflate(0, Z_NO_FLUSH); return 0; }
6125 cc_check
-lz && _zlib
=yes
6126 if test "$_zlib" = yes ; then
6127 def_zlib
='#define CONFIG_ZLIB 1'
6128 extra_ldflags
="$extra_ldflags -lz"
6130 def_zlib
='#define CONFIG_ZLIB 0'
6137 def_bzlib
='#define CONFIG_BZLIB 0'
6140 int main(void) { BZ2_bzlibVersion(); return 0; }
6142 cc_check
-lbz2 && bzlib
=yes
6143 if test "$bzlib" = yes ; then
6144 def_bzlib
='#define CONFIG_BZLIB 1'
6145 extra_ldflags
="$extra_ldflags -lbz2"
6151 if test "$_rtc" = auto
; then
6153 #include <sys/ioctl.h>
6155 #include <linux/rtc.h>
6158 #define RTC_PIE_ON RTCIO_PIE_ON
6160 int main(void) { return RTC_PIE_ON; }
6163 cc_check
&& _rtc
=yes
6166 if test "$_rtc" = yes ; then
6167 def_rtc
='#define HAVE_RTC 1'
6169 def_rtc
='#undef HAVE_RTC'
6174 echocheck
"liblzo2 support"
6175 if test "$_liblzo" = auto
; then
6178 #include <lzo/lzo1x.h>
6179 int main(void) { lzo_init();return 0; }
6181 cc_check
-llzo2 && _liblzo
=yes
6183 if test "$_liblzo" = yes ; then
6184 def_liblzo
='#define CONFIG_LIBLZO 1'
6185 extra_ldflags
="$extra_ldflags -llzo2"
6186 _codecmodules
="liblzo $_codecmodules"
6188 def_liblzo
='#undef CONFIG_LIBLZO'
6189 _nocodecmodules
="liblzo $_nocodecmodules"
6194 echocheck
"mad support"
6195 if test "$_mad" = auto
; then
6199 int main(void) { return 0; }
6201 cc_check
-lmad && _mad
=yes
6203 if test "$_mad" = yes ; then
6204 def_mad
='#define CONFIG_LIBMAD 1'
6205 extra_ldflags
="$extra_ldflags -lmad"
6206 _codecmodules
="libmad $_codecmodules"
6208 def_mad
='#undef CONFIG_LIBMAD'
6209 _nocodecmodules
="libmad $_nocodecmodules"
6214 if test "$_twolame" = auto
; then
6216 #include <twolame.h>
6217 int main(void) { twolame_init(); return 0; }
6220 cc_check
-ltwolame $_ld_lm && _twolame
=yes
6222 if test "$_twolame" = yes ; then
6223 def_twolame
='#define CONFIG_TWOLAME 1'
6224 libs_mencoder
="$libs_mencoder -ltwolame"
6225 _codecmodules
="twolame $_codecmodules"
6227 def_twolame
='#undef CONFIG_TWOLAME'
6228 _nocodecmodules
="twolame $_nocodecmodules"
6233 if test "$_toolame" = auto
; then
6235 if test "$_twolame" = yes ; then
6236 _res_comment
="disabled by twolame"
6239 #include <toolame.h>
6240 int main(void) { toolame_init(); return 0; }
6242 cc_check
-ltoolame $_ld_lm && _toolame
=yes
6245 if test "$_toolame" = yes ; then
6246 def_toolame
='#define CONFIG_TOOLAME 1'
6247 libs_mencoder
="$libs_mencoder -ltoolame"
6248 _codecmodules
="toolame $_codecmodules"
6250 def_toolame
='#undef CONFIG_TOOLAME'
6251 _nocodecmodules
="toolame $_nocodecmodules"
6253 if test "$_toolamedir" ; then
6254 _res_comment
="using $_toolamedir"
6258 echocheck
"OggVorbis support"
6259 if test "$_tremor_internal" = yes; then
6261 elif test "$_tremor" = auto
; then
6264 #include <tremor/ivorbiscodec.h>
6265 int main(void) { vorbis_packet_blocksize(0,0); return 0; }
6267 cc_check
-logg -lvorbisidec $_ld_lm && _tremor
=yes && _libvorbis
=no
6269 if test "$_libvorbis" = auto
; then
6272 #include <vorbis/codec.h>
6273 int main(void) { vorbis_packet_blocksize(0,0); return 0; }
6275 cc_check
-lvorbis -logg $_ld_lm && _libvorbis
=yes
6277 if test "$_tremor_internal" = yes ; then
6279 def_vorbis
='#define CONFIG_OGGVORBIS 1'
6280 def_tremor
='#define CONFIG_TREMOR 1'
6281 _codecmodules
="tremor(internal) $_codecmodules"
6282 _res_comment
="internal Tremor"
6283 if test "$_tremor_low" = yes ; then
6284 cflags_tremor_low
="-D_LOW_ACCURACY_"
6285 _res_comment
="internal low accuracy Tremor"
6287 elif test "$_tremor" = yes ; then
6289 def_vorbis
='#define CONFIG_OGGVORBIS 1'
6290 def_tremor
='#define CONFIG_TREMOR 1'
6291 _codecmodules
="tremor(external) $_codecmodules"
6292 _res_comment
="external Tremor"
6293 extra_ldflags
="$extra_ldflags -logg -lvorbisidec"
6294 elif test "$_libvorbis" = yes ; then
6296 def_vorbis
='#define CONFIG_OGGVORBIS 1'
6297 _codecmodules
="libvorbis $_codecmodules"
6298 _res_comment
="libvorbis"
6299 extra_ldflags
="$extra_ldflags -lvorbis -logg"
6302 _nocodecmodules
="libvorbis $_nocodecmodules"
6306 echocheck
"libspeex (version >= 1.1 required)"
6307 if test "$_speex" = auto
; then
6310 #include <speex/speex.h>
6311 int main(void) { SpeexBits bits; void *dec; speex_decode_int(dec, &bits, dec); return 0; }
6313 cc_check
-lspeex $_ld_lm && _speex
=yes
6315 if test "$_speex" = yes ; then
6316 def_speex
='#define CONFIG_SPEEX 1'
6317 extra_ldflags
="$extra_ldflags -lspeex"
6318 _codecmodules
="speex $_codecmodules"
6320 def_speex
='#undef CONFIG_SPEEX'
6321 _nocodecmodules
="speex $_nocodecmodules"
6325 echocheck
"OggTheora support"
6326 if test "$_theora" = auto
; then
6329 #include <theora/theora.h>
6332 /* Theora is in flux, make sure that all interface routines and datatypes
6333 * exist and work the way we expect it, so we don't break MPlayer. */
6342 theora_info_init(&inf);
6343 theora_comment_init(&tc);
6347 /* we don't want to execute this kind of nonsense; just for making sure
6348 * that compilation works... */
6349 memset(&op, 0, sizeof(op));
6350 r = theora_decode_header(&inf, &tc, &op);
6351 r = theora_decode_init(&st, &inf);
6352 t = theora_granule_time(&st, op.granulepos);
6353 r = theora_decode_packetin(&st, &op);
6354 r = theora_decode_YUVout(&st, &yuv);
6360 _ld_theora
=$
($_pkg_config --silence-errors --libs theora
)
6361 _inc_theora
=$
($_pkg_config --silence-errors --cflags theora
)
6362 cc_check
$_inc_theora $_ld_theora && extra_ldflags
="$extra_ldflags $_ld_theora" &&
6363 extra_cflags
="$extra_cflags $_inc_theora" && _theora
=yes
6364 if test _theora
= no
; then
6365 _ld_theora
="-ltheora -logg"
6366 cc_check
$_ld_theora && extra_ldflags
="$extra_ldflags $_ld_theora" && _theora
=yes
6368 if test "$_theora" = no
&& test "$_tremor_internal" = yes; then
6369 _ld_theora
=$
($_pkg_config --silence-errors --libs theora
)
6370 _inc_theora
=$
($_pkg_config --silence-errors --cflags theora
)
6371 cc_check tremor
/bitwise.c
$_inc_theora $_ld_theora &&
6372 extra_ldflags
="$extra_ldflags $_ld_theora" &&
6373 extra_cflags
="$extra_cflags $_inc_theora" && _theora
=yes
6374 if test _theora
= no
; then
6375 _ld_theora
="-ltheora -logg"
6376 cc_check tremor
/bitwise.c
$_ld_theora &&
6377 extra_ldflags
="$extra_ldflags $_ld_theora" && _theora
=yes
6381 if test "$_theora" = yes ; then
6382 def_theora
='#define CONFIG_OGGTHEORA 1'
6383 _codecmodules
="libtheora $_codecmodules"
6384 # when --enable-theora is forced, we'd better provide a probably sane
6385 # $_ld_theora than nothing
6386 test -z "$_ld_theora" && extra_ldflags
="$extra_ldflags -ltheora -logg"
6388 def_theora
='#undef CONFIG_OGGTHEORA'
6389 _nocodecmodules
="libtheora $_nocodecmodules"
6393 echocheck
"internal mp3lib support"
6394 if test "$_mp3lib" = auto
; then
6395 test "$cc_vendor" = intel
&& test "$_cc_major" -le 10 -o "$_cc_major" -eq 11 -a "$_cc_minor" -eq 0 && _mp3lib
=no || _mp3lib
=yes
6397 if test "$_mp3lib" = yes ; then
6398 def_mp3lib
='#define CONFIG_MP3LIB 1'
6399 _codecmodules
="mp3lib(internal) $_codecmodules"
6401 def_mp3lib
='#undef CONFIG_MP3LIB'
6402 _nocodecmodules
="mp3lib(internal) $_nocodecmodules"
6406 echocheck
"liba52 support"
6407 if test "$_liba52_internal" = auto
; then
6408 test "$cc_vendor" = intel
&& test "$_cc_major" -le 10 -o "$_cc_major" -eq 11 -a "$_cc_minor" -eq 0 && _liba52_internal
=no || _liba52_internal
=yes
6410 def_liba52
='#undef CONFIG_LIBA52'
6411 def_liba52_internal
="#undef CONFIG_LIBA52_INTERNAL"
6412 if test "$_liba52_internal" = yes ; then
6414 def_liba52_internal
="#define CONFIG_LIBA52_INTERNAL 1"
6415 _res_comment
="internal"
6416 elif test "$_liba52_internal" = no
&& test "$_liba52" = auto
; then
6419 #include <inttypes.h>
6420 #include <a52dec/a52.h>
6421 int main(void) { a52_state_t *testHand; testHand=a52_init(0); return 0; }
6423 cc_check
-la52 && _liba52
=yes && _res_comment
="external" && extra_ldflags
="$extra_ldflags -la52"
6425 if test "$_liba52" = yes ; then
6426 def_liba52
='#define CONFIG_LIBA52 1'
6427 _codecmodules
="liba52($_res_comment) $_codecmodules"
6429 _nocodecmodules
="liba52 $_nocodecmodules"
6433 echocheck
"internal libmpeg2 support"
6434 if test "$_libmpeg2" = auto
; then
6436 if alpha
&& test cc_vendor
=gnu
; then
6438 2*|
3.0*|
3.1*) # cannot compile MVI instructions
6440 _res_comment
="broken gcc"
6445 if test "$_libmpeg2" = yes ; then
6446 def_libmpeg2
='#define CONFIG_LIBMPEG2 1'
6447 _codecmodules
="libmpeg2(internal) $_codecmodules"
6449 def_libmpeg2
='#undef CONFIG_LIBMPEG2'
6450 _nocodecmodules
="libmpeg2(internal) $_nocodecmodules"
6452 echores
"$_libmpeg2"
6454 echocheck
"libdca support"
6455 if test "$_libdca" = auto
; then
6458 #include <inttypes.h>
6460 int main(void) { dts_init(0); return 0; }
6462 for _ld_dca
in -ldts -ldca ; do
6463 cc_check
$_ld_dca $_ld_lm && extra_ldflags
="$extra_ldflags $_ld_dca" \
6464 && _libdca
=yes && break
6467 if test "$_libdca" = yes ; then
6468 def_libdca
='#define CONFIG_LIBDCA 1'
6469 _codecmodules
="libdca $_codecmodules"
6471 def_libdca
='#undef CONFIG_LIBDCA'
6472 _nocodecmodules
="libdca $_nocodecmodules"
6476 echocheck
"libmpcdec (musepack, version >= 1.2.1 required)"
6477 if test "$_musepack" = auto
; then
6481 #include <mpcdec/mpcdec.h>
6483 mpc_streaminfo info;
6484 mpc_decoder decoder;
6485 mpc_decoder_set_streaminfo(&decoder, &info);
6486 mpc_decoder_decode_frame(&decoder, NULL, 0, NULL);
6490 cc_check
-lmpcdec $_ld_lm && _musepack
=yes
6492 if test "$_musepack" = yes ; then
6493 def_musepack
='#define CONFIG_MUSEPACK 1'
6494 extra_ldflags
="$extra_ldflags -lmpcdec"
6495 _codecmodules
="musepack $_codecmodules"
6497 def_musepack
='#undef CONFIG_MUSEPACK'
6498 _nocodecmodules
="musepack $_nocodecmodules"
6500 echores
"$_musepack"
6503 echocheck
"FAAC support"
6504 if test "$_faac" = auto
; then
6506 #include <inttypes.h>
6508 int main(void) { unsigned long x, y; faacEncOpen(48000, 2, &x, &y); return 0; }
6511 for _ld_faac
in "-lfaac" "-lfaac -lmp4v2 -lstdc++" ; do
6512 cc_check
-O2 $_ld_faac $_ld_lm && libs_mencoder
="$libs_mencoder $_ld_faac" && _faac
=yes && break
6515 if test "$_faac" = yes ; then
6516 def_faac
="#define CONFIG_FAAC 1"
6517 _codecmodules
="faac $_codecmodules"
6519 def_faac
="#undef CONFIG_FAAC"
6520 _nocodecmodules
="faac $_nocodecmodules"
6525 echocheck
"FAAD2 support"
6526 if test "$_faad_internal" = auto
; then
6527 if x86_32
&& test cc_vendor
=gnu
; then
6529 3.1*|
3.2) # ICE/insn with these versions
6531 _res_comment
="broken gcc"
6543 if test "$_faad" = auto
; then
6546 #ifndef FAAD_MIN_STREAMSIZE
6547 #error Too old version
6549 int main(void) { faacDecHandle testhand; faacDecFrameInfo testinfo;
6550 testhand = faacDecOpen(); faacDecInit(0, 0, 0, 0, 0); return 0; }
6552 cc_check
-lfaad $_ld_lm && _faad
=yes
6555 def_faad
='#undef CONFIG_FAAD'
6556 def_faad_internal
="#undef CONFIG_FAAD_INTERNAL"
6557 if test "$_faad_internal" = yes ; then
6558 def_faad_internal
="#define CONFIG_FAAD_INTERNAL 1"
6559 _res_comment
="internal floating-point"
6560 if test "$_faad_fixed" = yes ; then
6561 # The FIXED_POINT implementation of FAAD2 improves performance
6562 # on some platforms, especially for SBR files.
6563 cflags_faad_fixed
="-DFIXED_POINT"
6564 _res_comment
="internal fixed-point"
6566 elif test "$_faad" = yes ; then
6567 extra_ldflags
="$extra_ldflags -lfaad"
6570 if test "$_faad" = yes ; then
6571 def_faad
='#define CONFIG_FAAD 1'
6572 if test "$_faad_internal" = yes ; then
6573 _codecmodules
="faad2(internal) $_codecmodules"
6575 _codecmodules
="faad2 $_codecmodules"
6579 _nocodecmodules
="faad2 $_nocodecmodules"
6584 echocheck
"LADSPA plugin support"
6585 if test "$_ladspa" = auto
; then
6590 const LADSPA_Descriptor *ld = NULL;
6595 cc_check
&& _ladspa
=yes
6597 if test "$_ladspa" = yes; then
6598 def_ladspa
="#define CONFIG_LADSPA"
6600 def_ladspa
="#undef CONFIG_LADSPA"
6605 echocheck
"libbs2b audio filter support"
6606 if test "$_libbs2b" = auto
; then
6609 #if BS2B_VERSION_MAJOR < 3
6610 #error Please use libbs2b >= 3.0.0, older versions are not supported.
6620 if $_pkg_config --exists libbs2b
; then
6621 _inc_tmp
=$
($_pkg_config --cflags libbs2b
)
6622 _ld_tmp
=$
($_pkg_config --libs libbs2b
)
6623 cc_check
$_inc_tmp $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" &&
6624 extra_cflags
="$extra_cflags $_inc_tmp" && _libbs2b
=yes
6626 for _inc_tmp
in "" -I/usr
/include
/bs2b
-I/usr
/local
/include \
6627 -I/usr
/local
/include
/bs2b
; do
6628 if cc_check
$_inc_tmp $_ld_lm -lbs2b ; then
6629 extra_ldflags
="$extra_ldflags -lbs2b"
6630 extra_cflags
="$extra_cflags $_inc_tmp"
6637 def_libbs2b
="#undef CONFIG_LIBBS2B"
6638 test "$_libbs2b" = yes && def_libbs2b
="#define CONFIG_LIBBS2B"
6642 if test -z "$_codecsdir" ; then
6643 for dir
in "$_libdir/codecs" "$_libdir/win32" /usr
/local
/lib
/codecs \
6644 /usr
/lib
/codecs
/usr
/local
/lib
/win32
/usr
/lib
/win32
; do
6645 if test -d "$dir" ; then
6651 # Fall back on default directory.
6652 if test -z "$_codecsdir" ; then
6653 _codecsdir
="$_libdir/codecs"
6654 mingw32
&& _codecsdir
="codecs"
6655 os2
&& _codecsdir
="codecs"
6659 echocheck
"Win32 codecs"
6660 if test "$_win32dll" = auto
; then
6662 if x86_32
&& ! qnx
; then
6666 if test "$_win32dll" = yes ; then
6667 def_win32dll
='#define CONFIG_WIN32DLL 1'
6668 test -z "$_win32codecsdir" && _win32codecsdir
=$_codecsdir
6669 _res_comment
="using $_win32codecsdir"
6671 def_win32_loader
='#define WIN32_LOADER 1'
6672 _win32_emulation
=yes
6674 extra_ldflags
="$extra_ldflags -ladvapi32 -lole32"
6675 _res_comment
="using native windows"
6677 _codecmodules
="win32 $_codecmodules"
6679 def_win32dll
='#undef CONFIG_WIN32DLL'
6680 def_win32_loader
='#undef WIN32_LOADER'
6681 _nocodecmodules
="win32 $_nocodecmodules"
6683 echores
"$_win32dll"
6686 echocheck
"XAnim codecs"
6687 if test "$_xanim" = auto
; then
6689 _res_comment
="dynamic loader support needed"
6690 if test "$_dl" = yes ; then
6694 if test "$_xanim" = yes ; then
6695 test -z "$_xanimcodecsdir" && _xanimcodecsdir
=$_codecsdir
6696 def_xanim
='#define CONFIG_XANIM 1'
6697 def_xanim_path
="#define XACODEC_PATH \"$_xanimcodecsdir\""
6698 _codecmodules
="xanim $_codecmodules"
6699 _res_comment
="using $_xanimcodecsdir"
6701 def_xanim
='#undef CONFIG_XANIM'
6702 def_xanim_path
='#undef XACODEC_PATH'
6703 _nocodecmodules
="xanim $_nocodecmodules"
6708 echocheck
"RealPlayer codecs"
6709 if test "$_real" = auto
; then
6711 _res_comment
="dynamic loader support needed"
6712 if test "$_dl" = yes ||
test "$_win32dll" = yes &&
6713 (linux || freebsd || netbsd || openbsd || dragonfly || darwin || win32
) ; then
6717 if test "$_real" = yes ; then
6718 test -z "$_realcodecsdir" && _realcodecsdir
="$_codecsdir"
6719 def_real
='#define CONFIG_REALCODECS 1'
6720 def_real_path
="#define REALCODEC_PATH \"$_realcodecsdir\""
6721 _codecmodules
="real $_codecmodules"
6722 _res_comment
="using $_realcodecsdir"
6724 def_real
='#undef CONFIG_REALCODECS'
6725 def_real_path
="#undef REALCODEC_PATH"
6726 _nocodecmodules
="real $_nocodecmodules"
6731 echocheck
"QuickTime codecs"
6733 def_qtx_win32
='#undef CONFIG_QTX_CODECS_WIN32'
6734 if test "$_qtx" = auto
; then
6735 test "$_win32dll" = yes ||
test "$quicktime" = yes && _qtx
=yes
6737 if test "$_qtx" = yes ; then
6738 def_qtx
='#define CONFIG_QTX_CODECS 1'
6739 win32
&& _qtx_codecs_win32
=yes && def_qtx_win32
='#define CONFIG_QTX_CODECS_WIN32 1'
6740 _codecmodules
="qtx $_codecmodules"
6741 darwin || win32 || _qtx_emulation
=yes
6743 def_qtx
='#undef CONFIG_QTX_CODECS'
6744 _nocodecmodules
="qtx $_nocodecmodules"
6748 echocheck
"Nemesi Streaming Media libraries"
6749 if test "$_nemesi" = auto
&& test "$_network" = yes ; then
6751 if $_pkg_config libnemesi
--atleast-version=0.6.3 ; then
6752 extra_cflags
="$extra_cflags $($_pkg_config --cflags libnemesi)"
6753 extra_ldflags
="$extra_ldflags $($_pkg_config --libs libnemesi)"
6757 if test "$_nemesi" = yes; then
6759 def_nemesi
='#define CONFIG_LIBNEMESI 1'
6760 _inputmodules
="nemesi $_inputmodules"
6762 _native_rtsp
="$_network"
6764 def_nemesi
='#undef CONFIG_LIBNEMESI'
6765 _noinputmodules
="nemesi $_noinputmodules"
6769 echocheck
"LIVE555 Streaming Media libraries"
6770 if test "$_live" = auto
&& test "$_network" = yes ; then
6771 cat > $TMPCPP << EOF
6772 #include <liveMedia.hh>
6773 #if (LIVEMEDIA_LIBRARY_VERSION_INT < 1141257600)
6774 #error Please upgrade to version 2006.03.03 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
6776 int main(void) { return 0; }
6780 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
6781 cxx_check
$I/liveMedia
/include
$I/UsageEnvironment
/include \
6782 $I/groupsock
/include
&& _livelibdir
=$
(echo $I|
sed s
/-I//) && \
6783 extra_ldflags
="$_livelibdir/liveMedia/libliveMedia.a \
6784 $_livelibdir/groupsock/libgroupsock.a \
6785 $_livelibdir/UsageEnvironment/libUsageEnvironment.a \
6786 $_livelibdir/BasicUsageEnvironment/libBasicUsageEnvironment.a \
6787 $extra_ldflags -lstdc++" \
6788 extra_cxxflags
="-I$_livelibdir/liveMedia/include \
6789 -I$_livelibdir/UsageEnvironment/include \
6790 -I$_livelibdir/BasicUsageEnvironment/include \
6791 -I$_livelibdir/groupsock/include" && \
6794 if test "$_live" != yes ; then
6795 ld_tmp
="-lliveMedia -lgroupsock -lUsageEnvironment -lBasicUsageEnvironment -lstdc++"
6796 if cxx_check
-I/usr
/include
/liveMedia
-I/usr
/include
/UsageEnvironment
-I/usr
/include
/groupsock
$ld_tmp; then
6801 if test "$_live" = yes && test "$_network" = yes; then
6802 test $_livelibdir && _res_comment
="using $_livelibdir"
6803 def_live
='#define CONFIG_LIVE555 1'
6804 _inputmodules
="live555 $_inputmodules"
6805 elif test "$_live_dist" = yes && test "$_network" = yes; then
6806 _res_comment
="using distribution version"
6808 def_live
='#define CONFIG_LIVE555 1'
6809 extra_ldflags
="$extra_ldflags $ld_tmp"
6810 extra_cxxflags
="-I/usr/include/liveMedia -I/usr/include/UsageEnvironment \
6811 -I/usr/include/BasicUsageEnvironment -I/usr/include/groupsock"
6812 _inputmodules
="live555 $_inputmodules"
6815 def_live
='#undef CONFIG_LIVE555'
6816 _noinputmodules
="live555 $_noinputmodules"
6821 echocheck
"FFmpeg libavutil"
6822 if test "$_libavutil" = auto
; then
6825 #include <libavutil/common.h>
6826 int main(void) { av_gcd(1,1); return 0; }
6828 if $_pkg_config --exists libavutil
; then
6829 _inc_libavutil
=$
($_pkg_config --cflags libavutil
)
6830 _ld_tmp
=$
($_pkg_config --libs libavutil
)
6831 cc_check
$_inc_libavutil $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" extra_cflags
="$extra_cflags $_inc_libavutil" \
6833 elif cc_check
-lavutil $_ld_lm ; then
6834 extra_ldflags
="$extra_ldflags -lavutil"
6838 def_libavutil
='#undef CONFIG_LIBAVUTIL'
6839 test "$_libavutil" = yes && def_libavutil
='#define CONFIG_LIBAVUTIL 1'
6840 # libavutil is not available, but it is mandatory ...
6841 if test "$_libavutil" = no
; then
6842 die
"You need libavutil, MPlayer will not compile without!"
6844 echores
"$_libavutil"
6846 echocheck
"FFmpeg libavcodec"
6847 if test "$_libavcodec" = auto
; then
6850 #include <libavcodec/avcodec.h>
6851 int main(void) { avcodec_find_encoder_by_name(""); return 0; }
6853 if $_pkg_config --exists libavcodec
; then
6854 _inc_libavcodec
=$
($_pkg_config --cflags libavcodec
)
6855 _ld_tmp
=$
($_pkg_config --libs libavcodec
)
6856 cc_check
$_inc_libavcodec $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && extra_cflags
="$extra_cflags $_inc_libavcodec" \
6858 elif cc_check
-lavcodec $_ld_lm ; then
6859 extra_ldflags
="$extra_ldflags -lavcodec"
6863 def_libavcodec
='#undef CONFIG_LIBAVCODEC'
6864 test "$_libavcodec" = yes && def_libavcodec
='#define CONFIG_LIBAVCODEC 1'
6865 if test "$_libavcodec" = yes ; then
6866 _codecmodules
="libavcodec $_codecmodules"
6868 _nocodecmodules
="libavcodec $_nocodecmodules"
6870 echores
"$_libavcodec"
6872 echocheck
"FFmpeg libavformat"
6873 if test "$_libavformat" = auto
; then
6876 #include <libavformat/avformat.h>
6877 #include <libavcodec/opt.h>
6878 int main(void) { av_alloc_format_context(); return 0; }
6880 if $_pkg_config --exists libavformat
; then
6881 _inc_libavformat
=$
($_pkg_config --cflags libavformat
)
6882 _ld_tmp
=$
($_pkg_config --libs libavformat
)
6883 cc_check
$_inc_libavformat $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && extra_cflags
="$extra_cflags $_inc_libavformat" \
6885 elif cc_check
$_ld_lm -lavformat ; then
6886 extra_ldflags
="$extra_ldflags -lavformat"
6890 def_libavformat
='#undef CONFIG_LIBAVFORMAT'
6891 test "$_libavformat" = yes && def_libavformat
='#define CONFIG_LIBAVFORMAT 1'
6892 echores
"$_libavformat"
6894 echocheck
"FFmpeg libpostproc"
6895 if test "$_libpostproc" = auto
; then
6898 #include <inttypes.h>
6899 #include <libpostproc/postprocess.h>
6900 int main(void) { pp_get_mode_by_name_and_quality("de", 0); return 0; }
6902 if $_pkg_config --exists libpostproc
; then
6903 _inc_libpostproc
=$
($_pkg_config --cflags libpostproc
)
6904 _ld_tmp
=$
($_pkg_config --libs libpostproc
)
6905 cc_check
$_inc_libpostproc $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && extra_cflags
="$extra_cflags $_inc_libpostproc" \
6907 elif cc_check
-lpostproc $_ld_lm ; then
6908 extra_ldflags
="$extra_ldflags -lpostproc"
6912 def_libpostproc
='#undef CONFIG_LIBPOSTPROC'
6913 test "$_libpostproc" = yes && def_libpostproc
='#define CONFIG_LIBPOSTPROC 1'
6914 echores
"$_libpostproc"
6916 echocheck
"FFmpeg libswscale"
6917 if test "$_libswscale" = auto
; then
6920 #include <libswscale/swscale.h>
6921 int main(void) { sws_scale(0, 0, 0, 0, 0, 0, 0); return 0; }
6923 if $_pkg_config --exists libswscale
; then
6924 _inc_libswscale
=$
($_pkg_config --cflags libswscale
)
6925 _ld_tmp
=$
($_pkg_config --libs libswscale
)
6926 cc_check
$_inc_libswscale $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" extra_cflags
="$extra_cflags $_inc_libswscale" \
6928 elif cc_check
-lswscale ; then
6929 extra_ldflags
="$extra_ldflags -lswscale"
6933 def_libswscale
='#undef CONFIG_LIBSWSCALE'
6934 test "$_libswscale" = yes && def_libswscale
='#define CONFIG_LIBSWSCALE 1'
6935 echores
"$_libswscale"
6937 def_libswscale_internals
="#undef CONFIG_LIBSWSCALE_INTERNALS"
6938 if ! test -z "$_ffmpeg_source" ; then
6939 test "$_libswscale" = yes && def_libswscale_internals
="#define CONFIG_LIBSWSCALE_INTERNALS 1" && _libswscale_internals
=yes
6942 def_libavcodec_internals
="#undef CONFIG_LIBAVCODEC_INTERNALS"
6943 if ! test -z "$_ffmpeg_source" ; then
6944 test "$_libavcodec" = yes && def_libavcodec_internals
="#define CONFIG_LIBAVCODEC_INTERNALS 1" && _libavcodec_internals
=yes
6947 echocheck
"libdv-0.9.5+"
6948 if test "$_libdv" = auto
; then
6951 #include <libdv/dv.h>
6952 int main(void) { dv_encoder_t* enc=dv_encoder_new(1,1,1); return 0; }
6954 cc_check
-ldv $_ld_pthread $_ld_lm && _libdv
=yes
6956 if test "$_libdv" = yes ; then
6957 def_libdv
='#define CONFIG_LIBDV095 1'
6958 extra_ldflags
="$extra_ldflags -ldv"
6959 _codecmodules
="libdv $_codecmodules"
6961 def_libdv
='#undef CONFIG_LIBDV095'
6962 _nocodecmodules
="libdv $_nocodecmodules"
6968 if test "$_xvid" = auto
; then
6972 int main(void) { xvid_global(0, 0, 0, 0); return 0; }
6974 for _ld_tmp
in "-lxvidcore $_ld_lm" "-lxvidcore $_ld_lm $_ld_pthread" ; do
6975 cc_check
$_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && _xvid
=yes && break
6979 if test "$_xvid" = yes ; then
6980 def_xvid
='#define CONFIG_XVID4 1'
6981 _codecmodules
="xvid $_codecmodules"
6983 def_xvid
='#undef CONFIG_XVID4'
6984 _nocodecmodules
="xvid $_nocodecmodules"
6989 if test "$_x264" = auto
; then
6991 #include <inttypes.h>
6994 #error We do not support old versions of x264. Get the latest from git.
6996 int main(void) { x264_encoder_open((void*)0); return 0; }
6999 for _ld_x264
in "-lx264 $_ld_pthread" "-lx264 $_ld_pthread $_ld_lm" ; do
7000 cc_check
$_ld_x264 && libs_mencoder
="$libs_mencoder $_ld_x264" && _x264
=yes && break
7004 if test "$_x264" = yes ; then
7005 def_x264
='#define CONFIG_X264 1'
7006 _codecmodules
="x264 $_codecmodules"
7008 def_x264
='#undef CONFIG_X264'
7009 _nocodecmodules
="x264 $_nocodecmodules"
7014 if test "$_libnut" = auto
; then
7018 #include <inttypes.h>
7020 nut_context_tt * nut;
7021 int main(void) { (void)nut_error(0); return 0; }
7024 cc_check
-lnut && _libnut
=yes
7027 if test "$_libnut" = yes ; then
7028 def_libnut
='#define CONFIG_LIBNUT 1'
7029 extra_ldflags
="$extra_ldflags -lnut"
7031 def_libnut
='#undef CONFIG_LIBNUT'
7035 # These VO checks must be done after libavcodec/libswscale one
7036 echocheck
"/dev/mga_vid"
7037 if test "$_mga" = auto
; then
7039 test -c /dev
/mga_vid
&& _mga
=yes
7041 if test "$_mga" = yes ; then
7042 if test "$_libswscale_internals" = yes ; then
7043 def_mga
='#define CONFIG_MGA 1'
7044 _vomodules
="mga $_vomodules"
7046 _res_comment
="libswscale internal headers are required by mga, sorry"
7047 def_mga
='#undef CONFIG_MGA'
7048 _novomodules
="mga $_novomodules"
7051 def_mga
='#undef CONFIG_MGA'
7052 _novomodules
="mga $_novomodules"
7058 if test "$_xmga" = auto
; then
7060 test "$_x11" = yes && test "$_mga" = yes && _xmga
=yes
7062 if test "$_xmga" = yes ; then
7063 if test "$_libswscale_internals" = yes ; then
7064 def_xmga
='#define CONFIG_XMGA 1'
7065 _vomodules
="xmga $_vomodules"
7067 _res_comment
="libswscale internal headers are required by mga, sorry"
7068 def_xmga
='#undef CONFIG_XMGA'
7069 _novomodules
="xmga $_novomodules"
7072 def_xmga
='#undef CONFIG_XMGA'
7073 _novomodules
="xmga $_novomodules"
7078 if test "$_zr" = auto
; then
7079 #36067's seem to identify themselves as 36057PQC's, so the line
7080 #below should work for 36067's and 36057's.
7081 if grep -q -s -e "Multimedia video controller: Zoran Corporation ZR36057" /proc
/pci
; then
7087 if test "$_zr" = yes ; then
7088 if test "$_libavcodec_internals" = yes ; then
7089 def_zr
='#define CONFIG_ZR 1'
7090 _vomodules
="zr zr2 $_vomodules"
7092 _res_comment
="libavcodec internal headers are required by zr, sorry"
7093 _novomodules
="zr $_novomodules"
7094 def_zr
='#undef CONFIG_ZR'
7097 def_zr
='#undef CONFIG_ZR'
7098 _novomodules
="zr zr2 $_novomodules"
7103 if test "$_glamo" = yes ; then
7104 def_glamo
='#define CONFIG_GLAMO 1'
7105 _vomodules
="glamo $_vomodules"
7107 def_glamo
='#undef CONFIG_GLAMO'
7108 _novomodules
="glamo $_novomodules"
7112 # mencoder requires (optional) those libs: libmp3lame
7113 if test "$_mencoder" != no
; then
7115 echocheck
"libmp3lame"
7116 def_mp3lame_preset
='#undef CONFIG_MP3LAME_PRESET'
7117 def_mp3lame_preset_medium
='#undef CONFIG_MP3LAME_PRESET_MEDIUM'
7118 if test "$_mp3lame" = auto
; then
7121 #include <lame/lame.h>
7122 int main(void) { lame_version_t lv; (void) lame_init();
7123 get_lame_version_numerical(&lv); printf("%d%d\n",lv.major,lv.minor);
7126 cc_check
-lmp3lame $_ld_lm && tmp_run
&& _mp3lame
=yes
7128 if test "$_mp3lame" = yes ; then
7129 def_mp3lame
="#define CONFIG_MP3LAME"
7130 _ld_mp3lame
=-lmp3lame
7131 libs_mencoder
="$libs_mencoder $_ld_mp3lame"
7133 #include <lame/lame.h>
7134 int main(void) { lame_set_preset(NULL, STANDARD_FAST); return 0; }
7136 cc_check
$_ld_mp3lame $_ld_lm && def_mp3lame_preset
="#define CONFIG_MP3LAME_PRESET"
7138 #include <lame/lame.h>
7139 int main(void) { lame_set_preset(NULL, MEDIUM_FAST); return 0; }
7141 cc_check
$_ld_mp3lame $_ld_lm && def_mp3lame_preset_medium
="#define CONFIG_MP3LAME_PRESET_MEDIUM"
7143 def_mp3lame
='#undef CONFIG_MP3LAME'
7147 fi # test "$_mencoder" != no
7149 echocheck
"mencoder"
7150 if test "$_mencoder" = yes ; then
7151 def_muxers
='#define CONFIG_MUXERS 1'
7153 def_muxers
='#define CONFIG_MUXERS 0'
7155 echores
"$_mencoder"
7158 echocheck
"UnRAR executable"
7159 if test "$_unrar_exec" = auto
; then
7161 mingw32
&& _unrar_exec
="no"
7163 if test "$_unrar_exec" = yes ; then
7164 def_unrar_exec
='#define CONFIG_UNRAR_EXEC 1'
7166 def_unrar_exec
='#undef CONFIG_UNRAR_EXEC'
7168 echores
"$_unrar_exec"
7170 echocheck
"TV interface"
7171 if test "$_tv" = yes ; then
7172 def_tv
='#define CONFIG_TV 1'
7173 _inputmodules
="tv $_inputmodules"
7175 _noinputmodules
="tv $_noinputmodules"
7176 def_tv
='#undef CONFIG_TV'
7181 if freebsd || netbsd || openbsd || dragonfly || bsdos
; then
7182 echocheck
"*BSD BT848 bt8xx header"
7184 for file in "machine/ioctl_bt848.h" \
7185 "dev/bktr/ioctl_bt848.h" \
7186 "dev/video/bktr/ioctl_bt848.h" \
7187 "dev/ic/bt8xx.h" ; do
7189 #include <sys/types.h>
7190 #include <sys/ioctl.h>
7192 int main(void) { ioctl(0, TVTUNER_GETFREQ, 0); return 0; }
7196 _ioctl_bt848_h_name
="$file"
7200 if test "$_ioctl_bt848_h" = yes ; then
7201 def_ioctl_bt848_h_name
="#define IOCTL_BT848_H_NAME <$_ioctl_bt848_h_name>"
7202 _res_comment
="using $_ioctl_bt848_h_name"
7204 def_ioctl_bt848_h_name
="#undef IOCTL_BT848_H_NAME"
7206 echores
"$_ioctl_bt848_h"
7208 echocheck
"*BSD ioctl_meteor.h"
7210 for file in "machine/ioctl_meteor.h" \
7211 "dev/bktr/ioctl_meteor.h" \
7212 "dev/video/bktr/ioctl_meteor.h" ; do
7214 #include <sys/types.h>
7216 int main(void) { ioctl(0, METEORSINPUT, 0); return 0; }
7220 _ioctl_meteor_h_name
="$file"
7224 if test "$_ioctl_meteor_h" = yes ; then
7225 def_ioctl_meteor_h_name
="#define IOCTL_METEOR_H_NAME <$_ioctl_meteor_h_name>"
7226 _res_comment
="using $_ioctl_meteor_h_name"
7228 def_ioctl_meteor_h_name
="#undef IOCTL_METEOR_H_NAME"
7230 echores
"$_ioctl_meteor_h"
7232 echocheck
"*BSD BrookTree 848 TV interface"
7233 if test "$_tv_bsdbt848" = auto
; then
7235 if test "$_tv" = yes ; then
7237 #include <sys/types.h>
7238 $def_ioctl_meteor_h_name
7239 $def_ioctl_bt848_h_name
7240 #ifdef IOCTL_METEOR_H_NAME
7241 #include IOCTL_METEOR_H_NAME
7243 #ifdef IOCTL_BT848_H_NAME
7244 #include IOCTL_BT848_H_NAME
7247 ioctl(0, METEORSINPUT, 0);
7248 ioctl(0, TVTUNER_GETFREQ, 0);
7252 cc_check
&& _tv_bsdbt848
=yes
7255 if test "$_tv_bsdbt848" = yes ; then
7256 def_tv_bsdbt848
='#define CONFIG_TV_BSDBT848 1'
7257 _inputmodules
="tv-bsdbt848 $_inputmodules"
7259 def_tv_bsdbt848
='#undef CONFIG_TV_BSDBT848'
7260 _noinputmodules
="tv-bsdbt848 $_noinputmodules"
7262 echores
"$_tv_bsdbt848"
7263 fi #if freebsd || netbsd || openbsd || dragonfly || bsdos
7266 echocheck
"DirectShow TV interface"
7267 if test "$_tv_dshow" = auto
; then
7269 if test "$_tv" = yes && win32
; then
7274 CoCreateInstance((GUID*)&GUID_NULL, NULL, CLSCTX_INPROC_SERVER, &GUID_NULL, &p);
7278 cc_check
-lole32 -luuid && _tv_dshow
=yes
7281 if test "$_tv_dshow" = yes ; then
7282 _inputmodules
="tv-dshow $_inputmodules"
7283 def_tv_dshow
='#define CONFIG_TV_DSHOW 1'
7284 extra_ldflags
="$extra_ldflags -lole32 -luuid"
7286 _noinputmodules
="tv-dshow $_noinputmodules"
7287 def_tv_dshow
='#undef CONFIG_TV_DSHOW'
7289 echores
"$_tv_dshow"
7292 echocheck
"Video 4 Linux TV interface"
7293 if test "$_tv_v4l1" = auto
; then
7295 if test "$_tv" = yes && linux
; then
7298 #include <linux/videodev.h>
7299 int main(void) { return 0; }
7301 cc_check
&& _tv_v4l1
=yes
7304 if test "$_tv_v4l1" = yes ; then
7307 def_tv_v4l
='#define CONFIG_TV_V4L 1'
7308 def_tv_v4l1
='#define CONFIG_TV_V4L1 1'
7309 _inputmodules
="tv-v4l $_inputmodules"
7311 _noinputmodules
="tv-v4l1 $_noinputmodules"
7312 def_tv_v4l
='#undef CONFIG_TV_V4L'
7317 echocheck
"Video 4 Linux 2 TV interface"
7318 if test "$_tv_v4l2" = auto
; then
7320 if test "$_tv" = yes && linux
; then
7323 #include <linux/types.h>
7324 #include <linux/videodev2.h>
7325 int main(void) { return 0; }
7327 cc_check
&& _tv_v4l2
=yes
7330 if test "$_tv_v4l2" = yes ; then
7333 def_tv_v4l
='#define CONFIG_TV_V4L 1'
7334 def_tv_v4l2
='#define CONFIG_TV_V4L2 1'
7335 _inputmodules
="tv-v4l2 $_inputmodules"
7337 _noinputmodules
="tv-v4l2 $_noinputmodules"
7338 def_tv_v4l2
='#undef CONFIG_TV_V4L2'
7343 echocheck
"TV teletext interface"
7344 if test "$_tv_teletext" = auto
; then
7346 if test "$_freetype" = yes && test "$_pthreads" = yes; then
7347 if test "$_tv_v4l2" = yes ||
test "$_v4l" = yes ||
test "$_tv_dshow" = yes; then
7352 if test "$_tv_teletext" = yes ; then
7353 def_tv_teletext
='#define CONFIG_TV_TELETEXT 1'
7354 _inputmodules
="tv-teletext $_inputmodules"
7356 _noinputmodules
="tv-teletext $_noinputmodules"
7357 def_tv_teletext
='#undef CONFIG_TV_TELETEXT'
7359 echores
"$_tv_teletext"
7362 echocheck
"Radio interface"
7363 if test "$_radio" = yes ; then
7364 def_radio
='#define CONFIG_RADIO 1'
7365 _inputmodules
="radio $_inputmodules"
7366 if test "$_alsa9" != yes -a "$_alsa1x" != yes -a "$_ossaudio" != yes ; then
7369 if test "$_radio_capture" = yes ; then
7371 def_radio_capture
="#define CONFIG_RADIO_CAPTURE 1"
7373 def_radio_capture
="#undef CONFIG_RADIO_CAPTURE"
7376 _noinputmodules
="radio $_noinputmodules"
7377 def_radio
='#undef CONFIG_RADIO'
7378 def_radio_capture
="#undef CONFIG_RADIO_CAPTURE"
7382 echocheck
"Capture for Radio interface"
7383 echores
"$_radio_capture"
7385 echocheck
"Video 4 Linux 2 Radio interface"
7386 if test "$_radio_v4l2" = auto
; then
7388 if test "$_radio" = yes && linux
; then
7391 #include <linux/types.h>
7392 #include <linux/videodev2.h>
7393 int main(void) { return 0; }
7395 cc_check
&& _radio_v4l2
=yes
7398 if test "$_radio_v4l2" = yes ; then
7399 def_radio_v4l2
='#define CONFIG_RADIO_V4L2 1'
7401 def_radio_v4l2
='#undef CONFIG_RADIO_V4L2'
7403 echores
"$_radio_v4l2"
7405 echocheck
"Video 4 Linux Radio interface"
7406 if test "$_radio_v4l" = auto
; then
7408 if test "$_radio" = yes && linux
; then
7411 #include <linux/videodev.h>
7412 int main(void) { return 0; }
7414 cc_check
&& _radio_v4l
=yes
7417 if test "$_radio_v4l" = yes ; then
7418 def_radio_v4l
='#define CONFIG_RADIO_V4L 1'
7420 def_radio_v4l
='#undef CONFIG_RADIO_V4L'
7422 echores
"$_radio_v4l"
7424 if freebsd || netbsd || openbsd || dragonfly || bsdos \
7425 && test "$_radio" = yes && test "$_radio_bsdbt848" = auto
; then
7426 echocheck
"*BSD BrookTree 848 Radio interface"
7429 #include <sys/types.h>
7430 $def_ioctl_bt848_h_name
7431 #ifdef IOCTL_BT848_H_NAME
7432 #include IOCTL_BT848_H_NAME
7434 int main(void) { ioctl(0, RADIO_GETFREQ, 0); return 0; }
7436 cc_check
&& _radio_bsdbt848
=yes
7437 echores
"$_radio_bsdbt848"
7438 fi #if freebsd || netbsd || openbsd || dragonfly || bsdos && _radio && _radio_bsdbt848
7440 if test "$_radio_bsdbt848" = yes ; then
7441 def_radio_bsdbt848
='#define CONFIG_RADIO_BSDBT848 1'
7443 def_radio_bsdbt848
='#undef CONFIG_RADIO_BSDBT848'
7446 if test "$_radio_v4l" = no
&& test "$_radio_v4l2" = no
&& \
7447 test "$_radio_bsdbt848" = no
&& test "$_radio" = yes ; then
7448 die
"Radio driver requires BSD BT848, V4L or V4L2!"
7451 echocheck
"Video 4 Linux 2 MPEG PVR interface"
7452 if test "$_pvr" = auto
; then
7454 if test "$_tv_v4l2" = yes && linux
; then
7457 #include <inttypes.h>
7458 #include <linux/types.h>
7459 #include <linux/videodev2.h>
7460 int main(void) { struct v4l2_ext_controls ext; return ext.controls->value; }
7462 cc_check
&& _pvr
=yes
7465 if test "$_pvr" = yes ; then
7466 def_pvr
='#define CONFIG_PVR 1'
7467 _inputmodules
="pvr $_inputmodules"
7469 _noinputmodules
="pvr $_noinputmodules"
7470 def_pvr
='#undef CONFIG_PVR'
7476 if ! beos
&& test "$_ftp" = yes ; then
7477 def_ftp
='#define CONFIG_FTP 1'
7478 _inputmodules
="ftp $_inputmodules"
7480 _noinputmodules
="ftp $_noinputmodules"
7481 def_ftp
='#undef CONFIG_FTP'
7485 echocheck
"vstream client"
7486 if test "$_vstream" = auto
; then
7489 #include <vstream-client.h>
7490 void vstream_error(const char *format, ... ) {}
7491 int main(void) { vstream_start(); return 0; }
7493 cc_check
-lvstream-client && _vstream
=yes
7495 if test "$_vstream" = yes ; then
7496 def_vstream
='#define CONFIG_VSTREAM 1'
7497 _inputmodules
="vstream $_inputmodules"
7498 extra_ldflags
="$extra_ldflags -lvstream-client"
7500 _noinputmodules
="vstream $_noinputmodules"
7501 def_vstream
='#undef CONFIG_VSTREAM'
7506 echocheck
"OSD menu"
7507 if test "$_menu" = yes ; then
7508 def_menu
='#define CONFIG_MENU 1'
7509 test $_dvbin = "yes" && _menu_dvbin
=yes
7511 def_menu
='#undef CONFIG_MENU'
7517 echocheck
"Subtitles sorting"
7518 if test "$_sortsub" = yes ; then
7519 def_sortsub
='#define CONFIG_SORTSUB 1'
7521 def_sortsub
='#undef CONFIG_SORTSUB'
7526 echocheck
"XMMS inputplugin support"
7527 if test "$_xmms" = yes ; then
7528 if ( xmms-config
--version ) >/dev
/null
2>&1 ; then
7529 _xmmsplugindir
=$
(xmms-config
--input-plugin-dir)
7530 _xmmslibdir
=$
(xmms-config
--exec-prefix)/lib
7532 _xmmsplugindir
=/usr
/lib
/xmms
/Input
7533 _xmmslibdir
=/usr
/lib
7536 def_xmms
='#define CONFIG_XMMS 1'
7538 extra_ldflags
="$extra_ldflags ${_xmmslibdir}/libxmms.dylib"
7540 extra_ldflags
="$extra_ldflags ${_xmmslibdir}/libxmms.so.1 -export-dynamic"
7543 def_xmms
='#undef CONFIG_XMMS'
7547 if test "$_charset" != "noconv" ; then
7548 def_charset
="#define MSG_CHARSET \"$_charset\""
7550 def_charset
="#undef MSG_CHARSET"
7554 if test -n "$_charset" && test "$_charset" != "UTF-8" ; then
7555 echocheck
"iconv program"
7556 iconv -f UTF-8
-t $_charset ${_mp_help} > /dev
/null
2>> "$TMPLOG"
7557 if test "$?" -ne 0 ; then
7559 echo "No working iconv program found, use "
7560 echo "--charset=UTF-8 to continue anyway."
7561 echo "If you also have problems with iconv library functions use --charset=noconv."
7568 #############################################################################
7570 echocheck
"automatic gdb attach"
7571 if test "$_crash_debug" = yes ; then
7572 def_crash_debug
='#define CONFIG_CRASH_DEBUG 1'
7574 def_crash_debug
='#undef CONFIG_CRASH_DEBUG'
7577 echores
"$_crash_debug"
7579 echocheck
"compiler support for noexecstack"
7581 int main(void) { return 0; }
7583 if cc_check
-Wl,-z,noexecstack
; then
7584 extra_ldflags
="-Wl,-z,noexecstack $extra_ldflags"
7591 # Dynamic linking flags
7592 # (FIXME: 'echocheck "dynamic linking"' above and modify here accordingly)
7594 freebsd || netbsd || openbsd || dragonfly || bsdos
&& _ld_dl_dynamic
='-rdynamic'
7595 if test "$_real" = yes ||
test "$_xanim" = yes && ! win32
&& ! qnx
&& ! darwin
&& ! os2
&& ! sunos
; then
7596 _ld_dl_dynamic
='-rdynamic'
7599 extra_ldflags
="$extra_ldflags $_ld_pthread $_ld_dl $_ld_dl_dynamic"
7600 bsdos
&& extra_ldflags
="$extra_ldflags -ldvd"
7601 (netbsd || openbsd
) && x86_32
&& extra_ldflags
="$extra_ldflags -li386"
7603 def_debug
='#undef MP_DEBUG'
7604 test "$_debug" != "" && def_debug
='#define MP_DEBUG 1'
7607 echocheck
"joystick"
7608 def_joystick
='#undef CONFIG_JOYSTICK'
7609 if test "$_joystick" = yes ; then
7611 # TODO add some check
7612 def_joystick
='#define CONFIG_JOYSTICK 1'
7615 _res_comment
="unsupported under $system_name"
7618 echores
"$_joystick"
7621 if test "$_lirc" = auto
; then
7624 #include <lirc/lirc_client.h>
7625 int main(void) { return 0; }
7627 cc_check
-llirc_client && _lirc
=yes
7629 if test "$_lirc" = yes ; then
7630 def_lirc
='#define CONFIG_LIRC 1'
7631 libs_mplayer
="$libs_mplayer -llirc_client"
7633 def_lirc
='#undef CONFIG_LIRC'
7638 if test "$_lircc" = auto
; then
7641 #include <lirc/lircc.h>
7642 int main(void) { return 0; }
7644 cc_check
-llircc && _lircc
=yes
7646 if test "$_lircc" = yes ; then
7647 def_lircc
='#define CONFIG_LIRCC 1'
7648 libs_mplayer
="$libs_mplayer -llircc"
7650 def_lircc
='#undef CONFIG_LIRCC'
7655 # Detect maemo development platform libraries availability (http://www.maemo.org),
7656 # they are used when run on Nokia 770|8x0
7657 echocheck
"maemo (Nokia 770|8x0)"
7658 if test "$_maemo" = auto
; then
7661 #include <libosso.h>
7662 int main(void) { (void) osso_initialize("", "", 0, NULL); return 0; }
7664 cc_check $
($_pkg_config --cflags --libs libosso
2>/dev
/null
) && _maemo
=yes
7666 if test "$_maemo" = yes ; then
7667 def_maemo
='#define CONFIG_MAEMO 1'
7668 extra_cflags
="$extra_cflags $($_pkg_config --cflags libosso)"
7669 extra_ldflags
="$extra_ldflags $($_pkg_config --libs libosso) -lXsp"
7671 def_maemo
='#undef CONFIG_MAEMO'
7676 #############################################################################
7678 # On OS/2 nm supports only a.out. So the -Zomf compiler option to generate
7679 # the OMF format needs to come after the 'extern symbol prefix' check, which
7682 extra_ldflags
="$extra_ldflags -Zomf -Zstack 16384 -Zbin-files -Zargs-wild"
7685 # linker paths should be the same for mencoder and mplayer
7687 for I
in $libs_mplayer ; do
7688 _tmp
=$
(echo $I |
sed -e 's/^-L.*$//')
7689 if test -z "$_tmp" ; then
7690 extra_ldflags
="$extra_ldflags $I"
7692 _ld_tmp
="$_ld_tmp $I"
7695 libs_mplayer
=$_ld_tmp
7698 #############################################################################
7699 # 64 bit file offsets?
7700 if test "$_largefiles" = yes || freebsd
; then
7701 CFLAGS
="$CFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
7702 if test "$_dvdread" = yes ||
test "$_libdvdcss_internal" = yes ; then
7703 # dvdread support requires this (for off64_t)
7704 CFLAGS
="$CFLAGS -D_LARGEFILE64_SOURCE"
7708 CXXFLAGS
=" $CFLAGS -Iffmpeg -D__STDC_LIMIT_MACROS"
7710 # This must be the last test to be performed. Any other tests following it
7711 # could fail due to linker errors. libdvdnavmini is intentionally not linked
7712 # against libdvdread (to permit MPlayer to use its own copy of the library).
7713 # So any compilation using the flags added here but not linking against
7714 # libdvdread can fail.
7715 echocheck
"DVD support (libdvdnav)"
7716 if test "$_dvdread_internal" = yes && test ! -f "libdvdnav/dvdnav.c" ; then
7720 if test "$_dvdnav" = auto
; then
7721 if test "$_dvdread_internal" = yes ; then
7724 _res_comment
="internal"
7726 $_dvdnavconfig --version --minilibs >> $TMPLOG 2>&1 || _dvdnav
=no
7729 if test "$_dvdnav" = auto
; then
7731 #include <inttypes.h>
7732 #include <dvdnav/dvdnav.h>
7733 int main(void) { dvdnav_t *dvd=0; return 0; }
7736 _dvdnavdir
=$
($_dvdnavconfig --cflags)
7737 _dvdnavlibs
=$
($_dvdnavconfig --libs)
7738 cc_check
$_dvdnavdir $_dvdnavlibs $_ld_dl $_ld_pthread && _dvdnav
=yes
7740 if test "$_dvdnav" = yes ; then
7742 def_dvdnav
='#define CONFIG_DVDNAV 1'
7743 if test "$dvdnav_internal" = yes ; then
7744 cflags_libdvdnav
="-Ilibdvdnav"
7745 _inputmodules
="dvdnav(internal) $_inputmodules"
7747 extra_cflags
="$extra_cflags $($_dvdnavconfig --cflags)"
7748 extra_ldflags
="$extra_ldflags $($_dvdnavconfig --minilibs)"
7749 _inputmodules
="dvdnav $_inputmodules"
7752 def_dvdnav
='#undef CONFIG_DVDNAV'
7753 _noinputmodules
="dvdnav $_noinputmodules"
7757 # DO NOT ADD ANY TESTS THAT USE LINKER FLAGS HERE (like cc_check).
7758 # Read dvdnav comment above.
7760 #############################################################################
7761 echo "Creating config.mak"
7762 cat > config.mak
<< EOF
7763 # -------- Generated by configure -----------
7765 # Ensure that locale settings do not interfere with shell commands.
7768 CONFIGURATION = $_configuration
7771 DOC_LANGS = $language_doc
7772 DOC_LANG_ALL = $doc_lang_all
7773 MAN_LANGS = $language_man
7774 MAN_LANG_ALL = $man_lang_all
7776 prefix = \$(DESTDIR)$_prefix
7777 BINDIR = \$(DESTDIR)$_bindir
7778 DATADIR = \$(DESTDIR)$_datadir
7779 LIBDIR = \$(DESTDIR)$_libdir
7780 MANDIR = \$(DESTDIR)$_mandir
7781 CONFDIR = \$(DESTDIR)$_confdir
7790 INSTALLSTRIP = $_install_strip
7794 CFLAGS = $CFLAGS $extra_cflags
7795 CXXFLAGS = $CXXFLAGS $extra_cflags $extra_cxxflags
7796 CFLAGS_DHAHELPER = $cflags_dhahelper
7797 CFLAGS_FAAD_FIXED = $cflags_faad_fixed
7798 CFLAGS_LIBDVDCSS = $cflags_libdvdcss
7799 CFLAGS_LIBDVDCSS_DVDREAD = $cflags_libdvdcss_dvdread
7800 CFLAGS_LIBDVDNAV = $cflags_libdvdnav
7801 CFLAGS_NO_OMIT_LEAF_FRAME_POINTER = $cflags_no_omit_leaf_frame_pointer
7802 CFLAGS_STACKREALIGN = $cflags_stackrealign
7803 CFLAGS_SVGALIB_HELPER = $cflags_svgalib_helper
7804 CFLAGS_TREMOR_LOW = $cflags_tremor_low
7805 YASMFLAGS = $YASMFLAGS
7807 EXTRALIBS = $extra_libs
7808 EXTRA_LIB = $extra_ldflags $_ld_static $_ld_lm
7809 EXTRALIBS_MPLAYER = $libs_mplayer
7810 EXTRALIBS_MENCODER = $libs_mencoder
7812 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 &,"
7813 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 &,"
7816 HELP_FILE = $_mp_help
7824 $(echo $_cpuexts | tr '[a-z] ' '[A-Z]\n' | sed 's/^/HAVE_/;s/$/=yes/')
7826 MENCODER = $_mencoder
7829 NEED_GETTIMEOFDAY = $_need_gettimeofday
7830 NEED_GLOB = $_need_glob
7831 NEED_MMAP = $_need_mmap
7832 NEED_SETENV = $_need_setenv
7833 NEED_SHMEM = $_need_shmem
7834 NEED_STRSEP = $_need_strsep
7835 NEED_SWAB = $_need_swab
7836 NEED_VSSCANF = $_need_vsscanf
7844 APPLE_IR = $_apple_ir
7845 APPLE_REMOTE = $_apple_remote
7847 AUDIO_INPUT = $_audio_input
7848 BITMAP_FONT = $_bitmap_font
7853 COREAUDIO = $_coreaudio
7854 COREVIDEO = $_corevideo
7858 DIRECT3D = $_direct3d
7859 DIRECTFB = $_directfb
7863 DVDNAV_INTERNAL = $dvdnav_internal
7865 DVDREAD_INTERNAL = $_dvdread_internal
7871 FAAD_INTERNAL = $_faad_internal
7872 FASTMEMCPY = $_fastmemcpy
7875 FREETYPE = $_freetype
7880 GL_WIN32 = $_gl_win32
7881 HAVE_POSIX_SELECT = $_posix_select
7882 HAVE_SYS_MMAN_H = $_mman
7885 JOYSTICK = $_joystick
7890 LIBA52_INTERNAL = $_liba52_internal
7895 LIBDVDCSS_INTERNAL = $_libdvdcss_internal
7899 LIBMENU_DVBIN = $_menu_dvbin
7900 LIBMPEG2 = $_libmpeg2
7901 LIBNEMESI = $_nemesi
7903 LIBSMBCLIENT = $_smb
7904 LIBTHEORA = $_theora
7907 MACOSX_BUNDLE = $_macosx_bundle
7908 MACOSX_FINDER = $_macosx_finder
7914 MUSEPACK = $_musepack
7916 NATIVE_RTSP = $_native_rtsp
7920 PE_EXECUTABLE = $_pe_executable
7923 PRIORITY = $_priority
7927 QTX_CODECS_WIN32 = $_qtx_codecs_win32
7928 QTX_EMULATION = $_qtx_emulation
7931 RADIO_CAPTURE=$_radio_capture
7932 REAL_CODECS = $_real
7936 STREAM_CACHE = $_stream_cache
7937 SGIAUDIO = $_sgiaudio
7938 SUNAUDIO = $_sunaudio
7944 TREMOR_INTERNAL = $_tremor_internal
7946 TV_BSDBT848 = $_tv_bsdbt848
7947 TV_DSHOW = $_tv_dshow
7948 TV_TELETEXT = $_tv_teletext
7953 UNRAR_EXEC = $_unrar_exec
7959 VIDIX_PCIDB = $_vidix_pcidb_val
7960 VIDIX_CYBERBLADE=$_vidix_drv_cyberblade
7961 VIDIX_IVTV=$_vidix_drv_ivtv
7962 VIDIX_MACH64=$_vidix_drv_mach64
7963 VIDIX_MGA=$_vidix_drv_mga
7964 VIDIX_MGA_CRTC2=$_vidix_drv_mga_crtc2
7965 VIDIX_NVIDIA=$_vidix_drv_nvidia
7966 VIDIX_PM2=$_vidix_drv_pm2
7967 VIDIX_PM3=$_vidix_drv_pm3
7968 VIDIX_RADEON=$_vidix_drv_radeon
7969 VIDIX_RAGE128=$_vidix_drv_rage128
7970 VIDIX_S3=$_vidix_drv_s3
7971 VIDIX_SH_VEU=$_vidix_drv_sh_veu
7972 VIDIX_SIS=$_vidix_drv_sis
7973 VIDIX_UNICHROME=$_vidix_drv_unichrome
7977 WIN32DLL = $_win32dll
7978 WIN32WAVEOUT = $_win32waveout
7979 WIN32_EMULATION = $_win32_emulation
7980 WINVIDIX = $winvidix
7983 XANIM_CODECS = $_xanim
7985 XMMS_PLUGINS = $_xmms
7991 YUV4MPEG = $_yuv4mpeg
7995 LIBAVUTIL = $_libavutil
7996 LIBAVCODEC = $_libavcodec
7997 LIBAVFORMAT = $_libavformat
7998 LIBPOSTPROC = $_libpostproc
7999 LIBSWSCALE = $_libswscale
8000 LIBAVCODEC_INTERNALS = $_libavcodec_internals
8001 LIBSWSCALE_INTERNALS = $_libswscale_internals
8002 FFMPEG_SOURCE_PATH = $_ffmpeg_source
8004 # Some FFmpeg codecs depend on these. Enable them unconditionally for now.
8007 CONFIG_FFT_MMX=$fft_mmx
8015 CONFIG_MLIB = $_mlib
8016 CONFIG_MUXERS=$_mencoder
8017 CONFIG_VDPAU=$_vdpau
8021 HAVE_PTHREADS = $_pthreads
8023 HAVE_W32THREADS = $_w32threads
8024 HAVE_YASM = $_have_yasm
8028 #############################################################################
8030 ff_config_enable
() {
8032 test -z "$_nprefix" && _nprefix
='CONFIG'
8034 if $
(echo $2 |
grep -q -E "(^| )$part($| )"); then
8035 echo "#define ${_nprefix}_$part 1"
8037 echo "#define ${_nprefix}_$part 0"
8042 echo "Creating config.h"
8044 /*----------------------------------------------------------------------------
8045 ** This file has been automatically generated by configure any changes in it
8046 ** will be lost when you run configure again.
8047 ** Instead of modifying definitions here, use the --enable/--disable options
8048 ** of the configure script! See ./configure --help for details.
8049 *---------------------------------------------------------------------------*/
8051 #ifndef MPLAYER_CONFIG_H
8052 #define MPLAYER_CONFIG_H
8054 /* Undefine this if you do not want to select mono audio (left or right)
8055 with a stereo MPEG layer 2/3 audio stream. The command line option
8056 -stereo has three possible values (0 for stereo, 1 for left-only, 2 for
8057 right-only), with 0 being the default.
8059 #define CONFIG_FAKE_MONO 1
8061 /* set up max. outburst. use 65536 for ALSA 0.5, for others 16384 is enough */
8062 #define MAX_OUTBURST 65536
8064 /* set up audio OUTBURST. Do not change this! */
8065 #define OUTBURST 512
8067 /* Enable fast OSD/SUB renderer (looks ugly, but uses less CPU power) */
8069 #undef FAST_OSD_TABLE
8071 /* Define this to enable MPEG-1/2 image postprocessing in libmpeg2 */
8072 #define MPEG12_POSTPROC 1
8073 #define ATTRIBUTE_ALIGNED_MAX 16
8077 #define CONFIGURATION "$_configuration"
8079 #define MPLAYER_DATADIR "$_datadir"
8080 #define MPLAYER_CONFDIR "$_confdir"
8081 #define MPLAYER_LIBDIR "$_libdir"
8083 /* definitions needed by included libraries */
8084 #define HAVE_INTTYPES_H 1
8085 /* libmpeg2 + FFmpeg */
8088 #define HAVE_ERRNO_H 1
8089 /* libdvdcss + libdvdread */
8090 #define HAVE_LIMITS_H 1
8091 /* libdvdcss + libfaad2 */
8092 #define HAVE_UNISTD_H 1
8093 /* libfaad2 + libdvdread */
8094 #define STDC_HEADERS 1
8095 #define HAVE_MEMCPY 1
8097 #define HAVE_STRING_H 1
8098 #define HAVE_STRINGS_H 1
8099 #define HAVE_SYS_STAT_H 1
8100 #define HAVE_SYS_TYPES_H 1
8102 #define READ_CACHE_TRACE 0
8104 #define HAVE_DLFCN_H 1
8108 /* system headers */
8110 $def_alsa_asoundlib_h
8114 $def_mman_has_map_failed
8116 $def_sys_asoundlib_h
8117 $def_sys_soundcard_h
8124 /* system functions */
8152 /* system-specific features */
8166 $def_restrict_keyword
8171 /* configurable options */
8175 $def_dynamic_plugins
8178 $def_runtime_cpudetection
8186 #define __CPU__ $iproc
8189 $(ff_config_enable "$_arch_all" "$_arch" "ARCH")
8190 $(ff_config_enable "$_cpuexts_all" "$_cpuexts" "HAVE")
8194 #define DEFAULT_CDROM_DEVICE "$default_cdrom_device"
8195 #define DEFAULT_DVD_DEVICE "$default_dvd_device"
8215 /* codec libraries */
8220 $def_liba52_internal
8228 $def_mp3lame_preset_medium
8251 #define WIN32_PATH "$_win32codecsdir"
8255 #define XMMS_INPUT_PLUGIN_DIR "$_xmmsplugindir"
8258 /* Audio output drivers */
8273 $def_ossaudio_devdsp
8274 $def_ossaudio_devmixer
8287 $def_ioctl_bt848_h_name
8288 $def_ioctl_meteor_h_name
8342 $def_directfb_version
8378 $def_vidix_drv_cyberblade
8380 $def_vidix_drv_mach64
8382 $def_vidix_drv_mga_crtc2
8383 $def_vidix_drv_nvidia
8385 $def_vidix_drv_radeon
8386 $def_vidix_drv_rage128
8388 $def_vidix_drv_sh_veu
8390 $def_vidix_drv_unichrome
8413 $def_libavcodec_internals
8414 $def_libswscale_internals
8416 #define CONFIG_DECODERS 1
8417 #define CONFIG_ENCODERS 1
8418 #define CONFIG_DEMUXERS 1
8438 #define CONFIG_FASTDIV 0
8439 #define CONFIG_FFSERVER 0
8440 #define CONFIG_GPL 1
8441 #define CONFIG_GRAY 0
8442 #define CONFIG_HARDCODED_TABLES 0
8443 #define CONFIG_LIBVORBIS 0
8444 #define CONFIG_POWERPC_PERF 0
8445 #define CONFIG_SMALL 0
8446 #define CONFIG_SWSCALE 1
8447 #define CONFIG_SWSCALE_ALPHA 1
8449 #define HAVE_ATTRIBUTE_PACKED 1
8450 #define HAVE_GETHRTIME 0
8451 #define HAVE_INLINE_ASM 0
8452 #define HAVE_LDBRX 0
8453 #define HAVE_POLL_H 1
8454 #define HAVE_PPC4XX 0
8455 #define HAVE_VIRTUALALLOC 0
8457 /* Some FFmpeg codecs depend on these. Enable them unconditionally for now. */
8458 #define CONFIG_AANDCT 1
8459 #define CONFIG_FFT 1
8460 #define CONFIG_GOLOMB 1
8461 #define CONFIG_MDCT 1
8462 #define CONFIG_RDFT 1
8464 /* Use these registers in FFmpeg x86 inline asm. No proper detection yet. */
8467 #define HAVE_EBP_AVAILABLE 1
8469 #define HAVE_EBP_AVAILABLE 0
8472 #define CONFIG_H263_VAAPI_HWACCEL 0
8473 #define CONFIG_MPEG2_VAAPI_HWACCEL 0
8474 #define CONFIG_MPEG4_VAAPI_HWACCEL 0
8475 #define CONFIG_H264_VAAPI_HWACCEL 0
8476 #define CONFIG_VC1_VAAPI_HWACCEL 0
8477 #define CONFIG_WMV3_VAAPI_HWACCEL 0
8479 #endif /* MPLAYER_CONFIG_H */
8482 # Do not overwrite an unchanged config.h to avoid superfluous rebuilds.
8483 cmp -s "$TMPH" config.h ||
mv -f "$TMPH" config.h
8485 #############################################################################
8489 Config files successfully generated by ./configure $_configuration !
8491 Install prefix: $_prefix
8492 Data directory: $_datadir
8493 Config direct.: $_confdir
8495 Byte order: $_byte_order
8496 Optimizing for: $_optimizing
8499 Messages: $language_msg
8500 Manual pages: $language_man
8501 Documentation: $language_doc
8503 Enabled optional drivers:
8504 Input: $_inputmodules
8505 Codecs: $_codecmodules
8506 Audio output: $_aomodules
8507 Video output: $_vomodules
8509 Disabled optional drivers:
8510 Input: $_noinputmodules
8511 Codecs: $_nocodecmodules
8512 Audio output: $_noaomodules
8513 Video output: $_novomodules
8515 'config.h' and 'config.mak' contain your configuration options.
8516 Note: If you alter theses files (for instance CFLAGS) MPlayer may no longer
8517 compile *** DO NOT REPORT BUGS if you tweak these files ***
8519 'make' will now compile MPlayer and 'make install' will install it.
8520 Note: On non-Linux systems you might need to use 'gmake' instead of 'make'.
8525 if test "$_mtrr" = yes ; then
8526 echo "Please check mtrr settings at /proc/mtrr (see DOCS/HTML/$doc_lang/video.html#mtrr)"
8532 NOTE: Win32 codec DLLs are not supported on your CPU ($host_arch) or your
8533 operating system ($system_name). You may encounter a few files that cannot
8534 be played due to missing open source video/audio codec support.
8541 Check $TMPLOG if you wonder why an autodetection failed (make sure
8542 development headers/packages are installed).
8544 NOTE: The --enable-* parameters unconditionally force options on, completely
8545 skipping autodetection. This behavior is unlike what you may be used to from
8546 autoconf-based configure scripts that can decide to override you. This greater
8547 level of control comes at a price. You may have to provide the correct compiler
8548 and linker flags yourself.
8549 If you used one of these options (except --enable-menu and similar ones that
8550 turn on internal features) and experience a compilation or linking failure,
8551 make sure you have passed the necessary compiler/linker flags to configure.
8553 If you suspect a bug, please read DOCS/HTML/$doc_lang/bugreports.html.
8557 if test "$_warn_CFLAGS" = yes; then
8560 MPlayer compilation will use the CPPFLAGS/CFLAGS/LDFLAGS/YASMFLAGS set by you,
8563 *** *** DO NOT REPORT BUGS IF IT DOES NOT COMPILE/WORK! *** ***
8565 It is strongly recommended to let MPlayer choose the correct CFLAGS!
8566 To do so, execute 'CFLAGS= ./configure <options>'
8572 rm -f "$TMPEXE" "$TMPC" "$TMPS" "$TMPCPP" "$TMPH"