3 # Original version (C) 2000 Pontscho/fresh!mindworkz
4 # pontscho@makacs.poliod.hu
6 # History / Contributors: check the cvs log !
8 # Cleanups all over the place (c) 2001 pl
12 # If the option is named 'opt':
13 # _opt : should have a value in yes/no/auto
14 # _def_opt : '#define ... 1' or '#undef ...' that is: some C code
15 # _ld_opt : ' -L/path/dir -lopt ' that is: some GCC option
16 # _inc_opt : ' -I/path/dir/include '
18 # In this file, a tab is 8 chars and indentation shift is 2 characters
21 # - config files are currently:
22 # config.h config.mak libvo/config.mak libao2/config.mak Gui/config.mak
25 #############################################################################
27 # Prevent locale nonsense from breaking basic text processing utils
31 # Prefer these macros to full length text !
32 # These macros only return an error code - NO display is done
37 echo "$_cc $CFLAGS $_inc_extra $_ld_static $_ld_extra -o $TMPO $@" >> "$TMPLOG"
39 $_cc $CFLAGS $_inc_extra $_ld_static $_ld_extra -o "$TMPO" "$@" >> "$TMPLOG" 2>&1
42 echo "ldd $TMPO" >> "$TMPLOG"
43 $_ldd "$TMPO" >> "$TMPLOG" 2>&1
49 compile_check
$TMPC $@
53 compile_check
$TMPCPP $@
-lstdc++
57 "$TMPO" >> "$TMPLOG" 2>&1
60 # Display error message, flushes tempfile, exit
65 rm -f "$TMPO" "$TMPC" "$TMPS" "$TMPCPP"
66 echo "Check \"$TMPLOG\" if you do not understand why it failed."
70 # OS test booleans functions
72 test "`echo $system_name | tr A-Z a-z`" = "`echo $1 | tr A-Z a-z`"
74 linux
() { issystem
"Linux" ; return "$?" ; }
75 sunos
() { issystem
"SunOS" ; return "$?" ; }
76 hpux
() { issystem
"HP-UX" ; return "$?" ; }
77 irix
() { issystem
"IRIX" ; return "$?" ; }
78 cygwin
() { issystem
"CYGWIN" ; return "$?" ; }
79 freebsd
() { issystem
"FreeBSD" ; return "$?" ; }
80 netbsd
() { issystem
"NetBSD" ; return "$?" ; }
81 bsdos
() { issystem
"BSD/OS" ; return "$?" ; }
82 openbsd
() { issystem
"OpenBSD" ; return "$?" ; }
83 bsd
() { freebsd || netbsd || bsdos || openbsd
; return "$?" ; }
84 qnx
() { issystem
"QNX" ; return "$?" ; }
85 darwin
() { issystem
"Darwin" ; return "$?" ; }
86 gnu
() { issystem
"GNU" ; return "$?" ; }
87 mingw32
() { issystem
"MINGW32" ; return "$?" ; }
88 morphos
() { issystem
"MorphOS" ; return "$?" ; }
89 win32
() { cygwin || mingw32
; return "$?" ; }
90 beos
() { issystem
"BEOS" ; return "$?" ; }
92 # arch test boolean functions
93 # x86/x86pc is used by QNX
96 i
[3-9]86|x86|x86pc|k5|k6|k6-2|k6-3|pentium
*|athlon
*|i586-i686
) return 0 ;;
103 x86_64|amd64
) return 0 ;;
122 # not boolean test: implement the posix shell "!" operator for a
124 # usage: not {command}
125 # returns exit status "success" when the execution of "command"
132 # Use this before starting a check
134 echo "============ Checking for $@ ============" >> "$TMPLOG"
135 echo ${_echo_n} "Checking for $@ ... ${_echo_c}"
138 # Use this to echo the results of a check
140 if test "$_res_comment" ; then
141 _res_comment
="($_res_comment)"
143 echo "Result is: $@ $_res_comment" >> "$TMPLOG"
144 echo "##########################################" >> "$TMPLOG"
146 echo "$@ $_res_comment"
149 #############################################################################
151 # Check how echo works in this /bin/sh
153 -n) _echo_n
= _echo_c
='\c' ;; # SysV echo
154 *) _echo_n
='-n ' _echo_c
= ;; # BSD echo
157 LANGUAGES
=`echo help/help_mp-??.h help/help_mp-??_??.h | sed "s:help/help_mp-\(..\).h:\1:g" | sed "s:help/help_mp-\(.....\).h:\1:g"`
159 for parm
in "$@" ; do
160 if test "$parm" = "--help" ||
test "$parm" = "-help" ||
test "$parm" = "-h" ; then
163 Usage: $0 [OPTIONS]...
166 -h, --help display this help and exit
168 Installation directories:
169 --prefix=DIR use this prefix for installing mplayer [/usr/local]
170 --bindir=DIR use this prefix for installing mplayer binary
172 --datadir=DIR use this prefix for installing machine independent
173 data files (fonts, skins) [PREFIX/share/mplayer]
174 --mandir=DIR use this prefix for installing manpages [PREFIX/man]
175 --confdir=DIR use this prefix for installing configuration files
177 --libdir=DIR use this prefix for object code libraries [PREFIX/lib]
180 --disable-mencoder disable mencoder (a/v encoder) compilation [enable]
181 --enable-gui enable gmplayer compilation (GTK+ GUI) [disable]
182 --enable-old-gtk force using GTK 1.2 for GUI [disable]
183 --enable-largefiles enable support for files > 2 GBytes [disable]
184 --enable-linux-devfs set default devices to devfs ones [disable]
185 --enable-termcap use termcap database for key codes [autodetect]
186 --enable-termios use termios database for key codes [autodetect]
187 --disable-iconv do not use iconv(3) function [autodetect]
188 --disable-setlocale disable setlocale using in mplayer [autodetect]
189 --disable-langinfo do not use langinfo [autodetect]
190 --enable-lirc enable LIRC (remote control) support [autodetect]
191 --enable-lircc enable LIRCCD (LIRC client daemon) input [autodetect]
192 --enable-joystick enable joystick support [disable]
193 --disable-vm disable support X video mode extensions [autodetect]
194 --disable-xf86keysym disable support for 'multimedia' keys [autodetect]
195 --disable-tv disable TV Interface (tv/dvb grabbers) [enable]
196 --disable-tv-v4l disable Video4Linux TV Interface support [autodetect]
197 --disable-tv-v4l2 disable Video4Linux2 TV Interface support [autodetect]
198 --disable-tv-bsdbt848 disable BSD BT848 Interface support [autodetect]
199 --disable-edl disable EDL (edit decision list) support [enable]
200 --disable-rtc disable RTC (/dev/rtc) on Linux [autodetect]
201 --disable-network disable network support (for: http/mms/rtp) [enable]
202 --enable-winsock2 enable winsock2 usage [autodetect]
203 --enable-smb enable Samba (SMB) input support [autodetect]
204 --enable-live enable LIVE555 Streaming Media support [autodetect]
205 --disable-dvdread Disable libdvdread support [autodetect]
206 --disable-mpdvdkit Disable mpdvdkit/mpdvdkit2 support [autodetect]
207 --disable-cdparanoia Disable cdparanoia support [autodetect]
208 --disable-freetype Disable freetype2 font rendering support [autodetect]
209 --disable-fontconfig Disable fontconfig font lookup support [autodetect]
210 --disable-unrarlib Disable Unique RAR File Library [enabled]
211 --enable-menu Enable OSD menu support (NOT DVD MENU) [disabled]
212 --disable-sortsub Disable subtitles sorting [enabled]
213 --enable-fribidi Enable using the FriBiDi libs [autodetect]
214 --disable-enca Disable using ENCA charset oracle library [autodetect]
215 --disable-macosx Disable Mac OS X specific features [autodetect]
216 --enable-macosx-finder-support Enable Mac OS X Finder invocation parameter parsing [disabled]
217 --enable-macosx-bundle Enable Mac OS X bundle file locations [autodetect]
218 --disable-inet6 Disable IPv6 support [autodetect]
219 --disable-gethostbyname2 gethostbyname() function is not provided by the C
221 --disable-ftp Disable ftp support [enabled]
222 --disable-vstream Disable tivo vstream client support [autodetect]
223 --disable-pthreads Disable Posix threads support [autodetect]
226 --enable-gif enable gif support [autodetect]
227 --enable-png enable png input/output support [autodetect]
228 --enable-jpeg enable jpeg input/output support [autodetect]
229 --enable-libcdio enable external libcdio support [autodetect]
230 --enable-liblzo enable external liblzo support [autodetect]
231 --disable-win32 disable Win32 DLL support [autodetect]
232 --disable-dshow disable Win32/DirectShow support [autodetect]
233 --disable-qtx disable Quicktime codecs [autodetect]
234 --disable-xanim disable XAnim DLL support [autodetect]
235 --disable-real disable RealPlayer DLL support [autodetect]
236 --disable-xvid disable XviD codec [autodetect]
237 --disable-x264 disable H.264 encoder [autodetect]
238 --disable-divx4linux disable DivX4linux/Divx5linux codec [autodetect]
239 --enable-opendivx enable _old_ OpenDivx codec [disable]
240 --disable-libavcodec disable libavcodec [autodetect]
241 --disable-libavformat disable libavformat [autodetect]
242 --enable-libfame enable libfame realtime encoder [autodetect]
243 --disable-internal-tremor do not build internal OggVorbis support [enabled]
244 --enable-tremor-low build with lower accuracy internal tremor [disabled]
245 --enable-external-tremor build with external tremor [disabled]
246 --disable-vorbis disable OggVorbis support entirely [autodetect]
247 --disable-speex disable Speex support [autodetect]
248 --enable-theora build with OggTheora support [autodetect]
249 --disable-internal-matroska disable internal Matroska support [enabled]
250 --enable-external-faad build with external FAAD2 (AAC) support [autodetect]
251 --disable-internal-faad disable internal FAAD2 (AAC) support [autodetect]
252 --disable-faac disable support for FAAC (AAC encoder) [autodetect]
253 --disable-ladspa disable LADSPA plugin support [autodetect]
254 --disable-libdv disable libdv 0.9.5 en/decoding support [autodetect]
255 --disable-mad disable libmad (MPEG audio) support [autodetect]
256 --disable-toolame disable Toolame (MPEG layer 2 audio) support in mencoder [autodetect]
257 --disable-twolame disable Twolame (MPEG layer 2 audio) support in mencoder [autodetect]
258 --enable-xmms build with XMMS inputplugin support [disabled]
259 --disable-mp3lib disable builtin mp3lib [enabled]
260 --disable-liba52 disable builtin liba52 [enabled]
261 --enable-libdts enable libdts support [autodetect]
262 --disable-libmpeg2 disable builtin libmpeg2 [enabled]
263 --disable-musepack disable musepack support [autodetect]
264 --disable-amr_nb disable amr narrowband, floating point [autodetect]
265 --disable-amr_nb-fixed disable amr narrowband, fixed point [autodetect]
266 --disable-amr_wb disable amr wideband, floating point [autodetect]
267 --disable-codec=CODEC disable specified codec
268 --enable-codec=CODEC dnable specified codec
271 --disable-vidix disable VIDIX [enable on x86 *nix]
272 --enable-gl build with OpenGL render support [autodetect]
273 --enable-dga[=n] build with DGA [n in {1, 2} ] support [autodetect]
274 --enable-vesa build with VESA support [autodetect]
275 --enable-svga build with SVGAlib support [autodetect]
276 --enable-sdl build with SDL render support [autodetect]
277 --enable-aa build with AAlib render support [autodetect]
278 --enable-caca build with CACA render support [autodetect]
279 --enable-ggi build with GGI render support [autodetect]
280 --enable-ggiwmh build with GGI libggiwmh extension [autodetect]
281 --enable-directx build with DirectX support [autodetect]
282 --enable-dxr2 build with DXR2 render support [autodetect]
283 --enable-dxr3 build with DXR3/H+ render support [autodetect]
284 --enable-dvb build with support for output via DVB-Card [autodetect]
285 --enable-dvbhead build with DVB support (HEAD version) [autodetect]
286 --enable-mga build with mga_vid (for Matrox G200/G4x0/G550) support
287 (check for /dev/mga_vid) [autodetect]
288 --enable-xmga build with mga_vid X Window support
289 (check for X & /dev/mga_vid) [autodetect]
290 --enable-xv build with Xv render support for X 4.x [autodetect]
291 --enable-xvmc build with XvMC acceleration for X 4.x [disable]
292 --enable-vm build with XF86VidMode support for X11 [autodetect]
293 --enable-xinerama build with Xinerama support for X11 [autodetect]
294 --enable-x11 build with X11 render support [autodetect]
295 --enable-fbdev build with FBDev render support [autodetect]
296 --enable-mlib build with MLIB support (Solaris only) [autodetect]
297 --enable-3dfx build with obsolete /dev/3dfx support [disable]
298 --enable-tdfxfb build with tdfxfb (Voodoo 3/banshee) support [disable]
299 --enable-directfb build with DirectFB support [autodetect]
300 --enable-zr build with ZR360[56]7/ZR36060 support [autodetect]
301 --enable-bl build with Blinkenlights support [disable]
302 --enable-tdfxvid build with tdfx_vid support [disable]
303 --disable-tga disable targa output support [enable]
304 --disable-pnm disable pnm output support [enable]
305 --disable-md5sum disable md5sum output support [enable]
308 --disable-alsa disable ALSA sound support [autodetect]
309 --disable-ossaudio disable OSS sound support [autodetect]
310 --disable-arts disable aRts sound support [autodetect]
311 --disable-esd disable esd sound support [autodetect]
312 --disable-polyp disable Polypaudio sound support [autodetect]
313 --disable-jack disable JACK sound support [autodetect]
314 --disable-nas disable NAS sound support [autodetect]
315 --disable-sgiaudio disable SGI sound support [autodetect]
316 --disable-sunaudio disable Sun sound support [autodetect]
317 --disable-win32waveout disable Windows waveout sound support [autodetect]
318 --disable-select disable using select() on audio device [enable]
320 Miscellaneous options:
321 --enable-runtime-cpudetection Enable runtime CPU detection [disable]
322 --enable-cross-compile Enable cross-compilation [autodetect]
323 --cc=COMPILER use this C compiler to build MPlayer [gcc]
324 --host-cc=COMPILER use this C compiler to build apps needed for the build process [gcc]
325 --as=ASSEMBLER use this assembler to build MPlayer [as]
326 --target=PLATFORM target platform (i386-linux, arm-linux, etc)
327 --enable-static build a statically linked binary. Set further linking
328 options with --enable-static="-lslang -lncurses"
329 --charset convert the help messages to this charset
330 --language=list a white space or comma separated list of languages
331 for translated man pages, the first language is the
332 primary and therefore used for translated messages
333 and GUI (also the environment variable \$LINGUAS is
335 (Available: $LANGUAGES all)
336 --with-install=PATH use a custom install program (useful if your OS uses
337 a GNU-incompatible install utility by default and
338 you want to use GNU version)
339 --install-path=PATH the path to a custom install program
340 this option is obsolete and will be removed soon,
341 use --with-install instead.
344 --enable-mmx build with MMX support [autodetect]
345 --enable-mmx2 build with MMX2 support (PIII, Athlon) [autodetect]
346 --enable-3dnow build with 3DNow! support [autodetect]
347 --enable-3dnowex build with extended 3DNow! support [autodetect]
348 --enable-sse build with SSE support [autodetect]
349 --enable-sse2 build with SSE2 support [autodetect]
350 --enable-shm build with shm support [autodetect]
351 --enable-altivec build with Altivec support (PowerPC) [autodetect]
352 --disable-fastmemcpy disable 3DNow!/SSE/MMX optimized memcpy() [enable]
353 --enable-big-endian Force byte order to big-endian [autodetect]
354 --enable-debug[=1-3] compile debugging information into mplayer [disable]
355 --enable-profile compile profiling information into mplayer [disable]
356 --disable-sighandler disable sighandler for crashes [enable]
357 --enable-crash-debug enable automatic gdb attach on crash [disable]
358 --enable-i18n _experimental_ gnu gettext() support [autodetect]
359 --enable-dynamic-plugins Enable support for dynamic a/v plugins [disable]
361 Hazardous options a.k.a. "DO NOT REPORT ANY BUGS!"
362 --disable-gcc-checking disable gcc version checking [enable]
364 Use these options if autodetection fails (Options marked with (*) accept
365 multiple paths separated by ':'):
366 --with-extraincdir=DIR extra headers (png, mad, sdl, ...) in DIR (*)
367 --with-extralibdir=DIR extra library files (png, mad, sdl, ...) in DIR (*)
368 --with-x11incdir=DIR X headers in DIR (*)
369 --with-x11libdir=DIR X library files in DIR (*)
370 --with-dxr2incdir=DIR DXR2 headers in DIR (*)
371 --with-dvbincdir=DIR DVB headers in DIR (*)
372 --with-madlibdir=DIR libmad (libmad shared library) in DIR (*)
373 --with-mlibdir=DIR libmlib (MLIB support) in DIR (Solaris only)
374 --with-codecsdir=DIR Binary codec files in DIR
375 --with-win32libdir=DIR W*ndows DLL files in DIR
376 --with-xanimlibdir=DIR XAnim DLL files in DIR
377 --with-reallibdir=DIR RealPlayer DLL files in DIR
378 --with-xvidlibdir=DIR libxvidcore (XviD) in DIR (*)
379 --with-xvidincdir=DIR XviD header in DIR (*)
380 --with-x264libdir=DIR libx264 in DIR
381 --with-x264incdir=DIR x264 header in DIR
382 --with-dtslibdir=DIR libdts library in DIR (*)
383 --with-dtsincdir=DIR libdts header in DIR (*)
384 --with-livelibdir=DIR LIVE555 Streaming Media libraries in DIR
385 --with-toolamedir=DIR path to Toolame library and include file
386 --with-xmmsplugindir=DIR XMMS plugins in DIR
387 --with-xmmslibdir=DIR libxmms.so.1 in DIR
388 --with-cdparanoiaincdir=DIR cdparanoia headers in DIR (*)
389 --with-cdparanoialibdir=DIR cdparanoia libraries (libcdda_*) in DIR (*)
390 --with-xvmclib=NAME name of adapter-specific library (e.g. XvMCNVIDIA)
391 --with-termcaplib=NAME name of library with termcap functionality
392 name should be given without leading "lib"
393 checks for "termcap" and "tinfo"
395 --with-freetype-config=PATH path to freetype-config
396 (e.g. /opt/bin/freetype-config)
397 --with-fribidi-config=PATH path to fribidi-config
398 (e.g. /opt/bin/fribidi-config)
399 --with-glib-config=PATH path to glib*-config (e.g. /opt/bin/glib-config)
400 --with-gtk-config=PATH path to gtk*-config (e.g. /opt/bin/gtk-config)
401 --with-sdl-config=PATH path to sdl*-config (e.g. /opt/bin/sdl-config)
403 This configure script is NOT autoconf-based, even though its output is similar.
404 It will try to autodetect all configuration options. If you --enable an option
405 it will be forcefully turned on, skipping autodetection. This can break
406 compilation, so you need to know what you are doing.
410 done # for parm in ...
413 # 1st pass checking for vital options
417 test "$CC" && _cc
="$CC"
419 _runtime_cpudetection
=no
424 _target
=`echo $ac_option | cut -d '=' -f 2`
427 _cc
=`echo $ac_option | cut -d '=' -f 2`
430 _host_cc
=`echo $ac_option | cut -d '=' -f 2`
433 _as
=`echo $ac_option | cut -d '=' -f 2`
435 --enable-gcc-checking)
438 --disable-gcc-checking)
448 _ld_static
="-static `echo $ac_option | cut -d '=' -f 2`"
450 --with-extraincdir=*)
451 _inc_extra
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
453 --with-extralibdir=*)
454 _ld_extra
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
456 --enable-runtime-cpudetection)
457 _runtime_cpudetection
=yes
459 --disable-runtime-cpudetection)
460 _runtime_cpudetection
=no
462 --enable-cross-compile)
465 --disable-cross-compile)
469 _install
=`echo $ac_option | cut -d '=' -f 2 | sed 's/\/$//'`"/install"
472 _install
=`echo $ac_option | cut -d '=' -f 2 `
477 # Determine our OS name and CPU architecture
478 if test -z "$_target" ; then
480 system_name
=`uname -s 2>&1`
481 case "$system_name" in
482 Linux|FreeBSD|NetBSD|BSD
/OS|OpenBSD|SunOS|QNX|Darwin|GNU|BeOS|MorphOS
)
490 [cC
][yY
][gG
][wW
][iI
][nN
]*)
497 system_name
="$system_name-UNKNOWN"
502 # host's CPU/instruction set
503 host_arch
=`uname -p 2>&1`
505 i386|sparc|ppc|alpha|arm|mips|vax
)
507 powerpc
) # Darwin returns 'powerpc'
510 *) # uname -p on Linux returns 'unknown' for the processor type,
511 # OpenBSD returns 'Intel Pentium/MMX ("Genuine Intel" 586-class)'
513 # Maybe uname -m (machine hardware name) returns something we
516 # x86/x86pc is used by QNX
517 case "`uname -m 2>&1`" in
518 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
;;
519 ia64
) host_arch
=ia64
;;
521 if [ -n "`$_cc -dumpmachine | sed -n '/^x86_64-/p;/^amd64-/p'`" -a \
522 -z "`echo $CFLAGS | grep -- -m32`" ]; then
528 macppc|ppc|ppc64
) host_arch
=ppc
;;
529 alpha
) host_arch
=alpha
;;
530 sparc
) host_arch
=sparc
;;
531 sparc64
) host_arch
=sparc64
;;
532 parisc
*|hppa
*|
9000*) host_arch
=hppa
;;
533 arm
*) host_arch
=arm
;;
534 s390
) host_arch
=s390
;;
535 s390x
) host_arch
=s390x
;;
536 mips
*) host_arch
=mips
;;
537 vax
) host_arch
=vax
;;
538 *) host_arch
=UNKNOWN
;;
542 else # if test -z "$_target"
543 system_name
=`echo $_target | cut -d '-' -f 2`
544 case "`echo $system_name | tr A-Z a-z`" in
545 linux
) system_name
=Linux
;;
546 freebsd
) system_name
=FreeBSD
;;
547 netbsd
) system_name
=NetBSD
;;
548 bsd
/os
) system_name
=BSD
/OS
;;
549 openbsd
) system_name
=OpenBSD
;;
550 sunos
) system_name
=SunOS
;;
551 qnx
) system_name
=QNX
;;
552 morphos
) system_name
=MorphOS
;;
553 mingw32msvc
) system_name
=MINGW32
;;
555 # We need to convert underscores so that values like k6-2 and pentium-mmx can be passed
556 host_arch
=`echo $_target | cut -d '-' -f 1 | tr '_' '-'`
559 echo "Detected operating system: $system_name"
560 echo "Detected host architecture: $host_arch"
562 # LGB: temporary files
563 for I
in "$TMPDIR" "$TEMPDIR" "/tmp" ; do
567 TMPLOG
="configure.log"
569 TMPC
="$I/mplayer-conf-$RANDOM-$$.c"
570 TMPCPP
="$I/mplayer-conf-$RANDOM-$$.cpp"
571 TMPO
="$I/mplayer-conf-$RANDOM-$$.o"
572 TMPS
="$I/mplayer-conf-$RANDOM-$$.S"
576 # FIXME: A lot of stuff is installed under /usr/local
577 # NK: But we should never use this stuff implicitly since we call compiler
578 # from /usr we should be sure that there no effects from other compilers
579 # (libraries) which might be installed into /usr/local. Let users use this
580 # stuff explicitly as command line argument. In other words: It would be
581 # resonable to have only /usr/include or only /usr/local/include.
584 _ld_extra
="$_ld_extra -L/usr/local/lib"
585 _inc_extra
="$_inc_extra -I/usr/local/include"
589 for I
in `echo $_ld_extra | sed 's/-L//g'` ; do
590 tmp
="$tmp ` echo $I | sed 's/.*/ -L& -Wl,-R&/'`"
600 # Check how to call 'head' and 'tail'. Newer versions spit out warnings
601 # if used as 'head -1' instead of 'head -n 1', but older versions don't
603 if test "`(echo line1 ; echo line2) | head -1 2>/dev/null`" = "line1" ; then
604 _head
() { head -$1 2>/dev
/null
; }
606 _head
() { head -n $1 2>/dev
/null
; }
608 if test "`(echo line1 ; echo line2) | tail -1 2>/dev/null`" = "line2" ; then
609 _tail
() { tail -$1 2>/dev
/null
; }
611 _tail
() { tail -n $1 2>/dev
/null
; }
614 # Checking CC version...
615 if test "$_skip_cc_check" != yes ; then
616 # Intel C++ Compilers (no autoselect, use CC=/some/binary ./configure)
617 if test "`basename $_cc`" = "icc" ||
test "`basename $_cc`" = "ecc"; then
618 echocheck
"$_cc version"
620 cc_name
=`$_cc -V 2>&1 | _head 1 | cut -d ',' -f 1`
621 cc_version
=`$_cc -V 2>&1 | _head 1 | cut -d ',' -f 2 | cut -d ' ' -f 3`
622 _cc_major
=`echo $cc_version | cut -d '.' -f 1`
623 _cc_minor
=`echo $cc_version | cut -d '.' -f 2`
624 # TODO verify older icc/ecc compatibility
627 cc_version
="v. ?.??, bad"
631 cc_version
="$cc_version, ok"
635 cc_version
="$cc_version, bad"
639 echores
"$cc_version"
641 for _cc
in "$_cc" gcc gcc-3.4 gcc-3.3 gcc-3.2 gcc-3.1 gcc3 gcc-3.0 cc
; do
642 echocheck
"$_cc version"
644 cc_name
=`$_cc -v 2>&1 | _tail 1 | cut -d ' ' -f 1`
645 cc_version
=`$_cc -dumpversion 2>&1`
646 if test "$?" -gt 0; then
647 cc_version
="not found"
651 cc_version
="v. ?.??, bad"
654 2.95.
[2-9]|
2.95.
[2-9][-.
]*|
[3-4].
*)
655 _cc_major
=`echo $cc_version | cut -d '.' -f 1`
656 _cc_minor
=`echo $cc_version | cut -d '.' -f 2`
657 _cc_mini
=`echo $cc_version | cut -d '.' -f 3`
658 cc_version
="$cc_version, ok"
665 cc_version
="$cc_version, bad"
669 echores
"$cc_version"
670 test "$cc_verc_fail" = "no" && break
673 if test "$cc_verc_fail" = yes ; then
676 *** Please downgrade/upgrade C compiler to version gcc-2.95.x or gcc-3.x! ***
678 You are not using a supported compiler. We do not have the time to make sure
679 everything works with compilers other than the ones we use. Use either the
680 same compiler as we do, or use --disable-gcc-checking but DO *NOT* REPORT BUGS
681 unless you can reproduce them after recompiling with a 2.95.x or 3.x version!
683 Note for gcc 2.96 users: Some versions of this compiler are known to miscompile
684 mplayer and lame (which is used for mencoder). If you get compile errors,
685 first upgrade to the latest 2.96 release (minimum 2.96-85) and try again.
686 If the problem still exists, try with gcc 3.x (or 2.95.x) *BEFORE* reporting
689 GCC 2.96 IS NOT AND WILL NOT BE SUPPORTED BY US !
691 *** For details please read DOCS/HTML/en/users-vs-dev.html ***
694 die
"Bad gcc version"
699 ******************************************************************************
701 Hmm. You really want to compile MPlayer with an *UNSUPPORTED* C compiler?
702 Ok. You know. Do it. Did you read DOCS/HTML/en/users-vs-dev.html???
704 DO NOT SEND BUGREPORTS OR COMPLAIN, it's *YOUR* compiler's fault!
705 Get ready for mysterious crashes, no-picture bugs, strange noises... REALLY!
706 Lame which is used by mencoder produces weird errors, too.
708 If you have any problem, install a GCC 2.95.x or 3.x version and try again.
709 If the problem _still_ exists, then read DOCS/HTML/en/bugreports.html !
711 *** DO NOT SEND BUG REPORTS OR COMPLAIN it's *YOUR* compiler's fault! ***
713 ******************************************************************************
721 test "$_host_cc" || _host_cc
=$_cc
724 echocheck
"cross compilation"
725 if test $_cross_compile = auto
; then
727 int main() { return 0; }
730 cc_check
&& "$TMPO" && _cross_compile
=no
732 echores
$_cross_compile
734 if test $_cross_compile = yes; then
742 # now that we know what compiler should be used for compilation, try to find
743 # out which assembler is used by the $_cc compiler
744 if test "$_as" = auto
; then
745 _as
=`$_cc -print-prog-name=as`
746 test -z "$_as" && _as
=as
749 # XXX: this should be ok..
751 # Cygwin has /proc/cpuinfo, but only supports Intel CPUs
752 # FIXME: Remove the cygwin check once AMD CPUs are supported
753 if test -r /proc
/cpuinfo
&& not cygwin
; then
754 # Linux with /proc mounted, extract CPU information from it
755 _cpuinfo
="cat /proc/cpuinfo"
756 elif test -r /compat
/linux
/proc
/cpuinfo
&& not x86
; then
757 # FreeBSD with Linux emulation /proc mounted,
758 # extract CPU information from it
759 _cpuinfo
="cat /compat/linux/proc/cpuinfo"
761 # use hostinfo on Darwin
764 # all other OSes try to extract CPU information from a small helper
765 # program TOOLS/cpuinfo instead
766 $_cc -o TOOLS
/cpuinfo TOOLS
/cpuinfo.c
767 _cpuinfo
="TOOLS/cpuinfo"
772 pparam
=`$_cpuinfo | grep 'features' | cut -d ':' -f 2 | _head 1`
773 if test -z "$pparam" ; then
774 pparam
=`$_cpuinfo | grep 'flags' | cut -d ':' -f 2 | _head 1`
785 for i
in $pparam ; do
788 3dnowext
) _3dnow
=yes _3dnowex
=yes ;;
791 mtrr|k6_mtrr|cyrix_arr
) _mtrr
=yes ;;
792 xmm|sse|kni
) _sse
=yes _mmx2
=yes ;;
798 if x86 || x86_64
; then
799 # gather more CPU information
800 pname
=`$_cpuinfo | grep 'model name' | cut -d ':' -f 2 | _head 1`
801 pvendor
=`$_cpuinfo | grep 'vendor_id' | cut -d ':' -f 2 | cut -d ' ' -f 2 | _head 1`
802 pfamily
=`$_cpuinfo | grep 'cpu family' | cut -d ':' -f 2 | cut -d ' ' -f 2 | _head 1`
803 pmodel
=`$_cpuinfo | grep -v 'model name' | grep 'model' | cut -d ':' -f 2 | cut -d ' ' -f 2 | _head 1`
804 pstepping
=`$_cpuinfo | grep 'stepping' | cut -d ':' -f 2 | cut -d ' ' -f 2 | _head 1`
808 echocheck
"CPU vendor"
809 echores
"$pvendor ($pfamily:$pmodel:$pstepping)"
816 i
[3-9]86|x86|x86pc|k5|k6|k6-2|k6-3|pentium
*|athlon
*|i586-i686
)
817 _def_arch
="#define ARCH_X86 1"
818 _target_arch
="TARGET_ARCH_X86 = yes"
824 3) proc
=i386 iproc
=386 ;;
825 4) proc
=i486 iproc
=486 ;;
826 5) iproc
=586 # LGB: models are: K5/SSA5 K5 K5 K5 ? ? K6 K6 K6-2 K6-3
827 # K6 model 13 are the K6-2+ and K6-III+, only differing in cache size.
828 if test "$pmodel" -eq 9 -o "$pmodel" -eq 13; then
830 elif test "$pmodel" -ge 8; then
832 elif test "$pmodel" -ge 6; then
840 # It's a bit difficult to determine the correct type of Family 6
841 # AMD CPUs just from their signature. Instead, we check directly
842 # whether it supports SSE.
843 if test "$_sse" = yes; then
844 # gcc treats athlon-xp, athlon-4 and athlon-mp similarly.
847 # Again, gcc treats athlon and athlon-tbird similarly.
852 # k8 cpu-type only supported in gcc >= 3.4.0, but that will be
853 # caught and remedied in the optimization tests below.
857 *) proc
=k8 iproc
=686 ;;
862 3) proc
=i386 iproc
=386 ;;
863 4) proc
=i486 iproc
=486 ;;
865 if test "$pmodel" -eq 4 ||
test "$pmodel" -eq 8; then
866 proc
=pentium-mmx
# 4 is desktop, 8 is mobile
872 if test "$pmodel" -eq 9 -o "$pmodel" -eq 13; then
874 elif test "$pmodel" -ge 7; then
876 elif test "$pmodel" -ge 3; then
883 # A nocona in 32-bit mode has no more capabilities than a prescott.
884 if test "$pmodel" -ge 3; then
890 *) proc
=prescott iproc
=686 ;;
896 if test "$pmodel" -ge 8; then
898 elif test "$pmodel" -ge 4; then
905 if test "$pmodel" -ge 9; then
912 *) proc
=i686 iproc
=i686
;;
917 3) proc
=i386 iproc
=386 ;;
918 4) proc
=i486 iproc
=486 ;;
919 *) proc
=i586 iproc
=586 ;;
923 proc
=i586 iproc
=586 ;;
926 # check that gcc supports our CPU, if not, fall back to earlier ones
927 # LGB: check -mcpu and -march swithing step by step with enabling
928 # to fall back till 386.
930 # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
932 if [ "$cc_vendor" = "gnu" ] && ([ "$_cc_major" -gt 3 ] ||
( [ "$_cc_major" = 3 ] && [ "$_cc_minor" -ge 4 ])) ; then
938 echocheck
"GCC & CPU optimization abilities"
940 int main(void) { return 0; }
942 if test "$_runtime_cpudetection" = no
; then
943 if test "$proc" = "k8" -o "$proc" = "opteron" -o "$proc" = "athlon64" -o "$proc" = "athlon-fx" ; then
944 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon-xp
946 if test "$proc" = "athlon-xp" ||
test "$proc" = "athlon-4" ||
test "$proc" = "athlon-tbird"; then
947 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon
949 if test "$proc" = "k6-3" ||
test "$proc" = "k6-2"; then
950 cc_check
-march=$proc $cpuopt=$proc || proc
=k6
952 if test "$proc" = "k6" ||
test "$proc" = "c3"; then
953 if not cc_check
-march=$proc $cpuopt=$proc; then
954 if cc_check
-march=i586
$cpuopt=i686
; then
961 if test "$proc" = "pentium4" ||
test "$proc" = "pentium-m" ||
test "$proc" = "pentium3" ||
test "$proc" = "pentium2" ||
test "$proc" = "athlon" ||
test "$proc" = "c3-2"; then
962 cc_check
-march=$proc $cpuopt=$proc || proc
=i686
964 if test "$proc" = "i686" ||
test "$proc" = "pentium-mmx" ||
test "$proc" = "winchip-c6" ||
test "$proc" = "winchip2"; then
965 cc_check
-march=$proc $cpuopt=$proc || proc
=i586
967 if test "$proc" = "i586"; then
968 cc_check
-march=$proc $cpuopt=$proc || proc
=i486
970 if test "$proc" = "i486" ; then
971 cc_check
-march=$proc $cpuopt=$proc || proc
=i386
973 if test "$proc" = "i386" ; then
974 cc_check
-march=$proc $cpuopt=$proc || proc
=error
976 if test "$proc" = "error" ; then
977 echores
"CPU optimization disabled. CPU not recognized or your compiler is too old."
981 elif test "$proc" = "i586-i686"; then
986 _march
="-march=$proc"
987 _mcpu
="$cpuopt=$proc"
990 else # if test "$_runtime_cpudetection" = no
991 # i686 is probably the most common CPU - optimize for it
993 # at least i486 required, for bswap instruction
995 cc_check
$_mcpu || _mcpu
=""
996 cc_check
$_march $_mcpu || _march
=""
999 ## Gabucino : --target takes effect here (hopefully...) by overwriting
1000 ## autodetected mcpu/march parameters
1001 if test "$_target" ; then
1002 # TODO: it may be a good idea to check GCC and fall back in all cases
1003 if test "$host_arch" = "i586-i686"; then
1004 _march
="-march=i586"
1005 _mcpu
="$cpuopt=i686"
1007 _march
="-march=$host_arch"
1008 _mcpu
="$cpuopt=$host_arch"
1016 i586|k5|k6|k6-2|k6-3|pentium|pentium-mmx
) iproc
=586 ;;
1017 i686|athlon
*|pentium
*) iproc
=686 ;;
1026 _def_arch
='#define ARCH_IA64 1'
1027 _target_arch
='TARGET_ARCH_IA64 = yes'
1036 _def_arch
='#define ARCH_X86_64 1'
1037 _target_arch
='TARGET_ARCH_X86_64 = yes'
1040 # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
1041 if test "$cc_vendor" = "gnu" && test "$_cc_major" -gt 3 -o "$_cc_major" -eq 3 -a "$_cc_minor" -ge 4 ; then
1050 # 64-bit prescotts exist, but as far as GCC is concerned they have the
1051 # same capabilities as a nocona.
1057 echocheck
"GCC & CPU optimization abilities"
1059 int main(void) { return 0; }
1061 # This is a stripped-down version of the i386 fallback.
1062 if test "$_runtime_cpudetection" = no
; then
1063 # --- AMD processors ---
1064 if test "$proc" = "k8" -o "$proc" = "opteron" -o "$proc" = "athlon64" -o "$proc" = "athlon-fx" ; then
1065 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon-xp
1067 # This will fail if gcc version < 3.3, which is ok because earlier
1068 # versions don't really support 64-bit on amd64.
1069 # Is this a valid assumption? -Corey
1070 if test "$proc" = "athlon-xp" ||
test "$proc" = "athlon-4" ; then
1071 cc_check
-march=$proc $cpuopt=$proc || proc
=error
1073 # --- Intel processors ---
1074 if test "$proc" = "nocona" ||
test "$proc" = "prescott" ; then
1075 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium4
1077 if test "$proc" = "pentium4" ||
test "$proc" = "pentium4m" ; then
1078 cc_check
-march=$proc $cpuopt=$proc || proc
=error
1081 _march
="-march=$proc"
1082 _mcpu
="$cpuopt=$proc"
1083 if test "$proc" = "error" ; then
1084 echores
"CPU optimization disabled. CPU not recognized or your compiler is too old."
1101 _def_arch
='#define ARCH_SPARC 1'
1102 _target_arch
='TARGET_ARCH_SPARC = yes'
1105 echocheck
"CPU type"
1107 case "`echo $karch`" in
1112 sun4u
) proc
=v9 _vis
='yes' _def_vis
='#define HAVE_VIS = yes' ;;
1125 _def_arch
='#define ARCH_SPARC 1'
1126 _target_arch
='TARGET_ARCH_SPARC = yes'
1128 _def_vis
='#define HAVE_VIS = yes'
1136 arm|armv4l|armv5tel
)
1137 _def_arch
='#define ARCH_ARMV4L 1'
1138 _target_arch
='TARGET_ARCH_ARMV4L = yes'
1147 _def_arch
='#define ARCH_POWERPC 1'
1148 _def_dcbzl
='#define NO_DCBZL 1'
1149 _target_arch
='TARGET_ARCH_POWERPC = yes'
1157 echocheck
"CPU type"
1158 case $system_name in
1160 proc
=`$_cpuinfo | grep 'cpu' | cut -d ':' -f 2 | cut -d ',' -f 1 | cut -b 2- | _head 1`
1161 if test -n "`$_cpuinfo | grep altivec`"; then
1166 proc
=`$_cpuinfo | grep "Processor type" | cut -f 3 -d ' ' | sed 's/ppc//'`
1167 if [ `sysctl -n hw.vectorunit` -eq 1 -o \
1168 "`sysctl -n hw.optional.altivec 2>/dev/null`" -eq 1 ]; then
1173 # only gcc 3.4 works reliably with AltiVec code under NetBSD
1175 2*|
3.0*|
3.1*|
3.2*|
3.3*)
1178 if [ `sysctl -n machdep.altivec` -eq 1 ]; then
1185 if test "$_altivec" = yes; then
1186 echores
"$proc altivec"
1191 echocheck
"GCC & CPU optimization abilities"
1193 if test -n "$proc"; then
1195 601) _march
='-mcpu=601' _mcpu
='-mtune=601' ;;
1196 603) _march
='-mcpu=603' _mcpu
='-mtune=603' ;;
1197 603e|
603ev
) _march
='-mcpu=603e' _mcpu
='-mtune=603e' ;;
1198 604|
604e|
604r|
604ev
) _march
='-mcpu=604' _mcpu
='-mtune=604' ;;
1199 740|
740/750|
745/755) _march
='-mcpu=740' _mcpu
='-mtune=740' ;;
1200 750|
750CX
) _march
='-mcpu=750' _mcpu
='-mtune=750' ;;
1203 # gcc 3.1(.1) and up supports 7400 and 7450
1204 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "1" ||
test "$_cc_major" -ge "4"; then
1206 7400*|
7410*) _march
='-mcpu=7400' _mcpu
='-mtune=7400' ;;
1207 7450*|
7455*) _march
='-mcpu=7450' _mcpu
='-mtune=7450' ;;
1211 # gcc 3.2 and up supports 970
1212 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "3" ||
test "$_cc_major" -ge "4"; then
1214 970*) _march
='-mcpu=970' _mcpu
='-mtune=970'
1215 _def_dcbzl
='#undef NO_DCBZL' ;;
1221 if test -n "$_mcpu"; then
1222 _optimizing
=`echo $_mcpu | cut -c 8-`
1223 echores
"$_optimizing"
1231 _def_arch
='#define ARCH_ALPHA 1'
1232 _target_arch
='TARGET_ARCH_ALPHA = yes'
1236 echocheck
"CPU type"
1239 unsigned long ver, mask;
1240 asm ("implver %0" : "=r" (ver));
1241 asm ("amask %1, %0" : "=r" (mask) : "r" (-1));
1242 printf("%ld-%x\n", ver, ~mask);
1246 $_cc -o "$TMPO" "$TMPC"
1249 0-0) proc
="ev4"; cpu_understands_mvi
="0";;
1250 1-0) proc
="ev5"; cpu_understands_mvi
="0";;
1251 1-1) proc
="ev56"; cpu_understands_mvi
="0";;
1252 1-101) proc
="pca56"; cpu_understands_mvi
="1";;
1253 2-303) proc
="ev6"; cpu_understands_mvi
="1";;
1254 2-307) proc
="ev67"; cpu_understands_mvi
="1";;
1255 2-1307) proc
="ev68"; cpu_understands_mvi
="1";;
1259 echocheck
"GCC & CPU optimization abilities"
1260 if test "$proc" = "ev68" ; then
1261 cc_check
-mcpu=$proc || proc
=ev67
1263 if test "$proc" = "ev67" ; then
1264 cc_check
-mcpu=$proc || proc
=ev6
1271 echocheck
"MVI instruction support in GCC"
1272 if test "$_cc_major" -ge "3" && test "$cpu_understands_mvi" = "1" ; then
1273 _def_gcc_mvi_support
="#define CAN_COMPILE_ALPHA_MVI 1"
1276 _def_gcc_mvi_support
="#undef CAN_COMPILE_ALPHA_MVI"
1277 echores
"no, GCC = `$_cc -dumpversion 2>&1` (must be >= 3), CPU = $proc (must be pca56 or later)"
1282 _def_arch
='#define ARCH_SGI_MIPS 1'
1283 _target_arch
='TARGET_ARCH_SGI_MIPS = yes'
1291 echocheck
"CPU type"
1292 proc
=`hinv -c processor | grep CPU | cut -d " " -f3`
1293 case "`echo $proc`" in
1294 R3000
) _march
='-mips1' _mcpu
='-mtune=r2000' ;;
1295 R4000
) _march
='-mips3' _mcpu
='-mtune=r4000' ;;
1296 R4400
) _march
='-mips3' _mcpu
='-mtune=r4400' ;;
1297 R4600
) _march
='-mips3' _mcpu
='-mtune=r4600' ;;
1298 R5000
) _march
='-mips4' _mcpu
='-mtune=r5000' ;;
1299 R8000|R10000|R12000|R14000|R16000
) _march
='-mips4' _mcpu
='-mtune=r8000' ;;
1307 _def_arch
='#define ARCH_PA_RISC 1'
1308 _target_arch
='TARGET_ARCH_PA_RISC = yes'
1317 _def_arch
='#define ARCH_S390 1'
1318 _target_arch
='TARGET_ARCH_S390 = yes'
1327 _def_arch
='#define ARCH_S390X 1'
1328 _target_arch
='TARGET_ARCH_S390X = yes'
1337 _def_arch
='#define ARCH_VAX 1'
1338 _target_arch
='TARGET_ARCH_VAX = yes'
1347 echo "The architecture of your CPU ($host_arch) is not supported by this configure script"
1348 echo "It seems nobody has ported MPlayer to your OS or CPU type yet."
1349 die
"unsupported architecture $host_arch"
1351 esac # case "$host_arch" in
1353 if test "$_runtime_cpudetection" = yes ; then
1368 if x86
&& test "$_runtime_cpudetection" = no
; then
1370 if test "$1" = yes ; then
1371 echocheck
"kernel support of $2"
1374 void catch() { exit(1); }
1376 signal(SIGILL, catch);
1377 __asm__ __volatile__ ("$3":::"memory");return(0);
1381 if cc_check
&& tmp_run
; then
1383 _optimizing
="$_optimizing $2"
1387 echo "It seems that your kernel does not correctly support $2."
1388 echo "To use $2 extensions in MPlayer, you have to upgrade/recompile your kernel!"
1395 extcheck
$_mmx "mmx" "emms" || _mmx
=no
1396 extcheck
$_mmx2 "mmx2" "sfence" || _mmx2
=no
1397 extcheck
$_3dnow "3dnow" "femms" || _3dnow
=no
1398 extcheck
$_3dnowex "3dnowex" "pswapd %%mm0, %%mm0" || _3dnowex
=no
1399 extcheck
$_sse "sse" "xorps %%xmm0, %%xmm0" || _sse
=no _gcc3_ext
="$_gcc3_ext -mno-sse"
1400 extcheck
$_sse2 "sse2" "xorpd %%xmm0, %%xmm0" || _sse2
=no _gcc3_ext
="$_gcc3_ext -mno-sse2"
1401 echocheck
"mtrr support"
1404 if test "$_mtrr" = yes ; then
1405 _optimizing
="$_optimizing mtrr"
1408 if test "$_gcc3_ext" != ""; then
1409 # if we had to disable sse/sse2 because the active kernel does not
1410 # support this instruction set extension, we also have to tell
1411 # gcc3 to not generate sse/sse2 instructions for normal C code
1413 int main(void) { return 0; }
1415 cc_check
$_march $_gcc3_ext && _march
="$_march $_gcc3_ext"
1420 echocheck
"assembler support of -pipe option"
1422 int main(void) { return 0; }
1424 cc_check
-pipe && _pipe
="-pipe" && echores
"yes" || echores
"no"
1426 _prefix
="/usr/local"
1427 _xvmclib
="XvMCNVIDIA"
1429 # GOTCHA: the variables below defines the default behavior for autodetection
1430 # and have - unless stated otherwise - at least 2 states : yes no
1431 # If autodetection is available then the third state is: auto
1436 _libavcodecs
=`grep 'register_avcodec(&[a-z]' libavcodec/allcodecs.c | sed 's/.*&\(.*\)).*/\1/'`
1443 _dga
=auto
# 1 2 no auto
1445 _xvmc
=no
#auto when complete
1480 _tremor_internal
=yes
1489 _matroska_internal
=yes
1497 # dvdnav disabled, it does not work
1562 _macosx_finder_support
=no
1565 _freetypeconfig
='freetype-config'
1567 _fribidiconfig
='fribidi-config'
1570 _gethostbyname2
=auto
1576 case "$ac_option" in
1582 --enable-gcc-checking) ;;
1583 --disable-gcc-checking) ;;
1584 --enable-static*) ;;
1585 --disable-static*) ;;
1586 --with-extraincdir=*) ;;
1587 --with-extralibdir=*) ;;
1588 --enable-runtime-cpudetection) ;;
1589 --disable-runtime-cpudetection) ;;
1590 --enable-cross-compile) ;;
1591 --disable-cross-compile) ;;
1592 --install-path=*) ;;
1593 --with-install=*) ;;
1596 --enable-mencoder) _mencoder
=yes ;;
1597 --disable-mencoder) _mencoder
=no
;;
1598 --enable-i18n) _i18n
=yes ;;
1599 --disable-i18n) _i18n
=no
;;
1600 --enable-dynamic-plugins) _dynamic_plugins
=yes ;;
1601 --disable-dynamic-plugins) _dynamic_plugins
=no
;;
1602 --enable-x11) _x11
=yes ;;
1603 --disable-x11) _x11
=no
;;
1604 --enable-xv) _xv
=yes ;;
1605 --disable-xv) _xv
=no
;;
1606 --enable-xvmc) _xvmc
=yes ;;
1607 --disable-xvmc) _xvmc
=no
;;
1608 --enable-sdl) _sdl
=yes ;;
1609 --disable-sdl) _sdl
=no
;;
1610 --enable-directx) _directx
=yes ;;
1611 --disable-directx) _directx
=no
;;
1612 --enable-win32waveout) _win32waveout
=yes ;;
1613 --disable-win32waveout) _win32waveout
=no
;;
1614 --enable-nas) _nas
=yes ;;
1615 --disable-nas) _nas
=no
;;
1616 --enable-png) _png
=yes ;;
1617 --disable-png) _png
=no
;;
1618 --enable-jpeg) _jpg
=yes ;;
1619 --disable-jpeg) _jpg
=no
;;
1620 --enable-pnm) _pnm
=yes ;;
1621 --disable-pnm) _pnm
=no
;;
1622 --enable-md5sum) _md5sum
=yes ;;
1623 --disable-md5sum) _md5sum
=no
;;
1624 --enable-gif) _gif
=yes ;;
1625 --disable-gif) _gif
=no
;;
1626 --enable-gl) _gl
=yes ;;
1627 --disable-gl) _gl
=no
;;
1628 --enable-ggi) _ggi
=yes ;;
1629 --disable-ggi) _ggi
=no
;;
1630 --enable-ggiwmh) _ggiwmh
=yes ;;
1631 --disable-ggiwmh) _ggiwmh
=no
;;
1632 --enable-aa) _aa
=yes ;;
1633 --disable-aa) _aa
=no
;;
1634 --enable-caca) _caca
=yes ;;
1635 --disable-caca) _caca
=no
;;
1636 --enable-svga) _svga
=yes ;;
1637 --disable-svga) _svga
=no
;;
1638 --enable-vesa) _vesa
=yes ;;
1639 --disable-vesa) _vesa
=no
;;
1640 --enable-fbdev) _fbdev
=yes ;;
1641 --disable-fbdev) _fbdev
=no
;;
1642 --enable-dvb) _dvb
=yes ;;
1643 --disable-dvb) _dvb
=no
;;
1644 --enable-dvbhead) _dvbhead
=yes ;;
1645 --disable-dvbhead) _dvbhead
=no
;;
1646 --enable-dxr2) _dxr2
=yes ;;
1647 --disable-dxr2) _dxr2
=no
;;
1648 --enable-dxr3) _dxr3
=yes ;;
1649 --disable-dxr3) _dxr3
=no
;;
1650 --enable-iconv) _iconv
=yes ;;
1651 --disable-iconv) _iconv
=no
;;
1652 --enable-langinfo) _langinfo
=yes ;;
1653 --disable-langinfo) _langinfo
=no
;;
1654 --enable-rtc) _rtc
=yes ;;
1655 --disable-rtc) _rtc
=no
;;
1656 --enable-mp1e) _mp1e
=yes ;;
1657 --disable-mp1e) _mp1e
=no
;;
1658 --enable-libdv) _libdv
=yes ;;
1659 --disable-libdv) _libdv
=no
;;
1660 --enable-ossaudio) _ossaudio
=yes ;;
1661 --disable-ossaudio) _ossaudio
=no
;;
1662 --enable-arts) _arts
=yes ;;
1663 --disable-arts) _arts
=no
;;
1664 --enable-esd) _esd
=yes ;;
1665 --disable-esd) _esd
=no
;;
1666 --enable-polyp) _polyp
=yes ;;
1667 --disable-polyp) _polyp
=no
;;
1668 --enable-jack) _jack
=yes ;;
1669 --disable-jack) _jack
=no
;;
1670 --enable-mad) _mad
=yes ;;
1671 --disable-mad) _mad
=no
;;
1672 --disable-toolame) _toolame
=no
;;
1673 --disable-twolame) _twolame
=no
;;
1674 --enable-libcdio) _libcdio
=yes ;;
1675 --disable-libcdio) _libcdio
=no
;;
1676 --enable-liblzo) _liblzo
=yes ;;
1677 --disable-liblzo) _liblzo
=no
;;
1678 --enable-vorbis) _vorbis
=yes ;;
1679 --disable-vorbis) _vorbis
=no
;;
1680 --enable-speex) _speex
=yes ;;
1681 --disable-speex) _speex
=no
;;
1682 --enable-internal-tremor) _tremor_internal
=yes ;;
1683 --disable-internal-tremor) _tremor_internal
=no
;;
1684 --enable-tremor-low) _tremor_low
=yes ;;
1685 --disable-tremor-low) _tremor_low
=no
;;
1686 --enable-external-tremor) _tremor
=yes ;;
1687 --disable-external-tremor) _tremor
=no
;;
1688 --enable-theora) _theora
=yes ;;
1689 --disable-theora) _theora
=no
;;
1690 --enable-mp3lib) _mp3lib
=yes ;;
1691 --disable-mp3lib) _mp3lib
=no
;;
1692 --enable-liba52) _liba52
=yes ;;
1693 --disable-liba52) _liba52
=no
;;
1694 --enable-libdts) _libdts
=yes ;;
1695 --disable-libdts) _libdts
=no
;;
1696 --enable-libmpeg2) _libmpeg2
=yes ;;
1697 --disable-libmpeg2) _libmpeg2
=no
;;
1698 --enable-musepack) _musepack
=yes ;;
1699 --disable-musepack) _musepack
=no
;;
1700 --enable-internal-matroska) _matroska_internal
=yes ;;
1701 --disable-internal-matroska) _matroska_internal
=no
;;
1702 --enable-internal-faad) _faad_internal
=yes _faad_external
=no
;;
1703 --disable-internal-faad) _faad_internal
=no
;;
1704 --enable-external-faad) _faad_external
=yes _faad_internal
=no
;;
1705 --disable-external-faad) _faad_external
=no
;;
1706 --enable-faac) _faac
=yes ;;
1707 --disable-faac) _faac
=no
;;
1708 --enable-ladspa) _ladspa
=yes ;;
1709 --disable-ladspa) _ladspa
=no
;;
1710 --enable-xmms) _xmms
=yes ;;
1711 --disable-xmms) _xmms
=no
;;
1712 --enable-dvdread) _dvdread
=yes ;;
1713 --disable-dvdread) _dvdread
=no
;;
1714 --enable-mpdvdkit) _dvdkit
=yes ;;
1715 --disable-mpdvdkit) _dvdkit
=no
;;
1716 # dvdnav disabled, it does not work
1717 # --enable-dvdnav) _dvdnav=yes ;;
1718 # --disable-dvdnav) _dvdnav=no ;;
1719 --enable-xanim) _xanim
=yes ;;
1720 --disable-xanim) _xanim
=no
;;
1721 --enable-real) _real
=yes ;;
1722 --disable-real) _real
=no
;;
1723 --enable-live) _live
=yes ;;
1724 --disable-live) _live
=no
;;
1725 --enable-xinerama) _xinerama
=yes ;;
1726 --disable-xinerama) _xinerama
=no
;;
1727 --enable-mga) _mga
=yes ;;
1728 --disable-mga) _mga
=no
;;
1729 --enable-xmga) _xmga
=yes ;;
1730 --disable-xmga) _xmga
=no
;;
1731 --enable-vm) _vm
=yes ;;
1732 --disable-vm) _vm
=no
;;
1733 --enable-xf86keysym) _xf86keysym
=yes ;;
1734 --disable-xf86keysym) _xf86keysym
=no
;;
1735 --enable-mlib) _mlib
=yes ;;
1736 --disable-mlib) _mlib
=no
;;
1737 --enable-sunaudio) _sunaudio
=yes ;;
1738 --disable-sunaudio) _sunaudio
=no
;;
1739 --enable-sgiaudio) _sgiaudio
=yes ;;
1740 --disable-sgiaudio) _sgiaudio
=no
;;
1741 --enable-alsa) _alsa
=yes ;;
1742 --disable-alsa) _alsa
=no
;;
1743 --enable-tv) _tv
=yes ;;
1744 --disable-tv) _tv
=no
;;
1745 --enable-edl) _edl
=yes ;;
1746 --disable-edl) _edl
=no
;;
1747 --enable-tv-bsdbt848) _tv_bsdbt848
=yes ;;
1748 --disable-tv-bsdbt848) _tv_bsdbt848
=no
;;
1749 --enable-tv-v4l) _tv_v4l
=yes ;;
1750 --disable-tv-v4l) _tv_v4l
=no
;;
1751 --enable-tv-v4l2) _tv_v4l2
=yes ;;
1752 --disable-tv-v4l2) _tv_v4l2
=no
;;
1753 --enable-fastmemcpy) _fastmemcpy
=yes ;;
1754 --disable-fastmemcpy) _fastmemcpy
=no
;;
1755 --enable-network) _network
=yes ;;
1756 --disable-network) _network
=no
;;
1757 --enable-winsock2) _winsock2
=yes ;;
1758 --disable-winsock2) _winsock2
=no
;;
1759 --enable-smb) _smbsupport
=yes ;;
1760 --disable-smb) _smbsupport
=no
;;
1761 --enable-vidix) _vidix
=yes ;;
1762 --disable-vidix) _vidix
=no
;;
1763 --enable-joystick) _joystick
=yes ;;
1764 --disable-joystick) _joystick
=no
;;
1765 --enable-xvid) _xvid
=yes ;;
1766 --disable-xvid) _xvid
=no
;;
1767 --enable-x264) _x264
=yes ;;
1768 --disable-x264) _x264
=no
;;
1769 --enable-divx4linux) _divx4linux
=yes ;;
1770 --disable-divx4linux) _divx4linux
=no
;;
1771 --enable-opendivx) _opendivx
=yes ;;
1772 --disable-opendivx) _opendivx
=no
;;
1773 --enable-libavcodec) _libavcodec
=yes ;;
1774 --disable-libavcodec) _libavcodec
=no
;;
1775 --enable-amr_nb) _amr_nb
=yes ;;
1776 --disable-amr_nb) _amr_nb
=no
;;
1777 --enable-amr_nb-fixed) _amr_nb_fixed
=yes ;;
1778 --disable-amr_nb-fixed) _amr_nb_fixed
=no
;;
1779 --enable-amr_wb) _amr_wb
=yes ;;
1780 --disable-amr_wb) _amr_wb
=no
;;
1781 --enable-codec=*) _libavcodecs
="$_libavcodecs `echo $ac_option | cut -d '=' -f 2`" ;;
1782 --disable-codec=*) _libavcodecs
=`echo $_libavcodecs | sed "s/\`echo $ac_option | cut
-d '=' -f 2\
`//g"` ;;
1783 --enable-libavformat) _libavformat
=yes;;
1784 --disable-libavformat) _libavformat
=no
;;
1785 --enable-libfame) _fame
=yes ;;
1786 --disable-libfame) _fame
=no
;;
1787 --enable-lirc) _lirc
=yes ;;
1788 --disable-lirc) _lirc
=no
;;
1789 --enable-lircc) _lircc
=yes ;;
1790 --disable-lircc) _lircc
=no
;;
1791 --enable-gui) _gui
=yes ;;
1792 --disable-gui) _gui
=no
;;
1793 --enable-old-gtk) _gtk1
=yes ;;
1794 --enable-termcap) _termcap
=yes ;;
1795 --disable-termcap) _termcap
=no
;;
1796 --enable-termios) _termios
=yes ;;
1797 --disable-termios) _termios
=no
;;
1798 --enable-3dfx) _3dfx
=yes ;;
1799 --disable-3dfx) _3dfx
=no
;;
1800 --enable-tdfxfb) _tdfxfb
=yes ;;
1801 --disable-tdfxvid) _tdfxvid
=no
;;
1802 --enable-tdfxvid) _tdfxvid
=yes ;;
1803 --disable-tga) _tga
=no
;;
1804 --enable-tga) _tga
=yes ;;
1805 --disable-tdfxfb) _tdfxfb
=no
;;
1806 --enable-directfb) _directfb
=yes ;;
1807 --disable-directfb) _directfb
=no
;;
1808 --enable-zr) _zr
=yes ;;
1809 --disable-zr) _zr
=no
;;
1810 --enable-bl) _bl
=yes ;;
1811 --disable-bl) _bl
=no
;;
1812 --enable-mtrr) _mtrr
=yes ;;
1813 --disable-mtrr) _mtrr
=no
;;
1814 --enable-largefiles) _largefiles
=yes ;;
1815 --disable-largefiles) _largefiles
=no
;;
1816 --enable-shm) _shm
=yes ;;
1817 --disable-shm) _shm
=no
;;
1818 --enable-select) _select
=yes ;;
1819 --disable-select) _select
=no
;;
1820 --enable-linux-devfs) _linux_devfs
=yes ;;
1821 --disable-linux-devfs) _linux_devfs
=no
;;
1822 --enable-cdparanoia) _cdparanoia
=yes ;;
1823 --disable-cdparanoia) _cdparanoia
=no
;;
1824 --enable-big-endian) _big_endian
=yes ;;
1825 --disable-big-endian) _big_endian
=no
;;
1826 --enable-freetype) _freetype
=yes ;;
1827 --disable-freetype) _freetype
=no
;;
1828 --enable-fontconfig) _fontconfig
=yes ;;
1829 --disable-fontconfig) _fontconfig
=no
;;
1830 --enable-unrarlib) _unrarlib
=yes ;;
1831 --disable-unrarlib) _unrarlib
=no
;;
1832 --enable-ftp) _ftp
=yes ;;
1833 --disable-ftp) _ftp
=no
;;
1834 --enable-vstream) _vstream
=yes ;;
1835 --disable-vstream) _vstream
=no
;;
1836 --enable-pthreads) _pthreads
=yes ;;
1837 --disable-pthreads) _pthreads
=no
;;
1839 --enable-fribidi) _fribidi
=yes ;;
1840 --disable-fribidi) _fribidi
=no
;;
1842 --enable-enca) _enca
=yes ;;
1843 --disable-enca) _enca
=no
;;
1845 --enable-inet6) _inet6
=yes ;;
1846 --disable-inet6) _inet6
=no
;;
1848 --enable-gethostbyname2) _gethostbyname2
=yes ;;
1849 --disable-gethostbyname2) _gethostbyname2
=no
;;
1851 --enable-dga) _dga
=auto
;; # as we don't know if it's 1 or 2
1852 --enable-dga=*) _dga
=`echo $ac_option | cut -d '=' -f 2` ;;
1853 --disable-dga) _dga
=no
;;
1855 --enable-menu) _menu
=yes ;;
1856 --disable-menu) _menu
=no
;;
1858 --enable-qtx) _qtx
=yes ;;
1859 --disable-qtx) _qtx
=no
;;
1861 --enable-macosx) _macosx
=yes ;;
1862 --disable-macosx) _macosx
=no
;;
1863 --enable-macosx-finder-support) _macosx_finder_support
=yes ;;
1864 --disable-macosx-finder-support) _macosx_finder_support
=no
;;
1865 --enable-macosx-bundle) _macosx_bundle
=yes;;
1866 --disable-macosx-bundle) _macosx_bundle
=no
;;
1868 --enable-sortsub) _sortsub
=yes ;;
1869 --disable-sortsub) _sortsub
=no
;;
1872 _charset
=`echo $ac_option | cut -d '=' -f 2`
1875 _language
=`echo $ac_option | cut -d '=' -f 2`
1877 # dvdnav disabled, it does not work
1878 # --with-libdvdnav=*)
1879 # _dvdnavdir=`echo $ac_option | cut -d '=' -f 2`
1884 _win32libdir
=`echo $ac_option | cut -d '=' -f 2`
1885 _xanimlibdir
=`echo $ac_option | cut -d '=' -f 2`
1886 _reallibdir
=`echo $ac_option | cut -d '=' -f 2`
1888 --with-win32libdir=*)
1889 _win32libdir
=`echo $ac_option | cut -d '=' -f 2`
1892 --with-xanimlibdir=*)
1893 _xanimlibdir
=`echo $ac_option | cut -d '=' -f 2`
1896 --with-reallibdir=*)
1897 _reallibdir
=`echo $ac_option | cut -d '=' -f 2`
1900 --with-livelibdir=*)
1901 _livelibdir
=`echo $ac_option | cut -d '=' -f 2`
1903 --with-toolamedir=*)
1904 _toolamedir
=`echo $ac_option | cut -d '=' -f 2`
1907 _mlibdir
=`echo $ac_option | cut -d '=' -f 2`
1911 --with-xmmslibdir=*)
1912 _xmmslibdir
=`echo $ac_option | cut -d '=' -f 2`
1915 --with-xmmsplugindir=*)
1916 _xmmsplugindir
=`echo $ac_option | cut -d '=' -f 2`
1929 _debug
=`echo $_echo_n '-g'$_echo_c; echo $ac_option | cut -d '=' -f 2`
1934 --enable-crash-debug)
1937 --disable-crash-debug)
1940 --enable-sighandler)
1943 --disable-sighandler)
1947 --enable-sse) _sse
=yes ;;
1948 --disable-sse) _sse
=no
;;
1949 --enable-sse2) _sse2
=yes ;;
1950 --disable-sse2) _sse2
=no
;;
1951 --enable-mmx2) _mmx2
=yes ;;
1952 --disable-mmx2) _mmx2
=no
;;
1953 --enable-3dnow) _3dnow
=yes ;;
1954 --disable-3dnow) _3dnow
=no _3dnowex
=no
;;
1955 --enable-3dnowex) _3dnow
=yes _3dnowex
=yes ;;
1956 --disable-3dnowex) _3dnowex
=no
;;
1957 --enable-altivec) _altivec
=yes ;;
1958 --disable-altivec) _altivec
=no
;;
1959 --enable-mmx) _mmx
=yes ;;
1960 --disable-mmx) # 3Dnow! and MMX2 require MMX
1961 _3dnow
=no _3dnowex
=no _mmx
=no _mmx2
=no
;;
1963 --enable-win32) _win32
=yes ;;
1964 --disable-win32) _win32
=no _dshow
=no
;;
1965 --enable-dshow) _win32
=yes _dshow
=yes ;;
1966 --disable-dshow) _dshow
=no
;;
1969 _inc_x11
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1972 _x11_paths
=`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
1974 --with-dxr2incdir=*)
1975 _inc_dxr2
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1978 _xvmclib
=`echo $ac_option | cut -d '=' -f 2`
1981 _inc_dvb
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1983 --with-xvidlibdir=*)
1984 _ld_xvid
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
1986 --with-xvidincdir=*)
1987 _inc_xvid
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1990 _ld_libdts
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
1993 _inc_libdts
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1995 --with-x264libdir=*)
1996 _ld_x264
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
1998 --with-x264incdir=*)
1999 _inc_x264
=-I`echo $ac_option | cut -d '=' -f 2 |sed 's,:, -I,g'`
2001 --with-sdl-config=*)
2002 _sdlconfig
=`echo $ac_option | cut -d '=' -f 2`
2004 --with-freetype-config=*)
2005 _freetypeconfig
=`echo $ac_option | cut -d '=' -f 2`
2007 --with-fribidi-config=*)
2008 _fribidiconfig
=`echo $ac_option | cut -d '=' -f 2`
2010 --with-gtk-config=*)
2011 _gtkconfig
=`echo $ac_option | cut -d '=' -f 2`
2013 --with-glib-config=*)
2014 _glibconfig
=`echo $ac_option | cut -d '=' -f 2`
2016 # dvdnav disabled, it does not work
2017 # --with-dvdnav-config=*)
2018 # _dvdnavconfig=`echo $ac_option | cut -d '=' -f 2`
2021 _ld_mad
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
2023 --with-cdparanoiaincdir=*)
2024 _inc_cdparanoia
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
2026 --with-cdparanoialibdir=*)
2027 _ld_cdparanoia
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
2029 --with-termcaplib=*)
2030 _ld_termcap
=-l`echo $ac_option | cut -d '=' -f 2`
2034 _prefix
=`echo $ac_option | cut -d '=' -f 2`
2037 _bindir
=`echo $ac_option | cut -d '=' -f 2`
2040 _datadir
=`echo $ac_option | cut -d '=' -f 2`
2043 _mandir
=`echo $ac_option | cut -d '=' -f 2`
2046 _confdir
=`echo $ac_option | cut -d '=' -f 2`
2049 _libdir
=`echo $ac_option | cut -d '=' -f 2`
2053 echo "Unknown parameter: $ac_option"
2060 # Atmos: moved this here, to be correct, if --prefix is specified
2061 test -z "$_bindir" && _bindir
="$_prefix/bin"
2062 test -z "$_datadir" && _datadir
="$_prefix/share/mplayer"
2063 test -z "$_mandir" && _mandir
="$_prefix/man"
2064 test -z "$_confdir" && _confdir
="$_prefix/etc/mplayer"
2065 test -z "$_libdir" && _libdir
="$_prefix/lib"
2066 test -z "$_mlibdir" && _mlibdir
="$MLIBHOME"
2069 # Checking assembler (_as) compatibility...
2070 # Added workaround for older as that reads from stdin by default - atmos
2071 as_version
=`echo '' | $_as -version 2>&1 | sed -n 's/^.*assembler \(version \)*\([0-9.]*\).*$/\2/p'`
2072 echocheck
"assembler ($_as $as_version)"
2074 _pref_as_version
='2.9.1'
2076 if test "$_mmx" = yes ; then
2077 echo 'emms' >> $TMPS
2079 if test "$_3dnow" = yes ; then
2080 _pref_as_version
='2.10.1'
2081 echo 'femms' >> $TMPS
2083 if test "$_3dnowex" = yes ; then
2084 _pref_as_version
='2.10.1'
2085 echo 'pswapd %mm0, %mm0' >> $TMPS
2087 if test "$_mmx2" = yes ; then
2088 _pref_as_version
='2.10.1'
2089 echo 'movntq %mm0, (%eax)' >> $TMPS
2091 if test "$_sse" = yes ; then
2092 _pref_as_version
='2.10.1'
2093 echo 'xorps %xmm0, %xmm0' >> $TMPS
2095 #if test "$_sse2" = yes ; then
2096 # _pref_as_version='2.11'
2097 # echo 'xorpd %xmm0, %xmm0' >> $TMPS
2099 $_as $TMPS -o $TMPO > /dev
/null
2>&1 || as_verc_fail
=yes
2101 if test "$as_verc_fail" != yes ; then
2105 echo "Upgrade binutils to ${_pref_as_version} ..."
2106 die
"obsolete binutils version"
2112 # check if altivec is supported by the compiler, and how to enable it
2114 _altivec_gcc_flags
=''
2116 if test "$_altivec" = yes -o "$_runtime_cpudetection" = yes ; then
2117 echocheck
"GCC altivec support"
2125 FSF_flags
='-maltivec -mabi=altivec'
2126 Darwin_flags
='-faltivec -D__APPLE_ALTIVEC__'
2128 # check for Darwin-style flags first, since
2129 # gcc-3.3 (August Update from Apple) on MacOS 10.2.8
2130 # accepts but ignores FSF-style flags...
2132 if test -z "$p"; then
2133 cc_check
$Darwin_flags && p
='Darwin'
2135 if test -z "$p"; then
2136 cc_check
$FSF_flags && p
='FSF'
2140 FSF
) _altivec_gcc_flags
="$FSF_flags" _altivec
=yes ;;
2141 Darwin
) _altivec_gcc_flags
="$Darwin_flags" _altivec
=yes ;;
2145 if test -z "$p"; then
2148 p
="$p-style ($_altivec_gcc_flags)"
2154 # check if <altivec.h> should be included
2156 _def_altivec_h
='#undef HAVE_ALTIVEC_H'
2158 if test "$_altivec" = yes ; then
2159 echocheck
"altivec.h"
2161 #include <altivec.h>
2162 int main(void) { return 0; }
2165 cc_check
$_altivec_gcc_flags && _have_altivec_h
=yes
2166 if test "$_have_altivec_h" = yes ; then
2167 _def_altivec_h
='#define HAVE_ALTIVEC_H 1'
2169 echores
"$_have_altivec_h"
2172 # disable runtime cpudetection if
2173 # - we cannot generate altivec code
2174 # - altivec is disabled by the user
2176 if test "$_runtime_cpudetection" = yes -a "$_altivec" = no
; then
2177 _runtime_cpudetection
=no
2180 # show that we are optimizing for altivec (if enabled and supported)
2182 if test "$_runtime_cpudetection" = no
-a "$_altivec" = yes ; then
2183 _optimizing
="$_optimizing altivec"
2186 # if altivec is enabled, make sure the correct flags turn up in CFLAGS
2188 if test "$_altivec" = yes ; then
2189 _mcpu
="$_mcpu $_altivec_gcc_flags"
2192 # setup _def_altivec correctly
2194 if test "$_altivec" = yes ; then
2195 _def_altivec
='#define HAVE_ALTIVEC 1'
2197 _def_altivec
='#undef HAVE_ALTIVEC'
2201 _def_mmx
='#undef HAVE_MMX'
2202 test "$_mmx" = yes && _def_mmx
='#define HAVE_MMX 1'
2203 _def_mmx2
='#undef HAVE_MMX2'
2204 test "$_mmx2" = yes && _def_mmx2
='#define HAVE_MMX2 1'
2205 _def_3dnow
='#undef HAVE_3DNOW'
2206 test "$_3dnow" = yes && _def_3dnow
='#define HAVE_3DNOW 1'
2207 _def_3dnowex
='#undef HAVE_3DNOWEX'
2208 test "$_3dnowex" = yes && _def_3dnowex
='#define HAVE_3DNOWEX 1'
2209 _def_sse
='#undef HAVE_SSE'
2210 test "$_sse" = yes && _def_sse
='#define HAVE_SSE 1'
2211 _def_sse2
='#undef HAVE_SSE2'
2212 test "$_sse2" = yes && _def_sse2
='#define HAVE_SSE2 1'
2214 # Checking kernel version...
2215 if x86
&& linux
; then
2217 kernel_version
=`uname -r 2>&1`
2218 echocheck
"$system_name kernel version"
2219 case "$kernel_version" in
2220 '') kernel_version
="?.??"; _k_verc_fail
=yes;;
2221 [0-1].
[0-9].
[0-9]*|
2.
[0-3].
[0-9]*)
2222 _k_verc_problem
=yes;;
2224 if test "$_k_verc_problem" = yes && test "$_sse" = yes ; then
2227 if test "$_k_verc_fail" ; then
2228 echores
"$kernel_version, fail"
2229 echo "WARNING! If you want to run MPlayer on this system, get prepared for problems!"
2230 echo "2.2.x has limited SSE support. Upgrade the kernel or use --disable-sse if you"
2231 echo "experience crashes. MPlayer tries to autodetect if your kernel correctly"
2232 echo "supports SSE, but you have been warned! If you are using a kernel older than"
2233 echo "2.2.x you must upgrade it to get SSE support!"
2234 # die "Your kernel is too old for this CPU." # works fine on some 2.2.x so don't die (later check will test)
2236 echores
"$kernel_version, ok"
2240 if test "$_vidix" = auto
; then
2242 # should check for x86 systems supporting VIDIX (does QNX have VIDIX?)
2244 x86_64
&& _vidix
=yes
2245 ppc
&& linux
&& _vidix
=yes
2246 alpha
&& linux
&& _vidix
=yes
2252 echocheck
"mplayer binary name"
2255 _prg_mencoder
="mencoder.exe"
2258 _prg_mencoder
="mencoder"
2263 # On QNX we must link to libph - Gabucino
2265 _ld_arch
="$_ld_arch -lph"
2268 # checking for a working awk, I'm using mawk first, because it's fastest - atmos
2270 if test "$_vidix" = yes ; then
2273 for _awk
in mawk gawk nawk
awk; do
2274 if ( $_awk 'BEGIN{testme();}function testme(){print"";}' ) >> "$TMPLOG" 2>&1; then
2279 test "$_awk_verc_fail" = yes && _awk
=no
2281 if test "$_awk_verc_fail" = yes; then
2282 echo "VIDIX needs awk, but no working implementation was found!"
2283 echo "Try the GNU version, which can be downloaded from:"
2284 echo "ftp://ftp.gnu.org/gnu/gawk/"
2285 echo "If you don't need VIDIX, you can use configure --disable-vidix instead."
2290 # If IRIX we must use ar instead of ranlib (not present on IRIX systems)
2297 ######################
2298 # MAIN TESTS GO HERE #
2299 ######################
2302 echocheck
"extra headers"
2303 if test "$_inc_extra" ; then
2304 echores
"$_inc_extra"
2310 echocheck
"extra libs"
2311 if test "$_ld_extra" ; then
2312 echores
"$_ld_extra"
2319 int main(void) { return 0; }
2321 if cc_check
-lposix ; then
2322 _ld_arch
="$_ld_arch -lposix"
2330 int main(void) { return 0; }
2332 if cc_check
-lm ; then
2340 # Checking for localization ...
2341 # CSAK EGY MARADHAT - A HEGYLAKO
2343 if test "$_i18n" != no
; then
2345 #include <libintl.h>
2346 int main(void) { gettext("test"); return 0; }
2350 if test "$_i18n" = auto
; then
2351 cc_check
&& _i18n
=yes
2353 for i18n_lib
in "" "-lintl"; do
2354 cc_check
$i18n_lib && _i18n
=yes && _i18n_libs
=$i18n_lib && break
2358 if test "$_i18n" = yes ; then
2359 _def_i18n
='#define USE_I18N 1'
2361 _def_i18n
='#undef USE_I18N'
2363 if test "$_i18n_libs" ; then
2364 _res_comment
="using $_i18n_libs"
2369 echocheck
"langinfo"
2370 if test "$_langinfo" = auto
; then
2372 #include <langinfo.h>
2373 int main(void) { nl_langinfo(CODESET); return 0; }
2376 cc_check
&& _langinfo
=yes
2378 if test "$_langinfo" = yes ; then
2379 _def_langinfo
='#define USE_LANGINFO 1'
2381 _def_langinfo
='#undef USE_LANGINFO'
2383 echores
"$_langinfo"
2386 echocheck
"language"
2387 test -z "$_language" && _language
=$LINGUAS
2388 _language
=`echo $_language | sed 's/,/ /g'`
2389 echo $_language |
grep all
> /dev
/null || LANGUAGES
="$_language en"
2390 for lang
in $_language ; do
2391 test "$lang" = all
&& lang
=en
2392 if test -f "help/help_mp-${lang}.h" ; then
2396 echo -n "$lang not found, "
2397 _language
=`echo $_language | sed "s/$lang *//"`
2400 test -z "$_language" && _language
=en
2401 _mp_help
="help/help_mp-${_language}.h"
2402 test -f $_mp_help || die
"$_mp_help not found"
2403 for lang
in $LANGUAGES ; do
2404 if test -f "DOCS/man/$lang/mplayer.1" ; then
2405 MAN_LANG
="$MAN_LANG $lang"
2408 _doc_lang
=$_language
2409 test -d DOCS
/xml
/$_doc_lang || _doc_lang
=en
2410 echores
"using $_language (man pages: $MAN_LANG)"
2413 echocheck
"enable sighandler"
2414 if test "$_sighandler" = yes ; then
2415 _def_sighandler
='#define ENABLE_SIGHANDLER 1'
2417 _def_sighandler
='#undef ENABLE_SIGHANDLER'
2419 echores
"$_sighandler"
2421 echocheck
"runtime cpudetection"
2422 if test "$_runtime_cpudetection" = yes ; then
2423 _optimizing
="Runtime CPU-Detection enabled"
2424 _def_runtime_cpudetection
='#define RUNTIME_CPUDETECT 1'
2426 _def_runtime_cpudetection
='#undef RUNTIME_CPUDETECT'
2428 echores
"$_runtime_cpudetection"
2431 echocheck
"restrict keyword"
2432 for restrict_keyword
in restrict __restrict __restrict__
; do
2433 echo "void foo(char * $restrict_keyword p); int main(){}" > $TMPC
2435 _def_restrict_keyword
=$restrict_keyword
2439 if [ -n "$_def_restrict_keyword" ]; then
2440 echores
"$_def_restrict_keyword"
2444 # Avoid infinite recursion loop ("#define restrict restrict")
2445 if [ "$_def_restrict_keyword" != "restrict" ]; then
2446 _def_restrict_keyword
="#define restrict $_def_restrict_keyword"
2448 _def_restrict_keyword
=""
2452 echocheck
"__builtin_expect"
2453 # GCC branch prediction hint
2456 a = __builtin_expect (a, 10);
2457 return a == 10 ? 0 : 1;
2459 int main() { return foo(10) && foo(0); }
2462 cc_check
&& _builtin_expect
=yes
2463 if test "$_builtin_expect" = yes ; then
2464 _def_builtin_expect
='#define HAVE_BUILTIN_EXPECT 1'
2466 _def_builtin_expect
='#undef HAVE_BUILTIN_EXPECT'
2468 echores
"$_builtin_expect"
2474 int main(void) { (void) kstat_open(); (void) kstat_close(0); return 0; }
2477 cc_check
-lkstat && _kstat
=yes
2478 if test "$_kstat" = yes ; then
2479 _def_kstat
="#define HAVE_LIBKSTAT 1"
2480 _ld_arch
="-lkstat $_ld_arch"
2482 _def_kstat
="#undef HAVE_LIBKSTAT"
2488 # required for nanosleep on some systems
2491 int main(void) { (void) nanosleep(0, 0); return 0; }
2494 cc_check
-lposix4 && _posix4
=yes
2495 if test "$_posix4" = yes ; then
2496 _ld_arch
="-lposix4 $_ld_arch"
2503 int main(void) { long (*foo)(float); foo = lrintf; (void)(*foo)(0.0); return 0; }
2506 cc_check
-D_GNU_SOURCE $_ld_lm && _lrintf
=yes
2507 if test "$_lrintf" = yes ; then
2508 _def_lrintf
="#define HAVE_LRINTF 1"
2510 _def_lrintf
="#undef HAVE_LRINTF"
2517 int main(void) { (void) round(0.0); return 0; }
2520 cc_check
$_ld_lm && _round
=yes
2521 if test "$_round" = yes ; then
2522 _def_round
="#define HAVE_ROUND 1"
2524 _def_round
="#undef HAVE_ROUND"
2528 echocheck
"nanosleep"
2529 # also check for nanosleep
2532 int main(void) { (void) nanosleep(0, 0); return 0; }
2535 cc_check
$_ld_arch && _nanosleep
=yes
2536 if test "$_nanosleep" = yes ; then
2537 _def_nanosleep
='#define HAVE_NANOSLEEP 1'
2539 _def_nanosleep
='#undef HAVE_NANOSLEEP'
2541 echores
"$_nanosleep"
2545 # for Solaris (socket stuff is in -lsocket, gethostbyname and friends in -lnsl):
2546 # for BeOS (socket stuff is in -lsocket, gethostbyname and friends in -lbind):
2549 #include <sys/socket.h>
2550 int main(void) { (void) gethostbyname(0); (void) socket(AF_INET, SOCK_STREAM, 0); return 0; }
2552 for _ld_tmp
in "-lsocket -lbind" "-lsocket -ldnet" "-lsocket -lnsl" "-lnsl" "-lsocket" ; do
2553 cc_check
$_ld_tmp && _ld_sock
="$_ld_tmp" && break
2555 if test $_winsock2 = auto
&& not cygwin
; then
2558 #include <winsock2.h>
2559 int main(void) { (void) gethostbyname(0); return 0; }
2561 cc_check
-lws2_32 && _ld_sock
="-lws2_32" && _winsock2
=yes
2563 if test "$_ld_sock" ; then
2564 echores
"yes (using $_ld_sock)"
2570 if test $_winsock2 = yes ; then
2572 _def_winsock2
='#define HAVE_WINSOCK2 1'
2574 _def_winsock2
='#undef HAVE_WINSOCK2'
2579 echocheck
"inet_pton()"
2581 #include <sys/types.h>
2582 #include <sys/socket.h>
2583 #include <arpa/inet.h>
2584 int main(void) { (void) inet_pton(0, 0, 0); return 0; }
2586 if test "$_winsock2" = yes ; then
2587 echores
"not needed (using winsock2 functions)"
2588 elif cc_check
$_ld_sock ; then
2589 # NOTE: Linux has libresolv but does not need it
2591 echores
"yes (using $_ld_sock)"
2592 elif cc_check
$_ld_sock -lresolv ; then
2593 # NOTE: needed for SunOS at least
2594 _ld_sock
="$_ld_sock -lresolv"
2595 echores
"yes (using $_ld_sock)"
2597 echores
"no (=> i'll try inet_aton next)"
2599 echocheck
"inet_aton()"
2601 #include <sys/types.h>
2602 #include <sys/socket.h>
2603 #include <arpa/inet.h>
2604 int main(void) { (void) inet_aton(0, 0); return 0; }
2607 if cc_check
$_ld_sock ; then
2608 # NOTE: Linux has libresolv but does not need it
2610 echores
"yes (using $_ld_sock)"
2611 elif cc_check
$_ld_sock -lresolv ; then
2612 # NOTE: needed for SunOS at least
2613 _ld_sock
="$_ld_sock -lresolv"
2614 echores
"yes (using $_ld_sock)"
2618 echores
"no (=> network support disabled)"
2622 _def_use_aton
='#undef USE_ATON'
2623 if test "$_use_aton" != no
; then
2624 _def_use_aton
='#define USE_ATON 1'
2628 echocheck
"inttypes.h (required)"
2630 #include <inttypes.h>
2631 int main(void) { return 0; }
2634 cc_check
&& _inttypes
=yes
2635 if test "$_inttypes" = yes ; then
2640 echocheck
"bitypes.h (inttypes.h predecessor)"
2642 #include <sys/bitypes.h>
2643 int main(void) { return 0; }
2646 cc_check
&& _inttypes
=yes
2647 if test "$_inttypes" = yes ; then
2648 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."
2650 die
"Cannot find header either inttypes.h or bitypes.h (see DOCS/HTML/$_doc_lang/faq.html)."
2653 echores
"$_inttypes"
2656 echocheck
"int_fastXY_t in inttypes.h"
2658 #include <inttypes.h>
2660 volatile int_fast16_t v= 0;
2664 cc_check
&& _fast_inttypes
=yes
2665 if test "$_fast_inttypes" = yes ; then
2669 _def_fast_inttypes
='
2670 typedef signed char int_fast8_t;
2671 typedef signed int int_fast16_t;
2672 typedef signed int int_fast32_t;
2673 typedef unsigned char uint_fast8_t;
2674 typedef unsigned int uint_fast16_t;
2675 typedef unsigned int uint_fast32_t;'
2677 echores
"$_fast_inttypes"
2680 echocheck
"word size"
2681 _mp_wordsize
="#undef MP_WORDSIZE"
2684 #include <sys/types.h>
2685 int main(void) { printf("%d\n", sizeof(size_t)*8); return 0; }
2687 cc_check
&& _wordsize
=`$TMPO` && _mp_wordsize
="#define MP_WORDSIZE $_wordsize"
2688 echores
"$_wordsize"
2691 echocheck
"stddef.h"
2694 int main(void) { return 0; }
2697 cc_check
&& _stddef
=yes
2698 if test "$_stddef" = yes ; then
2699 _def_stddef
='#define HAVE_STDDEF_H 1'
2701 _def_stddef
='#undef HAVE_STDDEF_H'
2706 echocheck
"malloc.h"
2709 int main(void) { (void) malloc(0); return 0; }
2712 cc_check
&& _malloc
=yes
2713 if test "$_malloc" = yes ; then
2714 _def_malloc
='#define HAVE_MALLOC_H 1'
2716 _def_malloc
='#undef HAVE_MALLOC_H'
2718 # malloc.h emits a warning in FreeBSD and OpenBSD
2719 freebsd || openbsd
&& _def_malloc
='#undef HAVE_MALLOC_H'
2723 echocheck
"memalign()"
2724 # XXX restrict to x86 ? extend to other CPUs/cacheline sizes ?
2727 int main (void) { (void) memalign(64, sizeof(char)); return 0; }
2730 cc_check
&& _memalign
=yes
2731 if test "$_memalign" = yes ; then
2732 _def_memalign
='#define HAVE_MEMALIGN 1'
2734 _def_memalign
='#undef HAVE_MEMALIGN'
2736 echores
"$_memalign"
2739 echocheck
"alloca.h"
2742 int main(void) { (void) alloca(0); return 0; }
2745 cc_check
&& _alloca
=yes
2747 _def_alloca
='#define HAVE_ALLOCA_H 1'
2749 _def_alloca
='#undef HAVE_ALLOCA_H'
2756 #include <sys/types.h>
2757 #include <sys/mman.h>
2758 int main(void) { (void) mmap(0, 0, 0, 0, 0, 0); return 0; }
2761 cc_check
&& _mman
=yes
2762 if test "$_mman" = yes ; then
2763 _def_mman
='#define HAVE_SYS_MMAN_H 1'
2765 _def_mman
='#undef HAVE_SYS_MMAN_H'
2770 #include <sys/types.h>
2771 #include <sys/mman.h>
2772 int main(void) { void *p = MAP_FAILED; return 0; }
2774 _mman_has_map_failed
=no
2775 cc_check
&& _mman_has_map_failed
=yes
2776 if test "$_mman_has_map_failed" = yes ; then
2777 _def_mman_has_map_failed
=''
2779 _def_mman_has_map_failed
='#define MAP_FAILED ((void *) -1)'
2782 echocheck
"dynamic loader"
2785 int main(void) { dlopen(0, 0); dlclose(0); dlsym(0, 0); return 0; }
2788 for _ld_tmp
in "" "-ldl" ; do
2789 cc_check
$_ld_tmp && _ld_dl
="$_ld_tmp" && _dl
=yes && break
2791 if test "$_dl" = yes ; then
2792 _def_dl
='#define HAVE_LIBDL 1'
2794 _def_dl
='#undef HAVE_LIBDL'
2799 echocheck
"dynamic a/v plugins support"
2800 if test "$_dl" = no
; then
2803 if test "$_dynamic_plugins" = yes ; then
2804 _def_dynamic_plugins
='#define DYNAMIC_PLUGINS 1'
2806 _def_dynamic_plugins
='#undef DYNAMIC_PLUGINS'
2808 echores
"$_dynamic_plugins"
2811 #echocheck "dynamic linking"
2812 # FIXME !! make this dynamic detection work and modify at the end (search _ld_dl_dynamic)
2813 # also gcc flags are different, but ld flags aren't (-Bdynamic/-Bstatic/-Bsymbolic)
2815 #int main(void) { return 0; }
2817 #if cc_check -rdynamic ; then
2818 # _ld_dl_dynamic='-rdynamic'
2819 #elif cc_check -Bdynamic ; then
2820 # _ld_dl_dynamic='-Bdynamic'
2821 #elif cc_check ; then
2824 #echores "using $_ld_dl_dynamic"
2826 _def_threads
='#undef HAVE_THREADS'
2829 if test "$_pthreads" != no
; then
2831 #include <pthread.h>
2832 void* func(void *arg) { return arg; }
2833 int main(void) { pthread_t tid; return pthread_create (&tid, 0, func, 0) == 0 ? 0 : 1; }
2837 for _ld_tmp
in "-lpthreadGC2" "" "-lpthread" "-pthread" ; do
2838 # for crosscompilation, we cannot execute the program, be happy if we can link statically
2839 cc_check
$_ld_tmp && (tmp_run ||
test "$_ld_static") && _ld_pthread
="$_ld_tmp" && _pthreads
=yes && break
2843 if test "$_pthreads" = yes ; then
2844 echores
"yes (using $_ld_pthread)"
2846 _def_pthreads
='#define HAVE_PTHREADS 1'
2847 _def_threads
='#define HAVE_THREADS 1'
2849 echores
"no (v4l, vo_gl, ao_alsa, ao_nas, ao_macosx, win32 loader disabled)"
2851 _def_pthreads
='#undef HAVE_PTHREADS'
2852 _nas
=no
; _tv_v4l
=no
; _macosx
=no
2853 if not mingw32
; then
2860 if test "$_iconv" = auto
; then
2861 _iconv_tmp
='#include <iconv.h>'
2867 #define INBUFSIZE 1024
2868 #define OUTBUFSIZE 4096
2870 char inbuffer[INBUFSIZE];
2871 char outbuffer[OUTBUFSIZE];
2876 char *tocode="UTF-8";
2877 char *fromcode="cp1250";
2878 if ((icdsc = iconv_open (tocode, fromcode)) != (iconv_t)(-1)) {
2879 while ((numread = read (0, inbuffer, INBUFSIZE))) {
2880 char *iptr=inbuffer;
2881 char *optr=outbuffer;
2882 size_t inleft=numread;
2883 size_t outleft=OUTBUFSIZE;
2884 if (iconv(icdsc, (const char **)&iptr, &inleft, &optr, &outleft)
2886 write (1, outbuffer, OUTBUFSIZE - outleft);
2889 if (iconv_close(icdsc) == -1)
2895 for _ld_tmp
in "" "-liconv" "-liconv $_ld_dl" ; do
2896 cc_check
$_ld_lm $_ld_tmp && _ld_iconv
="$_ld_tmp" && _iconv
=yes && break
2899 if test "$_iconv" = yes ; then
2900 _def_iconv
='#define USE_ICONV 1'
2902 _def_iconv
='#undef USE_ICONV'
2907 echocheck
"sys/soundcard.h"
2909 #include <sys/soundcard.h>
2910 int main(void) { return 0; }
2913 cc_check
&& _sys_soundcard
=yes
2914 if test "$_sys_soundcard" = yes ; then
2915 _def_sys_soundcard
='#define HAVE_SYS_SOUNDCARD_H 1'
2916 _inc_soundcard
='#include <sys/soundcard.h>'
2918 _def_sys_soundcard
='#undef HAVE_SYS_SOUNDCARD_H'
2920 echores
"$_sys_soundcard"
2922 if test "$_sys_soundcard" != yes ; then
2923 echocheck
"soundcard.h"
2925 #include <soundcard.h>
2926 int main(void) { return 0; }
2929 cc_check
&& _soundcard
=yes
2930 if linux ||
test "$_ossaudio" != no
; then
2931 # use soundcard.h on Linux, or when OSS support is enabled
2932 echores
"$_soundcard"
2934 # we don't want to use soundcard.h on non-Linux if OSS support not enabled!
2935 echores
"$_soundcard, but ignored!"
2938 if test "$_soundcard" = yes ; then
2939 _def_soundcard
='#define HAVE_SOUNDCARD_H 1'
2940 _inc_soundcard
='#include <soundcard.h>'
2942 _def_soundcard
='#undef HAVE_SOUNDCARD_H'
2945 _def_soundcard
='#undef HAVE_SOUNDCARD_H'
2949 echocheck
"sys/dvdio.h"
2952 #include <sys/dvdio.h>
2953 int main(void) { return 0; }
2956 cc_check
&& _dvdio
=yes
2957 if test "$_dvdio" = yes ; then
2958 _def_dvdio
='#define DVD_STRUCT_IN_SYS_DVDIO_H 1'
2960 _def_dvdio
='#undef DVD_STRUCT_IN_SYS_DVDIO_H'
2965 echocheck
"sys/cdio.h"
2968 #include <sys/cdio.h>
2969 int main(void) { return 0; }
2972 cc_check
&& _cdio
=yes
2973 if test "$_cdio" = yes ; then
2974 _def_cdio
='#define DVD_STRUCT_IN_SYS_CDIO_H 1'
2976 _def_cdio
='#undef DVD_STRUCT_IN_SYS_CDIO_H'
2981 echocheck
"linux/cdrom.h"
2983 #include <sys/types.h>
2984 #include <linux/cdrom.h>
2985 int main(void) { return 0; }
2988 cc_check
&& _cdrom
=yes
2989 if test "$_cdrom" = yes ; then
2990 _def_cdrom
='#define DVD_STRUCT_IN_LINUX_CDROM_H 1'
2992 _def_cdrom
='#undef DVD_STRUCT_IN_LINUX_CDROM_H'
3000 int main(void) { return 0; }
3003 cc_check
&& _dvd
=yes
3004 if test "$_dvd" = yes ; then
3005 _def_dvd
='#define DVD_STRUCT_IN_DVD_H 1'
3007 _def_dvd
='#undef DVD_STRUCT_IN_DVD_H'
3012 echocheck
"BSDI dvd.h"
3015 int main(void) { return 0; }
3018 cc_check
&& _bsdi_dvd
=yes
3019 if test "$_bsdi_dvd" = yes ; then
3020 _def_bsdi_dvd
='#define DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H 1'
3022 _def_bsdi_dvd
='#undef DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H'
3024 echores
"$_bsdi_dvd"
3027 echocheck
"HPUX SCSI header"
3029 #include <sys/scsi.h>
3030 int main(void) { return 0; }
3033 cc_check
&& _hpux_scsi_h
=yes
3034 if test "$_hpux_scsi_h" = yes ; then
3035 _def_hpux_scsi_h
='#define HPUX_SCTL_IO 1'
3037 _def_hpux_scsi_h
='#undef HPUX_SCTL_IO'
3039 echores
"$_hpux_scsi_h"
3042 echocheck
"userspace SCSI headers (Solaris)"
3044 # include <unistd.h>
3045 # include <stropts.h>
3046 # include <sys/scsi/scsi_types.h>
3047 # include <sys/scsi/impl/uscsi.h>
3048 int main(void) { return 0; }
3051 cc_check
&& _sol_scsi_h
=yes
3052 if test "$_sol_scsi_h" = yes ; then
3053 _def_sol_scsi_h
='#define SOLARIS_USCSI 1'
3055 _def_sol_scsi_h
='#undef SOLARIS_USCSI'
3057 echores
"$_sol_scsi_h"
3061 if test "$_termcap" = auto
; then
3063 int main(void) { return 0; }
3066 for _ld_tmp
in "-ltermcap" "-ltinfo" ; do
3067 cc_check
$_ld_tmp && _ld_termcap
="$_ld_tmp" && _termcap
=yes && break
3070 if test "$_termcap" = yes ; then
3071 _def_termcap
='#define USE_TERMCAP 1'
3072 _res_comment
="using $_ld_termcap"
3074 _def_termcap
='#undef USE_TERMCAP'
3080 if test "$_termios" = auto
; then
3082 #include <sys/termios.h>
3083 int main(void) { return 0; }
3086 cc_check
&& _termios
=yes
3087 _def_termios_h_name
='sys/termios.h'
3090 if test "$_termios" = auto
; then
3092 #include <termios.h>
3093 int main(void) { return 0; }
3096 cc_check
&& _termios
=yes
3097 _def_termios_h_name
='termios.h'
3100 if test "$_termios" = yes ; then
3101 _def_termios
='#define HAVE_TERMIOS 1'
3102 _def_termios_h
='#undef HAVE_TERMIOS_H'
3103 _def_termios_sys_h
='#undef HAVE_SYS_TERMIOS_H'
3105 if test "$_def_termios_h_name" = 'sys/termios.h' ; then
3106 _def_termios_sys_h
='#define HAVE_SYS_TERMIOS_H 1'
3107 elif test "$_def_termios_h_name" = 'termios.h' ; then
3108 _def_termios_h
='#define HAVE_TERMIOS_H 1'
3110 _res_comment
="using $_def_termios_h_name"
3112 _def_termios
='#undef HAVE_TERMIOS'
3113 _def_termios_h_name
=''
3120 if test "$_shm" = auto
; then
3122 #include <sys/types.h>
3123 #include <sys/shm.h>
3124 int main(void) { shmget(0, 0, 0); shmat(0, 0, 0); shmctl(0, 0, 0); return 0; }
3127 cc_check
&& _shm
=yes
3129 if test "$_shm" = yes ; then
3130 _def_shm
='#define HAVE_SHM 1'
3132 _def_shm
='#undef HAVE_SHM'
3137 # XXX: FIXME, add runtime checking
3138 echocheck
"linux devfs"
3139 echores
"$_linux_devfs"
3142 echocheck
"scandir()"
3144 int main (void) { scandir("", 0, 0, 0); alphasort(0, 0); return 0; }
3147 cc_check
&& _scandir
=yes
3148 if test "$_scandir" = yes ; then
3149 _def_scandir
='#define HAVE_SCANDIR 1'
3151 _def_scandir
='#undef HAVE_SCANDIR'
3156 echocheck
"strsep()"
3159 int main (void) { char *s = "Hello, world!"; (void) strsep(&s, ","); return 0; }
3162 cc_check
&& _strsep
=yes
3163 if test "$_strsep" = yes ; then
3164 _def_strsep
='#define HAVE_STRSEP 1'
3166 _def_strsep
='#undef HAVE_STRSEP'
3170 echocheck
"strlcpy()"
3173 int main (void) { char *s = "Hello, world!", t[20]; (void) strlcpy(t, s, sizeof( t )); return 0; }
3176 cc_check
&& _strlcpy
=yes
3177 if test "$_strlcpy" = yes ; then
3178 _def_strlcpy
='#define HAVE_STRLCPY 1'
3180 _def_strlcpy
='#undef HAVE_STRLCPY'
3184 echocheck
"strlcat()"
3187 int main (void) { char *s = "Hello, world!", t[20]; (void) strlcat(t, s, sizeof( t )); return 0; }
3190 cc_check
&& _strlcat
=yes
3191 if test "$_strlcat" = yes ; then
3192 _def_strlcat
='#define HAVE_STRLCAT 1'
3194 _def_strlcat
='#undef HAVE_STRLCAT'
3198 echocheck
"fseeko()"
3201 int main (void) { int i; i = fseeko(stdin, 0, 0); return 0; }
3204 cc_check
&& _fseeko
=yes
3205 if test "$_fseeko" = yes ; then
3206 _def_fseeko
='#define HAVE_FSEEKO 1'
3208 _def_fseeko
='#undef HAVE_FSEEKO'
3212 echocheck
"localtime_r()"
3215 int main( void ) { localtime_r(NULL, NULL); }
3218 cc_check
&& _localtime_r
=yes
3219 if test "$_localtime_r" = yes ; then
3220 _def_localtime_r
='#define HAVE_LOCALTIME_R 1'
3222 _def_localtime_r
='#undef HAVE_LOCALTIME_R'
3224 echores
"$_localtime_r"
3226 echocheck
"vsscanf()"
3229 int main(void) { vsscanf(0, 0, 0); return 0; }
3232 cc_check
&& _vsscanf
=yes
3233 if test "$_vsscanf" = yes ; then
3234 _def_vsscanf
='#define HAVE_VSSCANF 1'
3236 _def_vsscanf
='#undef HAVE_VSSCANF'
3244 int main(void) { swab(0, 0, 0); return 0; }
3247 cc_check
&& _swab
=yes
3248 if test "$_swab" = yes ; then
3249 _def_swab
='#define HAVE_SWAB 1'
3251 _def_swab
='#undef HAVE_SWAB'
3255 echocheck
"posix select()"
3259 #include <sys/types.h>
3261 #include <sys/time.h>
3263 int main(void) {int nfds = 1; fd_set readfds; struct timeval timeout; select(nfds,&readfds,NULL,NULL,&timeout); return 0; }
3266 cc_check
&& _posix_select
=yes
3267 if test "$_posix_select" = no
; then
3268 _def_no_posix_select
='#define HAVE_NO_POSIX_SELECT 1'
3270 _def_no_posix_select
='#undef HAVE_NO_POSIX_SELECT'
3272 echores
"$_posix_select"
3275 echocheck
"gettimeofday()"
3278 #include <sys/time.h>
3279 int main(void) {struct timeval tv_start; gettimeofday(&tv_start, NULL); return 0; }
3282 cc_check
&& _gettimeofday
=yes
3283 if test "$_gettimeofday" = yes ; then
3284 _def_gettimeofday
='#define HAVE_GETTIMEOFDAY 1'
3286 _def_gettimeofday
='#undef HAVE_GETTIMEOFDAY'
3288 echores
"$_gettimeofday"
3295 int main(void) { glob_t gg; glob("filename",0,NULL,&gg); return 0; }
3298 cc_check
&& _glob
=yes
3299 if test "$_glob" = yes ; then
3300 _def_glob
='#define HAVE_GLOB 1'
3302 _def_glob
='#undef HAVE_GLOB'
3307 echocheck
"sys/sysinfo.h"
3309 #include <sys/sysinfo.h>
3311 struct sysinfo s_info;
3317 cc_check
&& _sys_sysinfo
=yes
3318 if test "$_sys_sysinfo" = yes ; then
3319 _def_sys_sysinfo
='#define HAVE_SYS_SYSINFO_H 1'
3320 _inc_sysinfo
='#include <sys/sysinfo.h>'
3322 _def_sys_sysinfo
='#undef HAVE_SYS_SYSINFO_H'
3324 echores
"$_sys_sysinfo"
3327 echocheck
"Mac OS X APIs"
3328 if test "$_macosx" = auto
&& darwin
; then
3329 productName
=`/usr/bin/sw_vers -productName`
3330 if test "$productName" = "Mac OS X" ; then
3334 _def_macosx
='#undef MACOSX'
3335 _noaomodules
="macosx $_noaomodules"
3336 _novomodules
="quartz $_novomodules"
3339 if test "$_macosx" = yes ; then
3341 #include <Carbon/Carbon.h>
3342 #include <QuickTime/QuickTime.h>
3343 #include <CoreAudio/CoreAudio.h>
3347 CFRunLoopRunInMode(kCFRunLoopDefaultMode, 0, false);
3350 if cc_check
-framework Carbon
-framework QuickTime
-framework CoreAudio
; then
3352 _macosx_frameworks
="-framework Carbon -framework QuickTime -framework CoreAudio -framework AudioUnit -framework AudioToolbox"
3353 _def_macosx
='#define MACOSX 1'
3354 _aosrc
="$_aosrc ao_macosx.c"
3355 _aomodules
="macosx $_aomodules"
3356 _vosrc
="$_vosrc vo_quartz.c"
3357 _vomodules
="quartz $_vomodules"
3360 _def_macosx
='#undef MACOSX'
3361 _noaomodules
="macosx $_noaomodules"
3362 _novomodules
="quartz $_novomodules"
3365 #include <Carbon/Carbon.h>
3366 #include <QuartzCore/CoreVideo.h>
3369 if cc_check
-framework Carbon
-framework QuartzCore
-framework OpenGL
; then
3370 _vosrc
="$_vosrc vo_macosx.m"
3371 _vomodules
="macosx $_vomodules"
3372 _macosx_frameworks
="$_macosx_frameworks -framework Cocoa -framework QuartzCore -framework OpenGL"
3373 _def_macosx_corevideo
='#define MACOSX_COREVIDEO 1'
3374 _macosx_corevideo
=yes
3376 _novomodules
="macosx $_novomodules"
3377 _def_macosx_corevideo
='#undef MACOSX_COREVIDEO'
3378 _macosx_corevideo
=no
3383 echocheck
"Mac OS X Finder Support"
3384 if test "$_macosx_finder_support" = auto
; then
3385 _macosx_finder_support
=$_macosx
3387 if test "$_macosx_finder_support" = yes; then
3388 _def_macosx_finder_support
='#define MACOSX_FINDER_SUPPORT 1'
3389 _macosx_finder_support
=yes
3391 _def_macosx_finder_support
='#undef MACOSX_FINDER_SUPPORT'
3392 _macosx_finder_support
=no
3394 echores
"$_macosx_finder_support"
3396 echocheck
"Mac OS X Bundle file locations"
3397 if test "$_macosx_bundle" = auto
; then
3398 _macosx_bundle
=$_macosx_finder_support
3400 if test "$_macosx_bundle" = yes; then
3401 _def_macosx_bundle
='#define MACOSX_BUNDLE 1'
3403 _def_macosx_bundle
='#undef MACOSX_BUNDLE'
3406 echores
"$_macosx_bundle"
3408 echocheck
"Samba support (libsmbclient)"
3409 if test "$_smbsupport" = yes; then
3410 _ld_smb
="-lsmbclient"
3412 if test "$_smbsupport" = auto
; then
3415 #include <libsmbclient.h>
3416 int main(void) { smbc_opendir("smb://"); return 0; }
3418 for _ld_tmp
in "-lsmbclient" "-lsmbclient $_ld_dl" "-lsmbclient $_ld_dl -lnsl" "-lsmbclient $_ld_dl -lssl -lnsl" ; do
3419 cc_check
$_ld_tmp && _ld_smb
="$_ld_tmp" && _smbsupport
=yes && break
3423 if test "$_smbsupport" = yes; then
3424 _def_smbsupport
="#define LIBSMBCLIENT"
3425 _inputmodules
="smb $_inputmodules"
3427 _def_smbsupport
="#undef LIBSMBCLIENT"
3428 _noinputmodules
="smb $_noinputmodules"
3430 echores
"$_smbsupport"
3439 if test "$_3dfx" = yes ; then
3440 _def_3dfx
='#define HAVE_3DFX 1'
3441 _vosrc
="$_vosrc vo_3dfx.c"
3442 _vomodules
="3dfx $_vomodules"
3444 _def_3dfx
='#undef HAVE_3DFX'
3445 _novomodules
="3dfx $_novomodules"
3451 if test "$_tdfxfb" = yes ; then
3452 _def_tdfxfb
='#define HAVE_TDFXFB 1'
3453 _vosrc
="$_vosrc vo_tdfxfb.c"
3454 _vomodules
="tdfxfb $_vomodules"
3456 _def_tdfxfb
='#undef HAVE_TDFXFB'
3457 _novomodules
="tdfxfb $_novomodules"
3462 if test "$_tdfxvid" = yes ; then
3463 _def_tdfxvid
='#define HAVE_TDFX_VID 1'
3464 _vosrc
="$_vosrc vo_tdfx_vid.c"
3465 _vomodules
="tdfx_vid $_vomodules"
3467 _def_tdfxvid
='#undef HAVE_TDFX_VID'
3468 _novomodules
="tdfx_vid $_novomodules"
3473 if test "$_tga" = yes ; then
3474 _def_tga
='#define HAVE_TGA 1'
3475 _vosrc
="$_vosrc vo_tga.c"
3476 _vomodules
="tga $_vomodules"
3478 _def_tga
='#undef HAVE_TGA'
3479 _novomodules
="tga $_novomodules"
3483 echocheck
"DirectFB headers presence"
3484 if test -z "$_inc_directfb" ; then
3485 for I
in /usr
/include
/usr
/local
/include
$_inc_extra; do
3486 if test -d "$I/directfb" && test -f "$I/directfb/directfb.h" ; then
3487 _inc_directfb
="-I$I/directfb"
3488 echores
"yes (using $_inc_directfb)"
3491 if test -d "$I" && test -f "$I/directfb.h" ; then
3492 _inc_directfb
="-I$I"
3493 echores
"yes (using $_inc_directfb)"
3497 if test -z "$_inc_directfb" ; then
3502 echores
"yes (using $_inc_directfb)"
3504 if test "$_inc_directfb" = "-I/usr/include" ; then
3508 echocheck
"DirectFB"
3509 if test "$_directfb" = auto
; then
3512 #include <directfb.h>
3513 int main(void) { IDirectFB *foo; DirectFBInit(0,0); return 0; }
3515 linux
&& test -c /dev
/fb0
&& cc_check
$_inc_directfb -ldirectfb && _directfb
=yes
3518 if test "$_directfb" = yes; then
3520 #include <directfb_version.h>
3522 dfb_ver = DIRECTFB_MAJOR_VERSION DIRECTFB_MINOR_VERSION DIRECTFB_MICRO_VERSION
3525 if $_cc -E $TMPC $_inc_directfb > "$TMPO"; then
3526 _directfb_version
=`sed -n 's/^dfb_ver[^1-9]*\(.*\)/\1/p' "$TMPO" | tr -d '() '`
3527 _def_directfb_version
="#define DIRECTFBVERSION $_directfb_version"
3528 if test "$_directfb_version" -ge 913; then
3529 _res_comment
="$_directfb_version"
3531 _def_directfb_version
='#undef DIRECTFBVERSION'
3533 _res_comment
="version >=0.9.13 required"
3537 _res_comment
="failed to get version"
3540 echores
"$_directfb"
3542 if test "$_directfb" = yes ; then
3543 _def_directfb
='#define HAVE_DIRECTFB 1'
3544 if test "$_directfb_version" -ge 913; then
3545 _vosrc
="$_vosrc vo_directfb2.c"
3546 _vomodules
="directfb $_vomodules"
3547 _ld_directfb
='-ldirectfb'
3550 if test "$_directfb_version" -ge 915; then
3551 _vosrc
="$_vosrc vo_dfbmga.c"
3552 _vomodules
="dfbmga $_vomodules"
3555 _def_directfb
='#undef HAVE_DIRECTFB'
3556 _novomodules
="directfb $_novomodules"
3561 echocheck
"X11 headers presence"
3562 if test -z "$_inc_x11" ; then
3563 for I
in /usr
/X11
/include
/usr
/X11R
6/include
/usr
/include
/X11R6
/usr
/include
/usr
/openwin
/include
; do
3564 if test -d "$I/X11" && test -f "$I/X11/Xlib.h" ; then
3566 echores
"yes (using $I)"
3570 if test -z "$_inc_x11" ; then
3572 echores
"not found (check if the dev(el) packages are installed)"
3575 echores
"yes (using $_inc_x11)"
3577 if test "$_inc_x11" = "-I/usr/include" ; then
3583 if test "$_x11" != no
; then
3585 #include <X11/Xlib.h>
3586 #include <X11/Xutil.h>
3587 int main(void) { (void) XCreateWindow(0,0,0,0,0,0,0,0,0,0,0,0); return 0; }
3589 if test -z "$_x11_paths" ; then
3590 _x11_paths
="/usr/X11R6/lib /usr/lib/X11R6 /usr/X11/lib /usr/lib32 /usr/openwin/lib /usr/X11R6/lib64 /usr/lib"
3592 for I
in $_x11_paths ; do
3593 _ld_x11
="-L$I -lXext -lX11 $_ld_sock $_ld_pthread"
3595 _ld_x11
="$_ld_x11 -Wl,-R$I"
3597 if test -d "$I" && cc_check
$_inc_x11 $_ld_x11 ; then
3603 if test "$_x11" = yes ; then
3604 _def_x11
='#define HAVE_X11 1'
3605 _vosrc
="$_vosrc x11_common.c vo_x11.c vo_xover.c"
3606 _vomodules
="x11 xover $_vomodules"
3607 _res_comment
="using $I"
3610 _def_x11
='#undef HAVE_X11'
3613 _novomodules
="x11 $_novomodules"
3614 _res_comment
="check if the dev(el) packages are installed"
3622 if test "$_x11" = yes ; then
3624 #include <X11/Xmd.h>
3625 #include <X11/Xlib.h>
3626 #include <X11/Xutil.h>
3627 #include <X11/Xatom.h>
3628 #include <X11/extensions/dpms.h>
3630 (void) DPMSQueryExtension(0, 0, 0);
3633 cc_check
$_inc_x11 -lXdpms $_ld_x11 && _xdpms3
=yes
3635 #include <X11/Xlib.h>
3636 #include <X11/extensions/dpms.h>
3638 (void) DPMSQueryExtension(0, 0, 0);
3641 cc_check
$_inc_x11 $_ld_x11 && _xdpms4
=yes
3643 if test "$_xdpms4" = yes ; then
3644 _def_xdpms
='#define HAVE_XDPMS 1'
3645 echores
"yes (using Xdpms 4)"
3646 elif test "$_xdpms3" = yes ; then
3647 _def_xdpms
='#define HAVE_XDPMS 1'
3648 _ld_x11
="-lXdpms $_ld_x11"
3649 echores
"yes (using Xdpms 3)"
3651 _def_xdpms
='#undef HAVE_XDPMS'
3657 if test "$_x11" = yes && test "$_xv" != no
; then
3659 #include <X11/Xlib.h>
3660 #include <X11/extensions/Xvlib.h>
3662 (void) XvGetPortAttribute(0, 0, 0, 0);
3663 (void) XvQueryPortAttributes(0, 0, 0);
3667 cc_check
$_inc_x11 -lXv $_ld_x11 && _xv
=yes
3671 if test "$_xv" = yes ; then
3672 _def_xv
='#define HAVE_XV 1'
3674 _vosrc
="$_vosrc vo_xv.c"
3675 _vomodules
="xv $_vomodules"
3677 _def_xv
='#undef HAVE_XV'
3678 _novomodules
="xv $_novomodules"
3684 if test "$_x11" = yes && test "$_xv" = yes && test "$_xvmc" != no
; then
3687 #include <X11/Xlib.h>
3688 #include <X11/extensions/Xvlib.h>
3689 #include <X11/extensions/XvMClib.h>
3691 (void) XvMCQueryExtension(0,0,0);
3692 (void) XvMCCreateContext(0,0,0,0,0,0,0);
3695 cc_check
$_inc_x11 -lXvMC -l$_xvmclib $_ld_xv $_ld_x11 && _xvmc
=yes
3697 if test "$_xvmc" = yes ; then
3698 _def_xvmc
='#define HAVE_XVMC 1'
3699 _ld_xvmc
="-lXvMC -l$_xvmclib"
3700 _vosrc
="$_vosrc vo_xvmc.c"
3701 _vomodules
="xvmc $_vomodules"
3703 _def_xvmc
='#undef HAVE_XVMC'
3704 _novomodules
="xvmc $_novomodules"
3709 echocheck
"Xinerama"
3710 if test "$_x11" = yes && test "$_xinerama" != no
; then
3712 #include <X11/Xlib.h>
3713 #include <X11/extensions/Xinerama.h>
3714 int main(void) { (void) XineramaIsActive(0); return 0; }
3717 cc_check
$_inc_x11 -lXinerama $_ld_x11 && _xinerama
=yes
3721 if test "$_xinerama" = yes ; then
3722 _def_xinerama
='#define HAVE_XINERAMA 1'
3723 _ld_xinerama
='-lXinerama'
3725 _def_xinerama
='#undef HAVE_XINERAMA'
3727 echores
"$_xinerama"
3730 # Note: the -lXxf86vm library is the VideoMode extension and though it's not
3731 # needed for DGA, AFAIK every distribution packages together with DGA stuffs
3732 # named 'X extensions' or something similar.
3733 # This check may be useful for future mplayer versions (to change resolution)
3734 # If you run into problems, remove '-lXxf86vm'.
3736 if test "$_x11" = yes && test "$_vm" = auto
; then
3738 #include <X11/Xlib.h>
3739 #include <X11/extensions/xf86vmode.h>
3740 int main(void) { (void) XF86VidModeQueryExtension(0, 0, 0); return 0; }
3743 cc_check
$_inc_x11 -lXxf86vm $_ld_x11 && _vm
=yes
3745 if test "$_vm" = yes ; then
3746 _def_vm
='#define HAVE_XF86VM 1'
3749 _def_vm
='#undef HAVE_XF86VM'
3753 # Check for the presence of special keycodes, like audio control buttons
3754 # that XFree86 might have. Used to be bundled with the xf86vm check, but
3755 # has nothing to do with xf86vm and XFree 3.x has xf86vm but does NOT
3756 # have these new keycodes.
3757 echocheck
"XF86keysym"
3758 if test "$_xf86keysym" = auto
; then
3760 if test "$_x11" = yes ; then
3762 #include <X11/Xlib.h>
3763 #include <X11/XF86keysym.h>
3764 int main(void) { return XF86XK_AudioPause; }
3766 cc_check
$_inc_x11 $_ld_x11 && _xf86keysym
=yes
3769 if test "$_xf86keysym" = yes ; then
3770 _def_xf86keysym
='#define HAVE_XF86XK 1'
3772 _def_xf86keysym
='#undef HAVE_XF86XK'
3774 echores
"$_xf86keysym"
3777 if test "$_x11" = no
; then
3780 # Version 2 is preferred to version 1 if available
3781 if test "$_dga" = auto
; then
3783 #include <X11/Xlib.h>
3784 #include <X11/extensions/xf86dga.h>
3785 int main (void) { (void) XF86DGASetViewPort(0, 0, 0, 0); return 0; }
3788 cc_check
$_inc_x11 -lXxf86dga -lXxf86vm $_ld_x11 && _dga
=1
3791 #include <X11/Xlib.h>
3792 #include <X11/extensions/xf86dga.h>
3793 int main (void) { (void) XDGASetViewport(0, 0, 0, 0, 0); return 0; }
3795 cc_check
$_inc_x11 -lXxf86dga $_ld_x11 && _dga
=2
3798 _def_dga
='#undef HAVE_DGA'
3799 _def_dga2
='#undef HAVE_DGA2'
3800 if test "$_dga" = 1 ; then
3801 _def_dga
='#define HAVE_DGA 1'
3802 _ld_dga
='-lXxf86dga'
3803 _vosrc
="$_vosrc vo_dga.c"
3804 _vomodules
="dga $_vomodules"
3805 echores
"yes (using DGA 1.0)"
3806 elif test "$_dga" = 2 ; then
3807 _def_dga
='#define HAVE_DGA 1'
3808 _def_dga2
='#define HAVE_DGA2 1'
3809 _ld_dga
='-lXxf86dga'
3810 _vosrc
="$_vosrc vo_dga.c"
3811 _vomodules
="dga $_vomodules"
3812 echores
"yes (using DGA 2.0)"
3813 elif test "$_dga" = no
; then
3815 _novomodules
="dga $_novomodules"
3817 die
"DGA version must be 1 or 2"
3822 #Note: this test is run even with --enable-gl since we autodetect $_ld_gl
3823 if (test "$_x11" = yes || win32
) && test "$_gl" != no
; then
3826 int main(void) { return 0; }
3829 if cc_check
$_inc_x11 $_ld_x11 -lGL $_ld_lm ; then
3831 _ld_gl
="-lGL $_ld_dl"
3832 elif cc_check
$_inc_x11 $_ld_x11 -lGL $_ld_lm $_ld_pthread ; then
3834 _ld_gl
="-lGL $_ld_pthread $_ld_dl"
3835 elif cc_check
-lopengl32 ; then
3838 _ld_gl
="-lopengl32 -lgdi32"
3843 if test "$_gl" = yes ; then
3844 _def_gl
='#define HAVE_GL 1'
3845 _vosrc
="$_vosrc vo_gl.c vo_gl2.c gl_common.c"
3846 if test "$_gl_win32" = yes ; then
3847 _def_gl_win32
='#define GL_WIN32 1'
3848 _vosrc
="$_vosrc w32_common.c"
3849 _res_comment
="win32 version"
3851 _vomodules
="opengl $_vomodules"
3853 _def_gl
='#undef HAVE_GL'
3854 _def_gl_win32
='#undef GL_WIN32'
3855 _novomodules
="opengl $_novomodules"
3860 echocheck
"/dev/mga_vid"
3861 if test "$_mga" = auto
; then
3863 test -c /dev
/mga_vid
&& _mga
=yes
3865 if test "$_mga" = yes ; then
3866 _def_mga
='#define HAVE_MGA 1'
3867 _vosrc
="$_vosrc vo_mga.c"
3868 _vomodules
="mga $_vomodules"
3870 _def_mga
='#undef HAVE_MGA'
3871 _novomodules
="mga $_novomodules"
3876 # echocheck "syncfb"
3878 # test "$_mga" = yes && _syncfb=yes
3879 # if test "$_syncfb" = yes ; then
3880 # _def_syncfb='#define HAVE_SYNCFB 1'
3881 # _vosrc="$_vosrc vo_syncfb.c"
3883 # _def_syncfb='#undef HAVE_SYNCFB'
3885 # echores "$_syncfb"
3889 if test "$_xmga" = auto
; then
3891 test "$_x11" = yes && test "$_mga" = yes && _xmga
=yes
3893 if test "$_xmga" = yes ; then
3894 _def_xmga
='#define HAVE_XMGA 1'
3895 _vosrc
="$_vosrc vo_xmga.c"
3896 _vomodules
="xmga $_vomodules"
3898 _def_xmga
='#undef HAVE_XMGA'
3899 _novomodules
="xmga $_novomodules"
3905 if test "$_ggi" = auto
; then
3907 #include <ggi/ggi.h>
3908 int main(void) { return 0; }
3911 cc_check
-lggi && _ggi
=yes
3913 if test "$_ggi" = yes ; then
3914 _def_ggi
='#define HAVE_GGI 1'
3916 _vosrc
="$_vosrc vo_ggi.c"
3917 _vomodules
="ggi $_vomodules"
3919 _def_ggi
='#undef HAVE_GGI'
3920 _novomodules
="ggi $_novomodules"
3924 echocheck
"GGI extension: libggiwmh"
3925 if test "$_ggiwmh" = auto
; then
3928 #include <ggi/ggi.h>
3929 #include <ggi/wmh.h>
3930 int main(void) { return 0; }
3932 cc_check
-lggi -lggiwmh && _ggiwmh
=yes
3934 # needed to get right output on obscure combination
3935 # like --disable-ggi --enable-ggiwmh
3936 if test "$_ggi" = yes && test "$_ggiwmh" = yes ; then
3937 _def_ggiwmh
='#define HAVE_GGIWMH 1'
3938 _ld_ggi
="$_ld_ggi -lggiwmh"
3941 _def_ggiwmh
='#undef HAVE_GGIWMH'
3947 if test "$_aa" = auto
; then
3950 extern struct aa_hardware_params aa_defparams;
3951 extern struct aa_renderparams aa_defrenderparams;
3955 (void) aa_init(0, 0, 0);
3956 c = aa_autoinit(&aa_defparams);
3957 p = aa_getrenderparams();
3958 aa_autoinitkbd(c,0);
3962 for _ld_tmp
in "-laa" "$_ld_x11 -laa" ; do
3963 cc_check
$_ld_tmp && _ld_aa
=$_ld_tmp && _aa
=yes && break
3966 if test "$_aa" = yes ; then
3967 _def_aa
='#define HAVE_AA 1'
3969 _ld_aa
=`aalib-config --libs | cut -d " " -f 2,5,6`
3971 _vosrc
="$_vosrc vo_aa.c"
3972 _vomodules
="aa $_vomodules"
3974 _def_aa
='#undef HAVE_AA'
3975 _novomodules
="aa $_novomodules"
3981 if test "$_caca" = auto
; then
3983 if ( caca-config
--version ) >> "$TMPLOG" 2>&1 ; then
3986 int main(void) { (void) caca_init(); return 0; }
3988 cc_check
`caca-config --libs` && _caca
=yes
3991 if test "$_caca" = yes ; then
3992 _def_caca
='#define HAVE_CACA 1'
3993 _inc_caca
=`caca-config --cflags`
3994 _ld_caca
=`caca-config --libs`
3995 _vosrc
="$_vosrc vo_caca.c"
3996 _vomodules
="caca $_vomodules"
3998 _def_caca
='#undef HAVE_CACA'
3999 _novomodules
="caca $_novomodules"
4005 if test "$_svga" = auto
; then
4008 int main(void) { return 0; }
4011 cc_check
-lvga $_ld_lm && _svga
=yes
4013 if test "$_svga" = yes ; then
4014 _def_svga
='#define HAVE_SVGALIB 1'
4016 _vosrc
="$_vosrc vo_svga.c"
4017 _vomodules
="svga $_vomodules"
4019 _def_svga
='#undef HAVE_SVGALIB'
4020 _novomodules
="svga $_novomodules"
4026 if test "$_fbdev" = auto
; then
4028 linux
&& test -c /dev
/fb0
&& _fbdev
=yes
4030 if test "$_fbdev" = yes ; then
4031 _def_fbdev
='#define HAVE_FBDEV 1'
4032 _vosrc
="$_vosrc vo_fbdev.c vo_fbdev2.c"
4033 _vomodules
="fbdev $_vomodules"
4035 _def_fbdev
='#undef HAVE_FBDEV'
4036 _novomodules
="fbdev $_novomodules"
4043 if test "$_dvb" != no
; then
4046 #include <sys/poll.h>
4047 #include <sys/ioctl.h>
4052 #include <ost/dmx.h>
4053 #include <ost/frontend.h>
4054 #include <ost/sec.h>
4055 #include <ost/video.h>
4056 #include <ost/audio.h>
4057 int main(void) {return 0;}
4062 for I
in "$_inc_dvb" "-I/usr/src/DVB/ost/include" ; do
4063 if cc_check
"$I" ; then
4066 _res_comment
="using $_inc_dvb"
4070 test "$_dvb" = no
&& _res_comment
="specify path to DVB/ost/include with --with-dvbincdir=DIR"
4074 if test "$_dvb" = yes ; then
4075 _def_dvb
='#define HAVE_DVB 1'
4076 _def_dvb_in
='#define HAS_DVBIN_SUPPORT 1'
4077 _aomodules
="mpegpes(dvb) $_aomodules"
4078 _vomodules
="mpegpes(dvb) $_vomodules"
4080 if test "$_dvbhead" != no
; then
4081 echocheck
"DVB HEAD"
4082 if test "$_dvbhead" != no
; then
4086 #include <sys/poll.h>
4087 #include <sys/ioctl.h>
4092 #include <linux/dvb/dmx.h>
4093 #include <linux/dvb/frontend.h>
4094 #include <linux/dvb/video.h>
4095 #include <linux/dvb/audio.h>
4096 int main(void) {return 0;}
4101 for I
in "$_inc_dvb" "-I/usr/src/DVB/include" ; do
4102 if cc_check
"$I" ; then
4105 _res_comment
="using $_inc_dvb"
4109 test "$_dvbhead" = no
&& _res_comment
="specify path to DVB/include (HEAD Version) with --with-dvbincdir=DIR"
4113 if test "$_dvbhead" = yes ; then
4114 _def_dvb
='#define HAVE_DVB_HEAD 1'
4115 _def_dvb_in
='#define HAS_DVBIN_SUPPORT 1'
4116 _aomodules
="mpegpes(dvb) $_aomodules"
4117 _vomodules
="mpegpes(dvb) $_vomodules"
4120 if test "$_dvbhead" = no
&& test "$_dvb" = no
; then
4121 _def_dvb
='#undef HAVE_DVB'
4122 _def_dvb_in
='#undef HAS_DVBIN_SUPPORT '
4123 _aomodules
="mpegpes(file) $_aomodules"
4124 _vomodules
="mpegpes(file) $_vomodules"
4127 if test "$_dvb" = yes ||
test "$_dvbhead" = yes ; then
4129 _inputmodules
="dvb $_inputmodules"
4132 _noinputmodules
="dvb $_noinputmodules"
4135 echocheck
"PNG support"
4136 if test "$_png" = auto
; then
4139 # Don't check for -lpng on irix since it has its own libpng
4140 # incompatible with the GNU libpng
4141 _res_comment
="disabled on irix (not GNU libpng)"
4147 printf("png.h : %s\n", PNG_LIBPNG_VER_STRING);
4148 printf("libpng: %s\n", png_libpng_ver);
4149 return (strcmp(PNG_LIBPNG_VER_STRING, png_libpng_ver));
4152 if cc_check
-lpng -lz $_ld_lm ; then
4156 _res_comment
="mismatch of library and header versions"
4162 if test "$_png" = yes ; then
4163 _def_png
='#define HAVE_PNG 1'
4165 _vosrc
="$_vosrc vo_png.c"
4166 _vomodules
="png $_vomodules"
4169 _def_png
='#undef HAVE_PNG'
4170 _novomodules
="png $_novomodules"
4174 echocheck
"JPEG support"
4175 if test "$_jpg" = auto
; then
4182 #include <jpeglib.h>
4187 if cc_check
-ljpeg $_ld_lm ; then
4195 if test "$_jpg" = yes ; then
4196 _def_jpg
='#define HAVE_JPEG 1'
4197 _vosrc
="$_vosrc vo_jpeg.c"
4198 _vomodules
="jpeg $_vomodules"
4202 _def_jpg
='#undef HAVE_JPEG'
4203 _novomodules
="jpeg $_novomodules"
4209 echocheck
"PNM support"
4210 if test "$_pnm" = yes; then
4211 _def_pnm
="#define HAVE_PNM"
4212 _vosrc
="$_vosrc vo_pnm.c"
4213 _vomodules
="pnm $_vomodules"
4215 _def_pnm
="#undef HAVE_PNM"
4216 _novomodules
="pnm $_novomodules"
4222 echocheck
"md5sum support"
4223 if test "$_md5sum" = yes; then
4224 _def_md5sum
="#define HAVE_MD5SUM"
4225 _vosrc
="$_vosrc vo_md5sum.c md5sum.c"
4226 _vomodules
="md5sum $_vomodules"
4228 _def_md5sum
="#undef HAVE_MD5SUM"
4229 _novomodules
="md5sum $_novomodules"
4235 echocheck
"GIF support"
4236 # This is to appease people who want to force gif support.
4237 # If it is forced to yes, then we still do checks to determine
4238 # which gif library to use.
4239 if test "$_gif" = yes ; then
4244 if test "$_gif" = auto
; then
4247 #include <gif_lib.h>
4252 for _ld_tmp
in "-lungif" "-lungif $_ld_x11" "-lgif" "-lgif $_ld_x11" ; do
4253 cc_check
$_ld_tmp && tmp_run
&& _ld_gif
="$_ld_tmp" && _gif
=yes && break
4257 # If no library was found, and the user wants support forced,
4258 # then we force it on with libgif, as this is the safest
4259 # assumption IMHO. (libungif & libregif both create symbolic
4260 # links to libgif. We also assume that no x11 support is needed,
4261 # because if you are forcing this, then you _should_ know what
4262 # you are doing. [ Besides, package maintainers should never
4263 # have compiled x11 deps into libungif in the first place. ] )
4266 if test "$_force_gif" = yes && test "$_gif" = no
; then
4271 if test "$_gif" = yes ; then
4272 _def_gif
='#define HAVE_GIF 1'
4273 _vosrc
="$_vosrc vo_gif89a.c"
4274 _codecmodules
="gif $_codecmodules"
4275 _vomodules
="gif89a $_vomodules"
4277 _gif
="yes (old version, some encoding functions disabled)"
4278 _def_gif_4
='#undef HAVE_GIF_4'
4282 #include <gif_lib.h>
4283 void catch() { exit(1); }
4285 signal(SIGSEGV, catch); // catch segfault
4286 printf("EGifPutExtensionFirst is at address %p\n", EGifPutExtensionFirst);
4287 EGifSetGifVersion("89a"); // this will segfault a buggy gif lib.
4291 if cc_check
"$_ld_gif" && tmp_run
; then
4292 _def_gif_4
='#define HAVE_GIF_4 1'
4296 _def_gif
='#undef HAVE_GIF'
4297 _def_gif_4
='#undef HAVE_GIF_4'
4298 _novomodules
="gif89a $_novomodules"
4299 _nocodecmodules
="gif $_nocodecmodules"
4305 case "$_gif" in yes*)
4306 echocheck
"broken giflib workaround"
4307 _def_gif_tvt_hack
='#define HAVE_GIF_TVT_HACK 1'
4310 #include <gif_lib.h>
4313 printf("UserData is at address %p\n", gif.UserData);
4317 if cc_check
"$_ld_gif" && tmp_run
; then
4318 _def_gif_tvt_hack
='#undef HAVE_GIF_TVT_HACK'
4327 echocheck
"VESA support"
4328 if test "$_vesa" = auto
; then
4331 int main(void) { vbeVersion(); return 0; }
4334 cc_check
-lvbe -llrmi && _vesa
=yes
4336 if test "$_vesa" = yes ; then
4337 _def_vesa
='#define HAVE_VESA 1'
4338 _ld_vesa
="-lvbe -llrmi"
4339 _vosrc
="$_vosrc vo_vesa.c vesa_lvo.c gtf.c"
4340 _vomodules
="vesa $_vomodules"
4342 _def_vesa
='#undef HAVE_VESA'
4343 _novomodules
="vesa $_novomodules"
4353 if test -z "$_sdlconfig" ; then
4354 if ( sdl-config
--version ) >>"$TMPLOG" 2>&1 ; then
4355 _sdlconfig
="sdl-config"
4356 elif ( sdl11-config
--version ) >>"$TMPLOG" 2>&1 ; then
4357 _sdlconfig
="sdl11-config"
4362 if test "$_sdl" = auto ||
test "$_sdl" = yes ; then
4365 int main(int argc, char *argv[]) { return 0; }
4368 if "$_sdlconfig" --version >>"$TMPLOG" 2>&1 ; then
4369 if cc_check
`$_sdlconfig --cflags` `$_sdlconfig --libs` >>"$TMPLOG" 2>&1 ; then
4370 _sdlversion
=`$_sdlconfig --version | sed 's/[^0-9]//g'`
4371 if test "$_sdlversion" -gt 116 ; then
4372 if test "$_sdlversion" -lt 121 ; then
4373 _def_sdlbuggy
='#define BUGGY_SDL'
4375 _def_sdlbuggy
='#undef BUGGY_SDL'
4379 _res_comment
=outdated
4384 if test "$_sdl" = yes ; then
4385 _def_sdl
='#define HAVE_SDL 1'
4387 _ld_sdl
=`$_sdlconfig --libs | cut -d " " -f 1,4,6 | sed s/no-cygwin/cygwin/`
4388 _inc_sdl
=`$_sdlconfig --cflags | cut -d " " -f 1,5,6 | sed s/no-cygwin/cygwin/`
4390 _ld_sdl
=`$_sdlconfig --libs | sed s/-mwindows//`
4391 _inc_sdl
=`$_sdlconfig --cflags | sed s/-Dmain=SDL_main//`
4393 _ld_sdl
=`$_sdlconfig --libs`
4394 _inc_sdl
=`$_sdlconfig --cflags`
4396 _vosrc
="$_vosrc vo_sdl.c"
4397 _vomodules
="sdl $_vomodules"
4398 _aosrc
="$_aosrc ao_sdl.c"
4399 _aomodules
="sdl $_aomodules"
4400 _res_comment
="using $_sdlconfig"
4402 _def_sdl
='#undef HAVE_SDL'
4403 _novomodules
="sdl $_novomodules"
4404 _noaomodules
="sdl $_noaomodules"
4408 echocheck
"Windows waveout"
4409 if test "$_win32waveout" = auto
; then
4411 #include <windows.h>
4412 #include <mmsystem.h>
4413 int main(void) { return 0; }
4416 cc_check
-lwinmm && _win32waveout
=yes
4418 if test "$_win32waveout" = yes ; then
4419 _def_win32waveout
='#define HAVE_WIN32WAVEOUT 1'
4420 _ld_win32libs
="-lwinmm $_ld_win32libs"
4421 _aosrc
="$_aosrc ao_win32.c"
4422 _aomodules
="win32 $_aomodules"
4424 _def_win32waveout
='#undef HAVE_WIN32WAVEOUT'
4425 _noaomodules
="win32 $_noaomodules"
4427 echores
"$_win32waveout"
4430 if test "$_directx" = auto
; then
4432 #include <windows.h>
4435 int main(void) { return 0; }
4438 cc_check
-lgdi32 && _directx
=yes
4440 if test "$_directx" = yes ; then
4441 _def_directx
='#define HAVE_DIRECTX 1'
4442 _ld_win32libs
="-lgdi32 $_ld_win32libs"
4443 _vosrc
="$_vosrc vo_directx.c"
4444 _vomodules
="directx $_vomodules"
4445 _aosrc
="$_aosrc ao_dsound.c"
4446 _aomodules
="dsound $_aomodules"
4448 _def_directx
='#undef HAVE_DIRECTX'
4449 _novomodules
="directx $_novomodules"
4450 _noaomodules
="dsound $_noaomodules"
4455 if test "$_nas" = auto
; then
4457 #include <audio/audiolib.h>
4458 int main(void) { return 0; }
4461 cc_check
-laudio $_inc_x11 -lXt $_ld_x11 $_ld_lm && _nas
=yes
4463 if test "$_nas" = yes ; then
4464 _def_nas
='#define HAVE_NAS 1'
4465 _ld_nas
="-laudio -lXt $_ld_x11"
4466 _aosrc
="$_aosrc ao_nas.c"
4467 _aomodules
="nas $_aomodules"
4469 _noaomodules
="nas $_noaomodules"
4470 _def_nas
='#undef HAVE_NAS'
4475 if test "$_dxr2" = auto
; then
4478 #include <dxr2ioctl.h>
4479 int main(void) { return 0; }
4481 for _inc_dxr2
in "$_inc_dxr2" \
4482 "-I/usr/local/include/dxr2" \
4483 "-I/usr/include/dxr2"; do
4484 cc_check
$_inc_dxr2 && _dxr2
=yes && break
4487 if test "$_dxr2" = yes; then
4488 _def_dxr2
='#define HAVE_DXR2 1'
4489 _vosrc
="$_vosrc vo_dxr2.c"
4490 _aosrc
="$_aosrc ao_dxr2.c"
4491 _aomodules
="dxr2 $_aomodules"
4492 _vomodules
="dxr2 $_vomodules"
4493 _res_comment
="using $_inc_dxr2"
4495 _def_dxr2
='#undef HAVE_DXR2'
4496 _noaomodules
="dxr2 $_noaomodules"
4497 _novomodules
="dxr2 $_novomodules"
4503 if test "$_dxr3" = auto
; then
4505 #include <linux/em8300.h>
4506 int main(void) { return 0; }
4509 cc_check
&& _dxr3
=yes
4511 if test "$_dxr3" = yes ; then
4512 _def_dxr3
='#define HAVE_DXR3 1'
4513 _vosrc
="$_vosrc vo_dxr3.c"
4514 _vomodules
="dxr3 $_vomodules"
4516 _def_dxr3
='#undef HAVE_DXR3'
4517 _novomodules
="dxr3 $_novomodules"
4518 if test "$_mp1e" = auto
; then
4519 # we don't need mp1e
4526 if test "$_mmx" = no
; then
4527 # mp1e REQUIRES mmx!
4530 if test "$_mp1e" != no
; then
4532 _def_mp1e
='#define USE_MP1E'
4533 _ld_mp1e
='libmp1e/libmp1e.a'
4534 _dep_mp1e
='libmp1e/libmp1e.a'
4537 _def_mp1e
='#undef USE_MP1E'
4545 if test "$_fame" = auto
; then
4547 test "$_dxr2" = yes && _fame
=auto
4548 test "$_dxr3" = yes && _fame
=auto
4549 test "$_dvb" = yes && _fame
=auto
4551 if test "$_fame" = auto
; then
4553 if test -d libfame
&& test -f libfame
/fame.h
; then
4554 # disable fame on cygwin as no sense to port - atmos
4557 _res_comment
="no fame dir"
4562 _def_fame
='#undef USE_LIBFAME'
4563 if test "$_fame" = yes ; then
4564 _def_fame
='#define USE_LIBFAME 1'
4565 _ld_fame
='libfame/libfame.a'
4574 echocheck
"OSS Audio"
4575 if test "$_ossaudio" = auto
; then
4577 #include <sys/ioctl.h>
4579 int main(void) { int arg = SNDCTL_DSP_SETFRAGMENT; return 0; }
4582 cc_check
&& _ossaudio
=yes
4584 if test "$_ossaudio" = yes ; then
4585 _def_ossaudio
='#define USE_OSS_AUDIO 1'
4586 _aosrc
="$_aosrc ao_oss.c"
4587 _aomodules
="oss $_aomodules"
4588 if test "$_linux_devfs" = yes; then
4589 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound/dsp"'
4590 _def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/sound/mixer"'
4593 #include <sys/ioctl.h>
4595 #ifdef OPEN_SOUND_SYSTEM
4596 int main(void) { return 0; }
4598 #error Not the real thing
4602 cc_check
&& _real_ossaudio
=yes
4603 if test "$_real_ossaudio" = yes; then
4604 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
4605 elif netbsd || openbsd
; then
4606 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound"'
4607 _ld_arch
="$_ld_arch -lossaudio"
4609 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
4611 _def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/mixer"'
4614 _def_ossaudio
='#undef USE_OSS_AUDIO'
4615 _def_ossaudio_devdsp
='#define PATH_DEV_DSP ""'
4616 _def_ossaudio_devmixer
='#define PATH_DEV_MIXER ""'
4617 _noaomodules
="oss $_noaomodules"
4619 echores
"$_ossaudio"
4623 if test "$_arts" = auto
; then
4625 if ( artsc-config
--version ) >> "$TMPLOG" 2>&1 ; then
4629 int main(void) { return 0; }
4631 cc_check
`artsc-config --libs` `artsc-config --cflags` && tmp_run
&& _arts
=yes
4636 if test "$_arts" = yes ; then
4637 _def_arts
='#define USE_ARTS 1'
4638 _aosrc
="$_aosrc ao_arts.c"
4639 _aomodules
="arts $_aomodules"
4640 _ld_arts
=`artsc-config --libs`
4641 _inc_arts
=`artsc-config --cflags`
4643 _noaomodules
="arts $_noaomodules"
4649 if test "$_esd" = auto
; then
4651 if ( esd-config
--version ) >> "$TMPLOG" 2>&1 ; then
4655 int main(void) { return 0; }
4657 cc_check
`esd-config --libs` `esd-config --cflags` && tmp_run
&& _esd
=yes
4663 if test "$_esd" = yes ; then
4664 _def_esd
='#define USE_ESD 1'
4665 _aosrc
="$_aosrc ao_esd.c"
4666 _aomodules
="esd $_aomodules"
4667 _ld_esd
=`esd-config --libs`
4668 _inc_esd
=`esd-config --cflags`
4670 echocheck
"esd_get_latency()"
4673 int main(void) { return esd_get_latency(0); }
4675 cc_check
`esd-config --libs` `esd-config --cflags` && _esd_latency
=yes && _def_esd_latency
='#define HAVE_ESD_LATENCY'
4676 echores
"$_esd_latency"
4678 _def_esd
='#undef USE_ESD'
4679 _def_esd_latency
='#undef HAVE_ESD_LATENCY'
4680 _noaomodules
="esd $_noaomodules"
4684 if test "$_polyp" = auto
; then
4686 if ( pkg-config
--exists 'polyplib >= 0.6 polyplib-error >= 0.6 polyplib-mainloop >= 0.6' ) >> "$TMPLOG" 2>&1 ; then
4689 #include <polyp/polyplib.h>
4690 #include <polyp/mainloop.h>
4691 #include <polyp/polyplib-error.h>
4692 int main(void) { return 0; }
4694 cc_check
`pkg-config --libs --cflags polyplib polyplib-error polyplib-mainloop` && tmp_run
&& _polyp
=yes
4700 if test "$_polyp" = yes ; then
4701 _def_polyp
='#define USE_POLYP 1'
4702 _aosrc
="$_aosrc ao_polyp.c"
4703 _aomodules
="polyp $_aomodules"
4704 _ld_polyp
=`pkg-config --libs polyplib polyplib-error polyplib-mainloop`
4705 _inc_polyp
=`pkg-config --cflags polyplib polyplib-error polyplib-mainloop`
4707 _def_polyp
='#undef USE_POLYP'
4708 _noaomodules
="polyp $_noaomodules"
4713 if test "$_jack" = auto
; then
4717 #include <jack/jack.h>
4718 int main(void) { jack_client_new("test"); return 0; }
4720 if cc_check
-ljack ; then
4722 elif cc_check
`pkg-config --libs --cflags --silence-errors jack` ; then
4723 _ld_jack
="`pkg-config --libs jack`"
4724 _inc_jack
="`pkg-config --cflags jack`"
4730 if test "$_jack" = yes ; then
4731 _def_jack
='#define USE_JACK 1'
4732 _aosrc
="$_aosrc ao_jack.c"
4733 _aomodules
="jack $_aomodules"
4735 _noaomodules
="jack $_noaomodules"
4740 echocheck
"ALSA audio"
4741 if test "$_alsa" != no
; then
4744 #include <sys/asoundlib.h>
4745 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 5))
4746 #error "alsa version != 0.5.x"
4748 int main(void) { return 0; }
4750 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.5.x'
4753 #include <sys/asoundlib.h>
4754 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
4755 #error "alsa version != 0.9.x"
4757 int main(void) { return 0; }
4759 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.9.x-sys'
4761 #include <alsa/asoundlib.h>
4762 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
4763 #error "alsa version != 0.9.x"
4765 int main(void) { return 0; }
4767 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.9.x-alsa'
4770 #include <sys/asoundlib.h>
4771 #if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
4772 #error "alsa version != 1.0.x"
4774 int main(void) { return 0; }
4776 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='1.0.x-sys'
4778 #include <alsa/asoundlib.h>
4779 #if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
4780 #error "alsa version != 1.0.x"
4782 int main(void) { return 0; }
4784 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='1.0.x-alsa'
4786 _def_alsa5
='#undef HAVE_ALSA5'
4787 _def_alsa9
='#undef HAVE_ALSA9'
4788 _def_alsa1x
='#undef HAVE_ALSA1X'
4789 _def_sys_asoundlib_h
='#undef HAVE_SYS_ASOUNDLIB_H'
4790 _def_alsa_asoundlib_h
='#undef HAVE_ALSA_ASOUNDLIB_H'
4791 if test "$_alsaver" ; then
4793 if test "$_alsaver" = '0.5.x' ; then
4794 _aosrc
="$_aosrc ao_alsa5.c"
4795 _aomodules
="alsa5 $_aomodules"
4796 _def_alsa5
='#define HAVE_ALSA5 1'
4797 _def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
4798 _res_comment
="using alsa 0.5.x and sys/asoundlib.h"
4799 elif test "$_alsaver" = '0.9.x-sys' ; then
4800 _aosrc
="$_aosrc ao_alsa.c"
4801 _aomodules
="alsa $_aomodules"
4802 _def_alsa9
='#define HAVE_ALSA9 1'
4803 _def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
4804 _res_comment
="using alsa 0.9.x and sys/asoundlib.h"
4805 elif test "$_alsaver" = '0.9.x-alsa' ; then
4806 _aosrc
="$_aosrc ao_alsa.c"
4807 _aomodules
="alsa $_aomodules"
4808 _def_alsa9
='#define HAVE_ALSA9 1'
4809 _def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
4810 _res_comment
="using alsa 0.9.x and alsa/asoundlib.h"
4811 elif test "$_alsaver" = '1.0.x-sys' ; then
4812 _aosrc
="$_aosrc ao_alsa.c"
4813 _aomodules
="alsa $_aomodules"
4814 _def_alsa1x
="#define HAVE_ALSA1X 1"
4815 _def_alsa_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
4816 _res_comment
="using alsa 1.0.x and sys/asoundlib.h"
4817 elif test "$_alsaver" = '1.0.x-alsa' ; then
4818 _aosrc
="$_aosrc ao_alsa.c"
4819 _aomodules
="alsa $_aomodules"
4820 _def_alsa1x
="#define HAVE_ALSA1X 1"
4821 _def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
4822 _res_comment
="using alsa 1.0.x and alsa/asoundlib.h"
4825 _res_comment
="unknown version"
4827 _ld_alsa
="-lasound $_ld_dl $_ld_pthread"
4829 _noaomodules
="alsa $_noaomodules"
4834 echocheck
"Sun audio"
4835 if test "$_sunaudio" = auto
; then
4837 #include <sys/types.h>
4838 #include <sys/audioio.h>
4839 int main(void) { audio_info_t info; AUDIO_INITINFO(&info); return 0; }
4842 cc_check
&& _sunaudio
=yes
4844 if test "$_sunaudio" = yes ; then
4845 _def_sunaudio
='#define USE_SUN_AUDIO 1'
4846 _aosrc
="$_aosrc ao_sun.c"
4847 _aomodules
="sun $_aomodules"
4849 _def_sunaudio
='#undef USE_SUN_AUDIO'
4850 _noaomodules
="sun $_noaomodules"
4852 echores
"$_sunaudio"
4855 echocheck
"Sun mediaLib"
4856 if test "$_mlib" = auto
; then
4858 test -z "$_mlibdir" && _mlibdir
=/opt
/SUNWmlib
4861 int main(void) { mlib_VideoColorYUV2ABGR420(0,0,0,0,0,0,0,0,0); return 0; }
4863 cc_check
-I${_mlibdir}/include
-L${_mlibdir}/lib
-lmlib && _mlib
=yes
4865 if test "$_mlib" = yes ; then
4866 _def_mlib
='#define HAVE_MLIB 1'
4867 _inc_mlib
=" -I${_mlibdir}/include "
4868 _ld_mlib
=" -L${_mlibdir}/lib -R${_mlibdir}/lib -lmlib "
4870 _def_mlib
='#undef HAVE_MLIB'
4875 echocheck
"SGI audio"
4876 if test "$_sgiaudio" = auto
; then
4877 # check for SGI audio
4879 #include <dmedia/audio.h>
4880 int main(void) { return 0; }
4883 cc_check
&& _sgiaudio
=yes
4885 if test "$_sgiaudio" = "yes" ; then
4886 _def_sgiaudio
='#define USE_SGI_AUDIO 1'
4887 _ld_sgiaudio
='-laudio'
4888 _aosrc
="$_aosrc ao_sgi.c"
4889 _aomodules
="sgi $_aomodules"
4891 _def_sgiaudio
='#undef USE_SGI_AUDIO'
4892 _noaomodules
="sgi $_noaomodules"
4894 echores
"$_sgiaudio"
4897 echocheck
"VCD support"
4898 if linux || bsdos || freebsd || netbsd || sunos || darwin
; then
4899 _inputmodules
="vcd $_inputmodules"
4900 _def_vcd
='#define HAVE_VCD 1'
4903 _def_vcd
='#undef HAVE_VCD'
4904 _noinputmodules
="vcd $_noinputmodules"
4905 echores
"not supported on this OS"
4908 echocheck
"DVD support (libmpdvdkit)"
4909 if test "$_dvdkit" = auto
; then
4911 if linux || freebsd || netbsd || darwin || openbsd || win32 || sunos || hpux
; then
4912 test -f "./libmpdvdkit2/Makefile" && _dvdkit
=yes
4913 test -f "./libmpdvdkit/Makefile" && _dvdkit
=yes
4916 if test "$_dvdkit" = yes ; then
4917 if test "$_dvd" = yes ||
test "$_cdrom" = yes ||
test "$_cdio" = yes ||
test "$_dvdio" = yes ||
test "$_bsdi_dvd" = yes ||
test "$_hpux_scsi_h" = yes || darwin || win32
; then
4918 if test -f "./libmpdvdkit2/Makefile" ; then
4919 _inputmodules
="mpdvdkit2 $_inputmodules"
4920 _dvdread
=libmpdvdkit2
4924 _inputmodules
="mpdvdkit $_inputmodules"
4925 _dvdread
=libmpdvdkit
4928 _noinputmodules
="mpdvdkit $_noinputmodules"
4930 _def_dvd_linux
='#undef HAVE_LINUX_DVD_STRUCT'
4931 _def_dvd_bsd
='#undef HAVE_BSD_DVD_STRUCT'
4932 _dev_dvd_openbsd
='#undef HAVE_OPENBSD_DVD_STRUCT'
4933 _def_dvd_darwin
='#undef DARWIN_DVD_IOCTL'
4934 if linux || netbsd || openbsd || bsdos
; then
4935 _def_dvd_linux
='#define HAVE_LINUX_DVD_STRUCT 1'
4937 _dev_dvd_openbsd
='#define HAVE_OPENBSD_DVD_STRUCT 1'
4941 _def_dvd_bsd
='#define HAVE_BSD_DVD_STRUCT 1'
4944 _def_dvd_darwin
='#define DARWIN_DVD_IOCTL'
4949 _noinputmodules
="mpdvdkit $_noinputmodules"
4951 if test "$_dvdkit" = yes ||
test "$_dvdkit2" = yes; then
4958 echocheck
"DVD support (libdvdread)"
4959 if test "$_dvdread" = auto
; then
4961 #include <inttypes.h>
4962 #include <dvdread/dvd_reader.h>
4963 #include <dvdread/ifo_types.h>
4964 #include <dvdread/ifo_read.h>
4965 #include <dvdread/nav_read.h>
4966 int main(void) { return 0; }
4969 if test "$_dl" = yes; then
4971 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -ldvdread $_ld_dl && \
4975 _def_mpdvdkit
="#undef USE_MPDVDKIT"
4979 _def_dvdread
='#define USE_DVDREAD 1'
4980 _ld_dvdread
='-ldvdread'
4981 _inputmodules
="dvdread $_inputmodules"
4986 _def_dvdread
='#undef USE_DVDREAD'
4987 _noinputmodules
="dvdread $_noinputmodules"
4992 _def_dvdread
='#define USE_DVDREAD 1'
4993 _ld_dvdread
='-Llibmpdvdkit -lmpdvdkit'
4994 _noinputmodules
="dvdread $_noinputmodules"
4995 _def_mpdvdkit
="#define USE_MPDVDKIT 1"
4997 echores
"disabled by libmpdvdkit"
5001 _def_dvdread
='#define USE_DVDREAD 1'
5002 _ld_dvdread
='-Llibmpdvdkit2 -lmpdvdkit'
5003 _noinputmodules
="dvdread $_noinputmodules"
5004 _def_mpdvdkit
="#define USE_MPDVDKIT 2"
5006 echores
"disabled by libmpdvdkit2"
5010 if test "$_have_dvd" = yes ; then
5011 _def_have_dvd
='#define HAVE_DVD 1'
5013 _def_have_dvd
='#undef HAVE_DVD'
5016 # dvdnav disabled, it does not work
5017 # echocheck "DVD support (libdvdnav)"
5018 # if test "$_dvdnav" = yes ; then
5020 # #include <dvdnav.h>
5021 # int main(void) { dvdnav_t *dvd=0; return 0; }
5024 # test -n "$_dvdnavdir" && _legal_dvdnavdir=-L$_dvdnavdir/.libs
5025 # if test -z "$_dvdnavconfig" ; then
5026 # if ( dvdnav-config --version ) >/dev/null 2>&1 ; then
5027 # _dvdnavconfig="dvdnav-config"
5030 # test -z "$_dvdnavdir" && test -n "$_dvdnavconfig" && _dvdnavdir=`$_dvdnavconfig --cflags`
5032 # test "$_dvdkit" = no && test "$_dvdkit2" = no && _used_css=$_ld_css
5033 # cc_check $_inc_extra -I$_dvdnavdir $_legal_dvdnavdir -ldvdnav $_used_css $_ld_dl $_ld_pthread && _dvdnav=yes
5035 # if test "$_dvdnav" = yes ; then
5037 # _def_dvdnav='#define USE_DVDNAV 1'
5038 # if test -n "$_legal_dvdnavdir" ; then
5039 # _ld_css="$_ld_css $_legal_dvdnavdir -ldvdnav"
5040 # elif test -n "$_dvdnavconfig" ; then
5041 # _ld_css="$_ld_css `$_dvdnavconfig --libs`"
5043 # _ld_css="$_ld_css -ldvdnav"
5045 # if test -n "$_dvdnavconfig" ; then
5046 # _dvdnav_version=`$_dvdnavconfig --version | sed "s/\.//g"`
5047 # _def_dvdnav_version="#define DVDNAVVERSION $_dvdnav_version"
5049 # if test -n "$_dvdnavdir" ; then
5050 # _inc_extra="$_inc_extra -I$_dvdnavdir"
5052 # _inputmodules="dvdnav $_inputmodules"
5055 # _def_dvdnav='#undef USE_DVDNAV'
5056 # _noinputmodules="dvdnav $_noinputmodules"
5060 echocheck
"cdparanoia"
5061 if test "$_cdparanoia" = auto
; then
5063 #include <cdda_interface.h>
5064 #include <cdda_paranoia.h>
5065 // This need a better test. How ?
5066 int main(void) { return 1; }
5069 for _inc_tmp
in "$_inc_cdparanoia" "-I/usr/include/cdda" "-I/usr/local/include/cdda" ; do
5070 cc_check
$_inc_tmp $_ld_cdparanoia -lcdda_interface -lcdda_paranoia $_ld_lm && _inc_cdparanoia
="$_inc_tmp" && _cdparanoia
=yes && break
5073 if test "$_cdparanoia" = yes ; then
5074 _def_cdparanoia
='#define HAVE_CDDA'
5075 _inputmodules
="cdda $_inputmodules"
5076 _ld_cdparanoia
="$_ld_cdparanoia -lcdda_interface -lcdda_paranoia"
5077 openbsd
&& _ld_cdparanoia
="$_ld_cdparanoia -lutil"
5079 _def_cdparanoia
='#undef HAVE_CDDA'
5080 _noinputmodules
="cdda $_noinputmodules"
5082 echores
"$_cdparanoia"
5086 if test "$_libcdio" = auto
&& test "$_cdparanoia" = no
; then
5087 if ( pkg-config
--modversion libcdio
) > /dev
/null
2>&1 ; then
5090 #include <cdio/version.h>
5091 #include <cdio/cdda.h>
5092 #include <cdio/paranoia.h>
5095 printf("%s\n", CDIO_VERSION);
5101 for _inc_tmp
in "$_inc_libcdio" "-I/usr/include/cdio" "-I/usr/local/include/cdio" ; do
5102 cc_check
`pkg-config --cflags --libs libcdio` $_inc_tmp $_ld_libcdio -lcdio_cdda -lcdio_paranoia $_ld_lm && _inc_libcdio
="$_inc_tmp" && ( $TMPO >> "$TMPLOG" ) && _libcdio
=yes && break
5108 if test "$_libcdio" = yes && test "$_cdparanoia" = no
; then
5109 _def_libcdio
='#define HAVE_LIBCDIO'
5110 _def_cdparanoia
='#define HAVE_CDDA'
5111 _def_havelibcdio
='yes'
5112 _inputmodules
="cdda $_inputmodules"
5113 _inc_libcdio
=`pkg-config --cflags libcdio`
5114 _ld_libcdio
=`pkg-config --libs libcdio`
5115 _ld_cdparanoia
="$_ld_cdparanoia -lcdio_cdda -lcdio_paranoia -lcdio"
5117 if test "$_cdparanoia" = yes ; then
5118 _libcdio
="no (using cdparanoia)"
5122 _def_libcdio
='#undef HAVE_LIBCDIO'
5123 _def_havelibcdio
='no'
5128 echocheck
"freetype >= 2.0.9"
5130 # freetype depends on iconv
5131 if test "$_iconv" = no
; then
5133 _res_comment
="iconv support needed"
5136 if test "$_freetype" = auto
; then
5137 if ( $_freetypeconfig --version ) >/dev
/null
2>&1 ; then
5140 #include <ft2build.h>
5141 #include FT_FREETYPE_H
5142 #if ((FREETYPE_MAJOR < 2) || ((FREETYPE_MINOR == 0) && (FREETYPE_PATCH < 9)))
5143 #error "Need FreeType 2.0.9 or newer"
5148 FT_Int major=-1,minor=-1,patch=-1;
5149 int err=FT_Init_FreeType(&library);
5151 printf("Couldn't initialize freetype2 lib, err code: %d\n",err);
5154 FT_Library_Version(library,&major,&minor,&patch); // in v2.1.0+ only :(((
5155 printf("freetype2 header version: %d.%d.%d library version: %d.%d.%d\n",
5156 FREETYPE_MAJOR,FREETYPE_MINOR,FREETYPE_PATCH,
5157 (int)major,(int)minor,(int)patch );
5158 if(major!=FREETYPE_MAJOR || minor!=FREETYPE_MINOR){
5159 printf("Library and header version mismatch! Fix it in your distribution!\n");
5166 cc_check
`$_freetypeconfig --cflags` `$_freetypeconfig --libs` && tmp_run
&& _freetype
=yes
5171 if test "$_freetype" = yes ; then
5172 _def_freetype
='#define HAVE_FREETYPE'
5173 _inc_freetype
=`$_freetypeconfig --cflags`
5174 _ld_freetype
=`$_freetypeconfig --libs`
5176 _def_freetype
='#undef HAVE_FREETYPE'
5178 echores
"$_freetype"
5180 if test "$_freetype" = no
; then
5182 _res_comment
="freetype support needed"
5184 echocheck
"fontconfig"
5185 if test "$_fontconfig" = auto
; then
5188 #include <fontconfig/fontconfig.h>
5193 printf("Couldn't initialize fontconfig lib\n");
5201 if cc_check
-lfontconfig ; then
5202 _ld_fontconfig
="-lfontconfig"
5203 elif cc_check
`pkg-config --cflags --libs fontconfig` ; then
5204 _inc_fontconfig
=`pkg-config --cflags fontconfig`
5205 _ld_fontconfig
=`pkg-config --libs fontconfig`
5210 if test "$_fontconfig" = yes ; then
5211 _def_fontconfig
='#define HAVE_FONTCONFIG'
5213 _def_fontconfig
='#undef HAVE_FONTCONFIG'
5215 echores
"$_fontconfig"
5217 echocheck
"fribidi with charsets"
5218 if test "$_fribidi" = auto
; then
5219 if ( $_fribidiconfig --version ) >/dev
/null
2>&1 ; then
5222 /* workaround for fribidi 0.10.4 and below */
5223 #define FRIBIDI_CHARSET_UTF8 FRIBIDI_CHAR_SET_UTF8
5224 #include <fribidi/fribidi.h>
5227 if(fribidi_parse_charset("UTF-8") != FRIBIDI_CHAR_SET_UTF8) {
5228 printf("Fribidi headers are not consistents with the library!\n");
5235 cc_check
`$_fribidiconfig --cflags` `$_fribidiconfig --libs` && tmp_run
&& _fribidi
=yes
5240 if test "$_fribidi" = yes ; then
5241 _def_fribidi
='#define USE_FRIBIDI'
5242 _inc_fribidi
=`$_fribidiconfig --cflags`
5243 _ld_fribidi
=`$_fribidiconfig --libs`
5245 _def_fribidi
='#undef USE_FRIBIDI'
5251 if test "$_enca" = auto
; then
5258 langs = enca_get_languages(&langcnt);
5263 cc_check
-lenca $_ld_lm && _enca
=yes
5265 if test "$_enca" = yes ; then
5266 _def_enca
='#define HAVE_ENCA 1'
5269 _def_enca
='#undef HAVE_ENCA'
5277 int main(void) { (void) inflate(0, Z_NO_FLUSH); return 0; }
5280 cc_check
-lz && _zlib
=yes
5281 if test "$_zlib" = yes ; then
5282 _def_zlib
='#define HAVE_ZLIB 1'
5285 _def_zlib
='#undef HAVE_ZLIB'
5291 if test "$_rtc" = auto
; then
5293 #include <sys/ioctl.h>
5295 #include <linux/rtc.h>
5298 #define RTC_PIE_ON RTCIO_PIE_ON
5300 int main(void) { return RTC_PIE_ON; }
5303 cc_check
&& _rtc
=yes
5305 if test "$_rtc" = yes ; then
5306 _def_rtc
='#define HAVE_RTC 1'
5308 _def_rtc
='#undef HAVE_RTC'
5313 echocheck
"external liblzo support"
5314 if test "$_liblzo" = auto
; then
5318 int main(void) { lzo_init();return 0; }
5320 cc_check
-llzo && _liblzo
=yes
5322 if test "$_liblzo" = yes ; then
5323 _def_liblzo
='#define USE_LIBLZO 1'
5325 _codecmodules
="liblzo $_codecmodules"
5327 _def_liblzo
='#undef USE_LIBLZO'
5328 _nocodecmodules
="liblzo $_nocodecmodules"
5333 echocheck
"mad support"
5334 if test "$_mad" = auto
; then
5338 int main(void) { return 0; }
5340 cc_check
$_madlibdir -lmad && _mad
=yes
5342 if test "$_mad" = yes ; then
5343 _def_mad
='#define USE_LIBMAD 1'
5345 _codecmodules
="libmad $_codecmodules"
5347 _def_mad
='#undef USE_LIBMAD'
5348 _nocodecmodules
="libmad $_nocodecmodules"
5353 if test "$_toolame" = auto
; then
5355 #include <toolame.h>
5356 int main(void) { toolame_init(); return 0; }
5359 _toolame_extraflags
=""
5360 _toolame_lib
="-ltoolame"
5361 if test -n "$_toolamedir"; then
5362 _toolame_extraflags
="-I$_toolamedir -L$_toolamedir"
5364 cc_check
$_toolame_extraflags $_toolame_lib $_ld_lm && _toolame
=yes
5366 if test "$_toolame" = yes ; then
5367 _def_toolame
='#define HAVE_TOOLAME 1'
5368 _codecmodules
="$_codecmodules toolame"
5370 _def_toolame
='#undef HAVE_TOOLAME'
5372 _nocodecmodules
="toolame $_nocodecmodules"
5374 if test "$_toolamedir" ; then
5375 _res_comment
="using $_toolamedir"
5380 if test "$_twolame" = auto
; then
5382 #include <twolame.h>
5383 int main(void) { twolame_init(); return 0; }
5386 _twolame_lib
="-ltwolame"
5387 cc_check
$_twolame_lib $_ld_lm && _twolame
=yes
5389 if test "$_twolame" = yes ; then
5390 _def_twolame
='#define HAVE_TWOLAME 1'
5391 _codecmodules
="$_codecmodules twolame"
5393 _def_twolame
='#undef HAVE_TWOLAME'
5395 _nocodecmodules
="twolame $_nocodecmodules"
5399 echocheck
"OggVorbis support"
5400 if test "$_tremor_internal" = yes; then
5402 elif test "$_vorbis" = auto
; then
5405 #include <vorbis/codec.h>
5406 int main(void) { vorbis_packet_blocksize(0,0); return 0; }
5408 cc_check
-lvorbis -logg $_ld_lm && _vorbis
=yes
5410 if test "$_vorbis" = yes ; then
5411 _def_vorbis
='#define HAVE_OGGVORBIS 1'
5412 if test "$_tremor_internal" = yes ; then
5413 # do not set _ld_vorbis as it is resolved separately
5414 # mp3lame support for vorbis is deprecated so don't care
5415 _def_tremor
='#define TREMOR 1'
5416 if test "$_tremor_low" = yes ; then
5417 _tremor_flags
='-D_LOW_ACCURACY_'
5421 _codecmodules
="tremor(internal) $_codecmodules"
5422 elif test "$_tremor" = yes ; then
5423 _def_tremor
='#define TREMOR 1'
5424 _ld_vorbis
='-lvorbisidec'
5425 _codecmodules
="tremor $_codecmodules"
5427 _def_tremor
='#undef TREMOR'
5428 _ld_vorbis
='-lvorbis -logg'
5429 _codecmodules
="libvorbis $_codecmodules"
5432 _def_vorbis
='#undef HAVE_OGGVORBIS'
5433 _def_tremor
='#undef TREMOR'
5434 _nocodecmodules
="libvorbis $_nocodecmodules"
5436 if test "$_vorbis" = yes -a "$_tremor_internal" = yes -a "$_tremor_low" = yes ; then
5437 _res_comment
="internal low accuracy Tremor"
5438 elif test "$_vorbis" = yes -a "$_tremor_internal" = yes ; then
5439 _res_comment
="internal Tremor"
5440 elif test "$_vorbis" = yes -a "$_tremor" = yes ; then
5441 _res_comment
="Tremor"
5445 echocheck
"libspeex (version >= 1.1 required)"
5446 if test "$_speex" = auto
; then
5449 #include <speex/speex.h>
5453 speex_decode_int(dec, &bits, dec);
5456 cc_check
-lspeex $_ld_lm && _speex
=yes
5458 if test "$_speex" = yes ; then
5459 _def_speex
='#define HAVE_SPEEX 1'
5461 _codecmodules
="speex $_codecmodules"
5463 _def_speex
='#undef HAVE_SPEEX'
5464 _nocodecmodules
="speex $_nocodecmodules"
5468 echocheck
"OggTheora support"
5469 if test "$_theora" = auto
; then
5472 #include <theora/theora.h>
5476 /* theora is in flux, make sure that all interface routines and
5477 * datatypes exist and work the way we expect it, so we don't break
5487 theora_info_init (&inf);
5488 theora_comment_init (&tc);
5492 /* we don't want to execute this kind of nonsense; just for making sure
5493 * that compilation works... */
5494 memset(&op, 0, sizeof(op));
5495 r = theora_decode_header (&inf, &tc, &op);
5496 r = theora_decode_init (&st, &inf);
5497 t = theora_granule_time (&st, op.granulepos);
5498 r = theora_decode_packetin (&st, &op);
5499 r = theora_decode_YUVout (&st, &yuv);
5505 for _ld_theora
in "`pkg-config --silence-errors --libs --cflags theora`" "-ltheora"; do
5506 cc_check
$_ld_theora && _theora
=yes && break
5508 if test "$_theora" = no
&& test "$_tremor_internal" = yes; then
5509 for _ld_theora
in "`pkg-config --silence-errors --libs --cflags theora`" "-ltheora"; do
5510 cc_check
-I. tremor
/bitwise.c
$_ld_theora && _theora
=yes && break
5514 if test "$_theora" = yes ; then
5515 _def_theora
='#define HAVE_OGGTHEORA 1'
5516 _codecmodules
="libtheora $_codecmodules"
5517 # when --enable-theora is forced, we'd better provide a probably sane
5518 # $_ld_theora than nothing
5519 test -z "$_ld_theora" && _ld_theora
="-ltheora -logg"
5521 _def_theora
='#undef HAVE_OGGTHEORA'
5522 _nocodecmodules
="libtheora $_nocodecmodules"
5527 echocheck
"mp3lib support"
5528 if test "$_mp3lib" = yes ; then
5529 _def_mp3lib
='#define USE_MP3LIB 1'
5530 _codecmodules
="mp3lib $_codecmodules"
5532 _def_mp3lib
='#undef USE_MP3LIB'
5533 _nocodecmodules
="mp3lib $_nocodecmodules"
5537 echocheck
"liba52 support"
5538 if test "$_liba52" = yes ; then
5539 _def_liba52
='#define USE_LIBA52 1'
5540 _codecmodules
="liba52 $_codecmodules"
5542 _def_liba52
='#undef USE_LIBA52'
5543 _nocodecmodules
="liba52 $_nocodecmodules"
5547 echocheck
"libdts support"
5548 if test "$_libdts" = auto
; then
5551 #include <inttypes.h>
5553 int main(void) { dts_init (0); return 0; }
5555 cc_check
$_inc_libdts $_ld_libdts -ldts $_ld_lm && _libdts
=yes
5557 if test "$_libdts" = yes ; then
5558 _def_libdts
='#define CONFIG_DTS 1'
5559 _ld_libdts
="$_ld_libdts -ldts"
5560 _codecmodules
="libdts $_codecmodules"
5562 _def_libdts
='#undef CONFIG_DTS'
5563 _nocodecmodules
="libdts $_nocodecmodules"
5567 echocheck
"libmpeg2 support"
5568 if test "$_libmpeg2" = yes ; then
5569 _def_libmpeg2
='#define USE_LIBMPEG2 1'
5570 _codecmodules
="libmpeg2 $_codecmodules"
5572 _def_libmpeg2
='#undef USE_LIBMPEG2'
5573 _nocodecmodules
="libmpeg2 $_nocodecmodules"
5575 echores
"$_libmpeg2"
5577 echocheck
"libmpcdec (musepack, version >= 1.2.1 required)"
5578 if test "$_musepack" = auto
; then
5581 #include <mpcdec/mpcdec.h>
5583 mpc_streaminfo info;
5584 mpc_decoder decoder;
5585 mpc_decoder_set_streaminfo(&decoder, &info);
5586 mpc_decoder_decode_frame(&decoder, NULL, 0, NULL);
5589 cc_check
-lmpcdec $_ld_lm && _musepack
=yes
5591 if test "$_musepack" = yes ; then
5592 _def_musepack
='#define HAVE_MUSEPACK 1'
5593 _ld_musepack
='-lmpcdec'
5594 _codecmodules
="musepack $_codecmodules"
5596 _def_musepack
='#undef HAVE_MUSEPACK'
5597 _nocodecmodules
="musepack $_nocodecmodules"
5599 echores
"$_musepack"
5602 echocheck
"Matroska support"
5603 if test "$_matroska_internal" = yes ; then
5604 _inputmodules
="matroska $_inputmodules"
5605 _def_matroska
='#define HAVE_MATROSKA 1'
5607 _noinputmodules
="matroska $_noinputmodules"
5608 _def_matroska
='#undef HAVE_MATROSKA'
5610 echores
"$_matroska_internal"
5612 echocheck
"FAAC (AAC encoder) support"
5613 if test "$_faac" = auto
; then
5615 #include <inttypes.h>
5617 int main(void) { unsigned long x, y; faacEncOpen(48000, 2, &x, &y); return 0; }
5620 for _ld_tmp
in "-lfaac" "-lfaac -lmp4v2 -lstdc++" ; do
5621 cc_check
-c -O4 $_ld_tmp $_ld_lm && _ld_faac
="$_ld_tmp" && _faac
=yes && break
5624 if test "$_faac" = yes ; then
5625 _def_faac
="#define HAVE_FAAC 1"
5626 _codecmodules
="faac $_codecmodules"
5628 _def_faac
="#undef HAVE_FAAC"
5629 _nocodecmodules
="faac $_nocodecmodules"
5633 echocheck
"internal FAAD2 (AAC) support"
5634 _inc_faad
="-I`pwd`/libfaad2"
5635 if test "$_faad_internal" = auto
; then
5636 # the faad check needs a config.h file
5637 if not
test -f "config.h" ; then
5638 cat > config.h
<< EOF
5639 /* C99 lrintf function available */
5643 # internal faad: check if our dear gcc is able to compile it...
5644 cp "`pwd`/libfaad2/cfft.c" $TMPC
5645 if ( cc_check
-c -O4 $_march $_mcpu $_pipe -ffast-math -fomit-frame-pointer -D_GNU_SOURCE $_inc_faad ); then
5648 _faad_internal
="no (broken gcc)"
5651 if test "$_faad_internal" = yes ; then
5652 _def_faad_internal
="#define USE_INTERNAL_FAAD 1"
5655 _def_faad_internal
="#undef USE_INTERNAL_FAAD"
5658 echores
"$_faad_internal"
5661 echocheck
"external FAAD2 (AAC) support"
5662 if test "$_faad_external" != no
; then
5664 _inc_faad
="$_inc_extra"
5665 # external faad: check if it's really faad2 :)
5666 if test "$_faad_external" = auto
; then
5670 #ifndef FAAD_MIN_STREAMSIZE
5671 #error Too old version
5673 int main(void) { faacDecHandle testhand; faacDecFrameInfo testinfo; testhand = faacDecOpen(); faacDecInit(0, 0, 0, 0, 0); return 0; }
5675 cc_check
$_inc_faad $_ld_faad $_ld_lm && _faad_external
=yes
5678 echores
"$_faad_external"
5680 if test "$_faad_external" = yes; then
5681 _def_faad
='#define HAVE_FAAD 1'
5682 _codecmodules
="faad2(external) $_codecmodules"
5683 elif test "$_faad_internal" = yes; then
5684 _def_faad
='#define HAVE_FAAD 1'
5685 _codecmodules
="faad2(internal) $_codecmodules"
5687 _def_faad
='#undef HAVE_FAAD'
5688 _nocodecmodules
="faad2 $_nocodecmodules"
5693 echocheck
"LADSPA plugin support"
5694 if test "$_ladspa" = auto
; then
5699 const LADSPA_Descriptor *ld = NULL;
5704 cc_check
&& _ladspa
=yes
5706 if test "$_ladspa" = yes; then
5707 _def_ladspa
="#define HAVE_LADSPA"
5708 _afsrc
="$_afsrc af_ladspa.c"
5709 _afmodules
="ladspa $_afmodules"
5711 _def_ladspa
="#undef HAVE_LADSPA"
5712 _noafmodules
="ladspa $_noafmodules"
5717 if test "$_win32" = auto
; then
5721 _win32
=no
# x86 arch only
5725 if test "$_win32" != no
; then
5726 if test -z "$_win32libdir" ; then
5727 for I
in "$_libdir/codecs" "$_libdir/win32" /usr
/local
/lib
/codecs
/usr
/lib
/codecs
/usr
/local
/lib
/win32
/usr
/lib
/win32
; do
5728 if test -d "$I" ; then
5736 echocheck
"Win32 codec DLL support"
5737 if test "$_win32" = auto
; then
5739 test -n "$_win32libdir" && _win32
=yes
5741 if test "$_win32" = yes ; then
5742 _def_win32
='#define USE_WIN32DLL 1'
5743 _res_comment
="using $_win32libdir"
5745 _def_win32
='#undef USE_WIN32DLL'
5746 _nocodecmodules
="win32 $_nocodecmodules"
5751 if test "$_win32" != no
; then
5752 _def_win32_loader
='#undef WIN32_LOADER'
5753 echocheck
"Win32 loader support"
5754 _ld_win32
='loader/libloader.a'
5755 _dep_win32
='loader/libloader.a'
5756 _codecmodules
="win32 $_codecmodules"
5758 x86
&& _ld_win32
="$_ld_win32 -li386"
5761 _def_win32_loader
='#define WIN32_LOADER 1'
5764 _ld_win32libs
="$_ld_win32libs -ladvapi32 -lole32"
5765 echores
"no (using native windows)"
5769 echocheck
"DirectShow"
5772 if test "$_dshow" != no
; then
5774 # check if compiler supports C++ and C++-libs are installed correctly
5775 cat > "$TMPCPP" << EOF
5779 public: int myreturn(void);
5781 int myclass::myreturn(void) { ret = 0; return ret ; }
5782 int main(void) { myclass myobject; return myobject.myreturn(); }
5784 if cxx_check
&& tmp_run
; then
5786 echores
"yes (C++ is ok)"
5791 Your C++ runtime environment is broken.
5793 Hints: Does $_cc support C++? Do you have you a C++ compiler installed?
5794 Are the C++ libraries correctly installed?
5795 Check for libstdc++ and in (/etc/)ld.so.conf.
5797 If you do not need DirectShow support, you can also use:
5798 ./configure --disable-dshow <your-normal-configure-options>
5799 to disable building the C++ based DirectShow code.
5802 die
"$_cc's C++ is broken"
5810 if test "$_dshow" = yes ; then
5811 _def_dshow
='#define USE_DIRECTSHOW 1'
5812 _ld_dshow
='loader/dshow/libDS_Filter.a loader/dmo/libDMO_Filter.a'
5813 _dep_dshow
='loader/dshow/libDS_Filter.a loader/dmo/libDMO_Filter.a'
5814 _codecmodules
="dshow/dmo $_codecmodules"
5816 _def_dshow
='#undef USE_DIRECTSHOW'
5817 _nocodecmodules
="dshow/dmo $_nocodecmodules"
5821 echocheck
"XAnim DLL"
5822 if test "$_xanim" = auto
; then
5824 _res_comment
="dynamic loader support needed"
5825 if test "$_dl" = yes ; then
5826 _res_comment
="no suitable directory found - see DOCS/HTML/$_doc_lang/codecs.html"
5827 if test -z "$_xanimlibdir" ; then
5828 for I
in "$_libdir/codecs" /usr
/local
/lib
/xanim
/mods
/usr
/lib
/xanim
/mods
/usr
/lib
/xanim
$XANIM_MOD_DIR ; do
5829 if test -d "$I" ; then
5835 test "$_xanimlibdir" && _xanim
=yes
5838 if test "$_xanim" = yes ; then
5839 _def_xanim
='#define USE_XANIM 1'
5840 _def_xanim_path
="#define XACODEC_PATH \"$_xanimlibdir\""
5841 _codecmodules
="xanim $_codecmodules"
5842 _res_comment
="using $_xanimlibdir"
5844 _def_xanim
='#undef USE_XANIM'
5845 _def_xanim_path
='#undef XACODEC_PATH'
5846 _nocodecmodules
="xanim $_nocodecmodules"
5850 echocheck
"RealPlayer DLL"
5851 if test "$_real" = auto
; then
5853 _res_comment
="dynamic loader support needed"
5854 if test "$_dl" = yes ||
test "$_win32" = yes ; then
5855 # if test "$_dl" = yes ; then
5856 _res_comment
="tested only on Linux/FreeBSD/NetBSD/Cygwin/MinGW/Darwin"
5857 if linux || freebsd || netbsd || win32 || darwin
; then
5858 _res_comment
="no suitable directory found - see DOCS/HTML/$_doc_lang/codecs.html"
5859 if test -z "$_reallibdir" ; then
5860 for I
in "$_libdir/codecs" "$_libdir/real" /usr
/lib
/real \
5861 /usr
/lib
/RealPlayer
{9,8,}/Codecs
/usr
/local
/RealPlayer
{9,8,}/Codecs \
5862 /usr
/local
/lib
/RealPlayer
{9,8,}/Codecs
/opt
/RealPlayer
{9,8,}/{Real
/,}Codecs \
5863 {~
,}/Applications
/RealOne\ Player.app
/Contents
/MacOS
/Library
/Codecs \
5865 if test -d "$I" ; then
5871 test "$_reallibdir" && _real
=yes
5875 if test "$_real" = yes ; then
5876 _def_real
='#define USE_REALCODECS 1'
5877 _def_real_path
="#define REALCODEC_PATH \"$_reallibdir\""
5878 _codecmodules
="real $_codecmodules"
5879 _res_comment
="using $_reallibdir"
5881 _def_real
='#undef USE_REALCODECS'
5882 _def_real_path
="#undef REALCODEC_PATH"
5883 _nocodecmodules
="real $_nocodecmodules"
5888 echocheck
"LIVE555 Streaming Media libraries"
5889 if test "$_live" = auto
&& test "$_network" = yes ; then
5890 cat > $TMPCPP << EOF
5891 #include <liveMedia.hh>
5892 #if (LIVEMEDIA_LIBRARY_VERSION_INT < 1090195200)
5893 #error Please upgrade to version 2004.07.19 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
5899 for I
in "$_livelibdir" "$_libdir/live" "/usr/lib/live" "/usr/local/live" "/usr/local/lib/live" ; do
5900 cxx_check
-I$I/liveMedia
/include
-I$I/UsageEnvironment
/include
-I$I/groupsock
/include
&& _livelibdir
=$I && _live
=yes && break
5902 if test "$_live" != yes ; then
5903 if cxx_check
-I/usr
/include
/liveMedia
-I/usr
/include
/UsageEnvironment
-I/usr
/include
/groupsock
; then
5908 if test "$_live" = yes && test "$_network" = yes ; then
5909 echores
"yes (using $_livelibdir)"
5910 _def_live
='#define STREAMING_LIVE555 1'
5911 _live_libs_def
="# LIVE555 Streaming Media libraries:
5912 LIVE_LIB_DIR = $_livelibdir
5913 LIVE_LIBS = \$(LIVE_LIB_DIR)/liveMedia/libliveMedia.a
5914 LIVE_LIBS += \$(LIVE_LIB_DIR)/groupsock/libgroupsock.a
5915 LIVE_LIBS += \$(LIVE_LIB_DIR)/UsageEnvironment/libUsageEnvironment.a
5916 LIVE_LIBS += \$(LIVE_LIB_DIR)/BasicUsageEnvironment/libBasicUsageEnvironment.a
5917 LIVE_LIBS += -lstdc++
5918 LIVE_INCLUDES = -I\$(LIVE_LIB_DIR)/liveMedia/include
5919 LIVE_INCLUDES += -I\$(LIVE_LIB_DIR)/UsageEnvironment/include
5920 LIVE_INCLUDES += -I\$(LIVE_LIB_DIR)/BasicUsageEnvironment/include
5921 LIVE_INCLUDES += -I\$(LIVE_LIB_DIR)/groupsock/include"
5922 _ld_live
='$(LIVE_LIBS)'
5923 _inputmodules
="live555 $_inputmodules"
5924 elif test "$_live_dist" = yes && test "$_network" = yes ; then
5925 echores
"yes (using distribution version)"
5927 _def_live
='#define STREAMING_LIVE555 1'
5928 _live_libs_def
="# LIVE555 Streaming Media libraries:
5929 LIVE_LIB_DIR = $_livelibdir
5930 LIVE_LIBS = -lliveMedia
5931 LIVE_LIBS += -lgroupsock
5932 LIVE_LIBS += -lUsageEnvironment
5933 LIVE_LIBS += -lBasicUsageEnvironment
5934 LIVE_LIBS += -lstdc++
5935 LIVE_INCLUDES = -I/usr/include/liveMedia
5936 LIVE_INCLUDES += -I/usr/include/UsageEnvironment
5937 LIVE_INCLUDES += -I/usr/include/BasicUsageEnvironment
5938 LIVE_INCLUDES += -I/usr/include/groupsock"
5939 _ld_live
='$(LIVE_LIBS)'
5940 _inputmodules
="live555 $_inputmodules"
5943 _def_live
='#undef STREAMING_LIVE555'
5944 _noinputmodules
="live555 $_noinputmodules"
5947 echocheck
"FFmpeg libavutil (static)"
5948 if test -d libavutil
; then
5953 echores
"$_libavutil"
5955 echocheck
"FFmpeg libavcodec (static)"
5956 if test "$_libavcodec" = auto
; then
5957 # Note: static linking is preferred to dynamic linking
5959 _res_comment
="see DOCS/HTML/$_doc_lang/codecs.html"
5960 if test -d libavcodec
&& test -f libavcodec
/utils.c
; then
5961 _res_comment
="old ffmpeg version, use CVS !"
5962 if grep avcodec_find_encoder_by_name libavcodec
/utils.c
> /dev
/null
2>&1 ; then
5963 # check if libavutil is a required
5965 #include "libavcodec/avcodec.h"
5966 #if LIBAVCODEC_BUILD >= 3211265
5967 #error We need libavutil!
5969 int main(void) { return 0; }
5972 if cc_check
-I.
-I.
/libavutil
; then
5973 _libavutil_required
="no"
5975 _libavutil_required
="yes"
5977 _res_comment
="libavutil availability does not fit libavcodec version"
5978 if test "$_libavutil_required" = "$_libavutil"; then
5985 echores
"$_libavcodec"
5987 echocheck
"FFmpeg libavformat (static)"
5988 if test "$_libavformat" = auto
; then
5989 # Note: static linking is preferred to dynamic linking
5991 if test -d libavformat
&& test -f libavformat
/utils.c
; then
5995 echores
"$_libavformat"
5997 _def_haveffpostprocess
='no'
5998 if test -d libavcodec
&& test -f libavcodec
/libpostproc
/postprocess.h
; then
5999 _def_haveffpostprocess
='yes'
6002 if test "$_libavcodec" != yes ; then
6003 echocheck
"FFmpeg libavcodec (dynamic)"
6004 if test "$_libavcodecso" = auto
; then
6006 _res_comment
="libavcodec.so is broken/obsolete"
6007 # FIXME : check for avcodec_find_encoder_by_name() for mencoder
6009 #define FF_POSTPROCESS 1
6010 #include <ffmpeg/avcodec.h>
6012 avcodec_find_encoder_by_name("");
6016 if cc_check
-lavcodec $_ld_lm ; then
6018 _res_comment
="using libavcodec.so, but static libavcodec is recommended"
6021 echores
"$_libavcodecso"
6024 _def_libavcodec
='#undef USE_LIBAVCODEC'
6025 _def_libavcodecso
='#undef USE_LIBAVCODEC_SO'
6026 _def_ffpostprocess
='#undef FF_POSTPROCESS'
6027 if test "$_libavcodec" = yes ; then
6028 _def_libavcodec
='#define USE_LIBAVCODEC 1'
6029 _ld_libavcodec
='libavcodec/libavcodec.a'
6030 _dep_libavcodec
='libavcodec/libavcodec.a'
6031 _def_ffpostprocess
='#define FF_POSTPROCESS 1'
6032 _codecmodules
="libavcodec $_codecmodules"
6033 if test "$_libavutil" = yes; then
6034 _ld_libavutil
='libavutil/libavutil.a'
6035 _dep_libavutil
='libavutil/libavutil.a'
6037 elif test "$_libavcodecso" = yes ; then
6038 _def_libavcodec
='#define USE_LIBAVCODEC 1'
6039 _def_libavcodecso
='#define USE_LIBAVCODEC_SO 1'
6040 _ld_libavcodec
='-lavcodec'
6041 _codecmodules
="libavcodec.so $_codecmodules"
6043 _nocodecmodules
="libavcodec $_nocodecmodules"
6046 _def_libavformat
='#undef USE_LIBAVFORMAT'
6047 _def_libavformat_win32
='#undef CONFIG_WIN32'
6048 if test "$_libavformat" = yes ; then
6049 _def_libavformat
='#define USE_LIBAVFORMAT 1'
6050 _ld_libavformat
='libavformat/libavformat.a'
6051 _dep_libavformat
='libavformat/libavformat.a'
6053 _def_libavformat_win32
='#define CONFIG_WIN32 1'
6057 echocheck
"amr narrowband"
6058 if test "$_amr_nb" = auto
; then
6060 if test -f libavcodec
/amr_float
/sp_dec.c
; then
6061 if test "$_libavcodec" = yes ; then
6064 _res_comment
="libavcodec (static) is required by amr_nb, sorry"
6068 if test "$_amr_nb" = yes ; then
6069 _def_amr_nb
='#define AMR_NB 1'
6071 _def_amr_nb
='#undef AMR_NB'
6073 echores
"$_amr_nb $_echomsg"
6075 echocheck
"amr narrowband, fixed point"
6076 if test "$_amr_nb_fixed" = auto
; then
6078 if test -f libavcodec
/amr
/dtx_dec.c
; then
6079 if test "$_libavcodec" = yes ; then
6080 if test "$_amr_nb" = no
; then
6083 _res_comment
="disabled by amr_nb"
6086 _res_comment
="libavcodec (static) is required by amr_nb-fixed, sorry"
6090 if test "$_amr_nb_fixed" = yes ; then
6091 _def_amr_nb
='#define AMR_NB 1'
6092 _def_amr_nb_fixed
='#define AMR_NB_FIXED 1'
6095 _def_amr_nb_fixed
='#undef AMR_NB_FIXED'
6097 echores
"$_amr_nb_fixed"
6099 if test "$_amr_nb" = yes ; then
6100 _codecmodules
="amr_nb $_codecmodules"
6102 _nocodecmodules
="amr_nb $_nocodecmodules"
6105 echocheck
"amr wideband"
6106 if test "$_amr_wb" = auto
; then
6108 if test -f libavcodec
/amrwb_float
/dec_dtx.c
; then
6109 if test "$_libavcodec" = yes ; then
6112 _res_comment
="libavcodec (static) is required by amr_wb, sorry"
6116 if test "$_amr_wb" = yes ; then
6117 _def_amr_wb
='#define AMR_WB 1'
6118 _codecmodules
="amr_wb $_codecmodules"
6120 _def_amr_wb
='#undef AMR_WB'
6121 _nocodecmodules
="amr_wb $_nocodecmodules"
6125 echocheck
"libdv-0.9.5+"
6126 if test "$_libdv" = auto
; then
6129 #include <libdv/dv.h>
6130 int main(void) { dv_encoder_t* enc=dv_encoder_new(1,1,1); return 0; }
6132 cc_check
-ldv $_ld_lm && _libdv
=yes
6134 if test "$_libdv" = yes ; then
6135 _def_libdv
='#define HAVE_LIBDV095 1'
6137 _codecmodules
="libdv $_codecmodules"
6139 _def_libdv
='#undef HAVE_LIBDV095'
6140 _nocodecmodules
="libdv $_nocodecmodules"
6145 if test "$_zr" = auto
; then
6146 #36067's seem to identify themselves as 36057PQC's, so the line
6147 #below should work for 36067's and 36057's.
6148 if grep -e "Multimedia video controller: Zoran Corporation ZR36057" /proc
/pci
> /dev
/null
2>&1; then
6154 if test "$_zr" = yes ; then
6155 if test "$_libavcodec" = yes ; then
6156 _def_zr
='#define HAVE_ZR 1'
6157 _vosrc
="$_vosrc vo_zr2.c vo_zr.c jpeg_enc.c"
6158 _vomodules
="zr zr2 $_vomodules"
6160 _res_comment
="libavcodec (static) is required by zr, sorry"
6161 _novomodules
="zr $_novomodules"
6162 _def_zr
='#undef HAVE_ZR'
6165 _def_zr
='#undef HAVE_ZR'
6166 _novomodules
="zr zr2 $_novomodules"
6171 if test "$_bl" = yes ; then
6172 _def_bl
='#define HAVE_BL 1'
6173 _vosrc
="$_vosrc vo_bl.c"
6174 _vomodules
="bl $_vomodules"
6176 _def_bl
='#undef HAVE_BL'
6177 _novomodules
="bl $_novomodules"
6184 int main(void) { xvid_init(0, 0, 0, 0); return 0; }
6186 _ld_xvid
="$_ld_xvid -lxvidcore"
6187 if test "$_xvid" != no
&& cc_check
$_inc_xvid $_ld_xvid $_ld_lm ; then
6189 _def_xvid3
='#define HAVE_XVID3 1'
6190 _def_xvid4
='#undef HAVE_XVID4'
6191 _codecmodules
="xvid $_codecmodules"
6195 int main(void) { xvid_global(0, 0, 0, 0); return 0; }
6197 if test "$_xvid" != no
&& cc_check
$_inc_xvid $_ld_xvid $_ld_lm ; then
6199 _def_xvid3
='#undef HAVE_XVID3'
6200 _def_xvid4
='#define HAVE_XVID4 1'
6201 _codecmodules
="xvid $_codecmodules"
6205 _def_xvid3
='#undef HAVE_XVID3'
6206 _def_xvid4
='#undef HAVE_XVID4'
6207 _nocodecmodules
="xvid $_nocodecmodules"
6213 _def_decore_xvid
='#undef DECORE_XVID'
6214 _def_encore_xvid
='#undef ENCORE_XVID'
6215 if test "$_xvid" = yes ; then
6216 echocheck
"DivX4 compatibility in XviD"
6219 int main(void) { (void) decore(0, 0, 0, 0); return 0; }
6221 cc_check
$_ld_lm "$_ld_xvid" && _xvidcompat
=yes
6222 echores
"$_xvidcompat"
6227 #include <inttypes.h>
6230 #error We do not support old versions of x264. Get the latest from SVN.
6232 int main(void) { x264_encoder_open((void*)0); return 0; }
6234 _ld_x264
="$_ld_x264 -lx264 $_ld_pthread"
6235 if test "$_x264" != no
&& \
6236 ( cc_check
$_inc_x264 $_ld_x264 $_ld_lm || \
6237 ( test "$_x11" = yes && cc_check
$_inc_x264 $_inc_x11 $_ld_x264 $_ld_x11 $_ld_lm )) ; \
6240 _def_x264
='#define HAVE_X264 1'
6241 _codecmodules
="x264 $_codecmodules"
6245 _def_x264
='#undef HAVE_X264'
6246 _nocodecmodules
="x264 $_nocodecmodules"
6250 echocheck
"DivX4linux/DivX5linux/OpenDivX decore"
6251 # DivX5: DEC_OPT_MEMORY_REQS - DivX4: DEC_OPT_FRAME_311
6254 int main(void) { (void) decore(0, 0, 0, 0); return DEC_OPT_FRAME_311; }
6256 if test "$_divx4linux" != no
&& cc_check
$_ld_lm -ldivxdecore ; then
6258 _ld_decore
='-ldivxdecore'
6259 _def_decore
='#define NEW_DECORE 1'
6260 _def_divx
='#define USE_DIVX'
6261 _def_divx5
='#undef DECORE_DIVX5'
6262 _def_odivx_postprocess
='#undef HAVE_ODIVX_POSTPROCESS'
6263 _codecmodules
="divx4linux $_codecmodules"
6264 echores
"DivX4linux (with libdivxdecore.so)"
6266 # if test "$_divx4linux" != no ; then
6268 # OdivxPP disabled because of:
6269 # ld: Warning: type of symbol `dering' changed from 1 to 2 in opendivx/postprocess.o
6272 int main(void) { (void) decore(0, 0, 0, 0); return DEC_OPT_INIT; }
6274 if test "$_divx4linux" != no
&& cc_check
$_ld_lm -ldivxdecore ; then
6276 # _ld_decore='-ldivxdecore opendivx/postprocess.o'
6277 _ld_decore
='-ldivxdecore'
6278 _def_decore
='#define NEW_DECORE 1'
6279 _def_divx
='#define USE_DIVX'
6280 _def_divx5
='#define DECORE_DIVX5 1'
6281 # _def_odivx_postprocess='#define HAVE_ODIVX_POSTPROCESS 1'
6282 _def_odivx_postprocess
='#undef HAVE_ODIVX_POSTPROCESS'
6283 _codecmodules
="divx5linux $_codecmodules"
6284 _nocodecmodules
="divx4linux $_nocodecmodules"
6285 echores
"DivX5linux (with libdivxdecore.so)"
6286 elif test "$_opendivx" != no
; then
6288 _ld_decore
='opendivx/libdecore.a'
6289 _def_decore
='#undef NEW_DECORE'
6290 _def_divx
='#define USE_DIVX'
6291 _def_divx5
='#undef DECORE_DIVX5'
6292 _def_odivx_postprocess
='#define HAVE_ODIVX_POSTPROCESS 1'
6293 _codecmodules
="opendivx $_codecmodules"
6294 _nocodecmodules
="divx5linux $_nocodecmodules"
6296 elif test "$_xvidcompat" = yes ; then
6299 _def_decore
='#define NEW_DECORE 1'
6300 _def_divx
='#define USE_DIVX 1'
6301 _def_divx5
='#undef DECORE_DIVX5'
6302 _def_decore_xvid
='#define DECORE_XVID 1'
6303 _def_odivx_postprocess
='#undef HAVE_ODIVX_POSTPROCESS'
6304 _nocodecmodules
="opendivx divx5linux divx4linux $_nocodecmodules"
6305 echores
"XviD compat."
6309 _def_decore
='#undef NEW_DECORE'
6310 _def_divx
='#undef USE_DIVX'
6311 _def_divx5
='#undef DECORE_DIVX5'
6312 _def_odivx_postprocess
='#undef HAVE_ODIVX_POSTPROCESS'
6313 _nocodecmodules
="opendivx $_nocodecmodules"
6319 # mencoder requires (optional) those libs: libmp3lame and divx4linux encore
6320 if test "$_mencoder" != no
; then
6322 echocheck
"libmp3lame (for mencoder)"
6324 _def_mp3lame_preset
='#undef HAVE_MP3LAME_PRESET'
6325 _def_mp3lame_preset_medium
='#undef HAVE_MP3LAME_PRESET_MEDIUM'
6327 #include <lame/lame.h>
6328 int main(void) { lame_version_t lv; (void) lame_init(); get_lame_version_numerical(&lv); printf("%d%d\n",lv.major,lv.minor); return 0; }
6330 # Note: libmp3lame usually depends on vorbis
6331 cc_check
-lmp3lame $_ld_vorbis $_ld_lm && tmp_run
&& _mp3lame
=yes
6332 if test "$_mp3lame" = yes ; then
6333 _def_mp3lame
="#define HAVE_MP3LAME"
6334 _ld_mp3lame
="-lmp3lame $_ld_vorbis"
6336 #include <lame/lame.h>
6337 int main(void) { int p = STANDARD_FAST; return 0; }
6339 cc_check
$_ld_mp3lame $_ld_lm && _def_mp3lame_preset
="#define HAVE_MP3LAME_PRESET"
6341 #include <lame/lame.h>
6342 int main(void) { int p = MEDIUM_FAST; return 0; }
6344 cc_check
$_ld_mp3lame $_ld_lm && _def_mp3lame_preset_medium
="#define HAVE_MP3LAME_PRESET_MEDIUM"
6346 _def_mp3lame
='#undef HAVE_MP3LAME'
6351 echocheck
"DivX4linux encore (for mencoder)"
6353 #include <encore2.h>
6354 int main(void) { (void) encore(0, 0, 0, 0); return 0; }
6356 if test "$_divx4linux" != no
&& cc_check
-ldivxencore $_ld_lm ; then
6357 _def_encore
='#define HAVE_DIVX4ENCORE 1'
6358 _ld_encore
='-ldivxencore'
6359 echores
"DivX4linux (with libdivxencore.so)"
6360 elif test "$_xvidcompat" = yes ; then
6361 _def_encore
='#define HAVE_DIVX4ENCORE 1'
6363 _def_encore_xvid
='#define ENCORE_XVID 1'
6364 echores
"XviD compat."
6366 _def_encore
='#undef HAVE_DIVX4ENCORE'
6372 echocheck
"mencoder"
6373 _mencoder_flag
='#undef HAVE_MENCODER'
6374 if test "$_mencoder" = yes ; then
6375 _mencoder_flag
='#define HAVE_MENCODER'
6377 echores
"$_mencoder"
6379 echocheck
"fastmemcpy"
6380 # fastmemcpy check is done earlier with tests of CPU & binutils features
6381 if test "$_fastmemcpy" = yes ; then
6382 _def_fastmemcpy
='#define USE_FASTMEMCPY 1'
6384 _def_fastmemcpy
='#undef USE_FASTMEMCPY'
6386 echores
"$_fastmemcpy"
6388 echocheck
"UniquE RAR File Library"
6389 if test "$_unrarlib" = yes ; then
6390 _def_unrarlib
='#define USE_UNRARLIB 1'
6392 _def_unrarlib
='#undef USE_UNRARLIB'
6394 echores
"$_unrarlib"
6396 echocheck
"TV interface"
6397 if test "$_tv" = yes ; then
6398 _def_tv
='#define USE_TV 1'
6399 _inputmodules
="tv $_inputmodules"
6401 _noinputmodules
="tv $_noinputmodules"
6402 _def_tv
='#undef USE_TV'
6406 echocheck
"EDL support"
6407 if test "$_edl" = yes ; then
6408 _def_edl
='#define USE_EDL'
6409 _inputmodules
="edl $_inputmodules"
6411 _noinputmodules
="edl $_noinputmodules"
6412 _def_edl
='#undef USE_EDL'
6416 echocheck
"*BSD BrookTree 848 TV interface"
6417 if test "$_tv_bsdbt848" = auto
; then
6419 if test "$_tv" = yes ; then
6421 #include <sys/types.h>
6422 #if defined(__NetBSD__)
6423 #include <dev/ic/bt8xx.h>
6425 #include <machine/ioctl_bt848.h>
6427 int main(void) { return 0; }
6429 cc_check
&& _tv_bsdbt848
=yes
6432 if test "$_tv_bsdbt848" = yes ; then
6433 _def_tv_bsdbt848
='#define HAVE_TV_BSDBT848 1'
6434 _inputmodules
="tv-bsdbt848 $_inputmodules"
6436 _def_tv_bsdbt848
='#undef HAVE_TV_BSDBT848'
6437 _noinputmodules
="tv-bsdbt848 $_noinputmodules"
6439 echores
"$_tv_bsdbt848"
6441 echocheck
"Video 4 Linux TV interface"
6442 if test "$_tv_v4l" = auto
; then
6444 if test "$_tv" = yes && linux
; then
6447 #include <linux/videodev.h>
6448 int main(void) { return 0; }
6450 cc_check
&& _tv_v4l
=yes
6453 if test "$_tv_v4l" = yes ; then
6454 _def_tv_v4l
='#define HAVE_TV_V4L 1'
6455 _inputmodules
="tv-v4l $_inputmodules"
6457 _noinputmodules
="tv-v4l $_noinputmodules"
6458 _def_tv_v4l
='#undef HAVE_TV_V4L'
6463 echocheck
"Video 4 Linux 2 TV interface"
6464 if test "$_tv_v4l2" = auto
; then
6466 if test "$_tv" = yes && linux
; then
6469 #include <linux/types.h>
6470 #include <linux/videodev2.h>
6471 int main(void) { return 0; }
6473 cc_check
&& _tv_v4l2
=yes
6476 if test "$_tv_v4l2" = yes ; then
6477 _def_tv_v4l2
='#define HAVE_TV_V4L2 1'
6478 _inputmodules
="tv-v4l2 $_inputmodules"
6480 _noinputmodules
="tv-v4l2 $_noinputmodules"
6481 _def_tv_v4l2
='#undef HAVE_TV_V4L2'
6486 echocheck
"audio select()"
6487 if test "$_select" = no
; then
6488 _def_select
='#undef HAVE_AUDIO_SELECT'
6489 elif test "$_select" = yes ; then
6490 _def_select
='#define HAVE_AUDIO_SELECT 1'
6496 # FIXME network check
6497 if test "$_network" != no
; then
6498 _def_network
='#define MPLAYER_NETWORK 1'
6499 _ld_network
="$_ld_sock"
6500 _inputmodules
="network $_inputmodules"
6502 _noinputmodules
="network $_noinputmodules"
6503 _def_network
='#undef MPLAYER_NETWORK'
6509 if not beos
&& test "$_ftp" != no
; then
6510 _def_ftp
='#define HAVE_FTP 1'
6511 _inputmodules
="ftp $_inputmodules"
6513 _noinputmodules
="ftp $_noinputmodules"
6514 _def_ftp
='#undef HAVE_FTP'
6518 echocheck
"vstream client"
6519 if test "$_vstream" = auto
; then
6522 #include <vstream-client.h>
6523 void vstream_error(const char *format, ... ) {}
6524 int main(void) { vstream_start(); return 0; }
6526 cc_check
-lvstream-client && _vstream
=yes
6528 if test "$_vstream" = yes ; then
6529 _def_vstream
='#define HAVE_VSTREAM 1'
6530 _inputmodules
="vstream $_inputmodules"
6531 _ld_vstream
='-lvstream-client'
6533 _noinputmodules
="vstream $_noinputmodules"
6534 _def_vstream
='#undef HAVE_VSTREAM'
6539 echocheck
"byte order"
6540 if test "$_big_endian" = auto
; then
6542 short ascii_name[] = { (('M'<<8)|'P'),(('l'<<8)|'a'),(('y'<<8)|'e'),(('r'<<8)|'B'),
6543 (('i'<<8)|'g'),(('E'<<8)|'n'),(('d'<<8)|'i'),(('a'<<8)|'n'),0};
6545 char* s = (char*)ascii_name;
6550 if strings $TMPO |
grep -l MPlayerBigEndian
>/dev
/null
; then
6556 echo -n "failed to autodetect byte order, defaulting to "
6559 if test "$_big_endian" = yes ; then
6560 _byte_order
='big-endian'
6561 _def_words_endian
='#define WORDS_BIGENDIAN 1'
6563 _byte_order
='little-endian'
6564 _def_words_endian
='#undef WORDS_BIGENDIAN'
6566 echores
"$_byte_order"
6568 echocheck
"OSD menu"
6569 if test "$_menu" = yes ; then
6570 _def_menu
='#define HAVE_MENU 1'
6572 _def_menu
='#undef HAVE_MENU'
6576 # Check to see if they want QTX codecs enabled
6577 echocheck
"QTX codecs"
6578 if test "$_qtx" = auto
; then
6581 if test "$_qtx" = yes ; then
6582 _def_qtx
='#define USE_QTX_CODECS 1'
6583 _codecmodules
="qtx $_codecmodules"
6585 _def_qtx
='#undef USE_QTX_CODECS'
6586 _nocodecmodules
="qtx $_nocodecmodules"
6591 echocheck
"Subtitles sorting"
6592 if test "$_sortsub" = yes ; then
6593 _def_sortsub
='#define USE_SORTSUB 1'
6595 _def_sortsub
='#undef USE_SORTSUB'
6600 echocheck
"XMMS inputplugin support"
6601 if test "$_xmms" = yes ; then
6603 if ( xmms-config
--version ) >/dev
/null
2>&1 ; then
6604 if test -z "$_xmmsplugindir" ; then
6605 _xmmsplugindir
=`xmms-config --input-plugin-dir`
6607 if test -z "$_xmmslibdir" ; then
6608 _xmmslibdir
=`xmms-config --exec-prefix`/lib
6611 if test -z "$_xmmsplugindir" ; then
6612 _xmmsplugindir
=/usr
/lib
/xmms
/Input
6614 if test -z "$_xmmslibdir" ; then
6615 _xmmslibdir
=/usr
/lib
6619 _def_xmms
='#define HAVE_XMMS 1'
6621 _xmms_lib
="${_xmmslibdir}/libxmms.dylib"
6623 _xmms_lib
="${_xmmslibdir}/libxmms.so.1 -export-dynamic"
6626 _def_xmms
='#undef HAVE_XMMS'
6631 if test "$_inet6" = auto
; then
6633 #include <sys/types.h>
6634 #include <sys/socket.h>
6635 int main(void) { socket(AF_INET6, SOCK_STREAM, AF_INET6); }
6642 if test "$_inet6" = yes ; then
6643 _def_inet6
='#define HAVE_AF_INET6 1'
6645 _def_inet6
='#undef HAVE_AF_INET6'
6650 echocheck
"gethostbyname2"
6651 if test "$_gethostbyname2" = auto
; then
6653 #include <sys/types.h>
6654 #include <sys/socket.h>
6656 int main(void) { gethostbyname2("", AF_INET); }
6664 if test "$_gethostbyname2" = yes ; then
6665 _def_gethostbyname2
='#define HAVE_GETHOSTBYNAME2 1'
6667 _def_gethostbyname2
='#undef HAVE_GETHOSTBYNAME2'
6669 echores
"$_gethostbyname2"
6671 # --------------- GUI specific tests begin -------------------
6674 if test "$_gui" = yes ; then
6676 # Required libraries
6677 test "$_png" != yes && die
"PNG support required for GUI compilation, please install libpng and libpng-dev packages."
6678 test "$_x11" != yes && die
"X11 support required for GUI compilation"
6680 echocheck
"XShape extension"
6682 if test "$_x11" = yes ; then
6684 #include <X11/Xlib.h>
6685 #include <X11/Xproto.h>
6686 #include <X11/Xutil.h>
6687 #include <X11/extensions/shape.h>
6690 char *name = ":0.0";
6693 int eventbase, errorbase;
6694 if (getenv("DISPLAY"))
6695 name=getenv("DISPLAY");
6696 wsDisplay=XOpenDisplay(name);
6697 if (!XShapeQueryExtension(wsDisplay,&eventbase,&errorbase))
6699 XCloseDisplay(wsDisplay);
6703 cc_check
$_inc_x11 $_ld_x11 && _xshape
=yes
6705 if test "$_xshape" = yes ; then
6706 _def_xshape
='#define HAVE_XSHAPE 1'
6708 die
"The GUI requires the X11 extension XShape (which was not found)."
6713 if test "$_gtk1" = no
; then
6715 echocheck
"GTK+ version"
6717 if pkg-config gtk
+-2.0
--exists ; then
6718 _gtk
=`pkg-config gtk+-2.0 --modversion 2>/dev/null`
6719 _inc_gtk
=`pkg-config gtk+-2.0 --cflags 2>/dev/null`
6720 _ld_gtk
=`pkg-config gtk+-2.0 --libs 2>/dev/null`
6724 if pkg-config glib-2.0
--exists ; then
6725 echocheck
"glib version"
6726 _glib
=`pkg-config glib-2.0 --modversion 2>/dev/null`
6727 _inc_glib
=`pkg-config glib-2.0 --cflags 2>/dev/null`
6728 _ld_glib
=`pkg-config glib-2.0 --libs 2>/dev/null`
6731 _def_gui
='#define HAVE_NEW_GUI 1'
6732 _def_gtk2_gui
='#define HAVE_GTK2_GUI 1'
6733 _ld_gui
='$(GTKLIB) $(GLIBLIB)'
6736 echo "GLIB-2 devel packages were not found, trying GTK 1.2"
6739 echo "GTK-2 devel packages were not found, trying GTK 1.2"
6744 if test "$_gtk1" = yes ; then
6745 # Check for old GTK (1.2.x)
6746 echocheck
"GTK version"
6747 if test -z "$_gtkconfig" ; then
6748 if ( gtk-config
--version ) >/dev
/null
2>&1 ; then
6749 _gtkconfig
="gtk-config"
6750 elif ( gtk12-config
--version ) >/dev
/null
2>&1 ; then
6751 _gtkconfig
="gtk12-config"
6753 die
"The GUI requires GTK devel packages (which were not found)."
6756 _gtk
=`$_gtkconfig --version 2>&1`
6757 _inc_gtk
=`$_gtkconfig --cflags 2>&1`
6758 _ld_gtk
=`$_gtkconfig --libs 2>&1`
6759 echores
"$_gtk (using $_gtkconfig)"
6762 echocheck
"glib version"
6763 if test -z "$_glibconfig" ; then
6764 if ( glib-config
--version ) >/dev
/null
2>&1 ; then
6765 _glibconfig
="glib-config"
6766 elif ( glib12-config
--version ) >/dev
/null
2>&1 ; then
6767 _glibconfig
="glib12-config"
6769 die
"The GUI requires GLib devel packages (which were not found)"
6772 _glib
=`$_glibconfig --version 2>&1`
6773 _inc_glib
=`$_glibconfig --cflags 2>&1`
6774 _ld_glib
=`$_glibconfig --libs 2>&1`
6775 echores
"$_glib (using $_glibconfig)"
6777 _def_gui
='#define HAVE_NEW_GUI 1'
6778 _def_gtk2_gui
='#undef HAVE_GTK2_GUI'
6779 _ld_gui
='$(GTKLIB) $(GLIBLIB)'
6782 echo "Creating Gui/config.mak"
6783 cat > Gui
/config.mak
<< EOF
6784 # -------- Generated by configure -----------
6788 GLIBINC = $_inc_glib
6789 GLIBLIBS = $_ld_glib
6794 _def_gui
='#undef HAVE_NEW_GUI'
6795 _def_gtk2_gui
='#undef HAVE_GTK2_GUI'
6797 # --------------- GUI specific tests end -------------------
6801 #############################################################################
6803 # Checking for CFLAGS
6805 if test "$_profile" != "" ||
test "$_debug" != "" ; then
6806 CFLAGS
="-W -Wall -O2 $_march $_mcpu $_debug $_profile"
6807 if test "$_cc_major" -ge "3" ; then
6808 CFLAGS
=`echo "$CFLAGS" | sed -e 's/\(-Wall\)/\1 -Wno-unused-parameter/'`
6811 elif test -z "$CFLAGS" ; then
6812 CFLAGS
="-O4 $_march $_mcpu $_pipe -ffast-math -fomit-frame-pointer"
6813 # always compile with '-g' if .developer:
6814 if test -f ".developer" ; then
6816 if test "$_crash_debug" = auto
&& not mingw32
; then
6825 echocheck
"automatic gdb attach"
6826 if test "$_crash_debug" = yes ; then
6827 _def_crash_debug
='#define CRASH_DEBUG 1'
6829 _def_crash_debug
='#undef CRASH_DEBUG'
6832 echores
"$_crash_debug"
6835 CFLAGS
="$CFLAGS -mdynamic-no-pic -falign-loops=16 -DSYS_DARWIN"
6836 if [ "$_cc_major" = 3 ] && [ "$_cc_minor" -lt 1 ]; then
6837 CFLAGS
="$CFLAGS -no-cpp-precomp"
6840 # libavcodec (from ffmpeg) requires CONFIG_DARWIN to enable AltiVec on Darwin/MacOSX
6841 test "$_altivec" = yes && CFLAGS
="$CFLAGS -DCONFIG_DARWIN"
6844 # use flag for HPUX missing setenv()
6845 CFLAGS
="$CFLAGS -DHPUX"
6849 CFLAGS
="$CFLAGS -D_REENTRANT"
6851 # FIXME bsd needs this so maybe other OS'es
6852 CFLAGS
="$CFLAGS -D_THREAD_SAFE"
6854 # 64 bit file offsets?
6855 if test "$_largefiles" = yes || freebsd
; then
6856 CFLAGS
="$CFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
6857 if test "$_dvdread" = yes ; then
6858 # dvdread support requires this (for off64_t)
6859 CFLAGS
="$CFLAGS -D_LARGEFILE64_SOURCE"
6863 echocheck
"compiler support for -fno-PIC"
6866 int main(void) { return 0; }
6868 if cc_check
-fno-PIC ; then
6869 CFLAGS
="-fno-PIC $CFLAGS"
6875 echores
"only used for x86"
6878 echocheck
"compiler support for noexecstack"
6880 int main(void) { return 0; }
6882 if cc_check
-Wl,-z,noexecstack
; then
6883 _ld_extra
="-Wl,-z,noexecstack $_ld_extra"
6889 echocheck
"ftello()"
6890 # if we don't have ftello use the osdep/ compatibility module
6893 #include <sys/types.h>
6894 int main (void) { ftello(stdin); return 0; }
6897 cc_check
&& _ftello
=yes
6898 if test "$_ftello" = yes ; then
6899 _def_ftello
='#define HAVE_FTELLO 1'
6901 _def_ftello
='#undef HAVE_FTELLO'
6905 # Determine OS dependent libs
6907 _def_confwin32
='#define WIN32'
6908 #CFLAGS="$CFLAGS -D__CYGWIN__ -D__CYGWIN_USE_BIG_TYPES__"
6909 # stat.st_size with BIG_TYPES is broken (not set) ::atmos
6910 CFLAGS
="$CFLAGS -D__CYGWIN__"
6914 _confwin32
='TARGET_WIN32 = yes'
6916 _confwin32
='TARGET_WIN32 = no'
6919 # Dynamic linking flags
6920 # (FIXME: 'echocheck "dynamic linking"' above and modify here accordingly)
6922 bsd
&& _ld_dl_dynamic
='-rdynamic'
6923 if test "$_real" = yes ||
test "$_xanim" = yes && not win32
&& not qnx
&& not darwin
; then
6924 _ld_dl_dynamic
='-rdynamic'
6927 _ld_arch
="$_ld_arch $_ld_pthread $_ld_dl $_ld_dl_dynamic"
6928 bsdos
&& _ld_arch
="$_ld_arch -ldvd"
6930 x86
&& _ld_arch
="$_ld_arch -li386"
6933 _def_debug
='#undef MP_DEBUG'
6934 test "$_debug" != "" && _def_debug
='#define MP_DEBUG 1'
6936 _def_linux
='#undef TARGET_LINUX'
6937 linux
&& _def_linux
='#define TARGET_LINUX 1'
6939 # TODO cleanup the VIDIX stuff here
6941 _def_vidix
='#define CONFIG_VIDIX 1'
6942 test "$_vidix" = no
&& _def_vidix
='#undef CONFIG_VIDIX'
6943 if test "$_vidix" = yes; then
6944 _vosrc
="$_vosrc vo_cvidix.c"
6945 _vomodules
="cvidix $_vomodules"
6947 _novomodules
="cvidix $_novomodules"
6949 if test "$_vidix" = yes && win32
; then
6950 _vosrc
="$_vosrc vo_winvidix.c"
6951 _vomodules
="winvidix $_vomodules"
6952 _ld_win32libs
="-lgdi32 $_ld_win32libs"
6954 _novomodules
="winvidix $_novomodules"
6956 if test "$_vidix" = yes && test "$_x11" = yes; then
6957 _vosrc
="$_vosrc vo_xvidix.c"
6958 _vomodules
="xvidix $_vomodules"
6960 _novomodules
="xvidix $_novomodules"
6964 echocheck
"joystick"
6965 _def_joystick
='#undef HAVE_JOYSTICK'
6966 if test "$_joystick" = yes ; then
6968 # TODO add some check
6969 _def_joystick
='#define HAVE_JOYSTICK 1'
6971 _joystick
="no (unsupported under $system_name)"
6974 echores
"$_joystick"
6977 if test "$_lirc" = auto
; then
6979 if test -c /dev
/lirc
-o -c /dev
/lirc
/0 ; then
6981 #include <lirc/lirc_client.h>
6982 int main(void) { return 0; }
6984 cc_check
-llirc_client && _lirc
=yes
6987 if test "$_lirc" = yes ; then
6988 _def_lirc
='#define HAVE_LIRC 1'
6989 _ld_lirc
='-llirc_client'
6991 _def_lirc
='#undef HAVE_LIRC'
6996 if test "$_lircc" = auto
; then
6999 #include <lirc/lircc.h>
7000 int main(void) { return 0; }
7002 cc_check
-llircc && _lircc
=yes
7004 if test "$_lircc" = yes ; then
7005 _def_lircc
='#define HAVE_LIRCC 1'
7008 _def_lircc
='#undef HAVE_LIRCC'
7012 #############################################################################
7013 echo "Creating config.mak"
7014 cat > config.mak
<< EOF
7015 # -------- Generated by configure -----------
7018 MAN_LANG = $MAN_LANG
7019 TARGET_OS = $system_name
7021 prefix = \$(DESTDIR)$_prefix
7022 BINDIR = \$(DESTDIR)$_bindir
7023 DATADIR = \$(DESTDIR)$_datadir
7024 MANDIR = \$(DESTDIR)$_mandir
7025 CONFDIR = \$(DESTDIR)$_confdir
7026 LIBDIR = \$(DESTDIR)$_libdir
7027 # FFmpeg uses libdir instead of LIBDIR
7035 # OPTFLAGS = -O4 $_profile $_debug $_march $_mcpu $_pipe -fomit-frame-pointer -ffast-math
7036 EXTRA_INC = $_inc_extra
7037 OPTFLAGS = -I../libvo -I../../libvo $_inc_x11 $CFLAGS \$(EXTRA_INC)
7038 STRIPBINARIES = $_stripbinaries
7040 HELP_FILE = $_mp_help
7043 PRG_MENCODER = $_prg_mencoder
7047 MPLAYER_NETWORK = $_network
7048 STREAMING_LIVE555 = $_live
7049 MPLAYER_NETWORK_LIB = $_ld_live $_ld_vstream $_ld_network
7053 CONFIG_MP3LAME = $_mp3lame
7055 I18NLIBS = $_i18n_libs
7056 MATROSKA = $_matroska_internal
7058 OPENDIVX = $_opendivx
7062 LIBMPEG2 = $_libmpeg2
7063 TREMOR = $_tremor_internal
7064 TREMOR_FLAGS = $_tremor_flags
7067 MUSEPACK = $_musepack
7069 UNRARLIB = $_unrarlib
7070 HAVE_FFPOSTPROCESS = $_def_haveffpostprocess
7075 EXTRA_LIB = $_ld_extra
7076 Z_LIB = $_ld_static $_ld_zlib
7078 WIN32_LIB = $_ld_win32libs
7079 STATIC_LIB = $_ld_static
7080 ENCA_LIB = $_ld_enca
7081 HAVE_PTHREADS = $_pthreads
7087 HAVE_XVMC_ACCEL = $_xvmc
7097 X_LIB = $_ld_gl $_ld_dga $_ld_xv $_ld_xvmc $_ld_vm $_ld_xinerama $_ld_x11 $_ld_sock
7099 MLIB_LIB = $_ld_mlib
7100 MLIB_INC = $_inc_mlib
7101 DXR2_INC = $_inc_dxr2
7107 SVGA_LIB = $_ld_svga
7108 VESA_LIB = $_ld_vesa
7110 CACA_INC = $_inc_caca
7111 CACA_LIB = $_ld_caca
7114 ALSA_LIB = $_ld_alsa
7116 ARTS_LIB = $_ld_arts
7117 ARTS_INC = $_inc_arts
7120 POLYP_LIB = $_ld_polyp
7121 POLYP_INC = $_inc_polyp
7122 JACK_LIB = $_ld_jack
7123 JACK_INC = $_inc_jack
7124 SGIAUDIO_LIB = $_ld_sgiaudio
7126 # input/demuxer/codecs
7127 TERMCAP_LIB = $_ld_termcap
7128 LIRC_LIB = $_ld_lirc
7129 LIRCC_LIB = $_ld_lircc
7130 HAVE_DVD = $_have_dvd
7132 DVDREAD_LIB = $_ld_dvdread
7137 W32_DEP = $_dep_win32
7138 W32_LIB = $_ld_win32
7139 DS_DEP = $_dep_dshow
7141 AV_DEP = $_dep_libavutil $_dep_libavcodec $_dep_libavformat
7142 AV_LIB = $_ld_libavformat $_ld_libavcodec $_ld_libavutil
7143 CONFIG_LIBAVUTIL = $_libavutil
7144 CONFIG_LIBAVCODEC = $_libavcodec
7145 CONFIG_LIBAVCODECSO = $_libavcodecso
7146 CONFIG_LIBAVFORMAT = $_libavformat
7149 FAME_LIB = $_ld_fame
7150 MP1E_DEP = $_dep_mp1e
7151 MP1E_LIB = $_ld_mp1e
7152 ARCH_LIB = $_ld_arch $_ld_iconv
7154 XVID_INC = $_inc_xvid
7155 XVID_LIB = $_ld_xvid
7157 X264_INC = $_inc_x264
7158 X264_LIB = $_ld_x264
7159 CONFIG_DTS = $_libdts
7160 DTS_INC = $_inc_libdts
7161 DTS_LIB = $_ld_libdts
7162 DECORE_LIB = $_ld_decore $_ld_mp3lame
7163 MENCODER = $_mencoder
7164 ENCORE_LIB = $_ld_encore $_ld_mp3lame
7165 DIRECTFB_INC = $_inc_directfb
7166 DIRECTFB_LIB = $_ld_directfb
7167 CDPARANOIA_INC = $_inc_cdparanoia
7168 CDPARANOIA_LIB = $_ld_cdparanoia
7169 FREETYPE_INC = $_inc_freetype
7170 FREETYPE_LIB = $_ld_freetype
7171 FONTCONFIG_INC = $_inc_fontconfig
7172 FONTCONFIG_LIB = $_ld_fontconfig
7173 FRIBIDI_INC = $_inc_fribidi
7174 FRIBIDI_LIB = $_ld_fribidi
7175 LIBCDIO_INC = $_inc_libcdio
7176 LIBCDIO_LIB = $_ld_libcdio
7177 LIBLZO_LIB= $_ld_liblzo
7179 VORBIS_LIB = $_ld_vorbis $_ld_libdv
7180 SPEEX_LIB = $_ld_speex
7181 THEORA_LIB = $_ld_theora
7182 FAAD_LIB = $_ld_faad
7183 INTERNAL_FAAD = $_faad_internal
7184 SMBSUPPORT_LIB = $_ld_smb
7185 XMMS_PLUGINS = $_xmms
7186 XMMS_LIB = $_xmms_lib
7188 MACOSX_FINDER_SUPPORT = $_macosx_finder_support
7189 MACOSX_BUNDLE = $_macosx_bundle
7190 MACOSX_FRAMEWORKS = $_macosx_frameworks
7191 MACOSX_COREVIDEO = $_macosx_corevideo
7193 TOOLAME_EXTRAFLAGS=$_toolame_extraflags
7194 TOOLAME_LIB=$_toolame_lib
7196 TWOLAME_LIB=$_twolame_lib
7197 MUSEPACK_LIB = $_ld_musepack
7201 AMR_NB_FIXED=$_amr_nb_fixed
7203 `echo $_libavcodecs | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/'`
7206 # --- Some stuff for autoconfigure ----
7211 TARGET_MMX2 = $_mmx2
7212 TARGET_3DNOW = $_3dnow
7213 TARGET_3DNOWEX = $_3dnowex
7215 TARGET_ALTIVEC = $_altivec
7220 GTKLIB = $_ld_static $_ld_gtk
7221 GLIBLIB = $_ld_static $_ld_glib
7222 GTK_LIBS = $_ld_static $_ld_gui
7228 #############################################################################
7229 echo "Creating config.h"
7230 cat > config.h
<< EOF
7231 /* -------- This file has been automatically generated by configure ---------
7232 Note: Any changes in it will be lost when you run configure again. */
7234 /* Protect against multiple inclusion */
7235 #ifndef MPLAYER_CONFIG_H
7236 #define MPLAYER_CONFIG_H 1
7238 /* use GNU internationalization */
7241 /* Runtime CPU detection */
7242 $_def_runtime_cpudetection
7244 /* Dynamic a/v plugins */
7245 $_def_dynamic_plugins
7247 /* "restrict" keyword */
7248 $_def_restrict_keyword
7250 /* __builtin_expect branch prediction hint */
7251 $_def_builtin_expect
7252 #ifdef HAVE_BUILTIN_EXPECT
7253 #define likely(x) __builtin_expect ((x) != 0, 1)
7254 #define unlikely(x) __builtin_expect ((x) != 0, 0)
7256 #define likely(x) (x)
7257 #define unlikely(x) (x)
7260 /* attribute(used) as needed by some compilers */
7261 #if (__GNUC__ * 100 + __GNUC_MINOR__ >= 300)
7262 # define attribute_used __attribute__((used))
7264 # define attribute_used
7267 #define PREFIX "$_prefix"
7272 /* enable/disable SIGHANDLER */
7275 /* enable/disable automatic gdb attach on crash, requires SIGHANDLER */
7278 /* Toggles debugging informations */
7281 /* Toggles colorized output */
7282 //#define MSG_USE_COLORS 1
7284 /* Indicates that libcdio is available for VCD and CD-DA playback */
7287 /* Indicates that Ogle's libdvdread is available for DVD playback */
7290 /* Indicates that dvdread is from libmpdvdkit */
7293 /* Additional options for libmpdvdkit*/
7308 /* Common data directory (for fonts, etc) */
7309 #define MPLAYER_DATADIR "$_datadir"
7310 #define MPLAYER_CONFDIR "$_confdir"
7311 #define MPLAYER_LIBDIR "$_libdir"
7313 /* Define this to compile stream-caching support, it can be enabled via
7314 -cache <kilobytes> */
7315 #define USE_STREAM_CACHE 1
7317 /* Define to include support for XviD/Divx4Linux/OpenDivx */
7320 /* Define to use the new XviD/DivX4Linux library instead of open source OpenDivX */
7321 /* You have to change DECORE_LIBS in config.mak, too! */
7324 /* Define if you are using DivX5Linux Decore library */
7327 /* Define if you are using XviD library */
7333 /* Define if you are using the X.264 library */
7336 /* Define to include support for libdv-0.9.5 */
7339 /* If build mencoder */
7342 /* Indicates if XviD/Divx4linux encore is available
7343 Note: for mencoder */
7346 /* Indicates if libmp3lame is available
7347 Note: for mencoder */
7349 $_def_mp3lame_preset
7350 $_def_mp3lame_preset_medium
7352 /* Define libmp1e for realtime mpeg encoding (for DXR3 and DVB cards) */
7355 /* Define this to enable avg. byte/sec-based AVI sync method by default:
7356 (use -bps or -nobps commandline option for run-time method selection)
7357 -bps gives better sync for vbr mp3 audio, it is now default */
7358 #define AVI_SYNC_BPS 1
7360 /* Undefine this if you do not want to select mono audio (left or right)
7361 with a stereo MPEG layer 2/3 audio stream. The command line option
7362 -stereo has three possible values (0 for stereo, 1 for left-only, 2 for
7363 right-only), with 0 being the default.
7365 #define USE_FAKE_MONO 1
7367 /* Undefine this if your sound card driver has no working select().
7368 If you have kernel Oops, player hangups, or just no audio, you should
7369 try to recompile MPlayer with this option disabled! */
7372 /* define this to use iconv(3) function to codepage conversions */
7375 /* define this to use nl_langinfo function */
7378 /* define this to use RTC (/dev/rtc) for video timers */
7381 /* set up max. outburst. use 65536 for ALSA 0.5, for others 16384 is enough */
7382 #define MAX_OUTBURST 65536
7384 /* set up audio OUTBURST. Do not change this! */
7385 #define OUTBURST 512
7387 /* Define this if your system has the header file for the OSS sound interface */
7390 /* Define this if your system has the header file for the OSS sound interface
7391 * in /usr/include */
7394 /* Define this if your system has the sysinfo header */
7397 /* Define this if your system has ftello() */
7401 /* Need these for FILE and off_t an config.h is usually before other includes*/
7403 #include <sys/types.h>
7404 off_t ftello(FILE *);
7407 /* Define this if your system has the "malloc.h" header file */
7410 /* memalign is mapped to malloc if unsupported */
7412 #ifndef HAVE_MEMALIGN
7413 # define memalign(a,b) malloc(b)
7414 #define MEMALIGN_HACK 1
7417 /* Define this if your system has the "alloca.h" header file */
7420 /* Define this if your system has the "sys/mman.h" header file */
7422 $_def_mman_has_map_failed
7424 /* Define this if you have the elf dynamic linker -ldl library */
7427 /* Define this if you have the kstat kernel statistics library */
7430 /* Define this if you have zlib */
7433 #define CONFIG_ZLIB 1
7436 /* Define this if you have shm support */
7439 /* Define this if your system has scandir & alphasort */
7442 /* Define this if your system has strsep */
7445 /* Define this if your system has strlcpy */
7447 #ifndef HAVE_STRLCPY
7448 unsigned int strlcpy (char *dest, const char *src, unsigned int size);
7451 /* Define this if your system has strlcat */
7453 #ifndef HAVE_STRLCAT
7454 unsigned int strlcat (char *dest, const char *src, unsigned int size);
7457 /* Define this if your system has fseeko */
7460 /* Need these for FILE and off_t an config.h is usually before other includes*/
7462 #include <sys/types.h>
7463 int fseeko(FILE *, off_t, int);
7468 /* Define this if your system has vsscanf */
7471 /* Define this if your system has swab */
7474 /* Define this if your system has no posix select */
7475 $_def_no_posix_select
7477 /* Define this if your system has gettimeofday */
7480 /* Define this if your system has glob */
7483 /* Define this if your system has pthreads */
7486 /* Define this if you enabled thread support for libavcodec */
7489 /* LIRC (remote control, see www.lirc.org) support: */
7493 * LIRCCD (LIRC client daemon)
7494 * See http://www.dolda2000.cjb.net/~fredrik/lirccd/
7498 /* DVD navigation support using libdvdnav */
7500 $_def_dvdnav_version
7502 /* Define this to enable MPEG 1/2 image postprocessing (requires a FAST CPU!) */
7503 #define MPEG12_POSTPROC 1
7505 /* Define this to enable image postprocessing in libavcodec (requires a FAST CPU!) */
7508 /* Define to include support for OpenDivx postprocessing */
7509 $_def_odivx_postprocess
7511 /* Win32 DLL support */
7513 #define WIN32_PATH "$_win32libdir"
7515 /* DirectShow support */
7518 /* Mac OS X specific features */
7520 $_def_macosx_finder_support
7522 $_def_macosx_corevideo
7524 /* Build our Win32-loader */
7527 /* ffmpeg's libavcodec support (requires libavcodec source) */
7531 /* ffmpeg's libavformat support (requires libavformat source) */
7533 $_def_libavformat_win32
7535 /* Use libavcodec's decoders */
7536 #define CONFIG_DECODERS 1
7537 /* Use libavcodec's encoders */
7538 #define CONFIG_ENCODERS 1
7540 /* Use libavformat's demuxers */
7541 #define CONFIG_DEMUXERS 1
7542 /* Use libavformat's muxers */
7543 #define CONFIG_MUXERS 1
7545 #define CONFIG_MPEGAUDIO_HP 1
7547 #define CONFIG_GPL 1
7549 /* Use amr codecs from libavcodec (requires amr sources) */
7554 /* Use specific codecs from libavcodec */
7555 `echo $_libavcodecs | tr '[a-z] ' '[A-Z]\n' | sed 's/^/#define CONFIG_/;s/$/ 1/'`
7557 /* Use codec libs included in mplayer CVS / source dist: */
7563 /* Use libfame encoder filter */
7566 /* XAnim DLL support */
7568 /* Default search path */
7571 /* RealPlayer DLL support */
7573 /* Default search path */
7576 /* LIVE555 Streaming Media library support */
7579 /* Use 3dnow/mmxext/sse/mmx optimized fast memcpy() [maybe buggy... signal 4]*/
7582 /* Use unrarlib for Vobsubs */
7585 /* gui support, please do not edit this option */
7589 /* Audio output drivers */
7591 $_def_ossaudio_devdsp
7592 $_def_ossaudio_devmixer
7601 $_def_sys_asoundlib_h
7602 $_def_alsa_asoundlib_h
7608 /* Enable fast OSD/SUB renderer (looks ugly, but uses less CPU power) */
7610 #undef FAST_OSD_TABLE
7612 /* Enable TV Interface support */
7615 /* Enable EDL support */
7618 /* Enable Video 4 Linux TV interface support */
7621 /* Enable Video 4 Linux 2 TV interface support */
7624 /* Enable *BSD BrookTree TV interface support */
7627 /* Define if your processor stores words with the most significant
7628 byte first (like Motorola and SPARC, unlike Intel and VAX). */
7633 /* For the PPC. G5 has the dcbzl when in 64bit mode but G4s and earlier do not
7634 have the instruction. */
7637 /* libmpeg2 wants ARCH_PPC and the rest of mplayer use ARCH_POWERPC,
7638 * define ARCH_PPC if ARCH_POWERPC is set to cope with that.
7644 /* the same issue as with ARCH_POWERPC but with ffmpeg/libavcodec */
7649 /* only gcc3 can compile mvi instructions */
7650 $_def_gcc_mvi_support
7652 /* Define this for Cygwin build for win32 */
7655 /* Define this to any prefered value from 386 up to infinity with step 100 */
7656 #define __CPU__ $iproc
7665 #define DEFAULT_CDROM_DEVICE "/vol/dev/aliases/cdrom0"
7666 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
7668 #define DEFAULT_CDROM_DEVICE "/dev/cdrom"
7669 #define DEFAULT_DVD_DEVICE "/dev/dvd"
7670 #elif defined(WIN32)
7671 #define DEFAULT_CDROM_DEVICE "D:"
7672 #define DEFAULT_DVD_DEVICE "D:"
7673 #elif defined(SYS_DARWIN)
7674 #define DEFAULT_CDROM_DEVICE "/dev/disk1"
7675 #define DEFAULT_DVD_DEVICE "/dev/rdiskN"
7676 #elif defined(__OpenBSD__)
7677 #define DEFAULT_CDROM_DEVICE "/dev/rcd0a"
7678 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
7679 #elif defined(__FreeBSD__)
7680 #define DEFAULT_CDROM_DEVICE "/dev/acd0"
7681 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
7683 #define DEFAULT_CDROM_DEVICE "/dev/cdrom"
7684 #define DEFAULT_DVD_DEVICE "/dev/dvd"
7688 /*----------------------------------------------------------------------------
7690 ** NOTE: Instead of modifying these definitions here, use the
7691 ** --enable/--disable options of the ./configure script!
7692 ** See ./configure --help for details.
7694 *---------------------------------------------------------------------------*/
7696 /* C99 lrintf function available */
7699 /* round function is available */
7702 /* yes, we have inttypes.h */
7703 #define HAVE_INTTYPES_H 1
7705 /* int_fastXY_t emulation */
7708 /* nanosleep support */
7714 /* termcap flag for getch2.c */
7717 /* termios flag for getch2.c */
7722 /* enable PNG support */
7725 /* enable JPEG support */
7728 /* enable PNM support */
7731 /* enable md5sum support */
7734 /* enable GIF support */
7739 /* enable FreeType support */
7742 /* enable Fontconfig support */
7745 /* enable FriBiDi usage */
7748 /* enable ENCA usage */
7751 /* liblzo support */
7754 /* libmad support */
7757 /* enable OggVorbis support */
7760 /* enable Tremor as vorbis decoder */
7763 /* enable Speex support */
7766 /* enable musepack support */
7769 /* enable OggTheora support */
7772 /* enable Matroska support */
7775 /* enable FAAD (AAC) support */
7779 /* enable FAAC (AAC encoder) support */
7782 /* enable LADSPA plugin support */
7785 /* enable network */
7788 /* enable ftp support */
7791 /* enable vstream support */
7794 /* enable winsock2 instead of Unix functions*/
7797 /* define this to use inet_aton() instead of inet_pton() */
7800 /* enables / disables cdparanoia support */
7803 /* enables / disables VIDIX usage */
7806 /* enables / disables new input joystick support */
7809 /* enables / disables QTX codecs */
7812 /* enables / disables osd menu */
7815 /* enables / disables subtitles sorting */
7818 /* XMMS input plugin support */
7820 #define XMMS_INPUT_PLUGIN_DIR "$_xmmsplugindir"
7822 /* enables inet6 support */
7825 /* do we have gethostbyname2? */
7826 $_def_gethostbyname2
7828 /* Extension defines */
7829 $_def_3dnow // only define if you have 3DNOW (AMD k6-2, AMD Athlon, iDT WinChip, etc.)
7830 $_def_3dnowex // only define if you have 3DNOWEX (AMD Athlon, etc.)
7831 $_def_mmx // only define if you have MMX (newer x86 chips, not P54C/PPro)
7832 $_def_mmx2 // only define if you have MMX2 (Athlon/PIII/4/CelII)
7833 $_def_sse // only define if you have SSE (Intel Pentium III/4 or Celeron II)
7834 $_def_sse2 // only define if you have SSE2 (Intel Pentium 4)
7835 $_def_altivec // only define if you have Altivec (G4)
7837 $_def_altivec_h // enables usage of altivec.h
7840 $_def_mlib // Sun mediaLib, available only on solaris
7841 $_def_vis // only define if you have VIS ( ultrasparc )
7843 /* libmpeg2 uses a different feature test macro for mediaLib */
7845 #define LIBMPEG2_MLIB 1
7849 #define SCREEN_SIZE_X 1
7850 #define SCREEN_SIZE_Y 1
7862 /* defined for SDLlib with keyrepeat bugs (before 1.2.1) */
7871 $_def_directfb_version
7894 #if defined(HAVE_GL) || defined(HAVE_X11) || defined(HAVE_XV)
7895 #define X11_FULLSCREEN 1
7898 #endif /* MPLAYER_CONFIG_H */
7901 #############################################################################
7903 echo "Creating libvo/config.mak"
7904 _voobj
=`echo $_vosrc | sed -e 's/\.c/\.o/g;s/\.m/\.o/g'`
7905 cat > libvo
/config.mak
<< EOF
7906 include ../config.mak
7907 OPTIONAL_SRCS = $_vosrc
7908 OPTIONAL_OBJS = $_voobj
7911 #############################################################################
7913 echo "Creating libao2/config.mak"
7914 _aoobj
=`echo $_aosrc | sed -e 's/\.c/\.o/g'`
7915 cat > libao
2/config.mak
<< EOF
7916 include ../config.mak
7917 OPTIONAL_SRCS = $_aosrc
7918 OPTIONAL_OBJS = $_aoobj
7921 #############################################################################
7923 echo "Creating libaf/config.mak"
7924 _afobj
=`echo $_afsrc | sed -e 's/\.c/\.o/g'`
7925 cat > libaf
/config.mak
<< EOF
7926 include ../config.mak
7927 OPTIONAL_SRCS = $_afsrc
7928 OPTIONAL_OBJS = $_afobj
7931 #############################################################################
7935 Config files successfully generated by ./configure !
7937 Install prefix: $_prefix
7938 Data directory: $_datadir
7939 Config direct.: $_confdir
7941 Byte order: $_byte_order
7942 Optimizing for: $_optimizing
7945 Messages/GUI: $_language
7948 echo -n " Manual pages: $MAN_LANG"
7949 test "$LANGUAGES" = en
&& echo -n " (no localization selected, use --language=all)"
7954 Enabled optional drivers:
7955 Input: $_inputmodules
7956 Codecs: $_codecmodules
7957 Audio output: $_aomodules
7958 Video output: $_vomodules
7959 Audio filters: $_afmodules
7960 Disabled optional drivers:
7961 Input: $_noinputmodules
7962 Codecs: $_nocodecmodules
7963 Audio output: $_noaomodules
7964 Video output: $_novomodules
7965 Audio filters: $_noafmodules
7967 'config.h' and 'config.mak' contain your configuration options.
7968 Note: If you alter theses files (for instance CFLAGS) MPlayer may no longer
7969 compile *** DO NOT REPORT BUGS if you tweak these files ***
7971 'make' will now compile MPlayer and 'make install' will install it.
7972 Note: On non-Linux systems you might need to use 'gmake' instead of 'make'.
7977 if test "$_mtrr" = yes ; then
7978 echo "Please check mtrr settings at /proc/mtrr (see DOCS/HTML/$_doc_lang/video.html#mtrr)"
7982 if test "$_sdl" = "outdated" ; then
7984 You have an outdated version of libSDL installed (older than v1.1.7) and SDL
7985 support has therefore been disabled.
7987 Please upgrade to a more recent version (version 1.1.8 and above are known to
7988 work). You may get this library from: http://www.libsdl.org
7990 You need to rerun ./configure and recompile after updating SDL. If you are
7991 only interested in the libSDL audio drivers, then an older version might work.
7993 Use --enable-sdl to force usage of libSDL.
7999 if test "$_win32" = no
; then
8000 if test "$_win32libdir" ; then
8001 echo "Failed to find a Win32 codecs dir at $_win32libdir!"
8003 echo "Failed to find a Win32 codecs directory! (default: /usr/local/lib/codecs/)"
8006 Create it and copy the DLL files there! You can download the codecs from our
8007 homepage at http://www.mplayerhq.hu/MPlayer/releases/codecs/
8013 NOTE: Win32 codec DLLs are not supported on your CPU ($host_arch) or your
8014 operating system ($system_name). You may encounter a few files that cannot
8015 be played due to missing open source video/audio codec support.
8023 Check $TMPLOG if you wonder why an autodetection failed (check whether
8024 the development headers/packages are installed).
8025 Do not report compilation errors if you used any of the --enable-* options
8026 (except --enable-gui and maybe --enable-debug).
8028 If you suspect a bug, please read DOCS/HTML/$_doc_lang/bugreports.html.
8032 if test "$_vidix" = no
; then
8034 You've disabled VIDIX. Although it would be better to PORT it instead.
8035 Have a look at the documentation for supported cards!
8040 if test "$_warn_CFLAGS" = yes; then
8043 MPlayer compilation will use the CFLAGS set by you, but:
8045 *** *** DO NOT REPORT BUGS IF IT DOES NOT COMPILE/WORK! *** ***
8047 It is strongly recommended to let MPlayer choose the correct CFLAGS!
8048 To do so, execute 'CFLAGS= ./configure <options>'
8054 rm -f "$TMPO" "$TMPC" "$TMPS" "$TMPCPP"