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-pvr disable Video4Linux2 MPEG PVR [autodetect]
250 --disable-rtc disable RTC (/dev/rtc) on Linux [autodetect]
251 --disable-network disable networking [enable]
252 --enable-winsock2_h enable winsock2_h [autodetect]
253 --enable-smb enable Samba (SMB) input [autodetect]
254 --enable-live enable LIVE555 Streaming Media [autodetect]
255 --enable-nemesi enable Nemesi Streaming Media [autodetect]
256 --disable-vcd disable VCD support [autodetect]
257 --disable-dvdnav disable libdvdnav [autodetect]
258 --disable-dvdread disable libdvdread [autodetect]
259 --disable-dvdread-internal disable internal libdvdread [autodetect]
260 --disable-libdvdcss-internal disable internal libdvdcss [autodetect]
261 --disable-cdparanoia disable cdparanoia [autodetect]
262 --disable-cddb disable cddb [autodetect]
263 --disable-bitmap-font disable bitmap font support [enable]
264 --disable-freetype disable FreeType 2 font rendering [autodetect]
265 --disable-fontconfig disable fontconfig font lookup [autodetect]
266 --disable-unrarexec disable using of UnRAR executable [enabled]
267 --enable-menu enable OSD menu (not DVD menu) [disabled]
268 --disable-sortsub disable subtitle sorting [enabled]
269 --enable-fribidi enable the FriBiDi libs [autodetect]
270 --disable-enca disable ENCA charset oracle library [autodetect]
271 --disable-maemo disable maemo specific features [autodetect]
272 --enable-macosx-finder enable Mac OS X Finder invocation parameter
274 --enable-macosx-bundle enable Mac OS X bundle file locations [autodetect]
275 --disable-inet6 disable IPv6 support [autodetect]
276 --disable-gethostbyname2 gethostbyname2 part of the C library [autodetect]
277 --disable-ftp disable FTP support [enabled]
278 --disable-vstream disable TiVo vstream client support [autodetect]
279 --disable-pthreads disable Posix threads support [autodetect]
280 --disable-w32threads disable Win32 threads support [autodetect]
281 --disable-ass disable internal SSA/ASS subtitle support [autodetect]
282 --enable-rpath enable runtime linker path for extra libs [disabled]
285 --enable-gif enable GIF support [autodetect]
286 --enable-png enable PNG input/output support [autodetect]
287 --enable-mng enable MNG input support [autodetect]
288 --enable-jpeg enable JPEG input/output support [autodetect]
289 --enable-libcdio enable libcdio support [autodetect]
290 --enable-liblzo enable liblzo support [autodetect]
291 --disable-win32dll disable Win32 DLL support [enabled]
292 --disable-qtx disable QuickTime codecs support [enabled]
293 --disable-xanim disable XAnim codecs support [enabled]
294 --disable-real disable RealPlayer codecs support [enabled]
295 --disable-xvid disable Xvid [autodetect]
296 --disable-x264 disable x264 [autodetect]
297 --disable-libnut disable libnut [autodetect]
298 --disable-libavutil disable libavutil [autodetect]
299 --disable-libavcodec disable libavcodec [autodetect]
300 --disable-libavformat disable libavformat [autodetect]
301 --disable-libpostproc disable libpostproc [autodetect]
302 --disable-libswscale disable libswscale [autodetect]
303 --disable-tremor-internal disable internal Tremor [enabled]
304 --enable-tremor-low enable lower accuracy internal Tremor [disabled]
305 --enable-tremor enable external Tremor [autodetect]
306 --disable-libvorbis disable libvorbis support [autodetect]
307 --disable-speex disable Speex support [autodetect]
308 --enable-theora enable OggTheora libraries [autodetect]
309 --enable-faad enable external FAAD2 (AAC) [autodetect]
310 --disable-faad-internal disable internal FAAD2 (AAC) [autodetect]
311 --enable-faad-fixed enable fixed-point mode in internal FAAD2 [disabled]
312 --disable-faac disable support for FAAC (AAC encoder) [autodetect]
313 --disable-ladspa disable LADSPA plugin support [autodetect]
314 --disable-libbs2b disable libbs2b audio filter support [autodetect]
315 --disable-libdv disable libdv 0.9.5 en/decoding support [autodetect]
316 --disable-mad disable libmad (MPEG audio) support [autodetect]
317 --disable-mp3lame disable LAME MP3 encoding support [autodetect]
318 --disable-toolame disable Toolame (MPEG layer 2) encoding [autodetect]
319 --disable-twolame disable Twolame (MPEG layer 2) encoding [autodetect]
320 --enable-xmms enable XMMS input plugin support [disabled]
321 --enable-libdca enable libdca support [autodetect]
322 --disable-mp3lib disable builtin mp3lib [autodetect]
323 --disable-liba52 disable liba52 [autodetect]
324 --disable-liba52-internal disable builtin liba52 [autodetect]
325 --disable-libmpeg2 disable builtin libmpeg2 [autodetect]
326 --disable-musepack disable musepack support [autodetect]
329 --disable-vidix disable VIDIX [for x86 *nix]
330 --with-vidix-drivers[=*] list of VIDIX drivers to be compiled in
331 Available: cyberblade,ivtv,mach64,mga,mga_crtc2,
332 nvidia,pm2,pm3,radeon,rage128,s3,sis,unichrome
333 --disable-vidix-pcidb disable VIDIX PCI device name database
334 --enable-dhahelper enable VIDIX dhahelper support
335 --enable-svgalib_helper enable VIDIX svgalib_helper support
336 --enable-gl enable OpenGL video output [autodetect]
337 --disable-matrixview disable OpenGL MatrixView 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]
385 --disable-alsa disable ALSA audio output [autodetect]
386 --disable-ossaudio disable OSS audio output [autodetect]
387 --disable-arts disable aRts audio output [autodetect]
388 --disable-esd disable esd audio output [autodetect]
389 --disable-pulse disable Pulseaudio audio output [autodetect]
390 --disable-jack disable JACK audio output [autodetect]
391 --enable-openal enable OpenAL audio output [disable]
392 --disable-nas disable NAS audio output [autodetect]
393 --disable-sgiaudio disable SGI audio output [autodetect]
394 --disable-sunaudio disable Sun audio output [autodetect]
395 --disable-dart disable DART audio output [autodetect]
396 --disable-win32waveout disable Windows waveout audio output [autodetect]
397 --disable-coreaudio disable CoreAudio audio output [autodetect]
398 --disable-select disable using select() on the audio device [enable]
401 --charset=charset convert the console messages to this character set
402 --language-doc=lang language to use for the documentation [en]
403 --language-man=lang language to use for the man pages [en]
404 --language-msg=lang language to use for the messages [en]
405 --language=lang default language to use [en]
406 Specific options override --language. You can pass a list of languages separated
407 by whitespace or commas instead of a single language. Nonexisting translations
408 will be dropped from each list. All documentation and man page translations
409 available in the list will be installed, for the messages the first available
410 translation will be used. The value "all" will activate all translations. The
411 LINGUAS environment variable is honored. In all cases the fallback is English.
412 Available values are: all $msg_lang_all
414 Miscellaneous options:
415 --enable-runtime-cpudetection enable runtime CPU detection [disable]
416 --enable-cross-compile enable cross-compilation [autodetect]
417 --cc=COMPILER C compiler to build MPlayer [gcc]
418 --host-cc=COMPILER C compiler for tools needed while building [gcc]
419 --as=ASSEMBLER assembler to build MPlayer [as]
420 --nm=NM nm tool to build MPlayer [nm]
421 --yasm=YASM Yasm assembler to build MPlayer [yasm]
422 --ar=AR librarian to build MPlayer [ar]
423 --ranlib=RANLIB ranlib to build MPlayer [ranlib]
424 --windres=WINDRES windres to build MPlayer [windres]
425 --target=PLATFORM target platform (i386-linux, arm-linux, etc)
426 --enable-static build a statically linked binary
427 --with-install=PATH path to a custom install program
430 --enable-mmx enable MMX [autodetect]
431 --enable-mmxext enable MMX2 (Pentium III, Athlon) [autodetect]
432 --enable-3dnow enable 3DNow! [autodetect]
433 --enable-3dnowext enable extended 3DNow! [autodetect]
434 --enable-sse enable SSE [autodetect]
435 --enable-sse2 enable SSE2 [autodetect]
436 --enable-ssse3 enable SSSE3 [autodetect]
437 --enable-shm enable shm [autodetect]
438 --enable-altivec enable AltiVec (PowerPC) [autodetect]
439 --enable-armv5te enable DSP extensions (ARM) [autodetect]
440 --enable-armv6 enable ARMv6 (ARM) [autodetect]
441 --enable-armv6t2 enable ARMv6t2 (ARM) [autodetect]
442 --enable-armvfp enable ARM VFP (ARM) [autodetect]
443 --enable-neon enable NEON (ARM) [autodetect]
444 --enable-iwmmxt enable iWMMXt (ARM) [autodetect]
445 --disable-fastmemcpy disable 3DNow!/SSE/MMX optimized memcpy [enable]
446 --enable-big-endian force byte order to big-endian [autodetect]
447 --enable-debug[=1-3] compile-in debugging information [disable]
448 --enable-profile compile-in profiling information [disable]
449 --disable-sighandler disable sighandler for crashes [enable]
450 --enable-crash-debug enable automatic gdb attach on crash [disable]
451 --enable-dynamic-plugins enable dynamic A/V plugins [disable]
452 --ffmpeg-source-dir=PATH enable features requiring internal FFmpeg headers
454 Use these options if autodetection fails:
455 --extra-cflags=FLAGS extra CFLAGS
456 --extra-ldflags=FLAGS extra LDFLAGS
457 --extra-libs=FLAGS extra linker flags
458 --extra-libs-mplayer=FLAGS extra linker flags for MPlayer
459 --extra-libs-mencoder=FLAGS extra linker flags for MEncoder
460 --with-xvmclib=NAME adapter-specific library name (e.g. XvMCNVIDIA)
462 --with-freetype-config=PATH path to freetype-config
463 --with-fribidi-config=PATH path to fribidi-config
464 --with-glib-config=PATH path to glib*-config
465 --with-gtk-config=PATH path to gtk*-config
466 --with-sdl-config=PATH path to sdl*-config
467 --with-dvdnav-config=PATH path to dvdnav-config
468 --with-dvdread-config=PATH path to dvdread-config
470 This configure script is NOT autoconf-based, even though its output is similar.
471 It will try to autodetect all configuration options. If you --enable an option
472 it will be forcefully turned on, skipping autodetection. This can break
473 compilation, so you need to know what you are doing.
478 # GOTCHA: the variables below defines the default behavior for autodetection
479 # and have - unless stated otherwise - at least 2 states : yes no
480 # If autodetection is available then the third state is: auto
503 test "$CC" && _cc
="$CC"
507 _runtime_cpudetection
=no
515 _libavcodec_internals
=no
516 _libswscale_internals
=no
525 _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
679 _freetypeconfig
='freetype-config'
681 _fribidiconfig
='fribidi-config'
695 def_dos_paths
="#define HAVE_DOS_PATHS 0"
696 def_stream_cache
="#define CONFIG_STREAM_CACHE 1"
697 def_priority
="#undef CONFIG_PRIORITY"
698 def_pthread_cache
="#undef PTHREAD_CACHE"
706 _prefix
=$
(echo $ac_option | cut
-d '=' -f 2)
709 _bindir
=$
(echo $ac_option | cut
-d '=' -f 2)
712 _datadir
=$
(echo $ac_option | cut
-d '=' -f 2)
715 _mandir
=$
(echo $ac_option | cut
-d '=' -f 2)
718 _confdir
=$
(echo $ac_option | cut
-d '=' -f 2)
721 _libdir
=$
(echo $ac_option | cut
-d '=' -f 2)
724 _codecsdir
=$
(echo $ac_option | cut
-d '=' -f 2)
727 _win32codecsdir
=$
(echo $ac_option | cut
-d '=' -f 2)
730 _xanimcodecsdir
=$
(echo $ac_option | cut
-d '=' -f 2)
733 _realcodecsdir
=$
(echo $ac_option | cut
-d '=' -f 2)
737 _install
=$
(echo $ac_option | cut
-d '=' -f 2 )
740 _xvmclib
=$
(echo $ac_option | cut
-d '=' -f 2)
744 _sdlconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
746 --with-freetype-config=*)
747 _freetypeconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
749 --with-fribidi-config=*)
750 _fribidiconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
753 _gtkconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
755 --with-glib-config=*)
756 _glibconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
758 --with-dvdnav-config=*)
759 _dvdnavconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
761 --with-dvdread-config=*)
762 _dvdreadconfig
=$
(echo $ac_option | cut
-d '=' -f 2)
766 extra_cflags
="$extra_cflags $(echo $ac_option | cut -d '=' -f 2-)"
769 extra_ldflags
="$extra_ldflags $(echo $ac_option | cut -d '=' -f 2-)"
772 extra_libs
=$
(echo $ac_option | cut
-d '=' -f 2)
774 --extra-libs-mplayer=*)
775 libs_mplayer
=$
(echo $ac_option | cut
-d '=' -f 2)
777 --extra-libs-mencoder=*)
778 libs_mencoder
=$
(echo $ac_option | cut
-d '=' -f 2)
782 _target
=$
(echo $ac_option | cut
-d '=' -f 2)
785 _cc
=$
(echo $ac_option | cut
-d '=' -f 2)
788 _host_cc
=$
(echo $ac_option | cut
-d '=' -f 2)
791 _as
=$
(echo $ac_option | cut
-d '=' -f 2)
794 _nm
=$
(echo $ac_option | cut
-d '=' -f 2)
797 _yasm
=$
(echo $ac_option | cut
-d '=' -f 2)
800 _ar
=$
(echo $ac_option | cut
-d '=' -f 2)
803 _ranlib
=$
(echo $ac_option | cut
-d '=' -f 2)
806 _windres
=$
(echo $ac_option | cut
-d '=' -f 2)
809 _charset
=$
(echo $ac_option | cut
-d '=' -f 2)
812 language_doc
=$
(echo $ac_option | cut
-d '=' -f 2)
815 language_man
=$
(echo $ac_option | cut
-d '=' -f 2)
818 language_msg
=$
(echo $ac_option | cut
-d '=' -f 2)
821 language
=$
(echo $ac_option | cut
-d '=' -f 2)
840 _debug
=$
(echo $_echo_n '-g'$_echo_c; echo $ac_option | cut
-d '=' -f 2)
845 --enable-runtime-cpudetection) _runtime_cpudetection
=yes ;;
846 --disable-runtime-cpudetection) _runtime_cpudetection
=no
;;
847 --enable-cross-compile) _cross_compile
=yes ;;
848 --disable-cross-compile) _cross_compile
=no
;;
849 --enable-mencoder) _mencoder
=yes ;;
850 --disable-mencoder) _mencoder
=no
;;
851 --enable-mplayer) _mplayer
=yes ;;
852 --disable-mplayer) _mplayer
=no
;;
853 --enable-dynamic-plugins) _dynamic_plugins
=yes ;;
854 --disable-dynamic-plugins) _dynamic_plugins
=no
;;
855 --enable-x11) _x11
=yes ;;
856 --disable-x11) _x11
=no
;;
857 --enable-xshape) _xshape
=yes ;;
858 --disable-xshape) _xshape
=no
;;
859 --enable-xss) _xss
=yes ;;
860 --disable-xss) _xss
=no
;;
861 --enable-xv) _xv
=yes ;;
862 --disable-xv) _xv
=no
;;
863 --enable-xvmc) _xvmc
=yes ;;
864 --disable-xvmc) _xvmc
=no
;;
865 --enable-vdpau) _vdpau
=yes ;;
866 --disable-vdpau) _vdpau
=no
;;
867 --enable-sdl) _sdl
=yes ;;
868 --disable-sdl) _sdl
=no
;;
869 --enable-kva) _kva
=yes ;;
870 --disable-kva) _kva
=no
;;
871 --enable-direct3d) _direct3d
=yes ;;
872 --disable-direct3d) _direct3d
=no
;;
873 --enable-directx) _directx
=yes ;;
874 --disable-directx) _directx
=no
;;
875 --enable-win32waveout) _win32waveout
=yes ;;
876 --disable-win32waveout) _win32waveout
=no
;;
877 --enable-nas) _nas
=yes ;;
878 --disable-nas) _nas
=no
;;
879 --enable-png) _png
=yes ;;
880 --disable-png) _png
=no
;;
881 --enable-mng) _mng
=yes ;;
882 --disable-mng) _mng
=no
;;
883 --enable-jpeg) _jpeg
=yes ;;
884 --disable-jpeg) _jpeg
=no
;;
885 --enable-pnm) _pnm
=yes ;;
886 --disable-pnm) _pnm
=no
;;
887 --enable-md5sum) _md5sum
=yes ;;
888 --disable-md5sum) _md5sum
=no
;;
889 --enable-yuv4mpeg) _yuv4mpeg
=yes ;;
890 --disable-yuv4mpeg) _yuv4mpeg
=no
;;
891 --enable-gif) _gif
=yes ;;
892 --disable-gif) _gif
=no
;;
893 --enable-gl) _gl
=yes ;;
894 --disable-gl) _gl
=no
;;
895 --enable-matrixview) matrixview
=yes ;;
896 --disable-matrixview) matrixview
=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-radio) _radio
=yes ;;
1042 --enable-radio-capture) _radio_capture
=yes ;;
1043 --disable-radio-capture) _radio_capture
=no
;;
1044 --disable-radio) _radio
=no
;;
1045 --enable-radio-v4l) _radio_v4l
=yes ;;
1046 --disable-radio-v4l) _radio_v4l
=no
;;
1047 --enable-radio-v4l2) _radio_v4l2
=yes ;;
1048 --disable-radio-v4l2) _radio_v4l2
=no
;;
1049 --enable-radio-bsdbt848) _radio_bsdbt848
=yes ;;
1050 --disable-radio-bsdbt848) _radio_bsdbt848
=no
;;
1051 --enable-pvr) _pvr
=yes ;;
1052 --disable-pvr) _pvr
=no
;;
1053 --enable-fastmemcpy) _fastmemcpy
=yes ;;
1054 --disable-fastmemcpy) _fastmemcpy
=no
;;
1055 --enable-network) _network
=yes ;;
1056 --disable-network) _network
=no
;;
1057 --enable-winsock2_h) _winsock2_h
=yes ;;
1058 --disable-winsock2_h) _winsock2_h
=no
;;
1059 --enable-smb) _smb
=yes ;;
1060 --disable-smb) _smb
=no
;;
1061 --enable-vidix) _vidix
=yes ;;
1062 --disable-vidix) _vidix
=no
;;
1063 --with-vidix-drivers=*)
1064 _vidix_drivers
=$
(echo $ac_option | cut
-d '=' -f 2)
1066 --disable-vidix-pcidb) _vidix_pcidb
=no
;;
1067 --enable-dhahelper) _dhahelper
=yes ;;
1068 --disable-dhahelper) _dhahelper
=no
;;
1069 --enable-svgalib_helper) _svgalib_helper
=yes ;;
1070 --disable-svgalib_helper) _svgalib_helper
=no
;;
1071 --enable-joystick) _joystick
=yes ;;
1072 --disable-joystick) _joystick
=no
;;
1073 --enable-xvid) _xvid
=yes ;;
1074 --disable-xvid) _xvid
=no
;;
1075 --enable-x264) _x264
=yes ;;
1076 --disable-x264) _x264
=no
;;
1077 --enable-libnut) _libnut
=yes ;;
1078 --disable-libnut) _libnut
=no
;;
1079 --enable-libavutil) _libavutil
=yes ;;
1080 --disable-libavutil) _libavutil
=no
;;
1081 --enable-libavcodec) _libavcodec
=yes ;;
1082 --disable-libavcodec) _libavcodec
=no
;;
1083 --enable-libavformat) _libavformat
=yes ;;
1084 --disable-libavformat) _libavformat
=no
;;
1085 --enable-libpostproc) _libpostproc
=yes ;;
1086 --disable-libpostproc) _libpostproc
=no
;;
1087 --enable-libswscale) _libswscale
=yes ;;
1088 --disable-libswscale) _libswscale
=no
;;
1089 --ffmpeg-source-dir=*)
1090 _ffmpeg_source
=$
(echo $ac_option | cut
-d '=' -f 2 ) ;;
1092 --enable-lirc) _lirc
=yes ;;
1093 --disable-lirc) _lirc
=no
;;
1094 --enable-lircc) _lircc
=yes ;;
1095 --disable-lircc) _lircc
=no
;;
1096 --enable-apple-remote) _apple_remote
=yes ;;
1097 --disable-apple-remote) _apple_remote
=no
;;
1098 --enable-apple-ir) _apple_ir
=yes ;;
1099 --disable-apple-ir) _apple_ir
=no
;;
1100 --enable-gui) _gui
=yes ;;
1101 --disable-gui) _gui
=no
;;
1102 --enable-gtk1) _gtk1
=yes ;;
1103 --disable-gtk1) _gtk1
=no
;;
1104 --enable-termcap) _termcap
=yes ;;
1105 --disable-termcap) _termcap
=no
;;
1106 --enable-termios) _termios
=yes ;;
1107 --disable-termios) _termios
=no
;;
1108 --enable-3dfx) _3dfx
=yes ;;
1109 --disable-3dfx) _3dfx
=no
;;
1110 --enable-s3fb) _s3fb
=yes ;;
1111 --disable-s3fb) _s3fb
=no
;;
1112 --enable-wii) _wii
=yes ;;
1113 --disable-wii) _wii
=no
;;
1114 --enable-tdfxfb) _tdfxfb
=yes ;;
1115 --disable-tdfxfb) _tdfxfb
=no
;;
1116 --disable-tdfxvid) _tdfxvid
=no
;;
1117 --enable-tdfxvid) _tdfxvid
=yes ;;
1118 --disable-xvr100) _xvr100
=no
;;
1119 --enable-xvr100) _xvr100
=yes ;;
1120 --disable-tga) _tga
=no
;;
1121 --enable-tga) _tga
=yes ;;
1122 --enable-directfb) _directfb
=yes ;;
1123 --disable-directfb) _directfb
=no
;;
1124 --enable-zr) _zr
=yes ;;
1125 --disable-zr) _zr
=no
;;
1126 --enable-bl) _bl
=yes ;;
1127 --disable-bl) _bl
=no
;;
1128 --enable-mtrr) _mtrr
=yes ;;
1129 --disable-mtrr) _mtrr
=no
;;
1130 --enable-largefiles) _largefiles
=yes ;;
1131 --disable-largefiles) _largefiles
=no
;;
1132 --enable-shm) _shm
=yes ;;
1133 --disable-shm) _shm
=no
;;
1134 --enable-select) _select
=yes ;;
1135 --disable-select) _select
=no
;;
1136 --enable-linux-devfs) _linux_devfs
=yes ;;
1137 --disable-linux-devfs) _linux_devfs
=no
;;
1138 --enable-cdparanoia) _cdparanoia
=yes ;;
1139 --disable-cdparanoia) _cdparanoia
=no
;;
1140 --enable-cddb) _cddb
=yes ;;
1141 --disable-cddb) _cddb
=no
;;
1142 --enable-big-endian) _big_endian
=yes ;;
1143 --disable-big-endian) _big_endian
=no
;;
1144 --enable-bitmap-font) _bitmap_font
=yes ;;
1145 --disable-bitmap-font) _bitmap_font
=no
;;
1146 --enable-freetype) _freetype
=yes ;;
1147 --disable-freetype) _freetype
=no
;;
1148 --enable-fontconfig) _fontconfig
=yes ;;
1149 --disable-fontconfig) _fontconfig
=no
;;
1150 --enable-unrarexec) _unrar_exec
=yes ;;
1151 --disable-unrarexec) _unrar_exec
=no
;;
1152 --enable-ftp) _ftp
=yes ;;
1153 --disable-ftp) _ftp
=no
;;
1154 --enable-vstream) _vstream
=yes ;;
1155 --disable-vstream) _vstream
=no
;;
1156 --enable-pthreads) _pthreads
=yes ;;
1157 --disable-pthreads) _pthreads
=no
;;
1158 --enable-w32threads) _w32threads
=yes ;;
1159 --disable-w32threads) _w32threads
=no
;;
1160 --enable-ass) _ass
=yes ;;
1161 --disable-ass) _ass
=no
;;
1162 --enable-rpath) _rpath
=yes ;;
1163 --disable-rpath) _rpath
=no
;;
1165 --enable-fribidi) _fribidi
=yes ;;
1166 --disable-fribidi) _fribidi
=no
;;
1168 --enable-enca) _enca
=yes ;;
1169 --disable-enca) _enca
=no
;;
1171 --enable-inet6) _inet6
=yes ;;
1172 --disable-inet6) _inet6
=no
;;
1174 --enable-gethostbyname2) _gethostbyname2
=yes ;;
1175 --disable-gethostbyname2) _gethostbyname2
=no
;;
1177 --enable-dga1) _dga1
=yes ;;
1178 --disable-dga1) _dga1
=no
;;
1179 --enable-dga2) _dga2
=yes ;;
1180 --disable-dga2) _dga2
=no
;;
1182 --enable-menu) _menu
=yes ;;
1183 --disable-menu) _menu
=no
;;
1185 --enable-qtx) _qtx
=yes ;;
1186 --disable-qtx) _qtx
=no
;;
1188 --enable-coreaudio) _coreaudio
=yes ;;
1189 --disable-coreaudio) _coreaudio
=no
;;
1190 --enable-corevideo) _corevideo
=yes ;;
1191 --disable-corevideo) _corevideo
=no
;;
1192 --enable-quartz) _quartz
=yes ;;
1193 --disable-quartz) _quartz
=no
;;
1194 --enable-macosx-finder) _macosx_finder
=yes ;;
1195 --disable-macosx-finder) _macosx_finder
=no
;;
1196 --enable-macosx-bundle) _macosx_bundle
=yes ;;
1197 --disable-macosx-bundle) _macosx_bundle
=no
;;
1199 --enable-maemo) _maemo
=yes ;;
1200 --disable-maemo) _maemo
=no
;;
1202 --enable-sortsub) _sortsub
=yes ;;
1203 --disable-sortsub) _sortsub
=no
;;
1205 --enable-crash-debug) _crash_debug
=yes ;;
1206 --disable-crash-debug) _crash_debug
=no
;;
1207 --enable-sighandler) _sighandler
=yes ;;
1208 --disable-sighandler) _sighandler
=no
;;
1209 --enable-win32dll) _win32dll
=yes ;;
1210 --disable-win32dll) _win32dll
=no
;;
1212 --enable-sse) _sse
=yes ;;
1213 --disable-sse) _sse
=no
;;
1214 --enable-sse2) _sse2
=yes ;;
1215 --disable-sse2) _sse2
=no
;;
1216 --enable-ssse3) _ssse3
=yes ;;
1217 --disable-ssse3) _ssse3
=no
;;
1218 --enable-mmxext) _mmxext
=yes ;;
1219 --disable-mmxext) _mmxext
=no
;;
1220 --enable-3dnow) _3dnow
=yes ;;
1221 --disable-3dnow) _3dnow
=no _3dnowext
=no
;;
1222 --enable-3dnowext) _3dnow
=yes _3dnowext
=yes ;;
1223 --disable-3dnowext) _3dnowext
=no
;;
1224 --enable-cmov) _cmov
=yes ;;
1225 --disable-cmov) _cmov
=no
;;
1226 --enable-fast-cmov) _fast_cmov
=yes ;;
1227 --disable-fast-cmov) _fast_cmov
=no
;;
1228 --enable-altivec) _altivec
=yes ;;
1229 --disable-altivec) _altivec
=no
;;
1230 --enable-armv5te) _armv5te
=yes ;;
1231 --disable-armv5te) _armv5te
=no
;;
1232 --enable-armv6) _armv6
=yes ;;
1233 --disable-armv6) _armv6
=no
;;
1234 --enable-armv6t2) _armv6t2
=yes ;;
1235 --disable-armv6t2) _armv6t2
=no
;;
1236 --enable-armvfp) _armvfp
=yes ;;
1237 --disable-armvfp) _armvfp
=no
;;
1238 --enable-neon) neon
=yes ;;
1239 --disable-neon) neon
=no
;;
1240 --enable-iwmmxt) _iwmmxt
=yes ;;
1241 --disable-iwmmxt) _iwmmxt
=no
;;
1242 --enable-mmx) _mmx
=yes ;;
1243 --disable-mmx) # 3Dnow! and MMX2 require MMX
1244 _3dnow
=no _3dnowext
=no _mmx
=no _mmxext
=no
;;
1247 echo "Unknown parameter: $ac_option"
1254 if test "$_gui" = yes ; then
1255 die
"Internal GUI was removed from MPlayer. Please use one of many available\n frontends\
1256 (http://www.mplayerhq.hu/design7/projects.html#mplayer_frontends)."
1259 # Atmos: moved this here, to be correct, if --prefix is specified
1260 test -z "$_bindir" && _bindir
="$_prefix/bin"
1261 test -z "$_datadir" && _datadir
="$_prefix/share/mplayer"
1262 test -z "$_mandir" && _mandir
="$_prefix/share/man"
1263 test -z "$_confdir" && _confdir
="$_prefix/etc/mplayer"
1264 test -z "$_libdir" && _libdir
="$_prefix/lib"
1266 # Determine our OS name and CPU architecture
1267 if test -z "$_target" ; then
1269 system_name
=$
(uname
-s 2>&1)
1270 case "$system_name" in
1271 Linux|FreeBSD|NetBSD|OpenBSD|DragonFly|BSD
/OS|Darwin|SunOS|QNX|GNU|BeOS|MorphOS|AIX|AmigaOS
)
1285 [cC
][yY
][gG
][wW
][iI
][nN
]*)
1295 system_name
="$system_name-UNKNOWN"
1300 # host's CPU/instruction set
1301 host_arch
=$
(uname
-p 2>&1)
1302 case "$host_arch" in
1303 i386|sparc|ppc|alpha|arm|mips|vax
)
1305 powerpc
) # Darwin returns 'powerpc'
1308 *) # uname -p on Linux returns 'unknown' for the processor type,
1309 # OpenBSD returns 'Intel Pentium/MMX ("Genuine Intel" 586-class)'
1311 # Maybe uname -m (machine hardware name) returns something we
1314 # x86/x86pc is used by QNX
1315 case "$(uname -m 2>&1)" in
1316 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
;;
1317 ia64
) host_arch
=ia64
;;
1318 macppc|ppc
) host_arch
=ppc
;;
1319 ppc64
) host_arch
=ppc64
;;
1320 alpha
) host_arch
=alpha
;;
1321 sparc
) host_arch
=sparc
;;
1322 sparc64
) host_arch
=sparc64
;;
1323 parisc
*|hppa
*|
9000*) host_arch
=hppa
;;
1324 arm
*|zaurus|cats
) host_arch
=arm
;;
1325 sh3|sh4|sh4a
) host_arch
=sh
;;
1326 s390
) host_arch
=s390
;;
1327 s390x
) host_arch
=s390x
;;
1328 *mips
*) host_arch
=mips
;;
1329 vax
) host_arch
=vax
;;
1330 xtensa
*) host_arch
=xtensa
;;
1331 *) host_arch
=UNKNOWN
;;
1335 else # if test -z "$_target"
1336 system_name
=$
(echo $_target | cut
-d '-' -f 2)
1337 case "$(echo $system_name | tr A-Z a-z)" in
1338 linux
) system_name
=Linux
;;
1339 freebsd
) system_name
=FreeBSD
;;
1340 gnu
/kfreebsd
) system_name
=FreeBSD
;;
1341 netbsd
) system_name
=NetBSD
;;
1342 bsd
/os
) system_name
=BSD
/OS
;;
1343 openbsd
) system_name
=OpenBSD
;;
1344 dragonfly
) system_name
=DragonFly
;;
1345 sunos
) system_name
=SunOS
;;
1346 qnx
) system_name
=QNX
;;
1347 morphos
) system_name
=MorphOS
;;
1348 amigaos
) system_name
=AmigaOS
;;
1349 mingw32
*) system_name
=MINGW32
;;
1351 # We need to convert underscores so that values like k6-2 and pentium-mmx can be passed
1352 host_arch
=$
(echo $_target | cut
-d '-' -f 1)
1353 if test $
(echo $host_arch) != "x86_64" ; then
1354 host_arch
=$
(echo $host_arch |
tr '_' '-')
1358 extra_cflags
="-I. $extra_cflags"
1359 _timer
=timer-linux.c
1362 extra_ldflags
="$extra_ldflags -L/usr/local/lib"
1363 extra_cflags
="$extra_cflags -I/usr/local/include"
1366 if netbsd || dragonfly
; then
1367 extra_ldflags
="$extra_ldflags -L/usr/pkg/lib"
1368 extra_cflags
="$extra_cflags -I/usr/pkg/include"
1372 extra_cflags
="-mdynamic-no-pic -falign-loops=16 -shared-libgcc $extra_cflags"
1373 _timer
=timer-darwin.c
1377 extra_ldflags
="$extra_ldflags -lC"
1388 # -lwinmm is always needed for osdep/timer-win2.c
1389 extra_ldflags
="$extra_ldflags -lwinmm"
1393 def_dos_paths
="#define HAVE_DOS_PATHS 1"
1394 def_priority
="#define CONFIG_PRIORITY 1"
1406 def_stream_cache
="#undef CONFIG_STREAM_CACHE"
1407 extra_cflags
="-DNEWLIB -D__USE_INLINE__ $extra_cflags"
1411 extra_ldflags
="$extra_ldflags -lph"
1419 def_dos_paths
="#define HAVE_DOS_PATHS 1"
1420 def_priority
="#define CONFIG_PRIORITY 1"
1423 for I
in "$TMPDIR" "$TEMPDIR" "/tmp" ; do
1428 TMPLOG
="configure.log"
1429 TMPC
="$I/mplayer-conf-$RANDOM-$$.c"
1430 TMPCPP
="$I/mplayer-conf-$RANDOM-$$.cpp"
1431 TMPEXE
="$I/mplayer-conf-$RANDOM-$$$_exesuf"
1432 TMPH
="$I/mplayer-conf-$RANDOM-$$.h"
1433 TMPS
="$I/mplayer-conf-$RANDOM-$$.S"
1436 echo configuration
: $_configuration > "$TMPLOG"
1440 if test "$_runtime_cpudetection" = yes && ! x86
&& ! ppc
; then
1441 die
"Runtime CPU detection only works for x86, x86-64 and PPC!"
1445 # Checking CC version...
1446 # Intel C++ Compilers (no autoselect, use CC=/some/binary ./configure)
1447 if test "$(basename $_cc)" = "icc" ||
test "$(basename $_cc)" = "ecc"; then
1448 echocheck
"$_cc version"
1450 cc_name
=$
($_cc -V 2>&1 |
head -n 1 | cut
-d ',' -f 1)
1451 cc_version
=$
($_cc -V 2>&1 |
head -n 1 | cut
-d ',' -f 2 | cut
-d ' ' -f 3)
1452 _cc_major
=$
(echo $cc_version | cut
-d '.' -f 1)
1453 _cc_minor
=$
(echo $cc_version | cut
-d '.' -f 2)
1454 # TODO verify older icc/ecc compatibility
1457 cc_version
="v. ?.??, bad"
1461 cc_version
="$cc_version, ok"
1464 cc_version
="$cc_version, bad"
1468 echores
"$cc_version"
1470 for _cc
in "$_cc" cc gcc
; do
1471 cc_name_tmp
=$
($_cc -v 2>&1 |
tail -n 1 | cut
-d ' ' -f 1)
1472 if test "$cc_name_tmp" = "gcc"; then
1473 cc_name
=$cc_name_tmp
1474 echocheck
"$_cc version"
1476 cc_version
=$
($_cc -dumpversion 2>&1)
1482 _cc_major
=$
(echo $cc_version | cut
-d '.' -f 1)
1483 _cc_minor
=$
(echo $cc_version | cut
-d '.' -f 2)
1484 _cc_mini
=$
(echo $cc_version | cut
-d '.' -f 3)
1487 echores
"$cc_version"
1492 test "$cc_fail" = yes && die
"unsupported compiler version"
1494 if test -z "$_target" && x86
; then
1497 int test[(int)sizeof(char *)-7];
1501 cc_check
&& host_arch
=x86_64 || host_arch
=i386
1504 echo "Detected operating system: $system_name"
1505 echo "Detected host architecture: $host_arch"
1508 test "$_host_cc" || _host_cc
=$_cc
1511 echocheck
"cross compilation"
1512 if test $_cross_compile = auto
; then
1514 int main(void) { return 0; }
1517 cc_check
&& "$TMPEXE" && _cross_compile
=no
1519 echores
$_cross_compile
1521 if test $_cross_compile = yes; then
1529 # now that we know what compiler should be used for compilation, try to find
1530 # out which assembler is used by the $_cc compiler
1531 if test "$_as" = auto
; then
1532 _as
=$
($_cc -print-prog-name=as
)
1533 test -z "$_as" && _as
=as
1536 if test "$_nm" = auto
; then
1537 _nm
=$
($_cc -print-prog-name=nm
)
1538 test -z "$_nm" && _nm
=nm
1541 # XXX: this should be ok..
1544 if test "$_runtime_cpudetection" = no
; then
1546 # Cygwin has /proc/cpuinfo, but only supports Intel CPUs
1547 # FIXME: Remove the cygwin check once AMD CPUs are supported
1548 if test -r /proc
/cpuinfo
&& ! cygwin
; then
1549 # Linux with /proc mounted, extract CPU information from it
1550 _cpuinfo
="cat /proc/cpuinfo"
1551 elif test -r /compat
/linux
/proc
/cpuinfo
&& ! x86_32
; then
1552 # FreeBSD with Linux emulation /proc mounted,
1553 # extract CPU information from it
1554 _cpuinfo
="cat /compat/linux/proc/cpuinfo"
1555 elif darwin
&& ! x86
; then
1556 # use hostinfo on Darwin
1559 # use 'lsattr' on AIX
1560 _cpuinfo
="lsattr -E -l proc0 -a type"
1562 # all other OSes try to extract CPU information from a small helper
1563 # program cpuinfo instead
1564 $_cc -o cpuinfo
$_exesuf cpuinfo.c
1565 _cpuinfo
="./cpuinfo$_exesuf"
1569 # gather more CPU information
1570 pname
=$
($_cpuinfo |
grep 'model name' | cut
-d ':' -f 2 |
head -n 1)
1571 pvendor
=$
($_cpuinfo |
grep 'vendor_id' | cut
-d ':' -f 2 | cut
-d ' ' -f 2 |
head -n 1)
1572 pfamily
=$
($_cpuinfo |
grep 'cpu family' | cut
-d ':' -f 2 | cut
-d ' ' -f 2 |
head -n 1)
1573 pmodel
=$
($_cpuinfo |
grep -v 'model name' |
grep 'model' | cut
-d ':' -f 2 | cut
-d ' ' -f 2 |
head -n 1)
1574 pstepping
=$
($_cpuinfo |
grep 'stepping' | cut
-d ':' -f 2 | cut
-d ' ' -f 2 |
head -n 1)
1576 exts
=$
($_cpuinfo |
egrep 'features|flags' | cut
-d ':' -f 2 |
head -n 1)
1578 pparam
=$
(echo $exts |
sed -e s
/k6_mtrr
/mtrr
/ -e s
/cyrix_arr
/mtrr
/ -e s
/centaur_mcr
/mtrr
/ \
1579 -e s
/xmm
/sse
/ -e s
/kni
/sse
/)
1581 for ext
in $pparam ; do
1582 eval test \"\
$_$ext\" = auto
2>/dev
/null
&& eval _
$ext=kernel_check
1585 # SSE implies MMX2, but not all SSE processors report the mmxext CPU flag.
1586 test $_sse = kernel_check
&& _mmxext
=kernel_check
1588 echocheck
"CPU vendor"
1589 echores
"$pvendor ($pfamily:$pmodel:$pstepping)"
1591 echocheck
"CPU type"
1595 fi # test "$_runtime_cpudetection" = no
1597 if x86
&& test "$_runtime_cpudetection" = no
; then
1599 if test "$1" = kernel_check
; then
1600 echocheck
"kernel support of $2"
1604 void catch() { exit(1); }
1606 signal(SIGILL, catch);
1607 __asm__ volatile ("$3":::"memory"); return 0;
1611 if cc_check
&& tmp_run
; then
1614 _optimizing
="$_optimizing $2"
1619 echo "It seems that your kernel does not correctly support $2."
1620 echo "To use $2 extensions in MPlayer, you have to upgrade/recompile your kernel!"
1627 extcheck
$_mmx "mmx" "emms"
1628 extcheck
$_mmxext "mmxext" "sfence"
1629 extcheck
$_3dnow "3dnow" "femms"
1630 extcheck
$_3dnowext "3dnowext" "pswapd %%mm0, %%mm0"
1631 extcheck
$_sse "sse" "xorps %%xmm0, %%xmm0" || _gcc3_ext
="$_gcc3_ext -mno-sse"
1632 extcheck
$_sse2 "sse2" "xorpd %%xmm0, %%xmm0" || _gcc3_ext
="$_gcc3_ext -mno-sse2"
1633 extcheck
$_ssse3 "ssse3" "pabsd %%xmm0, %%xmm0"
1634 extcheck
$_cmov "cmov" "cmovb %%eax,%%ebx"
1636 echocheck
"mtrr support"
1637 if test "$_mtrr" = kernel_check
; then
1639 _optimizing
="$_optimizing mtrr"
1643 if test "$_gcc3_ext" != ""; then
1644 # if we had to disable sse/sse2 because the active kernel does not
1645 # support this instruction set extension, we also have to tell
1646 # gcc3 to not generate sse/sse2 instructions for normal C code
1648 int main(void) { return 0; }
1650 cc_check
$_march $_gcc3_ext && _march
="$_march $_gcc3_ext"
1656 def_fast_64bit
='#define HAVE_FAST_64BIT 0'
1657 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 0'
1658 _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'
1659 case "$host_arch" in
1660 i
[3-9]86|x86|x86pc|k5|k6|k6-2|k6-3|pentium
*|athlon
*|i586-i686
)
1662 _target_arch
="ARCH_X86 = yes"
1663 _target_subarch
="ARCH_X86_32 = yes"
1664 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
1669 if test "$_runtime_cpudetection" = no
; then
1673 3) proc
=i386 iproc
=386 ;;
1674 4) proc
=i486 iproc
=486 ;;
1675 5) iproc
=586 # LGB: models are: K5/SSA5 K5 K5 K5 ? ? K6 K6 K6-2 K6-3
1676 # K6 model 13 are the K6-2+ and K6-III+, only differing in cache size.
1677 if test "$pmodel" -eq 9 -o "$pmodel" -eq 13; then
1679 elif test "$pmodel" -eq 5 -o "$pmodel" -eq 10; then
1681 elif test "$pmodel" -ge 8; then
1683 elif test "$pmodel" -ge 6; then
1690 # It's a bit difficult to determine the correct type of Family 6
1691 # AMD CPUs just from their signature. Instead, we check directly
1692 # whether it supports SSE.
1693 if test "$_sse" = yes; then
1694 # gcc treats athlon-xp, athlon-4 and athlon-mp similarly.
1697 # Again, gcc treats athlon and athlon-tbird similarly.
1702 # k8 cpu-type only supported in gcc >= 3.4.0, but that will be
1703 # caught and remedied in the optimization tests below.
1707 *) proc
=k8 iproc
=686 ;;
1712 3) proc
=i386 iproc
=386 ;;
1713 4) proc
=i486 iproc
=486 ;;
1715 if test "$pmodel" -eq 4 ||
test "$pmodel" -eq 8; then
1716 proc
=pentium-mmx
# 4 is desktop, 8 is mobile
1722 if test "$pmodel" -ge 15; then
1724 elif test "$pmodel" -eq 9 -o "$pmodel" -ge 13; then
1726 elif test "$pmodel" -ge 7; then
1728 elif test "$pmodel" -ge 3; then
1735 # A nocona in 32-bit mode has no more capabilities than a prescott.
1736 if test "$pmodel" -ge 3; then
1741 test $_fast_cmov = "auto" && _fast_cmov
=no
1743 *) proc
=prescott iproc
=686 ;;
1749 if test "$pmodel" -ge 8; then
1751 elif test "$pmodel" -ge 4; then
1758 if test "$pmodel" -ge 9; then
1765 *) proc
=i686 iproc
=i686
;;
1770 3) proc
=i386 iproc
=386 ;;
1771 4) proc
=i486 iproc
=486 ;;
1772 *) proc
=i586 iproc
=586 ;;
1776 proc
=i586 iproc
=586 ;;
1778 fi # test "$_runtime_cpudetection" = no
1781 # check that gcc supports our CPU, if not, fall back to earlier ones
1782 # LGB: check -mcpu and -march swithing step by step with enabling
1783 # to fall back till 386.
1785 # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
1787 if [ "$cc_vendor" = "gnu" ] && ([ "$_cc_major" -gt 3 ] ||
( [ "$_cc_major" = 3 ] && [ "$_cc_minor" -ge 4 ])) ; then
1793 echocheck
"GCC & CPU optimization abilities"
1795 int main(void) { return 0; }
1797 if test "$_runtime_cpudetection" = no
; then
1798 cc_check
-march=native
&& proc
=native
1799 if test "$proc" = "k8"; then
1800 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon-xp
1802 if test "$proc" = "athlon-xp"; then
1803 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon
1805 if test "$proc" = "k6-3" ||
test "$proc" = "k6-2"; then
1806 cc_check
-march=$proc $cpuopt=$proc || proc
=k6
1808 if test "$proc" = "k6" ||
test "$proc" = "c3"; then
1809 if ! cc_check
-march=$proc $cpuopt=$proc; then
1810 if cc_check
-march=i586
$cpuopt=i686
; then
1817 if test "$proc" = "prescott" ; then
1818 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium4
1820 if test "$proc" = "core2" ; then
1821 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium-m
1823 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
1824 cc_check
-march=$proc $cpuopt=$proc || proc
=i686
1826 if test "$proc" = "i686" ||
test "$proc" = "pentium-mmx" ||
test "$proc" = "winchip-c6" ||
test "$proc" = "winchip2"; then
1827 cc_check
-march=$proc $cpuopt=$proc || proc
=i586
1829 if test "$proc" = "i586"; then
1830 cc_check
-march=$proc $cpuopt=$proc || proc
=i486
1832 if test "$proc" = "i486" ; then
1833 cc_check
-march=$proc $cpuopt=$proc || proc
=i386
1835 if test "$proc" = "i386" ; then
1836 cc_check
-march=$proc $cpuopt=$proc || proc
=error
1838 if test "$proc" = "error" ; then
1839 echores
"CPU optimization disabled. CPU not recognized or your compiler is too old."
1843 elif test "$proc" = "i586-i686"; then
1844 _march
="-march=i586"
1845 _mcpu
="$cpuopt=i686"
1848 _march
="-march=$proc"
1849 _mcpu
="$cpuopt=$proc"
1852 else # if test "$_runtime_cpudetection" = no
1853 _mcpu
="$cpuopt=generic"
1854 # at least i486 required, for bswap instruction
1855 _march
="-march=i486"
1856 cc_check
$_mcpu || _mcpu
="$cpuopt=i686"
1857 cc_check
$_mcpu || _mcpu
=""
1858 cc_check
$_march $_mcpu || _march
=""
1861 ## Gabucino : --target takes effect here (hopefully...) by overwriting
1862 ## autodetected mcpu/march parameters
1863 if test "$_target" ; then
1864 # TODO: it may be a good idea to check GCC and fall back in all cases
1865 if test "$host_arch" = "i586-i686"; then
1866 _march
="-march=i586"
1867 _mcpu
="$cpuopt=i686"
1869 _march
="-march=$host_arch"
1870 _mcpu
="$cpuopt=$host_arch"
1878 i586|k5|k6|k6-2|k6-3|pentium|pentium-mmx
) iproc
=586 ;;
1879 i686|athlon
*|pentium
*) iproc
=686 ;;
1884 if test $_cmov = "yes" && test $_fast_cmov = "auto" ; then
1895 _target_arch
='ARCH_IA64 = yes'
1896 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
1902 _target_subarch
='ARCH_X86_64 = yes'
1903 _target_arch
="ARCH_X86 = yes"
1904 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
1905 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
1908 # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
1909 if test "$cc_vendor" = "gnu" && test "$_cc_major" -gt 3 -o "$_cc_major" -eq 3 -a "$_cc_minor" -ge 4 ; then
1914 test $_fast_cmov = "auto" && _fast_cmov
=yes
1915 if test "$_runtime_cpudetection" = no
; then
1923 # 64-bit prescotts exist, but as far as GCC is concerned they
1924 # have the same capabilities as a nocona.
1932 fi # test "$_runtime_cpudetection" = no
1934 echocheck
"GCC & CPU optimization abilities"
1936 int main(void) { return 0; }
1938 # This is a stripped-down version of the i386 fallback.
1939 if test "$_runtime_cpudetection" = no
; then
1940 cc_check
-march=native
&& proc
=native
1941 # --- AMD processors ---
1942 if test "$proc" = "k8"; then
1943 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon-xp
1945 # This will fail if gcc version < 3.3, which is ok because earlier
1946 # versions don't really support 64-bit on amd64.
1947 # Is this a valid assumption? -Corey
1948 if test "$proc" = "athlon-xp"; then
1949 cc_check
-march=$proc $cpuopt=$proc || proc
=error
1951 # --- Intel processors ---
1952 if test "$proc" = "core2"; then
1953 cc_check
-march=$proc $cpuopt=$proc || proc
=nocona
1955 if test "$proc" = "nocona"; then
1956 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium4
1958 if test "$proc" = "pentium4"; then
1959 cc_check
-march=$proc $cpuopt=$proc || proc
=error
1962 _march
="-march=$proc"
1963 _mcpu
="$cpuopt=$proc"
1964 if test "$proc" = "error" ; then
1965 echores
"CPU optimization disabled. CPU not recognized or your compiler is too old."
1969 else # if test "$_runtime_cpudetection" = no
1970 # x86-64 is an undocumented option, an intersection of k8 and nocona.
1971 _march
="-march=x86-64"
1972 _mcpu
="$cpuopt=generic"
1973 cc_check
$_mcpu || _mcpu
="x86-64"
1974 cc_check
$_mcpu || _mcpu
=""
1975 cc_check
$_march $_mcpu || _march
=""
1985 _target_arch
='ARCH_SPARC = yes'
1987 if test "$host_arch" = "sparc64" ; then
1990 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
1992 echocheck
"CPU type"
1994 case "$(echo $karch)" in
1999 sun4u
) proc
=ultrasparc _vis
='yes' ;;
2011 arm|armv4l|armv5tel
)
2013 _target_arch
='ARCH_ARM = yes'
2019 _target_arch
='ARCH_AVR32 = yes'
2020 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
2026 _target_arch
='ARCH_SH4 = yes'
2030 ppc|ppc64|powerpc|powerpc64
)
2032 def_dcbzl
='#define HAVE_DCBZL 0'
2033 _target_arch
='ARCH_PPC = yes'
2034 def_fast_unaligned
='#define HAVE_FAST_UNALIGNED 1'
2037 if test "$host_arch" = "ppc64" -o "$host_arch" = "powerpc64" ; then
2039 _target_subarch
='ARCH_PPC64 = yes'
2040 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
2042 echocheck
"CPU type"
2043 case $system_name in
2045 proc
=$
($_cpuinfo |
grep 'cpu' | cut
-d ':' -f 2 | cut
-d ',' -f 1 | cut
-b 2- |
head -n 1)
2046 if test -n "$($_cpuinfo | grep altivec)"; then
2047 test $_altivec = auto
&& _altivec
=yes
2051 proc
=$
($_cpuinfo |
grep "Processor type" | cut
-f 3 -d ' ' |
sed 's/ppc//')
2052 if [ $
(sysctl
-n hw.vectorunit
) -eq 1 -o \
2053 "$(sysctl -n hw.optional.altivec 2> /dev/null)" = "1" ]; then
2054 test $_altivec = auto
&& _altivec
=yes
2058 # only gcc 3.4 works reliably with AltiVec code under NetBSD
2060 2*|
3.0*|
3.1*|
3.2*|
3.3*)
2063 if [ $
(sysctl
-n machdep.altivec
) -eq 1 ]; then
2064 test $_altivec = auto
&& _altivec
=yes
2070 proc
=$
($_cpuinfo |
grep 'type' | cut
-f 2 -d ' ' |
sed 's/PowerPC_//')
2073 if test "$_altivec" = yes; then
2074 echores
"$proc altivec"
2080 echocheck
"GCC & CPU optimization abilities"
2082 if test -n "$proc"; then
2084 601) _march
='-mcpu=601' _mcpu
='-mtune=601' ;;
2085 603) _march
='-mcpu=603' _mcpu
='-mtune=603' ;;
2086 603e|
603ev
) _march
='-mcpu=603e' _mcpu
='-mtune=603e' ;;
2087 604|
604e|
604r|
604ev
) _march
='-mcpu=604' _mcpu
='-mtune=604' ;;
2088 740|
740/750|
745/755) _march
='-mcpu=740' _mcpu
='-mtune=740' ;;
2089 750|
750CX
) _march
='-mcpu=750' _mcpu
='-mtune=750' ;;
2090 POWER
) _march
='-mcpu=power' _mcpu
='-mtune=power' ;;
2091 POWER2
) _march
='-mcpu=power2' _mcpu
='-mtune=power2' ;;
2092 POWER3
) _march
='-mcpu=power3' _mcpu
='-mtune=power3' ;;
2095 # gcc 3.1(.1) and up supports 7400 and 7450
2096 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "1" ||
test "$_cc_major" -ge "4"; then
2098 7400*|
7410*) _march
='-mcpu=7400' _mcpu
='-mtune=7400' ;;
2099 7447*|
7450*|
7455*) _march
='-mcpu=7450' _mcpu
='-mtune=7450' ;;
2103 # gcc 3.2 and up supports 970
2104 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "3" ||
test "$_cc_major" -ge "4"; then
2106 970*|PPC970
*) _march
='-mcpu=970' _mcpu
='-mtune=970'
2107 def_dcbzl
='#define HAVE_DCBZL 1' ;;
2111 # gcc 3.3 and up supports POWER4
2112 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "3" ||
test "$_cc_major" -ge "4"; then
2114 POWER4
) _march
='-mcpu=power4' _mcpu
='-mtune=power4' ;;
2118 # gcc 3.4 and up supports 440*
2119 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "4" ||
test "$_cc_major" -ge "4"; then
2121 440EP
*) _march
='-mcpu=440fp' _mcpu
='-mtune=440fp' ;;
2122 440G
* ) _march
='-mcpu=440' _mcpu
='-mtune=440' ;;
2126 # gcc 4.0 and up supports POWER5
2127 if test "$_cc_major" -ge "4"; then
2129 POWER5
*) _march
='-mcpu=power5' _mcpu
='-mtune=power5' ;;
2135 if test -n "$_mcpu"; then
2136 _optimizing
=$
(echo $_mcpu | cut
-c 8-)
2137 echores
"$_optimizing"
2146 _target_arch
='ARCH_ALPHA = yes'
2148 def_fast_64bit
='#define HAVE_FAST_64BIT 1'
2150 echocheck
"CPU type"
2153 unsigned long ver, mask;
2154 __asm__ ("implver %0" : "=r" (ver));
2155 __asm__ ("amask %1, %0" : "=r" (mask) : "r" (-1));
2156 printf("%ld-%x\n", ver, ~mask);
2160 $_cc -o "$TMPEXE" "$TMPC"
2161 case $
("$TMPEXE") in
2163 0-0) proc
="ev4"; _mvi
="0";;
2164 1-0) proc
="ev5"; _mvi
="0";;
2165 1-1) proc
="ev56"; _mvi
="0";;
2166 1-101) proc
="pca56"; _mvi
="1";;
2167 2-303) proc
="ev6"; _mvi
="1";;
2168 2-307) proc
="ev67"; _mvi
="1";;
2169 2-1307) proc
="ev68"; _mvi
="1";;
2173 echocheck
"GCC & CPU optimization abilities"
2174 if test "$proc" = "ev68" ; then
2175 cc_check
-mcpu=$proc || proc
=ev67
2177 if test "$proc" = "ev67" ; then
2178 cc_check
-mcpu=$proc || proc
=ev6
2188 _target_arch
='ARCH_SGI_MIPS = yes'
2192 echocheck
"CPU type"
2193 proc
=$
(hinv
-c processor |
grep CPU | cut
-d " " -f3)
2194 case "$(echo $proc)" in
2195 R3000
) _march
='-mips1' _mcpu
='-mtune=r2000' ;;
2196 R4000
) _march
='-mips3' _mcpu
='-mtune=r4000' ;;
2197 R4400
) _march
='-mips3' _mcpu
='-mtune=r4400' ;;
2198 R4600
) _march
='-mips3' _mcpu
='-mtune=r4600' ;;
2199 R5000
) _march
='-mips4' _mcpu
='-mtune=r5000' ;;
2200 R8000|R10000|R12000|R14000|R16000
) _march
='-mips4' _mcpu
='-mtune=r8000' ;;
2202 # gcc < 3.x does not support -mtune.
2203 if test "$cc_vendor" = "gnu" && test "$_cc_major" -lt 3 ; then
2213 _target_arch
='ARCH_PA_RISC = yes'
2219 _target_arch
='ARCH_S390 = yes'
2225 _target_arch
='ARCH_S390X = yes'
2231 _target_arch
='ARCH_VAX = yes'
2237 _target_arch
='ARCH_XTENSA = yes'
2243 _target_arch
='ARCH_GENERIC = yes'
2247 echo "The architecture of your CPU ($host_arch) is not supported by this configure script"
2248 echo "It seems nobody has ported MPlayer to your OS or CPU type yet."
2249 die
"unsupported architecture $host_arch"
2251 esac # case "$host_arch" in
2253 if test "$_runtime_cpudetection" = yes ; then
2255 test "$_cmov" != no
&& _cmov
=yes
2257 test "$_mmx" != no
&& _mmx
=yes
2258 test "$_3dnow" != no
&& _3dnow
=yes
2259 test "$_3dnowext" != no
&& _3dnowext
=yes
2260 test "$_mmxext" != no
&& _mmxext
=yes
2261 test "$_sse" != no
&& _sse
=yes
2262 test "$_sse2" != no
&& _sse2
=yes
2263 test "$_ssse3" != no
&& _ssse3
=yes
2264 test "$_mtrr" != no
&& _mtrr
=yes
2273 echocheck
"byte order"
2274 if test "$_big_endian" = auto
; then
2276 short ascii_name[] = { (('M'<<8)|'P'),(('l'<<8)|'a'),(('y'<<8)|'e'),(('r'<<8)|'B'),
2277 (('i'<<8)|'g'),(('E'<<8)|'n'),(('d'<<8)|'i'),(('a'<<8)|'n'),0};
2278 int main(void) { return (int)ascii_name; }
2281 if strings $TMPEXE |
grep -q -l MPlayerBigEndian
; then
2287 echo ${_echo_n} "failed to autodetect byte order, defaulting to ${_echo_c}"
2290 if test "$_big_endian" = yes ; then
2291 _byte_order
='big-endian'
2292 def_words_endian
='#define WORDS_BIGENDIAN 1'
2293 def_bigendian
='#define HAVE_BIGENDIAN 1'
2295 _byte_order
='little-endian'
2296 def_words_endian
='#undef WORDS_BIGENDIAN'
2297 def_bigendian
='#define HAVE_BIGENDIAN 0'
2299 echores
"$_byte_order"
2302 echocheck
"extern symbol prefix"
2306 cc_check
-c || die
"Symbol mangling check failed."
2307 sym
=$
($_nm -P -g $TMPEXE)
2308 extern_prefix
=${sym%%ff_extern*}
2309 def_extern_asm
="#define EXTERN_ASM $extern_prefix"
2310 def_extern_prefix
="#define EXTERN_PREFIX \"$extern_prefix\""
2311 echores
$extern_prefix
2314 echocheck
"assembler support of -pipe option"
2316 int main(void) { return 0; }
2318 cc_check
-pipe && _pipe
="-pipe" && echores
"yes" || echores
"no"
2321 echocheck
"compiler support of named assembler arguments"
2323 def_named_asm_args
="#define NAMED_ASM_ARGS 1"
2324 if test "$cc_vendor" = "gnu" && test "$_cc_major" -lt 3 \
2325 -o "$_cc_major" -eq 3 -a "$_cc_minor" = 0 ; then
2327 def_named_asm_args
="#undef NAMED_ASM_ARGS"
2329 echores
$_named_asm_args
2332 if darwin
&& test "$cc_vendor" = "gnu" ; then
2333 echocheck
"GCC support of -mstackrealign"
2334 # GCC 4.2 and some earlier Apple versions support this flag on x86. Since
2335 # Mac OS X/Intel has an ABI different from Windows this is needed to avoid
2336 # crashes when loading Win32 DLLs. Unfortunately some gcc versions create
2337 # wrong code with this flag, but this can be worked around by adding
2338 # -fno-unit-at-a-time as described in the blog post at
2339 # http://www.dribin.org/dave/blog/archives/2006/12/05/missing_third_param/
2341 __attribute__((noinline)) static int foo3(int i1, int i2, int i3) { return i3; }
2342 int main(void) { return foo3(1,2,3) == 3 ? 0 : 1; }
2344 cc_check
-O2 -mstackrealign && tmp_run
&& cflags_stackrealign
=-mstackrealign
2345 test -z "$cflags_stackrealign" && cc_check
-O2 -mstackrealign -fno-unit-at-a-time \
2346 && tmp_run
&& cflags_stackrealign
="-mstackrealign -fno-unit-at-a-time"
2347 test -n "$cflags_stackrealign" && echores
"yes" || echores
"no"
2348 fi # if darwin && test "$cc_vendor" = "gnu" ; then
2351 # Checking for CFLAGS
2353 if test "$_profile" != "" ||
test "$_debug" != "" ; then
2354 CFLAGS
="-W -Wall -O2 $_march $_mcpu $_pipe $_debug $_profile"
2356 elif test -z "$CFLAGS" ; then
2357 if test "$cc_vendor" = "intel" ; then
2358 CFLAGS
="-O2 $_march $_mcpu $_pipe -fomit-frame-pointer -wd167 -wd556 -wd144"
2359 elif test "$cc_vendor" != "gnu" ; then
2360 CFLAGS
="-O2 $_march $_mcpu $_pipe"
2362 CFLAGS
="-Wall -Wno-switch -Wpointer-arith -Wredundant-decls -O2 $_march $_mcpu $_pipe -ffast-math -fomit-frame-pointer"
2363 extra_ldflags
="$extra_ldflags -ffast-math"
2370 int main(void) { return 0; }
2372 if test "$cc_vendor" = "gnu" ; then
2373 cc_check
-std=gnu99
&& CFLAGS
="-std=gnu99 $CFLAGS"
2374 cc_check
-Wno-pointer-sign && CFLAGS
="-Wno-pointer-sign $CFLAGS"
2375 cc_check
-Wdisabled-optimization && CFLAGS
="-Wdisabled-optimization $CFLAGS"
2376 cc_check
-Wundef && CFLAGS
="-Wundef $CFLAGS"
2378 CFLAGS
="-D_ISOC99_SOURCE -D_BSD_SOURCE $CFLAGS"
2381 cc_check
-mno-omit-leaf-frame-pointer && cflags_no_omit_leaf_frame_pointer
="-mno-omit-leaf-frame-pointer"
2384 if test -n "$LDFLAGS" ; then
2385 extra_ldflags
="$extra_ldflags $LDFLAGS"
2387 elif test "$cc_vendor" = "intel" ; then
2388 extra_ldflags
="$extra_ldflags -i-static"
2390 if test -n "$CPPFLAGS" ; then
2391 extra_cflags
="$extra_cflags $CPPFLAGS"
2398 # Checking assembler (_as) compatibility...
2399 # Added workaround for older as that reads from stdin by default - atmos
2400 as_version
=$
(echo '' |
$_as -version 2>&1 |
sed -n 's/^.*assembler \(version \)*\([0-9.]*\).*$/\2/p')
2401 echocheck
"assembler ($_as $as_version)"
2403 _pref_as_version
='2.9.1'
2405 if test "$_mmx" = yes ; then
2406 echo 'emms' >> $TMPS
2408 if test "$_3dnow" = yes ; then
2409 _pref_as_version
='2.10.1'
2410 echo 'femms' >> $TMPS
2412 if test "$_3dnowext" = yes ; then
2413 _pref_as_version
='2.10.1'
2414 echo 'pswapd %mm0, %mm0' >> $TMPS
2416 if test "$_mmxext" = yes ; then
2417 _pref_as_version
='2.10.1'
2418 echo 'movntq %mm0, (%eax)' >> $TMPS
2420 if test "$_sse" = yes ; then
2421 _pref_as_version
='2.10.1'
2422 echo 'xorps %xmm0, %xmm0' >> $TMPS
2424 #if test "$_sse2" = yes ; then
2425 # _pref_as_version='2.11'
2426 # echo 'xorpd %xmm0, %xmm0' >> $TMPS
2428 if test "$_cmov" = yes ; then
2429 _pref_as_version
='2.10.1'
2430 echo 'cmovb %eax, %ebx' >> $TMPS
2432 if test "$_ssse3" = yes ; then
2433 _pref_as_version
='2.16.92'
2434 echo 'pabsd %xmm0, %xmm1' >> $TMPS
2436 $_as $TMPS -o $TMPEXE > /dev
/null
2>&1 || as_verc_fail
=yes
2438 if test "$as_verc_fail" != yes ; then
2441 _res_comment
="Upgrade binutils to ${_pref_as_version} or use --disable-ssse3 etc."
2443 die
"obsolete binutils version"
2448 echocheck
".align is a power of two"
2449 if test "$_asmalign_pot" = auto
; then
2452 int main(void) { __asm__ (".align 3"); return 0; }
2454 cc_check
&& _asmalign_pot
=yes
2456 if test "$_asmalign_pot" = "yes" ; then
2457 def_asmalign_pot
='#define ASMALIGN(ZEROBITS) ".align " #ZEROBITS "\n\t"'
2459 def_asmalign_pot
='#define ASMALIGN(ZEROBITS) ".align 1<<" #ZEROBITS "\n\t"'
2461 echores
$_asmalign_pot
2464 echocheck
"10 assembler operands"
2466 def_ten_operands
='#define HAVE_TEN_OPERANDS 0'
2472 :"+&rm"(x), "+&rm"(x), "+&rm"(x), "+&rm"(x), "+&rm"(x), "+&rm"(x)
2477 cc_check
&& ten_operands
=yes && def_ten_operands
='#define HAVE_TEN_OPERANDS 1'
2478 echores
$ten_operands
2480 echocheck
"ebx availability"
2482 def_ebx_available
='#define HAVE_EBX_AVAILABLE 0'
2489 // just adding ebx to clobber list seems unreliable with some
2490 // compilers, e.g. Haiku's gcc 2.95
2492 // and the above check does not work for OSX 64 bit...
2493 __asm__ volatile("":::"%ebx");
2497 cc_check
&& ebx_available
=yes && def_ebx_available
='#define HAVE_EBX_AVAILABLE 1'
2498 echores
$ebx_available
2504 #if !(defined(__PIC__) || defined(__pic__) || defined(PIC))
2505 #error PIC not enabled
2510 cc_check
&& pic
=yes && extra_cflags
="$extra_cflags -DPIC"
2514 if test -z "$YASMFLAGS" ; then
2516 x86_64
&& objformat
="macho64" || objformat
="macho"
2522 # currently tested for Linux x86, x86_64
2523 YASMFLAGS
="-f $objformat"
2524 x86_64
&& YASMFLAGS
="$YASMFLAGS -DARCH_X86_64 -m amd64"
2525 test "$pic" = "yes" && YASMFLAGS
="$YASMFLAGS -DPIC"
2526 case "$objformat" in
2527 elf
) test $_debug && YASMFLAGS
="$YASMFLAGS -g dwarf2" ;;
2528 *) YASMFLAGS
="$YASMFLAGS -DPREFIX" ;;
2534 echo "pabsw xmm0, xmm0" > $TMPS
2535 yasm_check || _yasm
=""
2536 if test $_yasm ; then
2537 test "$_mmx" = "yes" && fft_mmx
="yes"
2538 def_yasm
='#define HAVE_YASM 1'
2542 def_yasm
='#define HAVE_YASM 0'
2549 def_bswap
='#define HAVE_BSWAP 0'
2550 echo 'bswap %eax' > $TMPS
2551 $_as $TMPS -o $TMPEXE > /dev
/null
2>&1 && def_bswap
='#define HAVE_BSWAP 1' && bswap
=yes || bswap
=no
2556 #FIXME: This should happen before the check for CFLAGS..
2557 def_altivec_h
='#define HAVE_ALTIVEC_H 0'
2558 if ppc
&& ( test "$_altivec" = yes ||
test "$_runtime_cpudetection" = yes ) ; then
2560 # check if AltiVec is supported by the compiler, and how to enable it
2561 echocheck
"GCC AltiVec flags"
2563 int main(void) { return 0; }
2565 if $
(cc_check
-maltivec -mabi=altivec
) ; then
2566 _altivec_gcc_flags
="-maltivec -mabi=altivec"
2567 # check if <altivec.h> should be included
2569 #include <altivec.h>
2570 int main(void) { return 0; }
2572 if $
(cc_check
$_altivec_gcc_flags) ; then
2573 def_altivec_h
='#define HAVE_ALTIVEC_H 1'
2574 inc_altivec_h
='#include <altivec.h>'
2577 int main(void) { return 0; }
2579 if $
(cc_check
-faltivec) ; then
2580 _altivec_gcc_flags
="-faltivec"
2583 _altivec_gcc_flags
="none, AltiVec disabled"
2587 echores
"$_altivec_gcc_flags"
2589 # check if the compiler supports braces for vector declarations
2592 int main(void) { (vector int) {1}; return 0; }
2594 cc_check
$_altivec_gcc_flags || die
"You need a compiler that supports {} in AltiVec vector declarations."
2596 # Disable runtime cpudetection if we cannot generate AltiVec code or
2597 # AltiVec is disabled by the user.
2598 test "$_runtime_cpudetection" = yes && test "$_altivec" = no \
2599 && _runtime_cpudetection
=no
2601 # Show that we are optimizing for AltiVec (if enabled and supported).
2602 test "$_runtime_cpudetection" = no
&& test "$_altivec" = yes \
2603 && _optimizing
="$_optimizing altivec"
2605 # If AltiVec is enabled, make sure the correct flags turn up in CFLAGS.
2606 test "$_altivec" = yes && CFLAGS
="$CFLAGS $_altivec_gcc_flags"
2610 def_xform_asm
='#define HAVE_XFORM_ASM 0'
2612 echocheck
"XFORM ASM support"
2614 int main(void) { __asm__ volatile ("lwzx %1, %y0" :: "Z"(*(int*)0), "r"(0)); return 0; }
2616 cc_check
&& xform_asm
=yes && def_xform_asm
='#define HAVE_XFORM_ASM 1'
2617 echores
"$xform_asm"
2621 echocheck
"ARM pld instruction"
2623 int main(void) { __asm__ volatile ("pld [r0]"); return 0; }
2629 echocheck
"ARMv5TE (Enhanced DSP Extensions)"
2630 if test $_armv5te = "auto" ; then
2632 int main(void) { __asm__ volatile ("qadd r0, r0, r0"); return 0; }
2635 cc_check
&& _armv5te
=yes
2639 echocheck
"ARMv6 (SIMD instructions)"
2640 if test $_armv6 = "auto" ; then
2642 int main(void) { __asm__ volatile ("sadd16 r0, r0, r0"); return 0; }
2645 cc_check
&& _armv6
=yes
2649 echocheck
"ARMv6t2 (SIMD instructions)"
2650 if test $_armv6t2 = "auto" ; then
2652 int main(void) { __asm__ volatile ("movt r0, #0"); return 0; }
2655 cc_check
&& _armv6t2
=yes
2660 if test $_armvfp = "auto" ; then
2662 int main(void) { __asm__ volatile ("fadds s0, s0, s0"); return 0; }
2665 cc_check
&& _armvfp
=yes
2669 echocheck
"ARM NEON"
2670 if test $neon = "auto" ; then
2672 int main(void) { __asm__ volatile ("vadd.i16 q0, q0, q0"); return 0; }
2675 cc_check
&& neon
=yes
2679 echocheck
"iWMMXt (Intel XScale SIMD instructions)"
2680 if test $_iwmmxt = "auto" ; then
2682 int main(void) { __asm__ volatile ("wunpckelub wr6, wr4"); return 0; }
2685 cc_check
&& _iwmmxt
=yes
2690 _cpuexts_all
='ALTIVEC MMX MMX2 AMD3DNOW AMD3DNOWEXT SSE SSE2 SSSE3 FAST_CMOV CMOV PLD ARMV5TE ARMV6 ARMV6T2 ARMVFP NEON IWMMXT MMI VIS MVI'
2691 test "$_altivec" = yes && _cpuexts
="ALTIVEC $_cpuexts"
2692 test "$_mmx" = yes && _cpuexts
="MMX $_cpuexts"
2693 test "$_mmxext" = yes && _cpuexts
="MMX2 $_cpuexts"
2694 test "$_3dnow" = yes && _cpuexts
="AMD3DNOW $_cpuexts"
2695 test "$_3dnowext" = yes && _cpuexts
="AMD3DNOWEXT $_cpuexts"
2696 test "$_sse" = yes && _cpuexts
="SSE $_cpuexts"
2697 test "$_sse2" = yes && _cpuexts
="SSE2 $_cpuexts"
2698 test "$_ssse3" = yes && _cpuexts
="SSSE3 $_cpuexts"
2699 test "$_cmov" = yes && _cpuexts
="CMOV $_cpuexts"
2700 test "$_fast_cmov" = yes && _cpuexts
="FAST_CMOV $_cpuexts"
2701 test "$pld" = yes && _cpuexts
="PLD $_cpuexts"
2702 test "$_armv5te" = yes && _cpuexts
="ARMV5TE $_cpuexts"
2703 test "$_armv6" = yes && _cpuexts
="ARMV6 $_cpuexts"
2704 test "$_armv6t2" = yes && _cpuexts
="ARMV6T2 $_cpuexts"
2705 test "$_armvfp" = yes && _cpuexts
="ARMVFP $_cpuexts"
2706 test "$neon" = yes && _cpuexts
="NEON $_cpuexts"
2707 test "$_iwmmxt" = yes && _cpuexts
="IWMMXT $_cpuexts"
2708 test "$_vis" = yes && _cpuexts
="VIS $_cpuexts"
2709 test "$_mvi" = yes && _cpuexts
="MVI $_cpuexts"
2711 # Checking kernel version...
2712 if x86_32
&& linux
; then
2714 kernel_version
=$
(uname
-r 2>&1)
2715 echocheck
"$system_name kernel version"
2716 case "$kernel_version" in
2717 '') kernel_version
="?.??"; _k_verc_fail
=yes;;
2718 [0-1].
[0-9].
[0-9]*|
2.
[0-3].
[0-9]*)
2719 _k_verc_problem
=yes;;
2721 if test "$_k_verc_problem" = yes && test "$_sse" = yes ; then
2724 if test "$_k_verc_fail" ; then
2725 echores
"$kernel_version, fail"
2726 echo "WARNING! If you want to run MPlayer on this system, get prepared for problems!"
2727 echo "2.2.x has limited SSE support. Upgrade the kernel or use --disable-sse if you"
2728 echo "experience crashes. MPlayer tries to autodetect if your kernel correctly"
2729 echo "supports SSE, but you have been warned! If you are using a kernel older than"
2730 echo "2.2.x you must upgrade it to get SSE support!"
2731 # die "Your kernel is too old for this CPU." # works fine on some 2.2.x so don't die (later check will test)
2733 echores
"$kernel_version, ok"
2737 ######################
2738 # MAIN TESTS GO HERE #
2739 ######################
2744 int main(void) { return 0; }
2746 if cc_check
-lposix ; then
2747 extra_ldflags
="$extra_ldflags -lposix"
2755 int main(void) { return 0; }
2757 if cc_check
-lm ; then
2766 echocheck
"langinfo"
2767 if test "$_langinfo" = auto
; then
2769 #include <langinfo.h>
2770 int main(void) { nl_langinfo(CODESET); return 0; }
2773 cc_check
&& _langinfo
=yes
2775 if test "$_langinfo" = yes ; then
2776 def_langinfo
='#define HAVE_LANGINFO 1'
2778 def_langinfo
='#undef HAVE_LANGINFO'
2780 echores
"$_langinfo"
2783 echocheck
"language"
2784 # Set preferred languages, "all" uses English as main language.
2785 test -z "$language" && language
=$LINGUAS
2786 test -z "$language_doc" && language_doc
=$language
2787 test -z "$language_man" && language_man
=$language
2788 test -z "$language_msg" && language_msg
=$language
2789 language_doc
=$
(echo $language_doc |
tr , " ")
2790 language_man
=$
(echo $language_man |
tr , " ")
2791 language_msg
=$
(echo $language_msg |
tr , " ")
2793 test "$language_doc" = "all" && language_doc
=$doc_lang_all
2794 test "$language_man" = "all" && language_man
=$man_lang_all
2795 test "$language_msg" = "all" && language_msg
=en
2797 # Prune non-existing translations from language lists.
2798 # Set message translation to the first available language.
2799 # Fall back on English.
2800 for lang
in $language_doc ; do
2801 test -d DOCS
/xml
/$lang && tmp_language_doc
="$tmp_language_doc $lang"
2803 language_doc
=$tmp_language_doc
2804 test -z "$language_doc" && language_doc
=en
2806 for lang
in $language_man ; do
2807 test -d DOCS
/man
/$lang && tmp_language_man
="$tmp_language_man $lang"
2809 language_man
=$tmp_language_man
2810 test -z "$language_man" && language_man
=en
2812 for lang
in $language_msg ; do
2813 test -f "help/help_mp-${lang}.h" && tmp_language_msg
=$lang && break
2815 language_msg
=$tmp_language_msg
2816 test -z "$language_msg" && language_msg
=en
2817 _mp_help
="help/help_mp-${language_msg}.h"
2818 echores
"messages: $language_msg - man pages: $language_man - documentation: $language_doc"
2821 echocheck
"enable sighandler"
2822 if test "$_sighandler" = yes ; then
2823 def_sighandler
='#define CONFIG_SIGHANDLER 1'
2825 def_sighandler
='#undef CONFIG_SIGHANDLER'
2827 echores
"$_sighandler"
2829 echocheck
"runtime cpudetection"
2830 if test "$_runtime_cpudetection" = yes ; then
2831 _optimizing
="Runtime CPU-Detection enabled"
2832 def_runtime_cpudetection
='#define CONFIG_RUNTIME_CPUDETECT 1'
2834 def_runtime_cpudetection
='#define CONFIG_RUNTIME_CPUDETECT 0'
2836 echores
"$_runtime_cpudetection"
2839 echocheck
"restrict keyword"
2840 for restrict_keyword
in restrict __restrict __restrict__
; do
2841 echo "void foo(char * $restrict_keyword p); int main(void) { return 0; }" > $TMPC
2843 def_restrict_keyword
=$restrict_keyword
2847 if [ -n "$def_restrict_keyword" ]; then
2848 echores
"$def_restrict_keyword"
2852 # Avoid infinite recursion loop ("#define restrict restrict")
2853 if [ "$def_restrict_keyword" != "restrict" ]; then
2854 def_restrict_keyword
="#define restrict $def_restrict_keyword"
2856 def_restrict_keyword
=""
2860 echocheck
"__builtin_expect"
2861 # GCC branch prediction hint
2864 a = __builtin_expect(a, 10);
2865 return a == 10 ? 0 : 1;
2867 int main(void) { return foo(10) && foo(0); }
2870 cc_check
&& _builtin_expect
=yes
2871 if test "$_builtin_expect" = yes ; then
2872 def_builtin_expect
='#define HAVE_BUILTIN_EXPECT 1'
2874 def_builtin_expect
='#undef HAVE_BUILTIN_EXPECT'
2876 echores
"$_builtin_expect"
2882 int main(void) { (void) kstat_open(); (void) kstat_close(0); return 0; }
2885 cc_check
-lkstat && _kstat
=yes
2886 if test "$_kstat" = yes ; then
2887 def_kstat
="#define HAVE_LIBKSTAT 1"
2888 extra_ldflags
="$extra_ldflags -lkstat"
2890 def_kstat
="#undef HAVE_LIBKSTAT"
2896 # required for nanosleep on some systems
2899 int main(void) { (void) nanosleep(0, 0); return 0; }
2902 cc_check
-lposix4 && _posix4
=yes
2903 if test "$_posix4" = yes ; then
2904 extra_ldflags
="$extra_ldflags -lposix4"
2908 for func
in llrint log2 lrint lrintf round roundf truncf
; do
2912 int main(void) { long (*foo)(float); foo = $func; (void)(*foo)(0.0); return 0; }
2915 cc_check
-D_ISOC99_SOURCE $_ld_lm && eval _
$func=yes
2916 if eval test "x\$_$func" = "xyes"; then
2917 eval def_
$func="\"#define HAVE_$(echo $func | tr '[a-z]' '[A-Z]') 1\""
2920 eval def_
$func="\"#define HAVE_$(echo $func | tr '[a-z]' '[A-Z]') 0\""
2929 int main(void) { char a; mkstemp(&a); return 0; }
2932 cc_check
&& _mkstemp
=yes
2933 if test "$_mkstemp" = yes ; then
2934 def_mkstemp
='#define HAVE_MKSTEMP 1'
2936 def_mkstemp
='#undef HAVE_MKSTEMP'
2941 echocheck
"nanosleep"
2942 # also check for nanosleep
2945 int main(void) { (void) nanosleep(0, 0); return 0; }
2948 cc_check
&& _nanosleep
=yes
2949 if test "$_nanosleep" = yes ; then
2950 def_nanosleep
='#define HAVE_NANOSLEEP 1'
2952 def_nanosleep
='#undef HAVE_NANOSLEEP'
2954 echores
"$_nanosleep"
2958 # for Solaris (socket stuff is in -lsocket, gethostbyname and friends in -lnsl):
2959 # for BeOS (socket stuff is in -lsocket, gethostbyname and friends in -lbind):
2962 #include <sys/socket.h>
2963 int main(void) { (void) gethostbyname(0); (void) socket(AF_INET, SOCK_STREAM, 0); return 0; }
2966 for _ld_tmp
in "" "-lsocket -lbind" "-lsocket -ldnet" "-lsocket -lnsl" "-lnsl" "-lsocket" ; do
2967 cc_check
$_ld_tmp && _ld_sock
="$_ld_tmp" && _socklib
=yes && break
2969 test $_socklib = yes && test $_winsock2_h = auto
&& _winsock2_h
=no
2970 if test $_winsock2_h = auto
; then
2973 #include <winsock2.h>
2974 int main(void) { (void) gethostbyname(0); return 0; }
2976 cc_check
-lws2_32 && _ld_sock
="-lws2_32" && _winsock2_h
=yes
2978 test "$_ld_sock" && _res_comment
="using $_ld_sock"
2982 if test $_winsock2_h = yes ; then
2984 def_winsock2_h
='#define HAVE_WINSOCK2_H 1'
2986 def_winsock2_h
='#define HAVE_WINSOCK2_H 0'
2990 echocheck
"arpa/inet.h"
2992 def_arpa_inet_h
='#define HAVE_ARPA_INET_H 0'
2994 #include <arpa/inet.h>
2995 int main(void) { return 0; }
2997 cc_check
&& arpa_inet_h
=yes && def_arpa_inet_h
='#define HAVE_ARPA_INET_H 1'
2998 echores
"$arpa_inet_h"
3001 echocheck
"inet_pton()"
3002 def_inet_pton
='#define HAVE_INET_PTON 0'
3005 #include <sys/types.h>
3006 #include <sys/socket.h>
3007 #include <arpa/inet.h>
3008 int main(void) { (void) inet_pton(0, 0, 0); return 0; }
3010 for _ld_tmp
in "$_ld_sock" "$_ld_sock -lresolv" ; do
3011 cc_check
$_ld_tmp && inet_pton
=yes && break
3013 if test $inet_pton = yes ; then
3014 test $_ld_tmp && _res_comment
="using $_ld_tmp"
3015 def_inet_pton
='#define HAVE_INET_PTON 1'
3017 echores
"$inet_pton"
3020 echocheck
"inet_aton()"
3021 def_inet_aton
='#define HAVE_INET_ATON 0'
3024 #include <sys/types.h>
3025 #include <sys/socket.h>
3026 #include <arpa/inet.h>
3027 int main(void) { (void) inet_aton(0, 0); return 0; }
3029 for _ld_tmp
in "$_ld_sock" "$_ld_sock -lresolv" ; do
3030 cc_check
$_ld_tmp && inet_aton
=yes && break
3032 if test $inet_aton = yes ; then
3033 test $_ld_tmp && _res_comment
="using $_ld_tmp"
3034 def_inet_aton
='#define HAVE_INET_ATON 1'
3036 echores
"$inet_aton"
3039 echocheck
"socklen_t"
3041 for header
in "sys/socket.h" "ws2tcpip.h" "sys/types.h" ; do
3044 int main(void) { socklen_t v = 0; return v; }
3046 cc_check
&& _socklen_t
=yes && break
3048 if test "$_socklen_t" = yes ; then
3049 def_socklen_t
='#define HAVE_SOCKLEN_T 1'
3051 def_socklen_t
='#define HAVE_SOCKLEN_T 0'
3053 echores
"$_socklen_t"
3056 echocheck
"closesocket()"
3059 #include <winsock2.h>
3060 int main(void) { closesocket(~0); return 0; }
3062 cc_check
$_ld_sock && _closesocket
=yes
3063 if test "$_closesocket" = yes ; then
3064 def_closesocket
='#define HAVE_CLOSESOCKET 1'
3066 def_closesocket
='#define HAVE_CLOSESOCKET 0'
3068 echores
"$_closesocket"
3072 test $_winsock2_h = no
&& test $inet_pton = no
&&
3073 test $inet_aton = no
&& _network
=no
3074 if test "$_network" = yes ; then
3075 def_network
='#define CONFIG_NETWORK 1'
3076 extra_ldflags
="$extra_ldflags $_ld_sock"
3077 _inputmodules
="network $_inputmodules"
3079 _noinputmodules
="network $_noinputmodules"
3080 def_network
='#undef CONFIG_NETWORK'
3087 if test "$_inet6" = auto
; then
3089 #include <sys/types.h>
3090 #if !defined(_WIN32) || defined(__CYGWIN__)
3091 #include <sys/socket.h>
3092 #include <netinet/in.h>
3094 #include <ws2tcpip.h>
3096 int main(void) { struct sockaddr_in6 six; socket(AF_INET6, SOCK_STREAM, AF_INET6); return 0; }
3099 if cc_check
$_ld_sock ; then
3103 if test "$_inet6" = yes ; then
3104 def_inet6
='#define HAVE_AF_INET6 1'
3106 def_inet6
='#undef HAVE_AF_INET6'
3111 echocheck
"gethostbyname2"
3112 if test "$_gethostbyname2" = auto
; then
3114 #include <sys/types.h>
3115 #include <sys/socket.h>
3117 int main(void) { gethostbyname2("", AF_INET); return 0; }
3124 if test "$_gethostbyname2" = yes ; then
3125 def_gethostbyname2
='#define HAVE_GETHOSTBYNAME2 1'
3127 def_gethostbyname2
='#undef HAVE_GETHOSTBYNAME2'
3129 echores
"$_gethostbyname2"
3132 echocheck
"inttypes.h (required)"
3134 #include <inttypes.h>
3135 int main(void) { return 0; }
3138 cc_check
&& _inttypes
=yes
3139 echores
"$_inttypes"
3141 if test "$_inttypes" = no
; then
3142 echocheck
"bitypes.h (inttypes.h predecessor)"
3144 #include <sys/bitypes.h>
3145 int main(void) { return 0; }
3147 cc_check
&& _inttypes
=yes
3148 if test "$_inttypes" = yes ; then
3149 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."
3151 die
"Cannot find header either inttypes.h or bitypes.h. There is no chance for compilation to succeed."
3156 echocheck
"int_fastXY_t in inttypes.h"
3158 #include <inttypes.h>
3160 volatile int_fast16_t v= 0;
3164 cc_check
&& _fast_inttypes
=yes
3165 if test "$_fast_inttypes" = no
; then
3167 typedef signed char int_fast8_t;
3168 typedef signed int int_fast16_t;
3169 typedef signed int int_fast32_t;
3170 typedef signed long long int_fast64_t;
3171 typedef unsigned char uint_fast8_t;
3172 typedef unsigned int uint_fast16_t;
3173 typedef unsigned int uint_fast32_t;
3174 typedef unsigned long long uint_fast64_t;'
3176 echores
"$_fast_inttypes"
3179 echocheck
"malloc.h"
3182 int main(void) { (void) malloc(0); return 0; }
3185 cc_check
&& _malloc
=yes
3186 if test "$_malloc" = yes ; then
3187 def_malloc_h
='#define HAVE_MALLOC_H 1'
3189 def_malloc_h
='#define HAVE_MALLOC_H 0'
3191 # malloc.h emits a warning in FreeBSD and OpenBSD
3192 freebsd || openbsd || dragonfly
&& def_malloc_h
='#define HAVE_MALLOC_H 0'
3196 echocheck
"memalign()"
3197 # XXX restrict to x86 ? extend to other CPUs/cacheline sizes ?
3198 def_memalign_hack
='#define CONFIG_MEMALIGN_HACK 0'
3201 int main(void) { (void) memalign(64, sizeof(char)); return 0; }
3204 cc_check
&& _memalign
=yes
3205 if test "$_memalign" = yes ; then
3206 def_memalign
='#define HAVE_MEMALIGN 1'
3208 def_memalign
='#define HAVE_MEMALIGN 0'
3209 def_map_memalign
='#define memalign(a,b) malloc(b)'
3210 darwin || def_memalign_hack
='#define CONFIG_MEMALIGN_HACK 1'
3212 echores
"$_memalign"
3215 echocheck
"posix_memalign()"
3217 def_posix_memalign
='#define HAVE_POSIX_MEMALIGN 0'
3219 #define _XOPEN_SOURCE 600
3221 int main(void) { posix_memalign(NULL, 0, 0); }
3223 cc_check
&& posix_memalign
=yes && def_posix_memalign
='#define HAVE_POSIX_MEMALIGN 1'
3224 echores
"$posix_memalign"
3227 echocheck
"alloca.h"
3230 int main(void) { (void) alloca(0); return 0; }
3233 cc_check
&& _alloca
=yes
3235 def_alloca_h
='#define HAVE_ALLOCA_H 1'
3237 def_alloca_h
='#undef HAVE_ALLOCA_H'
3242 echocheck
"fastmemcpy"
3243 if test "$_fastmemcpy" = yes ; then
3244 def_fastmemcpy
='#define CONFIG_FASTMEMCPY 1'
3246 def_fastmemcpy
='#undef CONFIG_FASTMEMCPY'
3248 echores
"$_fastmemcpy"
3253 #include <sys/types.h>
3254 #include <sys/mman.h>
3255 int main(void) { (void) mmap(0, 0, 0, 0, 0, 0); return 0; }
3258 cc_check
&& _mman
=yes
3259 if test "$_mman" = yes ; then
3260 def_mman_h
='#define HAVE_SYS_MMAN_H 1'
3262 def_mman_h
='#undef HAVE_SYS_MMAN_H'
3263 os2
&& _need_mmap
=yes
3268 #include <sys/types.h>
3269 #include <sys/mman.h>
3270 int main(void) { void *p = MAP_FAILED; return 0; }
3272 _mman_has_map_failed
=no
3273 cc_check
&& _mman_has_map_failed
=yes
3274 if test "$_mman_has_map_failed" = yes ; then
3275 def_mman_has_map_failed
=''
3277 def_mman_has_map_failed
='#define MAP_FAILED ((void *) -1)'
3280 echocheck
"dynamic loader"
3284 int main(void) { dlopen("", 0); dlclose(NULL); dlsym(NULL, ""); return 0; }
3287 for _ld_tmp
in "" "-ldl" ; do
3288 cc_check
$_ld_tmp && _ld_dl
="$_ld_tmp" && _dl
=yes && break
3290 if test "$_dl" = yes ; then
3291 def_dl
='#define HAVE_LIBDL 1'
3293 def_dl
='#undef HAVE_LIBDL'
3298 echocheck
"dynamic a/v plugins support"
3299 if test "$_dl" = no
; then
3302 if test "$_dynamic_plugins" = yes ; then
3303 def_dynamic_plugins
='#define CONFIG_DYNAMIC_PLUGINS 1'
3305 def_dynamic_plugins
='#undef CONFIG_DYNAMIC_PLUGINS'
3307 echores
"$_dynamic_plugins"
3310 def_threads
='#define HAVE_THREADS 0'
3314 THREAD_CFLAGS
=-D_REENTRANT
3315 elif freebsd || netbsd || openbsd || bsdos
; then
3316 THREAD_CFLAGS
=-D_THREAD_SAFE
3318 if test "$_pthreads" = auto
; then
3320 #include <pthread.h>
3321 void* func(void *arg) { return arg; }
3325 #ifdef PTW32_STATIC_LIB
3326 pthread_win32_process_attach_np();
3327 pthread_win32_thread_attach_np();
3329 res = pthread_create (&tid, 0, func, 0) == 0 ? 0 : 1;
3335 for _ld_tmp
in "-lpthreadGC2" "" "-lpthread" "-pthread" ; do
3336 # for crosscompilation, we cannot execute the program, be happy if we can link statically
3337 cc_check
$THREAD_CFLAGS $_ld_tmp && (tmp_run ||
test "$_ld_static") && _ld_pthread
="$_ld_tmp" && _pthreads
=yes && break
3339 # static pthreads on mingw32
3340 if test "$_pthreads" = no
&& mingw32
; then
3341 _ld_tmp
="-lpthreadGC2 -lws2_32"
3342 cc_check
$_ld_tmp -DPTW32_STATIC_LIB && (tmp_run ||
test "$_ld_static") && _ld_pthread
="$_ld_tmp" && _pthreads
=yes && CFLAGS
="$CFLAGS -DPTW32_STATIC_LIB"
3346 if test "$_pthreads" = yes ; then
3347 test -n "$_ld_pthread" && _res_comment
="using $_ld_pthread"
3348 def_pthreads
='#define HAVE_PTHREADS 1'
3349 def_threads
='#define HAVE_THREADS 1'
3350 extra_cflags
="$extra_cflags $THREAD_CFLAGS"
3352 _res_comment
="v4l, v4l2, ao_nas, win32 loader disabled"
3353 def_pthreads
='#undef HAVE_PTHREADS'
3354 _nas
=no
; _tv_v4l1
=no
; _tv_v4l2
=no
3355 mingw32 || _win32dll
=no
3357 echores
"$_pthreads"
3360 if test "$_pthreads" = yes ; then
3361 def_pthread_cache
="#define PTHREAD_CACHE 1"
3364 def_stream_cache
="#undef CONFIG_STREAM_CACHE"
3368 echocheck
"w32threads"
3369 if test "$_pthreads" = yes ; then
3370 _res_comment
="using pthread instead"
3373 if test "$_w32threads" = auto
; then
3375 mingw32
&& _w32threads
=yes
3377 test "$_w32threads" = yes && def_threads
='#define HAVE_THREADS 1'
3378 echores
"$_w32threads"
3382 if test "$_rpath" = yes ; then
3383 for I
in $
(echo $extra_ldflags |
sed 's/-L//g') ; do
3384 tmp
="$tmp $(echo $I | sed 's/.*/ -L& -Wl,-R&/')"
3391 if test "$_iconv" = auto
; then
3396 #define INBUFSIZE 1024
3397 #define OUTBUFSIZE 4096
3399 char inbuffer[INBUFSIZE];
3400 char outbuffer[OUTBUFSIZE];
3405 char *tocode="UTF-8";
3406 char *fromcode="cp1250";
3407 if ((icdsc = iconv_open(tocode, fromcode)) != (iconv_t)(-1)) {
3408 while ((numread = read(0, inbuffer, INBUFSIZE))) {
3409 char *iptr=inbuffer;
3410 char *optr=outbuffer;
3411 size_t inleft=numread;
3412 size_t outleft=OUTBUFSIZE;
3413 if (iconv(icdsc, (const char **)&iptr, &inleft, &optr, &outleft)
3415 write(1, outbuffer, OUTBUFSIZE - outleft);
3418 if (iconv_close(icdsc) == -1)
3425 for _ld_tmp
in "" "-liconv" "-liconv $_ld_dl" ; do
3426 cc_check
$_ld_lm $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && \
3430 if test "$_iconv" = yes ; then
3431 def_iconv
='#define CONFIG_ICONV 1'
3433 def_iconv
='#undef CONFIG_ICONV'
3438 echocheck
"soundcard.h"
3440 def_soundcard_h
='#undef HAVE_SOUNDCARD_H'
3441 def_sys_soundcard_h
='#undef HAVE_SYS_SOUNDCARD_H'
3442 for _soundcard_header
in "sys/soundcard.h" "soundcard.h"; do
3444 #include <$_soundcard_header>
3445 int main(void) { return 0; }
3447 cc_check
&& _soundcard_h
=yes && _res_comment
="$_soundcard_header" && break
3450 if test "$_soundcard_h" = yes ; then
3451 if test $_soundcard_header = "sys/soundcard.h"; then
3452 def_sys_soundcard_h
='#define HAVE_SYS_SOUNDCARD_H 1'
3454 def_soundcard_h
='#define HAVE_SOUNDCARD_H 1'
3457 echores
"$_soundcard_h"
3460 echocheck
"sys/dvdio.h"
3463 #include <sys/dvdio.h>
3464 int main(void) { return 0; }
3467 cc_check
&& _dvdio
=yes
3468 if test "$_dvdio" = yes ; then
3469 def_dvdio
='#define DVD_STRUCT_IN_SYS_DVDIO_H 1'
3471 def_dvdio
='#undef DVD_STRUCT_IN_SYS_DVDIO_H'
3476 echocheck
"sys/cdio.h"
3479 #include <sys/cdio.h>
3480 int main(void) { return 0; }
3483 cc_check
&& _cdio
=yes
3484 if test "$_cdio" = yes ; then
3485 def_cdio
='#define DVD_STRUCT_IN_SYS_CDIO_H 1'
3487 def_cdio
='#undef DVD_STRUCT_IN_SYS_CDIO_H'
3492 echocheck
"linux/cdrom.h"
3494 #include <sys/types.h>
3495 #include <linux/cdrom.h>
3496 int main(void) { return 0; }
3499 cc_check
&& _cdrom
=yes
3500 if test "$_cdrom" = yes ; then
3501 def_cdrom
='#define DVD_STRUCT_IN_LINUX_CDROM_H 1'
3503 def_cdrom
='#undef DVD_STRUCT_IN_LINUX_CDROM_H'
3511 int main(void) { return 0; }
3514 cc_check
&& _dvd
=yes
3515 if test "$_dvd" = yes ; then
3516 def_dvd
='#define DVD_STRUCT_IN_DVD_H 1'
3518 def_dvd
='#undef DVD_STRUCT_IN_DVD_H'
3524 echocheck
"BSDI dvd.h"
3527 int main(void) { return 0; }
3530 cc_check
&& _bsdi_dvd
=yes
3531 if test "$_bsdi_dvd" = yes ; then
3532 def_bsdi_dvd
='#define DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H 1'
3534 def_bsdi_dvd
='#undef DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H'
3536 echores
"$_bsdi_dvd"
3541 # also used by AIX, but AIX does not support VCD and/or libdvdread
3542 echocheck
"HP-UX SCSI header"
3544 #include <sys/scsi.h>
3545 int main(void) { return 0; }
3548 cc_check
&& _hpux_scsi_h
=yes
3549 if test "$_hpux_scsi_h" = yes ; then
3550 def_hpux_scsi_h
='#define HPUX_SCTL_IO 1'
3552 def_hpux_scsi_h
='#undef HPUX_SCTL_IO'
3554 echores
"$_hpux_scsi_h"
3559 echocheck
"userspace SCSI headers (Solaris)"
3562 #include <stropts.h>
3563 #include <sys/scsi/scsi_types.h>
3564 #include <sys/scsi/impl/uscsi.h>
3565 int main(void) { return 0; }
3568 cc_check
&& _sol_scsi_h
=yes
3569 if test "$_sol_scsi_h" = yes ; then
3570 def_sol_scsi_h
='#define SOLARIS_USCSI 1'
3572 def_sol_scsi_h
='#undef SOLARIS_USCSI'
3574 echores
"$_sol_scsi_h"
3579 if test "$_termcap" = auto
; then
3583 int main(void) { tgetent(NULL, NULL); return 0; }
3586 for _ld_tmp
in "-lncurses" "-ltinfo" "-ltermcap"; do
3587 cc_check
$_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" \
3588 && _termcap
=yes && break
3591 if test "$_termcap" = yes ; then
3592 def_termcap
='#define HAVE_TERMCAP 1'
3593 test $_ld_tmp && _res_comment
="using $_ld_tmp"
3595 def_termcap
='#undef HAVE_TERMCAP'
3601 def_termios
='#undef HAVE_TERMIOS'
3602 def_termios_h
='#undef HAVE_TERMIOS_H'
3603 def_termios_sys_h
='#undef HAVE_SYS_TERMIOS_H'
3604 if test "$_termios" = auto
; then
3606 for _termios_header
in "sys/termios.h" "termios.h"; do
3608 #include <$_termios_header>
3609 int main(void) { return 0; }
3611 cc_check
&& _termios
=yes && _res_comment
="using $_termios_header" && break
3615 if test "$_termios" = yes ; then
3616 def_termios
='#define HAVE_TERMIOS 1'
3617 if test "$_termios_header" = "termios.h" ; then
3618 def_termios_h
='#define HAVE_TERMIOS_H 1'
3620 def_termios_sys_h
='#define HAVE_SYS_TERMIOS_H 1'
3627 if test "$_shm" = auto
; then
3629 #include <sys/types.h>
3630 #include <sys/shm.h>
3631 int main(void) { shmget(0, 0, 0); shmat(0, 0, 0); shmctl(0, 0, 0); return 0; }
3634 cc_check
&& _shm
=yes
3636 if test "$_shm" = yes ; then
3637 def_shm
='#define HAVE_SHM 1'
3639 def_shm
='#undef HAVE_SHM'
3644 echocheck
"strsep()"
3647 int main(void) { char *s = "Hello, world!"; (void) strsep(&s, ","); return 0; }
3650 cc_check
&& _strsep
=yes
3651 if test "$_strsep" = yes ; then
3652 def_strsep
='#define HAVE_STRSEP 1'
3655 def_strsep
='#undef HAVE_STRSEP'
3661 echocheck
"vsscanf()"
3663 #define _ISOC99_SOURCE
3666 int main(void) { va_list ap; vsscanf("foo", "bar", ap); return 0; }
3669 cc_check
&& _vsscanf
=yes
3670 if test "$_vsscanf" = yes ; then
3671 def_vsscanf
='#define HAVE_VSSCANF 1'
3674 def_vsscanf
='#undef HAVE_VSSCANF'
3682 #define _XOPEN_SOURCE 600
3684 int main(void) { swab(0, 0, 0); return 0; }
3687 cc_check
&& _swab
=yes
3688 if test "$_swab" = yes ; then
3689 def_swab
='#define HAVE_SWAB 1'
3692 def_swab
='#undef HAVE_SWAB'
3697 echocheck
"POSIX select()"
3701 #include <sys/types.h>
3703 #include <sys/time.h>
3705 int main(void) {int nfds = 1; fd_set readfds; struct timeval timeout; select(nfds,&readfds,NULL,NULL,&timeout); return 0; }
3708 def_posix_select
='#undef HAVE_POSIX_SELECT'
3709 #select() of kLIBC (OS/2) supports socket only
3710 ! os2
&& cc_check
&& _posix_select
=yes \
3711 && def_posix_select
='#define HAVE_POSIX_SELECT 1'
3712 echores
"$_posix_select"
3715 echocheck
"audio select()"
3716 if test "$_select" = no
; then
3717 def_select
='#undef HAVE_AUDIO_SELECT'
3718 elif test "$_select" = yes ; then
3719 def_select
='#define HAVE_AUDIO_SELECT 1'
3724 echocheck
"gettimeofday()"
3727 #include <sys/time.h>
3728 int main(void) {struct timeval tv_start; gettimeofday(&tv_start, NULL); return 0; }
3731 cc_check
&& _gettimeofday
=yes
3732 if test "$_gettimeofday" = yes ; then
3733 def_gettimeofday
='#define HAVE_GETTIMEOFDAY 1'
3734 _need_gettimeofday
=no
3736 def_gettimeofday
='#undef HAVE_GETTIMEOFDAY'
3737 _need_gettimeofday
=yes
3739 echores
"$_gettimeofday"
3746 int main(void) { glob_t gg; glob("filename",0,NULL,&gg); return 0; }
3749 cc_check
&& _glob
=yes
3750 if test "$_glob" = yes ; then
3751 def_glob
='#define HAVE_GLOB 1'
3754 def_glob
='#undef HAVE_GLOB'
3760 echocheck
"setenv()"
3763 int main(void) { setenv("","",0); return 0; }
3766 cc_check
&& _setenv
=yes
3767 if test "$_setenv" = yes ; then
3768 def_setenv
='#define HAVE_SETENV 1'
3771 def_setenv
='#undef HAVE_SETENV'
3778 echocheck
"sysi86()"
3780 #include <sys/sysi86.h>
3781 int main(void) { sysi86(0); return 0; }
3784 cc_check
&& _sysi86
=yes
3785 if test "$_sysi86" = yes ; then
3786 def_sysi86
='#define HAVE_SYSI86 1'
3788 #include <sys/sysi86.h>
3789 int main(void) { int sysi86(int, void*); sysi86(0); return 0; }
3791 cc_check
&& def_sysi86_iv
='#define HAVE_SYSI86_iv 1'
3793 def_sysi86
='#undef HAVE_SYSI86'
3799 echocheck
"sys/sysinfo.h"
3801 #include <sys/sysinfo.h>
3803 struct sysinfo s_info;
3809 cc_check
&& _sys_sysinfo
=yes
3810 if test "$_sys_sysinfo" = yes ; then
3811 def_sys_sysinfo_h
='#define HAVE_SYS_SYSINFO_H 1'
3813 def_sys_sysinfo_h
='#undef HAVE_SYS_SYSINFO_H'
3815 echores
"$_sys_sysinfo"
3820 echocheck
"Mac OS X Finder Support"
3821 def_macosx_finder
='#undef CONFIG_MACOSX_FINDER'
3822 if test "$_macosx_finder" = yes ; then
3823 def_macosx_finder
='#define CONFIG_MACOSX_FINDER 1'
3824 extra_ldflags
="$extra_ldflags -framework Carbon"
3826 echores
"$_macosx_finder"
3828 echocheck
"Mac OS X Bundle file locations"
3829 def_macosx_bundle
='#undef CONFIG_MACOSX_BUNDLE'
3830 test "$_macosx_bundle" = auto
&& _macosx_bundle
=$_macosx_finder
3831 if test "$_macosx_bundle" = yes ; then
3832 def_macosx_bundle
='#define CONFIG_MACOSX_BUNDLE 1'
3833 extra_ldflags
="$extra_ldflags -framework Carbon"
3835 echores
"$_macosx_bundle"
3837 echocheck
"Apple Remote"
3838 if test "$_apple_remote" = auto
; then
3842 #include <IOKit/IOCFPlugIn.h>
3844 io_iterator_t hidObjectIterator = (io_iterator_t)NULL;
3845 CFMutableDictionaryRef hidMatchDictionary;
3846 IOReturn ioReturnValue;
3848 // Set up a matching dictionary to search the I/O Registry by class.
3849 // name for all HID class devices
3850 hidMatchDictionary = IOServiceMatching("AppleIRController");
3852 // Now search I/O Registry for matching devices.
3853 ioReturnValue = IOServiceGetMatchingServices(kIOMasterPortDefault,
3854 hidMatchDictionary, &hidObjectIterator);
3856 // If search is unsuccessful, return nonzero.
3857 if (ioReturnValue != kIOReturnSuccess ||
3858 !IOIteratorIsValid(hidObjectIterator)) {
3864 cc_check
-framework IOKit
&& tmp_run
&& _apple_remote
=yes
3866 if test "$_apple_remote" = yes ; then
3867 def_apple_remote
='#define CONFIG_APPLE_REMOTE 1'
3868 libs_mplayer
="$libs_mplayer -framework IOKit -framework Cocoa"
3870 def_apple_remote
='#undef CONFIG_APPLE_REMOTE'
3872 echores
"$_apple_remote"
3878 echocheck
"Apple IR"
3879 if test "$_apple_ir" = auto
; then
3882 #include <linux/types.h>
3883 #include <linux/input.h>
3885 struct input_event ev;
3890 cc_check
&& _apple_ir
=yes
3892 if test "$_apple_ir" = yes ; then
3893 def_apple_ir
='#define CONFIG_APPLE_IR 1'
3895 def_apple_ir
='#undef CONFIG_APPLE_IR'
3897 echores
"$_apple_ir"
3900 echocheck
"pkg-config"
3901 _pkg_config
=pkg-config
3902 if $
($_pkg_config --version > /dev
/null
2>&1); then
3903 if test "$_ld_static"; then
3904 _pkg_config
="$_pkg_config --static"
3913 echocheck
"Samba support (libsmbclient)"
3914 if test "$_smb" = yes; then
3915 extra_ldflags
="$extra_ldflags -lsmbclient"
3917 if test "$_smb" = auto
; then
3920 #include <libsmbclient.h>
3921 int main(void) { smbc_opendir("smb://"); return 0; }
3923 for _ld_tmp
in "-lsmbclient" "-lsmbclient $_ld_dl" "-lsmbclient $_ld_dl -lnsl" "-lsmbclient $_ld_dl -lssl -lnsl" ; do
3924 cc_check
$_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && \
3929 if test "$_smb" = yes; then
3930 def_smb
="#define CONFIG_LIBSMBCLIENT 1"
3931 _inputmodules
="smb $_inputmodules"
3933 def_smb
="#undef CONFIG_LIBSMBCLIENT"
3934 _noinputmodules
="smb $_noinputmodules"
3945 if test "$_tdfxfb" = yes ; then
3946 def_tdfxfb
='#define CONFIG_TDFXFB 1'
3947 _vomodules
="tdfxfb $_vomodules"
3949 def_tdfxfb
='#undef CONFIG_TDFXFB'
3950 _novomodules
="tdfxfb $_novomodules"
3955 if test "$_s3fb" = yes ; then
3956 def_s3fb
='#define CONFIG_S3FB 1'
3957 _vomodules
="s3fb $_vomodules"
3959 def_s3fb
='#undef CONFIG_S3FB'
3960 _novomodules
="s3fb $_novomodules"
3965 if test "$_wii" = yes ; then
3966 def_wii
='#define CONFIG_WII 1'
3967 _vomodules
="wii $_vomodules"
3969 def_wii
='#undef CONFIG_WII'
3970 _novomodules
="wii $_novomodules"
3975 if test "$_tdfxvid" = yes ; then
3976 def_tdfxvid
='#define CONFIG_TDFX_VID 1'
3977 _vomodules
="tdfx_vid $_vomodules"
3979 def_tdfxvid
='#undef CONFIG_TDFX_VID'
3980 _novomodules
="tdfx_vid $_novomodules"
3985 if test "$_xvr100" = auto
; then
3988 #include <sys/fbio.h>
3989 #include <sys/visual_io.h>
3991 struct vis_identifier ident;
3992 struct fbgattr attr;
3993 ioctl(0, VIS_GETIDENTIFIER, &ident);
3994 ioctl(0, FBIOGATTR, &attr);
3999 cc_check
&& _xvr100
=yes
4001 if test "$_xvr100" = yes ; then
4002 def_xvr100
='#define CONFIG_XVR100 1'
4003 _vomodules
="xvr100 $_vomodules"
4005 def_tdfxvid
='#undef CONFIG_XVR100'
4006 _novomodules
="xvr100 $_novomodules"
4011 if test "$_tga" = yes ; then
4012 def_tga
='#define CONFIG_TGA 1'
4013 _vomodules
="tga $_vomodules"
4015 def_tga
='#undef CONFIG_TGA'
4016 _novomodules
="tga $_novomodules"
4021 echocheck
"md5sum support"
4022 if test "$_md5sum" = yes; then
4023 def_md5sum
="#define CONFIG_MD5SUM 1"
4024 _vomodules
="md5sum $_vomodules"
4026 def_md5sum
="#undef CONFIG_MD5SUM"
4027 _novomodules
="md5sum $_novomodules"
4032 echocheck
"yuv4mpeg support"
4033 if test "$_yuv4mpeg" = yes; then
4034 def_yuv4mpeg
="#define CONFIG_YUV4MPEG 1"
4035 _vomodules
="yuv4mpeg $_vomodules"
4037 def_yuv4mpeg
="#undef CONFIG_YUV4MPEG"
4038 _novomodules
="yuv4mpeg $_novomodules"
4040 echores
"$_yuv4mpeg"
4044 if test "$_bl" = yes ; then
4045 def_bl
='#define CONFIG_BL 1'
4046 _vomodules
="bl $_vomodules"
4048 def_bl
='#undef CONFIG_BL'
4049 _novomodules
="bl $_novomodules"
4054 echocheck
"DirectFB"
4055 if test "$_directfb" = auto
; then
4058 #include <directfb.h>
4059 int main(void) { DirectFBInit(0, 0); return 0; }
4061 for _inc_tmp
in "" -I/usr
/local
/include
/directfb \
4062 -I/usr
/include
/directfb
-I/usr
/local
/include
; do
4063 cc_check
$_inc_tmp -ldirectfb && _directfb
=yes && \
4064 extra_cflags
="$extra_cflags $_inc_tmp" && break
4069 expr $1 \
* 65536 + $2 \
* 256 + $3
4072 if test "$_directfb" = yes; then
4074 #include <directfb_version.h>
4076 dfb_ver = DIRECTFB_MAJOR_VERSION.DIRECTFB_MINOR_VERSION.DIRECTFB_MICRO_VERSION
4079 if $_cc -E $TMPC $extra_cflags > "$TMPEXE"; then
4080 _directfb_version
=$
(sed -n 's/^dfb_ver[^0-9]*\(.*\)/\1/p' "$TMPEXE" |
tr -d '()')
4081 _dfb_major
=$
(echo $_directfb_version | cut
-d .
-f 1)
4082 _dfb_minor
=$
(echo $_directfb_version | cut
-d .
-f 2)
4083 _dfb_micro
=$
(echo $_directfb_version | cut
-d .
-f 3)
4084 _dfb_version
=$
(dfb_version
$_dfb_major $_dfb_minor $_dfb_micro)
4085 if test "$_dfb_version" -ge $
(dfb_version
0 9 13); then
4086 def_directfb_version
="#define DIRECTFBVERSION $_dfb_version"
4087 _res_comment
="$_directfb_version"
4088 test "$_dfb_version" -ge $
(dfb_version
0 9 15) && _dfbmga
=yes
4090 def_directfb_version
='#undef DIRECTFBVERSION'
4092 _res_comment
="version >=0.9.13 required"
4096 _res_comment
="failed to get version"
4099 echores
"$_directfb"
4101 if test "$_directfb" = yes ; then
4102 def_directfb
='#define CONFIG_DIRECTFB 1'
4103 _vomodules
="directfb $_vomodules"
4104 libs_mplayer
="$libs_mplayer -ldirectfb"
4106 def_directfb
='#undef CONFIG_DIRECTFB'
4107 _novomodules
="directfb $_novomodules"
4109 if test "$_dfbmga" = yes; then
4110 _vomodules
="dfbmga $_vomodules"
4111 def_dfbmga
='#define CONFIG_DFBMGA 1'
4113 _novomodules
="dfbmga $_novomodules"
4114 def_dfbmga
='#undef CONFIG_DFBMGA'
4118 echocheck
"X11 headers presence"
4120 _res_comment
="check if the dev(el) packages are installed"
4121 for I
in $
(echo $extra_cflags |
sed s
/-I//g
) /usr
/include
; do
4122 if test -f "$I/X11/Xlib.h" ; then
4128 if test $_cross_compile = no
; then
4129 for I
in /usr
/X11
/include
/usr
/X11R
7/include
/usr
/X11R
6/include \
4130 /usr
/include
/X11R6
/usr
/openwin
/include
; do
4131 if test -f "$I/X11/Xlib.h" ; then
4132 extra_cflags
="$extra_cflags -I$I"
4134 _res_comment
="using $I"
4139 echores
"$_x11_headers"
4143 if test "$_x11" = auto
&& test "$_x11_headers" = yes ; then
4145 #include <X11/Xlib.h>
4146 #include <X11/Xutil.h>
4147 int main(void) { (void) XCreateWindow(0,0,0,0,0,0,0,0,0,0,0,0); return 0; }
4149 for I
in "" -L/usr
/X11R
7/lib
-L/usr
/X11R
6/lib
-L/usr
/lib
/X11R6 \
4150 -L/usr
/X11
/lib
-L/usr
/lib32
-L/usr
/openwin
/lib
-L/usr
/X11R
6/lib64 \
4153 _ld_tmp
="$I -lXext -lX11 $_ld_pthread -Wl,-R$(echo $I | sed s/^-L//)"
4155 _ld_tmp
="$I -lXext -lX11 $_ld_pthread"
4157 cc_check
$_ld_tmp && libs_mplayer
="$libs_mplayer $_ld_tmp" \
4158 && _x11
=yes && break
4161 if test "$_x11" = yes ; then
4162 def_x11
='#define CONFIG_X11 1'
4163 _vomodules
="x11 xover $_vomodules"
4166 def_x11
='#undef CONFIG_X11'
4167 _novomodules
="x11 $_novomodules"
4168 _res_comment
="check if the dev(el) packages are installed"
4169 # disable stuff that depends on X
4170 _xv
=no
; _xvmc
=no
; _xinerama
=no
; _vm
=no
; _xf86keysym
=no
; _vdpau
=no
4174 echocheck
"Xss screensaver extensions"
4175 if test "$_xss" = auto
; then
4177 #include <X11/Xlib.h>
4178 #include <X11/extensions/scrnsaver.h>
4179 int main(void) { XScreenSaverSuspend(NULL, True); return 0; }
4182 cc_check
-lXss && _xss
=yes
4184 if test "$_xss" = yes ; then
4185 def_xss
='#define CONFIG_XSS 1'
4186 libs_mplayer
="$libs_mplayer -lXss"
4188 def_xss
='#undef CONFIG_XSS'
4195 if test "$_x11" = yes ; then
4197 #include <X11/Xmd.h>
4198 #include <X11/Xlib.h>
4199 #include <X11/Xutil.h>
4200 #include <X11/Xatom.h>
4201 #include <X11/extensions/dpms.h>
4202 int main(void) { (void) DPMSQueryExtension(0, 0, 0); return 0; }
4204 cc_check
-lXdpms && _xdpms3
=yes
4206 #include <X11/Xlib.h>
4207 #include <X11/extensions/dpms.h>
4208 int main(void) { (void) DPMSQueryExtension(0, 0, 0); return 0; }
4210 cc_check
-lXext && _xdpms4
=yes
4212 if test "$_xdpms4" = yes ; then
4213 def_xdpms
='#define CONFIG_XDPMS 1'
4214 _res_comment
="using Xdpms 4"
4216 elif test "$_xdpms3" = yes ; then
4217 def_xdpms
='#define CONFIG_XDPMS 1'
4218 libs_mplayer
="$libs_mplayer -lXdpms"
4219 _res_comment
="using Xdpms 3"
4222 def_xdpms
='#undef CONFIG_XDPMS'
4228 if test "$_xv" = auto
; then
4230 #include <X11/Xlib.h>
4231 #include <X11/extensions/Xvlib.h>
4233 (void) XvGetPortAttribute(0, 0, 0, 0);
4234 (void) XvQueryPortAttributes(0, 0, 0);
4238 cc_check
-lXv && _xv
=yes
4241 if test "$_xv" = yes ; then
4242 def_xv
='#define CONFIG_XV 1'
4243 libs_mplayer
="$libs_mplayer -lXv"
4244 _vomodules
="xv $_vomodules"
4246 def_xv
='#undef CONFIG_XV'
4247 _novomodules
="xv $_novomodules"
4253 if test "$_xv" = yes && test "$_xvmc" != no
; then
4256 #include <X11/Xlib.h>
4257 #include <X11/extensions/Xvlib.h>
4258 #include <X11/extensions/XvMClib.h>
4260 (void) XvMCQueryExtension(0,0,0);
4261 (void) XvMCCreateContext(0,0,0,0,0,0,0);
4264 for _ld_tmp
in $_xvmclib XvMCNVIDIA XvMCW I810XvMC
; do
4265 cc_check
-lXvMC -l$_ld_tmp && _xvmc
=yes && _xvmclib
="$_ld_tmp" && break
4268 if test "$_xvmc" = yes ; then
4269 def_xvmc
='#define CONFIG_XVMC 1'
4270 libs_mplayer
="$libs_mplayer -lXvMC -l$_xvmclib"
4271 _vomodules
="xvmc $_vomodules"
4272 _res_comment
="using $_xvmclib"
4274 def_xvmc
='#define CONFIG_XVMC 0'
4275 _novomodules
="xvmc $_novomodules"
4281 if test "$_vdpau" = auto
; then
4283 if test "$_dl" = yes ; then
4285 #include <vdpau/vdpau_x11.h>
4286 int main(void) {return VDP_VIDEO_MIXER_ATTRIBUTE_SKIP_CHROMA_DEINTERLACE;}
4288 cc_check
&& _vdpau
=yes
4291 if test "$_vdpau" = yes ; then
4292 def_vdpau
='#define CONFIG_VDPAU 1'
4293 _vomodules
="vdpau $_vomodules"
4295 def_vdpau
='#define CONFIG_VDPAU 0'
4296 _novomodules
="vdpau $_novomodules"
4301 echocheck
"Xinerama"
4302 if test "$_xinerama" = auto
; then
4304 #include <X11/Xlib.h>
4305 #include <X11/extensions/Xinerama.h>
4306 int main(void) { (void) XineramaIsActive(0); return 0; }
4309 cc_check
-lXinerama && _xinerama
=yes
4312 if test "$_xinerama" = yes ; then
4313 def_xinerama
='#define CONFIG_XINERAMA 1'
4314 libs_mplayer
="$libs_mplayer -lXinerama"
4316 def_xinerama
='#undef CONFIG_XINERAMA'
4318 echores
"$_xinerama"
4321 # Note: the -lXxf86vm library is the VideoMode extension and though it's not
4322 # needed for DGA, AFAIK every distribution packages together with DGA stuffs
4323 # named 'X extensions' or something similar.
4324 # This check may be useful for future mplayer versions (to change resolution)
4325 # If you run into problems, remove '-lXxf86vm'.
4327 if test "$_vm" = auto
; then
4329 #include <X11/Xlib.h>
4330 #include <X11/extensions/xf86vmode.h>
4331 int main(void) { (void) XF86VidModeQueryExtension(0, 0, 0); return 0; }
4334 cc_check
-lXxf86vm && _vm
=yes
4336 if test "$_vm" = yes ; then
4337 def_vm
='#define CONFIG_XF86VM 1'
4338 libs_mplayer
="$libs_mplayer -lXxf86vm"
4340 def_vm
='#undef CONFIG_XF86VM'
4344 # Check for the presence of special keycodes, like audio control buttons
4345 # that XFree86 might have. Used to be bundled with the xf86vm check, but
4346 # has nothing to do with xf86vm and XFree 3.x has xf86vm but does NOT
4347 # have these new keycodes.
4348 echocheck
"XF86keysym"
4349 if test "$_xf86keysym" = auto
; then
4352 #include <X11/Xlib.h>
4353 #include <X11/XF86keysym.h>
4354 int main(void) { return XF86XK_AudioPause; }
4356 cc_check
&& _xf86keysym
=yes
4358 if test "$_xf86keysym" = yes ; then
4359 def_xf86keysym
='#define CONFIG_XF86XK 1'
4361 def_xf86keysym
='#undef CONFIG_XF86XK'
4363 echores
"$_xf86keysym"
4366 if test "$_dga2" = auto
&& test "$_x11" = yes ; then
4368 #include <X11/Xlib.h>
4369 #include <X11/extensions/xf86dga.h>
4370 int main(void) { (void) XDGASetViewport(0, 0, 0, 0, 0); return 0; }
4373 cc_check
-lXxf86dga && _dga2
=yes
4375 if test "$_dga1" = auto
&& test "$_dga2" = no
&& test "$_vm" = yes ; then
4377 #include <X11/Xlib.h>
4378 #include <X11/extensions/xf86dga.h>
4379 int main(void) { (void) XF86DGASetViewPort(0, 0, 0, 0); return 0; }
4382 cc_check
-lXxf86dga -lXxf86vm && _dga1
=yes
4386 def_dga
='#undef CONFIG_DGA'
4387 def_dga1
='#undef CONFIG_DGA1'
4388 def_dga2
='#undef CONFIG_DGA2'
4389 if test "$_dga1" = yes ; then
4391 def_dga1
='#define CONFIG_DGA1 1'
4392 _res_comment
="using DGA 1.0"
4393 elif test "$_dga2" = yes ; then
4395 def_dga2
='#define CONFIG_DGA2 1'
4396 _res_comment
="using DGA 2.0"
4398 if test "$_dga" = yes ; then
4399 def_dga
='#define CONFIG_DGA 1'
4400 libs_mplayer
="$libs_mplayer -lXxf86dga"
4401 _vomodules
="dga $_vomodules"
4403 _novomodules
="dga $_novomodules"
4409 if test "$_3dfx" = yes && test "$_dga" = yes ; then
4410 def_3dfx
='#define CONFIG_3DFX 1'
4411 _vomodules
="3dfx $_vomodules"
4413 def_3dfx
='#undef CONFIG_3DFX'
4414 _novomodules
="3dfx $_novomodules"
4419 def_vidix
='#undef CONFIG_VIDIX'
4420 def_vidix_drv_cyberblade
='#undef CONFIG_VIDIX_DRV_CYBERBLADE'
4421 _vidix_drv_cyberblade
=no
4422 def_vidix_drv_ivtv
='#undef CONFIG_VIDIX_DRV_IVTV'
4424 def_vidix_drv_mach64
='#undef CONFIG_VIDIX_DRV_MACH64'
4425 _vidix_drv_mach64
=no
4426 def_vidix_drv_mga
='#undef CONFIG_VIDIX_DRV_MGA'
4428 def_vidix_drv_mga_crtc2
='#undef CONFIG_VIDIX_DRV_MGA_CRTC2'
4429 _vidix_drv_mga_crtc2
=no
4430 def_vidix_drv_nvidia
='#undef CONFIG_VIDIX_DRV_NVIDIA'
4431 _vidix_drv_nvidia
=no
4432 def_vidix_drv_pm2
='#undef CONFIG_VIDIX_DRV_PM2'
4434 def_vidix_drv_pm3
='#undef CONFIG_VIDIX_DRV_PM3'
4436 def_vidix_drv_radeon
='#undef CONFIG_VIDIX_DRV_RADEON'
4437 _vidix_drv_radeon
=no
4438 def_vidix_drv_rage128
='#undef CONFIG_VIDIX_DRV_RAGE128'
4439 _vidix_drv_rage128
=no
4440 def_vidix_drv_s3
='#undef CONFIG_VIDIX_DRV_S3'
4442 def_vidix_drv_sh_veu
='#undef CONFIG_VIDIX_DRV_SH_VEU'
4443 _vidix_drv_sh_veu
=no
4444 def_vidix_drv_sis
='#undef CONFIG_VIDIX_DRV_SIS'
4446 def_vidix_drv_unichrome
='#undef CONFIG_VIDIX_DRV_UNICHROME'
4447 _vidix_drv_unichrome
=no
4448 if test "$_vidix" = auto
; then
4450 x86
&& (linux || freebsd || netbsd || openbsd || dragonfly || sunos || win32
) \
4452 x86_64
&& win32
&& _vidix
=no
4453 (ppc || alpha
) && linux
&& _vidix
=yes
4457 if test "$_vidix" = yes ; then
4458 def_vidix
='#define CONFIG_VIDIX 1'
4459 _vomodules
="cvidix $_vomodules"
4460 # FIXME: ivtv driver temporarily disabled until we have a proper test
4461 #test "$_vidix_drivers" || _vidix_drivers="cyberblade ivtv mach64 mga mga_crtc2 nvidia pm2 pm3 radeon rage128 s3 sh_veu sis unichrome"
4462 test "$_vidix_drivers" || _vidix_drivers
="cyberblade mach64 mga mga_crtc2 nvidia pm2 pm3 radeon rage128 s3 sh_veu sis unichrome"
4464 # some vidix drivers are architecture and os specific, discard them elsewhere
4465 x86 || _vidix_drivers
=$
(echo $_vidix_drivers |
sed -e s
/cyberblade
// -e s
/sis
// -e s
/unichrome
// -e s
/s
3//)
4466 (test $host_arch = "sh" && linux
) || _vidix_drivers
=$
(echo $_vidix_drivers |
sed s
/sh_veu
//)
4468 for driver
in $_vidix_drivers ; do
4469 uc_driver
=$
(echo $driver |
tr '[a-z]' '[A-Z]')
4470 eval _vidix_drv_
${driver}=yes
4471 eval def_vidix_drv_
${driver}=\"\
#define CONFIG_VIDIX_DRV_${uc_driver} 1\"
4474 echocheck
"VIDIX PCI device name database"
4475 echores
"$_vidix_pcidb"
4476 if test "$_vidix_pcidb" = yes ; then
4482 echocheck
"VIDIX dhahelper support"
4483 test "$_dhahelper" = yes && cflags_dhahelper
=-DCONFIG_DHAHELPER
4484 echores
"$_dhahelper"
4486 echocheck
"VIDIX svgalib_helper support"
4487 test "$_svgalib_helper" = yes && cflags_svgalib_helper
=-DCONFIG_SVGAHELPER
4488 echores
"$_svgalib_helper"
4491 _novomodules
="cvidix $_novomodules"
4494 if test "$_vidix" = yes && win32
; then
4496 _vomodules
="winvidix $_vomodules"
4497 libs_mplayer
="$libs_mplayer -lgdi32"
4499 _novomodules
="winvidix $_novomodules"
4501 if test "$_vidix" = yes && test "$_x11" = yes; then
4503 _vomodules
="xvidix $_vomodules"
4505 _novomodules
="xvidix $_novomodules"
4509 if test "$_ggi" = auto
; then
4511 #include <ggi/ggi.h>
4512 int main(void) { ggiInit(); return 0; }
4515 cc_check
-lggi && _ggi
=yes
4517 if test "$_ggi" = yes ; then
4518 def_ggi
='#define CONFIG_GGI 1'
4519 libs_mplayer
="$libs_mplayer -lggi"
4520 _vomodules
="ggi $_vomodules"
4522 def_ggi
='#undef CONFIG_GGI'
4523 _novomodules
="ggi $_novomodules"
4527 echocheck
"GGI extension: libggiwmh"
4528 if test "$_ggiwmh" = auto
; then
4531 #include <ggi/ggi.h>
4532 #include <ggi/wmh.h>
4533 int main(void) { ggiInit(); ggiWmhInit(); return 0; }
4535 cc_check
-lggi -lggiwmh && _ggiwmh
=yes
4537 # needed to get right output on obscure combination
4538 # like --disable-ggi --enable-ggiwmh
4539 if test "$_ggi" = yes && test "$_ggiwmh" = yes ; then
4540 def_ggiwmh
='#define CONFIG_GGIWMH 1'
4541 libs_mplayer
="$libs_mplayer -lggiwmh"
4544 def_ggiwmh
='#undef CONFIG_GGIWMH'
4550 if test "$_aa" = auto
; then
4553 extern struct aa_hardware_params aa_defparams;
4554 extern struct aa_renderparams aa_defrenderparams;
4558 (void) aa_init(0, 0, 0);
4559 c = aa_autoinit(&aa_defparams);
4560 p = aa_getrenderparams();
4561 aa_autoinitkbd(c,0);
4565 for _ld_tmp
in "-laa" ; do
4566 cc_check
$_ld_tmp && libs_mplayer
="$libs_mplayer $_ld_tmp" && _aa
=yes && break
4569 if test "$_aa" = yes ; then
4570 def_aa
='#define CONFIG_AA 1'
4572 libs_mplayer
="$libs_mplayer $(aalib-config --libs | cut -d " " -f 2,5,6)"
4574 _vomodules
="aa $_vomodules"
4576 def_aa
='#undef CONFIG_AA'
4577 _novomodules
="aa $_novomodules"
4583 if test "$_caca" = auto
; then
4585 if ( caca-config
--version ) >> "$TMPLOG" 2>&1 ; then
4588 #ifdef CACA_API_VERSION_1
4591 int main(void) { (void) caca_init(); return 0; }
4593 cc_check $
(caca-config
--libs) && _caca
=yes
4596 if test "$_caca" = yes ; then
4597 def_caca
='#define CONFIG_CACA 1'
4598 extra_cflags
="$extra_cflags $(caca-config --cflags)"
4599 libs_mplayer
="$libs_mplayer $(caca-config --libs)"
4600 _vomodules
="caca $_vomodules"
4602 def_caca
='#undef CONFIG_CACA'
4603 _novomodules
="caca $_novomodules"
4609 if test "$_svga" = auto
; then
4612 int main(void) { return 0; }
4615 cc_check
-lvga $_ld_lm && _svga
=yes
4617 if test "$_svga" = yes ; then
4618 def_svga
='#define CONFIG_SVGALIB 1'
4619 libs_mplayer
="$libs_mplayer -lvga"
4620 _vomodules
="svga $_vomodules"
4622 def_svga
='#undef CONFIG_SVGALIB'
4623 _novomodules
="svga $_novomodules"
4629 if test "$_fbdev" = auto
; then
4633 if test "$_fbdev" = yes ; then
4634 def_fbdev
='#define CONFIG_FBDEV 1'
4635 _vomodules
="fbdev $_vomodules"
4637 def_fbdev
='#undef CONFIG_FBDEV'
4638 _novomodules
="fbdev $_novomodules"
4645 if test "$_dvb" = auto
; then
4649 #include <sys/ioctl.h>
4653 #include <ost/dmx.h>
4654 #include <ost/frontend.h>
4655 #include <ost/sec.h>
4656 #include <ost/video.h>
4657 #include <ost/audio.h>
4658 int main(void) {return 0;}
4660 for _inc_tmp
in "" "-I/usr/src/DVB/ost/include" ; do
4661 cc_check
$_inc_tmp && _dvb
=yes && \
4662 extra_cflags
="$extra_cflags $_inc_tmp" && break
4666 if test "$_dvb" = yes ; then
4667 def_dvb
='#define CONFIG_DVB 1'
4668 def_dvbin
='#define CONFIG_DVBIN 1'
4669 _aomodules
="mpegpes(dvb) $_aomodules"
4670 _vomodules
="mpegpes(dvb) $_vomodules"
4673 echocheck
"DVB HEAD"
4674 if test "$_dvbhead" = auto
; then
4679 #include <sys/ioctl.h>
4683 #include <linux/dvb/dmx.h>
4684 #include <linux/dvb/frontend.h>
4685 #include <linux/dvb/video.h>
4686 #include <linux/dvb/audio.h>
4687 int main(void) {return 0;}
4689 for _inc_tmp
in "" "-I/usr/src/DVB/include" ; do
4690 cc_check
$_inc_tmp && _dvbhead
=yes && \
4691 extra_cflags
="$extra_cflags $_inc_tmp" && break
4695 if test "$_dvbhead" = yes ; then
4696 def_dvb
='#define CONFIG_DVB 1'
4697 def_dvb_head
='#define CONFIG_DVB_HEAD 1'
4698 def_dvbin
='#define CONFIG_DVBIN 1'
4699 _aomodules
="mpegpes(dvb) $_aomodules"
4700 _vomodules
="mpegpes(dvb) $_vomodules"
4703 if test "$_dvbhead" = no
&& test "$_dvb" = no
; then
4704 def_dvb
='#undef CONFIG_DVB'
4705 def_dvb_head
='#undef CONFIG_DVB_HEAD'
4706 def_dvbin
='#undef CONFIG_DVBIN '
4707 _aomodules
="mpegpes(file) $_aomodules"
4708 _vomodules
="mpegpes(file) $_vomodules"
4711 if test "$_dvb" = yes ||
test "$_dvbhead" = yes ; then
4713 _inputmodules
="dvb $_inputmodules"
4716 _noinputmodules
="dvb $_noinputmodules"
4722 echocheck
"QuickTime"
4723 if test "$quicktime" = auto
; then
4725 #include <QuickTime/QuickTime.h>
4727 ImageDescription *desc;
4734 cc_check
-framework QuickTime
&& quicktime
=yes
4736 if test "$quicktime" = yes ; then
4737 extra_ldflags
="$extra_ldflags -framework QuickTime"
4738 def_quicktime
='#define CONFIG_QUICKTIME 1'
4740 def_quicktime
='#undef CONFIG_QUICKTIME'
4746 if test "$_quartz" = auto
; then
4748 #include <Carbon/Carbon.h>
4750 CFRunLoopRunInMode(kCFRunLoopDefaultMode, 0, false);
4755 cc_check
-framework Carbon
&& _quartz
=yes
4757 if test "$_quartz" = yes ; then
4758 libs_mplayer
="$libs_mplayer -framework Carbon"
4759 def_quartz
='#define CONFIG_QUARTZ 1'
4760 _vomodules
="quartz $_vomodules"
4762 def_quartz
='#undef CONFIG_QUARTZ'
4763 _novomodules
="quartz $_novomodules"
4767 echocheck
"CoreVideo"
4768 if test "$_corevideo" = auto
; then
4770 #include <Carbon/Carbon.h>
4771 #include <CoreServices/CoreServices.h>
4772 #include <OpenGL/OpenGL.h>
4773 #include <QuartzCore/CoreVideo.h>
4774 int main(void) { return 0; }
4777 cc_check
-framework Carbon
-framework Cocoa
-framework QuartzCore
-framework OpenGL
&& _corevideo
=yes
4779 if test "$_corevideo" = yes ; then
4780 _vomodules
="corevideo $_vomodules"
4781 libs_mplayer
="$libs_mplayer -framework Carbon -framework Cocoa -framework QuartzCore -framework OpenGL"
4782 def_corevideo
='#define CONFIG_COREVIDEO 1'
4784 _novomodules
="corevideo $_novomodules"
4785 def_corevideo
='#undef CONFIG_COREVIDEO'
4787 echores
"$_corevideo"
4792 # make sure this stays below CoreVideo to avoid issues due to namespace
4793 # conflicts between -lGL and -framework OpenGL
4795 #Note: this test is run even with --enable-gl since we autodetect linker flags
4796 if (test "$_x11" = yes || win32
) && test "$_gl" != no
; then
4799 #include <windows.h>
4803 #include <X11/Xlib.h>
4809 wglCreateContext(dc);
4811 glXCreateContext(NULL, NULL, NULL, True);
4818 if cc_check
-lGL $_ld_lm ; then
4821 libs_mplayer
="$libs_mplayer -lGL $_ld_dl"
4822 elif cc_check
-lGL $_ld_lm $_ld_pthread ; then
4825 libs_mplayer
="$libs_mplayer -lGL $_ld_pthread $_ld_dl"
4827 if cc_check
-DGL_WIN32 -lopengl32 ; then
4830 libs_mplayer
="$libs_mplayer -lopengl32 -lgdi32"
4835 if test "$_gl" = yes ; then
4836 def_gl
='#define CONFIG_GL 1'
4837 _res_comment
="backends:"
4838 if test "$_gl_win32" = yes ; then
4839 def_gl_win32
='#define CONFIG_GL_WIN32 1'
4840 _res_comment
="$_res_comment win32"
4842 if test "$_gl_x11" = yes ; then
4843 def_gl_x11
='#define CONFIG_GL_X11 1'
4844 _res_comment
="$_res_comment x11"
4846 _vomodules
="opengl $_vomodules"
4848 def_gl
='#undef CONFIG_GL'
4849 def_gl_win32
='#undef CONFIG_GL_WIN32'
4850 def_gl_x11
='#undef CONFIG_GL_X11'
4851 _novomodules
="opengl $_novomodules"
4855 echocheck
"MatrixView"
4856 if test "$_gl" = no
; then
4859 if test "$_matrixview" = yes ; then
4860 _vomodules
="matrixview $_vomodules"
4861 def_matrixview
='#define HAVE_MATRIXVIEW 1'
4863 _novomodules
="matrixview $_novomodules"
4864 def_matrixview
='#undef HAVE_MATRIXVIEW'
4866 echores
"$_matrixview"
4868 echocheck
"MatrixView"
4869 if test "$_gl" = no
; then
4872 if test "$matrixview" = yes ; then
4873 _vomodules
="matrixview $_vomodules"
4874 def_matrixview
='#define CONFIG_MATRIXVIEW 1'
4876 _novomodules
="matrixview $_novomodules"
4877 def_matrixview
='#undef CONFIG_MATRIXVIEW'
4879 echores
"$matrixview"
4882 echocheck
"PNG support"
4883 if test "$_png" = auto
; then
4886 # Don't check for -lpng on irix since it has its own libpng
4887 # incompatible with the GNU libpng
4888 _res_comment
="disabled on irix (not GNU libpng)"
4894 printf("png.h : %s\n", PNG_LIBPNG_VER_STRING);
4895 printf("libpng: %s\n", png_libpng_ver);
4896 return strcmp(PNG_LIBPNG_VER_STRING, png_libpng_ver);
4899 cc_check
-lpng -lz $_ld_lm && _png
=yes
4903 if test "$_png" = yes ; then
4904 def_png
='#define CONFIG_PNG 1'
4905 extra_ldflags
="$extra_ldflags -lpng -lz"
4907 def_png
='#undef CONFIG_PNG'
4910 echocheck
"MNG support"
4911 if test "$_mng" = auto
; then
4916 const char * p_ver = mng_version_text();
4917 return !p_ver || p_ver[0] == 0;
4920 if cc_check
-lmng -lz $_ld_lm ; then
4925 if test "$_mng" = yes ; then
4926 def_mng
='#define CONFIG_MNG 1'
4927 extra_ldflags
="$extra_ldflags -lmng -lz"
4929 def_mng
='#undef CONFIG_MNG'
4932 echocheck
"JPEG support"
4933 if test "$_jpeg" = auto
; then
4940 #include <jpeglib.h>
4941 int main(void) { return 0; }
4943 cc_check
-ljpeg $_ld_lm && _jpeg
=yes
4947 if test "$_jpeg" = yes ; then
4948 def_jpeg
='#define CONFIG_JPEG 1'
4949 _vomodules
="jpeg $_vomodules"
4950 extra_ldflags
="$extra_ldflags -ljpeg"
4952 def_jpeg
='#undef CONFIG_JPEG'
4953 _novomodules
="jpeg $_novomodules"
4958 echocheck
"PNM support"
4959 if test "$_pnm" = yes; then
4960 def_pnm
="#define CONFIG_PNM 1"
4961 _vomodules
="pnm $_vomodules"
4963 def_pnm
="#undef CONFIG_PNM"
4964 _novomodules
="pnm $_novomodules"
4970 echocheck
"GIF support"
4971 # This is to appease people who want to force gif support.
4972 # If it is forced to yes, then we still do checks to determine
4973 # which gif library to use.
4974 if test "$_gif" = yes ; then
4979 if test "$_gif" = auto
; then
4982 #include <gif_lib.h>
4983 int main(void) { return 0; }
4985 for _ld_gif
in "-lungif" "-lgif" ; do
4986 cc_check
$_ld_gif && _gif
=yes && break
4990 # If no library was found, and the user wants support forced,
4991 # then we force it on with libgif, as this is the safest
4992 # assumption IMHO. (libungif & libregif both create symbolic
4993 # links to libgif. We also assume that no x11 support is needed,
4994 # because if you are forcing this, then you _should_ know what
4995 # you are doing. [ Besides, package maintainers should never
4996 # have compiled x11 deps into libungif in the first place. ] )
4999 if test "$_force_gif" = yes && test "$_gif" = no
; then
5004 if test "$_gif" = yes ; then
5005 def_gif
='#define CONFIG_GIF 1'
5006 _codecmodules
="gif $_codecmodules"
5007 _vomodules
="gif89a $_vomodules"
5008 _res_comment
="old version, some encoding functions disabled"
5009 def_gif_4
='#undef CONFIG_GIF_4'
5010 extra_ldflags
="$extra_ldflags $_ld_gif"
5014 #include <gif_lib.h>
5015 void catch() { exit(1); }
5017 signal(SIGSEGV, catch); // catch segfault
5018 printf("EGifPutExtensionFirst is at address %p\n", EGifPutExtensionFirst);
5019 EGifSetGifVersion("89a"); // this will segfault a buggy gif lib.
5023 if cc_check
"$_ld_gif" ; then
5024 def_gif_4
='#define CONFIG_GIF_4 1'
5028 def_gif
='#undef CONFIG_GIF'
5029 def_gif_4
='#undef CONFIG_GIF_4'
5030 _novomodules
="gif89a $_novomodules"
5031 _nocodecmodules
="gif $_nocodecmodules"
5036 case "$_gif" in yes*)
5037 echocheck
"broken giflib workaround"
5038 def_gif_tvt_hack
='#define CONFIG_GIF_TVT_HACK 1'
5041 #include <gif_lib.h>
5044 printf("UserData is at address %p\n", gif.UserData);
5048 if cc_check
"$_ld_gif" ; then
5049 def_gif_tvt_hack
='#undef CONFIG_GIF_TVT_HACK'
5058 echocheck
"VESA support"
5059 if test "$_vesa" = auto
; then
5062 int main(void) { vbeVersion(); return 0; }
5065 cc_check
-lvbe -llrmi && _vesa
=yes
5067 if test "$_vesa" = yes ; then
5068 def_vesa
='#define CONFIG_VESA 1'
5069 libs_mplayer
="$libs_mplayer -lvbe -llrmi"
5070 _vomodules
="vesa $_vomodules"
5072 def_vesa
='#undef CONFIG_VESA'
5073 _novomodules
="vesa $_novomodules"
5085 def_sdl_sdl_h
="#undef CONFIG_SDL_SDL_H"
5086 if test -z "$_sdlconfig" ; then
5087 if ( sdl-config
--version ) >>"$TMPLOG" 2>&1 ; then
5088 _sdlconfig
="sdl-config"
5089 elif ( sdl11-config
--version ) >>"$TMPLOG" 2>&1 ; then
5090 _sdlconfig
="sdl11-config"
5095 if test "$_sdl" = auto ||
test "$_sdl" = yes ; then
5097 #ifdef CONFIG_SDL_SDL_H
5098 #include <SDL/SDL.h>
5103 // we allow SDL hacking our main() only on OSX
5106 int main(int argc, char *argv[]) {
5107 SDL_Init(SDL_INIT_VIDEO|SDL_INIT_NOPARACHUTE);
5112 for _ld_tmp
in "-lSDL" "-lSDL -lpthread" "-lSDL -lwinmm -lgdi32" ; do
5113 if cc_check
-DCONFIG_SDL_SDL_H $_inc_tmp $_ld_tmp ; then
5115 def_sdl_sdl_h
="#define CONFIG_SDL_SDL_H 1"
5119 if test "$_sdl" = no
&& "$_sdlconfig" --version >>"$TMPLOG" 2>&1 ; then
5121 _inc_tmp
="$($_sdlconfig --cflags | cut -d " " -f 1,5,6 | sed s/no-cygwin/cygwin/)"
5122 _ld_tmp
="$($_sdlconfig --libs | cut -d " " -f 1,4,6 | sed s/no-cygwin/cygwin/)"
5124 _inc_tmp
=$
($_sdlconfig --cflags |
sed s
/-Dmain=SDL_main
//)
5125 _ld_tmp
=$
($_sdlconfig --libs |
sed -e s
/-mwindows// -e s
/-lmingw32//)
5127 _inc_tmp
="$($_sdlconfig --cflags)"
5128 _ld_tmp
="$($_sdlconfig --libs)"
5130 if cc_check
$_inc_tmp $_ld_tmp >>"$TMPLOG" 2>&1 ; then
5131 _sdlversion
=$
($_sdlconfig --version |
sed 's/[^0-9]//g')
5132 if test "$_sdlversion" -gt 116 ; then
5133 if test "$_sdlversion" -lt 121 ; then
5134 def_sdlbuggy
='#define BUGGY_SDL'
5136 def_sdlbuggy
='#undef BUGGY_SDL'
5143 if test "$_sdl" = yes ; then
5144 def_sdl
='#define CONFIG_SDL 1'
5145 extra_cflags
="$extra_cflags $_inc_tmp"
5146 libs_mplayer
="$libs_mplayer $_ld_tmp"
5147 _vomodules
="sdl $_vomodules"
5148 _aomodules
="sdl $_aomodules"
5149 _res_comment
="using $_sdlconfig"
5151 def_sdl
='#undef CONFIG_SDL'
5152 _novomodules
="sdl $_novomodules"
5153 _noaomodules
="sdl $_noaomodules"
5159 echocheck
"KVA (SNAP/WarpOverlay!/DIVE)"
5160 if test "$_kva" = auto
; then
5164 int main( void ) { return 0; }
5167 cc_check
-lkva && _kva
=yes
5169 if test "$_kva" = yes ; then
5170 def_kva
='#define CONFIG_KVA 1'
5171 libs_mplayer
="$libs_mplayer -lkva"
5172 _vomodules
="kva $_vomodules"
5174 def_kva
='#undef CONFIG_KVA'
5175 _novomodules
="kva $_novomodules"
5183 echocheck
"Windows waveout"
5184 if test "$_win32waveout" = auto
; then
5186 #include <windows.h>
5187 #include <mmsystem.h>
5188 int main(void) { return 0; }
5191 cc_check
-lwinmm && _win32waveout
=yes
5193 if test "$_win32waveout" = yes ; then
5194 def_win32waveout
='#define CONFIG_WIN32WAVEOUT 1'
5195 libs_mplayer
="$libs_mplayer -lwinmm"
5196 _aomodules
="win32 $_aomodules"
5198 def_win32waveout
='#undef CONFIG_WIN32WAVEOUT'
5199 _noaomodules
="win32 $_noaomodules"
5201 echores
"$_win32waveout"
5203 echocheck
"Direct3D"
5204 if test "$_direct3d" = auto
; then
5206 #include <windows.h>
5208 int main(void) { return 0; }
5211 cc_check
&& _direct3d
=yes
5213 if test "$_direct3d" = yes ; then
5214 def_direct3d
='#define CONFIG_DIRECT3D 1'
5215 _vomodules
="direct3d $_vomodules"
5217 def_direct3d
='#undef CONFIG_DIRECT3D'
5218 _novomodules
="direct3d $_novomodules"
5220 echores
"$_direct3d"
5223 if test "$_directx" = auto
; then
5225 #include <windows.h>
5228 int main(void) { return 0; }
5231 cc_check
-lgdi32 && _directx
=yes
5233 if test "$_directx" = yes ; then
5234 def_directx
='#define CONFIG_DIRECTX 1'
5235 libs_mplayer
="$libs_mplayer -lgdi32"
5236 _vomodules
="directx $_vomodules"
5237 _aomodules
="dsound $_aomodules"
5239 def_directx
='#undef CONFIG_DIRECTX'
5240 _novomodules
="directx $_novomodules"
5241 _noaomodules
="dsound $_noaomodules"
5249 if test "$_dxr2" = auto
; then
5252 #include <dxr2ioctl.h>
5253 int main(void) { return 0; }
5255 for _inc_tmp
in "" -I/usr
/local
/include
/dxr2
-I/usr
/include
/dxr2
; do
5256 cc_check
$_inc_tmp && _dxr2
=yes && \
5257 extra_cflags
="$extra_cflags $_inc_tmp" && break
5260 if test "$_dxr2" = yes; then
5261 def_dxr2
='#define CONFIG_DXR2 1'
5262 _aomodules
="dxr2 $_aomodules"
5263 _vomodules
="dxr2 $_vomodules"
5265 def_dxr2
='#undef CONFIG_DXR2'
5266 _noaomodules
="dxr2 $_noaomodules"
5267 _novomodules
="dxr2 $_novomodules"
5272 if test "$_dxr3" = auto
; then
5274 #include <linux/em8300.h>
5275 int main(void) { return 0; }
5278 cc_check
&& _dxr3
=yes
5280 if test "$_dxr3" = yes ; then
5281 def_dxr3
='#define CONFIG_DXR3 1'
5282 _vomodules
="dxr3 $_vomodules"
5284 def_dxr3
='#undef CONFIG_DXR3'
5285 _novomodules
="dxr3 $_novomodules"
5290 echocheck
"IVTV TV-Out (pre linux-2.6.24)"
5291 if test "$_ivtv" = auto
; then
5294 #include <inttypes.h>
5295 #include <linux/types.h>
5296 #include <linux/videodev2.h>
5297 #include <linux/ivtv.h>
5298 #include <sys/ioctl.h>
5300 struct ivtv_cfg_stop_decode sd;
5301 struct ivtv_cfg_start_decode sd1;
5302 ioctl(0, IVTV_IOC_START_DECODE, &sd1);
5303 ioctl(0, IVTV_IOC_STOP_DECODE, &sd);
5307 cc_check
&& _ivtv
=yes
5309 if test "$_ivtv" = yes ; then
5310 def_ivtv
='#define CONFIG_IVTV 1'
5311 _vomodules
="ivtv $_vomodules"
5312 _aomodules
="ivtv $_aomodules"
5314 def_ivtv
='#undef CONFIG_IVTV'
5315 _novomodules
="ivtv $_novomodules"
5316 _noaomodules
="ivtv $_noaomodules"
5321 echocheck
"V4L2 MPEG Decoder"
5322 if test "$_v4l2" = auto
; then
5325 #include <inttypes.h>
5326 #include <linux/types.h>
5327 #include <linux/videodev2.h>
5328 #include <linux/version.h>
5330 #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22)
5331 #error kernel headers too old, need 2.6.22
5333 struct v4l2_ext_controls ctrls;
5334 ctrls.ctrl_class = V4L2_CTRL_CLASS_MPEG;
5339 cc_check
&& _v4l2
=yes
5341 if test "$_v4l2" = yes ; then
5342 def_v4l2
='#define CONFIG_V4L2_DECODER 1'
5343 _vomodules
="v4l2 $_vomodules"
5344 _aomodules
="v4l2 $_aomodules"
5346 def_v4l2
='#undef CONFIG_V4L2_DECODER'
5347 _novomodules
="v4l2 $_novomodules"
5348 _noaomodules
="v4l2 $_noaomodules"
5359 echocheck
"OSS Audio"
5360 if test "$_ossaudio" = auto
; then
5362 #include <sys/ioctl.h>
5363 #include <$_soundcard_header>
5364 int main(void) { int arg = SNDCTL_DSP_SETFRAGMENT; return 0; }
5367 cc_check
&& _ossaudio
=yes
5369 if test "$_ossaudio" = yes ; then
5370 def_ossaudio
='#define CONFIG_OSS_AUDIO 1'
5371 _aomodules
="oss $_aomodules"
5372 if test "$_linux_devfs" = yes; then
5373 def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound/dsp"'
5374 def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/sound/mixer"'
5377 #include <sys/ioctl.h>
5378 #include <$_soundcard_header>
5379 #ifdef OPEN_SOUND_SYSTEM
5380 int main(void) { return 0; }
5382 #error Not the real thing
5386 cc_check
&& _real_ossaudio
=yes
5387 if test "$_real_ossaudio" = yes; then
5388 def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
5389 # Check for OSS4 headers (override default headers)
5390 # Does not apply to systems where OSS4 is native (e.g. FreeBSD)
5391 if test -f /etc
/oss.conf
; then
5393 _ossinc
="$OSSLIBDIR/include"
5394 if test -f "$_ossinc/sys/soundcard.h"; then
5395 extra_cflags
="-I$_ossinc $extra_cflags"
5398 elif netbsd || openbsd
; then
5399 def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound"'
5400 extra_ldflags
="$extra_ldflags -lossaudio"
5402 def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
5404 def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/mixer"'
5407 def_ossaudio
='#undef CONFIG_OSS_AUDIO'
5408 def_ossaudio_devdsp
='#define PATH_DEV_DSP ""'
5409 def_ossaudio_devmixer
='#define PATH_DEV_MIXER ""'
5410 _noaomodules
="oss $_noaomodules"
5412 echores
"$_ossaudio"
5416 if test "$_arts" = auto
; then
5418 if ( artsc-config
--version ) >> "$TMPLOG" 2>&1 ; then
5422 int main(void) { return 0; }
5424 cc_check $
(artsc-config
--libs) $
(artsc-config
--cflags) && _arts
=yes
5429 if test "$_arts" = yes ; then
5430 def_arts
='#define CONFIG_ARTS 1'
5431 _aomodules
="arts $_aomodules"
5432 libs_mplayer
="$libs_mplayer $(artsc-config --libs)"
5433 extra_cflags
="$extra_cflags $(artsc-config --cflags)"
5435 _noaomodules
="arts $_noaomodules"
5441 if test "$_esd" = auto
; then
5443 if ( esd-config
--version ) >> "$TMPLOG" 2>&1 ; then
5447 int main(void) { int fd = esd_open_sound("test"); return fd; }
5449 cc_check $
(esd-config
--libs) $
(esd-config
--cflags) && _esd
=yes
5455 if test "$_esd" = yes ; then
5456 def_esd
='#define CONFIG_ESD 1'
5457 _aomodules
="esd $_aomodules"
5458 libs_mplayer
="$libs_mplayer $(esd-config --libs)"
5459 extra_cflags
="$extra_cflags $(esd-config --cflags)"
5461 echocheck
"esd_get_latency()"
5464 int main(void) { return esd_get_latency(0); }
5466 cc_check $
(esd-config
--libs) $
(esd-config
--cflags) && _esd_latency
=yes && def_esd_latency
='#define CONFIG_ESD_LATENCY 1'
5467 echores
"$_esd_latency"
5469 def_esd
='#undef CONFIG_ESD'
5470 def_esd_latency
='#undef CONFIG_ESD_LATENCY'
5471 _noaomodules
="esd $_noaomodules"
5476 if test "$_nas" = auto
; then
5478 #include <audio/audiolib.h>
5479 int main(void) { return 0; }
5482 cc_check
$_ld_lm -laudio -lXt && _nas
=yes
5484 if test "$_nas" = yes ; then
5485 def_nas
='#define CONFIG_NAS 1'
5486 libs_mplayer
="$libs_mplayer -laudio -lXt"
5487 _aomodules
="nas $_aomodules"
5489 _noaomodules
="nas $_noaomodules"
5490 def_nas
='#undef CONFIG_NAS'
5496 if test "$_pulse" = auto
; then
5498 if $_pkg_config --exists 'libpulse >= 0.9' ; then
5501 #include <pulse/pulseaudio.h>
5502 int main(void) { return 0; }
5504 cc_check $
($_pkg_config --libs --cflags libpulse
) && _pulse
=yes
5510 if test "$_pulse" = yes ; then
5511 def_pulse
='#define CONFIG_PULSE 1'
5512 _aomodules
="pulse $_aomodules"
5513 libs_mplayer
="$libs_mplayer $($_pkg_config --libs libpulse)"
5514 extra_cflags
="$extra_cflags $($_pkg_config --cflags libpulse)"
5516 def_pulse
='#undef CONFIG_PULSE'
5517 _noaomodules
="pulse $_noaomodules"
5522 if test "$_jack" = auto
; then
5526 #include <jack/jack.h>
5527 int main(void) { jack_client_open("test", JackUseExactName, NULL); return 0; }
5529 if cc_check
-ljack ; then
5530 libs_mplayer
="$libs_mplayer -ljack"
5531 elif cc_check $
($_pkg_config --libs --cflags --silence-errors jack
) ; then
5532 libs_mplayer
="$libs_mplayer $($_pkg_config --libs jack)"
5533 extra_cflags
="$extra_cflags "$
($_pkg_config --cflags jack
)""
5539 if test "$_jack" = yes ; then
5540 def_jack
='#define CONFIG_JACK 1'
5541 _aomodules
="jack $_aomodules"
5543 _noaomodules
="jack $_noaomodules"
5548 if test "$_openal" = auto
; then
5552 #include <OpenAL/al.h>
5557 alSourceQueueBuffers(0, 0, 0);
5558 // alGetSourcei(0, AL_SAMPLE_OFFSET, 0);
5562 for I
in "-lopenal" "-lopenal32" "-framework OpenAL" ; do
5563 cc_check
$I && _openal
=yes && break
5564 cc_check
-DOPENAL_AL_H=1 $I && def_openal_h
='#define OPENAL_AL_H 1' && _openal
=yes && break
5566 test "$_openal" = yes && libs_mplayer
="$libs_mplayer $I"
5568 if test "$_openal" = yes ; then
5569 def_openal
='#define CONFIG_OPENAL 1'
5570 _aomodules
="openal $_aomodules"
5572 _noaomodules
="openal $_noaomodules"
5576 echocheck
"ALSA audio"
5577 if test "$_alloca" != yes ; then
5579 _res_comment
="alloca missing"
5581 if test "$_alsa" != no
; then
5584 #include <sys/time.h>
5585 #include <sys/asoundlib.h>
5586 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 5))
5587 #error "alsa version != 0.5.x"
5589 int main(void) { return 0; }
5591 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.5.x'
5594 #include <sys/time.h>
5595 #include <sys/asoundlib.h>
5596 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
5597 #error "alsa version != 0.9.x"
5599 int main(void) { return 0; }
5601 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.9.x-sys'
5603 #include <sys/time.h>
5604 #include <alsa/asoundlib.h>
5605 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
5606 #error "alsa version != 0.9.x"
5608 int main(void) { return 0; }
5610 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.9.x-alsa'
5613 #include <sys/time.h>
5614 #include <sys/asoundlib.h>
5615 #if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
5616 #error "alsa version != 1.0.x"
5618 int main(void) { return 0; }
5620 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='1.0.x-sys'
5622 #include <sys/time.h>
5623 #include <alsa/asoundlib.h>
5624 #if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
5625 #error "alsa version != 1.0.x"
5627 int main(void) { return 0; }
5629 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='1.0.x-alsa'
5631 def_alsa
='#undef CONFIG_ALSA'
5632 def_alsa5
='#undef CONFIG_ALSA5'
5633 def_alsa9
='#undef CONFIG_ALSA9'
5634 def_alsa1x
='#undef CONFIG_ALSA1X'
5635 def_sys_asoundlib_h
='#undef HAVE_SYS_ASOUNDLIB_H'
5636 def_alsa_asoundlib_h
='#undef HAVE_ALSA_ASOUNDLIB_H'
5637 if test "$_alsaver" ; then
5639 if test "$_alsaver" = '0.5.x' ; then
5641 _aomodules
="alsa5 $_aomodules"
5642 def_alsa5
='#define CONFIG_ALSA5 1'
5643 def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
5644 _res_comment
="using alsa 0.5.x and sys/asoundlib.h"
5645 elif test "$_alsaver" = '0.9.x-sys' ; then
5647 _aomodules
="alsa $_aomodules"
5648 def_alsa
='#define CONFIG_ALSA 1'
5649 def_alsa9
='#define CONFIG_ALSA9 1'
5650 def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
5651 _res_comment
="using alsa 0.9.x and sys/asoundlib.h"
5652 elif test "$_alsaver" = '0.9.x-alsa' ; then
5654 _aomodules
="alsa $_aomodules"
5655 def_alsa
='#define CONFIG_ALSA 1'
5656 def_alsa9
='#define CONFIG_ALSA9 1'
5657 def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
5658 _res_comment
="using alsa 0.9.x and alsa/asoundlib.h"
5659 elif test "$_alsaver" = '1.0.x-sys' ; then
5661 _aomodules
="alsa $_aomodules"
5662 def_alsa
='#define CONFIG_ALSA 1'
5663 def_alsa1x
="#define CONFIG_ALSA1X 1"
5664 def_alsa_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
5665 _res_comment
="using alsa 1.0.x and sys/asoundlib.h"
5666 elif test "$_alsaver" = '1.0.x-alsa' ; then
5668 _aomodules
="alsa $_aomodules"
5669 def_alsa
='#define CONFIG_ALSA 1'
5670 def_alsa1x
="#define CONFIG_ALSA1X 1"
5671 def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
5672 _res_comment
="using alsa 1.0.x and alsa/asoundlib.h"
5675 _res_comment
="unknown version"
5677 extra_ldflags
="$extra_ldflags -lasound $_ld_dl $_ld_pthread"
5679 _noaomodules
="alsa $_noaomodules"
5684 echocheck
"Sun audio"
5685 if test "$_sunaudio" = auto
; then
5687 #include <sys/types.h>
5688 #include <sys/audioio.h>
5689 int main(void) { audio_info_t info; AUDIO_INITINFO(&info); return 0; }
5692 cc_check
&& _sunaudio
=yes
5694 if test "$_sunaudio" = yes ; then
5695 def_sunaudio
='#define CONFIG_SUN_AUDIO 1'
5696 _aomodules
="sun $_aomodules"
5698 def_sunaudio
='#undef CONFIG_SUN_AUDIO'
5699 _noaomodules
="sun $_noaomodules"
5701 echores
"$_sunaudio"
5704 def_mlib
='#define CONFIG_MLIB 0'
5706 echocheck
"Sun mediaLib"
5707 if test "$_mlib" = auto
; then
5711 int main(void) { mlib_VideoColorYUV2ABGR420(0,0,0,0,0,0,0,0,0); return 0; }
5713 cc_check
-lmlib && _mlib
=yes && def_mlib
='#define CONFIG_MLIB 1'
5720 echocheck
"CoreAudio"
5721 if test "$_coreaudio" = auto
; then
5723 #include <CoreAudio/CoreAudio.h>
5724 #include <AudioToolbox/AudioToolbox.h>
5725 #include <AudioUnit/AudioUnit.h>
5726 int main(void) { return 0; }
5729 cc_check
-framework CoreAudio
-framework AudioUnit
-framework AudioToolbox
&& _coreaudio
=yes
5731 if test "$_coreaudio" = yes ; then
5732 libs_mplayer
="$libs_mplayer -framework CoreAudio -framework AudioUnit -framework AudioToolbox"
5733 def_coreaudio
='#define CONFIG_COREAUDIO 1'
5734 _aomodules
="coreaudio $_aomodules"
5736 def_coreaudio
='#undef CONFIG_COREAUDIO'
5737 _noaomodules
="coreaudio $_noaomodules"
5744 echocheck
"SGI audio"
5745 if test "$_sgiaudio" = auto
; then
5746 # check for SGI audio
5748 #include <dmedia/audio.h>
5749 int main(void) { return 0; }
5752 cc_check
&& _sgiaudio
=yes
5754 if test "$_sgiaudio" = "yes" ; then
5755 def_sgiaudio
='#define CONFIG_SGI_AUDIO 1'
5756 libs_mplayer
="$libs_mplayer -laudio"
5757 _aomodules
="sgi $_aomodules"
5759 def_sgiaudio
='#undef CONFIG_SGI_AUDIO'
5760 _noaomodules
="sgi $_noaomodules"
5762 echores
"$_sgiaudio"
5768 if test "$_dart" = auto
; then
5772 int main( void ) { return 0; }
5775 cc_check
-ldart && _dart
=yes
5777 if test "$_dart" = yes ; then
5778 def_dart
='#define CONFIG_DART 1'
5779 libs_mplayer
="$libs_mplayer -ldart"
5780 _aomodules
="dart $_aomodules"
5782 def_dart
='#undef CONFIG_DART'
5783 _noaomodules
="dart $_noaomodules"
5789 # set default CD/DVD devices
5790 if win32 || os2
; then
5791 default_cdrom_device
="D:"
5793 default_cdrom_device
="/dev/disk1"
5794 elif dragonfly
; then
5795 default_cdrom_device
="/dev/cd0"
5797 default_cdrom_device
="/dev/acd0"
5799 default_cdrom_device
="/dev/rcd0a"
5801 default_cdrom_device
="/vol/dev/aliases/cdrom0"
5802 # Modern Solaris versions use HAL instead of the vold daemon, the volfs
5803 # file system and the volfs service.
5804 test -r "/cdrom/cdrom0" && default_cdrom_device
="/cdrom/cdrom0"
5806 default_cdrom_device
="a1ide.device:2"
5808 default_cdrom_device
="/dev/cdrom"
5811 if win32 || os2 || dragonfly || freebsd || openbsd || sunos || amigaos
; then
5812 default_dvd_device
=$default_cdrom_device
5814 default_dvd_device
="/dev/rdiskN"
5816 default_dvd_device
="/dev/dvd"
5820 echocheck
"VCD support"
5821 if test "$_vcd" = auto
; then
5823 if linux || freebsd || netbsd || openbsd || dragonfly || bsdos || darwin || sunos
; then
5827 #include <ddk/ntddcdrm.h>
5828 int main(void) { return 0; }
5830 cc_check
&& _vcd
=yes
5833 if test "$_vcd" = yes; then
5834 _inputmodules
="vcd $_inputmodules"
5835 def_vcd
='#define CONFIG_VCD 1'
5837 def_vcd
='#undef CONFIG_VCD'
5838 _noinputmodules
="vcd $_noinputmodules"
5839 _res_comment
="not supported on this OS"
5846 if test "$_dvdread_internal" = auto
&& test ! -f "libdvdread4/dvd_reader.c" ; then
5847 _dvdread_internal
=no
5849 if test "$_dvdread_internal" = auto
; then
5850 _dvdread_internal
=no
5852 if (linux || freebsd || netbsd || openbsd || dragonfly || sunos || hpux
) \
5853 && (test "$_dvd" = yes ||
test "$_cdrom" = yes ||
test "$_cdio" = yes || \
5854 test "$_dvdio" = yes ||
test "$_bsdi_dvd" = yes) \
5855 || darwin || win32 || os2
; then
5856 _dvdread_internal
=yes
5858 extra_cflags
="-Ilibdvdread4 $extra_cflags"
5860 elif test "$_dvdread" = auto
; then
5862 if test "$_dl" = yes; then
5864 #include <inttypes.h>
5865 #include <dvdread/dvd_reader.h>
5866 #include <dvdread/ifo_types.h>
5867 #include <dvdread/ifo_read.h>
5868 #include <dvdread/nav_read.h>
5869 int main(void) { return 0; }
5871 _dvdreadcflags
=$
($_dvdreadconfig --cflags)
5872 _dvdreadlibs
=$
($_dvdreadconfig --libs)
5873 if cc_check
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE \
5874 $_dvdreadcflags $_dvdreadlibs $_ld_dl ; then
5876 extra_cflags
="$extra_cflags $_dvdreadcflags"
5877 extra_ldflags
="$extra_ldflags $_dvdreadlibs"
5878 _res_comment
="external"
5883 if test "$_dvdread_internal" = yes; then
5884 def_dvdread
='#define CONFIG_DVDREAD 1'
5885 _inputmodules
="dvdread(internal) $_inputmodules"
5887 _res_comment
="internal"
5888 elif test "$_dvdread" = yes; then
5889 def_dvdread
='#define CONFIG_DVDREAD 1'
5891 extra_ldflags
="$extra_ldflags -ldvdread"
5892 _inputmodules
="dvdread(external) $_inputmodules"
5893 _res_comment
="external"
5895 def_dvdread
='#undef CONFIG_DVDREAD'
5896 _noinputmodules
="dvdread $_noinputmodules"
5901 echocheck
"internal libdvdcss"
5902 if test "$_libdvdcss_internal" = auto
; then
5903 _libdvdcss_internal
=no
5904 test "$_dvdread_internal" = yes && _libdvdcss_internal
=yes
5905 hpux
&& test "$_hpux_scsi_h" = no
&& _libdvdcss_internal
=no
5907 if test "$_libdvdcss_internal" = yes ; then
5908 if linux || netbsd || openbsd || bsdos
; then
5909 def_dvd_linux
='#define HAVE_LINUX_DVD_STRUCT 1'
5910 openbsd
&& def_dvd_openbsd
='#define HAVE_OPENBSD_DVD_STRUCT 1'
5911 elif freebsd || dragonfly
; then
5912 def_dvd_bsd
='#define HAVE_BSD_DVD_STRUCT 1'
5914 def_dvd_darwin
='#define DARWIN_DVD_IOCTL'
5915 extra_ldflags
="$extra_ldflags -framework IOKit -framework Carbon"
5917 cflags_libdvdcss
="-DSYS_CYGWIN -DWIN32"
5919 cflags_libdvdcss
="-DSYS_BEOS"
5921 cflags_libdvdcss
="-DSYS_OS2"
5923 cflags_libdvdcss_dvdread
="-Ilibdvdcss"
5924 def_dvdcss
="#define HAVE_DVDCSS_DVDCSS_H 1"
5925 _inputmodules
="libdvdcss(internal) $_inputmodules"
5928 _noinputmodules
="libdvdcss(internal) $_noinputmodules"
5930 echores
"$_libdvdcss_internal"
5933 echocheck
"cdparanoia"
5934 if test "$_cdparanoia" = auto
; then
5936 #include <cdda_interface.h>
5937 #include <cdda_paranoia.h>
5938 // This need a better test. How ?
5939 int main(void) { void *test = cdda_verbose_set; return test == (void *)1; }
5942 for _inc_tmp
in "" "-I/usr/include/cdda" "-I/usr/local/include/cdda" ; do
5943 cc_check
$_inc_tmp -lcdda_interface -lcdda_paranoia $_ld_lm && \
5944 _cdparanoia
=yes && extra_cflags
="$extra_cflags $_inc_tmp" && break
5947 if test "$_cdparanoia" = yes ; then
5949 extra_ldflags
="$extra_ldflags -lcdda_interface -lcdda_paranoia"
5950 openbsd
&& extra_ldflags
="$extra_ldflags -lutil"
5952 echores
"$_cdparanoia"
5956 if test "$_libcdio" = auto
&& test "$_cdparanoia" = no
; then
5959 #include <cdio/version.h>
5960 #include <cdio/cdda.h>
5961 #include <cdio/paranoia.h>
5963 void *test = cdda_verbose_set;
5964 printf("%s\n", CDIO_VERSION);
5965 return test == (void *)1;
5969 for _ld_tmp
in "" "-lwinmm" ; do
5970 _ld_tmp
="-lcdio_cdda -lcdio -lcdio_paranoia $_ld_tmp"
5971 cc_check
$_ld_tmp $_ld_lm \
5972 && _libcdio
=yes && extra_ldflags
="$extra_ldflags $_ld_tmp" && break
5974 if test "$_libcdio" = no
&& $_pkg_config --exists libcdio_paranoia
; then
5975 _inc_tmp
=$
($_pkg_config --cflags libcdio_paranoia
)
5976 _ld_tmp
=$
($_pkg_config --libs libcdio_paranoia
)
5977 cc_check
$_inc_tmp $_ld_tmp $_ld_lm && _libcdio
=yes \
5978 && extra_ldflags
="$extra_ldflags $_ld_tmp" && extra_cflags
="$extra_cflags $_inc_tmp"
5981 if test "$_libcdio" = yes && test "$_cdparanoia" = no
; then
5983 def_libcdio
='#define CONFIG_LIBCDIO 1'
5984 def_havelibcdio
='yes'
5986 if test "$_cdparanoia" = yes ; then
5987 _res_comment
="using cdparanoia"
5989 def_libcdio
='#undef CONFIG_LIBCDIO'
5990 def_havelibcdio
='no'
5994 if test "$_cdda" = yes ; then
5995 test $_cddb = auto
&& test $_network = yes && _cddb
=yes
5996 def_cdparanoia
='#define CONFIG_CDDA 1'
5997 _inputmodules
="cdda $_inputmodules"
5999 def_cdparanoia
='#undef CONFIG_CDDA'
6000 _noinputmodules
="cdda $_noinputmodules"
6003 if test "$_cddb" = yes ; then
6004 def_cddb
='#define CONFIG_CDDB 1'
6005 _inputmodules
="cddb $_inputmodules"
6008 def_cddb
='#undef CONFIG_CDDB'
6009 _noinputmodules
="cddb $_noinputmodules"
6012 echocheck
"bitmap font support"
6013 if test "$_bitmap_font" = yes ; then
6014 def_bitmap_font
="#define CONFIG_BITMAP_FONT 1"
6016 def_bitmap_font
="#undef CONFIG_BITMAP_FONT"
6018 echores
"$_bitmap_font"
6021 echocheck
"freetype >= 2.0.9"
6023 # freetype depends on iconv
6024 if test "$_iconv" = no
; then
6026 _res_comment
="iconv support needed"
6029 if test "$_freetype" = auto
; then
6030 if ( $_freetypeconfig --version ) >/dev
/null
2>&1 ; then
6033 #include <ft2build.h>
6034 #include FT_FREETYPE_H
6035 #if ((FREETYPE_MAJOR < 2) || ((FREETYPE_MINOR == 0) && (FREETYPE_PATCH < 9)))
6036 #error "Need FreeType 2.0.9 or newer"
6040 FT_Int major=-1,minor=-1,patch=-1;
6041 int err=FT_Init_FreeType(&library);
6046 cc_check $
($_freetypeconfig --cflags) $
($_freetypeconfig --libs) && _freetype
=yes
6051 if test "$_freetype" = yes ; then
6052 def_freetype
='#define CONFIG_FREETYPE 1'
6053 extra_cflags
="$extra_cflags $($_freetypeconfig --cflags)"
6054 extra_ldflags
="$extra_ldflags $($_freetypeconfig --libs)"
6056 def_freetype
='#undef CONFIG_FREETYPE'
6058 echores
"$_freetype"
6060 if test "$_freetype" = no
; then
6062 _res_comment
="FreeType support needed"
6064 echocheck
"fontconfig"
6065 if test "$_fontconfig" = auto
; then
6069 #include <fontconfig/fontconfig.h>
6072 if (err == FcFalse) {
6073 printf("Couldn't initialize fontconfig lib\n");
6080 for _ld_tmp
in "" "-lexpat -lfreetype" "-lexpat -lfreetype -lz" "-lexpat -lfreetype -lz -liconv" ; do
6081 _ld_tmp
="-lfontconfig $_ld_tmp"
6082 cc_check
$_ld_tmp && _fontconfig
=yes && extra_ldflags
="$extra_ldflags $_ld_tmp" && break
6084 if test "$_fontconfig" = no
&& $_pkg_config --exists fontconfig
; then
6085 _inc_tmp
=$
($_pkg_config --cflags fontconfig
)
6086 _ld_tmp
=$
($_pkg_config --libs fontconfig
)
6087 cc_check
$_inc_tmp $_ld_tmp && _fontconfig
=yes \
6088 && extra_ldflags
="$extra_ldflags $_ld_tmp" && extra_cflags
="$extra_cflags $_inc_tmp"
6091 if test "$_fontconfig" = yes ; then
6092 def_fontconfig
='#define CONFIG_FONTCONFIG 1'
6094 def_fontconfig
='#undef CONFIG_FONTCONFIG'
6096 echores
"$_fontconfig"
6099 echocheck
"SSA/ASS support"
6100 if test "$_ass" = auto
-o "$_ass" = yes ; then
6101 if $_pkg_config libass
; then
6103 def_ass
='#define CONFIG_ASS 1'
6104 extra_ldflags
="$extra_ldflags $($_pkg_config --libs libass)"
6105 extra_cflags
="$extra_cflags $($_pkg_config --cflags libass)"
6108 def_ass
='#undef CONFIG_ASS'
6111 def_ass
='#undef CONFIG_ASS'
6116 echocheck
"fribidi with charsets"
6119 if test "$_fribidi" = auto
; then
6123 /* workaround for fribidi 0.10.4 and below */
6124 #define FRIBIDI_CHARSET_UTF8 FRIBIDI_CHAR_SET_UTF8
6125 #include <fribidi/fribidi.h>
6127 if (fribidi_parse_charset("UTF-8") != FRIBIDI_CHAR_SET_UTF8) {
6128 printf("Fribidi headers are not consistents with the library!\n");
6137 cc_check
$_inc_tmp $_ld_tmp && _fribidi
=yes
6138 if $_fribidiconfig --version > /dev
/null
2>&1 &&
6139 test "$_fribidi" = no
; then
6140 _inc_tmp
="$($_fribidiconfig --cflags)"
6141 _ld_tmp
="$($_fribidiconfig --libs)"
6142 cc_check
$_inc_tmp $_ld_tmp && _fribidi
=yes
6145 if test "$_fribidi" = yes ; then
6146 def_fribidi
='#define CONFIG_FRIBIDI 1'
6147 extra_cflags
="$extra_cflags $_inc_tmp"
6148 extra_ldflags
="$extra_ldflags $_ld_tmp"
6150 def_fribidi
='#undef CONFIG_FRIBIDI'
6156 if test "$_enca" = auto
; then
6158 #include <sys/types.h>
6163 langs = enca_get_languages(&langcnt);
6168 cc_check
-lenca $_ld_lm && _enca
=yes
6170 if test "$_enca" = yes ; then
6171 def_enca
='#define CONFIG_ENCA 1'
6172 extra_ldflags
="$extra_ldflags -lenca"
6174 def_enca
='#undef CONFIG_ENCA'
6182 int main(void) { (void) inflate(0, Z_NO_FLUSH); return 0; }
6185 cc_check
-lz && _zlib
=yes
6186 if test "$_zlib" = yes ; then
6187 def_zlib
='#define CONFIG_ZLIB 1'
6188 extra_ldflags
="$extra_ldflags -lz"
6190 def_zlib
='#define CONFIG_ZLIB 0'
6197 def_bzlib
='#define CONFIG_BZLIB 0'
6200 int main(void) { BZ2_bzlibVersion(); return 0; }
6202 cc_check
-lbz2 && bzlib
=yes
6203 if test "$bzlib" = yes ; then
6204 def_bzlib
='#define CONFIG_BZLIB 1'
6205 extra_ldflags
="$extra_ldflags -lbz2"
6211 if test "$_rtc" = auto
; then
6213 #include <sys/ioctl.h>
6215 #include <linux/rtc.h>
6218 #define RTC_PIE_ON RTCIO_PIE_ON
6220 int main(void) { return RTC_PIE_ON; }
6223 cc_check
&& _rtc
=yes
6226 if test "$_rtc" = yes ; then
6227 def_rtc
='#define HAVE_RTC 1'
6229 def_rtc
='#undef HAVE_RTC'
6234 echocheck
"liblzo2 support"
6235 if test "$_liblzo" = auto
; then
6238 #include <lzo/lzo1x.h>
6239 int main(void) { lzo_init();return 0; }
6241 cc_check
-llzo2 && _liblzo
=yes
6243 if test "$_liblzo" = yes ; then
6244 def_liblzo
='#define CONFIG_LIBLZO 1'
6245 extra_ldflags
="$extra_ldflags -llzo2"
6246 _codecmodules
="liblzo $_codecmodules"
6248 def_liblzo
='#undef CONFIG_LIBLZO'
6249 _nocodecmodules
="liblzo $_nocodecmodules"
6254 echocheck
"mad support"
6255 if test "$_mad" = auto
; then
6259 int main(void) { return 0; }
6261 cc_check
-lmad && _mad
=yes
6263 if test "$_mad" = yes ; then
6264 def_mad
='#define CONFIG_LIBMAD 1'
6265 extra_ldflags
="$extra_ldflags -lmad"
6266 _codecmodules
="libmad $_codecmodules"
6268 def_mad
='#undef CONFIG_LIBMAD'
6269 _nocodecmodules
="libmad $_nocodecmodules"
6274 if test "$_twolame" = auto
; then
6276 #include <twolame.h>
6277 int main(void) { twolame_init(); return 0; }
6280 cc_check
-ltwolame $_ld_lm && _twolame
=yes
6282 if test "$_twolame" = yes ; then
6283 def_twolame
='#define CONFIG_TWOLAME 1'
6284 libs_mencoder
="$libs_mencoder -ltwolame"
6285 _codecmodules
="twolame $_codecmodules"
6287 def_twolame
='#undef CONFIG_TWOLAME'
6288 _nocodecmodules
="twolame $_nocodecmodules"
6293 if test "$_toolame" = auto
; then
6295 if test "$_twolame" = yes ; then
6296 _res_comment
="disabled by twolame"
6299 #include <toolame.h>
6300 int main(void) { toolame_init(); return 0; }
6302 cc_check
-ltoolame $_ld_lm && _toolame
=yes
6305 if test "$_toolame" = yes ; then
6306 def_toolame
='#define CONFIG_TOOLAME 1'
6307 libs_mencoder
="$libs_mencoder -ltoolame"
6308 _codecmodules
="toolame $_codecmodules"
6310 def_toolame
='#undef CONFIG_TOOLAME'
6311 _nocodecmodules
="toolame $_nocodecmodules"
6313 if test "$_toolamedir" ; then
6314 _res_comment
="using $_toolamedir"
6318 echocheck
"OggVorbis support"
6319 if test "$_tremor_internal" = yes; then
6321 elif test "$_tremor" = auto
; then
6324 #include <tremor/ivorbiscodec.h>
6325 int main(void) { vorbis_packet_blocksize(0,0); return 0; }
6327 cc_check
-logg -lvorbisidec $_ld_lm && _tremor
=yes && _libvorbis
=no
6329 if test "$_libvorbis" = auto
; then
6332 #include <vorbis/codec.h>
6333 int main(void) { vorbis_packet_blocksize(0,0); return 0; }
6335 cc_check
-lvorbis -logg $_ld_lm && _libvorbis
=yes
6337 if test "$_tremor_internal" = yes ; then
6339 def_vorbis
='#define CONFIG_OGGVORBIS 1'
6340 def_tremor
='#define CONFIG_TREMOR 1'
6341 _codecmodules
="tremor(internal) $_codecmodules"
6342 _res_comment
="internal Tremor"
6343 if test "$_tremor_low" = yes ; then
6344 cflags_tremor_low
="-D_LOW_ACCURACY_"
6345 _res_comment
="internal low accuracy Tremor"
6347 elif test "$_tremor" = yes ; then
6349 def_vorbis
='#define CONFIG_OGGVORBIS 1'
6350 def_tremor
='#define CONFIG_TREMOR 1'
6351 _codecmodules
="tremor(external) $_codecmodules"
6352 _res_comment
="external Tremor"
6353 extra_ldflags
="$extra_ldflags -logg -lvorbisidec"
6354 elif test "$_libvorbis" = yes ; then
6356 def_vorbis
='#define CONFIG_OGGVORBIS 1'
6357 _codecmodules
="libvorbis $_codecmodules"
6358 _res_comment
="libvorbis"
6359 extra_ldflags
="$extra_ldflags -lvorbis -logg"
6362 _nocodecmodules
="libvorbis $_nocodecmodules"
6366 echocheck
"libspeex (version >= 1.1 required)"
6367 if test "$_speex" = auto
; then
6370 #include <speex/speex.h>
6371 int main(void) { SpeexBits bits; void *dec; speex_decode_int(dec, &bits, dec); return 0; }
6373 cc_check
-lspeex $_ld_lm && _speex
=yes
6375 if test "$_speex" = yes ; then
6376 def_speex
='#define CONFIG_SPEEX 1'
6377 extra_ldflags
="$extra_ldflags -lspeex"
6378 _codecmodules
="speex $_codecmodules"
6380 def_speex
='#undef CONFIG_SPEEX'
6381 _nocodecmodules
="speex $_nocodecmodules"
6385 echocheck
"OggTheora support"
6386 if test "$_theora" = auto
; then
6389 #include <theora/theora.h>
6392 /* Theora is in flux, make sure that all interface routines and datatypes
6393 * exist and work the way we expect it, so we don't break MPlayer. */
6402 theora_info_init(&inf);
6403 theora_comment_init(&tc);
6407 /* we don't want to execute this kind of nonsense; just for making sure
6408 * that compilation works... */
6409 memset(&op, 0, sizeof(op));
6410 r = theora_decode_header(&inf, &tc, &op);
6411 r = theora_decode_init(&st, &inf);
6412 t = theora_granule_time(&st, op.granulepos);
6413 r = theora_decode_packetin(&st, &op);
6414 r = theora_decode_YUVout(&st, &yuv);
6420 _ld_theora
=$
($_pkg_config --silence-errors --libs theora
)
6421 _inc_theora
=$
($_pkg_config --silence-errors --cflags theora
)
6422 cc_check
$_inc_theora $_ld_theora && extra_ldflags
="$extra_ldflags $_ld_theora" &&
6423 extra_cflags
="$extra_cflags $_inc_theora" && _theora
=yes
6424 if test _theora
= no
; then
6425 _ld_theora
="-ltheora -logg"
6426 cc_check
$_ld_theora && extra_ldflags
="$extra_ldflags $_ld_theora" && _theora
=yes
6428 if test "$_theora" = no
&& test "$_tremor_internal" = yes; then
6429 _ld_theora
=$
($_pkg_config --silence-errors --libs theora
)
6430 _inc_theora
=$
($_pkg_config --silence-errors --cflags theora
)
6431 cc_check tremor
/bitwise.c
$_inc_theora $_ld_theora &&
6432 extra_ldflags
="$extra_ldflags $_ld_theora" &&
6433 extra_cflags
="$extra_cflags $_inc_theora" && _theora
=yes
6434 if test _theora
= no
; then
6435 _ld_theora
="-ltheora -logg"
6436 cc_check tremor
/bitwise.c
$_ld_theora &&
6437 extra_ldflags
="$extra_ldflags $_ld_theora" && _theora
=yes
6441 if test "$_theora" = yes ; then
6442 def_theora
='#define CONFIG_OGGTHEORA 1'
6443 _codecmodules
="libtheora $_codecmodules"
6444 # when --enable-theora is forced, we'd better provide a probably sane
6445 # $_ld_theora than nothing
6446 test -z "$_ld_theora" && extra_ldflags
="$extra_ldflags -ltheora -logg"
6448 def_theora
='#undef CONFIG_OGGTHEORA'
6449 _nocodecmodules
="libtheora $_nocodecmodules"
6453 echocheck
"internal mp3lib support"
6454 if test "$_mp3lib" = auto
; then
6455 test "$cc_vendor" = intel
&& test "$_cc_major" -le 10 -o "$_cc_major" -eq 11 -a "$_cc_minor" -eq 0 && _mp3lib
=no || _mp3lib
=yes
6457 if test "$_mp3lib" = yes ; then
6458 def_mp3lib
='#define CONFIG_MP3LIB 1'
6459 _codecmodules
="mp3lib(internal) $_codecmodules"
6461 def_mp3lib
='#undef CONFIG_MP3LIB'
6462 _nocodecmodules
="mp3lib(internal) $_nocodecmodules"
6466 echocheck
"liba52 support"
6467 if test "$_liba52_internal" = auto
; then
6468 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
6470 def_liba52
='#undef CONFIG_LIBA52'
6471 def_liba52_internal
="#undef CONFIG_LIBA52_INTERNAL"
6472 if test "$_liba52_internal" = yes ; then
6474 def_liba52_internal
="#define CONFIG_LIBA52_INTERNAL 1"
6475 _res_comment
="internal"
6476 elif test "$_liba52_internal" = no
&& test "$_liba52" = auto
; then
6479 #include <inttypes.h>
6480 #include <a52dec/a52.h>
6481 int main(void) { a52_state_t *testHand; testHand=a52_init(0); return 0; }
6483 cc_check
-la52 && _liba52
=yes && _res_comment
="external" && extra_ldflags
="$extra_ldflags -la52"
6485 if test "$_liba52" = yes ; then
6486 def_liba52
='#define CONFIG_LIBA52 1'
6487 _codecmodules
="liba52($_res_comment) $_codecmodules"
6489 _nocodecmodules
="liba52 $_nocodecmodules"
6493 echocheck
"internal libmpeg2 support"
6494 if test "$_libmpeg2" = auto
; then
6496 if alpha
&& test cc_vendor
=gnu
; then
6498 2*|
3.0*|
3.1*) # cannot compile MVI instructions
6500 _res_comment
="broken gcc"
6505 if test "$_libmpeg2" = yes ; then
6506 def_libmpeg2
='#define CONFIG_LIBMPEG2 1'
6507 _codecmodules
="libmpeg2(internal) $_codecmodules"
6509 def_libmpeg2
='#undef CONFIG_LIBMPEG2'
6510 _nocodecmodules
="libmpeg2(internal) $_nocodecmodules"
6512 echores
"$_libmpeg2"
6514 echocheck
"libdca support"
6515 if test "$_libdca" = auto
; then
6518 #include <inttypes.h>
6520 int main(void) { dts_init(0); return 0; }
6522 for _ld_dca
in -ldts -ldca ; do
6523 cc_check
$_ld_dca $_ld_lm && extra_ldflags
="$extra_ldflags $_ld_dca" \
6524 && _libdca
=yes && break
6527 if test "$_libdca" = yes ; then
6528 def_libdca
='#define CONFIG_LIBDCA 1'
6529 _codecmodules
="libdca $_codecmodules"
6531 def_libdca
='#undef CONFIG_LIBDCA'
6532 _nocodecmodules
="libdca $_nocodecmodules"
6536 echocheck
"libmpcdec (musepack, version >= 1.2.1 required)"
6537 if test "$_musepack" = auto
; then
6541 #include <mpcdec/mpcdec.h>
6543 mpc_streaminfo info;
6544 mpc_decoder decoder;
6545 mpc_decoder_set_streaminfo(&decoder, &info);
6546 mpc_decoder_decode_frame(&decoder, NULL, 0, NULL);
6550 cc_check
-lmpcdec $_ld_lm && _musepack
=yes
6552 if test "$_musepack" = yes ; then
6553 def_musepack
='#define CONFIG_MUSEPACK 1'
6554 extra_ldflags
="$extra_ldflags -lmpcdec"
6555 _codecmodules
="musepack $_codecmodules"
6557 def_musepack
='#undef CONFIG_MUSEPACK'
6558 _nocodecmodules
="musepack $_nocodecmodules"
6560 echores
"$_musepack"
6563 echocheck
"FAAC support"
6564 if test "$_faac" = auto
; then
6566 #include <inttypes.h>
6568 int main(void) { unsigned long x, y; faacEncOpen(48000, 2, &x, &y); return 0; }
6571 for _ld_faac
in "-lfaac" "-lfaac -lmp4v2 -lstdc++" ; do
6572 cc_check
-O2 $_ld_faac $_ld_lm && libs_mencoder
="$libs_mencoder $_ld_faac" && _faac
=yes && break
6575 if test "$_faac" = yes ; then
6576 def_faac
="#define CONFIG_FAAC 1"
6577 _codecmodules
="faac $_codecmodules"
6579 def_faac
="#undef CONFIG_FAAC"
6580 _nocodecmodules
="faac $_nocodecmodules"
6585 echocheck
"FAAD2 support"
6586 if test "$_faad_internal" = auto
; then
6587 if x86_32
&& test cc_vendor
=gnu
; then
6589 3.1*|
3.2) # ICE/insn with these versions
6591 _res_comment
="broken gcc"
6603 if test "$_faad" = auto
; then
6606 #ifndef FAAD_MIN_STREAMSIZE
6607 #error Too old version
6609 int main(void) { faacDecHandle testhand; faacDecFrameInfo testinfo;
6610 testhand = faacDecOpen(); faacDecInit(0, 0, 0, 0, 0); return 0; }
6612 cc_check
-lfaad $_ld_lm && _faad
=yes
6615 def_faad
='#undef CONFIG_FAAD'
6616 def_faad_internal
="#undef CONFIG_FAAD_INTERNAL"
6617 if test "$_faad_internal" = yes ; then
6618 def_faad_internal
="#define CONFIG_FAAD_INTERNAL 1"
6619 _res_comment
="internal floating-point"
6620 if test "$_faad_fixed" = yes ; then
6621 # The FIXED_POINT implementation of FAAD2 improves performance
6622 # on some platforms, especially for SBR files.
6623 cflags_faad_fixed
="-DFIXED_POINT"
6624 _res_comment
="internal fixed-point"
6626 elif test "$_faad" = yes ; then
6627 extra_ldflags
="$extra_ldflags -lfaad"
6630 if test "$_faad" = yes ; then
6631 def_faad
='#define CONFIG_FAAD 1'
6632 if test "$_faad_internal" = yes ; then
6633 _codecmodules
="faad2(internal) $_codecmodules"
6635 _codecmodules
="faad2 $_codecmodules"
6639 _nocodecmodules
="faad2 $_nocodecmodules"
6644 echocheck
"LADSPA plugin support"
6645 if test "$_ladspa" = auto
; then
6650 const LADSPA_Descriptor *ld = NULL;
6655 cc_check
&& _ladspa
=yes
6657 if test "$_ladspa" = yes; then
6658 def_ladspa
="#define CONFIG_LADSPA 1"
6660 def_ladspa
="#undef CONFIG_LADSPA"
6665 echocheck
"libbs2b audio filter support"
6666 if test "$_libbs2b" = auto
; then
6669 #if BS2B_VERSION_MAJOR < 3
6670 #error Please use libbs2b >= 3.0.0, older versions are not supported.
6680 if $_pkg_config --exists libbs2b
; then
6681 _inc_tmp
=$
($_pkg_config --cflags libbs2b
)
6682 _ld_tmp
=$
($_pkg_config --libs libbs2b
)
6683 cc_check
$_inc_tmp $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" &&
6684 extra_cflags
="$extra_cflags $_inc_tmp" && _libbs2b
=yes
6686 for _inc_tmp
in "" -I/usr
/include
/bs2b
-I/usr
/local
/include \
6687 -I/usr
/local
/include
/bs2b
; do
6688 if cc_check
$_inc_tmp $_ld_lm -lbs2b ; then
6689 extra_ldflags
="$extra_ldflags -lbs2b"
6690 extra_cflags
="$extra_cflags $_inc_tmp"
6697 def_libbs2b
="#undef CONFIG_LIBBS2B"
6698 test "$_libbs2b" = yes && def_libbs2b
="#define CONFIG_LIBBS2B 1"
6702 if test -z "$_codecsdir" ; then
6703 for dir
in "$_libdir/codecs" "$_libdir/win32" /usr
/local
/lib
/codecs \
6704 /usr
/lib
/codecs
/usr
/local
/lib
/win32
/usr
/lib
/win32
; do
6705 if test -d "$dir" ; then
6711 # Fall back on default directory.
6712 if test -z "$_codecsdir" ; then
6713 _codecsdir
="$_libdir/codecs"
6714 mingw32
&& _codecsdir
="codecs"
6715 os2
&& _codecsdir
="codecs"
6719 echocheck
"Win32 codecs"
6720 if test "$_win32dll" = auto
; then
6722 if x86_32
&& ! qnx
; then
6726 if test "$_win32dll" = yes ; then
6727 def_win32dll
='#define CONFIG_WIN32DLL 1'
6728 test -z "$_win32codecsdir" && _win32codecsdir
=$_codecsdir
6729 _res_comment
="using $_win32codecsdir"
6731 def_win32_loader
='#define WIN32_LOADER 1'
6732 _win32_emulation
=yes
6734 extra_ldflags
="$extra_ldflags -ladvapi32 -lole32"
6735 _res_comment
="using native windows"
6737 _codecmodules
="win32 $_codecmodules"
6739 def_win32dll
='#undef CONFIG_WIN32DLL'
6740 def_win32_loader
='#undef WIN32_LOADER'
6741 _nocodecmodules
="win32 $_nocodecmodules"
6743 echores
"$_win32dll"
6746 echocheck
"XAnim codecs"
6747 if test "$_xanim" = auto
; then
6749 _res_comment
="dynamic loader support needed"
6750 if test "$_dl" = yes ; then
6754 if test "$_xanim" = yes ; then
6755 test -z "$_xanimcodecsdir" && _xanimcodecsdir
=$_codecsdir
6756 def_xanim
='#define CONFIG_XANIM 1'
6757 def_xanim_path
="#define XACODEC_PATH \"$_xanimcodecsdir\""
6758 _codecmodules
="xanim $_codecmodules"
6759 _res_comment
="using $_xanimcodecsdir"
6761 def_xanim
='#undef CONFIG_XANIM'
6762 def_xanim_path
='#undef XACODEC_PATH'
6763 _nocodecmodules
="xanim $_nocodecmodules"
6768 echocheck
"RealPlayer codecs"
6769 if test "$_real" = auto
; then
6771 _res_comment
="dynamic loader support needed"
6772 if test "$_dl" = yes ||
test "$_win32dll" = yes &&
6773 (linux || freebsd || netbsd || openbsd || dragonfly || darwin || win32
) ; then
6777 if test "$_real" = yes ; then
6778 test -z "$_realcodecsdir" && _realcodecsdir
="$_codecsdir"
6779 def_real
='#define CONFIG_REALCODECS 1'
6780 def_real_path
="#define REALCODEC_PATH \"$_realcodecsdir\""
6781 _codecmodules
="real $_codecmodules"
6782 _res_comment
="using $_realcodecsdir"
6784 def_real
='#undef CONFIG_REALCODECS'
6785 def_real_path
="#undef REALCODEC_PATH"
6786 _nocodecmodules
="real $_nocodecmodules"
6791 echocheck
"QuickTime codecs"
6793 def_qtx_win32
='#undef CONFIG_QTX_CODECS_WIN32'
6794 if test "$_qtx" = auto
; then
6795 test "$_win32dll" = yes ||
test "$quicktime" = yes && _qtx
=yes
6797 if test "$_qtx" = yes ; then
6798 def_qtx
='#define CONFIG_QTX_CODECS 1'
6799 win32
&& _qtx_codecs_win32
=yes && def_qtx_win32
='#define CONFIG_QTX_CODECS_WIN32 1'
6800 _codecmodules
="qtx $_codecmodules"
6801 darwin || win32 || _qtx_emulation
=yes
6803 def_qtx
='#undef CONFIG_QTX_CODECS'
6804 _nocodecmodules
="qtx $_nocodecmodules"
6808 echocheck
"Nemesi Streaming Media libraries"
6809 if test "$_nemesi" = auto
&& test "$_network" = yes ; then
6811 if $_pkg_config libnemesi
--atleast-version=0.6.3 ; then
6812 extra_cflags
="$extra_cflags $($_pkg_config --cflags libnemesi)"
6813 extra_ldflags
="$extra_ldflags $($_pkg_config --libs libnemesi)"
6817 if test "$_nemesi" = yes; then
6819 def_nemesi
='#define CONFIG_LIBNEMESI 1'
6820 _inputmodules
="nemesi $_inputmodules"
6822 _native_rtsp
="$_network"
6824 def_nemesi
='#undef CONFIG_LIBNEMESI'
6825 _noinputmodules
="nemesi $_noinputmodules"
6829 echocheck
"LIVE555 Streaming Media libraries"
6830 if test "$_live" = auto
&& test "$_network" = yes ; then
6831 cat > $TMPCPP << EOF
6832 #include <liveMedia.hh>
6833 #if (LIVEMEDIA_LIBRARY_VERSION_INT < 1141257600)
6834 #error Please upgrade to version 2006.03.03 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
6836 int main(void) { return 0; }
6840 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
6841 cxx_check
$I/liveMedia
/include
$I/UsageEnvironment
/include \
6842 $I/groupsock
/include
&& _livelibdir
=$
(echo $I|
sed s
/-I//) && \
6843 extra_ldflags
="$_livelibdir/liveMedia/libliveMedia.a \
6844 $_livelibdir/groupsock/libgroupsock.a \
6845 $_livelibdir/UsageEnvironment/libUsageEnvironment.a \
6846 $_livelibdir/BasicUsageEnvironment/libBasicUsageEnvironment.a \
6847 $extra_ldflags -lstdc++" \
6848 extra_cxxflags
="-I$_livelibdir/liveMedia/include \
6849 -I$_livelibdir/UsageEnvironment/include \
6850 -I$_livelibdir/BasicUsageEnvironment/include \
6851 -I$_livelibdir/groupsock/include" && \
6854 if test "$_live" != yes ; then
6855 ld_tmp
="-lliveMedia -lgroupsock -lUsageEnvironment -lBasicUsageEnvironment -lstdc++"
6856 if cxx_check
-I/usr
/include
/liveMedia
-I/usr
/include
/UsageEnvironment
-I/usr
/include
/groupsock
$ld_tmp; then
6861 if test "$_live" = yes && test "$_network" = yes; then
6862 test $_livelibdir && _res_comment
="using $_livelibdir"
6863 def_live
='#define CONFIG_LIVE555 1'
6864 _inputmodules
="live555 $_inputmodules"
6865 elif test "$_live_dist" = yes && test "$_network" = yes; then
6866 _res_comment
="using distribution version"
6868 def_live
='#define CONFIG_LIVE555 1'
6869 extra_ldflags
="$extra_ldflags $ld_tmp"
6870 extra_cxxflags
="-I/usr/include/liveMedia -I/usr/include/UsageEnvironment \
6871 -I/usr/include/BasicUsageEnvironment -I/usr/include/groupsock"
6872 _inputmodules
="live555 $_inputmodules"
6875 def_live
='#undef CONFIG_LIVE555'
6876 _noinputmodules
="live555 $_noinputmodules"
6881 echocheck
"FFmpeg libavutil"
6882 if test "$_libavutil" = auto
; then
6885 #include <libavutil/common.h>
6886 int main(void) { av_gcd(1,1); return 0; }
6888 if $_pkg_config --exists libavutil
; then
6889 _inc_libavutil
=$
($_pkg_config --cflags libavutil
)
6890 _ld_tmp
=$
($_pkg_config --libs libavutil
)
6891 cc_check
$_inc_libavutil $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" extra_cflags
="$extra_cflags $_inc_libavutil" \
6893 elif cc_check
-lavutil $_ld_lm ; then
6894 extra_ldflags
="$extra_ldflags -lavutil"
6898 def_libavutil
='#undef CONFIG_LIBAVUTIL'
6899 test "$_libavutil" = yes && def_libavutil
='#define CONFIG_LIBAVUTIL 1'
6900 # libavutil is not available, but it is mandatory ...
6901 if test "$_libavutil" = no
; then
6902 die
"You need libavutil, MPlayer will not compile without!"
6904 echores
"$_libavutil"
6906 echocheck
"FFmpeg libavcodec"
6907 if test "$_libavcodec" = auto
; then
6910 #include <libavcodec/avcodec.h>
6911 int main(void) { avcodec_find_encoder_by_name(""); return 0; }
6913 if $_pkg_config --exists libavcodec
; then
6914 _inc_libavcodec
=$
($_pkg_config --cflags libavcodec
)
6915 _ld_tmp
=$
($_pkg_config --libs libavcodec
)
6916 cc_check
$_inc_libavcodec $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && extra_cflags
="$extra_cflags $_inc_libavcodec" \
6918 elif cc_check
-lavcodec $_ld_lm ; then
6919 extra_ldflags
="$extra_ldflags -lavcodec"
6923 def_libavcodec
='#undef CONFIG_LIBAVCODEC'
6924 test "$_libavcodec" = yes && def_libavcodec
='#define CONFIG_LIBAVCODEC 1'
6925 if test "$_libavcodec" = yes ; then
6926 _codecmodules
="libavcodec $_codecmodules"
6928 _nocodecmodules
="libavcodec $_nocodecmodules"
6930 echores
"$_libavcodec"
6932 echocheck
"FFmpeg libavformat"
6933 if test "$_libavformat" = auto
; then
6936 #include <libavformat/avformat.h>
6937 #include <libavcodec/opt.h>
6938 int main(void) { av_alloc_format_context(); return 0; }
6940 if $_pkg_config --exists libavformat
; then
6941 _inc_libavformat
=$
($_pkg_config --cflags libavformat
)
6942 _ld_tmp
=$
($_pkg_config --libs libavformat
)
6943 cc_check
$_inc_libavformat $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && extra_cflags
="$extra_cflags $_inc_libavformat" \
6945 elif cc_check
$_ld_lm -lavformat ; then
6946 extra_ldflags
="$extra_ldflags -lavformat"
6950 def_libavformat
='#undef CONFIG_LIBAVFORMAT'
6951 test "$_libavformat" = yes && def_libavformat
='#define CONFIG_LIBAVFORMAT 1'
6952 echores
"$_libavformat"
6954 echocheck
"FFmpeg libpostproc"
6955 if test "$_libpostproc" = auto
; then
6958 #include <inttypes.h>
6959 #include <libpostproc/postprocess.h>
6960 int main(void) { pp_get_mode_by_name_and_quality("de", 0); return 0; }
6962 if $_pkg_config --exists libpostproc
; then
6963 _inc_libpostproc
=$
($_pkg_config --cflags libpostproc
)
6964 _ld_tmp
=$
($_pkg_config --libs libpostproc
)
6965 cc_check
$_inc_libpostproc $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && extra_cflags
="$extra_cflags $_inc_libpostproc" \
6967 elif cc_check
-lpostproc $_ld_lm ; then
6968 extra_ldflags
="$extra_ldflags -lpostproc"
6972 def_libpostproc
='#undef CONFIG_LIBPOSTPROC'
6973 test "$_libpostproc" = yes && def_libpostproc
='#define CONFIG_LIBPOSTPROC 1'
6974 echores
"$_libpostproc"
6976 echocheck
"FFmpeg libswscale"
6977 if test "$_libswscale" = auto
; then
6980 #include <libswscale/swscale.h>
6981 int main(void) { sws_scale(0, 0, 0, 0, 0, 0, 0); return 0; }
6983 if $_pkg_config --exists libswscale
; then
6984 _inc_libswscale
=$
($_pkg_config --cflags libswscale
)
6985 _ld_tmp
=$
($_pkg_config --libs libswscale
)
6986 cc_check
$_inc_libswscale $_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" extra_cflags
="$extra_cflags $_inc_libswscale" \
6988 elif cc_check
-lswscale ; then
6989 extra_ldflags
="$extra_ldflags -lswscale"
6993 def_libswscale
='#undef CONFIG_LIBSWSCALE'
6994 test "$_libswscale" = yes && def_libswscale
='#define CONFIG_LIBSWSCALE 1'
6995 echores
"$_libswscale"
6997 def_libswscale_internals
="#undef CONFIG_LIBSWSCALE_INTERNALS"
6998 if ! test -z "$_ffmpeg_source" ; then
6999 test "$_libswscale" = yes && def_libswscale_internals
="#define CONFIG_LIBSWSCALE_INTERNALS 1" && _libswscale_internals
=yes
7002 def_libavcodec_internals
="#undef CONFIG_LIBAVCODEC_INTERNALS"
7003 if ! test -z "$_ffmpeg_source" ; then
7004 test "$_libavcodec" = yes && def_libavcodec_internals
="#define CONFIG_LIBAVCODEC_INTERNALS 1" && _libavcodec_internals
=yes
7007 echocheck
"libdv-0.9.5+"
7008 if test "$_libdv" = auto
; then
7011 #include <libdv/dv.h>
7012 int main(void) { dv_encoder_t* enc=dv_encoder_new(1,1,1); return 0; }
7014 cc_check
-ldv $_ld_pthread $_ld_lm && _libdv
=yes
7016 if test "$_libdv" = yes ; then
7017 def_libdv
='#define CONFIG_LIBDV095 1'
7018 extra_ldflags
="$extra_ldflags -ldv"
7019 _codecmodules
="libdv $_codecmodules"
7021 def_libdv
='#undef CONFIG_LIBDV095'
7022 _nocodecmodules
="libdv $_nocodecmodules"
7028 if test "$_xvid" = auto
; then
7032 int main(void) { xvid_global(0, 0, 0, 0); return 0; }
7034 for _ld_tmp
in "-lxvidcore $_ld_lm" "-lxvidcore $_ld_lm $_ld_pthread" ; do
7035 cc_check
$_ld_tmp && extra_ldflags
="$extra_ldflags $_ld_tmp" && _xvid
=yes && break
7039 if test "$_xvid" = yes ; then
7040 def_xvid
='#define CONFIG_XVID4 1'
7041 _codecmodules
="xvid $_codecmodules"
7043 def_xvid
='#undef CONFIG_XVID4'
7044 _nocodecmodules
="xvid $_nocodecmodules"
7049 if test "$_x264" = auto
; then
7051 #include <inttypes.h>
7054 #error We do not support old versions of x264. Get the latest from git.
7056 int main(void) { x264_encoder_open((void*)0); return 0; }
7059 for _ld_x264
in "-lx264 $_ld_pthread" "-lx264 $_ld_pthread $_ld_lm" ; do
7060 cc_check
$_ld_x264 && libs_mencoder
="$libs_mencoder $_ld_x264" && _x264
=yes && break
7064 if test "$_x264" = yes ; then
7065 def_x264
='#define CONFIG_X264 1'
7066 _codecmodules
="x264 $_codecmodules"
7068 def_x264
='#undef CONFIG_X264'
7069 _nocodecmodules
="x264 $_nocodecmodules"
7074 if test "$_libnut" = auto
; then
7078 #include <inttypes.h>
7080 nut_context_tt * nut;
7081 int main(void) { (void)nut_error(0); return 0; }
7084 cc_check
-lnut && _libnut
=yes
7087 if test "$_libnut" = yes ; then
7088 def_libnut
='#define CONFIG_LIBNUT 1'
7089 extra_ldflags
="$extra_ldflags -lnut"
7091 def_libnut
='#undef CONFIG_LIBNUT'
7095 # These VO checks must be done after libavcodec/libswscale one
7096 echocheck
"/dev/mga_vid"
7097 if test "$_mga" = auto
; then
7099 test -c /dev
/mga_vid
&& _mga
=yes
7101 if test "$_mga" = yes ; then
7102 if test "$_libswscale_internals" = yes ; then
7103 def_mga
='#define CONFIG_MGA 1'
7104 _vomodules
="mga $_vomodules"
7106 _res_comment
="libswscale internal headers are required by mga, sorry"
7107 def_mga
='#undef CONFIG_MGA'
7108 _novomodules
="mga $_novomodules"
7111 def_mga
='#undef CONFIG_MGA'
7112 _novomodules
="mga $_novomodules"
7118 if test "$_xmga" = auto
; then
7120 test "$_x11" = yes && test "$_mga" = yes && _xmga
=yes
7122 if test "$_xmga" = yes ; then
7123 if test "$_libswscale_internals" = yes ; then
7124 def_xmga
='#define CONFIG_XMGA 1'
7125 _vomodules
="xmga $_vomodules"
7127 _res_comment
="libswscale internal headers are required by mga, sorry"
7128 def_xmga
='#undef CONFIG_XMGA'
7129 _novomodules
="xmga $_novomodules"
7132 def_xmga
='#undef CONFIG_XMGA'
7133 _novomodules
="xmga $_novomodules"
7138 if test "$_zr" = auto
; then
7139 #36067's seem to identify themselves as 36057PQC's, so the line
7140 #below should work for 36067's and 36057's.
7141 if grep -q -s -e "Multimedia video controller: Zoran Corporation ZR36057" /proc
/pci
; then
7147 if test "$_zr" = yes ; then
7148 if test "$_libavcodec_internals" = yes ; then
7149 def_zr
='#define CONFIG_ZR 1'
7150 _vomodules
="zr zr2 $_vomodules"
7152 _res_comment
="libavcodec internal headers are required by zr, sorry"
7153 _novomodules
="zr $_novomodules"
7154 def_zr
='#undef CONFIG_ZR'
7157 def_zr
='#undef CONFIG_ZR'
7158 _novomodules
="zr zr2 $_novomodules"
7162 # mencoder requires (optional) those libs: libmp3lame
7163 if test "$_mencoder" != no
; then
7165 echocheck
"libmp3lame"
7166 def_mp3lame_preset
='#undef CONFIG_MP3LAME_PRESET'
7167 def_mp3lame_preset_medium
='#undef CONFIG_MP3LAME_PRESET_MEDIUM'
7168 if test "$_mp3lame" = auto
; then
7171 #include <lame/lame.h>
7172 int main(void) { lame_version_t lv; (void) lame_init();
7173 get_lame_version_numerical(&lv);
7176 cc_check
-lmp3lame $_ld_lm && _mp3lame
=yes
7178 if test "$_mp3lame" = yes ; then
7179 def_mp3lame
="#define CONFIG_MP3LAME 1"
7180 _ld_mp3lame
=-lmp3lame
7181 libs_mencoder
="$libs_mencoder $_ld_mp3lame"
7183 #include <lame/lame.h>
7184 int main(void) { lame_set_preset(NULL, STANDARD_FAST); return 0; }
7186 cc_check
$_ld_mp3lame $_ld_lm && def_mp3lame_preset
="#define CONFIG_MP3LAME_PRESET 1"
7188 #include <lame/lame.h>
7189 int main(void) { lame_set_preset(NULL, MEDIUM_FAST); return 0; }
7191 cc_check
$_ld_mp3lame $_ld_lm && def_mp3lame_preset_medium
="#define CONFIG_MP3LAME_PRESET_MEDIUM 1"
7193 def_mp3lame
='#undef CONFIG_MP3LAME'
7197 fi # test "$_mencoder" != no
7199 echocheck
"mencoder"
7200 if test "$_mencoder" = yes ; then
7201 def_muxers
='#define CONFIG_MUXERS 1'
7203 def_muxers
='#define CONFIG_MUXERS 0'
7205 echores
"$_mencoder"
7208 echocheck
"UnRAR executable"
7209 if test "$_unrar_exec" = auto
; then
7211 mingw32
&& _unrar_exec
="no"
7213 if test "$_unrar_exec" = yes ; then
7214 def_unrar_exec
='#define CONFIG_UNRAR_EXEC 1'
7216 def_unrar_exec
='#undef CONFIG_UNRAR_EXEC'
7218 echores
"$_unrar_exec"
7220 echocheck
"TV interface"
7221 if test "$_tv" = yes ; then
7222 def_tv
='#define CONFIG_TV 1'
7223 _inputmodules
="tv $_inputmodules"
7225 _noinputmodules
="tv $_noinputmodules"
7226 def_tv
='#undef CONFIG_TV'
7231 if freebsd || netbsd || openbsd || dragonfly || bsdos
; then
7232 echocheck
"*BSD BT848 bt8xx header"
7234 for file in "machine/ioctl_bt848.h" \
7235 "dev/bktr/ioctl_bt848.h" \
7236 "dev/video/bktr/ioctl_bt848.h" \
7237 "dev/ic/bt8xx.h" ; do
7239 #include <sys/types.h>
7240 #include <sys/ioctl.h>
7242 int main(void) { ioctl(0, TVTUNER_GETFREQ, 0); return 0; }
7246 _ioctl_bt848_h_name
="$file"
7250 if test "$_ioctl_bt848_h" = yes ; then
7251 def_ioctl_bt848_h_name
="#define IOCTL_BT848_H_NAME <$_ioctl_bt848_h_name>"
7252 _res_comment
="using $_ioctl_bt848_h_name"
7254 def_ioctl_bt848_h_name
="#undef IOCTL_BT848_H_NAME"
7256 echores
"$_ioctl_bt848_h"
7258 echocheck
"*BSD ioctl_meteor.h"
7260 for file in "machine/ioctl_meteor.h" \
7261 "dev/bktr/ioctl_meteor.h" \
7262 "dev/video/bktr/ioctl_meteor.h" ; do
7264 #include <sys/types.h>
7266 int main(void) { ioctl(0, METEORSINPUT, 0); return 0; }
7270 _ioctl_meteor_h_name
="$file"
7274 if test "$_ioctl_meteor_h" = yes ; then
7275 def_ioctl_meteor_h_name
="#define IOCTL_METEOR_H_NAME <$_ioctl_meteor_h_name>"
7276 _res_comment
="using $_ioctl_meteor_h_name"
7278 def_ioctl_meteor_h_name
="#undef IOCTL_METEOR_H_NAME"
7280 echores
"$_ioctl_meteor_h"
7282 echocheck
"*BSD BrookTree 848 TV interface"
7283 if test "$_tv_bsdbt848" = auto
; then
7285 if test "$_tv" = yes ; then
7287 #include <sys/types.h>
7288 $def_ioctl_meteor_h_name
7289 $def_ioctl_bt848_h_name
7290 #ifdef IOCTL_METEOR_H_NAME
7291 #include IOCTL_METEOR_H_NAME
7293 #ifdef IOCTL_BT848_H_NAME
7294 #include IOCTL_BT848_H_NAME
7297 ioctl(0, METEORSINPUT, 0);
7298 ioctl(0, TVTUNER_GETFREQ, 0);
7302 cc_check
&& _tv_bsdbt848
=yes
7305 if test "$_tv_bsdbt848" = yes ; then
7306 def_tv_bsdbt848
='#define CONFIG_TV_BSDBT848 1'
7307 _inputmodules
="tv-bsdbt848 $_inputmodules"
7309 def_tv_bsdbt848
='#undef CONFIG_TV_BSDBT848'
7310 _noinputmodules
="tv-bsdbt848 $_noinputmodules"
7312 echores
"$_tv_bsdbt848"
7313 fi #if freebsd || netbsd || openbsd || dragonfly || bsdos
7316 echocheck
"DirectShow TV interface"
7317 if test "$_tv_dshow" = auto
; then
7319 if test "$_tv" = yes && win32
; then
7324 CoCreateInstance((GUID*)&GUID_NULL, NULL, CLSCTX_INPROC_SERVER, &GUID_NULL, &p);
7328 cc_check
-lole32 -luuid && _tv_dshow
=yes
7331 if test "$_tv_dshow" = yes ; then
7332 _inputmodules
="tv-dshow $_inputmodules"
7333 def_tv_dshow
='#define CONFIG_TV_DSHOW 1'
7334 extra_ldflags
="$extra_ldflags -lole32 -luuid"
7336 _noinputmodules
="tv-dshow $_noinputmodules"
7337 def_tv_dshow
='#undef CONFIG_TV_DSHOW'
7339 echores
"$_tv_dshow"
7342 echocheck
"Video 4 Linux TV interface"
7343 if test "$_tv_v4l1" = auto
; then
7345 if test "$_tv" = yes && linux
; then
7348 #include <linux/videodev.h>
7349 int main(void) { return 0; }
7351 cc_check
&& _tv_v4l1
=yes
7354 if test "$_tv_v4l1" = yes ; then
7357 def_tv_v4l
='#define CONFIG_TV_V4L 1'
7358 def_tv_v4l1
='#define CONFIG_TV_V4L1 1'
7359 _inputmodules
="tv-v4l $_inputmodules"
7361 _noinputmodules
="tv-v4l1 $_noinputmodules"
7362 def_tv_v4l
='#undef CONFIG_TV_V4L'
7367 echocheck
"Video 4 Linux 2 TV interface"
7368 if test "$_tv_v4l2" = auto
; then
7370 if test "$_tv" = yes && linux
; then
7373 #include <linux/types.h>
7374 #include <linux/videodev2.h>
7375 int main(void) { return 0; }
7377 cc_check
&& _tv_v4l2
=yes
7380 if test "$_tv_v4l2" = yes ; then
7383 def_tv_v4l
='#define CONFIG_TV_V4L 1'
7384 def_tv_v4l2
='#define CONFIG_TV_V4L2 1'
7385 _inputmodules
="tv-v4l2 $_inputmodules"
7387 _noinputmodules
="tv-v4l2 $_noinputmodules"
7388 def_tv_v4l2
='#undef CONFIG_TV_V4L2'
7393 echocheck
"Radio interface"
7394 if test "$_radio" = yes ; then
7395 def_radio
='#define CONFIG_RADIO 1'
7396 _inputmodules
="radio $_inputmodules"
7397 if test "$_alsa9" != yes -a "$_alsa1x" != yes -a "$_ossaudio" != yes ; then
7400 if test "$_radio_capture" = yes ; then
7402 def_radio_capture
="#define CONFIG_RADIO_CAPTURE 1"
7404 def_radio_capture
="#undef CONFIG_RADIO_CAPTURE"
7407 _noinputmodules
="radio $_noinputmodules"
7408 def_radio
='#undef CONFIG_RADIO'
7409 def_radio_capture
="#undef CONFIG_RADIO_CAPTURE"
7413 echocheck
"Capture for Radio interface"
7414 echores
"$_radio_capture"
7416 echocheck
"Video 4 Linux 2 Radio interface"
7417 if test "$_radio_v4l2" = auto
; then
7419 if test "$_radio" = yes && linux
; then
7422 #include <linux/types.h>
7423 #include <linux/videodev2.h>
7424 int main(void) { return 0; }
7426 cc_check
&& _radio_v4l2
=yes
7429 if test "$_radio_v4l2" = yes ; then
7430 def_radio_v4l2
='#define CONFIG_RADIO_V4L2 1'
7432 def_radio_v4l2
='#undef CONFIG_RADIO_V4L2'
7434 echores
"$_radio_v4l2"
7436 echocheck
"Video 4 Linux Radio interface"
7437 if test "$_radio_v4l" = auto
; then
7439 if test "$_radio" = yes && linux
; then
7442 #include <linux/videodev.h>
7443 int main(void) { return 0; }
7445 cc_check
&& _radio_v4l
=yes
7448 if test "$_radio_v4l" = yes ; then
7449 def_radio_v4l
='#define CONFIG_RADIO_V4L 1'
7451 def_radio_v4l
='#undef CONFIG_RADIO_V4L'
7453 echores
"$_radio_v4l"
7455 if freebsd || netbsd || openbsd || dragonfly || bsdos \
7456 && test "$_radio" = yes && test "$_radio_bsdbt848" = auto
; then
7457 echocheck
"*BSD BrookTree 848 Radio interface"
7460 #include <sys/types.h>
7461 $def_ioctl_bt848_h_name
7462 #ifdef IOCTL_BT848_H_NAME
7463 #include IOCTL_BT848_H_NAME
7465 int main(void) { ioctl(0, RADIO_GETFREQ, 0); return 0; }
7467 cc_check
&& _radio_bsdbt848
=yes
7468 echores
"$_radio_bsdbt848"
7469 fi #if freebsd || netbsd || openbsd || dragonfly || bsdos && _radio && _radio_bsdbt848
7471 if test "$_radio_bsdbt848" = yes ; then
7472 def_radio_bsdbt848
='#define CONFIG_RADIO_BSDBT848 1'
7474 def_radio_bsdbt848
='#undef CONFIG_RADIO_BSDBT848'
7477 if test "$_radio_v4l" = no
&& test "$_radio_v4l2" = no
&& \
7478 test "$_radio_bsdbt848" = no
&& test "$_radio" = yes ; then
7479 die
"Radio driver requires BSD BT848, V4L or V4L2!"
7482 echocheck
"Video 4 Linux 2 MPEG PVR interface"
7483 if test "$_pvr" = auto
; then
7485 if test "$_tv_v4l2" = yes && linux
; then
7488 #include <inttypes.h>
7489 #include <linux/types.h>
7490 #include <linux/videodev2.h>
7491 int main(void) { struct v4l2_ext_controls ext; return ext.controls->value; }
7493 cc_check
&& _pvr
=yes
7496 if test "$_pvr" = yes ; then
7497 def_pvr
='#define CONFIG_PVR 1'
7498 _inputmodules
="pvr $_inputmodules"
7500 _noinputmodules
="pvr $_noinputmodules"
7501 def_pvr
='#undef CONFIG_PVR'
7507 if ! beos
&& test "$_ftp" = yes ; then
7508 def_ftp
='#define CONFIG_FTP 1'
7509 _inputmodules
="ftp $_inputmodules"
7511 _noinputmodules
="ftp $_noinputmodules"
7512 def_ftp
='#undef CONFIG_FTP'
7516 echocheck
"vstream client"
7517 if test "$_vstream" = auto
; then
7520 #include <vstream-client.h>
7521 void vstream_error(const char *format, ... ) {}
7522 int main(void) { vstream_start(); return 0; }
7524 cc_check
-lvstream-client && _vstream
=yes
7526 if test "$_vstream" = yes ; then
7527 def_vstream
='#define CONFIG_VSTREAM 1'
7528 _inputmodules
="vstream $_inputmodules"
7529 extra_ldflags
="$extra_ldflags -lvstream-client"
7531 _noinputmodules
="vstream $_noinputmodules"
7532 def_vstream
='#undef CONFIG_VSTREAM'
7537 echocheck
"OSD menu"
7538 if test "$_menu" = yes ; then
7539 def_menu
='#define CONFIG_MENU 1'
7540 test $_dvbin = "yes" && _menu_dvbin
=yes
7542 def_menu
='#undef CONFIG_MENU'
7548 echocheck
"Subtitles sorting"
7549 if test "$_sortsub" = yes ; then
7550 def_sortsub
='#define CONFIG_SORTSUB 1'
7552 def_sortsub
='#undef CONFIG_SORTSUB'
7557 echocheck
"XMMS inputplugin support"
7558 if test "$_xmms" = yes ; then
7559 if ( xmms-config
--version ) >/dev
/null
2>&1 ; then
7560 _xmmsplugindir
=$
(xmms-config
--input-plugin-dir)
7561 _xmmslibdir
=$
(xmms-config
--exec-prefix)/lib
7563 _xmmsplugindir
=/usr
/lib
/xmms
/Input
7564 _xmmslibdir
=/usr
/lib
7567 def_xmms
='#define CONFIG_XMMS 1'
7569 extra_ldflags
="$extra_ldflags ${_xmmslibdir}/libxmms.dylib"
7571 extra_ldflags
="$extra_ldflags ${_xmmslibdir}/libxmms.so.1 -export-dynamic"
7574 def_xmms
='#undef CONFIG_XMMS'
7578 if test "$_charset" != "noconv" ; then
7579 def_charset
="#define MSG_CHARSET \"$_charset\""
7581 def_charset
="#undef MSG_CHARSET"
7585 if test -n "$_charset" && test "$_charset" != "UTF-8" ; then
7586 echocheck
"iconv program"
7587 iconv -f UTF-8
-t $_charset ${_mp_help} > /dev
/null
2>> "$TMPLOG"
7588 if test "$?" -ne 0 ; then
7590 echo "No working iconv program found, use "
7591 echo "--charset=UTF-8 to continue anyway."
7592 echo "If you also have problems with iconv library functions use --charset=noconv."
7599 #############################################################################
7601 echocheck
"automatic gdb attach"
7602 if test "$_crash_debug" = yes ; then
7603 def_crash_debug
='#define CONFIG_CRASH_DEBUG 1'
7605 def_crash_debug
='#undef CONFIG_CRASH_DEBUG'
7608 echores
"$_crash_debug"
7610 echocheck
"compiler support for noexecstack"
7612 int main(void) { return 0; }
7614 if cc_check
-Wl,-z,noexecstack
; then
7615 extra_ldflags
="-Wl,-z,noexecstack $extra_ldflags"
7622 # Dynamic linking flags
7623 # (FIXME: 'echocheck "dynamic linking"' above and modify here accordingly)
7625 freebsd || netbsd || openbsd || dragonfly || bsdos
&& _ld_dl_dynamic
='-rdynamic'
7626 if test "$_real" = yes ||
test "$_xanim" = yes && ! win32
&& ! qnx
&& ! darwin
&& ! os2
&& ! sunos
; then
7627 _ld_dl_dynamic
='-rdynamic'
7630 extra_ldflags
="$extra_ldflags $_ld_pthread $_ld_dl $_ld_dl_dynamic"
7631 bsdos
&& extra_ldflags
="$extra_ldflags -ldvd"
7632 (netbsd || openbsd
) && x86_32
&& extra_ldflags
="$extra_ldflags -li386"
7634 def_debug
='#undef MP_DEBUG'
7635 test "$_debug" != "" && def_debug
='#define MP_DEBUG 1'
7638 echocheck
"joystick"
7639 def_joystick
='#undef CONFIG_JOYSTICK'
7640 if test "$_joystick" = yes ; then
7642 # TODO add some check
7643 def_joystick
='#define CONFIG_JOYSTICK 1'
7646 _res_comment
="unsupported under $system_name"
7649 echores
"$_joystick"
7652 if test "$_lirc" = auto
; then
7655 #include <lirc/lirc_client.h>
7656 int main(void) { return 0; }
7658 cc_check
-llirc_client && _lirc
=yes
7660 if test "$_lirc" = yes ; then
7661 def_lirc
='#define CONFIG_LIRC 1'
7662 libs_mplayer
="$libs_mplayer -llirc_client"
7664 def_lirc
='#undef CONFIG_LIRC'
7669 if test "$_lircc" = auto
; then
7672 #include <lirc/lircc.h>
7673 int main(void) { return 0; }
7675 cc_check
-llircc && _lircc
=yes
7677 if test "$_lircc" = yes ; then
7678 def_lircc
='#define CONFIG_LIRCC 1'
7679 libs_mplayer
="$libs_mplayer -llircc"
7681 def_lircc
='#undef CONFIG_LIRCC'
7686 # Detect maemo development platform libraries availability (http://www.maemo.org),
7687 # they are used when run on Nokia 770|8x0
7688 echocheck
"maemo (Nokia 770|8x0)"
7689 if test "$_maemo" = auto
; then
7692 #include <libosso.h>
7693 int main(void) { (void) osso_initialize("", "", 0, NULL); return 0; }
7695 cc_check $
($_pkg_config --cflags --libs libosso
2>/dev
/null
) && _maemo
=yes
7697 if test "$_maemo" = yes ; then
7698 def_maemo
='#define CONFIG_MAEMO 1'
7699 extra_cflags
="$extra_cflags $($_pkg_config --cflags libosso)"
7700 extra_ldflags
="$extra_ldflags $($_pkg_config --libs libosso) -lXsp"
7702 def_maemo
='#undef CONFIG_MAEMO'
7707 #############################################################################
7709 # On OS/2 nm supports only a.out. So the -Zomf compiler option to generate
7710 # the OMF format needs to come after the 'extern symbol prefix' check, which
7713 extra_ldflags
="$extra_ldflags -Zomf -Zstack 16384 -Zbin-files -Zargs-wild"
7716 # linker paths should be the same for mencoder and mplayer
7718 for I
in $libs_mplayer ; do
7719 _tmp
=$
(echo $I |
sed -e 's/^-L.*$//')
7720 if test -z "$_tmp" ; then
7721 extra_ldflags
="$extra_ldflags $I"
7723 _ld_tmp
="$_ld_tmp $I"
7726 libs_mplayer
=$_ld_tmp
7729 #############################################################################
7730 # 64 bit file offsets?
7731 if test "$_largefiles" = yes || freebsd
; then
7732 CFLAGS
="$CFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
7733 if test "$_dvdread" = yes ||
test "$_libdvdcss_internal" = yes ; then
7734 # dvdread support requires this (for off64_t)
7735 CFLAGS
="$CFLAGS -D_LARGEFILE64_SOURCE"
7739 CXXFLAGS
=" $CFLAGS -Iffmpeg -D__STDC_LIMIT_MACROS"
7741 # This must be the last test to be performed. Any other tests following it
7742 # could fail due to linker errors. libdvdnavmini is intentionally not linked
7743 # against libdvdread (to permit MPlayer to use its own copy of the library).
7744 # So any compilation using the flags added here but not linking against
7745 # libdvdread can fail.
7746 echocheck
"DVD support (libdvdnav)"
7747 if test "$_dvdread_internal" = yes && test ! -f "libdvdnav/dvdnav.c" ; then
7751 if test "$_dvdnav" = auto
; then
7752 if test "$_dvdread_internal" = yes ; then
7755 _res_comment
="internal"
7757 $_dvdnavconfig --version --minilibs >> $TMPLOG 2>&1 || _dvdnav
=no
7760 if test "$_dvdnav" = auto
; then
7762 #include <inttypes.h>
7763 #include <dvdnav/dvdnav.h>
7764 int main(void) { dvdnav_t *dvd=0; return 0; }
7767 _dvdnavdir
=$
($_dvdnavconfig --cflags)
7768 _dvdnavlibs
=$
($_dvdnavconfig --libs)
7769 cc_check
$_dvdnavdir $_dvdnavlibs $_ld_dl $_ld_pthread && _dvdnav
=yes
7771 if test "$_dvdnav" = yes ; then
7773 def_dvdnav
='#define CONFIG_DVDNAV 1'
7774 if test "$dvdnav_internal" = yes ; then
7775 cflags_libdvdnav
="-Ilibdvdnav"
7776 _inputmodules
="dvdnav(internal) $_inputmodules"
7778 extra_cflags
="$extra_cflags $($_dvdnavconfig --cflags)"
7779 extra_ldflags
="$extra_ldflags $($_dvdnavconfig --minilibs)"
7780 _inputmodules
="dvdnav $_inputmodules"
7783 def_dvdnav
='#undef CONFIG_DVDNAV'
7784 _noinputmodules
="dvdnav $_noinputmodules"
7788 # DO NOT ADD ANY TESTS THAT USE LINKER FLAGS HERE (like cc_check).
7789 # Read dvdnav comment above.
7791 #############################################################################
7792 echo "Creating config.mak"
7793 cat > config.mak
<< EOF
7794 # -------- Generated by configure -----------
7796 # Ensure that locale settings do not interfere with shell commands.
7799 CONFIGURATION = $_configuration
7802 DOC_LANGS = $language_doc
7803 DOC_LANG_ALL = $doc_lang_all
7804 MAN_LANGS = $language_man
7805 MAN_LANG_ALL = $man_lang_all
7807 prefix = \$(DESTDIR)$_prefix
7808 BINDIR = \$(DESTDIR)$_bindir
7809 DATADIR = \$(DESTDIR)$_datadir
7810 LIBDIR = \$(DESTDIR)$_libdir
7811 MANDIR = \$(DESTDIR)$_mandir
7812 CONFDIR = \$(DESTDIR)$_confdir
7821 INSTALLSTRIP = $_install_strip
7825 CFLAGS = $CFLAGS $extra_cflags
7826 CXXFLAGS = $CXXFLAGS $extra_cflags $extra_cxxflags
7827 CFLAGS_DHAHELPER = $cflags_dhahelper
7828 CFLAGS_FAAD_FIXED = $cflags_faad_fixed
7829 CFLAGS_LIBDVDCSS = $cflags_libdvdcss
7830 CFLAGS_LIBDVDCSS_DVDREAD = $cflags_libdvdcss_dvdread
7831 CFLAGS_LIBDVDNAV = $cflags_libdvdnav
7832 CFLAGS_NO_OMIT_LEAF_FRAME_POINTER = $cflags_no_omit_leaf_frame_pointer
7833 CFLAGS_STACKREALIGN = $cflags_stackrealign
7834 CFLAGS_SVGALIB_HELPER = $cflags_svgalib_helper
7835 CFLAGS_TREMOR_LOW = $cflags_tremor_low
7836 YASMFLAGS = $YASMFLAGS
7838 EXTRALIBS = $extra_ldflags $_ld_static $_ld_lm $extra_libs
7839 EXTRALIBS_MPLAYER = $libs_mplayer
7840 EXTRALIBS_MENCODER = $libs_mencoder
7842 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 &,"
7843 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 &,"
7846 HELP_FILE = $_mp_help
7854 $(echo $_cpuexts | tr '[a-z] ' '[A-Z]\n' | sed 's/^/HAVE_/;s/$/=yes/')
7856 MENCODER = $_mencoder
7859 NEED_GETTIMEOFDAY = $_need_gettimeofday
7860 NEED_GLOB = $_need_glob
7861 NEED_MMAP = $_need_mmap
7862 NEED_SETENV = $_need_setenv
7863 NEED_SHMEM = $_need_shmem
7864 NEED_STRSEP = $_need_strsep
7865 NEED_SWAB = $_need_swab
7866 NEED_VSSCANF = $_need_vsscanf
7874 APPLE_IR = $_apple_ir
7875 APPLE_REMOTE = $_apple_remote
7877 AUDIO_INPUT = $_audio_input
7878 BITMAP_FONT = $_bitmap_font
7883 COREAUDIO = $_coreaudio
7884 COREVIDEO = $_corevideo
7888 DIRECT3D = $_direct3d
7889 DIRECTFB = $_directfb
7893 DVDNAV_INTERNAL = $dvdnav_internal
7895 DVDREAD_INTERNAL = $_dvdread_internal
7901 FAAD_INTERNAL = $_faad_internal
7902 FASTMEMCPY = $_fastmemcpy
7904 FREETYPE = $_freetype
7909 GL_WIN32 = $_gl_win32
7911 MATRIXVIEW = $matrixview
7912 HAVE_POSIX_SELECT = $_posix_select
7913 HAVE_SYS_MMAN_H = $_mman
7916 JOYSTICK = $_joystick
7921 LIBA52_INTERNAL = $_liba52_internal
7926 LIBDVDCSS_INTERNAL = $_libdvdcss_internal
7930 LIBMENU_DVBIN = $_menu_dvbin
7931 LIBMPEG2 = $_libmpeg2
7932 LIBNEMESI = $_nemesi
7934 LIBSMBCLIENT = $_smb
7935 LIBTHEORA = $_theora
7938 MACOSX_BUNDLE = $_macosx_bundle
7939 MACOSX_FINDER = $_macosx_finder
7945 MUSEPACK = $_musepack
7947 NATIVE_RTSP = $_native_rtsp
7951 PE_EXECUTABLE = $_pe_executable
7954 PRIORITY = $_priority
7958 QTX_CODECS_WIN32 = $_qtx_codecs_win32
7959 QTX_EMULATION = $_qtx_emulation
7962 RADIO_CAPTURE=$_radio_capture
7963 REAL_CODECS = $_real
7967 STREAM_CACHE = $_stream_cache
7968 SGIAUDIO = $_sgiaudio
7969 SUNAUDIO = $_sunaudio
7975 TREMOR_INTERNAL = $_tremor_internal
7977 TV_BSDBT848 = $_tv_bsdbt848
7978 TV_DSHOW = $_tv_dshow
7983 UNRAR_EXEC = $_unrar_exec
7989 VIDIX_PCIDB = $_vidix_pcidb_val
7990 VIDIX_CYBERBLADE=$_vidix_drv_cyberblade
7991 VIDIX_IVTV=$_vidix_drv_ivtv
7992 VIDIX_MACH64=$_vidix_drv_mach64
7993 VIDIX_MGA=$_vidix_drv_mga
7994 VIDIX_MGA_CRTC2=$_vidix_drv_mga_crtc2
7995 VIDIX_NVIDIA=$_vidix_drv_nvidia
7996 VIDIX_PM2=$_vidix_drv_pm2
7997 VIDIX_PM3=$_vidix_drv_pm3
7998 VIDIX_RADEON=$_vidix_drv_radeon
7999 VIDIX_RAGE128=$_vidix_drv_rage128
8000 VIDIX_S3=$_vidix_drv_s3
8001 VIDIX_SH_VEU=$_vidix_drv_sh_veu
8002 VIDIX_SIS=$_vidix_drv_sis
8003 VIDIX_UNICHROME=$_vidix_drv_unichrome
8007 WIN32DLL = $_win32dll
8008 WIN32WAVEOUT = $_win32waveout
8009 WIN32_EMULATION = $_win32_emulation
8010 WINVIDIX = $winvidix
8013 XANIM_CODECS = $_xanim
8015 XMMS_PLUGINS = $_xmms
8021 YUV4MPEG = $_yuv4mpeg
8025 LIBAVUTIL = $_libavutil
8026 LIBAVCODEC = $_libavcodec
8027 LIBAVFORMAT = $_libavformat
8028 LIBPOSTPROC = $_libpostproc
8029 LIBSWSCALE = $_libswscale
8030 LIBAVCODEC_INTERNALS = $_libavcodec_internals
8031 LIBSWSCALE_INTERNALS = $_libswscale_internals
8032 FFMPEG_SOURCE_PATH = $_ffmpeg_source
8034 # Some FFmpeg codecs depend on these. Enable them unconditionally for now.
8037 CONFIG_FFT_MMX=$fft_mmx
8046 CONFIG_MLIB = $_mlib
8047 CONFIG_MUXERS=$_mencoder
8048 CONFIG_VDPAU=$_vdpau
8052 HAVE_PTHREADS = $_pthreads
8054 HAVE_W32THREADS = $_w32threads
8055 HAVE_YASM = $_have_yasm
8059 #############################################################################
8061 ff_config_enable
() {
8063 test -z "$_nprefix" && _nprefix
='CONFIG'
8065 if $
(echo $2 |
grep -q -E "(^| )$part($| )"); then
8066 echo "#define ${_nprefix}_$part 1"
8068 echo "#define ${_nprefix}_$part 0"
8073 echo "Creating config.h"
8075 /*----------------------------------------------------------------------------
8076 ** This file has been automatically generated by configure any changes in it
8077 ** will be lost when you run configure again.
8078 ** Instead of modifying definitions here, use the --enable/--disable options
8079 ** of the configure script! See ./configure --help for details.
8080 *---------------------------------------------------------------------------*/
8082 #ifndef MPLAYER_CONFIG_H
8083 #define MPLAYER_CONFIG_H
8085 /* Undefine this if you do not want to select mono audio (left or right)
8086 with a stereo MPEG layer 2/3 audio stream. The command line option
8087 -stereo has three possible values (0 for stereo, 1 for left-only, 2 for
8088 right-only), with 0 being the default.
8090 #define CONFIG_FAKE_MONO 1
8092 /* set up audio OUTBURST. Do not change this! */
8093 #define OUTBURST 512
8095 /* Enable fast OSD/SUB renderer (looks ugly, but uses less CPU power) */
8097 #undef FAST_OSD_TABLE
8099 /* Define this to enable MPEG-1/2 image postprocessing in libmpeg2 */
8100 #define MPEG12_POSTPROC 1
8101 #define ATTRIBUTE_ALIGNED_MAX 16
8105 #define CONFIGURATION "$_configuration"
8107 #define MPLAYER_DATADIR "$_datadir"
8108 #define MPLAYER_CONFDIR "$_confdir"
8109 #define MPLAYER_LIBDIR "$_libdir"
8111 /* definitions needed by included libraries */
8112 #define HAVE_INTTYPES_H 1
8113 /* libmpeg2 + FFmpeg */
8116 #define HAVE_ERRNO_H 1
8117 /* libdvdcss + libdvdread */
8118 #define HAVE_LIMITS_H 1
8119 /* libdvdcss + libfaad2 */
8120 #define HAVE_UNISTD_H 1
8121 /* libfaad2 + libdvdread */
8122 #define STDC_HEADERS 1
8123 #define HAVE_MEMCPY 1
8125 #define HAVE_STRING_H 1
8126 #define HAVE_STRINGS_H 1
8127 #define HAVE_SYS_STAT_H 1
8128 #define HAVE_SYS_TYPES_H 1
8130 #define READ_CACHE_TRACE 0
8132 #define HAVE_DLFCN_H 1
8136 /* system headers */
8138 $def_alsa_asoundlib_h
8142 $def_mman_has_map_failed
8144 $def_sys_asoundlib_h
8145 $def_sys_soundcard_h
8152 /* system functions */
8180 /* system-specific features */
8194 $def_restrict_keyword
8199 /* configurable options */
8203 $def_dynamic_plugins
8206 $def_runtime_cpudetection
8214 #define __CPU__ $iproc
8217 $(ff_config_enable "$_arch_all" "$_arch" "ARCH")
8218 $(ff_config_enable "$_cpuexts_all" "$_cpuexts" "HAVE")
8222 #define DEFAULT_CDROM_DEVICE "$default_cdrom_device"
8223 #define DEFAULT_DVD_DEVICE "$default_dvd_device"
8243 /* codec libraries */
8248 $def_liba52_internal
8256 $def_mp3lame_preset_medium
8279 #define WIN32_PATH "$_win32codecsdir"
8283 #define XMMS_INPUT_PLUGIN_DIR "$_xmmsplugindir"
8286 /* Audio output drivers */
8301 $def_ossaudio_devdsp
8302 $def_ossaudio_devmixer
8315 $def_ioctl_bt848_h_name
8316 $def_ioctl_meteor_h_name
8369 $def_directfb_version
8407 $def_vidix_drv_cyberblade
8409 $def_vidix_drv_mach64
8411 $def_vidix_drv_mga_crtc2
8412 $def_vidix_drv_nvidia
8414 $def_vidix_drv_radeon
8415 $def_vidix_drv_rage128
8417 $def_vidix_drv_sh_veu
8419 $def_vidix_drv_unichrome
8442 $def_libavcodec_internals
8443 $def_libswscale_internals
8445 #define CONFIG_DECODERS 1
8446 #define CONFIG_ENCODERS 1
8447 #define CONFIG_DEMUXERS 1
8467 #define CONFIG_FASTDIV 0
8468 #define CONFIG_FFSERVER 0
8469 #define CONFIG_GPL 1
8470 #define CONFIG_GRAY 0
8471 #define CONFIG_HARDCODED_TABLES 0
8472 #define CONFIG_LIBVORBIS 0
8473 #define CONFIG_POWERPC_PERF 0
8474 #define CONFIG_SMALL 0
8475 #define CONFIG_SWSCALE 1
8476 #define CONFIG_SWSCALE_ALPHA 1
8478 #define HAVE_ATTRIBUTE_PACKED 1
8479 #define HAVE_GETHRTIME 0
8480 #define HAVE_INLINE_ASM 0
8481 #define HAVE_LDBRX 0
8482 #define HAVE_POLL_H 1
8483 #define HAVE_PPC4XX 0
8484 #define HAVE_VIRTUALALLOC 0
8486 /* Some FFmpeg codecs depend on these. Enable them unconditionally for now. */
8487 #define CONFIG_AANDCT 1
8488 #define CONFIG_FFT 1
8489 #define CONFIG_GOLOMB 1
8490 #define CONFIG_LPC 1
8491 #define CONFIG_MDCT 1
8492 #define CONFIG_RDFT 1
8494 /* Use these registers in FFmpeg x86 inline asm. No proper detection yet. */
8497 #define HAVE_EBP_AVAILABLE 1
8499 #define HAVE_EBP_AVAILABLE 0
8502 #define CONFIG_H263_VAAPI_HWACCEL 0
8503 #define CONFIG_MPEG2_VAAPI_HWACCEL 0
8504 #define CONFIG_MPEG4_VAAPI_HWACCEL 0
8505 #define CONFIG_H264_VAAPI_HWACCEL 0
8506 #define CONFIG_VC1_VAAPI_HWACCEL 0
8507 #define CONFIG_WMV3_VAAPI_HWACCEL 0
8509 #endif /* MPLAYER_CONFIG_H */
8512 # Do not overwrite an unchanged config.h to avoid superfluous rebuilds.
8513 cmp -s "$TMPH" config.h ||
mv -f "$TMPH" config.h
8515 #############################################################################
8517 .
/version.sh
`$_cc -dumpversion`
8521 Config files successfully generated by ./configure $_configuration !
8523 Install prefix: $_prefix
8524 Data directory: $_datadir
8525 Config direct.: $_confdir
8527 Byte order: $_byte_order
8528 Optimizing for: $_optimizing
8531 Messages: $language_msg
8532 Manual pages: $language_man
8533 Documentation: $language_doc
8535 Enabled optional drivers:
8536 Input: $_inputmodules
8537 Codecs: $_codecmodules
8538 Audio output: $_aomodules
8539 Video output: $_vomodules
8541 Disabled optional drivers:
8542 Input: $_noinputmodules
8543 Codecs: $_nocodecmodules
8544 Audio output: $_noaomodules
8545 Video output: $_novomodules
8547 'config.h' and 'config.mak' contain your configuration options.
8548 Note: If you alter theses files (for instance CFLAGS) MPlayer may no longer
8549 compile *** DO NOT REPORT BUGS if you tweak these files ***
8551 'make' will now compile MPlayer and 'make install' will install it.
8552 Note: On non-Linux systems you might need to use 'gmake' instead of 'make'.
8557 if test "$_mtrr" = yes ; then
8558 echo "Please check mtrr settings at /proc/mtrr (see DOCS/HTML/$doc_lang/video.html#mtrr)"
8564 NOTE: Win32 codec DLLs are not supported on your CPU ($host_arch) or your
8565 operating system ($system_name). You may encounter a few files that cannot
8566 be played due to missing open source video/audio codec support.
8573 Check $TMPLOG if you wonder why an autodetection failed (make sure
8574 development headers/packages are installed).
8576 NOTE: The --enable-* parameters unconditionally force options on, completely
8577 skipping autodetection. This behavior is unlike what you may be used to from
8578 autoconf-based configure scripts that can decide to override you. This greater
8579 level of control comes at a price. You may have to provide the correct compiler
8580 and linker flags yourself.
8581 If you used one of these options (except --enable-menu and similar ones that
8582 turn on internal features) and experience a compilation or linking failure,
8583 make sure you have passed the necessary compiler/linker flags to configure.
8585 If you suspect a bug, please read DOCS/HTML/$doc_lang/bugreports.html.
8589 if test "$_warn_CFLAGS" = yes; then
8592 MPlayer compilation will use the CPPFLAGS/CFLAGS/LDFLAGS/YASMFLAGS set by you,
8595 *** *** DO NOT REPORT BUGS IF IT DOES NOT COMPILE/WORK! *** ***
8597 It is strongly recommended to let MPlayer choose the correct CFLAGS!
8598 To do so, execute 'CFLAGS= ./configure <options>'
8604 rm -f "$TMPEXE" "$TMPC" "$TMPS" "$TMPCPP" "$TMPH"