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 [disabled]
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 if test "$pmodel" -ge 7; then
842 elif test "$pmodel" -ge 6; then
843 # only Athlon XP supports ssem MP, Duron etc not
844 # but most of them are CPUID 666, so check if sse detected
845 # btw. there is also athlon-mp opt, but we need extended
846 # CPUID to detect if CPU is SMP capable -> athlon-mp ::atmos
847 if test "$_sse" = yes && test "$pstepping" -ge 2; then
852 elif test "$pmodel" -ge 4; then
855 proc
=athlon
# TODO: should the Duron Spitfire be considered a Thunderbird instead?
859 # k8 cpu-type only supported in gcc >= 3.4.0, but that will be
860 # caught and remedied in the optimization tests below.
864 *) proc
=athlon-xp iproc
=686 ;;
869 3) proc
=i386 iproc
=386 ;;
870 4) proc
=i486 iproc
=486 ;;
872 if test "$pmodel" -eq 4 ||
test "$pmodel" -eq 8; then
873 proc
=pentium-mmx
# 4 is desktop, 8 is mobile
879 if test "$pmodel" -eq 9 -o "$pmodel" -eq 13; then
881 elif test "$pmodel" -ge 7; then
883 elif test "$pmodel" -ge 3; then
890 # A nocona in 32-bit mode has no more capabilities than a prescott.
891 if test "$pmodel" -ge 3; then
897 *) proc
=prescott iproc
=686 ;;
903 if test "$pmodel" -ge 8; then
905 elif test "$pmodel" -ge 4; then
912 # VIA C3 has SSE, but doesn't have MMX2
913 # workaround for SSE => MMX2 implication above
915 if test "$pmodel" -ge 9; then
921 *) proc
=i686 iproc
=i686
;;
926 3) proc
=i386 iproc
=386 ;;
927 4) proc
=i486 iproc
=486 ;;
928 *) proc
=i586 iproc
=586 ;;
932 proc
=i586 iproc
=586 ;;
935 # check that gcc supports our CPU, if not, fall back to earlier ones
936 # LGB: check -mcpu and -march swithing step by step with enabling
937 # to fall back till 386.
939 # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
941 if [ "$cc_vendor" = "gnu" ] && ([ "$_cc_major" -gt 3 ] ||
( [ "$_cc_major" = 3 ] && [ "$_cc_minor" -ge 4 ])) ; then
947 echocheck
"GCC & CPU optimization abilities"
949 int main(void) { return 0; }
951 if test "$_runtime_cpudetection" = no
; then
952 if test "$proc" = "k8" -o "$proc" = "opteron" -o "$proc" = "athlon64" -o "$proc" = "athlon-fx" ; then
953 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon-xp
955 if test "$proc" = "athlon-xp" ||
test "$proc" = "athlon-4" ||
test "$proc" = "athlon-tbird"; then
956 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon
958 if test "$proc" = "k6-3" ||
test "$proc" = "k6-2"; then
959 cc_check
-march=$proc $cpuopt=$proc || proc
=k6
961 if test "$proc" = "k6"; then
962 if not cc_check
-march=$proc $cpuopt=$proc; then
963 if cc_check
-march=i586
$cpuopt=i686
; then
970 if test "$proc" = "pentium4" ||
test "$proc" = "pentium-m" ||
test "$proc" = "pentium3" ||
test "$proc" = "pentium2" ||
test "$proc" = "athlon" ||
test "$proc" = "c3-2"; then
971 cc_check
-march=$proc $cpuopt=$proc || proc
=i686
973 if test "$proc" = "i686" ||
test "$proc" = "pentium-mmx" ||
test "$proc" = "winchip-c6" ||
test "$proc" = "winchip2"; then
974 cc_check
-march=$proc $cpuopt=$proc || proc
=i586
976 if test "$proc" = "i586" ||
test "$proc" = "c3" ; then
977 cc_check
-march=$proc $cpuopt=$proc || proc
=i486
979 if test "$proc" = "i486" ; then
980 cc_check
-march=$proc $cpuopt=$proc || proc
=i386
982 if test "$proc" = "i386" ; then
983 cc_check
-march=$proc $cpuopt=$proc || proc
=error
985 if test "$proc" = "error" ; then
986 echores
"CPU optimization disabled.\nYou have an old compiler and/or configure does not recognize your CPU."
990 elif test "$proc" = "i586-i686"; then
995 _march
="-march=$proc"
996 _mcpu
="$cpuopt=$proc"
999 else # if test "$_runtime_cpudetection" = no
1000 # i686 is probably the most common CPU - optimize for it
1001 _mcpu
="$cpuopt=i686"
1002 # at least i486 required, for bswap instruction
1003 _march
="-march=i486"
1004 cc_check
$_mcpu || _mcpu
=""
1005 cc_check
$_march $_mcpu || _march
=""
1008 ## Gabucino : --target takes effect here (hopefully...) by overwriting
1009 ## autodetected mcpu/march parameters
1010 if test "$_target" ; then
1011 # TODO: it may be a good idea to check GCC and fall back in all cases
1012 if test "$host_arch" = "i586-i686"; then
1013 _march
="-march=i586"
1014 _mcpu
="$cpuopt=i686"
1016 _march
="-march=$host_arch"
1017 _mcpu
="$cpuopt=$host_arch"
1025 i586|k5|k6|k6-2|k6-3|pentium|pentium-mmx
) iproc
=586 ;;
1026 i686|athlon
*|pentium
*) iproc
=686 ;;
1035 _def_arch
='#define ARCH_IA64 1'
1036 _target_arch
='TARGET_ARCH_IA64 = yes'
1045 _def_arch
='#define ARCH_X86_64 1'
1046 _target_arch
='TARGET_ARCH_X86_64 = yes'
1049 # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
1050 if test "$cc_vendor" = "gnu" && test "$_cc_major" -gt 3 -o "$_cc_major" -eq 3 -a "$_cc_minor" -ge 4 ; then
1059 # 64-bit prescotts exist, but as far as GCC is concerned they have the
1060 # same capabilities as a nocona.
1066 echocheck
"GCC & CPU optimization abilities"
1068 int main(void) { return 0; }
1070 # This is a stripped-down version of the i386 fallback.
1071 if test "$_runtime_cpudetection" = no
; then
1072 # --- AMD processors ---
1073 if test "$proc" = "k8" -o "$proc" = "opteron" -o "$proc" = "athlon64" -o "$proc" = "athlon-fx" ; then
1074 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon-xp
1076 # This will fail if gcc version < 3.3, which is ok because earlier
1077 # versions don't really support 64-bit on amd64.
1078 # Is this a valid assumption? -Corey
1079 if test "$proc" = "athlon-xp" ||
test "$proc" = "athlon-4" ; then
1080 cc_check
-march=$proc $cpuopt=$proc || proc
=error
1082 # --- Intel processors ---
1083 if test "$proc" = "nocona" ||
test "$proc" = "prescott" ; then
1084 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium4
1086 if test "$proc" = "pentium4" ||
test "$proc" = "pentium4m" ; then
1087 cc_check
-march=$proc $cpuopt=$proc || proc
=error
1090 _march
="-march=$proc"
1091 _mcpu
="$cpuopt=$proc"
1092 if test "$proc" = "error" ; then
1093 echores
"CPU optimization disabled.\nYou have an old compiler and/or configure does not recognize your CPU."
1110 _def_arch
='#define ARCH_SPARC 1'
1111 _target_arch
='TARGET_ARCH_SPARC = yes'
1114 echocheck
"CPU type"
1116 case "`echo $karch`" in
1121 sun4u
) proc
=v9 _vis
='yes' _def_vis
='#define HAVE_VIS = yes' ;;
1134 _def_arch
='#define ARCH_SPARC 1'
1135 _target_arch
='TARGET_ARCH_SPARC = yes'
1137 _def_vis
='#define HAVE_VIS = yes'
1145 arm|armv4l|armv5tel
)
1146 _def_arch
='#define ARCH_ARMV4L 1'
1147 _target_arch
='TARGET_ARCH_ARMV4L = yes'
1156 _def_arch
='#define ARCH_POWERPC 1'
1157 _def_dcbzl
='#define NO_DCBZL 1'
1158 _target_arch
='TARGET_ARCH_POWERPC = yes'
1166 echocheck
"CPU type"
1167 case $system_name in
1169 proc
=`$_cpuinfo | grep 'cpu' | cut -d ':' -f 2 | cut -d ',' -f 1 | cut -b 2- | _head 1`
1170 if test -n "`$_cpuinfo | grep altivec`"; then
1175 proc
=`$_cpuinfo | grep "Processor type" | cut -f 3 -d ' ' | sed 's/ppc//'`
1176 if [ `sysctl -n hw.vectorunit` -eq 1 -o \
1177 "`sysctl -n hw.optional.altivec 2>/dev/null`" -eq 1 ]; then
1182 # only gcc 3.4 works reliably with AltiVec code under NetBSD
1184 2*|
3.0*|
3.1*|
3.2*|
3.3*)
1187 if [ `sysctl -n machdep.altivec` -eq 1 ]; then
1194 if test "$_altivec" = yes; then
1195 echores
"$proc altivec"
1200 echocheck
"GCC & CPU optimization abilities"
1202 if test -n "$proc"; then
1204 601) _march
='-mcpu=601' _mcpu
='-mtune=601' ;;
1205 603) _march
='-mcpu=603' _mcpu
='-mtune=603' ;;
1206 603e|
603ev
) _march
='-mcpu=603e' _mcpu
='-mtune=603e' ;;
1207 604|
604e|
604r|
604ev
) _march
='-mcpu=604' _mcpu
='-mtune=604' ;;
1208 740|
740/750|
745/755) _march
='-mcpu=740' _mcpu
='-mtune=740' ;;
1209 750|
750CX
) _march
='-mcpu=750' _mcpu
='-mtune=750' ;;
1212 # gcc 3.1(.1) and up supports 7400 and 7450
1213 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "1" ||
test "$_cc_major" -ge "4"; then
1215 7400*|
7410*) _march
='-mcpu=7400' _mcpu
='-mtune=7400' ;;
1216 7450*|
7455*) _march
='-mcpu=7450' _mcpu
='-mtune=7450' ;;
1220 # gcc 3.2 and up supports 970
1221 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "3" ||
test "$_cc_major" -ge "4"; then
1223 970*) _march
='-mcpu=970' _mcpu
='-mtune=970'
1224 _def_dcbzl
='#undef NO_DCBZL' ;;
1230 if test -n "$_mcpu"; then
1231 _optimizing
=`echo $_mcpu | cut -c 8-`
1232 echores
"$_optimizing"
1240 _def_arch
='#define ARCH_ALPHA 1'
1241 _target_arch
='TARGET_ARCH_ALPHA = yes'
1245 echocheck
"CPU type"
1248 unsigned long ver, mask;
1249 asm ("implver %0" : "=r" (ver));
1250 asm ("amask %1, %0" : "=r" (mask) : "r" (-1));
1251 printf("%ld-%x\n", ver, ~mask);
1255 $_cc -o "$TMPO" "$TMPC"
1258 0-0) proc
="ev4"; cpu_understands_mvi
="0";;
1259 1-0) proc
="ev5"; cpu_understands_mvi
="0";;
1260 1-1) proc
="ev56"; cpu_understands_mvi
="0";;
1261 1-101) proc
="pca56"; cpu_understands_mvi
="1";;
1262 2-303) proc
="ev6"; cpu_understands_mvi
="1";;
1263 2-307) proc
="ev67"; cpu_understands_mvi
="1";;
1264 2-1307) proc
="ev68"; cpu_understands_mvi
="1";;
1268 echocheck
"GCC & CPU optimization abilities"
1269 if test "$proc" = "ev68" ; then
1270 cc_check
-mcpu=$proc || proc
=ev67
1272 if test "$proc" = "ev67" ; then
1273 cc_check
-mcpu=$proc || proc
=ev6
1280 echocheck
"MVI instruction support in GCC"
1281 if test "$_cc_major" -ge "3" && test "$cpu_understands_mvi" = "1" ; then
1282 _def_gcc_mvi_support
="#define CAN_COMPILE_ALPHA_MVI 1"
1285 _def_gcc_mvi_support
="#undef CAN_COMPILE_ALPHA_MVI"
1286 echores
"no, GCC = `$_cc -dumpversion 2>&1` (must be >= 3), CPU = $proc (must be pca56 or later)"
1291 _def_arch
='#define ARCH_SGI_MIPS 1'
1292 _target_arch
='TARGET_ARCH_SGI_MIPS = yes'
1300 echocheck
"CPU type"
1301 proc
=`hinv -c processor | grep CPU | cut -d " " -f3`
1302 case "`echo $proc`" in
1303 R3000
) _march
='-mips1' _mcpu
='-mtune=r2000' ;;
1304 R4000
) _march
='-mips3' _mcpu
='-mtune=r4000' ;;
1305 R4400
) _march
='-mips3' _mcpu
='-mtune=r4400' ;;
1306 R4600
) _march
='-mips3' _mcpu
='-mtune=r4600' ;;
1307 R5000
) _march
='-mips4' _mcpu
='-mtune=r5000' ;;
1308 R8000|R10000|R12000|R14000|R16000
) _march
='-mips4' _mcpu
='-mtune=r8000' ;;
1316 _def_arch
='#define ARCH_PA_RISC 1'
1317 _target_arch
='TARGET_ARCH_PA_RISC = yes'
1326 _def_arch
='#define ARCH_S390 1'
1327 _target_arch
='TARGET_ARCH_S390 = yes'
1336 _def_arch
='#define ARCH_S390X 1'
1337 _target_arch
='TARGET_ARCH_S390X = yes'
1346 _def_arch
='#define ARCH_VAX 1'
1347 _target_arch
='TARGET_ARCH_VAX = yes'
1356 echo "The architecture of your CPU ($host_arch) is not supported by this configure script"
1357 echo "It seems nobody has ported MPlayer to your OS or CPU type yet."
1358 die
"unsupported architecture $host_arch"
1360 esac # case "$host_arch" in
1362 if test "$_runtime_cpudetection" = yes ; then
1377 if x86
&& test "$_runtime_cpudetection" = no
; then
1379 if test "$1" = yes ; then
1380 echocheck
"kernel support of $2"
1383 void catch() { exit(1); }
1385 signal(SIGILL, catch);
1386 __asm__ __volatile__ ("$3":::"memory");return(0);
1390 if cc_check
&& tmp_run
; then
1392 _optimizing
="$_optimizing $2"
1396 echo "It seems that your kernel does not correctly support $2."
1397 echo "To use $2 extensions in MPlayer, you have to upgrade/recompile your kernel!"
1404 extcheck
$_mmx "mmx" "emms" || _mmx
=no
1405 extcheck
$_mmx2 "mmx2" "sfence" || _mmx2
=no
1406 extcheck
$_3dnow "3dnow" "femms" || _3dnow
=no
1407 extcheck
$_3dnowex "3dnowex" "pswapd %%mm0, %%mm0" || _3dnowex
=no
1408 extcheck
$_sse "sse" "xorps %%xmm0, %%xmm0" || _sse
=no _gcc3_ext
="$_gcc3_ext -mno-sse"
1409 extcheck
$_sse2 "sse2" "xorpd %%xmm0, %%xmm0" || _sse2
=no _gcc3_ext
="$_gcc3_ext -mno-sse2"
1410 echocheck
"mtrr support"
1413 if test "$_mtrr" = yes ; then
1414 _optimizing
="$_optimizing mtrr"
1417 if test "$_gcc3_ext" != ""; then
1418 # if we had to disable sse/sse2 because the active kernel does not
1419 # support this instruction set extension, we also have to tell
1420 # gcc3 to not generate sse/sse2 instructions for normal C code
1422 int main(void) { return 0; }
1424 cc_check
$_march $_gcc3_ext && _march
="$_march $_gcc3_ext"
1429 echocheck
"assembler support of -pipe option"
1431 int main(void) { return 0; }
1433 cc_check
-pipe && _pipe
="-pipe" && echores
"yes" || echores
"no"
1435 _prefix
="/usr/local"
1436 _xvmclib
="XvMCNVIDIA"
1438 # GOTCHA: the variables below defines the default behavior for autodetection
1439 # and have - unless stated otherwise - at least 2 states : yes no
1440 # If autodetection is available then the third state is: auto
1445 _libavcodecs
=`grep 'register_avcodec(&[a-z]' libavcodec/allcodecs.c | sed 's/.*&\(.*\)).*/\1/'`
1452 _dga
=auto
# 1 2 no auto
1454 _xvmc
=no
#auto when complete
1489 _tremor_internal
=yes
1498 _matroska_internal
=yes
1505 # dvdnav disabled, it does not work
1570 _macosx_finder_support
=no
1573 _freetypeconfig
='freetype-config'
1575 _fribidiconfig
='fribidi-config'
1578 _gethostbyname2
=auto
1584 case "$ac_option" in
1590 --enable-gcc-checking) ;;
1591 --disable-gcc-checking) ;;
1592 --enable-static*) ;;
1593 --disable-static*) ;;
1594 --with-extraincdir=*) ;;
1595 --with-extralibdir=*) ;;
1596 --enable-runtime-cpudetection) ;;
1597 --disable-runtime-cpudetection) ;;
1598 --enable-cross-compile) ;;
1599 --disable-cross-compile) ;;
1600 --install-path=*) ;;
1601 --with-install=*) ;;
1604 --enable-mencoder) _mencoder
=yes ;;
1605 --disable-mencoder) _mencoder
=no
;;
1606 --enable-i18n) _i18n
=yes ;;
1607 --disable-i18n) _i18n
=no
;;
1608 --enable-dynamic-plugins) _dynamic_plugins
=yes ;;
1609 --disable-dynamic-plugins) _dynamic_plugins
=no
;;
1610 --enable-x11) _x11
=yes ;;
1611 --disable-x11) _x11
=no
;;
1612 --enable-xv) _xv
=yes ;;
1613 --disable-xv) _xv
=no
;;
1614 --enable-xvmc) _xvmc
=yes ;;
1615 --disable-xvmc) _xvmc
=no
;;
1616 --enable-sdl) _sdl
=yes ;;
1617 --disable-sdl) _sdl
=no
;;
1618 --enable-directx) _directx
=yes ;;
1619 --disable-directx) _directx
=no
;;
1620 --enable-win32waveout) _win32waveout
=yes ;;
1621 --disable-win32waveout) _win32waveout
=no
;;
1622 --enable-nas) _nas
=yes ;;
1623 --disable-nas) _nas
=no
;;
1624 --enable-png) _png
=yes ;;
1625 --disable-png) _png
=no
;;
1626 --enable-jpeg) _jpg
=yes ;;
1627 --disable-jpeg) _jpg
=no
;;
1628 --enable-pnm) _pnm
=yes ;;
1629 --disable-pnm) _pnm
=no
;;
1630 --enable-md5sum) _md5sum
=yes ;;
1631 --disable-md5sum) _md5sum
=no
;;
1632 --enable-gif) _gif
=yes ;;
1633 --disable-gif) _gif
=no
;;
1634 --enable-gl) _gl
=yes ;;
1635 --disable-gl) _gl
=no
;;
1636 --enable-ggi) _ggi
=yes ;;
1637 --disable-ggi) _ggi
=no
;;
1638 --enable-ggiwmh) _ggiwmh
=yes ;;
1639 --disable-ggiwmh) _ggiwmh
=no
;;
1640 --enable-aa) _aa
=yes ;;
1641 --disable-aa) _aa
=no
;;
1642 --enable-caca) _caca
=yes ;;
1643 --disable-caca) _caca
=no
;;
1644 --enable-svga) _svga
=yes ;;
1645 --disable-svga) _svga
=no
;;
1646 --enable-vesa) _vesa
=yes ;;
1647 --disable-vesa) _vesa
=no
;;
1648 --enable-fbdev) _fbdev
=yes ;;
1649 --disable-fbdev) _fbdev
=no
;;
1650 --enable-dvb) _dvb
=yes ;;
1651 --disable-dvb) _dvb
=no
;;
1652 --enable-dvbhead) _dvbhead
=yes ;;
1653 --disable-dvbhead) _dvbhead
=no
;;
1654 --enable-dxr2) _dxr2
=yes ;;
1655 --disable-dxr2) _dxr2
=no
;;
1656 --enable-dxr3) _dxr3
=yes ;;
1657 --disable-dxr3) _dxr3
=no
;;
1658 --enable-iconv) _iconv
=yes ;;
1659 --disable-iconv) _iconv
=no
;;
1660 --enable-langinfo) _langinfo
=yes ;;
1661 --disable-langinfo) _langinfo
=no
;;
1662 --enable-rtc) _rtc
=yes ;;
1663 --disable-rtc) _rtc
=no
;;
1664 --enable-mp1e) _mp1e
=yes ;;
1665 --disable-mp1e) _mp1e
=no
;;
1666 --enable-libdv) _libdv
=yes ;;
1667 --disable-libdv) _libdv
=no
;;
1668 --enable-ossaudio) _ossaudio
=yes ;;
1669 --disable-ossaudio) _ossaudio
=no
;;
1670 --enable-arts) _arts
=yes ;;
1671 --disable-arts) _arts
=no
;;
1672 --enable-esd) _esd
=yes ;;
1673 --disable-esd) _esd
=no
;;
1674 --enable-polyp) _polyp
=yes ;;
1675 --disable-polyp) _polyp
=no
;;
1676 --enable-jack) _jack
=yes ;;
1677 --disable-jack) _jack
=no
;;
1678 --enable-mad) _mad
=yes ;;
1679 --disable-mad) _mad
=no
;;
1680 --disable-toolame) _toolame
=no
;;
1681 --disable-twolame) _twolame
=no
;;
1682 --enable-libcdio) _libcdio
=yes ;;
1683 --disable-libcio) _libcdio
=no
;;
1684 --enable-liblzo) _liblzo
=yes ;;
1685 --disable-liblzo) _liblzo
=no
;;
1686 --enable-vorbis) _vorbis
=yes ;;
1687 --disable-vorbis) _vorbis
=no
;;
1688 --enable-speex) _speex
=yes ;;
1689 --disable-speex) _speex
=no
;;
1690 --enable-internal-tremor) _tremor_internal
=yes ;;
1691 --disable-internal-tremor) _tremor_internal
=no
;;
1692 --enable-tremor-low) _tremor_low
=yes ;;
1693 --disable-tremor-low) _tremor_low
=no
;;
1694 --enable-external-tremor) _tremor
=yes ;;
1695 --disable-external-tremor) _tremor
=no
;;
1696 --enable-theora) _theora
=yes ;;
1697 --disable-theora) _theora
=no
;;
1698 --enable-mp3lib) _mp3lib
=yes ;;
1699 --disable-mp3lib) _mp3lib
=no
;;
1700 --enable-liba52) _liba52
=yes ;;
1701 --disable-liba52) _liba52
=no
;;
1702 --enable-libdts) _libdts
=yes ;;
1703 --disable-libdts) _libdts
=no
;;
1704 --enable-libmpeg2) _libmpeg2
=yes ;;
1705 --disable-libmpeg2) _libmpeg2
=no
;;
1706 --enable-musepack) _musepack
=yes ;;
1707 --disable-musepack) _musepack
=no
;;
1708 --enable-internal-matroska) _matroska_internal
=yes ;;
1709 --disable-internal-matroska) _matroska_internal
=no
;;
1710 --enable-internal-faad) _faad_internal
=yes _faad_external
=no
;;
1711 --disable-internal-faad) _faad_internal
=no
;;
1712 --enable-external-faad) _faad_external
=yes _faad_internal
=no
;;
1713 --disable-external-faad) _faad_external
=no
;;
1714 --enable-faac) _faac
=yes ;;
1715 --disable-faac) _faac
=no
;;
1716 --enable-ladspa) _ladspa
=yes ;;
1717 --disable-ladspa) _ladspa
=no
;;
1718 --enable-xmms) _xmms
=yes ;;
1719 --disable-xmms) _xmms
=no
;;
1720 --enable-dvdread) _dvdread
=yes ;;
1721 --disable-dvdread) _dvdread
=no
;;
1722 --enable-mpdvdkit) _dvdkit
=yes ;;
1723 --disable-mpdvdkit) _dvdkit
=no
;;
1724 # dvdnav disabled, it does not work
1725 # --enable-dvdnav) _dvdnav=yes ;;
1726 # --disable-dvdnav) _dvdnav=no ;;
1727 --enable-xanim) _xanim
=yes ;;
1728 --disable-xanim) _xanim
=no
;;
1729 --enable-real) _real
=yes ;;
1730 --disable-real) _real
=no
;;
1731 --enable-live) _live
=yes ;;
1732 --disable-live) _live
=no
;;
1733 --enable-xinerama) _xinerama
=yes ;;
1734 --disable-xinerama) _xinerama
=no
;;
1735 --enable-mga) _mga
=yes ;;
1736 --disable-mga) _mga
=no
;;
1737 --enable-xmga) _xmga
=yes ;;
1738 --disable-xmga) _xmga
=no
;;
1739 --enable-vm) _vm
=yes ;;
1740 --disable-vm) _vm
=no
;;
1741 --enable-xf86keysym) _xf86keysym
=yes ;;
1742 --disable-xf86keysym) _xf86keysym
=no
;;
1743 --enable-mlib) _mlib
=yes ;;
1744 --disable-mlib) _mlib
=no
;;
1745 --enable-sunaudio) _sunaudio
=yes ;;
1746 --disable-sunaudio) _sunaudio
=no
;;
1747 --enable-sgiaudio) _sgiaudio
=yes ;;
1748 --disable-sgiaudio) _sgiaudio
=no
;;
1749 --enable-alsa) _alsa
=yes ;;
1750 --disable-alsa) _alsa
=no
;;
1751 --enable-tv) _tv
=yes ;;
1752 --disable-tv) _tv
=no
;;
1753 --enable-edl) _edl
=yes ;;
1754 --disable-edl) _edl
=no
;;
1755 --enable-tv-bsdbt848) _tv_bsdbt848
=yes ;;
1756 --disable-tv-bsdbt848) _tv_bsdbt848
=no
;;
1757 --enable-tv-v4l) _tv_v4l
=yes ;;
1758 --disable-tv-v4l) _tv_v4l
=no
;;
1759 --enable-tv-v4l2) _tv_v4l2
=yes ;;
1760 --disable-tv-v4l2) _tv_v4l2
=no
;;
1761 --enable-fastmemcpy) _fastmemcpy
=yes ;;
1762 --disable-fastmemcpy) _fastmemcpy
=no
;;
1763 --enable-network) _network
=yes ;;
1764 --disable-network) _network
=no
;;
1765 --enable-winsock2) _winsock2
=yes ;;
1766 --disable-winsock2) _winsock2
=no
;;
1767 --enable-smb) _smbsupport
=yes ;;
1768 --disable-smb) _smbsupport
=no
;;
1769 --enable-vidix) _vidix
=yes ;;
1770 --disable-vidix) _vidix
=no
;;
1771 --enable-joystick) _joystick
=yes ;;
1772 --disable-joystick) _joystick
=no
;;
1773 --enable-xvid) _xvid
=yes ;;
1774 --disable-xvid) _xvid
=no
;;
1775 --enable-x264) _x264
=yes ;;
1776 --disable-x264) _x264
=no
;;
1777 --enable-divx4linux) _divx4linux
=yes ;;
1778 --disable-divx4linux) _divx4linux
=no
;;
1779 --enable-opendivx) _opendivx
=yes ;;
1780 --disable-opendivx) _opendivx
=no
;;
1781 --enable-libavcodec) _libavcodec
=yes ;;
1782 --disable-libavcodec) _libavcodec
=no
;;
1783 --enable-amr_nb) _amr_nb
=yes ;;
1784 --disable-amr_nb) _amr_nb
=no
;;
1785 --enable-amr_nb-fixed) _amr_nb_fixed
=yes ;;
1786 --disable-amr_nb-fixed) _amr_nb_fixed
=no
;;
1787 --enable-amr_wb) _amr_wb
=yes ;;
1788 --disable-amr_wb) _amr_wb
=no
;;
1789 --enable-codec=*) _libavcodecs
="$_libavcodecs `echo $ac_option | cut -d '=' -f 2`" ;;
1790 --disable-codec=*) _libavcodecs
=`echo $_libavcodecs | sed "s/\`echo $ac_option | cut
-d '=' -f 2\
`//g"` ;;
1791 --enable-libavformat) _libavformat
=yes;;
1792 --disable-libavformat) _libavformat
=no
;;
1793 --enable-libfame) _fame
=yes ;;
1794 --disable-libfame) _fame
=no
;;
1795 --enable-lirc) _lirc
=yes ;;
1796 --disable-lirc) _lirc
=no
;;
1797 --enable-lircc) _lircc
=yes ;;
1798 --disable-lircc) _lircc
=no
;;
1799 --enable-gui) _gui
=yes ;;
1800 --disable-gui) _gui
=no
;;
1801 --enable-old-gtk) _gtk1
=yes ;;
1802 --enable-termcap) _termcap
=yes ;;
1803 --disable-termcap) _termcap
=no
;;
1804 --enable-termios) _termios
=yes ;;
1805 --disable-termios) _termios
=no
;;
1806 --enable-3dfx) _3dfx
=yes ;;
1807 --disable-3dfx) _3dfx
=no
;;
1808 --enable-tdfxfb) _tdfxfb
=yes ;;
1809 --disable-tdfxvid) _tdfxvid
=no
;;
1810 --enable-tdfxvid) _tdfxvid
=yes ;;
1811 --disable-tga) _tga
=no
;;
1812 --enable-tga) _tga
=yes ;;
1813 --disable-tdfxfb) _tdfxfb
=no
;;
1814 --enable-directfb) _directfb
=yes ;;
1815 --disable-directfb) _directfb
=no
;;
1816 --enable-zr) _zr
=yes ;;
1817 --disable-zr) _zr
=no
;;
1818 --enable-bl) _bl
=yes ;;
1819 --disable-bl) _bl
=no
;;
1820 --enable-mtrr) _mtrr
=yes ;;
1821 --disable-mtrr) _mtrr
=no
;;
1822 --enable-largefiles) _largefiles
=yes ;;
1823 --disable-largefiles) _largefiles
=no
;;
1824 --enable-shm) _shm
=yes ;;
1825 --disable-shm) _shm
=no
;;
1826 --enable-select) _select
=yes ;;
1827 --disable-select) _select
=no
;;
1828 --enable-linux-devfs) _linux_devfs
=yes ;;
1829 --disable-linux-devfs) _linux_devfs
=no
;;
1830 --enable-cdparanoia) _cdparanoia
=yes ;;
1831 --disable-cdparanoia) _cdparanoia
=no
;;
1832 --enable-big-endian) _big_endian
=yes ;;
1833 --disable-big-endian) _big_endian
=no
;;
1834 --enable-freetype) _freetype
=yes ;;
1835 --disable-freetype) _freetype
=no
;;
1836 --enable-fontconfig) _fontconfig
=yes ;;
1837 --disable-fontconfig) _fontconfig
=no
;;
1838 --enable-unrarlib) _unrarlib
=yes ;;
1839 --disable-unrarlib) _unrarlib
=no
;;
1840 --enable-ftp) _ftp
=yes ;;
1841 --disable-ftp) _ftp
=no
;;
1842 --enable-vstream) _vstream
=yes ;;
1843 --disable-vstream) _vstream
=no
;;
1844 --enable-pthreads) _pthreads
=yes ;;
1845 --disable-pthreads) _pthreads
=no
;;
1847 --enable-fribidi) _fribidi
=yes ;;
1848 --disable-fribidi) _fribidi
=no
;;
1850 --enable-enca) _enca
=yes ;;
1851 --disable-enca) _enca
=no
;;
1853 --enable-inet6) _inet6
=yes ;;
1854 --disable-inet6) _inet6
=no
;;
1856 --enable-gethostbyname2) _gethostbyname2
=yes ;;
1857 --disable-gethostbyname2) _gethostbyname2
=no
;;
1859 --enable-dga) _dga
=auto
;; # as we don't know if it's 1 or 2
1860 --enable-dga=*) _dga
=`echo $ac_option | cut -d '=' -f 2` ;;
1861 --disable-dga) _dga
=no
;;
1863 --enable-menu) _menu
=yes ;;
1864 --disable-menu) _menu
=no
;;
1866 --enable-qtx) _qtx
=yes ;;
1867 --disable-qtx) _qtx
=no
;;
1869 --enable-macosx) _macosx
=yes ;;
1870 --disable-macosx) _macosx
=no
;;
1871 --enable-macosx-finder-support) _macosx_finder_support
=yes ;;
1872 --disable-macosx-finder-support) _macosx_finder_support
=no
;;
1873 --enable-macosx-bundle) _macosx_bundle
=yes;;
1874 --disable-macosx-bundle) _macosx_bundle
=no
;;
1876 --enable-sortsub) _sortsub
=yes ;;
1877 --disable-sortsub) _sortsub
=no
;;
1880 _charset
=`echo $ac_option | cut -d '=' -f 2`
1883 _language
=`echo $ac_option | cut -d '=' -f 2`
1885 # dvdnav disabled, it does not work
1886 # --with-libdvdnav=*)
1887 # _dvdnavdir=`echo $ac_option | cut -d '=' -f 2`
1892 _win32libdir
=`echo $ac_option | cut -d '=' -f 2`
1893 _xanimlibdir
=`echo $ac_option | cut -d '=' -f 2`
1894 _reallibdir
=`echo $ac_option | cut -d '=' -f 2`
1896 --with-win32libdir=*)
1897 _win32libdir
=`echo $ac_option | cut -d '=' -f 2`
1900 --with-xanimlibdir=*)
1901 _xanimlibdir
=`echo $ac_option | cut -d '=' -f 2`
1904 --with-reallibdir=*)
1905 _reallibdir
=`echo $ac_option | cut -d '=' -f 2`
1908 --with-livelibdir=*)
1909 _livelibdir
=`echo $ac_option | cut -d '=' -f 2`
1911 --with-toolamedir=*)
1912 _toolamedir
=`echo $ac_option | cut -d '=' -f 2`
1915 _mlibdir
=`echo $ac_option | cut -d '=' -f 2`
1919 --with-xmmslibdir=*)
1920 _xmmslibdir
=`echo $ac_option | cut -d '=' -f 2`
1923 --with-xmmsplugindir=*)
1924 _xmmsplugindir
=`echo $ac_option | cut -d '=' -f 2`
1937 _debug
=`echo $_echo_n '-g'$_echo_c; echo $ac_option | cut -d '=' -f 2`
1942 --enable-crash-debug)
1945 --disable-crash-debug)
1948 --enable-sighandler)
1951 --disable-sighandler)
1955 --enable-sse) _sse
=yes ;;
1956 --disable-sse) _sse
=no
;;
1957 --enable-sse2) _sse2
=yes ;;
1958 --disable-sse2) _sse2
=no
;;
1959 --enable-mmx2) _mmx2
=yes ;;
1960 --disable-mmx2) _mmx2
=no
;;
1961 --enable-3dnow) _3dnow
=yes ;;
1962 --disable-3dnow) _3dnow
=no _3dnowex
=no
;;
1963 --enable-3dnowex) _3dnow
=yes _3dnowex
=yes ;;
1964 --disable-3dnowex) _3dnowex
=no
;;
1965 --enable-altivec) _altivec
=yes ;;
1966 --disable-altivec) _altivec
=no
;;
1967 --enable-mmx) _mmx
=yes ;;
1968 --disable-mmx) # 3Dnow! and MMX2 require MMX
1969 _3dnow
=no _3dnowex
=no _mmx
=no _mmx2
=no
;;
1971 --enable-win32) _win32
=yes ;;
1972 --disable-win32) _win32
=no _dshow
=no
;;
1973 --enable-dshow) _win32
=yes _dshow
=yes ;;
1974 --disable-dshow) _dshow
=no
;;
1977 _inc_x11
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1980 _x11_paths
=`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
1982 --with-dxr2incdir=*)
1983 _inc_dxr2
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1986 _xvmclib
=`echo $ac_option | cut -d '=' -f 2`
1989 _inc_dvb
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1991 --with-xvidlibdir=*)
1992 _ld_xvid
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
1994 --with-xvidincdir=*)
1995 _inc_xvid
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1998 _ld_libdts
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
2001 _inc_libdts
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
2003 --with-x264libdir=*)
2004 _ld_x264
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
2006 --with-x264incdir=*)
2007 _inc_x264
=-I`echo $ac_option | cut -d '=' -f 2 |sed 's,:, -I,g'`
2009 --with-sdl-config=*)
2010 _sdlconfig
=`echo $ac_option | cut -d '=' -f 2`
2012 --with-freetype-config=*)
2013 _freetypeconfig
=`echo $ac_option | cut -d '=' -f 2`
2015 --with-fribidi-config=*)
2016 _fribidiconfig
=`echo $ac_option | cut -d '=' -f 2`
2018 --with-gtk-config=*)
2019 _gtkconfig
=`echo $ac_option | cut -d '=' -f 2`
2021 --with-glib-config=*)
2022 _glibconfig
=`echo $ac_option | cut -d '=' -f 2`
2024 # dvdnav disabled, it does not work
2025 # --with-dvdnav-config=*)
2026 # _dvdnavconfig=`echo $ac_option | cut -d '=' -f 2`
2029 _ld_mad
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
2031 --with-cdparanoiaincdir=*)
2032 _inc_cdparanoia
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
2034 --with-cdparanoialibdir=*)
2035 _ld_cdparanoia
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
2037 --with-termcaplib=*)
2038 _ld_termcap
=-l`echo $ac_option | cut -d '=' -f 2`
2042 _prefix
=`echo $ac_option | cut -d '=' -f 2`
2045 _bindir
=`echo $ac_option | cut -d '=' -f 2`
2048 _datadir
=`echo $ac_option | cut -d '=' -f 2`
2051 _mandir
=`echo $ac_option | cut -d '=' -f 2`
2054 _confdir
=`echo $ac_option | cut -d '=' -f 2`
2057 _libdir
=`echo $ac_option | cut -d '=' -f 2`
2061 echo "Unknown parameter: $ac_option"
2068 # Atmos: moved this here, to be correct, if --prefix is specified
2069 test -z "$_bindir" && _bindir
="$_prefix/bin"
2070 test -z "$_datadir" && _datadir
="$_prefix/share/mplayer"
2071 test -z "$_mandir" && _mandir
="$_prefix/man"
2072 test -z "$_confdir" && _confdir
="$_prefix/etc/mplayer"
2073 test -z "$_libdir" && _libdir
="$_prefix/lib"
2074 test -z "$_mlibdir" && _mlibdir
="$MLIBHOME"
2077 # Checking assembler (_as) compatibility...
2078 # Added workaround for older as that reads from stdin by default - atmos
2079 as_version
=`echo '' | $_as -version 2>&1 | sed -n 's/^.*assembler \(version \)*\([0-9.]*\).*$/\2/p'`
2080 echocheck
"assembler ($_as $as_version)"
2082 _pref_as_version
='2.9.1'
2084 if test "$_mmx" = yes ; then
2085 echo 'emms' >> $TMPS
2087 if test "$_3dnow" = yes ; then
2088 _pref_as_version
='2.10.1'
2089 echo 'femms' >> $TMPS
2091 if test "$_3dnowex" = yes ; then
2092 _pref_as_version
='2.10.1'
2093 echo 'pswapd %mm0, %mm0' >> $TMPS
2095 if test "$_mmx2" = yes ; then
2096 _pref_as_version
='2.10.1'
2097 echo 'movntq %mm0, (%eax)' >> $TMPS
2099 if test "$_sse" = yes ; then
2100 _pref_as_version
='2.10.1'
2101 echo 'xorps %xmm0, %xmm0' >> $TMPS
2103 #if test "$_sse2" = yes ; then
2104 # _pref_as_version='2.11'
2105 # echo 'xorpd %xmm0, %xmm0' >> $TMPS
2107 $_as $TMPS -o $TMPO > /dev
/null
2>&1 || as_verc_fail
=yes
2109 if test "$as_verc_fail" != yes ; then
2113 echo "Upgrade binutils to ${_pref_as_version} ..."
2114 die
"obsolete binutils version"
2120 # check if altivec is supported by the compiler, and how to enable it
2122 _altivec_gcc_flags
=''
2124 if test "$_altivec" = yes -o "$_runtime_cpudetection" = yes ; then
2125 echocheck
"GCC altivec support"
2133 FSF_flags
='-maltivec -mabi=altivec'
2134 Darwin_flags
='-faltivec -D__APPLE_ALTIVEC__'
2136 # check for Darwin-style flags first, since
2137 # gcc-3.3 (August Update from Apple) on MacOS 10.2.8
2138 # accepts but ignores FSF-style flags...
2140 if test -z "$p"; then
2141 cc_check
$Darwin_flags && p
='Darwin'
2143 if test -z "$p"; then
2144 cc_check
$FSF_flags && p
='FSF'
2148 FSF
) _altivec_gcc_flags
="$FSF_flags" _altivec
=yes ;;
2149 Darwin
) _altivec_gcc_flags
="$Darwin_flags" _altivec
=yes ;;
2153 if test -z "$p"; then
2156 p
="$p-style ($_altivec_gcc_flags)"
2162 # check if <altivec.h> should be included
2164 _def_altivec_h
='#undef HAVE_ALTIVEC_H'
2166 if test "$_altivec" = yes ; then
2167 echocheck
"altivec.h"
2169 #include <altivec.h>
2170 int main(void) { return 0; }
2173 cc_check
$_altivec_gcc_flags && _have_altivec_h
=yes
2174 if test "$_have_altivec_h" = yes ; then
2175 _def_altivec_h
='#define HAVE_ALTIVEC_H 1'
2177 echores
"$_have_altivec_h"
2180 # disable runtime cpudetection if
2181 # - we cannot generate altivec code
2182 # - altivec is disabled by the user
2184 if test "$_runtime_cpudetection" = yes -a "$_altivec" = no
; then
2185 _runtime_cpudetection
=no
2188 # show that we are optimizing for altivec (if enabled and supported)
2190 if test "$_runtime_cpudetection" = no
-a "$_altivec" = yes ; then
2191 _optimizing
="$_optimizing altivec"
2194 # if altivec is enabled, make sure the correct flags turn up in CFLAGS
2196 if test "$_altivec" = yes ; then
2197 _mcpu
="$_mcpu $_altivec_gcc_flags"
2200 # setup _def_altivec correctly
2202 if test "$_altivec" = yes ; then
2203 _def_altivec
='#define HAVE_ALTIVEC 1'
2205 _def_altivec
='#undef HAVE_ALTIVEC'
2209 _def_mmx
='#undef HAVE_MMX'
2210 test "$_mmx" = yes && _def_mmx
='#define HAVE_MMX 1'
2211 _def_mmx2
='#undef HAVE_MMX2'
2212 test "$_mmx2" = yes && _def_mmx2
='#define HAVE_MMX2 1'
2213 _def_3dnow
='#undef HAVE_3DNOW'
2214 test "$_3dnow" = yes && _def_3dnow
='#define HAVE_3DNOW 1'
2215 _def_3dnowex
='#undef HAVE_3DNOWEX'
2216 test "$_3dnowex" = yes && _def_3dnowex
='#define HAVE_3DNOWEX 1'
2217 _def_sse
='#undef HAVE_SSE'
2218 test "$_sse" = yes && _def_sse
='#define HAVE_SSE 1'
2219 _def_sse2
='#undef HAVE_SSE2'
2220 test "$_sse2" = yes && _def_sse2
='#define HAVE_SSE2 1'
2222 # Checking kernel version...
2223 if x86
&& linux
; then
2225 kernel_version
=`uname -r 2>&1`
2226 echocheck
"$system_name kernel version"
2227 case "$kernel_version" in
2228 '') kernel_version
="?.??"; _k_verc_fail
=yes;;
2229 [0-1].
[0-9].
[0-9]*|
2.
[0-3].
[0-9]*)
2230 _k_verc_problem
=yes;;
2232 if test "$_k_verc_problem" = yes && test "$_sse" = yes ; then
2235 if test "$_k_verc_fail" ; then
2236 echores
"$kernel_version, fail"
2237 echo "WARNING! If you want to run MPlayer on this system, get prepared for problems!"
2238 echo "2.2.x has limited SSE support. Upgrade the kernel or use --disable-sse if you"
2239 echo "experience crashes. MPlayer tries to autodetect if your kernel correctly"
2240 echo "supports SSE, but you have been warned! If you are using a kernel older than"
2241 echo "2.2.x you must upgrade it to get SSE support!"
2242 # die "Your kernel is too old for this CPU." # works fine on some 2.2.x so don't die (later check will test)
2244 echores
"$kernel_version, ok"
2248 if test "$_vidix" = auto
; then
2250 # should check for x86 systems supporting VIDIX (does QNX have VIDIX?)
2252 x86_64
&& _vidix
=yes
2253 ppc
&& linux
&& _vidix
=yes
2254 alpha
&& linux
&& _vidix
=yes
2260 echocheck
"mplayer binary name"
2263 _prg_mencoder
="mencoder.exe"
2266 _prg_mencoder
="mencoder"
2271 # On QNX we must link to libph - Gabucino
2273 _ld_arch
="$_ld_arch -lph"
2276 # checking for a working awk, I'm using mawk first, because it's fastest - atmos
2278 if test "$_vidix" = yes ; then
2281 for _awk
in mawk gawk nawk
awk; do
2282 if ( $_awk 'BEGIN{testme();}function testme(){print"";}' ) >> "$TMPLOG" 2>&1; then
2287 test "$_awk_verc_fail" = yes && _awk
=no
2289 if test "$_awk_verc_fail" = yes; then
2290 echo "VIDIX needs awk, but no working implementation was found!"
2291 echo "Try the GNU version, which can be downloaded from:"
2292 echo "ftp://ftp.gnu.org/gnu/gawk/"
2293 echo "If you don't need VIDIX, you can use configure --disable-vidix instead."
2298 # If IRIX we must use ar instead of ranlib (not present on IRIX systems)
2305 ######################
2306 # MAIN TESTS GO HERE #
2307 ######################
2310 echocheck
"extra headers"
2311 if test "$_inc_extra" ; then
2312 echores
"$_inc_extra"
2318 echocheck
"extra libs"
2319 if test "$_ld_extra" ; then
2320 echores
"$_ld_extra"
2327 int main(void) { return 0; }
2329 if cc_check
-lposix ; then
2330 _ld_arch
="$_ld_arch -lposix"
2338 int main(void) { return 0; }
2340 if cc_check
-lm ; then
2348 # Checking for localization ...
2349 # CSAK EGY MARADHAT - A HEGYLAKO
2351 if test "$_i18n" != no
; then
2353 #include <libintl.h>
2354 int main(void) { gettext("test"); return 0; }
2358 if test "$_i18n" = auto
; then
2359 cc_check
&& _i18n
=yes
2361 for i18n_lib
in "" "-lintl"; do
2362 cc_check
$i18n_lib && _i18n
=yes && _i18n_libs
=$i18n_lib && break
2366 if test "$_i18n" = yes ; then
2367 _def_i18n
='#define USE_I18N 1'
2369 _def_i18n
='#undef USE_I18N'
2371 if test "$_i18n_libs" ; then
2372 _res_comment
="using $_i18n_libs"
2377 echocheck
"langinfo"
2378 if test "$_langinfo" = auto
; then
2380 #include <langinfo.h>
2381 int main(void) { nl_langinfo(CODESET); return 0; }
2384 cc_check
&& _langinfo
=yes
2386 if test "$_langinfo" = yes ; then
2387 _def_langinfo
='#define USE_LANGINFO 1'
2389 _def_langinfo
='#undef USE_LANGINFO'
2391 echores
"$_langinfo"
2394 echocheck
"language"
2395 test -z "$_language" && _language
=$LINGUAS
2396 _language
=`echo $_language | sed 's/,/ /g'`
2397 echo $_language |
grep all
> /dev
/null || LANGUAGES
="$_language en"
2398 for lang
in $_language ; do
2399 test "$lang" = all
&& lang
=en
2400 if test -f "help/help_mp-${lang}.h" ; then
2404 echo -n "$lang not found, "
2405 _language
=`echo $_language | sed "s/$lang *//"`
2408 test -z "$_language" && _language
=en
2409 _mp_help
="help/help_mp-${_language}.h"
2410 test -f $_mp_help || die
"$_mp_help not found"
2411 for lang
in $LANGUAGES ; do
2412 if test -f "DOCS/man/$lang/mplayer.1" ; then
2413 MAN_LANG
="$MAN_LANG $lang"
2416 _doc_lang
=$_language
2417 test -d DOCS
/xml
/$_doc_lang || _doc_lang
=en
2418 echores
"using $_language (man pages: $MAN_LANG)"
2421 echocheck
"enable sighandler"
2422 if test "$_sighandler" = yes ; then
2423 _def_sighandler
='#define ENABLE_SIGHANDLER 1'
2425 _def_sighandler
='#undef ENABLE_SIGHANDLER'
2427 echores
"$_sighandler"
2429 echocheck
"runtime cpudetection"
2430 if test "$_runtime_cpudetection" = yes ; then
2431 _optimizing
="Runtime CPU-Detection enabled"
2432 _def_runtime_cpudetection
='#define RUNTIME_CPUDETECT 1'
2434 _def_runtime_cpudetection
='#undef RUNTIME_CPUDETECT'
2436 echores
"$_runtime_cpudetection"
2439 echocheck
"restrict keyword"
2440 for restrict_keyword
in restrict __restrict __restrict__
; do
2441 echo "void foo(char * $restrict_keyword p); int main(){}" > $TMPC
2443 _def_restrict_keyword
=$restrict_keyword
2447 if [ -n "$_def_restrict_keyword" ]; then
2448 echores
"$_def_restrict_keyword"
2452 # Avoid infinite recursion loop ("#define restrict restrict")
2453 if [ "$_def_restrict_keyword" != "restrict" ]; then
2454 _def_restrict_keyword
="#define restrict $_def_restrict_keyword"
2456 _def_restrict_keyword
=""
2460 echocheck
"__builtin_expect"
2461 # GCC branch prediction hint
2464 a = __builtin_expect (a, 10);
2465 return a == 10 ? 0 : 1;
2467 int main() { return foo(10) && foo(0); }
2470 cc_check
&& _builtin_expect
=yes
2471 if test "$_builtin_expect" = yes ; then
2472 _def_builtin_expect
='#define HAVE_BUILTIN_EXPECT 1'
2474 _def_builtin_expect
='#undef HAVE_BUILTIN_EXPECT'
2476 echores
"$_builtin_expect"
2482 int main(void) { (void) kstat_open(); (void) kstat_close(0); return 0; }
2485 cc_check
-lkstat && _kstat
=yes
2486 if test "$_kstat" = yes ; then
2487 _def_kstat
="#define HAVE_LIBKSTAT 1"
2488 _ld_arch
="-lkstat $_ld_arch"
2490 _def_kstat
="#undef HAVE_LIBKSTAT"
2496 # required for nanosleep on some systems
2499 int main(void) { (void) nanosleep(0, 0); return 0; }
2502 cc_check
-lposix4 && _posix4
=yes
2503 if test "$_posix4" = yes ; then
2504 _ld_arch
="-lposix4 $_ld_arch"
2511 int main(void) { long (*foo)(float); foo = lrintf; (void)(*foo)(0.0); return 0; }
2514 cc_check
-D_GNU_SOURCE $_ld_lm && _lrintf
=yes
2515 if test "$_lrintf" = yes ; then
2516 _def_lrintf
="#define HAVE_LRINTF 1"
2518 _def_lrintf
="#undef HAVE_LRINTF"
2525 int main(void) { (void) round(0.0); return 0; }
2528 cc_check
$_ld_lm && _round
=yes
2529 if test "$_round" = yes ; then
2530 _def_round
="#define HAVE_ROUND 1"
2532 _def_round
="#undef HAVE_ROUND"
2536 echocheck
"nanosleep"
2537 # also check for nanosleep
2540 int main(void) { (void) nanosleep(0, 0); return 0; }
2543 cc_check
$_ld_arch && _nanosleep
=yes
2544 if test "$_nanosleep" = yes ; then
2545 _def_nanosleep
='#define HAVE_NANOSLEEP 1'
2547 _def_nanosleep
='#undef HAVE_NANOSLEEP'
2549 echores
"$_nanosleep"
2553 # for Solaris (socket stuff is in -lsocket, gethostbyname and friends in -lnsl):
2554 # for BeOS (socket stuff is in -lsocket, gethostbyname and friends in -lbind):
2557 #include <sys/socket.h>
2558 int main(void) { (void) gethostbyname(0); (void) socket(AF_INET, SOCK_STREAM, 0); return 0; }
2560 for _ld_tmp
in "-lsocket -lbind" "-lsocket -ldnet" "-lsocket -lnsl" "-lnsl" "-lsocket" ; do
2561 cc_check
$_ld_tmp && _ld_sock
="$_ld_tmp" && break
2563 if test $_winsock2 = auto
&& not cygwin
; then
2566 #include <winsock2.h>
2567 int main(void) { (void) gethostbyname(0); return 0; }
2569 cc_check
-lws2_32 && _ld_sock
="-lws2_32" && _winsock2
=yes
2571 if test "$_ld_sock" ; then
2572 echores
"yes (using $_ld_sock)"
2578 if test $_winsock2 = yes ; then
2580 _def_winsock2
='#define HAVE_WINSOCK2 1'
2582 _def_winsock2
='#undef HAVE_WINSOCK2'
2587 echocheck
"inet_pton()"
2589 #include <sys/types.h>
2590 #include <sys/socket.h>
2591 #include <arpa/inet.h>
2592 int main(void) { (void) inet_pton(0, 0, 0); return 0; }
2594 if test "$_winsock2" = yes ; then
2595 echores
"not needed (using winsock2 functions)"
2596 elif cc_check
$_ld_sock ; then
2597 # NOTE: Linux has libresolv but does not need it
2599 echores
"yes (using $_ld_sock)"
2600 elif cc_check
$_ld_sock -lresolv ; then
2601 # NOTE: needed for SunOS at least
2602 _ld_sock
="$_ld_sock -lresolv"
2603 echores
"yes (using $_ld_sock)"
2605 echores
"no (=> i'll try inet_aton next)"
2607 echocheck
"inet_aton()"
2609 #include <sys/types.h>
2610 #include <sys/socket.h>
2611 #include <arpa/inet.h>
2612 int main(void) { (void) inet_aton(0, 0); return 0; }
2615 if cc_check
$_ld_sock ; then
2616 # NOTE: Linux has libresolv but does not need it
2618 echores
"yes (using $_ld_sock)"
2619 elif cc_check
$_ld_sock -lresolv ; then
2620 # NOTE: needed for SunOS at least
2621 _ld_sock
="$_ld_sock -lresolv"
2622 echores
"yes (using $_ld_sock)"
2626 echores
"no (=> network support disabled)"
2630 _def_use_aton
='#undef USE_ATON'
2631 if test "$_use_aton" != no
; then
2632 _def_use_aton
='#define USE_ATON 1'
2636 echocheck
"inttypes.h (required)"
2638 #include <inttypes.h>
2639 int main(void) { return 0; }
2642 cc_check
&& _inttypes
=yes
2643 if test "$_inttypes" = yes ; then
2648 echocheck
"bitypes.h (inttypes.h predecessor)"
2650 #include <sys/bitypes.h>
2651 int main(void) { return 0; }
2654 cc_check
&& _inttypes
=yes
2655 if test "$_inttypes" = yes ; then
2656 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."
2658 die
"Cannot find header either inttypes.h or bitypes.h (see DOCS/HTML/$_doc_lang/faq.html)."
2661 echores
"$_inttypes"
2664 echocheck
"int_fastXY_t in inttypes.h"
2666 #include <inttypes.h>
2668 volatile int_fast16_t v= 0;
2672 cc_check
&& _fast_inttypes
=yes
2673 if test "$_fast_inttypes" = yes ; then
2677 _def_fast_inttypes
='
2678 typedef signed char int_fast8_t;
2679 typedef signed int int_fast16_t;
2680 typedef signed int int_fast32_t;
2681 typedef unsigned char uint_fast8_t;
2682 typedef unsigned int uint_fast16_t;
2683 typedef unsigned int uint_fast32_t;'
2685 echores
"$_fast_inttypes"
2688 echocheck
"word size"
2689 _mp_wordsize
="#undef MP_WORDSIZE"
2692 #include <sys/types.h>
2693 int main(void) { printf("%d\n", sizeof(size_t)*8); return 0; }
2695 cc_check
&& _wordsize
=`$TMPO` && _mp_wordsize
="#define MP_WORDSIZE $_wordsize"
2696 echores
"$_wordsize"
2699 echocheck
"stddef.h"
2702 int main(void) { return 0; }
2705 cc_check
&& _stddef
=yes
2706 if test "$_stddef" = yes ; then
2707 _def_stddef
='#define HAVE_STDDEF_H 1'
2709 _def_stddef
='#undef HAVE_STDDEF_H'
2714 echocheck
"malloc.h"
2717 int main(void) { (void) malloc(0); return 0; }
2720 cc_check
&& _malloc
=yes
2721 if test "$_malloc" = yes ; then
2722 _def_malloc
='#define HAVE_MALLOC_H 1'
2724 _def_malloc
='#undef HAVE_MALLOC_H'
2726 # malloc.h emits a warning in FreeBSD and OpenBSD
2727 freebsd || openbsd
&& _def_malloc
='#undef HAVE_MALLOC_H'
2731 echocheck
"memalign()"
2732 # XXX restrict to x86 ? extend to other CPUs/cacheline sizes ?
2735 int main (void) { (void) memalign(64, sizeof(char)); return 0; }
2738 cc_check
&& _memalign
=yes
2739 if test "$_memalign" = yes ; then
2740 _def_memalign
='#define HAVE_MEMALIGN 1'
2742 _def_memalign
='#undef HAVE_MEMALIGN'
2744 echores
"$_memalign"
2747 echocheck
"alloca.h"
2750 int main(void) { (void) alloca(0); return 0; }
2753 cc_check
&& _alloca
=yes
2755 _def_alloca
='#define HAVE_ALLOCA_H 1'
2757 _def_alloca
='#undef HAVE_ALLOCA_H'
2764 #include <sys/types.h>
2765 #include <sys/mman.h>
2766 int main(void) { (void) mmap(0, 0, 0, 0, 0, 0); return 0; }
2769 cc_check
&& _mman
=yes
2770 if test "$_mman" = yes ; then
2771 _def_mman
='#define HAVE_SYS_MMAN_H 1'
2773 _def_mman
='#undef HAVE_SYS_MMAN_H'
2778 #include <sys/types.h>
2779 #include <sys/mman.h>
2780 int main(void) { void *p = MAP_FAILED; return 0; }
2782 _mman_has_map_failed
=no
2783 cc_check
&& _mman_has_map_failed
=yes
2784 if test "$_mman_has_map_failed" = yes ; then
2785 _def_mman_has_map_failed
=''
2787 _def_mman_has_map_failed
='#define MAP_FAILED ((void *) -1)'
2790 echocheck
"dynamic loader"
2793 int main(void) { dlopen(0, 0); dlclose(0); dlsym(0, 0); return 0; }
2796 for _ld_tmp
in "" "-ldl" ; do
2797 cc_check
$_ld_tmp && _ld_dl
="$_ld_tmp" && _dl
=yes && break
2799 if test "$_dl" = yes ; then
2800 _def_dl
='#define HAVE_LIBDL 1'
2802 _def_dl
='#undef HAVE_LIBDL'
2807 echocheck
"dynamic a/v plugins support"
2808 if test "$_dl" = no
; then
2811 if test "$_dynamic_plugins" = yes ; then
2812 _def_dynamic_plugins
='#define DYNAMIC_PLUGINS 1'
2814 _def_dynamic_plugins
='#undef DYNAMIC_PLUGINS'
2816 echores
"$_dynamic_plugins"
2819 #echocheck "dynamic linking"
2820 # FIXME !! make this dynamic detection work and modify at the end (search _ld_dl_dynamic)
2821 # also gcc flags are different, but ld flags aren't (-Bdynamic/-Bstatic/-Bsymbolic)
2823 #int main(void) { return 0; }
2825 #if cc_check -rdynamic ; then
2826 # _ld_dl_dynamic='-rdynamic'
2827 #elif cc_check -Bdynamic ; then
2828 # _ld_dl_dynamic='-Bdynamic'
2829 #elif cc_check ; then
2832 #echores "using $_ld_dl_dynamic"
2834 _def_threads
='#undef HAVE_THREADS'
2837 if test "$_pthreads" != no
; then
2839 #include <pthread.h>
2840 void* func(void *arg) { return arg; }
2841 int main(void) { pthread_t tid; return pthread_create (&tid, 0, func, 0) == 0 ? 0 : 1; }
2845 for _ld_tmp
in "-lpthreadGC2" "" "-lpthread" "-pthread" ; do
2846 # for crosscompilation, we cannot execute the program, be happy if we can link statically
2847 cc_check
$_ld_tmp && (tmp_run ||
test "$_ld_static") && _ld_pthread
="$_ld_tmp" && _pthreads
=yes && break
2851 if test "$_pthreads" = yes ; then
2852 echores
"yes (using $_ld_pthread)"
2854 _def_pthreads
='#define HAVE_PTHREADS 1'
2855 _def_threads
='#define HAVE_THREADS 1'
2857 echores
"no (v4l, vo_gl, ao_alsa, ao_nas, ao_macosx, win32 loader disabled)"
2859 _def_pthreads
='#undef HAVE_PTHREADS'
2860 _nas
=no
; _tv_v4l
=no
; _macosx
=no
2861 if not mingw32
; then
2868 if test "$_iconv" = auto
; then
2869 _iconv_tmp
='#include <iconv.h>'
2875 #define INBUFSIZE 1024
2876 #define OUTBUFSIZE 4096
2878 char inbuffer[INBUFSIZE];
2879 char outbuffer[OUTBUFSIZE];
2884 char *tocode="UTF-8";
2885 char *fromcode="cp1250";
2886 if ((icdsc = iconv_open (tocode, fromcode)) != (iconv_t)(-1)) {
2887 while ((numread = read (0, inbuffer, INBUFSIZE))) {
2888 char *iptr=inbuffer;
2889 char *optr=outbuffer;
2890 size_t inleft=numread;
2891 size_t outleft=OUTBUFSIZE;
2892 if (iconv(icdsc, (const char **)&iptr, &inleft, &optr, &outleft)
2894 write (1, outbuffer, OUTBUFSIZE - outleft);
2897 if (iconv_close(icdsc) == -1)
2903 for _ld_tmp
in "" "-liconv" "-liconv $_ld_dl" ; do
2904 cc_check
$_ld_lm $_ld_tmp && _ld_iconv
="$_ld_tmp" && _iconv
=yes && break
2907 if test "$_iconv" = yes ; then
2908 _def_iconv
='#define USE_ICONV 1'
2910 _def_iconv
='#undef USE_ICONV'
2915 echocheck
"sys/soundcard.h"
2917 #include <sys/soundcard.h>
2918 int main(void) { return 0; }
2921 cc_check
&& _sys_soundcard
=yes
2922 if test "$_sys_soundcard" = yes ; then
2923 _def_sys_soundcard
='#define HAVE_SYS_SOUNDCARD_H 1'
2924 _inc_soundcard
='#include <sys/soundcard.h>'
2926 _def_sys_soundcard
='#undef HAVE_SYS_SOUNDCARD_H'
2928 echores
"$_sys_soundcard"
2930 if test "$_sys_soundcard" != yes ; then
2931 echocheck
"soundcard.h"
2933 #include <soundcard.h>
2934 int main(void) { return 0; }
2937 cc_check
&& _soundcard
=yes
2938 if linux ||
test "$_ossaudio" != no
; then
2939 # use soundcard.h on Linux, or when OSS support is enabled
2940 echores
"$_soundcard"
2942 # we don't want to use soundcard.h on non-Linux if OSS support not enabled!
2943 echores
"$_soundcard, but ignored!"
2946 if test "$_soundcard" = yes ; then
2947 _def_soundcard
='#define HAVE_SOUNDCARD_H 1'
2948 _inc_soundcard
='#include <soundcard.h>'
2950 _def_soundcard
='#undef HAVE_SOUNDCARD_H'
2953 _def_soundcard
='#undef HAVE_SOUNDCARD_H'
2957 echocheck
"sys/dvdio.h"
2960 #include <sys/dvdio.h>
2961 int main(void) { return 0; }
2964 cc_check
&& _dvdio
=yes
2965 if test "$_dvdio" = yes ; then
2966 _def_dvdio
='#define DVD_STRUCT_IN_SYS_DVDIO_H 1'
2968 _def_dvdio
='#undef DVD_STRUCT_IN_SYS_DVDIO_H'
2973 echocheck
"sys/cdio.h"
2976 #include <sys/cdio.h>
2977 int main(void) { return 0; }
2980 cc_check
&& _cdio
=yes
2981 if test "$_cdio" = yes ; then
2982 _def_cdio
='#define DVD_STRUCT_IN_SYS_CDIO_H 1'
2984 _def_cdio
='#undef DVD_STRUCT_IN_SYS_CDIO_H'
2989 echocheck
"linux/cdrom.h"
2991 #include <sys/types.h>
2992 #include <linux/cdrom.h>
2993 int main(void) { return 0; }
2996 cc_check
&& _cdrom
=yes
2997 if test "$_cdrom" = yes ; then
2998 _def_cdrom
='#define DVD_STRUCT_IN_LINUX_CDROM_H 1'
3000 _def_cdrom
='#undef DVD_STRUCT_IN_LINUX_CDROM_H'
3008 int main(void) { return 0; }
3011 cc_check
&& _dvd
=yes
3012 if test "$_dvd" = yes ; then
3013 _def_dvd
='#define DVD_STRUCT_IN_DVD_H 1'
3015 _def_dvd
='#undef DVD_STRUCT_IN_DVD_H'
3020 echocheck
"BSDI dvd.h"
3023 int main(void) { return 0; }
3026 cc_check
&& _bsdi_dvd
=yes
3027 if test "$_bsdi_dvd" = yes ; then
3028 _def_bsdi_dvd
='#define DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H 1'
3030 _def_bsdi_dvd
='#undef DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H'
3032 echores
"$_bsdi_dvd"
3035 echocheck
"HPUX SCSI header"
3037 #include <sys/scsi.h>
3038 int main(void) { return 0; }
3041 cc_check
&& _hpux_scsi_h
=yes
3042 if test "$_hpux_scsi_h" = yes ; then
3043 _def_hpux_scsi_h
='#define HPUX_SCTL_IO 1'
3045 _def_hpux_scsi_h
='#undef HPUX_SCTL_IO'
3047 echores
"$_hpux_scsi_h"
3050 echocheck
"userspace SCSI headers (Solaris)"
3052 # include <unistd.h>
3053 # include <stropts.h>
3054 # include <sys/scsi/scsi_types.h>
3055 # include <sys/scsi/impl/uscsi.h>
3056 int main(void) { return 0; }
3059 cc_check
&& _sol_scsi_h
=yes
3060 if test "$_sol_scsi_h" = yes ; then
3061 _def_sol_scsi_h
='#define SOLARIS_USCSI 1'
3063 _def_sol_scsi_h
='#undef SOLARIS_USCSI'
3065 echores
"$_sol_scsi_h"
3069 if test "$_termcap" = auto
; then
3071 int main(void) { return 0; }
3074 for _ld_tmp
in "-ltermcap" "-ltinfo" ; do
3075 cc_check
$_ld_tmp && _ld_termcap
="$_ld_tmp" && _termcap
=yes && break
3078 if test "$_termcap" = yes ; then
3079 _def_termcap
='#define USE_TERMCAP 1'
3080 _res_comment
="using $_ld_termcap"
3082 _def_termcap
='#undef USE_TERMCAP'
3088 if test "$_termios" = auto
; then
3090 #include <sys/termios.h>
3091 int main(void) { return 0; }
3094 cc_check
&& _termios
=yes
3095 _def_termios_h_name
='sys/termios.h'
3098 if test "$_termios" = auto
; then
3100 #include <termios.h>
3101 int main(void) { return 0; }
3104 cc_check
&& _termios
=yes
3105 _def_termios_h_name
='termios.h'
3108 if test "$_termios" = yes ; then
3109 _def_termios
='#define HAVE_TERMIOS 1'
3110 _def_termios_h
='#undef HAVE_TERMIOS_H'
3111 _def_termios_sys_h
='#undef HAVE_SYS_TERMIOS_H'
3113 if test "$_def_termios_h_name" = 'sys/termios.h' ; then
3114 _def_termios_sys_h
='#define HAVE_SYS_TERMIOS_H 1'
3115 elif test "$_def_termios_h_name" = 'termios.h' ; then
3116 _def_termios_h
='#define HAVE_TERMIOS_H 1'
3118 _res_comment
="using $_def_termios_h_name"
3120 _def_termios
='#undef HAVE_TERMIOS'
3121 _def_termios_h_name
=''
3128 if test "$_shm" = auto
; then
3130 #include <sys/types.h>
3131 #include <sys/shm.h>
3132 int main(void) { shmget(0, 0, 0); shmat(0, 0, 0); shmctl(0, 0, 0); return 0; }
3135 cc_check
&& _shm
=yes
3137 if test "$_shm" = yes ; then
3138 _def_shm
='#define HAVE_SHM 1'
3140 _def_shm
='#undef HAVE_SHM'
3145 # XXX: FIXME, add runtime checking
3146 echocheck
"linux devfs"
3147 echores
"$_linux_devfs"
3150 echocheck
"scandir()"
3152 int main (void) { scandir("", 0, 0, 0); alphasort(0, 0); return 0; }
3155 cc_check
&& _scandir
=yes
3156 if test "$_scandir" = yes ; then
3157 _def_scandir
='#define HAVE_SCANDIR 1'
3159 _def_scandir
='#undef HAVE_SCANDIR'
3164 echocheck
"strsep()"
3167 int main (void) { char *s = "Hello, world!"; (void) strsep(&s, ","); return 0; }
3170 cc_check
&& _strsep
=yes
3171 if test "$_strsep" = yes ; then
3172 _def_strsep
='#define HAVE_STRSEP 1'
3174 _def_strsep
='#undef HAVE_STRSEP'
3178 echocheck
"strlcpy()"
3181 int main (void) { char *s = "Hello, world!", t[20]; (void) strlcpy(t, s, sizeof( t )); return 0; }
3184 cc_check
&& _strlcpy
=yes
3185 if test "$_strlcpy" = yes ; then
3186 _def_strlcpy
='#define HAVE_STRLCPY 1'
3188 _def_strlcpy
='#undef HAVE_STRLCPY'
3192 echocheck
"strlcat()"
3195 int main (void) { char *s = "Hello, world!", t[20]; (void) strlcat(t, s, sizeof( t )); return 0; }
3198 cc_check
&& _strlcat
=yes
3199 if test "$_strlcat" = yes ; then
3200 _def_strlcat
='#define HAVE_STRLCAT 1'
3202 _def_strlcat
='#undef HAVE_STRLCAT'
3206 echocheck
"fseeko()"
3209 int main (void) { int i; i = fseeko(stdin, 0, 0); return 0; }
3212 cc_check
&& _fseeko
=yes
3213 if test "$_fseeko" = yes ; then
3214 _def_fseeko
='#define HAVE_FSEEKO 1'
3216 _def_fseeko
='#undef HAVE_FSEEKO'
3220 echocheck
"localtime_r()"
3223 int main( void ) { localtime_r(NULL, NULL); }
3226 cc_check
&& _localtime_r
=yes
3227 if test "$_localtime_r" = yes ; then
3228 _def_localtime_r
='#define HAVE_LOCALTIME_R 1'
3230 _def_localtime_r
='#undef HAVE_LOCALTIME_R'
3232 echores
"$_localtime_r"
3234 echocheck
"vsscanf()"
3237 int main(void) { vsscanf(0, 0, 0); return 0; }
3240 cc_check
&& _vsscanf
=yes
3241 if test "$_vsscanf" = yes ; then
3242 _def_vsscanf
='#define HAVE_VSSCANF 1'
3244 _def_vsscanf
='#undef HAVE_VSSCANF'
3252 int main(void) { swab(0, 0, 0); return 0; }
3255 cc_check
&& _swab
=yes
3256 if test "$_swab" = yes ; then
3257 _def_swab
='#define HAVE_SWAB 1'
3259 _def_swab
='#undef HAVE_SWAB'
3263 echocheck
"posix select()"
3267 #include <sys/types.h>
3269 #include <sys/time.h>
3271 int main(void) {int nfds = 1; fd_set readfds; struct timeval timeout; select(nfds,&readfds,NULL,NULL,&timeout); return 0; }
3274 cc_check
&& _posix_select
=yes
3275 if test "$_posix_select" = no
; then
3276 _def_no_posix_select
='#define HAVE_NO_POSIX_SELECT 1'
3278 _def_no_posix_select
='#undef HAVE_NO_POSIX_SELECT'
3280 echores
"$_posix_select"
3283 echocheck
"gettimeofday()"
3286 #include <sys/time.h>
3287 int main(void) {struct timeval tv_start; gettimeofday(&tv_start, NULL); return 0; }
3290 cc_check
&& _gettimeofday
=yes
3291 if test "$_gettimeofday" = yes ; then
3292 _def_gettimeofday
='#define HAVE_GETTIMEOFDAY 1'
3294 _def_gettimeofday
='#undef HAVE_GETTIMEOFDAY'
3296 echores
"$_gettimeofday"
3303 int main(void) { glob_t gg; glob("filename",0,NULL,&gg); return 0; }
3306 cc_check
&& _glob
=yes
3307 if test "$_glob" = yes ; then
3308 _def_glob
='#define HAVE_GLOB 1'
3310 _def_glob
='#undef HAVE_GLOB'
3315 echocheck
"sys/sysinfo.h"
3317 #include <sys/sysinfo.h>
3319 struct sysinfo s_info;
3325 cc_check
&& _sys_sysinfo
=yes
3326 if test "$_sys_sysinfo" = yes ; then
3327 _def_sys_sysinfo
='#define HAVE_SYS_SYSINFO_H 1'
3328 _inc_sysinfo
='#include <sys/sysinfo.h>'
3330 _def_sys_sysinfo
='#undef HAVE_SYS_SYSINFO_H'
3332 echores
"$_sys_sysinfo"
3335 echocheck
"Mac OS X APIs"
3336 if test "$_macosx" = auto
&& darwin
; then
3337 productName
=`/usr/bin/sw_vers -productName`
3338 if test "$productName" = "Mac OS X" ; then
3342 _def_macosx
='#undef MACOSX'
3343 _noaomodules
="macosx $_noaomodules"
3344 _novomodules
="quartz $_novomodules"
3347 if test "$_macosx" = yes ; then
3349 #include <Carbon/Carbon.h>
3350 #include <QuickTime/QuickTime.h>
3351 #include <CoreAudio/CoreAudio.h>
3355 CFRunLoopRunInMode(kCFRunLoopDefaultMode, 0, false);
3358 if cc_check
-framework Carbon
-framework QuickTime
-framework CoreAudio
; then
3360 _macosx_frameworks
="-framework Carbon -framework QuickTime -framework CoreAudio -framework AudioUnit -framework AudioToolbox"
3361 _def_macosx
='#define MACOSX 1'
3362 _aosrc
="$_aosrc ao_macosx.c"
3363 _aomodules
="macosx $_aomodules"
3364 _vosrc
="$_vosrc vo_quartz.c"
3365 _vomodules
="quartz $_vomodules"
3368 _def_macosx
='#undef MACOSX'
3369 _noaomodules
="macosx $_noaomodules"
3370 _novomodules
="quartz $_novomodules"
3373 #include <Carbon/Carbon.h>
3374 #include <QuartzCore/CoreVideo.h>
3377 if cc_check
-framework Carbon
-framework QuartzCore
-framework OpenGL
; then
3378 _vosrc
="$_vosrc vo_macosx.m"
3379 _vomodules
="macosx $_vomodules"
3380 _macosx_frameworks
="$_macosx_frameworks -framework Cocoa -framework QuartzCore -framework OpenGL"
3381 _def_macosx_corevideo
='#define MACOSX_COREVIDEO 1'
3382 _macosx_corevideo
=yes
3384 _novomodules
="macosx $_novomodules"
3385 _def_macosx_corevideo
='#undef MACOSX_COREVIDEO'
3386 _macosx_corevideo
=no
3391 echocheck
"Mac OS X Finder Support"
3392 if test "$_macosx_finder_support" = auto
; then
3393 _macosx_finder_support
=$_macosx
3395 if test "$_macosx_finder_support" = yes; then
3396 _def_macosx_finder_support
='#define MACOSX_FINDER_SUPPORT 1'
3397 _macosx_finder_support
=yes
3399 _def_macosx_finder_support
='#undef MACOSX_FINDER_SUPPORT'
3400 _macosx_finder_support
=no
3402 echores
"$_macosx_finder_support"
3404 echocheck
"Mac OS X Bundle file locations"
3405 if test "$_macosx_bundle" = auto
; then
3406 _macosx_bundle
=$_macosx_finder_support
3408 if test "$_macosx_bundle" = yes; then
3409 _def_macosx_bundle
='#define MACOSX_BUNDLE 1'
3411 _def_macosx_bundle
='#undef MACOSX_BUNDLE'
3414 echores
"$_macosx_bundle"
3416 echocheck
"Samba support (libsmbclient)"
3417 if test "$_smbsupport" = yes; then
3418 _ld_smb
="-lsmbclient"
3420 if test "$_smbsupport" = auto
; then
3423 #include <libsmbclient.h>
3424 int main(void) { smbc_opendir("smb://"); return 0; }
3426 for _ld_tmp
in "-lsmbclient" "-lsmbclient $_ld_dl" "-lsmbclient $_ld_dl -lnsl" "-lsmbclient $_ld_dl -lssl -lnsl" ; do
3427 cc_check
$_ld_tmp && _ld_smb
="$_ld_tmp" && _smbsupport
=yes && break
3431 if test "$_smbsupport" = yes; then
3432 _def_smbsupport
="#define LIBSMBCLIENT"
3433 _inputmodules
="smb $_inputmodules"
3435 _def_smbsupport
="#undef LIBSMBCLIENT"
3436 _noinputmodules
="smb $_noinputmodules"
3438 echores
"$_smbsupport"
3447 if test "$_3dfx" = yes ; then
3448 _def_3dfx
='#define HAVE_3DFX 1'
3449 _vosrc
="$_vosrc vo_3dfx.c"
3450 _vomodules
="3dfx $_vomodules"
3452 _def_3dfx
='#undef HAVE_3DFX'
3453 _novomodules
="3dfx $_novomodules"
3459 if test "$_tdfxfb" = yes ; then
3460 _def_tdfxfb
='#define HAVE_TDFXFB 1'
3461 _vosrc
="$_vosrc vo_tdfxfb.c"
3462 _vomodules
="tdfxfb $_vomodules"
3464 _def_tdfxfb
='#undef HAVE_TDFXFB'
3465 _novomodules
="tdfxfb $_novomodules"
3470 if test "$_tdfxvid" = yes ; then
3471 _def_tdfxvid
='#define HAVE_TDFX_VID 1'
3472 _vosrc
="$_vosrc vo_tdfx_vid.c"
3473 _vomodules
="tdfx_vid $_vomodules"
3475 _def_tdfxvid
='#undef HAVE_TDFX_VID'
3476 _novomodules
="tdfx_vid $_novomodules"
3481 if test "$_tga" = yes ; then
3482 _def_tga
='#define HAVE_TGA 1'
3483 _vosrc
="$_vosrc vo_tga.c"
3484 _vomodules
="tga $_vomodules"
3486 _def_tga
='#undef HAVE_TGA'
3487 _novomodules
="tga $_novomodules"
3491 echocheck
"DirectFB headers presence"
3492 if test -z "$_inc_directfb" ; then
3493 for I
in /usr
/include
/usr
/local
/include
$_inc_extra; do
3494 if test -d "$I/directfb" && test -f "$I/directfb/directfb.h" ; then
3495 _inc_directfb
="-I$I/directfb"
3496 echores
"yes (using $_inc_directfb)"
3499 if test -d "$I" && test -f "$I/directfb.h" ; then
3500 _inc_directfb
="-I$I"
3501 echores
"yes (using $_inc_directfb)"
3505 if test -z "$_inc_directfb" ; then
3510 echores
"yes (using $_inc_directfb)"
3512 if test "$_inc_directfb" = "-I/usr/include" ; then
3516 echocheck
"DirectFB"
3517 if test "$_directfb" = auto
; then
3520 #include <directfb.h>
3521 int main(void) { IDirectFB *foo; DirectFBInit(0,0); return 0; }
3523 linux
&& test -c /dev
/fb0
&& cc_check
$_inc_directfb -ldirectfb && _directfb
=yes
3526 if test "$_directfb" = yes; then
3528 #include <directfb_version.h>
3530 dfb_ver = DIRECTFB_MAJOR_VERSION DIRECTFB_MINOR_VERSION DIRECTFB_MICRO_VERSION
3533 if $_cc -E $TMPC $_inc_directfb > "$TMPO"; then
3534 _directfb_version
=`sed -n 's/^dfb_ver[^1-9]*\(.*\)/\1/p' "$TMPO" | tr -d '() '`
3535 _def_directfb_version
="#define DIRECTFBVERSION $_directfb_version"
3536 if test "$_directfb_version" -ge 913; then
3537 _res_comment
="$_directfb_version"
3539 _def_directfb_version
='#undef DIRECTFBVERSION'
3541 _res_comment
="version >=0.9.13 required"
3545 _res_comment
="failed to get version"
3548 echores
"$_directfb"
3550 if test "$_directfb" = yes ; then
3551 _def_directfb
='#define HAVE_DIRECTFB 1'
3552 if test "$_directfb_version" -ge 913; then
3553 _vosrc
="$_vosrc vo_directfb2.c"
3554 _vomodules
="directfb $_vomodules"
3555 _ld_directfb
='-ldirectfb'
3558 if test "$_directfb_version" -ge 915; then
3559 _vosrc
="$_vosrc vo_dfbmga.c"
3560 _vomodules
="dfbmga $_vomodules"
3563 _def_directfb
='#undef HAVE_DIRECTFB'
3564 _novomodules
="directfb $_novomodules"
3569 echocheck
"X11 headers presence"
3570 if test -z "$_inc_x11" ; then
3571 for I
in /usr
/X11
/include
/usr
/X11R
6/include
/usr
/include
/X11R6
/usr
/include
/usr
/openwin
/include
; do
3572 if test -d "$I/X11" && test -f "$I/X11/Xlib.h" ; then
3574 echores
"yes (using $I)"
3578 if test -z "$_inc_x11" ; then
3580 echores
"not found (check if the dev(el) packages are installed)"
3583 echores
"yes (using $_inc_x11)"
3585 if test "$_inc_x11" = "-I/usr/include" ; then
3591 if test "$_x11" != no
; then
3593 #include <X11/Xlib.h>
3594 #include <X11/Xutil.h>
3595 int main(void) { (void) XCreateWindow(0,0,0,0,0,0,0,0,0,0,0,0); return 0; }
3597 if test -z "$_x11_paths" ; then
3598 _x11_paths
="/usr/X11R6/lib /usr/lib/X11R6 /usr/X11/lib /usr/lib32 /usr/openwin/lib /usr/X11R6/lib64 /usr/lib"
3600 for I
in $_x11_paths ; do
3601 _ld_x11
="-L$I -lXext -lX11 $_ld_sock $_ld_pthread"
3603 _ld_x11
="$_ld_x11 -Wl,-R$I"
3605 if test -d "$I" && cc_check
$_inc_x11 $_ld_x11 ; then
3611 if test "$_x11" = yes ; then
3612 _def_x11
='#define HAVE_X11 1'
3613 _vosrc
="$_vosrc x11_common.c vo_x11.c vo_xover.c"
3614 _vomodules
="x11 xover $_vomodules"
3615 _res_comment
="using $I"
3618 _def_x11
='#undef HAVE_X11'
3621 _novomodules
="x11 $_novomodules"
3622 _res_comment
="check if the dev(el) packages are installed"
3630 if test "$_x11" = yes ; then
3632 #include <X11/Xmd.h>
3633 #include <X11/Xlib.h>
3634 #include <X11/Xutil.h>
3635 #include <X11/Xatom.h>
3636 #include <X11/extensions/dpms.h>
3638 (void) DPMSQueryExtension(0, 0, 0);
3641 cc_check
$_inc_x11 -lXdpms $_ld_x11 && _xdpms3
=yes
3643 #include <X11/Xlib.h>
3644 #include <X11/extensions/dpms.h>
3646 (void) DPMSQueryExtension(0, 0, 0);
3649 cc_check
$_inc_x11 $_ld_x11 && _xdpms4
=yes
3651 if test "$_xdpms4" = yes ; then
3652 _def_xdpms
='#define HAVE_XDPMS 1'
3653 echores
"yes (using Xdpms 4)"
3654 elif test "$_xdpms3" = yes ; then
3655 _def_xdpms
='#define HAVE_XDPMS 1'
3656 _ld_x11
="-lXdpms $_ld_x11"
3657 echores
"yes (using Xdpms 3)"
3659 _def_xdpms
='#undef HAVE_XDPMS'
3665 if test "$_x11" = yes && test "$_xv" != no
; then
3667 #include <X11/Xlib.h>
3668 #include <X11/extensions/Xvlib.h>
3670 (void) XvGetPortAttribute(0, 0, 0, 0);
3671 (void) XvQueryPortAttributes(0, 0, 0);
3675 cc_check
$_inc_x11 -lXv $_ld_x11 && _xv
=yes
3679 if test "$_xv" = yes ; then
3680 _def_xv
='#define HAVE_XV 1'
3682 _vosrc
="$_vosrc vo_xv.c"
3683 _vomodules
="xv $_vomodules"
3685 _def_xv
='#undef HAVE_XV'
3686 _novomodules
="xv $_novomodules"
3692 if test "$_x11" = yes && test "$_xv" = yes && test "$_xvmc" != no
; then
3695 #include <X11/Xlib.h>
3696 #include <X11/extensions/Xvlib.h>
3697 #include <X11/extensions/XvMClib.h>
3699 (void) XvMCQueryExtension(0,0,0);
3700 (void) XvMCCreateContext(0,0,0,0,0,0,0);
3703 cc_check
$_inc_x11 -lXvMC -l$_xvmclib $_ld_xv $_ld_x11 && _xvmc
=yes
3705 if test "$_xvmc" = yes ; then
3706 _def_xvmc
='#define HAVE_XVMC 1'
3707 _ld_xvmc
="-lXvMC -l$_xvmclib"
3708 _vosrc
="$_vosrc vo_xvmc.c"
3709 _vomodules
="xvmc $_vomodules"
3711 _def_xvmc
='#undef HAVE_XVMC'
3712 _novomodules
="xvmc $_novomodules"
3717 echocheck
"Xinerama"
3718 if test "$_x11" = yes && test "$_xinerama" != no
; then
3720 #include <X11/Xlib.h>
3721 #include <X11/extensions/Xinerama.h>
3722 int main(void) { (void) XineramaIsActive(0); return 0; }
3725 cc_check
$_inc_x11 -lXinerama $_ld_x11 && _xinerama
=yes
3729 if test "$_xinerama" = yes ; then
3730 _def_xinerama
='#define HAVE_XINERAMA 1'
3731 _ld_xinerama
='-lXinerama'
3733 _def_xinerama
='#undef HAVE_XINERAMA'
3735 echores
"$_xinerama"
3738 # Note: the -lXxf86vm library is the VideoMode extension and though it's not
3739 # needed for DGA, AFAIK every distribution packages together with DGA stuffs
3740 # named 'X extensions' or something similar.
3741 # This check may be useful for future mplayer versions (to change resolution)
3742 # If you run into problems, remove '-lXxf86vm'.
3744 if test "$_x11" = yes && test "$_vm" = auto
; then
3746 #include <X11/Xlib.h>
3747 #include <X11/extensions/xf86vmode.h>
3748 int main(void) { (void) XF86VidModeQueryExtension(0, 0, 0); return 0; }
3751 cc_check
$_inc_x11 -lXxf86vm $_ld_x11 && _vm
=yes
3753 if test "$_vm" = yes ; then
3754 _def_vm
='#define HAVE_XF86VM 1'
3757 _def_vm
='#undef HAVE_XF86VM'
3761 # Check for the presence of special keycodes, like audio control buttons
3762 # that XFree86 might have. Used to be bundled with the xf86vm check, but
3763 # has nothing to do with xf86vm and XFree 3.x has xf86vm but does NOT
3764 # have these new keycodes.
3765 echocheck
"XF86keysym"
3766 if test "$_xf86keysym" = auto
; then
3768 if test "$_x11" = yes ; then
3770 #include <X11/Xlib.h>
3771 #include <X11/XF86keysym.h>
3772 int main(void) { return XF86XK_AudioPause; }
3774 cc_check
$_inc_x11 $_ld_x11 && _xf86keysym
=yes
3777 if test "$_xf86keysym" = yes ; then
3778 _def_xf86keysym
='#define HAVE_XF86XK 1'
3780 _def_xf86keysym
='#undef HAVE_XF86XK'
3782 echores
"$_xf86keysym"
3785 if test "$_x11" = no
; then
3788 # Version 2 is preferred to version 1 if available
3789 if test "$_dga" = auto
; then
3791 #include <X11/Xlib.h>
3792 #include <X11/extensions/xf86dga.h>
3793 int main (void) { (void) XF86DGASetViewPort(0, 0, 0, 0); return 0; }
3796 cc_check
$_inc_x11 -lXxf86dga -lXxf86vm $_ld_x11 && _dga
=1
3799 #include <X11/Xlib.h>
3800 #include <X11/extensions/xf86dga.h>
3801 int main (void) { (void) XDGASetViewport(0, 0, 0, 0, 0); return 0; }
3803 cc_check
$_inc_x11 -lXxf86dga $_ld_x11 && _dga
=2
3806 _def_dga
='#undef HAVE_DGA'
3807 _def_dga2
='#undef HAVE_DGA2'
3808 if test "$_dga" = 1 ; then
3809 _def_dga
='#define HAVE_DGA 1'
3810 _ld_dga
='-lXxf86dga'
3811 _vosrc
="$_vosrc vo_dga.c"
3812 _vomodules
="dga $_vomodules"
3813 echores
"yes (using DGA 1.0)"
3814 elif test "$_dga" = 2 ; then
3815 _def_dga
='#define HAVE_DGA 1'
3816 _def_dga2
='#define HAVE_DGA2 1'
3817 _ld_dga
='-lXxf86dga'
3818 _vosrc
="$_vosrc vo_dga.c"
3819 _vomodules
="dga $_vomodules"
3820 echores
"yes (using DGA 2.0)"
3821 elif test "$_dga" = no
; then
3823 _novomodules
="dga $_novomodules"
3825 die
"DGA version must be 1 or 2"
3830 #Note: this test is run even with --enable-gl since we autodetect $_ld_gl
3831 if (test "$_x11" = yes || win32
) && test "$_gl" != no
; then
3834 int main(void) { return 0; }
3837 if cc_check
$_inc_x11 $_ld_x11 -lGL $_ld_lm ; then
3839 _ld_gl
="-lGL $_ld_dl"
3840 elif cc_check
$_inc_x11 $_ld_x11 -lGL $_ld_lm $_ld_pthread ; then
3842 _ld_gl
="-lGL $_ld_pthread $_ld_dl"
3843 elif cc_check
-lopengl32 ; then
3846 _ld_gl
="-lopengl32 -lgdi32"
3851 if test "$_gl" = yes ; then
3852 _def_gl
='#define HAVE_GL 1'
3853 _vosrc
="$_vosrc vo_gl.c vo_gl2.c gl_common.c"
3854 if test "$_gl_win32" = yes ; then
3855 _def_gl_win32
='#define GL_WIN32 1'
3856 _vosrc
="$_vosrc w32_common.c"
3857 _res_comment
="win32 version"
3859 _vomodules
="opengl $_vomodules"
3861 _def_gl
='#undef HAVE_GL'
3862 _def_gl_win32
='#undef GL_WIN32'
3863 _novomodules
="opengl $_novomodules"
3868 echocheck
"/dev/mga_vid"
3869 if test "$_mga" = auto
; then
3871 test -c /dev
/mga_vid
&& _mga
=yes
3873 if test "$_mga" = yes ; then
3874 _def_mga
='#define HAVE_MGA 1'
3875 _vosrc
="$_vosrc vo_mga.c"
3876 _vomodules
="mga $_vomodules"
3878 _def_mga
='#undef HAVE_MGA'
3879 _novomodules
="mga $_novomodules"
3884 # echocheck "syncfb"
3886 # test "$_mga" = yes && _syncfb=yes
3887 # if test "$_syncfb" = yes ; then
3888 # _def_syncfb='#define HAVE_SYNCFB 1'
3889 # _vosrc="$_vosrc vo_syncfb.c"
3891 # _def_syncfb='#undef HAVE_SYNCFB'
3893 # echores "$_syncfb"
3897 if test "$_xmga" = auto
; then
3899 test "$_x11" = yes && test "$_mga" = yes && _xmga
=yes
3901 if test "$_xmga" = yes ; then
3902 _def_xmga
='#define HAVE_XMGA 1'
3903 _vosrc
="$_vosrc vo_xmga.c"
3904 _vomodules
="xmga $_vomodules"
3906 _def_xmga
='#undef HAVE_XMGA'
3907 _novomodules
="xmga $_novomodules"
3913 if test "$_ggi" = auto
; then
3915 #include <ggi/ggi.h>
3916 int main(void) { return 0; }
3919 cc_check
-lggi && _ggi
=yes
3921 if test "$_ggi" = yes ; then
3922 _def_ggi
='#define HAVE_GGI 1'
3924 _vosrc
="$_vosrc vo_ggi.c"
3925 _vomodules
="ggi $_vomodules"
3927 _def_ggi
='#undef HAVE_GGI'
3928 _novomodules
="ggi $_novomodules"
3932 echocheck
"GGI extension: libggiwmh"
3933 if test "$_ggiwmh" = auto
; then
3936 #include <ggi/ggi.h>
3937 #include <ggi/wmh.h>
3938 int main(void) { return 0; }
3940 cc_check
-lggi -lggiwmh && _ggiwmh
=yes
3942 # needed to get right output on obscure combination
3943 # like --disable-ggi --enable-ggiwmh
3944 if test "$_ggi" = yes && test "$_ggiwmh" = yes ; then
3945 _def_ggiwmh
='#define HAVE_GGIWMH 1'
3946 _ld_ggi
="$_ld_ggi -lggiwmh"
3949 _def_ggiwmh
='#undef HAVE_GGIWMH'
3955 if test "$_aa" = auto
; then
3958 extern struct aa_hardware_params aa_defparams;
3959 extern struct aa_renderparams aa_defrenderparams;
3963 (void) aa_init(0, 0, 0);
3964 c = aa_autoinit(&aa_defparams);
3965 p = aa_getrenderparams();
3966 aa_autoinitkbd(c,0);
3970 for _ld_tmp
in "-laa" "$_ld_x11 -laa" ; do
3971 cc_check
$_ld_tmp && _ld_aa
=$_ld_tmp && _aa
=yes && break
3974 if test "$_aa" = yes ; then
3975 _def_aa
='#define HAVE_AA 1'
3977 _ld_aa
=`aalib-config --libs | cut -d " " -f 2,5,6`
3979 _vosrc
="$_vosrc vo_aa.c"
3980 _vomodules
="aa $_vomodules"
3982 _def_aa
='#undef HAVE_AA'
3983 _novomodules
="aa $_novomodules"
3989 if test "$_caca" = auto
; then
3991 if ( caca-config
--version ) >> "$TMPLOG" 2>&1 ; then
3994 int main(void) { (void) caca_init(); return 0; }
3996 cc_check
`caca-config --libs` && _caca
=yes
3999 if test "$_caca" = yes ; then
4000 _def_caca
='#define HAVE_CACA 1'
4001 _inc_caca
=`caca-config --cflags`
4002 _ld_caca
=`caca-config --libs`
4003 _vosrc
="$_vosrc vo_caca.c"
4004 _vomodules
="caca $_vomodules"
4006 _def_caca
='#undef HAVE_CACA'
4007 _novomodules
="caca $_novomodules"
4013 if test "$_svga" = auto
; then
4016 int main(void) { return 0; }
4019 cc_check
-lvga $_ld_lm && _svga
=yes
4021 if test "$_svga" = yes ; then
4022 _def_svga
='#define HAVE_SVGALIB 1'
4024 _vosrc
="$_vosrc vo_svga.c"
4025 _vomodules
="svga $_vomodules"
4027 _def_svga
='#undef HAVE_SVGALIB'
4028 _novomodules
="svga $_novomodules"
4034 if test "$_fbdev" = auto
; then
4036 linux
&& test -c /dev
/fb0
&& _fbdev
=yes
4038 if test "$_fbdev" = yes ; then
4039 _def_fbdev
='#define HAVE_FBDEV 1'
4040 _vosrc
="$_vosrc vo_fbdev.c vo_fbdev2.c"
4041 _vomodules
="fbdev $_vomodules"
4043 _def_fbdev
='#undef HAVE_FBDEV'
4044 _novomodules
="fbdev $_novomodules"
4051 if test "$_dvb" != no
; then
4054 #include <sys/poll.h>
4055 #include <sys/ioctl.h>
4060 #include <ost/dmx.h>
4061 #include <ost/frontend.h>
4062 #include <ost/sec.h>
4063 #include <ost/video.h>
4064 #include <ost/audio.h>
4065 int main(void) {return 0;}
4070 for I
in "$_inc_dvb" "-I/usr/src/DVB/ost/include" ; do
4071 if cc_check
"$I" ; then
4074 _res_comment
="using $_inc_dvb"
4078 test "$_dvb" = no
&& _res_comment
="specify path to DVB/ost/include with --with-dvbincdir=DIR"
4082 if test "$_dvb" = yes ; then
4083 _def_dvb
='#define HAVE_DVB 1'
4084 _def_dvb_in
='#define HAS_DVBIN_SUPPORT 1'
4085 _aomodules
="mpegpes(dvb) $_aomodules"
4086 _vomodules
="mpegpes(dvb) $_vomodules"
4088 if test "$_dvbhead" != no
; then
4089 echocheck
"DVB HEAD"
4090 if test "$_dvbhead" != no
; then
4094 #include <sys/poll.h>
4095 #include <sys/ioctl.h>
4100 #include <linux/dvb/dmx.h>
4101 #include <linux/dvb/frontend.h>
4102 #include <linux/dvb/video.h>
4103 #include <linux/dvb/audio.h>
4104 int main(void) {return 0;}
4109 for I
in "$_inc_dvb" "-I/usr/src/DVB/include" ; do
4110 if cc_check
"$I" ; then
4113 _res_comment
="using $_inc_dvb"
4117 test "$_dvbhead" = no
&& _res_comment
="specify path to DVB/include (HEAD Version) with --with-dvbincdir=DIR"
4121 if test "$_dvbhead" = yes ; then
4122 _def_dvb
='#define HAVE_DVB_HEAD 1'
4123 _def_dvb_in
='#define HAS_DVBIN_SUPPORT 1'
4124 _aomodules
="mpegpes(dvb) $_aomodules"
4125 _vomodules
="mpegpes(dvb) $_vomodules"
4128 if test "$_dvbhead" = no
&& test "$_dvb" = no
; then
4129 _def_dvb
='#undef HAVE_DVB'
4130 _def_dvb_in
='#undef HAS_DVBIN_SUPPORT '
4131 _aomodules
="mpegpes(file) $_aomodules"
4132 _vomodules
="mpegpes(file) $_vomodules"
4135 if test "$_dvb" = yes ||
test "$_dvbhead" = yes ; then
4137 _inputmodules
="dvb $_inputmodules"
4140 _noinputmodules
="dvb $_noinputmodules"
4143 echocheck
"PNG support"
4144 if test "$_png" = auto
; then
4147 # Don't check for -lpng on irix since it has its own libpng
4148 # incompatible with the GNU libpng
4149 _res_comment
="disabled on irix (not GNU libpng)"
4155 printf("png.h : %s\n", PNG_LIBPNG_VER_STRING);
4156 printf("libpng: %s\n", png_libpng_ver);
4157 return (strcmp(PNG_LIBPNG_VER_STRING, png_libpng_ver));
4160 if cc_check
-lpng -lz $_ld_lm ; then
4164 _res_comment
="mismatch of library and header versions"
4170 if test "$_png" = yes ; then
4171 _def_png
='#define HAVE_PNG 1'
4173 _vosrc
="$_vosrc vo_png.c"
4174 _vomodules
="png $_vomodules"
4177 _def_png
='#undef HAVE_PNG'
4178 _novomodules
="png $_novomodules"
4182 echocheck
"JPEG support"
4183 if test "$_jpg" = auto
; then
4190 #include <jpeglib.h>
4195 if cc_check
-ljpeg $_ld_lm ; then
4203 if test "$_jpg" = yes ; then
4204 _def_jpg
='#define HAVE_JPEG 1'
4205 _vosrc
="$_vosrc vo_jpeg.c"
4206 _vomodules
="jpeg $_vomodules"
4210 _def_jpg
='#undef HAVE_JPEG'
4211 _novomodules
="jpeg $_novomodules"
4217 echocheck
"PNM support"
4218 if test "$_pnm" = yes; then
4219 _def_pnm
="#define HAVE_PNM"
4220 _vosrc
="$_vosrc vo_pnm.c"
4221 _vomodules
="pnm $_vomodules"
4223 _def_pnm
="#undef HAVE_PNM"
4224 _novomodules
="pnm $_novomodules"
4230 echocheck
"md5sum support"
4231 if test "$_md5sum" = yes; then
4232 _def_md5sum
="#define HAVE_MD5SUM"
4233 _vosrc
="$_vosrc vo_md5sum.c md5sum.c"
4234 _vomodules
="md5sum $_vomodules"
4236 _def_md5sum
="#undef HAVE_MD5SUM"
4237 _novomodules
="md5sum $_novomodules"
4243 echocheck
"GIF support"
4244 # This is to appease people who want to force gif support.
4245 # If it is forced to yes, then we still do checks to determine
4246 # which gif library to use.
4247 if test "$_gif" = yes ; then
4252 if test "$_gif" = auto
; then
4255 #include <gif_lib.h>
4260 for _ld_tmp
in "-lungif" "-lungif $_ld_x11" "-lgif" "-lgif $_ld_x11" ; do
4261 cc_check
$_ld_tmp && tmp_run
&& _ld_gif
="$_ld_tmp" && _gif
=yes && break
4265 # If no library was found, and the user wants support forced,
4266 # then we force it on with libgif, as this is the safest
4267 # assumption IMHO. (libungif & libregif both create symbolic
4268 # links to libgif. We also assume that no x11 support is needed,
4269 # because if you are forcing this, then you _should_ know what
4270 # you are doing. [ Besides, package maintainers should never
4271 # have compiled x11 deps into libungif in the first place. ] )
4274 if test "$_force_gif" = yes && test "$_gif" = no
; then
4279 if test "$_gif" = yes ; then
4280 _def_gif
='#define HAVE_GIF 1'
4281 _vosrc
="$_vosrc vo_gif89a.c"
4282 _codecmodules
="gif $_codecmodules"
4283 _vomodules
="gif89a $_vomodules"
4285 _gif
="yes (old version, some encoding functions disabled)"
4286 _def_gif_4
='#undef HAVE_GIF_4'
4290 #include <gif_lib.h>
4291 void catch() { exit(1); }
4293 signal(SIGSEGV, catch); // catch segfault
4294 printf("EGifPutExtensionFirst is at address %p\n", EGifPutExtensionFirst);
4295 EGifSetGifVersion("89a"); // this will segfault a buggy gif lib.
4299 if cc_check
"$_ld_gif" && tmp_run
; then
4300 _def_gif_4
='#define HAVE_GIF_4 1'
4304 _def_gif
='#undef HAVE_GIF'
4305 _def_gif_4
='#undef HAVE_GIF_4'
4306 _novomodules
="gif89a $_novomodules"
4307 _nocodecmodules
="gif $_nocodecmodules"
4313 case "$_gif" in yes*)
4314 echocheck
"broken giflib workaround"
4315 _def_gif_tvt_hack
='#define HAVE_GIF_TVT_HACK 1'
4318 #include <gif_lib.h>
4321 printf("UserData is at address %p\n", gif.UserData);
4325 if cc_check
"$_ld_gif" && tmp_run
; then
4326 _def_gif_tvt_hack
='#undef HAVE_GIF_TVT_HACK'
4335 echocheck
"VESA support"
4336 if test "$_vesa" = auto
; then
4339 int main(void) { vbeVersion(); return 0; }
4342 cc_check
-lvbe -llrmi && _vesa
=yes
4344 if test "$_vesa" = yes ; then
4345 _def_vesa
='#define HAVE_VESA 1'
4346 _ld_vesa
="-lvbe -llrmi"
4347 _vosrc
="$_vosrc vo_vesa.c vesa_lvo.c gtf.c"
4348 _vomodules
="vesa $_vomodules"
4350 _def_vesa
='#undef HAVE_VESA'
4351 _novomodules
="vesa $_novomodules"
4361 if test -z "$_sdlconfig" ; then
4362 if ( sdl-config
--version ) >>"$TMPLOG" 2>&1 ; then
4363 _sdlconfig
="sdl-config"
4364 elif ( sdl11-config
--version ) >>"$TMPLOG" 2>&1 ; then
4365 _sdlconfig
="sdl11-config"
4370 if test "$_sdl" = auto ||
test "$_sdl" = yes ; then
4373 int main(int argc, char *argv[]) { return 0; }
4376 if "$_sdlconfig" --version >>"$TMPLOG" 2>&1 ; then
4377 if cc_check
`$_sdlconfig --cflags` `$_sdlconfig --libs` >>"$TMPLOG" 2>&1 ; then
4378 _sdlversion
=`$_sdlconfig --version | sed 's/[^0-9]//g'`
4379 if test "$_sdlversion" -gt 116 ; then
4380 if test "$_sdlversion" -lt 121 ; then
4381 _def_sdlbuggy
='#define BUGGY_SDL'
4383 _def_sdlbuggy
='#undef BUGGY_SDL'
4387 _res_comment
=outdated
4392 if test "$_sdl" = yes ; then
4393 _def_sdl
='#define HAVE_SDL 1'
4395 _ld_sdl
=`$_sdlconfig --libs | cut -d " " -f 1,4,6 | sed s/no-cygwin/cygwin/`
4396 _inc_sdl
=`$_sdlconfig --cflags | cut -d " " -f 1,5,6 | sed s/no-cygwin/cygwin/`
4398 _ld_sdl
=`$_sdlconfig --libs | sed s/-mwindows//`
4399 _inc_sdl
=`$_sdlconfig --cflags | sed s/-Dmain=SDL_main//`
4401 _ld_sdl
=`$_sdlconfig --libs`
4402 _inc_sdl
=`$_sdlconfig --cflags`
4404 _vosrc
="$_vosrc vo_sdl.c"
4405 _vomodules
="sdl $_vomodules"
4406 _aosrc
="$_aosrc ao_sdl.c"
4407 _aomodules
="sdl $_aomodules"
4408 _res_comment
="using $_sdlconfig"
4410 _def_sdl
='#undef HAVE_SDL'
4411 _novomodules
="sdl $_novomodules"
4412 _noaomodules
="sdl $_noaomodules"
4416 echocheck
"Windows waveout"
4417 if test "$_win32waveout" = auto
; then
4419 #include <windows.h>
4420 #include <mmsystem.h>
4421 int main(void) { return 0; }
4424 cc_check
-lwinmm && _win32waveout
=yes
4426 if test "$_win32waveout" = yes ; then
4427 _def_win32waveout
='#define HAVE_WIN32WAVEOUT 1'
4428 _ld_win32libs
="-lwinmm $_ld_win32libs"
4429 _aosrc
="$_aosrc ao_win32.c"
4430 _aomodules
="win32 $_aomodules"
4432 _def_win32waveout
='#undef HAVE_WIN32WAVEOUT'
4433 _noaomodules
="win32 $_noaomodules"
4435 echores
"$_win32waveout"
4438 if test "$_directx" = auto
; then
4440 #include <windows.h>
4443 int main(void) { return 0; }
4446 cc_check
-lgdi32 && _directx
=yes
4448 if test "$_directx" = yes ; then
4449 _def_directx
='#define HAVE_DIRECTX 1'
4450 _ld_win32libs
="-lgdi32 $_ld_win32libs"
4451 _vosrc
="$_vosrc vo_directx.c"
4452 _vomodules
="directx $_vomodules"
4453 _aosrc
="$_aosrc ao_dsound.c"
4454 _aomodules
="dsound $_aomodules"
4456 _def_directx
='#undef HAVE_DIRECTX'
4457 _novomodules
="directx $_novomodules"
4458 _noaomodules
="dsound $_noaomodules"
4463 if test "$_nas" = auto
; then
4465 #include <audio/audiolib.h>
4466 int main(void) { return 0; }
4469 cc_check
-laudio $_inc_x11 -lXt $_ld_x11 $_ld_lm && _nas
=yes
4471 if test "$_nas" = yes ; then
4472 _def_nas
='#define HAVE_NAS 1'
4473 _ld_nas
="-laudio -lXt $_ld_x11"
4474 _aosrc
="$_aosrc ao_nas.c"
4475 _aomodules
="nas $_aomodules"
4477 _noaomodules
="nas $_noaomodules"
4478 _def_nas
='#undef HAVE_NAS'
4483 if test "$_dxr2" = auto
; then
4486 #include <dxr2ioctl.h>
4487 int main(void) { return 0; }
4489 for _inc_dxr2
in "$_inc_dxr2" \
4490 "-I/usr/local/include/dxr2" \
4491 "-I/usr/include/dxr2"; do
4492 cc_check
$_inc_dxr2 && _dxr2
=yes && break
4495 if test "$_dxr2" = yes; then
4496 _def_dxr2
='#define HAVE_DXR2 1'
4497 _vosrc
="$_vosrc vo_dxr2.c"
4498 _aosrc
="$_aosrc ao_dxr2.c"
4499 _aomodules
="dxr2 $_aomodules"
4500 _vomodules
="dxr2 $_vomodules"
4501 _res_comment
="using $_inc_dxr2"
4503 _def_dxr2
='#undef HAVE_DXR2'
4504 _noaomodules
="dxr2 $_noaomodules"
4505 _novomodules
="dxr2 $_novomodules"
4511 if test "$_dxr3" = auto
; then
4513 #include <linux/em8300.h>
4514 int main(void) { return 0; }
4517 cc_check
&& _dxr3
=yes
4519 if test "$_dxr3" = yes ; then
4520 _def_dxr3
='#define HAVE_DXR3 1'
4521 _vosrc
="$_vosrc vo_dxr3.c"
4522 _vomodules
="dxr3 $_vomodules"
4524 _def_dxr3
='#undef HAVE_DXR3'
4525 _novomodules
="dxr3 $_novomodules"
4526 if test "$_mp1e" = auto
; then
4527 # we don't need mp1e
4534 if test "$_mmx" = no
; then
4535 # mp1e REQUIRES mmx!
4538 if test "$_mp1e" != no
; then
4540 _def_mp1e
='#define USE_MP1E'
4541 _ld_mp1e
='libmp1e/libmp1e.a'
4542 _dep_mp1e
='libmp1e/libmp1e.a'
4545 _def_mp1e
='#undef USE_MP1E'
4553 if test "$_fame" = auto
; then
4555 test "$_dxr2" = yes && _fame
=auto
4556 test "$_dxr3" = yes && _fame
=auto
4557 test "$_dvb" = yes && _fame
=auto
4559 if test "$_fame" = auto
; then
4561 if test -d libfame
&& test -f libfame
/fame.h
; then
4562 # disable fame on cygwin as no sense to port - atmos
4565 _res_comment
="no fame dir"
4570 _def_fame
='#undef USE_LIBFAME'
4571 if test "$_fame" = yes ; then
4572 _def_fame
='#define USE_LIBFAME 1'
4573 _ld_fame
='libfame/libfame.a'
4582 echocheck
"OSS Audio"
4583 if test "$_ossaudio" = auto
; then
4585 #include <sys/ioctl.h>
4587 int main(void) { int arg = SNDCTL_DSP_SETFRAGMENT; return 0; }
4590 cc_check
&& _ossaudio
=yes
4592 if test "$_ossaudio" = yes ; then
4593 _def_ossaudio
='#define USE_OSS_AUDIO 1'
4594 _aosrc
="$_aosrc ao_oss.c"
4595 _aomodules
="oss $_aomodules"
4596 if test "$_linux_devfs" = yes; then
4597 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound/dsp"'
4598 _def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/sound/mixer"'
4601 #include <sys/ioctl.h>
4603 #ifdef OPEN_SOUND_SYSTEM
4604 int main(void) { return 0; }
4606 #error Not the real thing
4610 cc_check
&& _real_ossaudio
=yes
4611 if test "$_real_ossaudio" = yes; then
4612 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
4613 elif netbsd || openbsd
; then
4614 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound"'
4615 _ld_arch
="$_ld_arch -lossaudio"
4617 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
4619 _def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/mixer"'
4622 _def_ossaudio
='#undef USE_OSS_AUDIO'
4623 _def_ossaudio_devdsp
='#define PATH_DEV_DSP ""'
4624 _def_ossaudio_devmixer
='#define PATH_DEV_MIXER ""'
4625 _noaomodules
="oss $_noaomodules"
4627 echores
"$_ossaudio"
4631 if test "$_arts" = auto
; then
4633 if ( artsc-config
--version ) >> "$TMPLOG" 2>&1 ; then
4637 int main(void) { return 0; }
4639 cc_check
`artsc-config --libs` `artsc-config --cflags` && tmp_run
&& _arts
=yes
4644 if test "$_arts" = yes ; then
4645 _def_arts
='#define USE_ARTS 1'
4646 _aosrc
="$_aosrc ao_arts.c"
4647 _aomodules
="arts $_aomodules"
4648 _ld_arts
=`artsc-config --libs`
4649 _inc_arts
=`artsc-config --cflags`
4651 _noaomodules
="arts $_noaomodules"
4657 if test "$_esd" = auto
; then
4659 if ( esd-config
--version ) >> "$TMPLOG" 2>&1 ; then
4663 int main(void) { return 0; }
4665 cc_check
`esd-config --libs` `esd-config --cflags` && tmp_run
&& _esd
=yes
4671 if test "$_esd" = yes ; then
4672 _def_esd
='#define USE_ESD 1'
4673 _aosrc
="$_aosrc ao_esd.c"
4674 _aomodules
="esd $_aomodules"
4675 _ld_esd
=`esd-config --libs`
4676 _inc_esd
=`esd-config --cflags`
4678 echocheck
"esd_get_latency()"
4681 int main(void) { return esd_get_latency(0); }
4683 cc_check
`esd-config --libs` `esd-config --cflags` && _esd_latency
=yes && _def_esd_latency
='#define HAVE_ESD_LATENCY'
4684 echores
"$_esd_latency"
4686 _def_esd
='#undef USE_ESD'
4687 _def_esd_latency
='#undef HAVE_ESD_LATENCY'
4688 _noaomodules
="esd $_noaomodules"
4692 if test "$_polyp" = auto
; then
4694 if ( pkg-config
--exists 'polyplib >= 0.6 polyplib-error >= 0.6 polyplib-mainloop >= 0.6' ) >> "$TMPLOG" 2>&1 ; then
4697 #include <polyp/polyplib.h>
4698 #include <polyp/mainloop.h>
4699 #include <polyp/polyplib-error.h>
4700 int main(void) { return 0; }
4702 cc_check
`pkg-config --libs --cflags polyplib polyplib-error polyplib-mainloop` && tmp_run
&& _polyp
=yes
4708 if test "$_polyp" = yes ; then
4709 _def_polyp
='#define USE_POLYP 1'
4710 _aosrc
="$_aosrc ao_polyp.c"
4711 _aomodules
="polyp $_aomodules"
4712 _ld_polyp
=`pkg-config --libs polyplib polyplib-error polyplib-mainloop`
4713 _inc_polyp
=`pkg-config --cflags polyplib polyplib-error polyplib-mainloop`
4715 _def_polyp
='#undef USE_POLYP'
4716 _noaomodules
="polyp $_noaomodules"
4721 if test "$_jack" = auto
; then
4725 #include <jack/jack.h>
4726 int main(void) { jack_client_new("test"); return 0; }
4728 if cc_check
-ljack ; then
4730 elif cc_check
`pkg-config --libs --cflags --silence-errors jack` ; then
4731 _ld_jack
="`pkg-config --libs jack`"
4732 _inc_jack
="`pkg-config --cflags jack`"
4738 if test "$_jack" = yes ; then
4739 _def_jack
='#define USE_JACK 1'
4740 _aosrc
="$_aosrc ao_jack.c"
4741 _aomodules
="jack $_aomodules"
4743 _noaomodules
="jack $_noaomodules"
4748 echocheck
"ALSA audio"
4749 if test "$_alsa" != no
; then
4752 #include <sys/asoundlib.h>
4753 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 5))
4754 #error "alsa version != 0.5.x"
4756 int main(void) { return 0; }
4758 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.5.x'
4761 #include <sys/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-sys'
4769 #include <alsa/asoundlib.h>
4770 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
4771 #error "alsa version != 0.9.x"
4773 int main(void) { return 0; }
4775 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.9.x-alsa'
4778 #include <sys/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-sys'
4786 #include <alsa/asoundlib.h>
4787 #if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
4788 #error "alsa version != 1.0.x"
4790 int main(void) { return 0; }
4792 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='1.0.x-alsa'
4794 _def_alsa5
='#undef HAVE_ALSA5'
4795 _def_alsa9
='#undef HAVE_ALSA9'
4796 _def_alsa1x
='#undef HAVE_ALSA1X'
4797 _def_sys_asoundlib_h
='#undef HAVE_SYS_ASOUNDLIB_H'
4798 _def_alsa_asoundlib_h
='#undef HAVE_ALSA_ASOUNDLIB_H'
4799 if test "$_alsaver" ; then
4801 if test "$_alsaver" = '0.5.x' ; then
4802 _aosrc
="$_aosrc ao_alsa5.c"
4803 _aomodules
="alsa5 $_aomodules"
4804 _def_alsa5
='#define HAVE_ALSA5 1'
4805 _def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
4806 _res_comment
="using alsa 0.5.x and sys/asoundlib.h"
4807 elif test "$_alsaver" = '0.9.x-sys' ; then
4808 _aosrc
="$_aosrc ao_alsa.c"
4809 _aomodules
="alsa $_aomodules"
4810 _def_alsa9
='#define HAVE_ALSA9 1'
4811 _def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
4812 _res_comment
="using alsa 0.9.x and sys/asoundlib.h"
4813 elif test "$_alsaver" = '0.9.x-alsa' ; then
4814 _aosrc
="$_aosrc ao_alsa.c"
4815 _aomodules
="alsa $_aomodules"
4816 _def_alsa9
='#define HAVE_ALSA9 1'
4817 _def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
4818 _res_comment
="using alsa 0.9.x and alsa/asoundlib.h"
4819 elif test "$_alsaver" = '1.0.x-sys' ; then
4820 _aosrc
="$_aosrc ao_alsa.c"
4821 _aomodules
="alsa $_aomodules"
4822 _def_alsa1x
="#define HAVE_ALSA1X 1"
4823 _def_alsa_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
4824 _res_comment
="using alsa 1.0.x and sys/asoundlib.h"
4825 elif test "$_alsaver" = '1.0.x-alsa' ; then
4826 _aosrc
="$_aosrc ao_alsa.c"
4827 _aomodules
="alsa $_aomodules"
4828 _def_alsa1x
="#define HAVE_ALSA1X 1"
4829 _def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
4830 _res_comment
="using alsa 1.0.x and alsa/asoundlib.h"
4833 _res_comment
="unknown version"
4835 _ld_alsa
="-lasound $_ld_dl $_ld_pthread"
4837 _noaomodules
="alsa $_noaomodules"
4842 echocheck
"Sun audio"
4843 if test "$_sunaudio" = auto
; then
4845 #include <sys/types.h>
4846 #include <sys/audioio.h>
4847 int main(void) { audio_info_t info; AUDIO_INITINFO(&info); return 0; }
4850 cc_check
&& _sunaudio
=yes
4852 if test "$_sunaudio" = yes ; then
4853 _def_sunaudio
='#define USE_SUN_AUDIO 1'
4854 _aosrc
="$_aosrc ao_sun.c"
4855 _aomodules
="sun $_aomodules"
4857 _def_sunaudio
='#undef USE_SUN_AUDIO'
4858 _noaomodules
="sun $_noaomodules"
4860 echores
"$_sunaudio"
4863 echocheck
"Sun mediaLib"
4864 if test "$_mlib" = auto
; then
4866 test -z "$_mlibdir" && _mlibdir
=/opt
/SUNWmlib
4869 int main(void) { mlib_VideoColorYUV2ABGR420(0,0,0,0,0,0,0,0,0); return 0; }
4871 cc_check
-I${_mlibdir}/include
-L${_mlibdir}/lib
-lmlib && _mlib
=yes
4873 if test "$_mlib" = yes ; then
4874 _def_mlib
='#define HAVE_MLIB 1'
4875 _inc_mlib
=" -I${_mlibdir}/include "
4876 _ld_mlib
=" -L${_mlibdir}/lib -R${_mlibdir}/lib -lmlib "
4878 _def_mlib
='#undef HAVE_MLIB'
4883 echocheck
"SGI audio"
4884 if test "$_sgiaudio" = auto
; then
4885 # check for SGI audio
4887 #include <dmedia/audio.h>
4888 int main(void) { return 0; }
4891 cc_check
&& _sgiaudio
=yes
4893 if test "$_sgiaudio" = "yes" ; then
4894 _def_sgiaudio
='#define USE_SGI_AUDIO 1'
4895 _ld_sgiaudio
='-laudio'
4896 _aosrc
="$_aosrc ao_sgi.c"
4897 _aomodules
="sgi $_aomodules"
4899 _def_sgiaudio
='#undef USE_SGI_AUDIO'
4900 _noaomodules
="sgi $_noaomodules"
4902 echores
"$_sgiaudio"
4905 echocheck
"VCD support"
4906 if linux || bsdos || freebsd || netbsd || sunos || darwin
; then
4907 _inputmodules
="vcd $_inputmodules"
4908 _def_vcd
='#define HAVE_VCD 1'
4911 _def_vcd
='#undef HAVE_VCD'
4912 _noinputmodules
="vcd $_noinputmodules"
4913 echores
"not supported on this OS"
4916 echocheck
"DVD support (libmpdvdkit)"
4917 if test "$_dvdkit" = auto
; then
4919 if linux || freebsd || netbsd || darwin || openbsd || win32 || sunos || hpux
; then
4920 test -f "./libmpdvdkit2/Makefile" && _dvdkit
=yes
4921 test -f "./libmpdvdkit/Makefile" && _dvdkit
=yes
4924 if test "$_dvdkit" = yes ; then
4925 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
4926 if test -f "./libmpdvdkit2/Makefile" ; then
4927 _inputmodules
="mpdvdkit2 $_inputmodules"
4928 _dvdread
=libmpdvdkit2
4932 _inputmodules
="mpdvdkit $_inputmodules"
4933 _dvdread
=libmpdvdkit
4936 _noinputmodules
="mpdvdkit $_noinputmodules"
4938 _def_dvd_linux
='#undef HAVE_LINUX_DVD_STRUCT'
4939 _def_dvd_bsd
='#undef HAVE_BSD_DVD_STRUCT'
4940 _dev_dvd_openbsd
='#undef HAVE_OPENBSD_DVD_STRUCT'
4941 _def_dvd_darwin
='#undef DARWIN_DVD_IOCTL'
4942 if linux || netbsd || openbsd || bsdos
; then
4943 _def_dvd_linux
='#define HAVE_LINUX_DVD_STRUCT 1'
4945 _dev_dvd_openbsd
='#define HAVE_OPENBSD_DVD_STRUCT 1'
4949 _def_dvd_bsd
='#define HAVE_BSD_DVD_STRUCT 1'
4952 _def_dvd_darwin
='#define DARWIN_DVD_IOCTL'
4957 _noinputmodules
="mpdvdkit $_noinputmodules"
4959 if test "$_dvdkit" = yes ||
test "$_dvdkit2" = yes; then
4965 echocheck
"DVD support (libdvdread)"
4966 if test "$_dvdread" = auto
; then
4968 #include <inttypes.h>
4969 #include <dvdread/dvd_reader.h>
4970 #include <dvdread/ifo_types.h>
4971 #include <dvdread/ifo_read.h>
4972 #include <dvdread/nav_read.h>
4973 int main(void) { return 0; }
4976 if test "$_dl" = yes; then
4978 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -ldvdread $_ld_dl && \
4982 _def_mpdvdkit
="#undef USE_MPDVDKIT"
4986 _def_dvdread
='#define USE_DVDREAD 1'
4987 _ld_dvdread
='-ldvdread'
4988 _inputmodules
="dvdread $_inputmodules"
4992 _def_dvdread
='#undef USE_DVDREAD'
4993 _noinputmodules
="dvdread $_noinputmodules"
4998 _def_dvdread
='#define USE_DVDREAD 1'
4999 _ld_dvdread
='-Llibmpdvdkit -lmpdvdkit'
5000 _noinputmodules
="dvdread $_noinputmodules"
5001 _def_mpdvdkit
="#define USE_MPDVDKIT 1"
5002 echores
"disabled by libmpdvdkit"
5006 _def_dvdread
='#define USE_DVDREAD 1'
5007 _ld_dvdread
='-Llibmpdvdkit2 -lmpdvdkit'
5008 _noinputmodules
="dvdread $_noinputmodules"
5009 _def_mpdvdkit
="#define USE_MPDVDKIT 2"
5010 echores
"disabled by libmpdvdkit2"
5014 # dvdnav disabled, it does not work
5015 # echocheck "DVD support (libdvdnav)"
5016 # if test "$_dvdnav" = yes ; then
5018 # #include <dvdnav.h>
5019 # int main(void) { dvdnav_t *dvd=0; return 0; }
5022 # test -n "$_dvdnavdir" && _legal_dvdnavdir=-L$_dvdnavdir/.libs
5023 # if test -z "$_dvdnavconfig" ; then
5024 # if ( dvdnav-config --version ) >/dev/null 2>&1 ; then
5025 # _dvdnavconfig="dvdnav-config"
5028 # test -z "$_dvdnavdir" && test -n "$_dvdnavconfig" && _dvdnavdir=`$_dvdnavconfig --cflags`
5030 # test "$_dvdkit" = no && test "$_dvdkit2" = no && _used_css=$_ld_css
5031 # cc_check $_inc_extra -I$_dvdnavdir $_legal_dvdnavdir -ldvdnav $_used_css $_ld_dl $_ld_pthread && _dvdnav=yes
5033 # if test "$_dvdnav" = yes ; then
5035 # _def_dvdnav='#define USE_DVDNAV 1'
5036 # if test -n "$_legal_dvdnavdir" ; then
5037 # _ld_css="$_ld_css $_legal_dvdnavdir -ldvdnav"
5038 # elif test -n "$_dvdnavconfig" ; then
5039 # _ld_css="$_ld_css `$_dvdnavconfig --libs`"
5041 # _ld_css="$_ld_css -ldvdnav"
5043 # if test -n "$_dvdnavconfig" ; then
5044 # _dvdnav_version=`$_dvdnavconfig --version | sed "s/\.//g"`
5045 # _def_dvdnav_version="#define DVDNAVVERSION $_dvdnav_version"
5047 # if test -n "$_dvdnavdir" ; then
5048 # _inc_extra="$_inc_extra -I$_dvdnavdir"
5050 # _inputmodules="dvdnav $_inputmodules"
5053 # _def_dvdnav='#undef USE_DVDNAV'
5054 # _noinputmodules="dvdnav $_noinputmodules"
5058 echocheck
"cdparanoia"
5059 if test "$_cdparanoia" = auto
; then
5061 #include <cdda_interface.h>
5062 #include <cdda_paranoia.h>
5063 // This need a better test. How ?
5064 int main(void) { return 1; }
5067 for _inc_tmp
in "$_inc_cdparanoia" "-I/usr/include/cdda" "-I/usr/local/include/cdda" ; do
5068 cc_check
$_inc_tmp $_ld_cdparanoia -lcdda_interface -lcdda_paranoia $_ld_lm && _inc_cdparanoia
="$_inc_tmp" && _cdparanoia
=yes && break
5071 if test "$_cdparanoia" = yes ; then
5072 _def_cdparanoia
='#define HAVE_CDDA'
5073 _inputmodules
="cdda $_inputmodules"
5074 _ld_cdparanoia
="$_ld_cdparanoia -lcdda_interface -lcdda_paranoia"
5075 openbsd
&& _ld_cdparanoia
="$_ld_cdparanoia -lutil"
5077 _def_cdparanoia
='#undef HAVE_CDDA'
5078 _noinputmodules
="cdda $_noinputmodules"
5080 echores
"$_cdparanoia"
5084 if test "$_libcdio" = auto
&& test "$_cdparanoia" = no
; then
5085 if ( pkg-config
--modversion libcdio
) > /dev
/null
2>&1 ; then
5088 #include <cdio/version.h>
5089 #include <cdio/cdda.h>
5090 #include <cdio/paranoia.h>
5093 printf("%s\n", CDIO_VERSION);
5099 for _inc_tmp
in "$_inc_libcdio" "-I/usr/include/cdio" "-I/usr/local/include/cdio" ; do
5100 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
5106 if test "$_libcdio" = yes && test "$_cdparanoia" = no
; then
5107 _def_libcdio
='#define HAVE_LIBCDIO'
5108 _def_cdparanoia
='#define HAVE_CDDA'
5109 _def_havelibcdio
='yes'
5110 _inputmodules
="cdda $_inputmodules"
5111 _inc_libcdio
=`pkg-config --cflags libcdio`
5112 _ld_libcdio
=`pkg-config --libs libcdio`
5113 _ld_cdparanoia
="$_ld_cdparanoia -lcdio_cdda -lcdio_paranoia -lcdio"
5115 if test "$_cdparanoia" = yes ; then
5116 _libcdio
="no (using cdparanoia)"
5120 _def_libcdio
='#undef HAVE_LIBCDIO'
5121 _def_havelibcdio
='no'
5126 echocheck
"freetype >= 2.0.9"
5128 # freetype depends on iconv
5129 if test "$_iconv" = no
; then
5131 _res_comment
="iconv support needed"
5134 if test "$_freetype" = auto
; then
5135 if ( $_freetypeconfig --version ) >/dev
/null
2>&1 ; then
5138 #include <ft2build.h>
5139 #include FT_FREETYPE_H
5140 #if ((FREETYPE_MAJOR < 2) || ((FREETYPE_MINOR == 0) && (FREETYPE_PATCH < 9)))
5141 #error "Need FreeType 2.0.9 or newer"
5146 FT_Int major=-1,minor=-1,patch=-1;
5147 int err=FT_Init_FreeType(&library);
5149 printf("Couldn't initialize freetype2 lib, err code: %d\n",err);
5152 FT_Library_Version(library,&major,&minor,&patch); // in v2.1.0+ only :(((
5153 printf("freetype2 header version: %d.%d.%d library version: %d.%d.%d\n",
5154 FREETYPE_MAJOR,FREETYPE_MINOR,FREETYPE_PATCH,
5155 (int)major,(int)minor,(int)patch );
5156 if(major!=FREETYPE_MAJOR || minor!=FREETYPE_MINOR){
5157 printf("Library and header version mismatch! Fix it in your distribution!\n");
5164 cc_check
`$_freetypeconfig --cflags` `$_freetypeconfig --libs` && tmp_run
&& _freetype
=yes
5169 if test "$_freetype" = yes ; then
5170 _def_freetype
='#define HAVE_FREETYPE'
5171 _inc_freetype
=`$_freetypeconfig --cflags`
5172 _ld_freetype
=`$_freetypeconfig --libs`
5174 _def_freetype
='#undef HAVE_FREETYPE'
5176 echores
"$_freetype"
5178 if test "$_freetype" = no
; then
5180 _res_comment
="freetype support needed"
5182 echocheck
"fontconfig"
5183 if test "$_fontconfig" = auto
; then
5186 #include <fontconfig/fontconfig.h>
5191 printf("Couldn't initialize fontconfig lib\n");
5199 if cc_check
-lfontconfig ; then
5200 _ld_fontconfig
="-lfontconfig"
5201 elif cc_check
`pkg-config --cflags --libs fontconfig` ; then
5202 _inc_fontconfig
=`pkg-config --cflags fontconfig`
5203 _ld_fontconfig
=`pkg-config --libs fontconfig`
5208 if test "$_fontconfig" = yes ; then
5209 _def_fontconfig
='#define HAVE_FONTCONFIG'
5211 _def_fontconfig
='#undef HAVE_FONTCONFIG'
5213 echores
"$_fontconfig"
5215 echocheck
"fribidi with charsets"
5216 if test "$_fribidi" = yes ; then
5217 if ( $_fribidiconfig --version ) >/dev
/null
2>&1 ; then
5220 /* workaround for fribidi 0.10.4 and below */
5221 #define FRIBIDI_CHARSET_UTF8 FRIBIDI_CHAR_SET_UTF8
5222 #include <fribidi/fribidi.h>
5225 if(fribidi_parse_charset("UTF-8") != FRIBIDI_CHAR_SET_UTF8) {
5226 printf("Fribidi headers are not consistents with the library!\n");
5233 cc_check
`$_fribidiconfig --cflags` `$_fribidiconfig --libs` && tmp_run
&& _fribidi
=yes
5238 if test "$_fribidi" = yes ; then
5239 _def_fribidi
='#define USE_FRIBIDI'
5240 _inc_fribidi
=`$_fribidiconfig --cflags`
5241 _ld_fribidi
=`$_fribidiconfig --libs`
5243 _def_fribidi
='#undef USE_FRIBIDI'
5249 if test "$_enca" = auto
; then
5256 langs = enca_get_languages(&langcnt);
5261 cc_check
-lenca $_ld_lm && _enca
=yes
5263 if test "$_enca" = yes ; then
5264 _def_enca
='#define HAVE_ENCA 1'
5267 _def_enca
='#undef HAVE_ENCA'
5275 int main(void) { (void) inflate(0, Z_NO_FLUSH); return 0; }
5278 cc_check
-lz && _zlib
=yes
5279 if test "$_zlib" = yes ; then
5280 _def_zlib
='#define HAVE_ZLIB 1'
5283 _def_zlib
='#undef HAVE_ZLIB'
5289 if test "$_rtc" = auto
; then
5291 #include <sys/ioctl.h>
5293 #include <linux/rtc.h>
5296 #define RTC_PIE_ON RTCIO_PIE_ON
5298 int main(void) { return RTC_PIE_ON; }
5301 cc_check
&& _rtc
=yes
5303 if test "$_rtc" = yes ; then
5304 _def_rtc
='#define HAVE_RTC 1'
5306 _def_rtc
='#undef HAVE_RTC'
5311 echocheck
"external liblzo support"
5312 if test "$_liblzo" = auto
; then
5316 int main(void) { lzo_init();return 0; }
5318 cc_check
-llzo && _liblzo
=yes
5320 if test "$_liblzo" = yes ; then
5321 _def_liblzo
='#define USE_LIBLZO 1'
5323 _codecmodules
="liblzo $_codecmodules"
5325 _def_liblzo
='#undef USE_LIBLZO'
5326 _nocodecmodules
="liblzo $_nocodecmodules"
5331 echocheck
"mad support"
5332 if test "$_mad" = auto
; then
5336 int main(void) { return 0; }
5338 cc_check
$_madlibdir -lmad && _mad
=yes
5340 if test "$_mad" = yes ; then
5341 _def_mad
='#define USE_LIBMAD 1'
5343 _codecmodules
="libmad $_codecmodules"
5345 _def_mad
='#undef USE_LIBMAD'
5346 _nocodecmodules
="libmad $_nocodecmodules"
5351 if test "$_toolame" = auto
; then
5353 #include <toolame.h>
5354 int main(void) { toolame_init(); return 0; }
5357 _toolame_extraflags
=""
5358 _toolame_lib
="-ltoolame"
5359 if test -n "$_toolamedir"; then
5360 _toolame_extraflags
="-I$_toolamedir -L$_toolamedir"
5362 cc_check
$_toolame_extraflags $_toolame_lib $_ld_lm && _toolame
=yes
5364 if test "$_toolame" = yes ; then
5365 _def_toolame
='#define HAVE_TOOLAME 1'
5366 _codecmodules
="$_codecmodules toolame"
5368 _def_toolame
='#undef HAVE_TOOLAME'
5370 _nocodecmodules
="toolame $_nocodecmodules"
5372 if test "$_toolamedir" ; then
5373 _res_comment
="using $_toolamedir"
5378 if test "$_twolame" = auto
; then
5380 #include <twolame.h>
5381 int main(void) { twolame_init(); return 0; }
5384 _twolame_lib
="-ltwolame"
5385 cc_check
$_twolame_lib $_ld_lm && _twolame
=yes
5387 if test "$_twolame" = yes ; then
5388 _def_twolame
='#define HAVE_TWOLAME 1'
5389 _codecmodules
="$_codecmodules twolame"
5391 _def_twolame
='#undef HAVE_TWOLAME'
5393 _nocodecmodules
="twolame $_nocodecmodules"
5397 echocheck
"OggVorbis support"
5398 if test "$_tremor_internal" = yes; then
5400 elif test "$_vorbis" = auto
; then
5403 #include <vorbis/codec.h>
5404 int main(void) { vorbis_packet_blocksize(0,0); return 0; }
5406 cc_check
-lvorbis -logg $_ld_lm && _vorbis
=yes
5408 if test "$_vorbis" = yes ; then
5409 _def_vorbis
='#define HAVE_OGGVORBIS 1'
5410 if test "$_tremor_internal" = yes ; then
5411 # do not set _ld_vorbis as it is resolved separately
5412 # mp3lame support for vorbis is deprecated so don't care
5413 _def_tremor
='#define TREMOR 1'
5414 if test "$_tremor_low" = yes ; then
5415 _tremor_flags
='-D_LOW_ACCURACY_'
5419 _codecmodules
="tremor(internal) $_codecmodules"
5420 elif test "$_tremor" = yes ; then
5421 _def_tremor
='#define TREMOR 1'
5422 _ld_vorbis
='-lvorbisidec'
5423 _codecmodules
="tremor $_codecmodules"
5425 _def_tremor
='#undef TREMOR'
5426 _ld_vorbis
='-lvorbis -logg'
5427 _codecmodules
="libvorbis $_codecmodules"
5430 _def_vorbis
='#undef HAVE_OGGVORBIS'
5431 _def_tremor
='#undef TREMOR'
5432 _nocodecmodules
="libvorbis $_nocodecmodules"
5434 if test "$_vorbis" = yes -a "$_tremor_internal" = yes -a "$_tremor_low" = yes ; then
5435 _res_comment
="internal low accuracy Tremor"
5436 elif test "$_vorbis" = yes -a "$_tremor_internal" = yes ; then
5437 _res_comment
="internal Tremor"
5438 elif test "$_vorbis" = yes -a "$_tremor" = yes ; then
5439 _res_comment
="Tremor"
5443 echocheck
"libspeex (version >= 1.1 required)"
5444 if test "$_speex" = auto
; then
5447 #include <speex/speex.h>
5451 speex_decode_int(dec, &bits, dec);
5454 cc_check
-lspeex $_ld_lm && _speex
=yes
5456 if test "$_speex" = yes ; then
5457 _def_speex
='#define HAVE_SPEEX 1'
5459 _codecmodules
="speex $_codecmodules"
5461 _def_speex
='#undef HAVE_SPEEX'
5462 _nocodecmodules
="speex $_nocodecmodules"
5466 echocheck
"OggTheora support"
5467 if test "$_theora" = auto
; then
5470 #include <theora/theora.h>
5474 /* theora is in flux, make sure that all interface routines and
5475 * datatypes exist and work the way we expect it, so we don't break
5485 theora_info_init (&inf);
5486 theora_comment_init (&tc);
5490 /* we don't want to execute this kind of nonsense; just for making sure
5491 * that compilation works... */
5492 memset(&op, 0, sizeof(op));
5493 r = theora_decode_header (&inf, &tc, &op);
5494 r = theora_decode_init (&st, &inf);
5495 t = theora_granule_time (&st, op.granulepos);
5496 r = theora_decode_packetin (&st, &op);
5497 r = theora_decode_YUVout (&st, &yuv);
5503 for _ld_theora
in "`pkg-config --silence-errors --libs --cflags theora`" "-ltheora"; do
5504 cc_check
$_ld_theora && _theora
=yes && break
5506 if test "$_theora" = no
&& test "$_tremor_internal" = yes; then
5507 for _ld_theora
in "`pkg-config --silence-errors --libs --cflags theora`" "-ltheora"; do
5508 cc_check
-I. tremor
/bitwise.c
$_ld_theora && _theora
=yes && break
5512 if test "$_theora" = yes ; then
5513 _def_theora
='#define HAVE_OGGTHEORA 1'
5514 _codecmodules
="libtheora $_codecmodules"
5516 _def_theora
='#undef HAVE_OGGTHEORA'
5517 _nocodecmodules
="libtheora $_nocodecmodules"
5522 echocheck
"mp3lib support"
5523 if test "$_mp3lib" = yes ; then
5524 _def_mp3lib
='#define USE_MP3LIB 1'
5525 _codecmodules
="mp3lib $_codecmodules"
5527 _def_mp3lib
='#undef USE_MP3LIB'
5528 _nocodecmodules
="mp3lib $_nocodecmodules"
5532 echocheck
"liba52 support"
5533 if test "$_liba52" = yes ; then
5534 _def_liba52
='#define USE_LIBA52 1'
5535 _codecmodules
="liba52 $_codecmodules"
5537 _def_liba52
='#undef USE_LIBA52'
5538 _nocodecmodules
="liba52 $_nocodecmodules"
5542 echocheck
"libdts support"
5543 if test "$_libdts" = auto
; then
5546 #include <inttypes.h>
5548 int main(void) { dts_init (0); return 0; }
5550 cc_check
$_inc_libdts $_ld_libdts -ldts $_ld_lm && _libdts
=yes
5552 if test "$_libdts" = yes ; then
5553 _def_libdts
='#define CONFIG_DTS 1'
5554 _ld_libdts
="$_ld_libdts -ldts"
5555 _codecmodules
="libdts $_codecmodules"
5557 _def_libdts
='#undef CONFIG_DTS'
5558 _nocodecmodules
="libdts $_nocodecmodules"
5562 echocheck
"libmpeg2 support"
5563 if test "$_libmpeg2" = yes ; then
5564 _def_libmpeg2
='#define USE_LIBMPEG2 1'
5565 _codecmodules
="libmpeg2 $_codecmodules"
5567 _def_libmpeg2
='#undef USE_LIBMPEG2'
5568 _nocodecmodules
="libmpeg2 $_nocodecmodules"
5570 echores
"$_libmpeg2"
5572 echocheck
"libmpcdec (musepack, version >= 1.2.1 required)"
5573 if test "$_musepack" = auto
; then
5576 #include <mpcdec/mpcdec.h>
5578 mpc_streaminfo info;
5579 mpc_decoder decoder;
5580 mpc_decoder_set_streaminfo(&decoder, &info);
5581 mpc_decoder_decode_frame(&decoder, NULL, 0, NULL);
5584 cc_check
-lmpcdec $_ld_lm && _musepack
=yes
5586 if test "$_musepack" = yes ; then
5587 _def_musepack
='#define HAVE_MUSEPACK 1'
5588 _ld_musepack
='-lmpcdec'
5589 _codecmodules
="musepack $_codecmodules"
5591 _def_musepack
='#undef HAVE_MUSEPACK'
5592 _nocodecmodules
="musepack $_nocodecmodules"
5594 echores
"$_musepack"
5597 echocheck
"Matroska support"
5598 if test "$_matroska_internal" = yes ; then
5599 _inputmodules
="matroska $_inputmodules"
5600 _def_matroska
='#define HAVE_MATROSKA 1'
5602 _noinputmodules
="matroska $_noinputmodules"
5603 _def_matroska
='#undef HAVE_MATROSKA'
5605 echores
"$_matroska_internal"
5607 echocheck
"FAAC (AAC encoder) support"
5608 if test "$_faac" = auto
; then
5610 #include <inttypes.h>
5612 int main(void) { unsigned long x, y; faacEncOpen(48000, 2, &x, &y); return 0; }
5615 for _ld_tmp
in "-lfaac" "-lfaac -lmp4v2 -lstdc++" ; do
5616 cc_check
-c -O4 $_ld_tmp $_ld_lm && _ld_faac
="$_ld_tmp" && _faac
=yes && break
5619 if test "$_faac" = yes ; then
5620 _def_faac
="#define HAVE_FAAC 1"
5621 _codecmodules
="faac $_codecmodules"
5623 _def_faac
="#undef HAVE_FAAC"
5624 _nocodecmodules
="faac $_nocodecmodules"
5628 echocheck
"internal FAAD2 (AAC) support"
5629 _inc_faad
="-I`pwd`/libfaad2"
5630 if test "$_faad_internal" = auto
; then
5631 # the faad check needs a config.h file
5632 if not
test -f "config.h" ; then
5633 cat > config.h
<< EOF
5634 /* C99 lrintf function available */
5638 # internal faad: check if our dear gcc is able to compile it...
5639 cp "`pwd`/libfaad2/cfft.c" $TMPC
5640 if ( cc_check
-c -O4 $_march $_mcpu $_pipe -ffast-math -fomit-frame-pointer -D_GNU_SOURCE $_inc_faad ); then
5643 _faad_internal
="no (broken gcc)"
5646 if test "$_faad_internal" = yes ; then
5647 _def_faad_internal
="#define USE_INTERNAL_FAAD 1"
5650 _def_faad_internal
="#undef USE_INTERNAL_FAAD"
5653 echores
"$_faad_internal"
5656 echocheck
"external FAAD2 (AAC) support"
5657 if test "$_faad_external" != no
; then
5659 _inc_faad
="$_inc_extra"
5660 # external faad: check if it's really faad2 :)
5661 if test "$_faad_external" = auto
; then
5665 #ifndef FAAD_MIN_STREAMSIZE
5666 #error Too old version
5668 int main(void) { faacDecHandle testhand; faacDecFrameInfo testinfo; testhand = faacDecOpen(); faacDecInit(0, 0, 0, 0, 0); return 0; }
5670 cc_check
$_inc_faad $_ld_faad $_ld_lm && _faad_external
=yes
5673 echores
"$_faad_external"
5675 if test "$_faad_external" = yes; then
5676 _def_faad
='#define HAVE_FAAD 1'
5677 _codecmodules
="faad2(external) $_codecmodules"
5678 elif test "$_faad_internal" = yes; then
5679 _def_faad
='#define HAVE_FAAD 1'
5680 _codecmodules
="faad2(internal) $_codecmodules"
5682 _def_faad
='#undef HAVE_FAAD'
5683 _nocodecmodules
="faad2 $_nocodecmodules"
5688 echocheck
"LADSPA plugin support"
5689 if test "$_ladspa" = auto
; then
5694 const LADSPA_Descriptor *ld = NULL;
5699 cc_check
&& _ladspa
=yes
5701 if test "$_ladspa" = yes; then
5702 _def_ladspa
="#define HAVE_LADSPA"
5703 _afsrc
="$_afsrc af_ladspa.c"
5704 _afmodules
="ladspa $_afmodules"
5706 _def_ladspa
="#undef HAVE_LADSPA"
5707 _noafmodules
="ladspa $_noafmodules"
5712 if test "$_win32" = auto
; then
5716 _win32
=no
# x86 arch only
5720 if test "$_win32" != no
; then
5721 if test -z "$_win32libdir" ; then
5722 for I
in "$_libdir/codecs" "$_libdir/win32" /usr
/local
/lib
/codecs
/usr
/lib
/codecs
/usr
/local
/lib
/win32
/usr
/lib
/win32
; do
5723 if test -d "$I" ; then
5731 echocheck
"Win32 codec DLL support"
5732 if test "$_win32" = auto
; then
5734 test -n "$_win32libdir" && _win32
=yes
5736 if test "$_win32" = yes ; then
5737 _def_win32
='#define USE_WIN32DLL 1'
5738 _res_comment
="using $_win32libdir"
5740 _def_win32
='#undef USE_WIN32DLL'
5741 _nocodecmodules
="win32 $_nocodecmodules"
5746 if test "$_win32" != no
; then
5747 _def_win32_loader
='#undef WIN32_LOADER'
5748 echocheck
"Win32 loader support"
5749 _ld_win32
='loader/libloader.a'
5750 _dep_win32
='loader/libloader.a'
5751 _codecmodules
="win32 $_codecmodules"
5753 x86
&& _ld_win32
="$_ld_win32 -li386"
5756 _def_win32_loader
='#define WIN32_LOADER 1'
5759 _ld_win32libs
="$_ld_win32libs -ladvapi32 -lole32"
5760 echores
"no (using native windows)"
5764 echocheck
"DirectShow"
5767 if test "$_dshow" != no
; then
5769 # check if compiler supports C++ and C++-libs are installed correctly
5770 cat > "$TMPCPP" << EOF
5774 public: int myreturn(void);
5776 int myclass::myreturn(void) { ret = 0; return ret ; }
5777 int main(void) { myclass myobject; return myobject.myreturn(); }
5779 if cxx_check
&& tmp_run
; then
5781 echores
"yes (C++ is ok)"
5786 Your C++ runtime environment is broken.
5788 Hints: Does $_cc support C++? Do you have you a C++ compiler installed?
5789 Are the C++ libraries correctly installed?
5790 Check for libstdc++ and in (/etc/)ld.so.conf.
5792 If you do not need DirectShow support, you can also use:
5793 ./configure --disable-dshow <your-normal-configure-options>
5794 to disable building the C++ based DirectShow code.
5797 die
"$_cc's C++ is broken"
5805 if test "$_dshow" = yes ; then
5806 _def_dshow
='#define USE_DIRECTSHOW 1'
5807 _ld_dshow
='loader/dshow/libDS_Filter.a loader/dmo/libDMO_Filter.a'
5808 _dep_dshow
='loader/dshow/libDS_Filter.a loader/dmo/libDMO_Filter.a'
5809 _codecmodules
="dshow/dmo $_codecmodules"
5811 _def_dshow
='#undef USE_DIRECTSHOW'
5812 _nocodecmodules
="dshow/dmo $_nocodecmodules"
5816 echocheck
"XAnim DLL"
5817 if test "$_xanim" = auto
; then
5819 _res_comment
="dynamic loader support needed"
5820 if test "$_dl" = yes ; then
5821 _res_comment
="no suitable directory found - see DOCS/HTML/$_doc_lang/codecs.html"
5822 if test -z "$_xanimlibdir" ; then
5823 for I
in "$_libdir/codecs" /usr
/local
/lib
/xanim
/mods
/usr
/lib
/xanim
/mods
/usr
/lib
/xanim
$XANIM_MOD_DIR ; do
5824 if test -d "$I" ; then
5830 test "$_xanimlibdir" && _xanim
=yes
5833 if test "$_xanim" = yes ; then
5834 _def_xanim
='#define USE_XANIM 1'
5835 _def_xanim_path
="#define XACODEC_PATH \"$_xanimlibdir\""
5836 _codecmodules
="xanim $_codecmodules"
5837 _res_comment
="using $_xanimlibdir"
5839 _def_xanim
='#undef USE_XANIM'
5840 _def_xanim_path
='#undef XACODEC_PATH'
5841 _nocodecmodules
="xanim $_nocodecmodules"
5845 echocheck
"RealPlayer DLL"
5846 if test "$_real" = auto
; then
5848 _res_comment
="dynamic loader support needed"
5849 if test "$_dl" = yes ||
test "$_win32" = yes ; then
5850 # if test "$_dl" = yes ; then
5851 _res_comment
="tested only on Linux/FreeBSD/NetBSD/Cygwin/MinGW/Darwin"
5852 if linux || freebsd || netbsd || win32 || darwin
; then
5853 _res_comment
="no suitable directory found - see DOCS/HTML/$_doc_lang/codecs.html"
5854 if test -z "$_reallibdir" ; then
5855 for I
in "$_libdir/codecs" "$_libdir/real" /usr
/lib
/real \
5856 /usr
/lib
/RealPlayer
{9,8,}/Codecs
/usr
/local
/RealPlayer
{9,8,}/Codecs \
5857 /usr
/local
/lib
/RealPlayer
{9,8,}/Codecs
/opt
/RealPlayer
{9,8,}/{Real
/,}Codecs \
5858 {~
,}/Applications
/RealOne\ Player.app
/Contents
/MacOS
/Library
/Codecs \
5860 if test -d "$I" ; then
5866 test "$_reallibdir" && _real
=yes
5870 if test "$_real" = yes ; then
5871 _def_real
='#define USE_REALCODECS 1'
5872 _def_real_path
="#define REALCODEC_PATH \"$_reallibdir\""
5873 _codecmodules
="real $_codecmodules"
5874 _res_comment
="using $_reallibdir"
5876 _def_real
='#undef USE_REALCODECS'
5877 _def_real_path
="#undef REALCODEC_PATH"
5878 _nocodecmodules
="real $_nocodecmodules"
5883 echocheck
"LIVE555 Streaming Media libraries"
5884 if test "$_live" = auto
&& test "$_network" = yes ; then
5885 cat > $TMPCPP << EOF
5886 #include <liveMedia.hh>
5887 #if (LIVEMEDIA_LIBRARY_VERSION_INT < 1090195200)
5888 #error Please upgrade to version 2004.07.19 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
5894 for I
in "$_livelibdir" "$_libdir/live" "/usr/lib/live" "/usr/local/live" "/usr/local/lib/live" ; do
5895 cxx_check
-I$I/liveMedia
/include
-I$I/UsageEnvironment
/include
-I$I/groupsock
/include
&& _livelibdir
=$I && _live
=yes && break
5897 if test "$_live" != yes ; then
5898 if cxx_check
-I/usr
/include
/liveMedia
-I/usr
/include
/UsageEnvironment
-I/usr
/include
/groupsock
; then
5903 if test "$_live" = yes && test "$_network" = yes ; then
5904 echores
"yes (using $_livelibdir)"
5905 _def_live
='#define STREAMING_LIVE555 1'
5906 _live_libs_def
="# LIVE555 Streaming Media libraries:
5907 LIVE_LIB_DIR = $_livelibdir
5908 LIVE_LIBS = \$(LIVE_LIB_DIR)/liveMedia/libliveMedia.a
5909 LIVE_LIBS += \$(LIVE_LIB_DIR)/groupsock/libgroupsock.a
5910 LIVE_LIBS += \$(LIVE_LIB_DIR)/UsageEnvironment/libUsageEnvironment.a
5911 LIVE_LIBS += \$(LIVE_LIB_DIR)/BasicUsageEnvironment/libBasicUsageEnvironment.a
5912 LIVE_LIBS += -lstdc++
5913 LIVE_INCLUDES = -I\$(LIVE_LIB_DIR)/liveMedia/include
5914 LIVE_INCLUDES += -I\$(LIVE_LIB_DIR)/UsageEnvironment/include
5915 LIVE_INCLUDES += -I\$(LIVE_LIB_DIR)/BasicUsageEnvironment/include
5916 LIVE_INCLUDES += -I\$(LIVE_LIB_DIR)/groupsock/include"
5917 _ld_live
='$(LIVE_LIBS)'
5918 _inputmodules
="live555 $_inputmodules"
5919 elif test "$_live_dist" = yes && test "$_network" = yes ; then
5920 echores
"yes (using distribution version)"
5922 _def_live
='#define STREAMING_LIVE555 1'
5923 _live_libs_def
="# LIVE555 Streaming Media libraries:
5924 LIVE_LIB_DIR = $_livelibdir
5925 LIVE_LIBS = -lliveMedia
5926 LIVE_LIBS += -lgroupsock
5927 LIVE_LIBS += -lUsageEnvironment
5928 LIVE_LIBS += -lBasicUsageEnvironment
5929 LIVE_LIBS += -lstdc++
5930 LIVE_INCLUDES = -I/usr/include/liveMedia
5931 LIVE_INCLUDES += -I/usr/include/UsageEnvironment
5932 LIVE_INCLUDES += -I/usr/include/BasicUsageEnvironment
5933 LIVE_INCLUDES += -I/usr/include/groupsock"
5934 _ld_live
='$(LIVE_LIBS)'
5935 _inputmodules
="live555 $_inputmodules"
5938 _def_live
='#undef STREAMING_LIVE555'
5939 _noinputmodules
="live555 $_noinputmodules"
5942 echocheck
"FFmpeg libavutil (static)"
5943 if test -d libavutil
; then
5948 echores
"$_libavutil"
5950 echocheck
"FFmpeg libavcodec (static)"
5951 if test "$_libavcodec" = auto
; then
5952 # Note: static linking is preferred to dynamic linking
5954 _res_comment
="see DOCS/HTML/$_doc_lang/codecs.html"
5955 if test -d libavcodec
&& test -f libavcodec
/utils.c
; then
5956 _res_comment
="old ffmpeg version, use CVS !"
5957 if grep avcodec_find_encoder_by_name libavcodec
/utils.c
> /dev
/null
2>&1 ; then
5958 # check if libavutil is a required
5960 #include "libavcodec/avcodec.h"
5961 #if LIBAVCODEC_BUILD >= 3211265
5962 #error We need libavutil!
5964 int main(void) { return 0; }
5967 if cc_check
-I.
-I.
/libavutil
; then
5968 _libavutil_required
="no"
5970 _libavutil_required
="yes"
5972 _res_comment
="libavutil availability does not fit libavcodec version"
5973 if test "$_libavutil_required" = "$_libavutil"; then
5980 echores
"$_libavcodec"
5982 echocheck
"FFmpeg libavformat (static)"
5983 if test "$_libavformat" = auto
; then
5984 # Note: static linking is preferred to dynamic linking
5986 if test -d libavformat
&& test -f libavformat
/utils.c
; then
5990 echores
"$_libavformat"
5992 _def_haveffpostprocess
='no'
5993 if test -d libavcodec
&& test -f libavcodec
/libpostproc
/postprocess.h
; then
5994 _def_haveffpostprocess
='yes'
5997 if test "$_libavcodec" != yes ; then
5998 echocheck
"FFmpeg libavcodec (dynamic)"
5999 if test "$_libavcodecso" = auto
; then
6001 _res_comment
="libavcodec.so is broken/obsolete"
6002 # FIXME : check for avcodec_find_encoder_by_name() for mencoder
6004 #define FF_POSTPROCESS 1
6005 #include <ffmpeg/avcodec.h>
6007 avcodec_find_encoder_by_name("");
6011 if cc_check
-lavcodec $_ld_lm ; then
6013 _res_comment
="using libavcodec.so, but static libavcodec is recommended"
6016 echores
"$_libavcodecso"
6019 _def_libavcodec
='#undef USE_LIBAVCODEC'
6020 _def_libavcodecso
='#undef USE_LIBAVCODEC_SO'
6021 _def_ffpostprocess
='#undef FF_POSTPROCESS'
6022 if test "$_libavcodec" = yes ; then
6023 _def_libavcodec
='#define USE_LIBAVCODEC 1'
6024 _ld_libavcodec
='libavcodec/libavcodec.a'
6025 _dep_libavcodec
='libavcodec/libavcodec.a'
6026 _def_ffpostprocess
='#define FF_POSTPROCESS 1'
6027 _codecmodules
="libavcodec $_codecmodules"
6028 if test "$_libavutil" = yes; then
6029 _ld_libavutil
='libavutil/libavutil.a'
6030 _dep_libavutil
='libavutil/libavutil.a'
6032 elif test "$_libavcodecso" = yes ; then
6033 _def_libavcodec
='#define USE_LIBAVCODEC 1'
6034 _def_libavcodecso
='#define USE_LIBAVCODEC_SO 1'
6035 _ld_libavcodec
='-lavcodec'
6036 _codecmodules
="libavcodec.so $_codecmodules"
6038 _nocodecmodules
="libavcodec $_nocodecmodules"
6041 _def_libavformat
='#undef USE_LIBAVFORMAT'
6042 _def_libavformat_win32
='#undef CONFIG_WIN32'
6043 if test "$_libavformat" = yes ; then
6044 _def_libavformat
='#define USE_LIBAVFORMAT 1'
6045 _ld_libavformat
='libavformat/libavformat.a'
6046 _dep_libavformat
='libavformat/libavformat.a'
6048 _def_libavformat_win32
='#define CONFIG_WIN32 1'
6052 echocheck
"amr narrowband"
6053 if test "$_amr_nb" = auto
; then
6055 if test -f libavcodec
/amr_float
/sp_dec.c
; then
6056 if test "$_libavcodec" = yes ; then
6059 _res_comment
="libavcodec (static) is required by amr_nb, sorry"
6063 if test "$_amr_nb" = yes ; then
6064 _def_amr_nb
='#define AMR_NB 1'
6066 _def_amr_nb
='#undef AMR_NB'
6068 echores
"$_amr_nb $_echomsg"
6070 echocheck
"amr narrowband, fixed point"
6071 if test "$_amr_nb_fixed" = auto
; then
6073 if test -f libavcodec
/amr
/dtx_dec.c
; then
6074 if test "$_libavcodec" = yes ; then
6075 if test "$_amr_nb" = no
; then
6078 _res_comment
="disabled by amr_nb"
6081 _res_comment
="libavcodec (static) is required by amr_nb-fixed, sorry"
6085 if test "$_amr_nb_fixed" = yes ; then
6086 _def_amr_nb
='#define AMR_NB 1'
6087 _def_amr_nb_fixed
='#define AMR_NB_FIXED 1'
6090 _def_amr_nb_fixed
='#undef AMR_NB_FIXED'
6092 echores
"$_amr_nb_fixed"
6094 if test "$_amr_nb" = yes ; then
6095 _codecmodules
="amr_nb $_codecmodules"
6097 _nocodecmodules
="amr_nb $_nocodecmodules"
6100 echocheck
"amr wideband"
6101 if test "$_amr_wb" = auto
; then
6103 if test -f libavcodec
/amrwb_float
/dec_dtx.c
; then
6104 if test "$_libavcodec" = yes ; then
6107 _res_comment
="libavcodec (static) is required by amr_wb, sorry"
6111 if test "$_amr_wb" = yes ; then
6112 _def_amr_wb
='#define AMR_WB 1'
6113 _codecmodules
="amr_wb $_codecmodules"
6115 _def_amr_wb
='#undef AMR_WB'
6116 _nocodecmodules
="amr_wb $_nocodecmodules"
6120 echocheck
"libdv-0.9.5+"
6121 if test "$_libdv" = auto
; then
6124 #include <libdv/dv.h>
6125 int main(void) { dv_encoder_t* enc=dv_encoder_new(1,1,1); return 0; }
6127 cc_check
-ldv $_ld_lm && _libdv
=yes
6129 if test "$_libdv" = yes ; then
6130 _def_libdv
='#define HAVE_LIBDV095 1'
6132 _codecmodules
="libdv $_codecmodules"
6134 _def_libdv
='#undef HAVE_LIBDV095'
6135 _nocodecmodules
="libdv $_nocodecmodules"
6140 if test "$_zr" = auto
; then
6141 #36067's seem to identify themselves as 36057PQC's, so the line
6142 #below should work for 36067's and 36057's.
6143 if grep -e "Multimedia video controller: Zoran Corporation ZR36057" /proc
/pci
> /dev
/null
2>&1; then
6149 if test "$_zr" = yes ; then
6150 if test "$_libavcodec" = yes ; then
6151 _def_zr
='#define HAVE_ZR 1'
6152 _vosrc
="$_vosrc vo_zr2.c vo_zr.c jpeg_enc.c"
6153 _vomodules
="zr zr2 $_vomodules"
6155 _res_comment
="libavcodec (static) is required by zr, sorry"
6156 _novomodules
="zr $_novomodules"
6157 _def_zr
='#undef HAVE_ZR'
6160 _def_zr
='#undef HAVE_ZR'
6161 _novomodules
="zr zr2 $_novomodules"
6166 if test "$_bl" = yes ; then
6167 _def_bl
='#define HAVE_BL 1'
6168 _vosrc
="$_vosrc vo_bl.c"
6169 _vomodules
="bl $_vomodules"
6171 _def_bl
='#undef HAVE_BL'
6172 _novomodules
="bl $_novomodules"
6179 int main(void) { xvid_init(0, 0, 0, 0); return 0; }
6181 _ld_xvid
="$_ld_xvid -lxvidcore"
6182 if test "$_xvid" != no
&& cc_check
$_inc_xvid $_ld_xvid $_ld_lm ; then
6184 _def_xvid3
='#define HAVE_XVID3 1'
6185 _def_xvid4
='#undef HAVE_XVID4'
6186 _codecmodules
="xvid $_codecmodules"
6190 int main(void) { xvid_global(0, 0, 0, 0); return 0; }
6192 if test "$_xvid" != no
&& cc_check
$_inc_xvid $_ld_xvid $_ld_lm ; then
6194 _def_xvid3
='#undef HAVE_XVID3'
6195 _def_xvid4
='#define HAVE_XVID4 1'
6196 _codecmodules
="xvid $_codecmodules"
6200 _def_xvid3
='#undef HAVE_XVID3'
6201 _def_xvid4
='#undef HAVE_XVID4'
6202 _nocodecmodules
="xvid $_nocodecmodules"
6208 _def_decore_xvid
='#undef DECORE_XVID'
6209 _def_encore_xvid
='#undef ENCORE_XVID'
6210 if test "$_xvid" = yes ; then
6211 echocheck
"DivX4 compatibility in XviD"
6214 int main(void) { (void) decore(0, 0, 0, 0); return 0; }
6216 cc_check
$_ld_lm "$_ld_xvid" && _xvidcompat
=yes
6217 echores
"$_xvidcompat"
6222 #include <inttypes.h>
6225 #error We do not support old versions of x264. Get the latest from SVN.
6227 int main(void) { x264_encoder_open((void*)0); return 0; }
6229 _ld_x264
="$_ld_x264 -lx264 $_ld_pthread"
6230 if test "$_x264" != no
&& \
6231 ( cc_check
$_inc_x264 $_ld_x264 $_ld_lm || \
6232 ( test "$_x11" = yes && cc_check
$_inc_x264 $_inc_x11 $_ld_x264 $_ld_x11 $_ld_lm )) ; \
6235 _def_x264
='#define HAVE_X264 1'
6236 _codecmodules
="x264 $_codecmodules"
6240 _def_x264
='#undef HAVE_X264'
6241 _nocodecmodules
="x264 $_nocodecmodules"
6245 echocheck
"DivX4linux/DivX5linux/OpenDivX decore"
6246 # DivX5: DEC_OPT_MEMORY_REQS - DivX4: DEC_OPT_FRAME_311
6249 int main(void) { (void) decore(0, 0, 0, 0); return DEC_OPT_FRAME_311; }
6251 if test "$_divx4linux" != no
&& cc_check
$_ld_lm -ldivxdecore ; then
6253 _ld_decore
='-ldivxdecore'
6254 _def_decore
='#define NEW_DECORE 1'
6255 _def_divx
='#define USE_DIVX'
6256 _def_divx5
='#undef DECORE_DIVX5'
6257 _def_odivx_postprocess
='#undef HAVE_ODIVX_POSTPROCESS'
6258 _codecmodules
="divx4linux $_codecmodules"
6259 echores
"DivX4linux (with libdivxdecore.so)"
6261 # if test "$_divx4linux" != no ; then
6263 # OdivxPP disabled because of:
6264 # ld: Warning: type of symbol `dering' changed from 1 to 2 in opendivx/postprocess.o
6267 int main(void) { (void) decore(0, 0, 0, 0); return DEC_OPT_INIT; }
6269 if test "$_divx4linux" != no
&& cc_check
$_ld_lm -ldivxdecore ; then
6271 # _ld_decore='-ldivxdecore opendivx/postprocess.o'
6272 _ld_decore
='-ldivxdecore'
6273 _def_decore
='#define NEW_DECORE 1'
6274 _def_divx
='#define USE_DIVX'
6275 _def_divx5
='#define DECORE_DIVX5 1'
6276 # _def_odivx_postprocess='#define HAVE_ODIVX_POSTPROCESS 1'
6277 _def_odivx_postprocess
='#undef HAVE_ODIVX_POSTPROCESS'
6278 _codecmodules
="divx5linux $_codecmodules"
6279 _nocodecmodules
="divx4linux $_nocodecmodules"
6280 echores
"DivX5linux (with libdivxdecore.so)"
6281 elif test "$_opendivx" != no
; then
6283 _ld_decore
='opendivx/libdecore.a'
6284 _def_decore
='#undef NEW_DECORE'
6285 _def_divx
='#define USE_DIVX'
6286 _def_divx5
='#undef DECORE_DIVX5'
6287 _def_odivx_postprocess
='#define HAVE_ODIVX_POSTPROCESS 1'
6288 _codecmodules
="opendivx $_codecmodules"
6289 _nocodecmodules
="divx5linux $_nocodecmodules"
6291 elif test "$_xvidcompat" = yes ; then
6294 _def_decore
='#define NEW_DECORE 1'
6295 _def_divx
='#define USE_DIVX 1'
6296 _def_divx5
='#undef DECORE_DIVX5'
6297 _def_decore_xvid
='#define DECORE_XVID 1'
6298 _def_odivx_postprocess
='#undef HAVE_ODIVX_POSTPROCESS'
6299 _nocodecmodules
="opendivx divx5linux divx4linux $_nocodecmodules"
6300 echores
"XviD compat."
6304 _def_decore
='#undef NEW_DECORE'
6305 _def_divx
='#undef USE_DIVX'
6306 _def_divx5
='#undef DECORE_DIVX5'
6307 _def_odivx_postprocess
='#undef HAVE_ODIVX_POSTPROCESS'
6308 _nocodecmodules
="opendivx $_nocodecmodules"
6314 # mencoder requires (optional) those libs: libmp3lame and divx4linux encore
6315 if test "$_mencoder" != no
; then
6317 echocheck
"libmp3lame (for mencoder)"
6319 _def_mp3lame_preset
='#undef HAVE_MP3LAME_PRESET'
6320 _def_mp3lame_preset_medium
='#undef HAVE_MP3LAME_PRESET_MEDIUM'
6322 #include <lame/lame.h>
6323 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; }
6325 # Note: libmp3lame usually depends on vorbis
6326 cc_check
-lmp3lame $_ld_vorbis $_ld_lm && tmp_run
&& _mp3lame
=yes
6327 if test "$_mp3lame" = yes ; then
6328 _def_mp3lame
="#define HAVE_MP3LAME"
6329 _ld_mp3lame
="-lmp3lame $_ld_vorbis"
6331 #include <lame/lame.h>
6332 int main(void) { int p = STANDARD_FAST; return 0; }
6334 cc_check
$_ld_mp3lame $_ld_lm && _def_mp3lame_preset
="#define HAVE_MP3LAME_PRESET"
6336 #include <lame/lame.h>
6337 int main(void) { int p = MEDIUM_FAST; return 0; }
6339 cc_check
$_ld_mp3lame $_ld_lm && _def_mp3lame_preset_medium
="#define HAVE_MP3LAME_PRESET_MEDIUM"
6341 _def_mp3lame
='#undef HAVE_MP3LAME'
6346 echocheck
"DivX4linux encore (for mencoder)"
6348 #include <encore2.h>
6349 int main(void) { (void) encore(0, 0, 0, 0); return 0; }
6351 if test "$_divx4linux" != no
&& cc_check
-ldivxencore $_ld_lm ; then
6352 _def_encore
='#define HAVE_DIVX4ENCORE 1'
6353 _ld_encore
='-ldivxencore'
6354 echores
"DivX4linux (with libdivxencore.so)"
6355 elif test "$_xvidcompat" = yes ; then
6356 _def_encore
='#define HAVE_DIVX4ENCORE 1'
6358 _def_encore_xvid
='#define ENCORE_XVID 1'
6359 echores
"XviD compat."
6361 _def_encore
='#undef HAVE_DIVX4ENCORE'
6367 echocheck
"mencoder"
6368 _mencoder_flag
='#undef HAVE_MENCODER'
6369 if test "$_mencoder" = yes ; then
6370 _mencoder_flag
='#define HAVE_MENCODER'
6372 echores
"$_mencoder"
6374 echocheck
"fastmemcpy"
6375 # fastmemcpy check is done earlier with tests of CPU & binutils features
6376 if test "$_fastmemcpy" = yes ; then
6377 _def_fastmemcpy
='#define USE_FASTMEMCPY 1'
6379 _def_fastmemcpy
='#undef USE_FASTMEMCPY'
6381 echores
"$_fastmemcpy"
6383 echocheck
"UniquE RAR File Library"
6384 if test "$_unrarlib" = yes ; then
6385 _def_unrarlib
='#define USE_UNRARLIB 1'
6387 _def_unrarlib
='#undef USE_UNRARLIB'
6389 echores
"$_unrarlib"
6391 echocheck
"TV interface"
6392 if test "$_tv" = yes ; then
6393 _def_tv
='#define USE_TV 1'
6394 _inputmodules
="tv $_inputmodules"
6396 _noinputmodules
="tv $_noinputmodules"
6397 _def_tv
='#undef USE_TV'
6401 echocheck
"EDL support"
6402 if test "$_edl" = yes ; then
6403 _def_edl
='#define USE_EDL'
6404 _inputmodules
="edl $_inputmodules"
6406 _noinputmodules
="edl $_noinputmodules"
6407 _def_edl
='#undef USE_EDL'
6411 echocheck
"*BSD BrookTree 848 TV interface"
6412 if test "$_tv_bsdbt848" = auto
; then
6414 if test "$_tv" = yes ; then
6416 #include <sys/types.h>
6417 #if defined(__NetBSD__)
6418 #include <dev/ic/bt8xx.h>
6420 #include <machine/ioctl_bt848.h>
6422 int main(void) { return 0; }
6424 cc_check
&& _tv_bsdbt848
=yes
6427 if test "$_tv_bsdbt848" = yes ; then
6428 _def_tv_bsdbt848
='#define HAVE_TV_BSDBT848 1'
6429 _inputmodules
="tv-bsdbt848 $_inputmodules"
6431 _def_tv_bsdbt848
='#undef HAVE_TV_BSDBT848'
6432 _noinputmodules
="tv-bsdbt848 $_noinputmodules"
6434 echores
"$_tv_bsdbt848"
6436 echocheck
"Video 4 Linux TV interface"
6437 if test "$_tv_v4l" = auto
; then
6439 if test "$_tv" = yes && linux
; then
6442 #include <linux/videodev.h>
6443 int main(void) { return 0; }
6445 cc_check
&& _tv_v4l
=yes
6448 if test "$_tv_v4l" = yes ; then
6449 _def_tv_v4l
='#define HAVE_TV_V4L 1'
6450 _inputmodules
="tv-v4l $_inputmodules"
6452 _noinputmodules
="tv-v4l $_noinputmodules"
6453 _def_tv_v4l
='#undef HAVE_TV_V4L'
6458 echocheck
"Video 4 Linux 2 TV interface"
6459 if test "$_tv_v4l2" = auto
; then
6461 if test "$_tv" = yes && linux
; then
6464 #include <linux/types.h>
6465 #include <linux/videodev2.h>
6466 int main(void) { return 0; }
6468 cc_check
&& _tv_v4l2
=yes
6471 if test "$_tv_v4l2" = yes ; then
6472 _def_tv_v4l2
='#define HAVE_TV_V4L2 1'
6473 _inputmodules
="tv-v4l2 $_inputmodules"
6475 _noinputmodules
="tv-v4l2 $_noinputmodules"
6476 _def_tv_v4l2
='#undef HAVE_TV_V4L2'
6481 echocheck
"audio select()"
6482 if test "$_select" = no
; then
6483 _def_select
='#undef HAVE_AUDIO_SELECT'
6484 elif test "$_select" = yes ; then
6485 _def_select
='#define HAVE_AUDIO_SELECT 1'
6491 # FIXME network check
6492 if test "$_network" != no
; then
6493 _def_network
='#define MPLAYER_NETWORK 1'
6494 _ld_network
="$_ld_sock"
6495 _inputmodules
="network $_inputmodules"
6497 _noinputmodules
="network $_noinputmodules"
6498 _def_network
='#undef MPLAYER_NETWORK'
6504 if not beos
&& test "$_ftp" != no
; then
6505 _def_ftp
='#define HAVE_FTP 1'
6506 _inputmodules
="ftp $_inputmodules"
6508 _noinputmodules
="ftp $_noinputmodules"
6509 _def_ftp
='#undef HAVE_FTP'
6513 echocheck
"vstream client"
6514 if test "$_vstream" = auto
; then
6517 #include <vstream-client.h>
6518 void vstream_error(const char *format, ... ) {}
6519 int main(void) { vstream_start(); return 0; }
6521 cc_check
-lvstream-client && _vstream
=yes
6523 if test "$_vstream" = yes ; then
6524 _def_vstream
='#define HAVE_VSTREAM 1'
6525 _inputmodules
="vstream $_inputmodules"
6526 _ld_vstream
='-lvstream-client'
6528 _noinputmodules
="vstream $_noinputmodules"
6529 _def_vstream
='#undef HAVE_VSTREAM'
6534 echocheck
"byte order"
6535 if test "$_big_endian" = auto
; then
6537 short ascii_name[] = { (('M'<<8)|'P'),(('l'<<8)|'a'),(('y'<<8)|'e'),(('r'<<8)|'B'),
6538 (('i'<<8)|'g'),(('E'<<8)|'n'),(('d'<<8)|'i'),(('a'<<8)|'n'),0};
6540 char* s = (char*)ascii_name;
6545 if strings $TMPO |
grep -l MPlayerBigEndian
>/dev
/null
; then
6551 echo -n "failed to autodetect byte order, defaulting to "
6554 if test "$_big_endian" = yes ; then
6555 _byte_order
='big-endian'
6556 _def_words_endian
='#define WORDS_BIGENDIAN 1'
6558 _byte_order
='little-endian'
6559 _def_words_endian
='#undef WORDS_BIGENDIAN'
6561 echores
"$_byte_order"
6563 echocheck
"OSD menu"
6564 if test "$_menu" = yes ; then
6565 _def_menu
='#define HAVE_MENU 1'
6567 _def_menu
='#undef HAVE_MENU'
6571 # Check to see if they want QTX codecs enabled
6572 echocheck
"QTX codecs"
6573 if test "$_qtx" = auto
; then
6576 if test "$_qtx" = yes ; then
6577 _def_qtx
='#define USE_QTX_CODECS 1'
6578 _codecmodules
="qtx $_codecmodules"
6580 _def_qtx
='#undef USE_QTX_CODECS'
6581 _nocodecmodules
="qtx $_nocodecmodules"
6586 echocheck
"Subtitles sorting"
6587 if test "$_sortsub" = yes ; then
6588 _def_sortsub
='#define USE_SORTSUB 1'
6590 _def_sortsub
='#undef USE_SORTSUB'
6595 echocheck
"XMMS inputplugin support"
6596 if test "$_xmms" = yes ; then
6598 if ( xmms-config
--version ) >/dev
/null
2>&1 ; then
6599 if test -z "$_xmmsplugindir" ; then
6600 _xmmsplugindir
=`xmms-config --input-plugin-dir`
6602 if test -z "$_xmmslibdir" ; then
6603 _xmmslibdir
=`xmms-config --exec-prefix`/lib
6606 if test -z "$_xmmsplugindir" ; then
6607 _xmmsplugindir
=/usr
/lib
/xmms
/Input
6609 if test -z "$_xmmslibdir" ; then
6610 _xmmslibdir
=/usr
/lib
6614 _def_xmms
='#define HAVE_XMMS 1'
6616 _xmms_lib
="${_xmmslibdir}/libxmms.dylib"
6618 _xmms_lib
="${_xmmslibdir}/libxmms.so.1 -export-dynamic"
6621 _def_xmms
='#undef HAVE_XMMS'
6626 if test "$_inet6" = auto
; then
6628 #include <sys/types.h>
6629 #include <sys/socket.h>
6630 int main(void) { socket(AF_INET6, SOCK_STREAM, AF_INET6); }
6637 if test "$_inet6" = yes ; then
6638 _def_inet6
='#define HAVE_AF_INET6 1'
6640 _def_inet6
='#undef HAVE_AF_INET6'
6645 echocheck
"gethostbyname2"
6646 if test "$_gethostbyname2" = auto
; then
6648 #include <sys/types.h>
6649 #include <sys/socket.h>
6651 int main(void) { gethostbyname2("", AF_INET); }
6659 if test "$_gethostbyname2" = yes ; then
6660 _def_gethostbyname2
='#define HAVE_GETHOSTBYNAME2 1'
6662 _def_gethostbyname2
='#undef HAVE_GETHOSTBYNAME2'
6664 echores
"$_gethostbyname2"
6666 # --------------- GUI specific tests begin -------------------
6669 if test "$_gui" = yes ; then
6671 # Required libraries
6672 test "$_png" != yes && die
"PNG support required for GUI compilation, please install libpng and libpng-dev packages."
6673 test "$_x11" != yes && die
"X11 support required for GUI compilation"
6675 echocheck
"XShape extension"
6677 if test "$_x11" = yes ; then
6679 #include <X11/Xlib.h>
6680 #include <X11/Xproto.h>
6681 #include <X11/Xutil.h>
6682 #include <X11/extensions/shape.h>
6685 char *name = ":0.0";
6688 int eventbase, errorbase;
6689 if (getenv("DISPLAY"))
6690 name=getenv("DISPLAY");
6691 wsDisplay=XOpenDisplay(name);
6692 if (!XShapeQueryExtension(wsDisplay,&eventbase,&errorbase))
6694 XCloseDisplay(wsDisplay);
6698 cc_check
$_inc_x11 $_ld_x11 && _xshape
=yes
6700 if test "$_xshape" = yes ; then
6701 _def_xshape
='#define HAVE_XSHAPE 1'
6703 die
"The GUI requires the X11 extension XShape (which was not found)."
6708 if test "$_gtk1" = no
; then
6710 echocheck
"GTK+ version"
6712 if pkg-config gtk
+-2.0
--exists ; then
6713 _gtk
=`pkg-config gtk+-2.0 --modversion 2>/dev/null`
6714 _inc_gtk
=`pkg-config gtk+-2.0 --cflags 2>/dev/null`
6715 _ld_gtk
=`pkg-config gtk+-2.0 --libs 2>/dev/null`
6719 if pkg-config glib-2.0
--exists ; then
6720 echocheck
"glib version"
6721 _glib
=`pkg-config glib-2.0 --modversion 2>/dev/null`
6722 _inc_glib
=`pkg-config glib-2.0 --cflags 2>/dev/null`
6723 _ld_glib
=`pkg-config glib-2.0 --libs 2>/dev/null`
6726 _def_gui
='#define HAVE_NEW_GUI 1'
6727 _def_gtk2_gui
='#define HAVE_GTK2_GUI 1'
6728 _ld_gui
='$(GTKLIB) $(GLIBLIB)'
6731 echo "GLIB-2 devel packages were not found, trying GTK 1.2"
6734 echo "GTK-2 devel packages were not found, trying GTK 1.2"
6739 if test "$_gtk1" = yes ; then
6740 # Check for old GTK (1.2.x)
6741 echocheck
"GTK version"
6742 if test -z "$_gtkconfig" ; then
6743 if ( gtk-config
--version ) >/dev
/null
2>&1 ; then
6744 _gtkconfig
="gtk-config"
6745 elif ( gtk12-config
--version ) >/dev
/null
2>&1 ; then
6746 _gtkconfig
="gtk12-config"
6748 die
"The GUI requires GTK devel packages (which were not found)."
6751 _gtk
=`$_gtkconfig --version 2>&1`
6752 _inc_gtk
=`$_gtkconfig --cflags 2>&1`
6753 _ld_gtk
=`$_gtkconfig --libs 2>&1`
6754 echores
"$_gtk (using $_gtkconfig)"
6757 echocheck
"glib version"
6758 if test -z "$_glibconfig" ; then
6759 if ( glib-config
--version ) >/dev
/null
2>&1 ; then
6760 _glibconfig
="glib-config"
6761 elif ( glib12-config
--version ) >/dev
/null
2>&1 ; then
6762 _glibconfig
="glib12-config"
6764 die
"The GUI requires GLib devel packages (which were not found)"
6767 _glib
=`$_glibconfig --version 2>&1`
6768 _inc_glib
=`$_glibconfig --cflags 2>&1`
6769 _ld_glib
=`$_glibconfig --libs 2>&1`
6770 echores
"$_glib (using $_glibconfig)"
6772 _def_gui
='#define HAVE_NEW_GUI 1'
6773 _def_gtk2_gui
='#undef HAVE_GTK2_GUI'
6774 _ld_gui
='$(GTKLIB) $(GLIBLIB)'
6777 echo "Creating Gui/config.mak"
6778 cat > Gui
/config.mak
<< EOF
6779 # -------- Generated by configure -----------
6783 GLIBINC = $_inc_glib
6784 GLIBLIBS = $_ld_glib
6789 _def_gui
='#undef HAVE_NEW_GUI'
6790 _def_gtk2_gui
='#undef HAVE_GTK2_GUI'
6792 # --------------- GUI specific tests end -------------------
6796 #############################################################################
6798 # Checking for CFLAGS
6800 if test "$_profile" != "" ||
test "$_debug" != "" ; then
6801 CFLAGS
="-W -Wall -O2 $_march $_mcpu $_debug $_profile"
6802 if test "$_cc_major" -ge "3" ; then
6803 CFLAGS
=`echo "$CFLAGS" | sed -e 's/\(-Wall\)/\1 -Wno-unused-parameter/'`
6806 elif test -z "$CFLAGS" ; then
6807 CFLAGS
="-O4 $_march $_mcpu $_pipe -ffast-math -fomit-frame-pointer"
6808 # always compile with '-g' if .developer:
6809 if test -f ".developer" ; then
6811 if test "$_crash_debug" = auto
&& not mingw32
; then
6820 echocheck
"automatic gdb attach"
6821 if test "$_crash_debug" = yes ; then
6822 _def_crash_debug
='#define CRASH_DEBUG 1'
6824 _def_crash_debug
='#undef CRASH_DEBUG'
6827 echores
"$_crash_debug"
6830 CFLAGS
="$CFLAGS -mdynamic-no-pic -falign-loops=16 -DSYS_DARWIN"
6831 if [ "$_cc_major" = 3 ] && [ "$_cc_minor" -lt 1 ]; then
6832 CFLAGS
="$CFLAGS -no-cpp-precomp"
6835 # libavcodec (from ffmpeg) requires CONFIG_DARWIN to enable AltiVec on Darwin/MacOSX
6836 test "$_altivec" = yes && CFLAGS
="$CFLAGS -DCONFIG_DARWIN"
6839 # use flag for HPUX missing setenv()
6840 CFLAGS
="$CFLAGS -DHPUX"
6844 CFLAGS
="$CFLAGS -D_REENTRANT"
6846 # FIXME bsd needs this so maybe other OS'es
6847 CFLAGS
="$CFLAGS -D_THREAD_SAFE"
6849 # 64 bit file offsets?
6850 if test "$_largefiles" = yes || freebsd
; then
6851 CFLAGS
="$CFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
6852 if test "$_dvdread" = yes ; then
6853 # dvdread support requires this (for off64_t)
6854 CFLAGS
="$CFLAGS -D_LARGEFILE64_SOURCE"
6858 echocheck
"compiler support for -fno-PIC"
6861 int main(void) { return 0; }
6863 if cc_check
-fno-PIC ; then
6864 CFLAGS
="-fno-PIC $CFLAGS"
6870 echores
"only used for x86"
6873 echocheck
"compiler support for noexecstack"
6875 int main(void) { return 0; }
6877 if cc_check
-Wl,-z,noexecstack
; then
6878 _ld_extra
="-Wl,-z,noexecstack $_ld_extra"
6884 echocheck
"ftello()"
6885 # if we don't have ftello use the osdep/ compatibility module
6888 #include <sys/types.h>
6889 int main (void) { ftello(stdin); return 0; }
6892 cc_check
&& _ftello
=yes
6893 if test "$_ftello" = yes ; then
6894 _def_ftello
='#define HAVE_FTELLO 1'
6896 _def_ftello
='#undef HAVE_FTELLO'
6900 # Determine OS dependent libs
6902 _def_confwin32
='#define WIN32'
6903 #CFLAGS="$CFLAGS -D__CYGWIN__ -D__CYGWIN_USE_BIG_TYPES__"
6904 # stat.st_size with BIG_TYPES is broken (not set) ::atmos
6905 CFLAGS
="$CFLAGS -D__CYGWIN__"
6909 _confwin32
='TARGET_WIN32 = yes'
6911 _confwin32
='TARGET_WIN32 = no'
6914 # Dynamic linking flags
6915 # (FIXME: 'echocheck "dynamic linking"' above and modify here accordingly)
6917 bsd
&& _ld_dl_dynamic
='-rdynamic'
6918 if test "$_real" = yes ||
test "$_xanim" = yes && not win32
&& not qnx
; then
6919 _ld_dl_dynamic
='-rdynamic'
6922 _ld_arch
="$_ld_arch $_ld_pthread $_ld_dl $_ld_dl_dynamic"
6923 bsdos
&& _ld_arch
="$_ld_arch -ldvd"
6925 x86
&& _ld_arch
="$_ld_arch -li386"
6928 _def_debug
='#undef MP_DEBUG'
6929 test "$_debug" != "" && _def_debug
='#define MP_DEBUG 1'
6931 _def_linux
='#undef TARGET_LINUX'
6932 linux
&& _def_linux
='#define TARGET_LINUX 1'
6934 # TODO cleanup the VIDIX stuff here
6935 _def_vidix
='#define CONFIG_VIDIX 1'
6936 test "$_vidix" = no
&& _def_vidix
='#undef CONFIG_VIDIX'
6937 if test "$_vidix" = yes; then
6938 _vosrc
="$_vosrc vo_cvidix.c"
6939 _vomodules
="cvidix $_vomodules"
6941 _novomodules
="cvidix $_novomodules"
6943 if test "$_vidix" = yes && win32
; then
6944 _vosrc
="$_vosrc vo_winvidix.c"
6945 _vomodules
="winvidix $_vomodules"
6946 _ld_win32libs
="-lgdi32 $_ld_win32libs"
6948 _novomodules
="winvidix $_novomodules"
6950 if test "$_vidix" = yes && test "$_x11" = yes; then
6951 _vosrc
="$_vosrc vo_xvidix.c"
6952 _vomodules
="xvidix $_vomodules"
6954 _novomodules
="xvidix $_novomodules"
6956 echo Checking
for VIDIX ...
"$_vidix"
6958 _def_joystick
='#undef HAVE_JOYSTICK'
6959 if test "$_joystick" = yes ; then
6961 # TODO add some check
6962 _def_joystick
='#define HAVE_JOYSTICK 1'
6964 _joystick
="no (unsupported under $system_name)"
6967 echo Checking
for joystick ...
"$_joystick"
6970 if test "$_lirc" = auto
; then
6972 if test -c /dev
/lirc
-o -c /dev
/lirc
/0 ; then
6974 #include <lirc/lirc_client.h>
6975 int main(void) { return 0; }
6977 cc_check
-llirc_client && _lirc
=yes
6980 if test "$_lirc" = yes ; then
6981 _def_lirc
='#define HAVE_LIRC 1'
6982 _ld_lirc
='-llirc_client'
6984 _def_lirc
='#undef HAVE_LIRC'
6989 if test "$_lircc" = auto
; then
6992 #include <lirc/lircc.h>
6993 int main(void) { return 0; }
6995 cc_check
-llircc && _lircc
=yes
6997 if test "$_lircc" = yes ; then
6998 _def_lircc
='#define HAVE_LIRCC 1'
7001 _def_lircc
='#undef HAVE_LIRCC'
7005 #############################################################################
7006 echo "Creating config.mak"
7007 cat > config.mak
<< EOF
7008 # -------- Generated by configure -----------
7011 MAN_LANG = $MAN_LANG
7012 TARGET_OS = $system_name
7014 prefix = \$(DESTDIR)$_prefix
7015 BINDIR = \$(DESTDIR)$_bindir
7016 DATADIR = \$(DESTDIR)$_datadir
7017 MANDIR = \$(DESTDIR)$_mandir
7018 CONFDIR = \$(DESTDIR)$_confdir
7019 LIBDIR = \$(DESTDIR)$_libdir
7020 # FFmpeg uses libdir instead of LIBDIR
7028 # OPTFLAGS = -O4 $_profile $_debug $_march $_mcpu $_pipe -fomit-frame-pointer -ffast-math
7029 EXTRA_INC = $_inc_extra
7030 OPTFLAGS = -I../libvo -I../../libvo $_inc_x11 $CFLAGS \$(EXTRA_INC)
7031 STRIPBINARIES = $_stripbinaries
7033 HELP_FILE = $_mp_help
7036 PRG_MENCODER = $_prg_mencoder
7040 MPLAYER_NETWORK = $_network
7041 STREAMING_LIVE555 = $_live
7042 MPLAYER_NETWORK_LIB = $_ld_live $_ld_vstream $_ld_network
7046 CONFIG_MP3LAME = $_mp3lame
7048 I18NLIBS = $_i18n_libs
7049 MATROSKA = $_matroska_internal
7051 OPENDIVX = $_opendivx
7055 LIBMPEG2 = $_libmpeg2
7056 TREMOR = $_tremor_internal
7057 TREMOR_FLAGS = $_tremor_flags
7060 MUSEPACK = $_musepack
7062 UNRARLIB = $_unrarlib
7063 HAVE_FFPOSTPROCESS = $_def_haveffpostprocess
7068 EXTRA_LIB = $_ld_extra
7069 Z_LIB = $_ld_static $_ld_zlib
7071 WIN32_LIB = $_ld_win32libs
7072 STATIC_LIB = $_ld_static
7073 ENCA_LIB = $_ld_enca
7074 HAVE_PTHREADS = $_pthreads
7080 HAVE_XVMC_ACCEL = $_xvmc
7090 X_LIB = $_ld_gl $_ld_dga $_ld_xv $_ld_xvmc $_ld_vm $_ld_xinerama $_ld_x11 $_ld_sock
7092 MLIB_LIB = $_ld_mlib
7093 MLIB_INC = $_inc_mlib
7094 DXR2_INC = $_inc_dxr2
7100 SVGA_LIB = $_ld_svga
7101 VESA_LIB = $_ld_vesa
7103 CACA_INC = $_inc_caca
7104 CACA_LIB = $_ld_caca
7107 ALSA_LIB = $_ld_alsa
7109 ARTS_LIB = $_ld_arts
7110 ARTS_INC = $_inc_arts
7113 POLYP_LIB = $_ld_polyp
7114 POLYP_INC = $_inc_polyp
7115 JACK_LIB = $_ld_jack
7116 JACK_INC = $_inc_jack
7117 SGIAUDIO_LIB = $_ld_sgiaudio
7119 # input/demuxer/codecs
7120 TERMCAP_LIB = $_ld_termcap
7121 LIRC_LIB = $_ld_lirc
7122 LIRCC_LIB = $_ld_lircc
7123 DVDREAD_LIB = $_ld_dvdread
7128 W32_DEP = $_dep_win32
7129 W32_LIB = $_ld_win32
7130 DS_DEP = $_dep_dshow
7132 AV_DEP = $_dep_libavutil $_dep_libavcodec $_dep_libavformat
7133 AV_LIB = $_ld_libavformat $_ld_libavcodec $_ld_libavutil
7134 CONFIG_LIBAVUTIL = $_libavutil
7135 CONFIG_LIBAVCODEC = $_libavcodec
7136 CONFIG_LIBAVCODECSO = $_libavcodecso
7137 CONFIG_LIBAVFORMAT = $_libavformat
7140 FAME_LIB = $_ld_fame
7141 MP1E_DEP = $_dep_mp1e
7142 MP1E_LIB = $_ld_mp1e
7143 ARCH_LIB = $_ld_arch $_ld_iconv
7145 XVID_INC = $_inc_xvid
7146 XVID_LIB = $_ld_xvid
7148 X264_INC = $_inc_x264
7149 X264_LIB = $_ld_x264
7150 CONFIG_DTS = $_libdts
7151 DTS_INC = $_inc_libdts
7152 DTS_LIB = $_ld_libdts
7153 DECORE_LIB = $_ld_decore $_ld_mp3lame
7154 MENCODER = $_mencoder
7155 ENCORE_LIB = $_ld_encore $_ld_mp3lame
7156 DIRECTFB_INC = $_inc_directfb
7157 DIRECTFB_LIB = $_ld_directfb
7158 CDPARANOIA_INC = $_inc_cdparanoia
7159 CDPARANOIA_LIB = $_ld_cdparanoia
7160 FREETYPE_INC = $_inc_freetype
7161 FREETYPE_LIB = $_ld_freetype
7162 FONTCONFIG_INC = $_inc_fontconfig
7163 FONTCONFIG_LIB = $_ld_fontconfig
7164 FRIBIDI_INC = $_inc_fribidi
7165 FRIBIDI_LIB = $_ld_fribidi
7166 LIBCDIO_INC = $_inc_libcdio
7167 LIBCDIO_LIB = $_ld_libcdio
7168 LIBLZO_LIB= $_ld_liblzo
7170 VORBIS_LIB = $_ld_vorbis $_ld_libdv
7171 SPEEX_LIB = $_ld_speex
7172 THEORA_LIB = $_ld_theora
7173 FAAD_LIB = $_ld_faad
7174 INTERNAL_FAAD = $_faad_internal
7175 SMBSUPPORT_LIB = $_ld_smb
7176 XMMS_PLUGINS = $_xmms
7177 XMMS_LIB = $_xmms_lib
7179 MACOSX_FINDER_SUPPORT = $_macosx_finder_support
7180 MACOSX_BUNDLE = $_macosx_bundle
7181 MACOSX_FRAMEWORKS = $_macosx_frameworks
7182 MACOSX_COREVIDEO = $_macosx_corevideo
7184 TOOLAME_EXTRAFLAGS=$_toolame_extraflags
7185 TOOLAME_LIB=$_toolame_lib
7187 TWOLAME_LIB=$_twolame_lib
7188 MUSEPACK_LIB = $_ld_musepack
7192 AMR_NB_FIXED=$_amr_nb_fixed
7194 `echo $_libavcodecs | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/'`
7197 # --- Some stuff for autoconfigure ----
7202 TARGET_MMX2 = $_mmx2
7203 TARGET_3DNOW = $_3dnow
7204 TARGET_3DNOWEX = $_3dnowex
7206 TARGET_ALTIVEC = $_altivec
7211 GTKLIB = $_ld_static $_ld_gtk
7212 GLIBLIB = $_ld_static $_ld_glib
7213 GTK_LIBS = $_ld_static $_ld_gui
7219 #############################################################################
7220 echo "Creating config.h"
7221 cat > config.h
<< EOF
7222 /* -------- This file has been automatically generated by configure ---------
7223 Note: Any changes in it will be lost when you run configure again. */
7225 /* Protect against multiple inclusion */
7226 #ifndef MPLAYER_CONFIG_H
7227 #define MPLAYER_CONFIG_H 1
7229 /* use GNU internationalization */
7232 /* Runtime CPU detection */
7233 $_def_runtime_cpudetection
7235 /* Dynamic a/v plugins */
7236 $_def_dynamic_plugins
7238 /* "restrict" keyword */
7239 $_def_restrict_keyword
7241 /* __builtin_expect branch prediction hint */
7242 $_def_builtin_expect
7243 #ifdef HAVE_BUILTIN_EXPECT
7244 #define likely(x) __builtin_expect ((x) != 0, 1)
7245 #define unlikely(x) __builtin_expect ((x) != 0, 0)
7247 #define likely(x) (x)
7248 #define unlikely(x) (x)
7251 /* attribute(used) as needed by some compilers */
7252 #if (__GNUC__ * 100 + __GNUC_MINOR__ >= 300)
7253 # define attribute_used __attribute__((used))
7255 # define attribute_used
7258 #define PREFIX "$_prefix"
7263 /* enable/disable SIGHANDLER */
7266 /* enable/disable automatic gdb attach on crash, requires SIGHANDLER */
7269 /* Toggles debugging informations */
7272 /* Toggles colorized output */
7273 //#define MSG_USE_COLORS 1
7275 /* Indicates that libcdio is available for VCD and CD-DA playback */
7278 /* Indicates that Ogle's libdvdread is available for DVD playback */
7281 /* Indicates that dvdread is from libmpdvdkit */
7284 /* Additional options for libmpdvdkit*/
7298 /* Common data directory (for fonts, etc) */
7299 #define MPLAYER_DATADIR "$_datadir"
7300 #define MPLAYER_CONFDIR "$_confdir"
7301 #define MPLAYER_LIBDIR "$_libdir"
7303 /* Define this to compile stream-caching support, it can be enabled via
7304 -cache <kilobytes> */
7305 #define USE_STREAM_CACHE 1
7307 /* Define to include support for XviD/Divx4Linux/OpenDivx */
7310 /* Define to use the new XviD/DivX4Linux library instead of open source OpenDivX */
7311 /* You have to change DECORE_LIBS in config.mak, too! */
7314 /* Define if you are using DivX5Linux Decore library */
7317 /* Define if you are using XviD library */
7323 /* Define if you are using the X.264 library */
7326 /* Define to include support for libdv-0.9.5 */
7329 /* If build mencoder */
7332 /* Indicates if XviD/Divx4linux encore is available
7333 Note: for mencoder */
7336 /* Indicates if libmp3lame is available
7337 Note: for mencoder */
7339 $_def_mp3lame_preset
7340 $_def_mp3lame_preset_medium
7342 /* Define libmp1e for realtime mpeg encoding (for DXR3 and DVB cards) */
7345 /* Define this to enable avg. byte/sec-based AVI sync method by default:
7346 (use -bps or -nobps commandline option for run-time method selection)
7347 -bps gives better sync for vbr mp3 audio, it is now default */
7348 #define AVI_SYNC_BPS 1
7350 /* Undefine this if you do not want to select mono audio (left or right)
7351 with a stereo MPEG layer 2/3 audio stream. The command line option
7352 -stereo has three possible values (0 for stereo, 1 for left-only, 2 for
7353 right-only), with 0 being the default.
7355 #define USE_FAKE_MONO 1
7357 /* Undefine this if your sound card driver has no working select().
7358 If you have kernel Oops, player hangups, or just no audio, you should
7359 try to recompile MPlayer with this option disabled! */
7362 /* define this to use iconv(3) function to codepage conversions */
7365 /* define this to use nl_langinfo function */
7368 /* define this to use RTC (/dev/rtc) for video timers */
7371 /* set up max. outburst. use 65536 for ALSA 0.5, for others 16384 is enough */
7372 #define MAX_OUTBURST 65536
7374 /* set up audio OUTBURST. Do not change this! */
7375 #define OUTBURST 512
7377 /* Define this if your system has the header file for the OSS sound interface */
7380 /* Define this if your system has the header file for the OSS sound interface
7381 * in /usr/include */
7384 /* Define this if your system has the sysinfo header */
7387 /* Define this if your system has ftello() */
7391 /* Need these for FILE and off_t an config.h is usually before other includes*/
7393 #include <sys/types.h>
7394 off_t ftello(FILE *);
7397 /* Define this if your system has the "malloc.h" header file */
7400 /* memalign is mapped to malloc if unsupported */
7402 #ifndef HAVE_MEMALIGN
7403 # define memalign(a,b) malloc(b)
7404 #define MEMALIGN_HACK 1
7407 /* Define this if your system has the "alloca.h" header file */
7410 /* Define this if your system has the "sys/mman.h" header file */
7412 $_def_mman_has_map_failed
7414 /* Define this if you have the elf dynamic linker -ldl library */
7417 /* Define this if you have the kstat kernel statistics library */
7420 /* Define this if you have zlib */
7423 #define CONFIG_ZLIB 1
7426 /* Define this if you have shm support */
7429 /* Define this if your system has scandir & alphasort */
7432 /* Define this if your system has strsep */
7435 /* Define this if your system has strlcpy */
7437 #ifndef HAVE_STRLCPY
7438 unsigned int strlcpy (char *dest, const char *src, unsigned int size);
7441 /* Define this if your system has strlcat */
7443 #ifndef HAVE_STRLCAT
7444 unsigned int strlcat (char *dest, const char *src, unsigned int size);
7447 /* Define this if your system has fseeko */
7450 /* Need these for FILE and off_t an config.h is usually before other includes*/
7452 #include <sys/types.h>
7453 int fseeko(FILE *, off_t, int);
7458 /* Define this if your system has vsscanf */
7461 /* Define this if your system has swab */
7464 /* Define this if your system has no posix select */
7465 $_def_no_posix_select
7467 /* Define this if your system has gettimeofday */
7470 /* Define this if your system has glob */
7473 /* Define this if your system has pthreads */
7476 /* Define this if you enabled thread support for libavcodec */
7479 /* LIRC (remote control, see www.lirc.org) support: */
7483 * LIRCCD (LIRC client daemon)
7484 * See http://www.dolda2000.cjb.net/~fredrik/lirccd/
7488 /* DVD navigation support using libdvdnav */
7490 $_def_dvdnav_version
7492 /* Define this to enable MPEG 1/2 image postprocessing (requires a FAST CPU!) */
7493 #define MPEG12_POSTPROC 1
7495 /* Define this to enable image postprocessing in libavcodec (requires a FAST CPU!) */
7498 /* Define to include support for OpenDivx postprocessing */
7499 $_def_odivx_postprocess
7501 /* Win32 DLL support */
7503 #define WIN32_PATH "$_win32libdir"
7505 /* DirectShow support */
7508 /* Mac OS X specific features */
7510 $_def_macosx_finder_support
7512 $_def_macosx_corevideo
7514 /* Build our Win32-loader */
7517 /* ffmpeg's libavcodec support (requires libavcodec source) */
7521 /* ffmpeg's libavformat support (requires libavformat source) */
7523 $_def_libavformat_win32
7525 /* Use libavcodec's decoders */
7526 #define CONFIG_DECODERS 1
7527 /* Use libavcodec's encoders */
7528 #define CONFIG_ENCODERS 1
7530 /* Use libavformat's demuxers */
7531 #define CONFIG_DEMUXERS 1
7532 /* Use libavformat's muxers */
7533 #define CONFIG_MUXERS 1
7535 #define CONFIG_MPEGAUDIO_HP 1
7537 #define CONFIG_GPL 1
7539 /* Use amr codecs from libavcodec (requires amr sources) */
7544 /* Use specific codecs from libavcodec */
7545 `echo $_libavcodecs | tr '[a-z] ' '[A-Z]\n' | sed 's/^/#define CONFIG_/;s/$/ 1/'`
7547 /* Use codec libs included in mplayer CVS / source dist: */
7553 /* Use libfame encoder filter */
7556 /* XAnim DLL support */
7558 /* Default search path */
7561 /* RealPlayer DLL support */
7563 /* Default search path */
7566 /* LIVE555 Streaming Media library support */
7569 /* Use 3dnow/mmxext/sse/mmx optimized fast memcpy() [maybe buggy... signal 4]*/
7572 /* Use unrarlib for Vobsubs */
7575 /* gui support, please do not edit this option */
7579 /* Audio output drivers */
7581 $_def_ossaudio_devdsp
7582 $_def_ossaudio_devmixer
7591 $_def_sys_asoundlib_h
7592 $_def_alsa_asoundlib_h
7598 /* Enable fast OSD/SUB renderer (looks ugly, but uses less CPU power) */
7600 #undef FAST_OSD_TABLE
7602 /* Enable TV Interface support */
7605 /* Enable EDL support */
7608 /* Enable Video 4 Linux TV interface support */
7611 /* Enable Video 4 Linux 2 TV interface support */
7614 /* Enable *BSD BrookTree TV interface support */
7617 /* Define if your processor stores words with the most significant
7618 byte first (like Motorola and SPARC, unlike Intel and VAX). */
7623 /* For the PPC. G5 has the dcbzl when in 64bit mode but G4s and earlier do not
7624 have the instruction. */
7627 /* libmpeg2 wants ARCH_PPC and the rest of mplayer use ARCH_POWERPC,
7628 * define ARCH_PPC if ARCH_POWERPC is set to cope with that.
7634 /* the same issue as with ARCH_POWERPC but with ffmpeg/libavcodec */
7639 /* only gcc3 can compile mvi instructions */
7640 $_def_gcc_mvi_support
7642 /* Define this for Cygwin build for win32 */
7645 /* Define this to any prefered value from 386 up to infinity with step 100 */
7646 #define __CPU__ $iproc
7655 #define DEFAULT_CDROM_DEVICE "/vol/dev/aliases/cdrom0"
7656 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
7658 #define DEFAULT_CDROM_DEVICE "/dev/cdrom"
7659 #define DEFAULT_DVD_DEVICE "/dev/dvd"
7660 #elif defined(WIN32)
7661 #define DEFAULT_CDROM_DEVICE "D:"
7662 #define DEFAULT_DVD_DEVICE "D:"
7663 #elif defined(SYS_DARWIN)
7664 #define DEFAULT_CDROM_DEVICE "/dev/disk1"
7665 #define DEFAULT_DVD_DEVICE "/dev/rdiskN"
7666 #elif defined(__OpenBSD__)
7667 #define DEFAULT_CDROM_DEVICE "/dev/rcd0a"
7668 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
7669 #elif defined(__FreeBSD__)
7670 #define DEFAULT_CDROM_DEVICE "/dev/acd0"
7671 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
7673 #define DEFAULT_CDROM_DEVICE "/dev/cdrom"
7674 #define DEFAULT_DVD_DEVICE "/dev/dvd"
7678 /*----------------------------------------------------------------------------
7680 ** NOTE: Instead of modifying these definitions here, use the
7681 ** --enable/--disable options of the ./configure script!
7682 ** See ./configure --help for details.
7684 *---------------------------------------------------------------------------*/
7686 /* C99 lrintf function available */
7689 /* round function is available */
7692 /* yes, we have inttypes.h */
7693 #define HAVE_INTTYPES_H 1
7695 /* int_fastXY_t emulation */
7698 /* nanosleep support */
7704 /* termcap flag for getch2.c */
7707 /* termios flag for getch2.c */
7712 /* enable PNG support */
7715 /* enable JPEG support */
7718 /* enable PNM support */
7721 /* enable md5sum support */
7724 /* enable GIF support */
7729 /* enable FreeType support */
7732 /* enable Fontconfig support */
7735 /* enable FriBiDi usage */
7738 /* enable ENCA usage */
7741 /* liblzo support */
7744 /* libmad support */
7747 /* enable OggVorbis support */
7750 /* enable Tremor as vorbis decoder */
7753 /* enable Speex support */
7756 /* enable musepack support */
7759 /* enable OggTheora support */
7762 /* enable Matroska support */
7765 /* enable FAAD (AAC) support */
7769 /* enable FAAC (AAC encoder) support */
7772 /* enable LADSPA plugin support */
7775 /* enable network */
7778 /* enable ftp support */
7781 /* enable vstream support */
7784 /* enable winsock2 instead of Unix functions*/
7787 /* define this to use inet_aton() instead of inet_pton() */
7790 /* enables / disables cdparanoia support */
7793 /* enables / disables VIDIX usage */
7796 /* enables / disables new input joystick support */
7799 /* enables / disables QTX codecs */
7802 /* enables / disables osd menu */
7805 /* enables / disables subtitles sorting */
7808 /* XMMS input plugin support */
7810 #define XMMS_INPUT_PLUGIN_DIR "$_xmmsplugindir"
7812 /* enables inet6 support */
7815 /* do we have gethostbyname2? */
7816 $_def_gethostbyname2
7818 /* Extension defines */
7819 $_def_3dnow // only define if you have 3DNOW (AMD k6-2, AMD Athlon, iDT WinChip, etc.)
7820 $_def_3dnowex // only define if you have 3DNOWEX (AMD Athlon, etc.)
7821 $_def_mmx // only define if you have MMX (newer x86 chips, not P54C/PPro)
7822 $_def_mmx2 // only define if you have MMX2 (Athlon/PIII/4/CelII)
7823 $_def_sse // only define if you have SSE (Intel Pentium III/4 or Celeron II)
7824 $_def_sse2 // only define if you have SSE2 (Intel Pentium 4)
7825 $_def_altivec // only define if you have Altivec (G4)
7827 $_def_altivec_h // enables usage of altivec.h
7830 $_def_mlib // Sun mediaLib, available only on solaris
7831 $_def_vis // only define if you have VIS ( ultrasparc )
7833 /* libmpeg2 uses a different feature test macro for mediaLib */
7835 #define LIBMPEG2_MLIB 1
7839 #define SCREEN_SIZE_X 1
7840 #define SCREEN_SIZE_Y 1
7852 /* defined for SDLlib with keyrepeat bugs (before 1.2.1) */
7861 $_def_directfb_version
7884 #if defined(HAVE_GL) || defined(HAVE_X11) || defined(HAVE_XV)
7885 #define X11_FULLSCREEN 1
7888 #endif /* MPLAYER_CONFIG_H */
7891 #############################################################################
7893 echo "Creating libvo/config.mak"
7894 _voobj
=`echo $_vosrc | sed -e 's/\.c/\.o/g;s/\.m/\.o/g'`
7895 cat > libvo
/config.mak
<< EOF
7896 include ../config.mak
7897 OPTIONAL_SRCS = $_vosrc
7898 OPTIONAL_OBJS = $_voobj
7901 #############################################################################
7903 echo "Creating libao2/config.mak"
7904 _aoobj
=`echo $_aosrc | sed -e 's/\.c/\.o/g'`
7905 cat > libao
2/config.mak
<< EOF
7906 include ../config.mak
7907 OPTIONAL_SRCS = $_aosrc
7908 OPTIONAL_OBJS = $_aoobj
7911 #############################################################################
7913 echo "Creating libaf/config.mak"
7914 _afobj
=`echo $_afsrc | sed -e 's/\.c/\.o/g'`
7915 cat > libaf
/config.mak
<< EOF
7916 include ../config.mak
7917 OPTIONAL_SRCS = $_afsrc
7918 OPTIONAL_OBJS = $_afobj
7921 #############################################################################
7925 Config files successfully generated by ./configure !
7927 Install prefix: $_prefix
7928 Data directory: $_datadir
7929 Config direct.: $_confdir
7931 Byte order: $_byte_order
7932 Optimizing for: $_optimizing
7935 Messages/GUI: $_language
7938 echo -n " Manual pages: $MAN_LANG"
7939 test "$LANGUAGES" = en
&& echo -n " (no localization selected, use --language=all)"
7944 Enabled optional drivers:
7945 Input: $_inputmodules
7946 Codecs: $_codecmodules
7947 Audio output: $_aomodules
7948 Video output: $_vomodules
7949 Audio filters: $_afmodules
7950 Disabled optional drivers:
7951 Input: $_noinputmodules
7952 Codecs: $_nocodecmodules
7953 Audio output: $_noaomodules
7954 Video output: $_novomodules
7955 Audio filters: $_noafmodules
7957 'config.h' and 'config.mak' contain your configuration options.
7958 Note: If you alter theses files (for instance CFLAGS) MPlayer may no longer
7959 compile *** DO NOT REPORT BUGS if you tweak these files ***
7961 'make' will now compile MPlayer and 'make install' will install it.
7962 Note: On non-Linux systems you might need to use 'gmake' instead of 'make'.
7967 if test "$_mtrr" = yes ; then
7968 echo "Please check mtrr settings at /proc/mtrr (see DOCS/HTML/$_doc_lang/video.html#mtrr)"
7972 if test "$_sdl" = "outdated" ; then
7974 You have an outdated version of libSDL installed (older than v1.1.7) and SDL
7975 support has therefore been disabled.
7977 Please upgrade to a more recent version (version 1.1.8 and above are known to
7978 work). You may get this library from: http://www.libsdl.org
7980 You need to rerun ./configure and recompile after updating SDL. If you are
7981 only interested in the libSDL audio drivers, then an older version might work.
7983 Use --enable-sdl to force usage of libSDL.
7989 if test "$_win32" = no
; then
7990 if test "$_win32libdir" ; then
7991 echo "Failed to find a Win32 codecs dir at $_win32libdir!"
7993 echo "Failed to find a Win32 codecs directory! (default: /usr/local/lib/codecs/)"
7996 Create it and copy the DLL files there! You can download the codecs from our
7997 homepage at http://www.mplayerhq.hu/MPlayer/releases/codecs/
8003 NOTE: Win32 codec DLLs are not supported on your CPU ($host_arch) or your
8004 operating system ($system_name). You may encounter a few files that cannot
8005 be played due to missing open source video/audio codec support.
8013 Check $TMPLOG if you wonder why an autodetection failed (check whether
8014 the development headers/packages are installed).
8015 Do not report compilation errors if you used any of the --enable-* options
8016 (except --enable-gui and maybe --enable-debug).
8018 If you suspect a bug, please read DOCS/HTML/$_doc_lang/bugreports.html.
8022 if test "$_vidix" = no
; then
8024 You've disabled VIDIX. Although it would be better to PORT it instead.
8025 Have a look at the documentation for supported cards!
8030 if test "$_warn_CFLAGS" = yes; then
8033 MPlayer compilation will use the CFLAGS set by you, but:
8035 *** *** DO NOT REPORT BUGS IF IT DOES NOT COMPILE/WORK! *** ***
8037 It is strongly recommended to let MPlayer choose the correct CFLAGS!
8038 To do so, execute 'CFLAGS= ./configure <options>'
8044 rm -f "$TMPO" "$TMPC" "$TMPS" "$TMPCPP"