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
917 elif test "$pmodel" -ge 7; then
923 *) proc
=i686 iproc
=i686
;;
928 3) proc
=i386 iproc
=386 ;;
929 4) proc
=i486 iproc
=486 ;;
930 *) proc
=i586 iproc
=586 ;;
934 proc
=i586 iproc
=586 ;;
937 # check that gcc supports our CPU, if not, fall back to earlier ones
938 # LGB: check -mcpu and -march swithing step by step with enabling
939 # to fall back till 386.
941 # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
943 if [ "$cc_vendor" = "gnu" ] && ([ "$_cc_major" -gt 3 ] ||
( [ "$_cc_major" = 3 ] && [ "$_cc_minor" -ge 4 ])) ; then
949 echocheck
"GCC & CPU optimization abilities"
951 int main(void) { return 0; }
953 if test "$_runtime_cpudetection" = no
; then
954 if test "$proc" = "k8" -o "$proc" = "opteron" -o "$proc" = "athlon64" -o "$proc" = "athlon-fx" ; then
955 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon-xp
957 if test "$proc" = "athlon-xp" ||
test "$proc" = "athlon-4" ||
test "$proc" = "athlon-tbird"; then
958 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon
960 if test "$proc" = "k6-3" ||
test "$proc" = "k6-2"; then
961 cc_check
-march=$proc $cpuopt=$proc || proc
=k6
963 if test "$proc" = "k6"; then
964 if not cc_check
-march=$proc $cpuopt=$proc; then
965 if cc_check
-march=i586
$cpuopt=i686
; then
972 if test "$proc" = "pentium4" ||
test "$proc" = "pentium-m" ||
test "$proc" = "pentium3" ||
test "$proc" = "pentium2" ||
test "$proc" = "athlon" ||
test "$proc" = "c3-2"; then
973 cc_check
-march=$proc $cpuopt=$proc || proc
=i686
975 if test "$proc" = "i686" ||
test "$proc" = "pentium-mmx" ||
test "$proc" = "winchip-c6" ||
test "$proc" = "winchip2"; then
976 cc_check
-march=$proc $cpuopt=$proc || proc
=i586
978 if test "$proc" = "i586" ||
test "$proc" = "c3" ||
test "$proc" = "c3-2"; then
979 cc_check
-march=$proc $cpuopt=$proc || proc
=i486
981 if test "$proc" = "i486" ; then
982 cc_check
-march=$proc $cpuopt=$proc || proc
=i386
984 if test "$proc" = "i386" ; then
985 cc_check
-march=$proc $cpuopt=$proc || proc
=error
987 if test "$proc" = "error" ; then
988 echores
"CPU optimization disabled. CPU not recognized or your compiler is too old."
992 elif test "$proc" = "i586-i686"; then
997 _march
="-march=$proc"
998 _mcpu
="$cpuopt=$proc"
1001 else # if test "$_runtime_cpudetection" = no
1002 # i686 is probably the most common CPU - optimize for it
1003 _mcpu
="$cpuopt=i686"
1004 # at least i486 required, for bswap instruction
1005 _march
="-march=i486"
1006 cc_check
$_mcpu || _mcpu
=""
1007 cc_check
$_march $_mcpu || _march
=""
1010 ## Gabucino : --target takes effect here (hopefully...) by overwriting
1011 ## autodetected mcpu/march parameters
1012 if test "$_target" ; then
1013 # TODO: it may be a good idea to check GCC and fall back in all cases
1014 if test "$host_arch" = "i586-i686"; then
1015 _march
="-march=i586"
1016 _mcpu
="$cpuopt=i686"
1018 _march
="-march=$host_arch"
1019 _mcpu
="$cpuopt=$host_arch"
1027 i586|k5|k6|k6-2|k6-3|pentium|pentium-mmx
) iproc
=586 ;;
1028 i686|athlon
*|pentium
*) iproc
=686 ;;
1037 _def_arch
='#define ARCH_IA64 1'
1038 _target_arch
='TARGET_ARCH_IA64 = yes'
1047 _def_arch
='#define ARCH_X86_64 1'
1048 _target_arch
='TARGET_ARCH_X86_64 = yes'
1051 # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
1052 if test "$cc_vendor" = "gnu" && test "$_cc_major" -gt 3 -o "$_cc_major" -eq 3 -a "$_cc_minor" -ge 4 ; then
1061 # 64-bit prescotts exist, but as far as GCC is concerned they have the
1062 # same capabilities as a nocona.
1068 echocheck
"GCC & CPU optimization abilities"
1070 int main(void) { return 0; }
1072 # This is a stripped-down version of the i386 fallback.
1073 if test "$_runtime_cpudetection" = no
; then
1074 # --- AMD processors ---
1075 if test "$proc" = "k8" -o "$proc" = "opteron" -o "$proc" = "athlon64" -o "$proc" = "athlon-fx" ; then
1076 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon-xp
1078 # This will fail if gcc version < 3.3, which is ok because earlier
1079 # versions don't really support 64-bit on amd64.
1080 # Is this a valid assumption? -Corey
1081 if test "$proc" = "athlon-xp" ||
test "$proc" = "athlon-4" ; then
1082 cc_check
-march=$proc $cpuopt=$proc || proc
=error
1084 # --- Intel processors ---
1085 if test "$proc" = "nocona" ||
test "$proc" = "prescott" ; then
1086 cc_check
-march=$proc $cpuopt=$proc || proc
=pentium4
1088 if test "$proc" = "pentium4" ||
test "$proc" = "pentium4m" ; then
1089 cc_check
-march=$proc $cpuopt=$proc || proc
=error
1092 _march
="-march=$proc"
1093 _mcpu
="$cpuopt=$proc"
1094 if test "$proc" = "error" ; then
1095 echores
"CPU optimization disabled. CPU not recognized or your compiler is too old."
1112 _def_arch
='#define ARCH_SPARC 1'
1113 _target_arch
='TARGET_ARCH_SPARC = yes'
1116 echocheck
"CPU type"
1118 case "`echo $karch`" in
1123 sun4u
) proc
=v9 _vis
='yes' _def_vis
='#define HAVE_VIS = yes' ;;
1136 _def_arch
='#define ARCH_SPARC 1'
1137 _target_arch
='TARGET_ARCH_SPARC = yes'
1139 _def_vis
='#define HAVE_VIS = yes'
1147 arm|armv4l|armv5tel
)
1148 _def_arch
='#define ARCH_ARMV4L 1'
1149 _target_arch
='TARGET_ARCH_ARMV4L = yes'
1158 _def_arch
='#define ARCH_POWERPC 1'
1159 _def_dcbzl
='#define NO_DCBZL 1'
1160 _target_arch
='TARGET_ARCH_POWERPC = yes'
1168 echocheck
"CPU type"
1169 case $system_name in
1171 proc
=`$_cpuinfo | grep 'cpu' | cut -d ':' -f 2 | cut -d ',' -f 1 | cut -b 2- | _head 1`
1172 if test -n "`$_cpuinfo | grep altivec`"; then
1177 proc
=`$_cpuinfo | grep "Processor type" | cut -f 3 -d ' ' | sed 's/ppc//'`
1178 if [ `sysctl -n hw.vectorunit` -eq 1 -o \
1179 "`sysctl -n hw.optional.altivec 2>/dev/null`" -eq 1 ]; then
1184 # only gcc 3.4 works reliably with AltiVec code under NetBSD
1186 2*|
3.0*|
3.1*|
3.2*|
3.3*)
1189 if [ `sysctl -n machdep.altivec` -eq 1 ]; then
1196 if test "$_altivec" = yes; then
1197 echores
"$proc altivec"
1202 echocheck
"GCC & CPU optimization abilities"
1204 if test -n "$proc"; then
1206 601) _march
='-mcpu=601' _mcpu
='-mtune=601' ;;
1207 603) _march
='-mcpu=603' _mcpu
='-mtune=603' ;;
1208 603e|
603ev
) _march
='-mcpu=603e' _mcpu
='-mtune=603e' ;;
1209 604|
604e|
604r|
604ev
) _march
='-mcpu=604' _mcpu
='-mtune=604' ;;
1210 740|
740/750|
745/755) _march
='-mcpu=740' _mcpu
='-mtune=740' ;;
1211 750|
750CX
) _march
='-mcpu=750' _mcpu
='-mtune=750' ;;
1214 # gcc 3.1(.1) and up supports 7400 and 7450
1215 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "1" ||
test "$_cc_major" -ge "4"; then
1217 7400*|
7410*) _march
='-mcpu=7400' _mcpu
='-mtune=7400' ;;
1218 7450*|
7455*) _march
='-mcpu=7450' _mcpu
='-mtune=7450' ;;
1222 # gcc 3.2 and up supports 970
1223 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "3" ||
test "$_cc_major" -ge "4"; then
1225 970*) _march
='-mcpu=970' _mcpu
='-mtune=970'
1226 _def_dcbzl
='#undef NO_DCBZL' ;;
1232 if test -n "$_mcpu"; then
1233 _optimizing
=`echo $_mcpu | cut -c 8-`
1234 echores
"$_optimizing"
1242 _def_arch
='#define ARCH_ALPHA 1'
1243 _target_arch
='TARGET_ARCH_ALPHA = yes'
1247 echocheck
"CPU type"
1250 unsigned long ver, mask;
1251 asm ("implver %0" : "=r" (ver));
1252 asm ("amask %1, %0" : "=r" (mask) : "r" (-1));
1253 printf("%ld-%x\n", ver, ~mask);
1257 $_cc -o "$TMPO" "$TMPC"
1260 0-0) proc
="ev4"; cpu_understands_mvi
="0";;
1261 1-0) proc
="ev5"; cpu_understands_mvi
="0";;
1262 1-1) proc
="ev56"; cpu_understands_mvi
="0";;
1263 1-101) proc
="pca56"; cpu_understands_mvi
="1";;
1264 2-303) proc
="ev6"; cpu_understands_mvi
="1";;
1265 2-307) proc
="ev67"; cpu_understands_mvi
="1";;
1266 2-1307) proc
="ev68"; cpu_understands_mvi
="1";;
1270 echocheck
"GCC & CPU optimization abilities"
1271 if test "$proc" = "ev68" ; then
1272 cc_check
-mcpu=$proc || proc
=ev67
1274 if test "$proc" = "ev67" ; then
1275 cc_check
-mcpu=$proc || proc
=ev6
1282 echocheck
"MVI instruction support in GCC"
1283 if test "$_cc_major" -ge "3" && test "$cpu_understands_mvi" = "1" ; then
1284 _def_gcc_mvi_support
="#define CAN_COMPILE_ALPHA_MVI 1"
1287 _def_gcc_mvi_support
="#undef CAN_COMPILE_ALPHA_MVI"
1288 echores
"no, GCC = `$_cc -dumpversion 2>&1` (must be >= 3), CPU = $proc (must be pca56 or later)"
1293 _def_arch
='#define ARCH_SGI_MIPS 1'
1294 _target_arch
='TARGET_ARCH_SGI_MIPS = yes'
1302 echocheck
"CPU type"
1303 proc
=`hinv -c processor | grep CPU | cut -d " " -f3`
1304 case "`echo $proc`" in
1305 R3000
) _march
='-mips1' _mcpu
='-mtune=r2000' ;;
1306 R4000
) _march
='-mips3' _mcpu
='-mtune=r4000' ;;
1307 R4400
) _march
='-mips3' _mcpu
='-mtune=r4400' ;;
1308 R4600
) _march
='-mips3' _mcpu
='-mtune=r4600' ;;
1309 R5000
) _march
='-mips4' _mcpu
='-mtune=r5000' ;;
1310 R8000|R10000|R12000|R14000|R16000
) _march
='-mips4' _mcpu
='-mtune=r8000' ;;
1318 _def_arch
='#define ARCH_PA_RISC 1'
1319 _target_arch
='TARGET_ARCH_PA_RISC = yes'
1328 _def_arch
='#define ARCH_S390 1'
1329 _target_arch
='TARGET_ARCH_S390 = yes'
1338 _def_arch
='#define ARCH_S390X 1'
1339 _target_arch
='TARGET_ARCH_S390X = yes'
1348 _def_arch
='#define ARCH_VAX 1'
1349 _target_arch
='TARGET_ARCH_VAX = yes'
1358 echo "The architecture of your CPU ($host_arch) is not supported by this configure script"
1359 echo "It seems nobody has ported MPlayer to your OS or CPU type yet."
1360 die
"unsupported architecture $host_arch"
1362 esac # case "$host_arch" in
1364 if test "$_runtime_cpudetection" = yes ; then
1379 if x86
&& test "$_runtime_cpudetection" = no
; then
1381 if test "$1" = yes ; then
1382 echocheck
"kernel support of $2"
1385 void catch() { exit(1); }
1387 signal(SIGILL, catch);
1388 __asm__ __volatile__ ("$3":::"memory");return(0);
1392 if cc_check
&& tmp_run
; then
1394 _optimizing
="$_optimizing $2"
1398 echo "It seems that your kernel does not correctly support $2."
1399 echo "To use $2 extensions in MPlayer, you have to upgrade/recompile your kernel!"
1406 extcheck
$_mmx "mmx" "emms" || _mmx
=no
1407 extcheck
$_mmx2 "mmx2" "sfence" || _mmx2
=no
1408 extcheck
$_3dnow "3dnow" "femms" || _3dnow
=no
1409 extcheck
$_3dnowex "3dnowex" "pswapd %%mm0, %%mm0" || _3dnowex
=no
1410 extcheck
$_sse "sse" "xorps %%xmm0, %%xmm0" || _sse
=no _gcc3_ext
="$_gcc3_ext -mno-sse"
1411 extcheck
$_sse2 "sse2" "xorpd %%xmm0, %%xmm0" || _sse2
=no _gcc3_ext
="$_gcc3_ext -mno-sse2"
1412 echocheck
"mtrr support"
1415 if test "$_mtrr" = yes ; then
1416 _optimizing
="$_optimizing mtrr"
1419 if test "$_gcc3_ext" != ""; then
1420 # if we had to disable sse/sse2 because the active kernel does not
1421 # support this instruction set extension, we also have to tell
1422 # gcc3 to not generate sse/sse2 instructions for normal C code
1424 int main(void) { return 0; }
1426 cc_check
$_march $_gcc3_ext && _march
="$_march $_gcc3_ext"
1431 echocheck
"assembler support of -pipe option"
1433 int main(void) { return 0; }
1435 cc_check
-pipe && _pipe
="-pipe" && echores
"yes" || echores
"no"
1437 _prefix
="/usr/local"
1438 _xvmclib
="XvMCNVIDIA"
1440 # GOTCHA: the variables below defines the default behavior for autodetection
1441 # and have - unless stated otherwise - at least 2 states : yes no
1442 # If autodetection is available then the third state is: auto
1447 _libavcodecs
=`grep 'register_avcodec(&[a-z]' libavcodec/allcodecs.c | sed 's/.*&\(.*\)).*/\1/'`
1454 _dga
=auto
# 1 2 no auto
1456 _xvmc
=no
#auto when complete
1491 _tremor_internal
=yes
1500 _matroska_internal
=yes
1507 # dvdnav disabled, it does not work
1572 _macosx_finder_support
=no
1575 _freetypeconfig
='freetype-config'
1577 _fribidiconfig
='fribidi-config'
1580 _gethostbyname2
=auto
1586 case "$ac_option" in
1592 --enable-gcc-checking) ;;
1593 --disable-gcc-checking) ;;
1594 --enable-static*) ;;
1595 --disable-static*) ;;
1596 --with-extraincdir=*) ;;
1597 --with-extralibdir=*) ;;
1598 --enable-runtime-cpudetection) ;;
1599 --disable-runtime-cpudetection) ;;
1600 --enable-cross-compile) ;;
1601 --disable-cross-compile) ;;
1602 --install-path=*) ;;
1603 --with-install=*) ;;
1606 --enable-mencoder) _mencoder
=yes ;;
1607 --disable-mencoder) _mencoder
=no
;;
1608 --enable-i18n) _i18n
=yes ;;
1609 --disable-i18n) _i18n
=no
;;
1610 --enable-dynamic-plugins) _dynamic_plugins
=yes ;;
1611 --disable-dynamic-plugins) _dynamic_plugins
=no
;;
1612 --enable-x11) _x11
=yes ;;
1613 --disable-x11) _x11
=no
;;
1614 --enable-xv) _xv
=yes ;;
1615 --disable-xv) _xv
=no
;;
1616 --enable-xvmc) _xvmc
=yes ;;
1617 --disable-xvmc) _xvmc
=no
;;
1618 --enable-sdl) _sdl
=yes ;;
1619 --disable-sdl) _sdl
=no
;;
1620 --enable-directx) _directx
=yes ;;
1621 --disable-directx) _directx
=no
;;
1622 --enable-win32waveout) _win32waveout
=yes ;;
1623 --disable-win32waveout) _win32waveout
=no
;;
1624 --enable-nas) _nas
=yes ;;
1625 --disable-nas) _nas
=no
;;
1626 --enable-png) _png
=yes ;;
1627 --disable-png) _png
=no
;;
1628 --enable-jpeg) _jpg
=yes ;;
1629 --disable-jpeg) _jpg
=no
;;
1630 --enable-pnm) _pnm
=yes ;;
1631 --disable-pnm) _pnm
=no
;;
1632 --enable-md5sum) _md5sum
=yes ;;
1633 --disable-md5sum) _md5sum
=no
;;
1634 --enable-gif) _gif
=yes ;;
1635 --disable-gif) _gif
=no
;;
1636 --enable-gl) _gl
=yes ;;
1637 --disable-gl) _gl
=no
;;
1638 --enable-ggi) _ggi
=yes ;;
1639 --disable-ggi) _ggi
=no
;;
1640 --enable-ggiwmh) _ggiwmh
=yes ;;
1641 --disable-ggiwmh) _ggiwmh
=no
;;
1642 --enable-aa) _aa
=yes ;;
1643 --disable-aa) _aa
=no
;;
1644 --enable-caca) _caca
=yes ;;
1645 --disable-caca) _caca
=no
;;
1646 --enable-svga) _svga
=yes ;;
1647 --disable-svga) _svga
=no
;;
1648 --enable-vesa) _vesa
=yes ;;
1649 --disable-vesa) _vesa
=no
;;
1650 --enable-fbdev) _fbdev
=yes ;;
1651 --disable-fbdev) _fbdev
=no
;;
1652 --enable-dvb) _dvb
=yes ;;
1653 --disable-dvb) _dvb
=no
;;
1654 --enable-dvbhead) _dvbhead
=yes ;;
1655 --disable-dvbhead) _dvbhead
=no
;;
1656 --enable-dxr2) _dxr2
=yes ;;
1657 --disable-dxr2) _dxr2
=no
;;
1658 --enable-dxr3) _dxr3
=yes ;;
1659 --disable-dxr3) _dxr3
=no
;;
1660 --enable-iconv) _iconv
=yes ;;
1661 --disable-iconv) _iconv
=no
;;
1662 --enable-langinfo) _langinfo
=yes ;;
1663 --disable-langinfo) _langinfo
=no
;;
1664 --enable-rtc) _rtc
=yes ;;
1665 --disable-rtc) _rtc
=no
;;
1666 --enable-mp1e) _mp1e
=yes ;;
1667 --disable-mp1e) _mp1e
=no
;;
1668 --enable-libdv) _libdv
=yes ;;
1669 --disable-libdv) _libdv
=no
;;
1670 --enable-ossaudio) _ossaudio
=yes ;;
1671 --disable-ossaudio) _ossaudio
=no
;;
1672 --enable-arts) _arts
=yes ;;
1673 --disable-arts) _arts
=no
;;
1674 --enable-esd) _esd
=yes ;;
1675 --disable-esd) _esd
=no
;;
1676 --enable-polyp) _polyp
=yes ;;
1677 --disable-polyp) _polyp
=no
;;
1678 --enable-jack) _jack
=yes ;;
1679 --disable-jack) _jack
=no
;;
1680 --enable-mad) _mad
=yes ;;
1681 --disable-mad) _mad
=no
;;
1682 --disable-toolame) _toolame
=no
;;
1683 --disable-twolame) _twolame
=no
;;
1684 --enable-libcdio) _libcdio
=yes ;;
1685 --disable-libcdio) _libcdio
=no
;;
1686 --enable-liblzo) _liblzo
=yes ;;
1687 --disable-liblzo) _liblzo
=no
;;
1688 --enable-vorbis) _vorbis
=yes ;;
1689 --disable-vorbis) _vorbis
=no
;;
1690 --enable-speex) _speex
=yes ;;
1691 --disable-speex) _speex
=no
;;
1692 --enable-internal-tremor) _tremor_internal
=yes ;;
1693 --disable-internal-tremor) _tremor_internal
=no
;;
1694 --enable-tremor-low) _tremor_low
=yes ;;
1695 --disable-tremor-low) _tremor_low
=no
;;
1696 --enable-external-tremor) _tremor
=yes ;;
1697 --disable-external-tremor) _tremor
=no
;;
1698 --enable-theora) _theora
=yes ;;
1699 --disable-theora) _theora
=no
;;
1700 --enable-mp3lib) _mp3lib
=yes ;;
1701 --disable-mp3lib) _mp3lib
=no
;;
1702 --enable-liba52) _liba52
=yes ;;
1703 --disable-liba52) _liba52
=no
;;
1704 --enable-libdts) _libdts
=yes ;;
1705 --disable-libdts) _libdts
=no
;;
1706 --enable-libmpeg2) _libmpeg2
=yes ;;
1707 --disable-libmpeg2) _libmpeg2
=no
;;
1708 --enable-musepack) _musepack
=yes ;;
1709 --disable-musepack) _musepack
=no
;;
1710 --enable-internal-matroska) _matroska_internal
=yes ;;
1711 --disable-internal-matroska) _matroska_internal
=no
;;
1712 --enable-internal-faad) _faad_internal
=yes _faad_external
=no
;;
1713 --disable-internal-faad) _faad_internal
=no
;;
1714 --enable-external-faad) _faad_external
=yes _faad_internal
=no
;;
1715 --disable-external-faad) _faad_external
=no
;;
1716 --enable-faac) _faac
=yes ;;
1717 --disable-faac) _faac
=no
;;
1718 --enable-ladspa) _ladspa
=yes ;;
1719 --disable-ladspa) _ladspa
=no
;;
1720 --enable-xmms) _xmms
=yes ;;
1721 --disable-xmms) _xmms
=no
;;
1722 --enable-dvdread) _dvdread
=yes ;;
1723 --disable-dvdread) _dvdread
=no
;;
1724 --enable-mpdvdkit) _dvdkit
=yes ;;
1725 --disable-mpdvdkit) _dvdkit
=no
;;
1726 # dvdnav disabled, it does not work
1727 # --enable-dvdnav) _dvdnav=yes ;;
1728 # --disable-dvdnav) _dvdnav=no ;;
1729 --enable-xanim) _xanim
=yes ;;
1730 --disable-xanim) _xanim
=no
;;
1731 --enable-real) _real
=yes ;;
1732 --disable-real) _real
=no
;;
1733 --enable-live) _live
=yes ;;
1734 --disable-live) _live
=no
;;
1735 --enable-xinerama) _xinerama
=yes ;;
1736 --disable-xinerama) _xinerama
=no
;;
1737 --enable-mga) _mga
=yes ;;
1738 --disable-mga) _mga
=no
;;
1739 --enable-xmga) _xmga
=yes ;;
1740 --disable-xmga) _xmga
=no
;;
1741 --enable-vm) _vm
=yes ;;
1742 --disable-vm) _vm
=no
;;
1743 --enable-xf86keysym) _xf86keysym
=yes ;;
1744 --disable-xf86keysym) _xf86keysym
=no
;;
1745 --enable-mlib) _mlib
=yes ;;
1746 --disable-mlib) _mlib
=no
;;
1747 --enable-sunaudio) _sunaudio
=yes ;;
1748 --disable-sunaudio) _sunaudio
=no
;;
1749 --enable-sgiaudio) _sgiaudio
=yes ;;
1750 --disable-sgiaudio) _sgiaudio
=no
;;
1751 --enable-alsa) _alsa
=yes ;;
1752 --disable-alsa) _alsa
=no
;;
1753 --enable-tv) _tv
=yes ;;
1754 --disable-tv) _tv
=no
;;
1755 --enable-edl) _edl
=yes ;;
1756 --disable-edl) _edl
=no
;;
1757 --enable-tv-bsdbt848) _tv_bsdbt848
=yes ;;
1758 --disable-tv-bsdbt848) _tv_bsdbt848
=no
;;
1759 --enable-tv-v4l) _tv_v4l
=yes ;;
1760 --disable-tv-v4l) _tv_v4l
=no
;;
1761 --enable-tv-v4l2) _tv_v4l2
=yes ;;
1762 --disable-tv-v4l2) _tv_v4l2
=no
;;
1763 --enable-fastmemcpy) _fastmemcpy
=yes ;;
1764 --disable-fastmemcpy) _fastmemcpy
=no
;;
1765 --enable-network) _network
=yes ;;
1766 --disable-network) _network
=no
;;
1767 --enable-winsock2) _winsock2
=yes ;;
1768 --disable-winsock2) _winsock2
=no
;;
1769 --enable-smb) _smbsupport
=yes ;;
1770 --disable-smb) _smbsupport
=no
;;
1771 --enable-vidix) _vidix
=yes ;;
1772 --disable-vidix) _vidix
=no
;;
1773 --enable-joystick) _joystick
=yes ;;
1774 --disable-joystick) _joystick
=no
;;
1775 --enable-xvid) _xvid
=yes ;;
1776 --disable-xvid) _xvid
=no
;;
1777 --enable-x264) _x264
=yes ;;
1778 --disable-x264) _x264
=no
;;
1779 --enable-divx4linux) _divx4linux
=yes ;;
1780 --disable-divx4linux) _divx4linux
=no
;;
1781 --enable-opendivx) _opendivx
=yes ;;
1782 --disable-opendivx) _opendivx
=no
;;
1783 --enable-libavcodec) _libavcodec
=yes ;;
1784 --disable-libavcodec) _libavcodec
=no
;;
1785 --enable-amr_nb) _amr_nb
=yes ;;
1786 --disable-amr_nb) _amr_nb
=no
;;
1787 --enable-amr_nb-fixed) _amr_nb_fixed
=yes ;;
1788 --disable-amr_nb-fixed) _amr_nb_fixed
=no
;;
1789 --enable-amr_wb) _amr_wb
=yes ;;
1790 --disable-amr_wb) _amr_wb
=no
;;
1791 --enable-codec=*) _libavcodecs
="$_libavcodecs `echo $ac_option | cut -d '=' -f 2`" ;;
1792 --disable-codec=*) _libavcodecs
=`echo $_libavcodecs | sed "s/\`echo $ac_option | cut
-d '=' -f 2\
`//g"` ;;
1793 --enable-libavformat) _libavformat
=yes;;
1794 --disable-libavformat) _libavformat
=no
;;
1795 --enable-libfame) _fame
=yes ;;
1796 --disable-libfame) _fame
=no
;;
1797 --enable-lirc) _lirc
=yes ;;
1798 --disable-lirc) _lirc
=no
;;
1799 --enable-lircc) _lircc
=yes ;;
1800 --disable-lircc) _lircc
=no
;;
1801 --enable-gui) _gui
=yes ;;
1802 --disable-gui) _gui
=no
;;
1803 --enable-old-gtk) _gtk1
=yes ;;
1804 --enable-termcap) _termcap
=yes ;;
1805 --disable-termcap) _termcap
=no
;;
1806 --enable-termios) _termios
=yes ;;
1807 --disable-termios) _termios
=no
;;
1808 --enable-3dfx) _3dfx
=yes ;;
1809 --disable-3dfx) _3dfx
=no
;;
1810 --enable-tdfxfb) _tdfxfb
=yes ;;
1811 --disable-tdfxvid) _tdfxvid
=no
;;
1812 --enable-tdfxvid) _tdfxvid
=yes ;;
1813 --disable-tga) _tga
=no
;;
1814 --enable-tga) _tga
=yes ;;
1815 --disable-tdfxfb) _tdfxfb
=no
;;
1816 --enable-directfb) _directfb
=yes ;;
1817 --disable-directfb) _directfb
=no
;;
1818 --enable-zr) _zr
=yes ;;
1819 --disable-zr) _zr
=no
;;
1820 --enable-bl) _bl
=yes ;;
1821 --disable-bl) _bl
=no
;;
1822 --enable-mtrr) _mtrr
=yes ;;
1823 --disable-mtrr) _mtrr
=no
;;
1824 --enable-largefiles) _largefiles
=yes ;;
1825 --disable-largefiles) _largefiles
=no
;;
1826 --enable-shm) _shm
=yes ;;
1827 --disable-shm) _shm
=no
;;
1828 --enable-select) _select
=yes ;;
1829 --disable-select) _select
=no
;;
1830 --enable-linux-devfs) _linux_devfs
=yes ;;
1831 --disable-linux-devfs) _linux_devfs
=no
;;
1832 --enable-cdparanoia) _cdparanoia
=yes ;;
1833 --disable-cdparanoia) _cdparanoia
=no
;;
1834 --enable-big-endian) _big_endian
=yes ;;
1835 --disable-big-endian) _big_endian
=no
;;
1836 --enable-freetype) _freetype
=yes ;;
1837 --disable-freetype) _freetype
=no
;;
1838 --enable-fontconfig) _fontconfig
=yes ;;
1839 --disable-fontconfig) _fontconfig
=no
;;
1840 --enable-unrarlib) _unrarlib
=yes ;;
1841 --disable-unrarlib) _unrarlib
=no
;;
1842 --enable-ftp) _ftp
=yes ;;
1843 --disable-ftp) _ftp
=no
;;
1844 --enable-vstream) _vstream
=yes ;;
1845 --disable-vstream) _vstream
=no
;;
1846 --enable-pthreads) _pthreads
=yes ;;
1847 --disable-pthreads) _pthreads
=no
;;
1849 --enable-fribidi) _fribidi
=yes ;;
1850 --disable-fribidi) _fribidi
=no
;;
1852 --enable-enca) _enca
=yes ;;
1853 --disable-enca) _enca
=no
;;
1855 --enable-inet6) _inet6
=yes ;;
1856 --disable-inet6) _inet6
=no
;;
1858 --enable-gethostbyname2) _gethostbyname2
=yes ;;
1859 --disable-gethostbyname2) _gethostbyname2
=no
;;
1861 --enable-dga) _dga
=auto
;; # as we don't know if it's 1 or 2
1862 --enable-dga=*) _dga
=`echo $ac_option | cut -d '=' -f 2` ;;
1863 --disable-dga) _dga
=no
;;
1865 --enable-menu) _menu
=yes ;;
1866 --disable-menu) _menu
=no
;;
1868 --enable-qtx) _qtx
=yes ;;
1869 --disable-qtx) _qtx
=no
;;
1871 --enable-macosx) _macosx
=yes ;;
1872 --disable-macosx) _macosx
=no
;;
1873 --enable-macosx-finder-support) _macosx_finder_support
=yes ;;
1874 --disable-macosx-finder-support) _macosx_finder_support
=no
;;
1875 --enable-macosx-bundle) _macosx_bundle
=yes;;
1876 --disable-macosx-bundle) _macosx_bundle
=no
;;
1878 --enable-sortsub) _sortsub
=yes ;;
1879 --disable-sortsub) _sortsub
=no
;;
1882 _charset
=`echo $ac_option | cut -d '=' -f 2`
1885 _language
=`echo $ac_option | cut -d '=' -f 2`
1887 # dvdnav disabled, it does not work
1888 # --with-libdvdnav=*)
1889 # _dvdnavdir=`echo $ac_option | cut -d '=' -f 2`
1894 _win32libdir
=`echo $ac_option | cut -d '=' -f 2`
1895 _xanimlibdir
=`echo $ac_option | cut -d '=' -f 2`
1896 _reallibdir
=`echo $ac_option | cut -d '=' -f 2`
1898 --with-win32libdir=*)
1899 _win32libdir
=`echo $ac_option | cut -d '=' -f 2`
1902 --with-xanimlibdir=*)
1903 _xanimlibdir
=`echo $ac_option | cut -d '=' -f 2`
1906 --with-reallibdir=*)
1907 _reallibdir
=`echo $ac_option | cut -d '=' -f 2`
1910 --with-livelibdir=*)
1911 _livelibdir
=`echo $ac_option | cut -d '=' -f 2`
1913 --with-toolamedir=*)
1914 _toolamedir
=`echo $ac_option | cut -d '=' -f 2`
1917 _mlibdir
=`echo $ac_option | cut -d '=' -f 2`
1921 --with-xmmslibdir=*)
1922 _xmmslibdir
=`echo $ac_option | cut -d '=' -f 2`
1925 --with-xmmsplugindir=*)
1926 _xmmsplugindir
=`echo $ac_option | cut -d '=' -f 2`
1939 _debug
=`echo $_echo_n '-g'$_echo_c; echo $ac_option | cut -d '=' -f 2`
1944 --enable-crash-debug)
1947 --disable-crash-debug)
1950 --enable-sighandler)
1953 --disable-sighandler)
1957 --enable-sse) _sse
=yes ;;
1958 --disable-sse) _sse
=no
;;
1959 --enable-sse2) _sse2
=yes ;;
1960 --disable-sse2) _sse2
=no
;;
1961 --enable-mmx2) _mmx2
=yes ;;
1962 --disable-mmx2) _mmx2
=no
;;
1963 --enable-3dnow) _3dnow
=yes ;;
1964 --disable-3dnow) _3dnow
=no _3dnowex
=no
;;
1965 --enable-3dnowex) _3dnow
=yes _3dnowex
=yes ;;
1966 --disable-3dnowex) _3dnowex
=no
;;
1967 --enable-altivec) _altivec
=yes ;;
1968 --disable-altivec) _altivec
=no
;;
1969 --enable-mmx) _mmx
=yes ;;
1970 --disable-mmx) # 3Dnow! and MMX2 require MMX
1971 _3dnow
=no _3dnowex
=no _mmx
=no _mmx2
=no
;;
1973 --enable-win32) _win32
=yes ;;
1974 --disable-win32) _win32
=no _dshow
=no
;;
1975 --enable-dshow) _win32
=yes _dshow
=yes ;;
1976 --disable-dshow) _dshow
=no
;;
1979 _inc_x11
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1982 _x11_paths
=`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
1984 --with-dxr2incdir=*)
1985 _inc_dxr2
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1988 _xvmclib
=`echo $ac_option | cut -d '=' -f 2`
1991 _inc_dvb
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1993 --with-xvidlibdir=*)
1994 _ld_xvid
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
1996 --with-xvidincdir=*)
1997 _inc_xvid
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
2000 _ld_libdts
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
2003 _inc_libdts
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
2005 --with-x264libdir=*)
2006 _ld_x264
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
2008 --with-x264incdir=*)
2009 _inc_x264
=-I`echo $ac_option | cut -d '=' -f 2 |sed 's,:, -I,g'`
2011 --with-sdl-config=*)
2012 _sdlconfig
=`echo $ac_option | cut -d '=' -f 2`
2014 --with-freetype-config=*)
2015 _freetypeconfig
=`echo $ac_option | cut -d '=' -f 2`
2017 --with-fribidi-config=*)
2018 _fribidiconfig
=`echo $ac_option | cut -d '=' -f 2`
2020 --with-gtk-config=*)
2021 _gtkconfig
=`echo $ac_option | cut -d '=' -f 2`
2023 --with-glib-config=*)
2024 _glibconfig
=`echo $ac_option | cut -d '=' -f 2`
2026 # dvdnav disabled, it does not work
2027 # --with-dvdnav-config=*)
2028 # _dvdnavconfig=`echo $ac_option | cut -d '=' -f 2`
2031 _ld_mad
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
2033 --with-cdparanoiaincdir=*)
2034 _inc_cdparanoia
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
2036 --with-cdparanoialibdir=*)
2037 _ld_cdparanoia
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
2039 --with-termcaplib=*)
2040 _ld_termcap
=-l`echo $ac_option | cut -d '=' -f 2`
2044 _prefix
=`echo $ac_option | cut -d '=' -f 2`
2047 _bindir
=`echo $ac_option | cut -d '=' -f 2`
2050 _datadir
=`echo $ac_option | cut -d '=' -f 2`
2053 _mandir
=`echo $ac_option | cut -d '=' -f 2`
2056 _confdir
=`echo $ac_option | cut -d '=' -f 2`
2059 _libdir
=`echo $ac_option | cut -d '=' -f 2`
2063 echo "Unknown parameter: $ac_option"
2070 # Atmos: moved this here, to be correct, if --prefix is specified
2071 test -z "$_bindir" && _bindir
="$_prefix/bin"
2072 test -z "$_datadir" && _datadir
="$_prefix/share/mplayer"
2073 test -z "$_mandir" && _mandir
="$_prefix/man"
2074 test -z "$_confdir" && _confdir
="$_prefix/etc/mplayer"
2075 test -z "$_libdir" && _libdir
="$_prefix/lib"
2076 test -z "$_mlibdir" && _mlibdir
="$MLIBHOME"
2079 # Checking assembler (_as) compatibility...
2080 # Added workaround for older as that reads from stdin by default - atmos
2081 as_version
=`echo '' | $_as -version 2>&1 | sed -n 's/^.*assembler \(version \)*\([0-9.]*\).*$/\2/p'`
2082 echocheck
"assembler ($_as $as_version)"
2084 _pref_as_version
='2.9.1'
2086 if test "$_mmx" = yes ; then
2087 echo 'emms' >> $TMPS
2089 if test "$_3dnow" = yes ; then
2090 _pref_as_version
='2.10.1'
2091 echo 'femms' >> $TMPS
2093 if test "$_3dnowex" = yes ; then
2094 _pref_as_version
='2.10.1'
2095 echo 'pswapd %mm0, %mm0' >> $TMPS
2097 if test "$_mmx2" = yes ; then
2098 _pref_as_version
='2.10.1'
2099 echo 'movntq %mm0, (%eax)' >> $TMPS
2101 if test "$_sse" = yes ; then
2102 _pref_as_version
='2.10.1'
2103 echo 'xorps %xmm0, %xmm0' >> $TMPS
2105 #if test "$_sse2" = yes ; then
2106 # _pref_as_version='2.11'
2107 # echo 'xorpd %xmm0, %xmm0' >> $TMPS
2109 $_as $TMPS -o $TMPO > /dev
/null
2>&1 || as_verc_fail
=yes
2111 if test "$as_verc_fail" != yes ; then
2115 echo "Upgrade binutils to ${_pref_as_version} ..."
2116 die
"obsolete binutils version"
2122 # check if altivec is supported by the compiler, and how to enable it
2124 _altivec_gcc_flags
=''
2126 if test "$_altivec" = yes -o "$_runtime_cpudetection" = yes ; then
2127 echocheck
"GCC altivec support"
2135 FSF_flags
='-maltivec -mabi=altivec'
2136 Darwin_flags
='-faltivec -D__APPLE_ALTIVEC__'
2138 # check for Darwin-style flags first, since
2139 # gcc-3.3 (August Update from Apple) on MacOS 10.2.8
2140 # accepts but ignores FSF-style flags...
2142 if test -z "$p"; then
2143 cc_check
$Darwin_flags && p
='Darwin'
2145 if test -z "$p"; then
2146 cc_check
$FSF_flags && p
='FSF'
2150 FSF
) _altivec_gcc_flags
="$FSF_flags" _altivec
=yes ;;
2151 Darwin
) _altivec_gcc_flags
="$Darwin_flags" _altivec
=yes ;;
2155 if test -z "$p"; then
2158 p
="$p-style ($_altivec_gcc_flags)"
2164 # check if <altivec.h> should be included
2166 _def_altivec_h
='#undef HAVE_ALTIVEC_H'
2168 if test "$_altivec" = yes ; then
2169 echocheck
"altivec.h"
2171 #include <altivec.h>
2172 int main(void) { return 0; }
2175 cc_check
$_altivec_gcc_flags && _have_altivec_h
=yes
2176 if test "$_have_altivec_h" = yes ; then
2177 _def_altivec_h
='#define HAVE_ALTIVEC_H 1'
2179 echores
"$_have_altivec_h"
2182 # disable runtime cpudetection if
2183 # - we cannot generate altivec code
2184 # - altivec is disabled by the user
2186 if test "$_runtime_cpudetection" = yes -a "$_altivec" = no
; then
2187 _runtime_cpudetection
=no
2190 # show that we are optimizing for altivec (if enabled and supported)
2192 if test "$_runtime_cpudetection" = no
-a "$_altivec" = yes ; then
2193 _optimizing
="$_optimizing altivec"
2196 # if altivec is enabled, make sure the correct flags turn up in CFLAGS
2198 if test "$_altivec" = yes ; then
2199 _mcpu
="$_mcpu $_altivec_gcc_flags"
2202 # setup _def_altivec correctly
2204 if test "$_altivec" = yes ; then
2205 _def_altivec
='#define HAVE_ALTIVEC 1'
2207 _def_altivec
='#undef HAVE_ALTIVEC'
2211 _def_mmx
='#undef HAVE_MMX'
2212 test "$_mmx" = yes && _def_mmx
='#define HAVE_MMX 1'
2213 _def_mmx2
='#undef HAVE_MMX2'
2214 test "$_mmx2" = yes && _def_mmx2
='#define HAVE_MMX2 1'
2215 _def_3dnow
='#undef HAVE_3DNOW'
2216 test "$_3dnow" = yes && _def_3dnow
='#define HAVE_3DNOW 1'
2217 _def_3dnowex
='#undef HAVE_3DNOWEX'
2218 test "$_3dnowex" = yes && _def_3dnowex
='#define HAVE_3DNOWEX 1'
2219 _def_sse
='#undef HAVE_SSE'
2220 test "$_sse" = yes && _def_sse
='#define HAVE_SSE 1'
2221 _def_sse2
='#undef HAVE_SSE2'
2222 test "$_sse2" = yes && _def_sse2
='#define HAVE_SSE2 1'
2224 # Checking kernel version...
2225 if x86
&& linux
; then
2227 kernel_version
=`uname -r 2>&1`
2228 echocheck
"$system_name kernel version"
2229 case "$kernel_version" in
2230 '') kernel_version
="?.??"; _k_verc_fail
=yes;;
2231 [0-1].
[0-9].
[0-9]*|
2.
[0-3].
[0-9]*)
2232 _k_verc_problem
=yes;;
2234 if test "$_k_verc_problem" = yes && test "$_sse" = yes ; then
2237 if test "$_k_verc_fail" ; then
2238 echores
"$kernel_version, fail"
2239 echo "WARNING! If you want to run MPlayer on this system, get prepared for problems!"
2240 echo "2.2.x has limited SSE support. Upgrade the kernel or use --disable-sse if you"
2241 echo "experience crashes. MPlayer tries to autodetect if your kernel correctly"
2242 echo "supports SSE, but you have been warned! If you are using a kernel older than"
2243 echo "2.2.x you must upgrade it to get SSE support!"
2244 # die "Your kernel is too old for this CPU." # works fine on some 2.2.x so don't die (later check will test)
2246 echores
"$kernel_version, ok"
2250 if test "$_vidix" = auto
; then
2252 # should check for x86 systems supporting VIDIX (does QNX have VIDIX?)
2254 x86_64
&& _vidix
=yes
2255 ppc
&& linux
&& _vidix
=yes
2256 alpha
&& linux
&& _vidix
=yes
2262 echocheck
"mplayer binary name"
2265 _prg_mencoder
="mencoder.exe"
2268 _prg_mencoder
="mencoder"
2273 # On QNX we must link to libph - Gabucino
2275 _ld_arch
="$_ld_arch -lph"
2278 # checking for a working awk, I'm using mawk first, because it's fastest - atmos
2280 if test "$_vidix" = yes ; then
2283 for _awk
in mawk gawk nawk
awk; do
2284 if ( $_awk 'BEGIN{testme();}function testme(){print"";}' ) >> "$TMPLOG" 2>&1; then
2289 test "$_awk_verc_fail" = yes && _awk
=no
2291 if test "$_awk_verc_fail" = yes; then
2292 echo "VIDIX needs awk, but no working implementation was found!"
2293 echo "Try the GNU version, which can be downloaded from:"
2294 echo "ftp://ftp.gnu.org/gnu/gawk/"
2295 echo "If you don't need VIDIX, you can use configure --disable-vidix instead."
2300 # If IRIX we must use ar instead of ranlib (not present on IRIX systems)
2307 ######################
2308 # MAIN TESTS GO HERE #
2309 ######################
2312 echocheck
"extra headers"
2313 if test "$_inc_extra" ; then
2314 echores
"$_inc_extra"
2320 echocheck
"extra libs"
2321 if test "$_ld_extra" ; then
2322 echores
"$_ld_extra"
2329 int main(void) { return 0; }
2331 if cc_check
-lposix ; then
2332 _ld_arch
="$_ld_arch -lposix"
2340 int main(void) { return 0; }
2342 if cc_check
-lm ; then
2350 # Checking for localization ...
2351 # CSAK EGY MARADHAT - A HEGYLAKO
2353 if test "$_i18n" != no
; then
2355 #include <libintl.h>
2356 int main(void) { gettext("test"); return 0; }
2360 if test "$_i18n" = auto
; then
2361 cc_check
&& _i18n
=yes
2363 for i18n_lib
in "" "-lintl"; do
2364 cc_check
$i18n_lib && _i18n
=yes && _i18n_libs
=$i18n_lib && break
2368 if test "$_i18n" = yes ; then
2369 _def_i18n
='#define USE_I18N 1'
2371 _def_i18n
='#undef USE_I18N'
2373 if test "$_i18n_libs" ; then
2374 _res_comment
="using $_i18n_libs"
2379 echocheck
"langinfo"
2380 if test "$_langinfo" = auto
; then
2382 #include <langinfo.h>
2383 int main(void) { nl_langinfo(CODESET); return 0; }
2386 cc_check
&& _langinfo
=yes
2388 if test "$_langinfo" = yes ; then
2389 _def_langinfo
='#define USE_LANGINFO 1'
2391 _def_langinfo
='#undef USE_LANGINFO'
2393 echores
"$_langinfo"
2396 echocheck
"language"
2397 test -z "$_language" && _language
=$LINGUAS
2398 _language
=`echo $_language | sed 's/,/ /g'`
2399 echo $_language |
grep all
> /dev
/null || LANGUAGES
="$_language en"
2400 for lang
in $_language ; do
2401 test "$lang" = all
&& lang
=en
2402 if test -f "help/help_mp-${lang}.h" ; then
2406 echo -n "$lang not found, "
2407 _language
=`echo $_language | sed "s/$lang *//"`
2410 test -z "$_language" && _language
=en
2411 _mp_help
="help/help_mp-${_language}.h"
2412 test -f $_mp_help || die
"$_mp_help not found"
2413 for lang
in $LANGUAGES ; do
2414 if test -f "DOCS/man/$lang/mplayer.1" ; then
2415 MAN_LANG
="$MAN_LANG $lang"
2418 _doc_lang
=$_language
2419 test -d DOCS
/xml
/$_doc_lang || _doc_lang
=en
2420 echores
"using $_language (man pages: $MAN_LANG)"
2423 echocheck
"enable sighandler"
2424 if test "$_sighandler" = yes ; then
2425 _def_sighandler
='#define ENABLE_SIGHANDLER 1'
2427 _def_sighandler
='#undef ENABLE_SIGHANDLER'
2429 echores
"$_sighandler"
2431 echocheck
"runtime cpudetection"
2432 if test "$_runtime_cpudetection" = yes ; then
2433 _optimizing
="Runtime CPU-Detection enabled"
2434 _def_runtime_cpudetection
='#define RUNTIME_CPUDETECT 1'
2436 _def_runtime_cpudetection
='#undef RUNTIME_CPUDETECT'
2438 echores
"$_runtime_cpudetection"
2441 echocheck
"restrict keyword"
2442 for restrict_keyword
in restrict __restrict __restrict__
; do
2443 echo "void foo(char * $restrict_keyword p); int main(){}" > $TMPC
2445 _def_restrict_keyword
=$restrict_keyword
2449 if [ -n "$_def_restrict_keyword" ]; then
2450 echores
"$_def_restrict_keyword"
2454 # Avoid infinite recursion loop ("#define restrict restrict")
2455 if [ "$_def_restrict_keyword" != "restrict" ]; then
2456 _def_restrict_keyword
="#define restrict $_def_restrict_keyword"
2458 _def_restrict_keyword
=""
2462 echocheck
"__builtin_expect"
2463 # GCC branch prediction hint
2466 a = __builtin_expect (a, 10);
2467 return a == 10 ? 0 : 1;
2469 int main() { return foo(10) && foo(0); }
2472 cc_check
&& _builtin_expect
=yes
2473 if test "$_builtin_expect" = yes ; then
2474 _def_builtin_expect
='#define HAVE_BUILTIN_EXPECT 1'
2476 _def_builtin_expect
='#undef HAVE_BUILTIN_EXPECT'
2478 echores
"$_builtin_expect"
2484 int main(void) { (void) kstat_open(); (void) kstat_close(0); return 0; }
2487 cc_check
-lkstat && _kstat
=yes
2488 if test "$_kstat" = yes ; then
2489 _def_kstat
="#define HAVE_LIBKSTAT 1"
2490 _ld_arch
="-lkstat $_ld_arch"
2492 _def_kstat
="#undef HAVE_LIBKSTAT"
2498 # required for nanosleep on some systems
2501 int main(void) { (void) nanosleep(0, 0); return 0; }
2504 cc_check
-lposix4 && _posix4
=yes
2505 if test "$_posix4" = yes ; then
2506 _ld_arch
="-lposix4 $_ld_arch"
2513 int main(void) { long (*foo)(float); foo = lrintf; (void)(*foo)(0.0); return 0; }
2516 cc_check
-D_GNU_SOURCE $_ld_lm && _lrintf
=yes
2517 if test "$_lrintf" = yes ; then
2518 _def_lrintf
="#define HAVE_LRINTF 1"
2520 _def_lrintf
="#undef HAVE_LRINTF"
2527 int main(void) { (void) round(0.0); return 0; }
2530 cc_check
$_ld_lm && _round
=yes
2531 if test "$_round" = yes ; then
2532 _def_round
="#define HAVE_ROUND 1"
2534 _def_round
="#undef HAVE_ROUND"
2538 echocheck
"nanosleep"
2539 # also check for nanosleep
2542 int main(void) { (void) nanosleep(0, 0); return 0; }
2545 cc_check
$_ld_arch && _nanosleep
=yes
2546 if test "$_nanosleep" = yes ; then
2547 _def_nanosleep
='#define HAVE_NANOSLEEP 1'
2549 _def_nanosleep
='#undef HAVE_NANOSLEEP'
2551 echores
"$_nanosleep"
2555 # for Solaris (socket stuff is in -lsocket, gethostbyname and friends in -lnsl):
2556 # for BeOS (socket stuff is in -lsocket, gethostbyname and friends in -lbind):
2559 #include <sys/socket.h>
2560 int main(void) { (void) gethostbyname(0); (void) socket(AF_INET, SOCK_STREAM, 0); return 0; }
2562 for _ld_tmp
in "-lsocket -lbind" "-lsocket -ldnet" "-lsocket -lnsl" "-lnsl" "-lsocket" ; do
2563 cc_check
$_ld_tmp && _ld_sock
="$_ld_tmp" && break
2565 if test $_winsock2 = auto
&& not cygwin
; then
2568 #include <winsock2.h>
2569 int main(void) { (void) gethostbyname(0); return 0; }
2571 cc_check
-lws2_32 && _ld_sock
="-lws2_32" && _winsock2
=yes
2573 if test "$_ld_sock" ; then
2574 echores
"yes (using $_ld_sock)"
2580 if test $_winsock2 = yes ; then
2582 _def_winsock2
='#define HAVE_WINSOCK2 1'
2584 _def_winsock2
='#undef HAVE_WINSOCK2'
2589 echocheck
"inet_pton()"
2591 #include <sys/types.h>
2592 #include <sys/socket.h>
2593 #include <arpa/inet.h>
2594 int main(void) { (void) inet_pton(0, 0, 0); return 0; }
2596 if test "$_winsock2" = yes ; then
2597 echores
"not needed (using winsock2 functions)"
2598 elif cc_check
$_ld_sock ; then
2599 # NOTE: Linux has libresolv but does not need it
2601 echores
"yes (using $_ld_sock)"
2602 elif cc_check
$_ld_sock -lresolv ; then
2603 # NOTE: needed for SunOS at least
2604 _ld_sock
="$_ld_sock -lresolv"
2605 echores
"yes (using $_ld_sock)"
2607 echores
"no (=> i'll try inet_aton next)"
2609 echocheck
"inet_aton()"
2611 #include <sys/types.h>
2612 #include <sys/socket.h>
2613 #include <arpa/inet.h>
2614 int main(void) { (void) inet_aton(0, 0); return 0; }
2617 if cc_check
$_ld_sock ; then
2618 # NOTE: Linux has libresolv but does not need it
2620 echores
"yes (using $_ld_sock)"
2621 elif cc_check
$_ld_sock -lresolv ; then
2622 # NOTE: needed for SunOS at least
2623 _ld_sock
="$_ld_sock -lresolv"
2624 echores
"yes (using $_ld_sock)"
2628 echores
"no (=> network support disabled)"
2632 _def_use_aton
='#undef USE_ATON'
2633 if test "$_use_aton" != no
; then
2634 _def_use_aton
='#define USE_ATON 1'
2638 echocheck
"inttypes.h (required)"
2640 #include <inttypes.h>
2641 int main(void) { return 0; }
2644 cc_check
&& _inttypes
=yes
2645 if test "$_inttypes" = yes ; then
2650 echocheck
"bitypes.h (inttypes.h predecessor)"
2652 #include <sys/bitypes.h>
2653 int main(void) { return 0; }
2656 cc_check
&& _inttypes
=yes
2657 if test "$_inttypes" = yes ; then
2658 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."
2660 die
"Cannot find header either inttypes.h or bitypes.h (see DOCS/HTML/$_doc_lang/faq.html)."
2663 echores
"$_inttypes"
2666 echocheck
"int_fastXY_t in inttypes.h"
2668 #include <inttypes.h>
2670 volatile int_fast16_t v= 0;
2674 cc_check
&& _fast_inttypes
=yes
2675 if test "$_fast_inttypes" = yes ; then
2679 _def_fast_inttypes
='
2680 typedef signed char int_fast8_t;
2681 typedef signed int int_fast16_t;
2682 typedef signed int int_fast32_t;
2683 typedef unsigned char uint_fast8_t;
2684 typedef unsigned int uint_fast16_t;
2685 typedef unsigned int uint_fast32_t;'
2687 echores
"$_fast_inttypes"
2690 echocheck
"word size"
2691 _mp_wordsize
="#undef MP_WORDSIZE"
2694 #include <sys/types.h>
2695 int main(void) { printf("%d\n", sizeof(size_t)*8); return 0; }
2697 cc_check
&& _wordsize
=`$TMPO` && _mp_wordsize
="#define MP_WORDSIZE $_wordsize"
2698 echores
"$_wordsize"
2701 echocheck
"stddef.h"
2704 int main(void) { return 0; }
2707 cc_check
&& _stddef
=yes
2708 if test "$_stddef" = yes ; then
2709 _def_stddef
='#define HAVE_STDDEF_H 1'
2711 _def_stddef
='#undef HAVE_STDDEF_H'
2716 echocheck
"malloc.h"
2719 int main(void) { (void) malloc(0); return 0; }
2722 cc_check
&& _malloc
=yes
2723 if test "$_malloc" = yes ; then
2724 _def_malloc
='#define HAVE_MALLOC_H 1'
2726 _def_malloc
='#undef HAVE_MALLOC_H'
2728 # malloc.h emits a warning in FreeBSD and OpenBSD
2729 freebsd || openbsd
&& _def_malloc
='#undef HAVE_MALLOC_H'
2733 echocheck
"memalign()"
2734 # XXX restrict to x86 ? extend to other CPUs/cacheline sizes ?
2737 int main (void) { (void) memalign(64, sizeof(char)); return 0; }
2740 cc_check
&& _memalign
=yes
2741 if test "$_memalign" = yes ; then
2742 _def_memalign
='#define HAVE_MEMALIGN 1'
2744 _def_memalign
='#undef HAVE_MEMALIGN'
2746 echores
"$_memalign"
2749 echocheck
"alloca.h"
2752 int main(void) { (void) alloca(0); return 0; }
2755 cc_check
&& _alloca
=yes
2757 _def_alloca
='#define HAVE_ALLOCA_H 1'
2759 _def_alloca
='#undef HAVE_ALLOCA_H'
2766 #include <sys/types.h>
2767 #include <sys/mman.h>
2768 int main(void) { (void) mmap(0, 0, 0, 0, 0, 0); return 0; }
2771 cc_check
&& _mman
=yes
2772 if test "$_mman" = yes ; then
2773 _def_mman
='#define HAVE_SYS_MMAN_H 1'
2775 _def_mman
='#undef HAVE_SYS_MMAN_H'
2780 #include <sys/types.h>
2781 #include <sys/mman.h>
2782 int main(void) { void *p = MAP_FAILED; return 0; }
2784 _mman_has_map_failed
=no
2785 cc_check
&& _mman_has_map_failed
=yes
2786 if test "$_mman_has_map_failed" = yes ; then
2787 _def_mman_has_map_failed
=''
2789 _def_mman_has_map_failed
='#define MAP_FAILED ((void *) -1)'
2792 echocheck
"dynamic loader"
2795 int main(void) { dlopen(0, 0); dlclose(0); dlsym(0, 0); return 0; }
2798 for _ld_tmp
in "" "-ldl" ; do
2799 cc_check
$_ld_tmp && _ld_dl
="$_ld_tmp" && _dl
=yes && break
2801 if test "$_dl" = yes ; then
2802 _def_dl
='#define HAVE_LIBDL 1'
2804 _def_dl
='#undef HAVE_LIBDL'
2809 echocheck
"dynamic a/v plugins support"
2810 if test "$_dl" = no
; then
2813 if test "$_dynamic_plugins" = yes ; then
2814 _def_dynamic_plugins
='#define DYNAMIC_PLUGINS 1'
2816 _def_dynamic_plugins
='#undef DYNAMIC_PLUGINS'
2818 echores
"$_dynamic_plugins"
2821 #echocheck "dynamic linking"
2822 # FIXME !! make this dynamic detection work and modify at the end (search _ld_dl_dynamic)
2823 # also gcc flags are different, but ld flags aren't (-Bdynamic/-Bstatic/-Bsymbolic)
2825 #int main(void) { return 0; }
2827 #if cc_check -rdynamic ; then
2828 # _ld_dl_dynamic='-rdynamic'
2829 #elif cc_check -Bdynamic ; then
2830 # _ld_dl_dynamic='-Bdynamic'
2831 #elif cc_check ; then
2834 #echores "using $_ld_dl_dynamic"
2836 _def_threads
='#undef HAVE_THREADS'
2839 if test "$_pthreads" != no
; then
2841 #include <pthread.h>
2842 void* func(void *arg) { return arg; }
2843 int main(void) { pthread_t tid; return pthread_create (&tid, 0, func, 0) == 0 ? 0 : 1; }
2847 for _ld_tmp
in "-lpthreadGC2" "" "-lpthread" "-pthread" ; do
2848 # for crosscompilation, we cannot execute the program, be happy if we can link statically
2849 cc_check
$_ld_tmp && (tmp_run ||
test "$_ld_static") && _ld_pthread
="$_ld_tmp" && _pthreads
=yes && break
2853 if test "$_pthreads" = yes ; then
2854 echores
"yes (using $_ld_pthread)"
2856 _def_pthreads
='#define HAVE_PTHREADS 1'
2857 _def_threads
='#define HAVE_THREADS 1'
2859 echores
"no (v4l, vo_gl, ao_alsa, ao_nas, ao_macosx, win32 loader disabled)"
2861 _def_pthreads
='#undef HAVE_PTHREADS'
2862 _nas
=no
; _tv_v4l
=no
; _macosx
=no
2863 if not mingw32
; then
2870 if test "$_iconv" = auto
; then
2871 _iconv_tmp
='#include <iconv.h>'
2877 #define INBUFSIZE 1024
2878 #define OUTBUFSIZE 4096
2880 char inbuffer[INBUFSIZE];
2881 char outbuffer[OUTBUFSIZE];
2886 char *tocode="UTF-8";
2887 char *fromcode="cp1250";
2888 if ((icdsc = iconv_open (tocode, fromcode)) != (iconv_t)(-1)) {
2889 while ((numread = read (0, inbuffer, INBUFSIZE))) {
2890 char *iptr=inbuffer;
2891 char *optr=outbuffer;
2892 size_t inleft=numread;
2893 size_t outleft=OUTBUFSIZE;
2894 if (iconv(icdsc, (const char **)&iptr, &inleft, &optr, &outleft)
2896 write (1, outbuffer, OUTBUFSIZE - outleft);
2899 if (iconv_close(icdsc) == -1)
2905 for _ld_tmp
in "" "-liconv" "-liconv $_ld_dl" ; do
2906 cc_check
$_ld_lm $_ld_tmp && _ld_iconv
="$_ld_tmp" && _iconv
=yes && break
2909 if test "$_iconv" = yes ; then
2910 _def_iconv
='#define USE_ICONV 1'
2912 _def_iconv
='#undef USE_ICONV'
2917 echocheck
"sys/soundcard.h"
2919 #include <sys/soundcard.h>
2920 int main(void) { return 0; }
2923 cc_check
&& _sys_soundcard
=yes
2924 if test "$_sys_soundcard" = yes ; then
2925 _def_sys_soundcard
='#define HAVE_SYS_SOUNDCARD_H 1'
2926 _inc_soundcard
='#include <sys/soundcard.h>'
2928 _def_sys_soundcard
='#undef HAVE_SYS_SOUNDCARD_H'
2930 echores
"$_sys_soundcard"
2932 if test "$_sys_soundcard" != yes ; then
2933 echocheck
"soundcard.h"
2935 #include <soundcard.h>
2936 int main(void) { return 0; }
2939 cc_check
&& _soundcard
=yes
2940 if linux ||
test "$_ossaudio" != no
; then
2941 # use soundcard.h on Linux, or when OSS support is enabled
2942 echores
"$_soundcard"
2944 # we don't want to use soundcard.h on non-Linux if OSS support not enabled!
2945 echores
"$_soundcard, but ignored!"
2948 if test "$_soundcard" = yes ; then
2949 _def_soundcard
='#define HAVE_SOUNDCARD_H 1'
2950 _inc_soundcard
='#include <soundcard.h>'
2952 _def_soundcard
='#undef HAVE_SOUNDCARD_H'
2955 _def_soundcard
='#undef HAVE_SOUNDCARD_H'
2959 echocheck
"sys/dvdio.h"
2962 #include <sys/dvdio.h>
2963 int main(void) { return 0; }
2966 cc_check
&& _dvdio
=yes
2967 if test "$_dvdio" = yes ; then
2968 _def_dvdio
='#define DVD_STRUCT_IN_SYS_DVDIO_H 1'
2970 _def_dvdio
='#undef DVD_STRUCT_IN_SYS_DVDIO_H'
2975 echocheck
"sys/cdio.h"
2978 #include <sys/cdio.h>
2979 int main(void) { return 0; }
2982 cc_check
&& _cdio
=yes
2983 if test "$_cdio" = yes ; then
2984 _def_cdio
='#define DVD_STRUCT_IN_SYS_CDIO_H 1'
2986 _def_cdio
='#undef DVD_STRUCT_IN_SYS_CDIO_H'
2991 echocheck
"linux/cdrom.h"
2993 #include <sys/types.h>
2994 #include <linux/cdrom.h>
2995 int main(void) { return 0; }
2998 cc_check
&& _cdrom
=yes
2999 if test "$_cdrom" = yes ; then
3000 _def_cdrom
='#define DVD_STRUCT_IN_LINUX_CDROM_H 1'
3002 _def_cdrom
='#undef DVD_STRUCT_IN_LINUX_CDROM_H'
3010 int main(void) { return 0; }
3013 cc_check
&& _dvd
=yes
3014 if test "$_dvd" = yes ; then
3015 _def_dvd
='#define DVD_STRUCT_IN_DVD_H 1'
3017 _def_dvd
='#undef DVD_STRUCT_IN_DVD_H'
3022 echocheck
"BSDI dvd.h"
3025 int main(void) { return 0; }
3028 cc_check
&& _bsdi_dvd
=yes
3029 if test "$_bsdi_dvd" = yes ; then
3030 _def_bsdi_dvd
='#define DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H 1'
3032 _def_bsdi_dvd
='#undef DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H'
3034 echores
"$_bsdi_dvd"
3037 echocheck
"HPUX SCSI header"
3039 #include <sys/scsi.h>
3040 int main(void) { return 0; }
3043 cc_check
&& _hpux_scsi_h
=yes
3044 if test "$_hpux_scsi_h" = yes ; then
3045 _def_hpux_scsi_h
='#define HPUX_SCTL_IO 1'
3047 _def_hpux_scsi_h
='#undef HPUX_SCTL_IO'
3049 echores
"$_hpux_scsi_h"
3052 echocheck
"userspace SCSI headers (Solaris)"
3054 # include <unistd.h>
3055 # include <stropts.h>
3056 # include <sys/scsi/scsi_types.h>
3057 # include <sys/scsi/impl/uscsi.h>
3058 int main(void) { return 0; }
3061 cc_check
&& _sol_scsi_h
=yes
3062 if test "$_sol_scsi_h" = yes ; then
3063 _def_sol_scsi_h
='#define SOLARIS_USCSI 1'
3065 _def_sol_scsi_h
='#undef SOLARIS_USCSI'
3067 echores
"$_sol_scsi_h"
3071 if test "$_termcap" = auto
; then
3073 int main(void) { return 0; }
3076 for _ld_tmp
in "-ltermcap" "-ltinfo" ; do
3077 cc_check
$_ld_tmp && _ld_termcap
="$_ld_tmp" && _termcap
=yes && break
3080 if test "$_termcap" = yes ; then
3081 _def_termcap
='#define USE_TERMCAP 1'
3082 _res_comment
="using $_ld_termcap"
3084 _def_termcap
='#undef USE_TERMCAP'
3090 if test "$_termios" = auto
; then
3092 #include <sys/termios.h>
3093 int main(void) { return 0; }
3096 cc_check
&& _termios
=yes
3097 _def_termios_h_name
='sys/termios.h'
3100 if test "$_termios" = auto
; then
3102 #include <termios.h>
3103 int main(void) { return 0; }
3106 cc_check
&& _termios
=yes
3107 _def_termios_h_name
='termios.h'
3110 if test "$_termios" = yes ; then
3111 _def_termios
='#define HAVE_TERMIOS 1'
3112 _def_termios_h
='#undef HAVE_TERMIOS_H'
3113 _def_termios_sys_h
='#undef HAVE_SYS_TERMIOS_H'
3115 if test "$_def_termios_h_name" = 'sys/termios.h' ; then
3116 _def_termios_sys_h
='#define HAVE_SYS_TERMIOS_H 1'
3117 elif test "$_def_termios_h_name" = 'termios.h' ; then
3118 _def_termios_h
='#define HAVE_TERMIOS_H 1'
3120 _res_comment
="using $_def_termios_h_name"
3122 _def_termios
='#undef HAVE_TERMIOS'
3123 _def_termios_h_name
=''
3130 if test "$_shm" = auto
; then
3132 #include <sys/types.h>
3133 #include <sys/shm.h>
3134 int main(void) { shmget(0, 0, 0); shmat(0, 0, 0); shmctl(0, 0, 0); return 0; }
3137 cc_check
&& _shm
=yes
3139 if test "$_shm" = yes ; then
3140 _def_shm
='#define HAVE_SHM 1'
3142 _def_shm
='#undef HAVE_SHM'
3147 # XXX: FIXME, add runtime checking
3148 echocheck
"linux devfs"
3149 echores
"$_linux_devfs"
3152 echocheck
"scandir()"
3154 int main (void) { scandir("", 0, 0, 0); alphasort(0, 0); return 0; }
3157 cc_check
&& _scandir
=yes
3158 if test "$_scandir" = yes ; then
3159 _def_scandir
='#define HAVE_SCANDIR 1'
3161 _def_scandir
='#undef HAVE_SCANDIR'
3166 echocheck
"strsep()"
3169 int main (void) { char *s = "Hello, world!"; (void) strsep(&s, ","); return 0; }
3172 cc_check
&& _strsep
=yes
3173 if test "$_strsep" = yes ; then
3174 _def_strsep
='#define HAVE_STRSEP 1'
3176 _def_strsep
='#undef HAVE_STRSEP'
3180 echocheck
"strlcpy()"
3183 int main (void) { char *s = "Hello, world!", t[20]; (void) strlcpy(t, s, sizeof( t )); return 0; }
3186 cc_check
&& _strlcpy
=yes
3187 if test "$_strlcpy" = yes ; then
3188 _def_strlcpy
='#define HAVE_STRLCPY 1'
3190 _def_strlcpy
='#undef HAVE_STRLCPY'
3194 echocheck
"strlcat()"
3197 int main (void) { char *s = "Hello, world!", t[20]; (void) strlcat(t, s, sizeof( t )); return 0; }
3200 cc_check
&& _strlcat
=yes
3201 if test "$_strlcat" = yes ; then
3202 _def_strlcat
='#define HAVE_STRLCAT 1'
3204 _def_strlcat
='#undef HAVE_STRLCAT'
3208 echocheck
"fseeko()"
3211 int main (void) { int i; i = fseeko(stdin, 0, 0); return 0; }
3214 cc_check
&& _fseeko
=yes
3215 if test "$_fseeko" = yes ; then
3216 _def_fseeko
='#define HAVE_FSEEKO 1'
3218 _def_fseeko
='#undef HAVE_FSEEKO'
3222 echocheck
"localtime_r()"
3225 int main( void ) { localtime_r(NULL, NULL); }
3228 cc_check
&& _localtime_r
=yes
3229 if test "$_localtime_r" = yes ; then
3230 _def_localtime_r
='#define HAVE_LOCALTIME_R 1'
3232 _def_localtime_r
='#undef HAVE_LOCALTIME_R'
3234 echores
"$_localtime_r"
3236 echocheck
"vsscanf()"
3239 int main(void) { vsscanf(0, 0, 0); return 0; }
3242 cc_check
&& _vsscanf
=yes
3243 if test "$_vsscanf" = yes ; then
3244 _def_vsscanf
='#define HAVE_VSSCANF 1'
3246 _def_vsscanf
='#undef HAVE_VSSCANF'
3254 int main(void) { swab(0, 0, 0); return 0; }
3257 cc_check
&& _swab
=yes
3258 if test "$_swab" = yes ; then
3259 _def_swab
='#define HAVE_SWAB 1'
3261 _def_swab
='#undef HAVE_SWAB'
3265 echocheck
"posix select()"
3269 #include <sys/types.h>
3271 #include <sys/time.h>
3273 int main(void) {int nfds = 1; fd_set readfds; struct timeval timeout; select(nfds,&readfds,NULL,NULL,&timeout); return 0; }
3276 cc_check
&& _posix_select
=yes
3277 if test "$_posix_select" = no
; then
3278 _def_no_posix_select
='#define HAVE_NO_POSIX_SELECT 1'
3280 _def_no_posix_select
='#undef HAVE_NO_POSIX_SELECT'
3282 echores
"$_posix_select"
3285 echocheck
"gettimeofday()"
3288 #include <sys/time.h>
3289 int main(void) {struct timeval tv_start; gettimeofday(&tv_start, NULL); return 0; }
3292 cc_check
&& _gettimeofday
=yes
3293 if test "$_gettimeofday" = yes ; then
3294 _def_gettimeofday
='#define HAVE_GETTIMEOFDAY 1'
3296 _def_gettimeofday
='#undef HAVE_GETTIMEOFDAY'
3298 echores
"$_gettimeofday"
3305 int main(void) { glob_t gg; glob("filename",0,NULL,&gg); return 0; }
3308 cc_check
&& _glob
=yes
3309 if test "$_glob" = yes ; then
3310 _def_glob
='#define HAVE_GLOB 1'
3312 _def_glob
='#undef HAVE_GLOB'
3317 echocheck
"sys/sysinfo.h"
3319 #include <sys/sysinfo.h>
3321 struct sysinfo s_info;
3327 cc_check
&& _sys_sysinfo
=yes
3328 if test "$_sys_sysinfo" = yes ; then
3329 _def_sys_sysinfo
='#define HAVE_SYS_SYSINFO_H 1'
3330 _inc_sysinfo
='#include <sys/sysinfo.h>'
3332 _def_sys_sysinfo
='#undef HAVE_SYS_SYSINFO_H'
3334 echores
"$_sys_sysinfo"
3337 echocheck
"Mac OS X APIs"
3338 if test "$_macosx" = auto
&& darwin
; then
3339 productName
=`/usr/bin/sw_vers -productName`
3340 if test "$productName" = "Mac OS X" ; then
3344 _def_macosx
='#undef MACOSX'
3345 _noaomodules
="macosx $_noaomodules"
3346 _novomodules
="quartz $_novomodules"
3349 if test "$_macosx" = yes ; then
3351 #include <Carbon/Carbon.h>
3352 #include <QuickTime/QuickTime.h>
3353 #include <CoreAudio/CoreAudio.h>
3357 CFRunLoopRunInMode(kCFRunLoopDefaultMode, 0, false);
3360 if cc_check
-framework Carbon
-framework QuickTime
-framework CoreAudio
; then
3362 _macosx_frameworks
="-framework Carbon -framework QuickTime -framework CoreAudio -framework AudioUnit -framework AudioToolbox"
3363 _def_macosx
='#define MACOSX 1'
3364 _aosrc
="$_aosrc ao_macosx.c"
3365 _aomodules
="macosx $_aomodules"
3366 _vosrc
="$_vosrc vo_quartz.c"
3367 _vomodules
="quartz $_vomodules"
3370 _def_macosx
='#undef MACOSX'
3371 _noaomodules
="macosx $_noaomodules"
3372 _novomodules
="quartz $_novomodules"
3375 #include <Carbon/Carbon.h>
3376 #include <QuartzCore/CoreVideo.h>
3379 if cc_check
-framework Carbon
-framework QuartzCore
-framework OpenGL
; then
3380 _vosrc
="$_vosrc vo_macosx.m"
3381 _vomodules
="macosx $_vomodules"
3382 _macosx_frameworks
="$_macosx_frameworks -framework Cocoa -framework QuartzCore -framework OpenGL"
3383 _def_macosx_corevideo
='#define MACOSX_COREVIDEO 1'
3384 _macosx_corevideo
=yes
3386 _novomodules
="macosx $_novomodules"
3387 _def_macosx_corevideo
='#undef MACOSX_COREVIDEO'
3388 _macosx_corevideo
=no
3393 echocheck
"Mac OS X Finder Support"
3394 if test "$_macosx_finder_support" = auto
; then
3395 _macosx_finder_support
=$_macosx
3397 if test "$_macosx_finder_support" = yes; then
3398 _def_macosx_finder_support
='#define MACOSX_FINDER_SUPPORT 1'
3399 _macosx_finder_support
=yes
3401 _def_macosx_finder_support
='#undef MACOSX_FINDER_SUPPORT'
3402 _macosx_finder_support
=no
3404 echores
"$_macosx_finder_support"
3406 echocheck
"Mac OS X Bundle file locations"
3407 if test "$_macosx_bundle" = auto
; then
3408 _macosx_bundle
=$_macosx_finder_support
3410 if test "$_macosx_bundle" = yes; then
3411 _def_macosx_bundle
='#define MACOSX_BUNDLE 1'
3413 _def_macosx_bundle
='#undef MACOSX_BUNDLE'
3416 echores
"$_macosx_bundle"
3418 echocheck
"Samba support (libsmbclient)"
3419 if test "$_smbsupport" = yes; then
3420 _ld_smb
="-lsmbclient"
3422 if test "$_smbsupport" = auto
; then
3425 #include <libsmbclient.h>
3426 int main(void) { smbc_opendir("smb://"); return 0; }
3428 for _ld_tmp
in "-lsmbclient" "-lsmbclient $_ld_dl" "-lsmbclient $_ld_dl -lnsl" "-lsmbclient $_ld_dl -lssl -lnsl" ; do
3429 cc_check
$_ld_tmp && _ld_smb
="$_ld_tmp" && _smbsupport
=yes && break
3433 if test "$_smbsupport" = yes; then
3434 _def_smbsupport
="#define LIBSMBCLIENT"
3435 _inputmodules
="smb $_inputmodules"
3437 _def_smbsupport
="#undef LIBSMBCLIENT"
3438 _noinputmodules
="smb $_noinputmodules"
3440 echores
"$_smbsupport"
3449 if test "$_3dfx" = yes ; then
3450 _def_3dfx
='#define HAVE_3DFX 1'
3451 _vosrc
="$_vosrc vo_3dfx.c"
3452 _vomodules
="3dfx $_vomodules"
3454 _def_3dfx
='#undef HAVE_3DFX'
3455 _novomodules
="3dfx $_novomodules"
3461 if test "$_tdfxfb" = yes ; then
3462 _def_tdfxfb
='#define HAVE_TDFXFB 1'
3463 _vosrc
="$_vosrc vo_tdfxfb.c"
3464 _vomodules
="tdfxfb $_vomodules"
3466 _def_tdfxfb
='#undef HAVE_TDFXFB'
3467 _novomodules
="tdfxfb $_novomodules"
3472 if test "$_tdfxvid" = yes ; then
3473 _def_tdfxvid
='#define HAVE_TDFX_VID 1'
3474 _vosrc
="$_vosrc vo_tdfx_vid.c"
3475 _vomodules
="tdfx_vid $_vomodules"
3477 _def_tdfxvid
='#undef HAVE_TDFX_VID'
3478 _novomodules
="tdfx_vid $_novomodules"
3483 if test "$_tga" = yes ; then
3484 _def_tga
='#define HAVE_TGA 1'
3485 _vosrc
="$_vosrc vo_tga.c"
3486 _vomodules
="tga $_vomodules"
3488 _def_tga
='#undef HAVE_TGA'
3489 _novomodules
="tga $_novomodules"
3493 echocheck
"DirectFB headers presence"
3494 if test -z "$_inc_directfb" ; then
3495 for I
in /usr
/include
/usr
/local
/include
$_inc_extra; do
3496 if test -d "$I/directfb" && test -f "$I/directfb/directfb.h" ; then
3497 _inc_directfb
="-I$I/directfb"
3498 echores
"yes (using $_inc_directfb)"
3501 if test -d "$I" && test -f "$I/directfb.h" ; then
3502 _inc_directfb
="-I$I"
3503 echores
"yes (using $_inc_directfb)"
3507 if test -z "$_inc_directfb" ; then
3512 echores
"yes (using $_inc_directfb)"
3514 if test "$_inc_directfb" = "-I/usr/include" ; then
3518 echocheck
"DirectFB"
3519 if test "$_directfb" = auto
; then
3522 #include <directfb.h>
3523 int main(void) { IDirectFB *foo; DirectFBInit(0,0); return 0; }
3525 linux
&& test -c /dev
/fb0
&& cc_check
$_inc_directfb -ldirectfb && _directfb
=yes
3528 if test "$_directfb" = yes; then
3530 #include <directfb_version.h>
3532 dfb_ver = DIRECTFB_MAJOR_VERSION DIRECTFB_MINOR_VERSION DIRECTFB_MICRO_VERSION
3535 if $_cc -E $TMPC $_inc_directfb > "$TMPO"; then
3536 _directfb_version
=`sed -n 's/^dfb_ver[^1-9]*\(.*\)/\1/p' "$TMPO" | tr -d '() '`
3537 _def_directfb_version
="#define DIRECTFBVERSION $_directfb_version"
3538 if test "$_directfb_version" -ge 913; then
3539 _res_comment
="$_directfb_version"
3541 _def_directfb_version
='#undef DIRECTFBVERSION'
3543 _res_comment
="version >=0.9.13 required"
3547 _res_comment
="failed to get version"
3550 echores
"$_directfb"
3552 if test "$_directfb" = yes ; then
3553 _def_directfb
='#define HAVE_DIRECTFB 1'
3554 if test "$_directfb_version" -ge 913; then
3555 _vosrc
="$_vosrc vo_directfb2.c"
3556 _vomodules
="directfb $_vomodules"
3557 _ld_directfb
='-ldirectfb'
3560 if test "$_directfb_version" -ge 915; then
3561 _vosrc
="$_vosrc vo_dfbmga.c"
3562 _vomodules
="dfbmga $_vomodules"
3565 _def_directfb
='#undef HAVE_DIRECTFB'
3566 _novomodules
="directfb $_novomodules"
3571 echocheck
"X11 headers presence"
3572 if test -z "$_inc_x11" ; then
3573 for I
in /usr
/X11
/include
/usr
/X11R
6/include
/usr
/include
/X11R6
/usr
/include
/usr
/openwin
/include
; do
3574 if test -d "$I/X11" && test -f "$I/X11/Xlib.h" ; then
3576 echores
"yes (using $I)"
3580 if test -z "$_inc_x11" ; then
3582 echores
"not found (check if the dev(el) packages are installed)"
3585 echores
"yes (using $_inc_x11)"
3587 if test "$_inc_x11" = "-I/usr/include" ; then
3593 if test "$_x11" != no
; then
3595 #include <X11/Xlib.h>
3596 #include <X11/Xutil.h>
3597 int main(void) { (void) XCreateWindow(0,0,0,0,0,0,0,0,0,0,0,0); return 0; }
3599 if test -z "$_x11_paths" ; then
3600 _x11_paths
="/usr/X11R6/lib /usr/lib/X11R6 /usr/X11/lib /usr/lib32 /usr/openwin/lib /usr/X11R6/lib64 /usr/lib"
3602 for I
in $_x11_paths ; do
3603 _ld_x11
="-L$I -lXext -lX11 $_ld_sock $_ld_pthread"
3605 _ld_x11
="$_ld_x11 -Wl,-R$I"
3607 if test -d "$I" && cc_check
$_inc_x11 $_ld_x11 ; then
3613 if test "$_x11" = yes ; then
3614 _def_x11
='#define HAVE_X11 1'
3615 _vosrc
="$_vosrc x11_common.c vo_x11.c vo_xover.c"
3616 _vomodules
="x11 xover $_vomodules"
3617 _res_comment
="using $I"
3620 _def_x11
='#undef HAVE_X11'
3623 _novomodules
="x11 $_novomodules"
3624 _res_comment
="check if the dev(el) packages are installed"
3632 if test "$_x11" = yes ; then
3634 #include <X11/Xmd.h>
3635 #include <X11/Xlib.h>
3636 #include <X11/Xutil.h>
3637 #include <X11/Xatom.h>
3638 #include <X11/extensions/dpms.h>
3640 (void) DPMSQueryExtension(0, 0, 0);
3643 cc_check
$_inc_x11 -lXdpms $_ld_x11 && _xdpms3
=yes
3645 #include <X11/Xlib.h>
3646 #include <X11/extensions/dpms.h>
3648 (void) DPMSQueryExtension(0, 0, 0);
3651 cc_check
$_inc_x11 $_ld_x11 && _xdpms4
=yes
3653 if test "$_xdpms4" = yes ; then
3654 _def_xdpms
='#define HAVE_XDPMS 1'
3655 echores
"yes (using Xdpms 4)"
3656 elif test "$_xdpms3" = yes ; then
3657 _def_xdpms
='#define HAVE_XDPMS 1'
3658 _ld_x11
="-lXdpms $_ld_x11"
3659 echores
"yes (using Xdpms 3)"
3661 _def_xdpms
='#undef HAVE_XDPMS'
3667 if test "$_x11" = yes && test "$_xv" != no
; then
3669 #include <X11/Xlib.h>
3670 #include <X11/extensions/Xvlib.h>
3672 (void) XvGetPortAttribute(0, 0, 0, 0);
3673 (void) XvQueryPortAttributes(0, 0, 0);
3677 cc_check
$_inc_x11 -lXv $_ld_x11 && _xv
=yes
3681 if test "$_xv" = yes ; then
3682 _def_xv
='#define HAVE_XV 1'
3684 _vosrc
="$_vosrc vo_xv.c"
3685 _vomodules
="xv $_vomodules"
3687 _def_xv
='#undef HAVE_XV'
3688 _novomodules
="xv $_novomodules"
3694 if test "$_x11" = yes && test "$_xv" = yes && test "$_xvmc" != no
; then
3697 #include <X11/Xlib.h>
3698 #include <X11/extensions/Xvlib.h>
3699 #include <X11/extensions/XvMClib.h>
3701 (void) XvMCQueryExtension(0,0,0);
3702 (void) XvMCCreateContext(0,0,0,0,0,0,0);
3705 cc_check
$_inc_x11 -lXvMC -l$_xvmclib $_ld_xv $_ld_x11 && _xvmc
=yes
3707 if test "$_xvmc" = yes ; then
3708 _def_xvmc
='#define HAVE_XVMC 1'
3709 _ld_xvmc
="-lXvMC -l$_xvmclib"
3710 _vosrc
="$_vosrc vo_xvmc.c"
3711 _vomodules
="xvmc $_vomodules"
3713 _def_xvmc
='#undef HAVE_XVMC'
3714 _novomodules
="xvmc $_novomodules"
3719 echocheck
"Xinerama"
3720 if test "$_x11" = yes && test "$_xinerama" != no
; then
3722 #include <X11/Xlib.h>
3723 #include <X11/extensions/Xinerama.h>
3724 int main(void) { (void) XineramaIsActive(0); return 0; }
3727 cc_check
$_inc_x11 -lXinerama $_ld_x11 && _xinerama
=yes
3731 if test "$_xinerama" = yes ; then
3732 _def_xinerama
='#define HAVE_XINERAMA 1'
3733 _ld_xinerama
='-lXinerama'
3735 _def_xinerama
='#undef HAVE_XINERAMA'
3737 echores
"$_xinerama"
3740 # Note: the -lXxf86vm library is the VideoMode extension and though it's not
3741 # needed for DGA, AFAIK every distribution packages together with DGA stuffs
3742 # named 'X extensions' or something similar.
3743 # This check may be useful for future mplayer versions (to change resolution)
3744 # If you run into problems, remove '-lXxf86vm'.
3746 if test "$_x11" = yes && test "$_vm" = auto
; then
3748 #include <X11/Xlib.h>
3749 #include <X11/extensions/xf86vmode.h>
3750 int main(void) { (void) XF86VidModeQueryExtension(0, 0, 0); return 0; }
3753 cc_check
$_inc_x11 -lXxf86vm $_ld_x11 && _vm
=yes
3755 if test "$_vm" = yes ; then
3756 _def_vm
='#define HAVE_XF86VM 1'
3759 _def_vm
='#undef HAVE_XF86VM'
3763 # Check for the presence of special keycodes, like audio control buttons
3764 # that XFree86 might have. Used to be bundled with the xf86vm check, but
3765 # has nothing to do with xf86vm and XFree 3.x has xf86vm but does NOT
3766 # have these new keycodes.
3767 echocheck
"XF86keysym"
3768 if test "$_xf86keysym" = auto
; then
3770 if test "$_x11" = yes ; then
3772 #include <X11/Xlib.h>
3773 #include <X11/XF86keysym.h>
3774 int main(void) { return XF86XK_AudioPause; }
3776 cc_check
$_inc_x11 $_ld_x11 && _xf86keysym
=yes
3779 if test "$_xf86keysym" = yes ; then
3780 _def_xf86keysym
='#define HAVE_XF86XK 1'
3782 _def_xf86keysym
='#undef HAVE_XF86XK'
3784 echores
"$_xf86keysym"
3787 if test "$_x11" = no
; then
3790 # Version 2 is preferred to version 1 if available
3791 if test "$_dga" = auto
; then
3793 #include <X11/Xlib.h>
3794 #include <X11/extensions/xf86dga.h>
3795 int main (void) { (void) XF86DGASetViewPort(0, 0, 0, 0); return 0; }
3798 cc_check
$_inc_x11 -lXxf86dga -lXxf86vm $_ld_x11 && _dga
=1
3801 #include <X11/Xlib.h>
3802 #include <X11/extensions/xf86dga.h>
3803 int main (void) { (void) XDGASetViewport(0, 0, 0, 0, 0); return 0; }
3805 cc_check
$_inc_x11 -lXxf86dga $_ld_x11 && _dga
=2
3808 _def_dga
='#undef HAVE_DGA'
3809 _def_dga2
='#undef HAVE_DGA2'
3810 if test "$_dga" = 1 ; then
3811 _def_dga
='#define HAVE_DGA 1'
3812 _ld_dga
='-lXxf86dga'
3813 _vosrc
="$_vosrc vo_dga.c"
3814 _vomodules
="dga $_vomodules"
3815 echores
"yes (using DGA 1.0)"
3816 elif test "$_dga" = 2 ; then
3817 _def_dga
='#define HAVE_DGA 1'
3818 _def_dga2
='#define HAVE_DGA2 1'
3819 _ld_dga
='-lXxf86dga'
3820 _vosrc
="$_vosrc vo_dga.c"
3821 _vomodules
="dga $_vomodules"
3822 echores
"yes (using DGA 2.0)"
3823 elif test "$_dga" = no
; then
3825 _novomodules
="dga $_novomodules"
3827 die
"DGA version must be 1 or 2"
3832 #Note: this test is run even with --enable-gl since we autodetect $_ld_gl
3833 if (test "$_x11" = yes || win32
) && test "$_gl" != no
; then
3836 int main(void) { return 0; }
3839 if cc_check
$_inc_x11 $_ld_x11 -lGL $_ld_lm ; then
3841 _ld_gl
="-lGL $_ld_dl"
3842 elif cc_check
$_inc_x11 $_ld_x11 -lGL $_ld_lm $_ld_pthread ; then
3844 _ld_gl
="-lGL $_ld_pthread $_ld_dl"
3845 elif cc_check
-lopengl32 ; then
3848 _ld_gl
="-lopengl32 -lgdi32"
3853 if test "$_gl" = yes ; then
3854 _def_gl
='#define HAVE_GL 1'
3855 _vosrc
="$_vosrc vo_gl.c vo_gl2.c gl_common.c"
3856 if test "$_gl_win32" = yes ; then
3857 _def_gl_win32
='#define GL_WIN32 1'
3858 _vosrc
="$_vosrc w32_common.c"
3859 _res_comment
="win32 version"
3861 _vomodules
="opengl $_vomodules"
3863 _def_gl
='#undef HAVE_GL'
3864 _def_gl_win32
='#undef GL_WIN32'
3865 _novomodules
="opengl $_novomodules"
3870 echocheck
"/dev/mga_vid"
3871 if test "$_mga" = auto
; then
3873 test -c /dev
/mga_vid
&& _mga
=yes
3875 if test "$_mga" = yes ; then
3876 _def_mga
='#define HAVE_MGA 1'
3877 _vosrc
="$_vosrc vo_mga.c"
3878 _vomodules
="mga $_vomodules"
3880 _def_mga
='#undef HAVE_MGA'
3881 _novomodules
="mga $_novomodules"
3886 # echocheck "syncfb"
3888 # test "$_mga" = yes && _syncfb=yes
3889 # if test "$_syncfb" = yes ; then
3890 # _def_syncfb='#define HAVE_SYNCFB 1'
3891 # _vosrc="$_vosrc vo_syncfb.c"
3893 # _def_syncfb='#undef HAVE_SYNCFB'
3895 # echores "$_syncfb"
3899 if test "$_xmga" = auto
; then
3901 test "$_x11" = yes && test "$_mga" = yes && _xmga
=yes
3903 if test "$_xmga" = yes ; then
3904 _def_xmga
='#define HAVE_XMGA 1'
3905 _vosrc
="$_vosrc vo_xmga.c"
3906 _vomodules
="xmga $_vomodules"
3908 _def_xmga
='#undef HAVE_XMGA'
3909 _novomodules
="xmga $_novomodules"
3915 if test "$_ggi" = auto
; then
3917 #include <ggi/ggi.h>
3918 int main(void) { return 0; }
3921 cc_check
-lggi && _ggi
=yes
3923 if test "$_ggi" = yes ; then
3924 _def_ggi
='#define HAVE_GGI 1'
3926 _vosrc
="$_vosrc vo_ggi.c"
3927 _vomodules
="ggi $_vomodules"
3929 _def_ggi
='#undef HAVE_GGI'
3930 _novomodules
="ggi $_novomodules"
3934 echocheck
"GGI extension: libggiwmh"
3935 if test "$_ggiwmh" = auto
; then
3938 #include <ggi/ggi.h>
3939 #include <ggi/wmh.h>
3940 int main(void) { return 0; }
3942 cc_check
-lggi -lggiwmh && _ggiwmh
=yes
3944 # needed to get right output on obscure combination
3945 # like --disable-ggi --enable-ggiwmh
3946 if test "$_ggi" = yes && test "$_ggiwmh" = yes ; then
3947 _def_ggiwmh
='#define HAVE_GGIWMH 1'
3948 _ld_ggi
="$_ld_ggi -lggiwmh"
3951 _def_ggiwmh
='#undef HAVE_GGIWMH'
3957 if test "$_aa" = auto
; then
3960 extern struct aa_hardware_params aa_defparams;
3961 extern struct aa_renderparams aa_defrenderparams;
3965 (void) aa_init(0, 0, 0);
3966 c = aa_autoinit(&aa_defparams);
3967 p = aa_getrenderparams();
3968 aa_autoinitkbd(c,0);
3972 for _ld_tmp
in "-laa" "$_ld_x11 -laa" ; do
3973 cc_check
$_ld_tmp && _ld_aa
=$_ld_tmp && _aa
=yes && break
3976 if test "$_aa" = yes ; then
3977 _def_aa
='#define HAVE_AA 1'
3979 _ld_aa
=`aalib-config --libs | cut -d " " -f 2,5,6`
3981 _vosrc
="$_vosrc vo_aa.c"
3982 _vomodules
="aa $_vomodules"
3984 _def_aa
='#undef HAVE_AA'
3985 _novomodules
="aa $_novomodules"
3991 if test "$_caca" = auto
; then
3993 if ( caca-config
--version ) >> "$TMPLOG" 2>&1 ; then
3996 int main(void) { (void) caca_init(); return 0; }
3998 cc_check
`caca-config --libs` && _caca
=yes
4001 if test "$_caca" = yes ; then
4002 _def_caca
='#define HAVE_CACA 1'
4003 _inc_caca
=`caca-config --cflags`
4004 _ld_caca
=`caca-config --libs`
4005 _vosrc
="$_vosrc vo_caca.c"
4006 _vomodules
="caca $_vomodules"
4008 _def_caca
='#undef HAVE_CACA'
4009 _novomodules
="caca $_novomodules"
4015 if test "$_svga" = auto
; then
4018 int main(void) { return 0; }
4021 cc_check
-lvga $_ld_lm && _svga
=yes
4023 if test "$_svga" = yes ; then
4024 _def_svga
='#define HAVE_SVGALIB 1'
4026 _vosrc
="$_vosrc vo_svga.c"
4027 _vomodules
="svga $_vomodules"
4029 _def_svga
='#undef HAVE_SVGALIB'
4030 _novomodules
="svga $_novomodules"
4036 if test "$_fbdev" = auto
; then
4038 linux
&& test -c /dev
/fb0
&& _fbdev
=yes
4040 if test "$_fbdev" = yes ; then
4041 _def_fbdev
='#define HAVE_FBDEV 1'
4042 _vosrc
="$_vosrc vo_fbdev.c vo_fbdev2.c"
4043 _vomodules
="fbdev $_vomodules"
4045 _def_fbdev
='#undef HAVE_FBDEV'
4046 _novomodules
="fbdev $_novomodules"
4053 if test "$_dvb" != no
; then
4056 #include <sys/poll.h>
4057 #include <sys/ioctl.h>
4062 #include <ost/dmx.h>
4063 #include <ost/frontend.h>
4064 #include <ost/sec.h>
4065 #include <ost/video.h>
4066 #include <ost/audio.h>
4067 int main(void) {return 0;}
4072 for I
in "$_inc_dvb" "-I/usr/src/DVB/ost/include" ; do
4073 if cc_check
"$I" ; then
4076 _res_comment
="using $_inc_dvb"
4080 test "$_dvb" = no
&& _res_comment
="specify path to DVB/ost/include with --with-dvbincdir=DIR"
4084 if test "$_dvb" = yes ; then
4085 _def_dvb
='#define HAVE_DVB 1'
4086 _def_dvb_in
='#define HAS_DVBIN_SUPPORT 1'
4087 _aomodules
="mpegpes(dvb) $_aomodules"
4088 _vomodules
="mpegpes(dvb) $_vomodules"
4090 if test "$_dvbhead" != no
; then
4091 echocheck
"DVB HEAD"
4092 if test "$_dvbhead" != no
; then
4096 #include <sys/poll.h>
4097 #include <sys/ioctl.h>
4102 #include <linux/dvb/dmx.h>
4103 #include <linux/dvb/frontend.h>
4104 #include <linux/dvb/video.h>
4105 #include <linux/dvb/audio.h>
4106 int main(void) {return 0;}
4111 for I
in "$_inc_dvb" "-I/usr/src/DVB/include" ; do
4112 if cc_check
"$I" ; then
4115 _res_comment
="using $_inc_dvb"
4119 test "$_dvbhead" = no
&& _res_comment
="specify path to DVB/include (HEAD Version) with --with-dvbincdir=DIR"
4123 if test "$_dvbhead" = yes ; then
4124 _def_dvb
='#define HAVE_DVB_HEAD 1'
4125 _def_dvb_in
='#define HAS_DVBIN_SUPPORT 1'
4126 _aomodules
="mpegpes(dvb) $_aomodules"
4127 _vomodules
="mpegpes(dvb) $_vomodules"
4130 if test "$_dvbhead" = no
&& test "$_dvb" = no
; then
4131 _def_dvb
='#undef HAVE_DVB'
4132 _def_dvb_in
='#undef HAS_DVBIN_SUPPORT '
4133 _aomodules
="mpegpes(file) $_aomodules"
4134 _vomodules
="mpegpes(file) $_vomodules"
4137 if test "$_dvb" = yes ||
test "$_dvbhead" = yes ; then
4139 _inputmodules
="dvb $_inputmodules"
4142 _noinputmodules
="dvb $_noinputmodules"
4145 echocheck
"PNG support"
4146 if test "$_png" = auto
; then
4149 # Don't check for -lpng on irix since it has its own libpng
4150 # incompatible with the GNU libpng
4151 _res_comment
="disabled on irix (not GNU libpng)"
4157 printf("png.h : %s\n", PNG_LIBPNG_VER_STRING);
4158 printf("libpng: %s\n", png_libpng_ver);
4159 return (strcmp(PNG_LIBPNG_VER_STRING, png_libpng_ver));
4162 if cc_check
-lpng -lz $_ld_lm ; then
4166 _res_comment
="mismatch of library and header versions"
4172 if test "$_png" = yes ; then
4173 _def_png
='#define HAVE_PNG 1'
4175 _vosrc
="$_vosrc vo_png.c"
4176 _vomodules
="png $_vomodules"
4179 _def_png
='#undef HAVE_PNG'
4180 _novomodules
="png $_novomodules"
4184 echocheck
"JPEG support"
4185 if test "$_jpg" = auto
; then
4192 #include <jpeglib.h>
4197 if cc_check
-ljpeg $_ld_lm ; then
4205 if test "$_jpg" = yes ; then
4206 _def_jpg
='#define HAVE_JPEG 1'
4207 _vosrc
="$_vosrc vo_jpeg.c"
4208 _vomodules
="jpeg $_vomodules"
4212 _def_jpg
='#undef HAVE_JPEG'
4213 _novomodules
="jpeg $_novomodules"
4219 echocheck
"PNM support"
4220 if test "$_pnm" = yes; then
4221 _def_pnm
="#define HAVE_PNM"
4222 _vosrc
="$_vosrc vo_pnm.c"
4223 _vomodules
="pnm $_vomodules"
4225 _def_pnm
="#undef HAVE_PNM"
4226 _novomodules
="pnm $_novomodules"
4232 echocheck
"md5sum support"
4233 if test "$_md5sum" = yes; then
4234 _def_md5sum
="#define HAVE_MD5SUM"
4235 _vosrc
="$_vosrc vo_md5sum.c md5sum.c"
4236 _vomodules
="md5sum $_vomodules"
4238 _def_md5sum
="#undef HAVE_MD5SUM"
4239 _novomodules
="md5sum $_novomodules"
4245 echocheck
"GIF support"
4246 # This is to appease people who want to force gif support.
4247 # If it is forced to yes, then we still do checks to determine
4248 # which gif library to use.
4249 if test "$_gif" = yes ; then
4254 if test "$_gif" = auto
; then
4257 #include <gif_lib.h>
4262 for _ld_tmp
in "-lungif" "-lungif $_ld_x11" "-lgif" "-lgif $_ld_x11" ; do
4263 cc_check
$_ld_tmp && tmp_run
&& _ld_gif
="$_ld_tmp" && _gif
=yes && break
4267 # If no library was found, and the user wants support forced,
4268 # then we force it on with libgif, as this is the safest
4269 # assumption IMHO. (libungif & libregif both create symbolic
4270 # links to libgif. We also assume that no x11 support is needed,
4271 # because if you are forcing this, then you _should_ know what
4272 # you are doing. [ Besides, package maintainers should never
4273 # have compiled x11 deps into libungif in the first place. ] )
4276 if test "$_force_gif" = yes && test "$_gif" = no
; then
4281 if test "$_gif" = yes ; then
4282 _def_gif
='#define HAVE_GIF 1'
4283 _vosrc
="$_vosrc vo_gif89a.c"
4284 _codecmodules
="gif $_codecmodules"
4285 _vomodules
="gif89a $_vomodules"
4287 _gif
="yes (old version, some encoding functions disabled)"
4288 _def_gif_4
='#undef HAVE_GIF_4'
4292 #include <gif_lib.h>
4293 void catch() { exit(1); }
4295 signal(SIGSEGV, catch); // catch segfault
4296 printf("EGifPutExtensionFirst is at address %p\n", EGifPutExtensionFirst);
4297 EGifSetGifVersion("89a"); // this will segfault a buggy gif lib.
4301 if cc_check
"$_ld_gif" && tmp_run
; then
4302 _def_gif_4
='#define HAVE_GIF_4 1'
4306 _def_gif
='#undef HAVE_GIF'
4307 _def_gif_4
='#undef HAVE_GIF_4'
4308 _novomodules
="gif89a $_novomodules"
4309 _nocodecmodules
="gif $_nocodecmodules"
4315 case "$_gif" in yes*)
4316 echocheck
"broken giflib workaround"
4317 _def_gif_tvt_hack
='#define HAVE_GIF_TVT_HACK 1'
4320 #include <gif_lib.h>
4323 printf("UserData is at address %p\n", gif.UserData);
4327 if cc_check
"$_ld_gif" && tmp_run
; then
4328 _def_gif_tvt_hack
='#undef HAVE_GIF_TVT_HACK'
4337 echocheck
"VESA support"
4338 if test "$_vesa" = auto
; then
4341 int main(void) { vbeVersion(); return 0; }
4344 cc_check
-lvbe -llrmi && _vesa
=yes
4346 if test "$_vesa" = yes ; then
4347 _def_vesa
='#define HAVE_VESA 1'
4348 _ld_vesa
="-lvbe -llrmi"
4349 _vosrc
="$_vosrc vo_vesa.c vesa_lvo.c gtf.c"
4350 _vomodules
="vesa $_vomodules"
4352 _def_vesa
='#undef HAVE_VESA'
4353 _novomodules
="vesa $_novomodules"
4363 if test -z "$_sdlconfig" ; then
4364 if ( sdl-config
--version ) >>"$TMPLOG" 2>&1 ; then
4365 _sdlconfig
="sdl-config"
4366 elif ( sdl11-config
--version ) >>"$TMPLOG" 2>&1 ; then
4367 _sdlconfig
="sdl11-config"
4372 if test "$_sdl" = auto ||
test "$_sdl" = yes ; then
4375 int main(int argc, char *argv[]) { return 0; }
4378 if "$_sdlconfig" --version >>"$TMPLOG" 2>&1 ; then
4379 if cc_check
`$_sdlconfig --cflags` `$_sdlconfig --libs` >>"$TMPLOG" 2>&1 ; then
4380 _sdlversion
=`$_sdlconfig --version | sed 's/[^0-9]//g'`
4381 if test "$_sdlversion" -gt 116 ; then
4382 if test "$_sdlversion" -lt 121 ; then
4383 _def_sdlbuggy
='#define BUGGY_SDL'
4385 _def_sdlbuggy
='#undef BUGGY_SDL'
4389 _res_comment
=outdated
4394 if test "$_sdl" = yes ; then
4395 _def_sdl
='#define HAVE_SDL 1'
4397 _ld_sdl
=`$_sdlconfig --libs | cut -d " " -f 1,4,6 | sed s/no-cygwin/cygwin/`
4398 _inc_sdl
=`$_sdlconfig --cflags | cut -d " " -f 1,5,6 | sed s/no-cygwin/cygwin/`
4400 _ld_sdl
=`$_sdlconfig --libs | sed s/-mwindows//`
4401 _inc_sdl
=`$_sdlconfig --cflags | sed s/-Dmain=SDL_main//`
4403 _ld_sdl
=`$_sdlconfig --libs`
4404 _inc_sdl
=`$_sdlconfig --cflags`
4406 _vosrc
="$_vosrc vo_sdl.c"
4407 _vomodules
="sdl $_vomodules"
4408 _aosrc
="$_aosrc ao_sdl.c"
4409 _aomodules
="sdl $_aomodules"
4410 _res_comment
="using $_sdlconfig"
4412 _def_sdl
='#undef HAVE_SDL'
4413 _novomodules
="sdl $_novomodules"
4414 _noaomodules
="sdl $_noaomodules"
4418 echocheck
"Windows waveout"
4419 if test "$_win32waveout" = auto
; then
4421 #include <windows.h>
4422 #include <mmsystem.h>
4423 int main(void) { return 0; }
4426 cc_check
-lwinmm && _win32waveout
=yes
4428 if test "$_win32waveout" = yes ; then
4429 _def_win32waveout
='#define HAVE_WIN32WAVEOUT 1'
4430 _ld_win32libs
="-lwinmm $_ld_win32libs"
4431 _aosrc
="$_aosrc ao_win32.c"
4432 _aomodules
="win32 $_aomodules"
4434 _def_win32waveout
='#undef HAVE_WIN32WAVEOUT'
4435 _noaomodules
="win32 $_noaomodules"
4437 echores
"$_win32waveout"
4440 if test "$_directx" = auto
; then
4442 #include <windows.h>
4445 int main(void) { return 0; }
4448 cc_check
-lgdi32 && _directx
=yes
4450 if test "$_directx" = yes ; then
4451 _def_directx
='#define HAVE_DIRECTX 1'
4452 _ld_win32libs
="-lgdi32 $_ld_win32libs"
4453 _vosrc
="$_vosrc vo_directx.c"
4454 _vomodules
="directx $_vomodules"
4455 _aosrc
="$_aosrc ao_dsound.c"
4456 _aomodules
="dsound $_aomodules"
4458 _def_directx
='#undef HAVE_DIRECTX'
4459 _novomodules
="directx $_novomodules"
4460 _noaomodules
="dsound $_noaomodules"
4465 if test "$_nas" = auto
; then
4467 #include <audio/audiolib.h>
4468 int main(void) { return 0; }
4471 cc_check
-laudio $_inc_x11 -lXt $_ld_x11 $_ld_lm && _nas
=yes
4473 if test "$_nas" = yes ; then
4474 _def_nas
='#define HAVE_NAS 1'
4475 _ld_nas
="-laudio -lXt $_ld_x11"
4476 _aosrc
="$_aosrc ao_nas.c"
4477 _aomodules
="nas $_aomodules"
4479 _noaomodules
="nas $_noaomodules"
4480 _def_nas
='#undef HAVE_NAS'
4485 if test "$_dxr2" = auto
; then
4488 #include <dxr2ioctl.h>
4489 int main(void) { return 0; }
4491 for _inc_dxr2
in "$_inc_dxr2" \
4492 "-I/usr/local/include/dxr2" \
4493 "-I/usr/include/dxr2"; do
4494 cc_check
$_inc_dxr2 && _dxr2
=yes && break
4497 if test "$_dxr2" = yes; then
4498 _def_dxr2
='#define HAVE_DXR2 1'
4499 _vosrc
="$_vosrc vo_dxr2.c"
4500 _aosrc
="$_aosrc ao_dxr2.c"
4501 _aomodules
="dxr2 $_aomodules"
4502 _vomodules
="dxr2 $_vomodules"
4503 _res_comment
="using $_inc_dxr2"
4505 _def_dxr2
='#undef HAVE_DXR2'
4506 _noaomodules
="dxr2 $_noaomodules"
4507 _novomodules
="dxr2 $_novomodules"
4513 if test "$_dxr3" = auto
; then
4515 #include <linux/em8300.h>
4516 int main(void) { return 0; }
4519 cc_check
&& _dxr3
=yes
4521 if test "$_dxr3" = yes ; then
4522 _def_dxr3
='#define HAVE_DXR3 1'
4523 _vosrc
="$_vosrc vo_dxr3.c"
4524 _vomodules
="dxr3 $_vomodules"
4526 _def_dxr3
='#undef HAVE_DXR3'
4527 _novomodules
="dxr3 $_novomodules"
4528 if test "$_mp1e" = auto
; then
4529 # we don't need mp1e
4536 if test "$_mmx" = no
; then
4537 # mp1e REQUIRES mmx!
4540 if test "$_mp1e" != no
; then
4542 _def_mp1e
='#define USE_MP1E'
4543 _ld_mp1e
='libmp1e/libmp1e.a'
4544 _dep_mp1e
='libmp1e/libmp1e.a'
4547 _def_mp1e
='#undef USE_MP1E'
4555 if test "$_fame" = auto
; then
4557 test "$_dxr2" = yes && _fame
=auto
4558 test "$_dxr3" = yes && _fame
=auto
4559 test "$_dvb" = yes && _fame
=auto
4561 if test "$_fame" = auto
; then
4563 if test -d libfame
&& test -f libfame
/fame.h
; then
4564 # disable fame on cygwin as no sense to port - atmos
4567 _res_comment
="no fame dir"
4572 _def_fame
='#undef USE_LIBFAME'
4573 if test "$_fame" = yes ; then
4574 _def_fame
='#define USE_LIBFAME 1'
4575 _ld_fame
='libfame/libfame.a'
4584 echocheck
"OSS Audio"
4585 if test "$_ossaudio" = auto
; then
4587 #include <sys/ioctl.h>
4589 int main(void) { int arg = SNDCTL_DSP_SETFRAGMENT; return 0; }
4592 cc_check
&& _ossaudio
=yes
4594 if test "$_ossaudio" = yes ; then
4595 _def_ossaudio
='#define USE_OSS_AUDIO 1'
4596 _aosrc
="$_aosrc ao_oss.c"
4597 _aomodules
="oss $_aomodules"
4598 if test "$_linux_devfs" = yes; then
4599 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound/dsp"'
4600 _def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/sound/mixer"'
4603 #include <sys/ioctl.h>
4605 #ifdef OPEN_SOUND_SYSTEM
4606 int main(void) { return 0; }
4608 #error Not the real thing
4612 cc_check
&& _real_ossaudio
=yes
4613 if test "$_real_ossaudio" = yes; then
4614 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
4615 elif netbsd || openbsd
; then
4616 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound"'
4617 _ld_arch
="$_ld_arch -lossaudio"
4619 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
4621 _def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/mixer"'
4624 _def_ossaudio
='#undef USE_OSS_AUDIO'
4625 _def_ossaudio_devdsp
='#define PATH_DEV_DSP ""'
4626 _def_ossaudio_devmixer
='#define PATH_DEV_MIXER ""'
4627 _noaomodules
="oss $_noaomodules"
4629 echores
"$_ossaudio"
4633 if test "$_arts" = auto
; then
4635 if ( artsc-config
--version ) >> "$TMPLOG" 2>&1 ; then
4639 int main(void) { return 0; }
4641 cc_check
`artsc-config --libs` `artsc-config --cflags` && tmp_run
&& _arts
=yes
4646 if test "$_arts" = yes ; then
4647 _def_arts
='#define USE_ARTS 1'
4648 _aosrc
="$_aosrc ao_arts.c"
4649 _aomodules
="arts $_aomodules"
4650 _ld_arts
=`artsc-config --libs`
4651 _inc_arts
=`artsc-config --cflags`
4653 _noaomodules
="arts $_noaomodules"
4659 if test "$_esd" = auto
; then
4661 if ( esd-config
--version ) >> "$TMPLOG" 2>&1 ; then
4665 int main(void) { return 0; }
4667 cc_check
`esd-config --libs` `esd-config --cflags` && tmp_run
&& _esd
=yes
4673 if test "$_esd" = yes ; then
4674 _def_esd
='#define USE_ESD 1'
4675 _aosrc
="$_aosrc ao_esd.c"
4676 _aomodules
="esd $_aomodules"
4677 _ld_esd
=`esd-config --libs`
4678 _inc_esd
=`esd-config --cflags`
4680 echocheck
"esd_get_latency()"
4683 int main(void) { return esd_get_latency(0); }
4685 cc_check
`esd-config --libs` `esd-config --cflags` && _esd_latency
=yes && _def_esd_latency
='#define HAVE_ESD_LATENCY'
4686 echores
"$_esd_latency"
4688 _def_esd
='#undef USE_ESD'
4689 _def_esd_latency
='#undef HAVE_ESD_LATENCY'
4690 _noaomodules
="esd $_noaomodules"
4694 if test "$_polyp" = auto
; then
4696 if ( pkg-config
--exists 'polyplib >= 0.6 polyplib-error >= 0.6 polyplib-mainloop >= 0.6' ) >> "$TMPLOG" 2>&1 ; then
4699 #include <polyp/polyplib.h>
4700 #include <polyp/mainloop.h>
4701 #include <polyp/polyplib-error.h>
4702 int main(void) { return 0; }
4704 cc_check
`pkg-config --libs --cflags polyplib polyplib-error polyplib-mainloop` && tmp_run
&& _polyp
=yes
4710 if test "$_polyp" = yes ; then
4711 _def_polyp
='#define USE_POLYP 1'
4712 _aosrc
="$_aosrc ao_polyp.c"
4713 _aomodules
="polyp $_aomodules"
4714 _ld_polyp
=`pkg-config --libs polyplib polyplib-error polyplib-mainloop`
4715 _inc_polyp
=`pkg-config --cflags polyplib polyplib-error polyplib-mainloop`
4717 _def_polyp
='#undef USE_POLYP'
4718 _noaomodules
="polyp $_noaomodules"
4723 if test "$_jack" = auto
; then
4727 #include <jack/jack.h>
4728 int main(void) { jack_client_new("test"); return 0; }
4730 if cc_check
-ljack ; then
4732 elif cc_check
`pkg-config --libs --cflags --silence-errors jack` ; then
4733 _ld_jack
="`pkg-config --libs jack`"
4734 _inc_jack
="`pkg-config --cflags jack`"
4740 if test "$_jack" = yes ; then
4741 _def_jack
='#define USE_JACK 1'
4742 _aosrc
="$_aosrc ao_jack.c"
4743 _aomodules
="jack $_aomodules"
4745 _noaomodules
="jack $_noaomodules"
4750 echocheck
"ALSA audio"
4751 if test "$_alsa" != no
; then
4754 #include <sys/asoundlib.h>
4755 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 5))
4756 #error "alsa version != 0.5.x"
4758 int main(void) { return 0; }
4760 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.5.x'
4763 #include <sys/asoundlib.h>
4764 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
4765 #error "alsa version != 0.9.x"
4767 int main(void) { return 0; }
4769 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.9.x-sys'
4771 #include <alsa/asoundlib.h>
4772 #if !((SND_LIB_MAJOR == 0) && (SND_LIB_MINOR == 9))
4773 #error "alsa version != 0.9.x"
4775 int main(void) { return 0; }
4777 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='0.9.x-alsa'
4780 #include <sys/asoundlib.h>
4781 #if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
4782 #error "alsa version != 1.0.x"
4784 int main(void) { return 0; }
4786 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='1.0.x-sys'
4788 #include <alsa/asoundlib.h>
4789 #if !((SND_LIB_MAJOR == 1) && (SND_LIB_MINOR == 0))
4790 #error "alsa version != 1.0.x"
4792 int main(void) { return 0; }
4794 cc_check
-lasound $_ld_dl $_ld_pthread && _alsaver
='1.0.x-alsa'
4796 _def_alsa5
='#undef HAVE_ALSA5'
4797 _def_alsa9
='#undef HAVE_ALSA9'
4798 _def_alsa1x
='#undef HAVE_ALSA1X'
4799 _def_sys_asoundlib_h
='#undef HAVE_SYS_ASOUNDLIB_H'
4800 _def_alsa_asoundlib_h
='#undef HAVE_ALSA_ASOUNDLIB_H'
4801 if test "$_alsaver" ; then
4803 if test "$_alsaver" = '0.5.x' ; then
4804 _aosrc
="$_aosrc ao_alsa5.c"
4805 _aomodules
="alsa5 $_aomodules"
4806 _def_alsa5
='#define HAVE_ALSA5 1'
4807 _def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
4808 _res_comment
="using alsa 0.5.x and sys/asoundlib.h"
4809 elif test "$_alsaver" = '0.9.x-sys' ; then
4810 _aosrc
="$_aosrc ao_alsa.c"
4811 _aomodules
="alsa $_aomodules"
4812 _def_alsa9
='#define HAVE_ALSA9 1'
4813 _def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
4814 _res_comment
="using alsa 0.9.x and sys/asoundlib.h"
4815 elif test "$_alsaver" = '0.9.x-alsa' ; then
4816 _aosrc
="$_aosrc ao_alsa.c"
4817 _aomodules
="alsa $_aomodules"
4818 _def_alsa9
='#define HAVE_ALSA9 1'
4819 _def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
4820 _res_comment
="using alsa 0.9.x and alsa/asoundlib.h"
4821 elif test "$_alsaver" = '1.0.x-sys' ; then
4822 _aosrc
="$_aosrc ao_alsa.c"
4823 _aomodules
="alsa $_aomodules"
4824 _def_alsa1x
="#define HAVE_ALSA1X 1"
4825 _def_alsa_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
4826 _res_comment
="using alsa 1.0.x and sys/asoundlib.h"
4827 elif test "$_alsaver" = '1.0.x-alsa' ; then
4828 _aosrc
="$_aosrc ao_alsa.c"
4829 _aomodules
="alsa $_aomodules"
4830 _def_alsa1x
="#define HAVE_ALSA1X 1"
4831 _def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
4832 _res_comment
="using alsa 1.0.x and alsa/asoundlib.h"
4835 _res_comment
="unknown version"
4837 _ld_alsa
="-lasound $_ld_dl $_ld_pthread"
4839 _noaomodules
="alsa $_noaomodules"
4844 echocheck
"Sun audio"
4845 if test "$_sunaudio" = auto
; then
4847 #include <sys/types.h>
4848 #include <sys/audioio.h>
4849 int main(void) { audio_info_t info; AUDIO_INITINFO(&info); return 0; }
4852 cc_check
&& _sunaudio
=yes
4854 if test "$_sunaudio" = yes ; then
4855 _def_sunaudio
='#define USE_SUN_AUDIO 1'
4856 _aosrc
="$_aosrc ao_sun.c"
4857 _aomodules
="sun $_aomodules"
4859 _def_sunaudio
='#undef USE_SUN_AUDIO'
4860 _noaomodules
="sun $_noaomodules"
4862 echores
"$_sunaudio"
4865 echocheck
"Sun mediaLib"
4866 if test "$_mlib" = auto
; then
4868 test -z "$_mlibdir" && _mlibdir
=/opt
/SUNWmlib
4871 int main(void) { mlib_VideoColorYUV2ABGR420(0,0,0,0,0,0,0,0,0); return 0; }
4873 cc_check
-I${_mlibdir}/include
-L${_mlibdir}/lib
-lmlib && _mlib
=yes
4875 if test "$_mlib" = yes ; then
4876 _def_mlib
='#define HAVE_MLIB 1'
4877 _inc_mlib
=" -I${_mlibdir}/include "
4878 _ld_mlib
=" -L${_mlibdir}/lib -R${_mlibdir}/lib -lmlib "
4880 _def_mlib
='#undef HAVE_MLIB'
4885 echocheck
"SGI audio"
4886 if test "$_sgiaudio" = auto
; then
4887 # check for SGI audio
4889 #include <dmedia/audio.h>
4890 int main(void) { return 0; }
4893 cc_check
&& _sgiaudio
=yes
4895 if test "$_sgiaudio" = "yes" ; then
4896 _def_sgiaudio
='#define USE_SGI_AUDIO 1'
4897 _ld_sgiaudio
='-laudio'
4898 _aosrc
="$_aosrc ao_sgi.c"
4899 _aomodules
="sgi $_aomodules"
4901 _def_sgiaudio
='#undef USE_SGI_AUDIO'
4902 _noaomodules
="sgi $_noaomodules"
4904 echores
"$_sgiaudio"
4907 echocheck
"VCD support"
4908 if linux || bsdos || freebsd || netbsd || sunos || darwin
; then
4909 _inputmodules
="vcd $_inputmodules"
4910 _def_vcd
='#define HAVE_VCD 1'
4913 _def_vcd
='#undef HAVE_VCD'
4914 _noinputmodules
="vcd $_noinputmodules"
4915 echores
"not supported on this OS"
4918 echocheck
"DVD support (libmpdvdkit)"
4919 if test "$_dvdkit" = auto
; then
4921 if linux || freebsd || netbsd || darwin || openbsd || win32 || sunos || hpux
; then
4922 test -f "./libmpdvdkit2/Makefile" && _dvdkit
=yes
4923 test -f "./libmpdvdkit/Makefile" && _dvdkit
=yes
4926 if test "$_dvdkit" = yes ; then
4927 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
4928 if test -f "./libmpdvdkit2/Makefile" ; then
4929 _inputmodules
="mpdvdkit2 $_inputmodules"
4930 _dvdread
=libmpdvdkit2
4934 _inputmodules
="mpdvdkit $_inputmodules"
4935 _dvdread
=libmpdvdkit
4938 _noinputmodules
="mpdvdkit $_noinputmodules"
4940 _def_dvd_linux
='#undef HAVE_LINUX_DVD_STRUCT'
4941 _def_dvd_bsd
='#undef HAVE_BSD_DVD_STRUCT'
4942 _dev_dvd_openbsd
='#undef HAVE_OPENBSD_DVD_STRUCT'
4943 _def_dvd_darwin
='#undef DARWIN_DVD_IOCTL'
4944 if linux || netbsd || openbsd || bsdos
; then
4945 _def_dvd_linux
='#define HAVE_LINUX_DVD_STRUCT 1'
4947 _dev_dvd_openbsd
='#define HAVE_OPENBSD_DVD_STRUCT 1'
4951 _def_dvd_bsd
='#define HAVE_BSD_DVD_STRUCT 1'
4954 _def_dvd_darwin
='#define DARWIN_DVD_IOCTL'
4959 _noinputmodules
="mpdvdkit $_noinputmodules"
4961 if test "$_dvdkit" = yes ||
test "$_dvdkit2" = yes; then
4967 echocheck
"DVD support (libdvdread)"
4968 if test "$_dvdread" = auto
; then
4970 #include <inttypes.h>
4971 #include <dvdread/dvd_reader.h>
4972 #include <dvdread/ifo_types.h>
4973 #include <dvdread/ifo_read.h>
4974 #include <dvdread/nav_read.h>
4975 int main(void) { return 0; }
4978 if test "$_dl" = yes; then
4980 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -ldvdread $_ld_dl && \
4984 _def_mpdvdkit
="#undef USE_MPDVDKIT"
4988 _def_dvdread
='#define USE_DVDREAD 1'
4989 _ld_dvdread
='-ldvdread'
4990 _inputmodules
="dvdread $_inputmodules"
4994 _def_dvdread
='#undef USE_DVDREAD'
4995 _noinputmodules
="dvdread $_noinputmodules"
5000 _def_dvdread
='#define USE_DVDREAD 1'
5001 _ld_dvdread
='-Llibmpdvdkit -lmpdvdkit'
5002 _noinputmodules
="dvdread $_noinputmodules"
5003 _def_mpdvdkit
="#define USE_MPDVDKIT 1"
5004 echores
"disabled by libmpdvdkit"
5008 _def_dvdread
='#define USE_DVDREAD 1'
5009 _ld_dvdread
='-Llibmpdvdkit2 -lmpdvdkit'
5010 _noinputmodules
="dvdread $_noinputmodules"
5011 _def_mpdvdkit
="#define USE_MPDVDKIT 2"
5012 echores
"disabled by libmpdvdkit2"
5016 # dvdnav disabled, it does not work
5017 # echocheck "DVD support (libdvdnav)"
5018 # if test "$_dvdnav" = yes ; then
5020 # #include <dvdnav.h>
5021 # int main(void) { dvdnav_t *dvd=0; return 0; }
5024 # test -n "$_dvdnavdir" && _legal_dvdnavdir=-L$_dvdnavdir/.libs
5025 # if test -z "$_dvdnavconfig" ; then
5026 # if ( dvdnav-config --version ) >/dev/null 2>&1 ; then
5027 # _dvdnavconfig="dvdnav-config"
5030 # test -z "$_dvdnavdir" && test -n "$_dvdnavconfig" && _dvdnavdir=`$_dvdnavconfig --cflags`
5032 # test "$_dvdkit" = no && test "$_dvdkit2" = no && _used_css=$_ld_css
5033 # cc_check $_inc_extra -I$_dvdnavdir $_legal_dvdnavdir -ldvdnav $_used_css $_ld_dl $_ld_pthread && _dvdnav=yes
5035 # if test "$_dvdnav" = yes ; then
5037 # _def_dvdnav='#define USE_DVDNAV 1'
5038 # if test -n "$_legal_dvdnavdir" ; then
5039 # _ld_css="$_ld_css $_legal_dvdnavdir -ldvdnav"
5040 # elif test -n "$_dvdnavconfig" ; then
5041 # _ld_css="$_ld_css `$_dvdnavconfig --libs`"
5043 # _ld_css="$_ld_css -ldvdnav"
5045 # if test -n "$_dvdnavconfig" ; then
5046 # _dvdnav_version=`$_dvdnavconfig --version | sed "s/\.//g"`
5047 # _def_dvdnav_version="#define DVDNAVVERSION $_dvdnav_version"
5049 # if test -n "$_dvdnavdir" ; then
5050 # _inc_extra="$_inc_extra -I$_dvdnavdir"
5052 # _inputmodules="dvdnav $_inputmodules"
5055 # _def_dvdnav='#undef USE_DVDNAV'
5056 # _noinputmodules="dvdnav $_noinputmodules"
5060 echocheck
"cdparanoia"
5061 if test "$_cdparanoia" = auto
; then
5063 #include <cdda_interface.h>
5064 #include <cdda_paranoia.h>
5065 // This need a better test. How ?
5066 int main(void) { return 1; }
5069 for _inc_tmp
in "$_inc_cdparanoia" "-I/usr/include/cdda" "-I/usr/local/include/cdda" ; do
5070 cc_check
$_inc_tmp $_ld_cdparanoia -lcdda_interface -lcdda_paranoia $_ld_lm && _inc_cdparanoia
="$_inc_tmp" && _cdparanoia
=yes && break
5073 if test "$_cdparanoia" = yes ; then
5074 _def_cdparanoia
='#define HAVE_CDDA'
5075 _inputmodules
="cdda $_inputmodules"
5076 _ld_cdparanoia
="$_ld_cdparanoia -lcdda_interface -lcdda_paranoia"
5077 openbsd
&& _ld_cdparanoia
="$_ld_cdparanoia -lutil"
5079 _def_cdparanoia
='#undef HAVE_CDDA'
5080 _noinputmodules
="cdda $_noinputmodules"
5082 echores
"$_cdparanoia"
5086 if test "$_libcdio" = auto
&& test "$_cdparanoia" = no
; then
5087 if ( pkg-config
--modversion libcdio
) > /dev
/null
2>&1 ; then
5090 #include <cdio/version.h>
5091 #include <cdio/cdda.h>
5092 #include <cdio/paranoia.h>
5095 printf("%s\n", CDIO_VERSION);
5101 for _inc_tmp
in "$_inc_libcdio" "-I/usr/include/cdio" "-I/usr/local/include/cdio" ; do
5102 cc_check
`pkg-config --cflags --libs libcdio` $_inc_tmp $_ld_libcdio -lcdio_cdda -lcdio_paranoia $_ld_lm && _inc_libcdio
="$_inc_tmp" && ( $TMPO >> "$TMPLOG" ) && _libcdio
=yes && break
5108 if test "$_libcdio" = yes && test "$_cdparanoia" = no
; then
5109 _def_libcdio
='#define HAVE_LIBCDIO'
5110 _def_cdparanoia
='#define HAVE_CDDA'
5111 _def_havelibcdio
='yes'
5112 _inputmodules
="cdda $_inputmodules"
5113 _inc_libcdio
=`pkg-config --cflags libcdio`
5114 _ld_libcdio
=`pkg-config --libs libcdio`
5115 _ld_cdparanoia
="$_ld_cdparanoia -lcdio_cdda -lcdio_paranoia -lcdio"
5117 if test "$_cdparanoia" = yes ; then
5118 _libcdio
="no (using cdparanoia)"
5122 _def_libcdio
='#undef HAVE_LIBCDIO'
5123 _def_havelibcdio
='no'
5128 echocheck
"freetype >= 2.0.9"
5130 # freetype depends on iconv
5131 if test "$_iconv" = no
; then
5133 _res_comment
="iconv support needed"
5136 if test "$_freetype" = auto
; then
5137 if ( $_freetypeconfig --version ) >/dev
/null
2>&1 ; then
5140 #include <ft2build.h>
5141 #include FT_FREETYPE_H
5142 #if ((FREETYPE_MAJOR < 2) || ((FREETYPE_MINOR == 0) && (FREETYPE_PATCH < 9)))
5143 #error "Need FreeType 2.0.9 or newer"
5148 FT_Int major=-1,minor=-1,patch=-1;
5149 int err=FT_Init_FreeType(&library);
5151 printf("Couldn't initialize freetype2 lib, err code: %d\n",err);
5154 FT_Library_Version(library,&major,&minor,&patch); // in v2.1.0+ only :(((
5155 printf("freetype2 header version: %d.%d.%d library version: %d.%d.%d\n",
5156 FREETYPE_MAJOR,FREETYPE_MINOR,FREETYPE_PATCH,
5157 (int)major,(int)minor,(int)patch );
5158 if(major!=FREETYPE_MAJOR || minor!=FREETYPE_MINOR){
5159 printf("Library and header version mismatch! Fix it in your distribution!\n");
5166 cc_check
`$_freetypeconfig --cflags` `$_freetypeconfig --libs` && tmp_run
&& _freetype
=yes
5171 if test "$_freetype" = yes ; then
5172 _def_freetype
='#define HAVE_FREETYPE'
5173 _inc_freetype
=`$_freetypeconfig --cflags`
5174 _ld_freetype
=`$_freetypeconfig --libs`
5176 _def_freetype
='#undef HAVE_FREETYPE'
5178 echores
"$_freetype"
5180 if test "$_freetype" = no
; then
5182 _res_comment
="freetype support needed"
5184 echocheck
"fontconfig"
5185 if test "$_fontconfig" = auto
; then
5188 #include <fontconfig/fontconfig.h>
5193 printf("Couldn't initialize fontconfig lib\n");
5201 if cc_check
-lfontconfig ; then
5202 _ld_fontconfig
="-lfontconfig"
5203 elif cc_check
`pkg-config --cflags --libs fontconfig` ; then
5204 _inc_fontconfig
=`pkg-config --cflags fontconfig`
5205 _ld_fontconfig
=`pkg-config --libs fontconfig`
5210 if test "$_fontconfig" = yes ; then
5211 _def_fontconfig
='#define HAVE_FONTCONFIG'
5213 _def_fontconfig
='#undef HAVE_FONTCONFIG'
5215 echores
"$_fontconfig"
5217 echocheck
"fribidi with charsets"
5218 if test "$_fribidi" = yes ; then
5219 if ( $_fribidiconfig --version ) >/dev
/null
2>&1 ; then
5222 /* workaround for fribidi 0.10.4 and below */
5223 #define FRIBIDI_CHARSET_UTF8 FRIBIDI_CHAR_SET_UTF8
5224 #include <fribidi/fribidi.h>
5227 if(fribidi_parse_charset("UTF-8") != FRIBIDI_CHAR_SET_UTF8) {
5228 printf("Fribidi headers are not consistents with the library!\n");
5235 cc_check
`$_fribidiconfig --cflags` `$_fribidiconfig --libs` && tmp_run
&& _fribidi
=yes
5240 if test "$_fribidi" = yes ; then
5241 _def_fribidi
='#define USE_FRIBIDI'
5242 _inc_fribidi
=`$_fribidiconfig --cflags`
5243 _ld_fribidi
=`$_fribidiconfig --libs`
5245 _def_fribidi
='#undef USE_FRIBIDI'
5251 if test "$_enca" = auto
; then
5258 langs = enca_get_languages(&langcnt);
5263 cc_check
-lenca $_ld_lm && _enca
=yes
5265 if test "$_enca" = yes ; then
5266 _def_enca
='#define HAVE_ENCA 1'
5269 _def_enca
='#undef HAVE_ENCA'
5277 int main(void) { (void) inflate(0, Z_NO_FLUSH); return 0; }
5280 cc_check
-lz && _zlib
=yes
5281 if test "$_zlib" = yes ; then
5282 _def_zlib
='#define HAVE_ZLIB 1'
5285 _def_zlib
='#undef HAVE_ZLIB'
5291 if test "$_rtc" = auto
; then
5293 #include <sys/ioctl.h>
5295 #include <linux/rtc.h>
5298 #define RTC_PIE_ON RTCIO_PIE_ON
5300 int main(void) { return RTC_PIE_ON; }
5303 cc_check
&& _rtc
=yes
5305 if test "$_rtc" = yes ; then
5306 _def_rtc
='#define HAVE_RTC 1'
5308 _def_rtc
='#undef HAVE_RTC'
5313 echocheck
"external liblzo support"
5314 if test "$_liblzo" = auto
; then
5318 int main(void) { lzo_init();return 0; }
5320 cc_check
-llzo && _liblzo
=yes
5322 if test "$_liblzo" = yes ; then
5323 _def_liblzo
='#define USE_LIBLZO 1'
5325 _codecmodules
="liblzo $_codecmodules"
5327 _def_liblzo
='#undef USE_LIBLZO'
5328 _nocodecmodules
="liblzo $_nocodecmodules"
5333 echocheck
"mad support"
5334 if test "$_mad" = auto
; then
5338 int main(void) { return 0; }
5340 cc_check
$_madlibdir -lmad && _mad
=yes
5342 if test "$_mad" = yes ; then
5343 _def_mad
='#define USE_LIBMAD 1'
5345 _codecmodules
="libmad $_codecmodules"
5347 _def_mad
='#undef USE_LIBMAD'
5348 _nocodecmodules
="libmad $_nocodecmodules"
5353 if test "$_toolame" = auto
; then
5355 #include <toolame.h>
5356 int main(void) { toolame_init(); return 0; }
5359 _toolame_extraflags
=""
5360 _toolame_lib
="-ltoolame"
5361 if test -n "$_toolamedir"; then
5362 _toolame_extraflags
="-I$_toolamedir -L$_toolamedir"
5364 cc_check
$_toolame_extraflags $_toolame_lib $_ld_lm && _toolame
=yes
5366 if test "$_toolame" = yes ; then
5367 _def_toolame
='#define HAVE_TOOLAME 1'
5368 _codecmodules
="$_codecmodules toolame"
5370 _def_toolame
='#undef HAVE_TOOLAME'
5372 _nocodecmodules
="toolame $_nocodecmodules"
5374 if test "$_toolamedir" ; then
5375 _res_comment
="using $_toolamedir"
5380 if test "$_twolame" = auto
; then
5382 #include <twolame.h>
5383 int main(void) { twolame_init(); return 0; }
5386 _twolame_lib
="-ltwolame"
5387 cc_check
$_twolame_lib $_ld_lm && _twolame
=yes
5389 if test "$_twolame" = yes ; then
5390 _def_twolame
='#define HAVE_TWOLAME 1'
5391 _codecmodules
="$_codecmodules twolame"
5393 _def_twolame
='#undef HAVE_TWOLAME'
5395 _nocodecmodules
="twolame $_nocodecmodules"
5399 echocheck
"OggVorbis support"
5400 if test "$_tremor_internal" = yes; then
5402 elif test "$_vorbis" = auto
; then
5405 #include <vorbis/codec.h>
5406 int main(void) { vorbis_packet_blocksize(0,0); return 0; }
5408 cc_check
-lvorbis -logg $_ld_lm && _vorbis
=yes
5410 if test "$_vorbis" = yes ; then
5411 _def_vorbis
='#define HAVE_OGGVORBIS 1'
5412 if test "$_tremor_internal" = yes ; then
5413 # do not set _ld_vorbis as it is resolved separately
5414 # mp3lame support for vorbis is deprecated so don't care
5415 _def_tremor
='#define TREMOR 1'
5416 if test "$_tremor_low" = yes ; then
5417 _tremor_flags
='-D_LOW_ACCURACY_'
5421 _codecmodules
="tremor(internal) $_codecmodules"
5422 elif test "$_tremor" = yes ; then
5423 _def_tremor
='#define TREMOR 1'
5424 _ld_vorbis
='-lvorbisidec'
5425 _codecmodules
="tremor $_codecmodules"
5427 _def_tremor
='#undef TREMOR'
5428 _ld_vorbis
='-lvorbis -logg'
5429 _codecmodules
="libvorbis $_codecmodules"
5432 _def_vorbis
='#undef HAVE_OGGVORBIS'
5433 _def_tremor
='#undef TREMOR'
5434 _nocodecmodules
="libvorbis $_nocodecmodules"
5436 if test "$_vorbis" = yes -a "$_tremor_internal" = yes -a "$_tremor_low" = yes ; then
5437 _res_comment
="internal low accuracy Tremor"
5438 elif test "$_vorbis" = yes -a "$_tremor_internal" = yes ; then
5439 _res_comment
="internal Tremor"
5440 elif test "$_vorbis" = yes -a "$_tremor" = yes ; then
5441 _res_comment
="Tremor"
5445 echocheck
"libspeex (version >= 1.1 required)"
5446 if test "$_speex" = auto
; then
5449 #include <speex/speex.h>
5453 speex_decode_int(dec, &bits, dec);
5456 cc_check
-lspeex $_ld_lm && _speex
=yes
5458 if test "$_speex" = yes ; then
5459 _def_speex
='#define HAVE_SPEEX 1'
5461 _codecmodules
="speex $_codecmodules"
5463 _def_speex
='#undef HAVE_SPEEX'
5464 _nocodecmodules
="speex $_nocodecmodules"
5468 echocheck
"OggTheora support"
5469 if test "$_theora" = auto
; then
5472 #include <theora/theora.h>
5476 /* theora is in flux, make sure that all interface routines and
5477 * datatypes exist and work the way we expect it, so we don't break
5487 theora_info_init (&inf);
5488 theora_comment_init (&tc);
5492 /* we don't want to execute this kind of nonsense; just for making sure
5493 * that compilation works... */
5494 memset(&op, 0, sizeof(op));
5495 r = theora_decode_header (&inf, &tc, &op);
5496 r = theora_decode_init (&st, &inf);
5497 t = theora_granule_time (&st, op.granulepos);
5498 r = theora_decode_packetin (&st, &op);
5499 r = theora_decode_YUVout (&st, &yuv);
5505 for _ld_theora
in "`pkg-config --silence-errors --libs --cflags theora`" "-ltheora"; do
5506 cc_check
$_ld_theora && _theora
=yes && break
5508 if test "$_theora" = no
&& test "$_tremor_internal" = yes; then
5509 for _ld_theora
in "`pkg-config --silence-errors --libs --cflags theora`" "-ltheora"; do
5510 cc_check
-I. tremor
/bitwise.c
$_ld_theora && _theora
=yes && break
5514 if test "$_theora" = yes ; then
5515 _def_theora
='#define HAVE_OGGTHEORA 1'
5516 _codecmodules
="libtheora $_codecmodules"
5518 _def_theora
='#undef HAVE_OGGTHEORA'
5519 _nocodecmodules
="libtheora $_nocodecmodules"
5524 echocheck
"mp3lib support"
5525 if test "$_mp3lib" = yes ; then
5526 _def_mp3lib
='#define USE_MP3LIB 1'
5527 _codecmodules
="mp3lib $_codecmodules"
5529 _def_mp3lib
='#undef USE_MP3LIB'
5530 _nocodecmodules
="mp3lib $_nocodecmodules"
5534 echocheck
"liba52 support"
5535 if test "$_liba52" = yes ; then
5536 _def_liba52
='#define USE_LIBA52 1'
5537 _codecmodules
="liba52 $_codecmodules"
5539 _def_liba52
='#undef USE_LIBA52'
5540 _nocodecmodules
="liba52 $_nocodecmodules"
5544 echocheck
"libdts support"
5545 if test "$_libdts" = auto
; then
5548 #include <inttypes.h>
5550 int main(void) { dts_init (0); return 0; }
5552 cc_check
$_inc_libdts $_ld_libdts -ldts $_ld_lm && _libdts
=yes
5554 if test "$_libdts" = yes ; then
5555 _def_libdts
='#define CONFIG_DTS 1'
5556 _ld_libdts
="$_ld_libdts -ldts"
5557 _codecmodules
="libdts $_codecmodules"
5559 _def_libdts
='#undef CONFIG_DTS'
5560 _nocodecmodules
="libdts $_nocodecmodules"
5564 echocheck
"libmpeg2 support"
5565 if test "$_libmpeg2" = yes ; then
5566 _def_libmpeg2
='#define USE_LIBMPEG2 1'
5567 _codecmodules
="libmpeg2 $_codecmodules"
5569 _def_libmpeg2
='#undef USE_LIBMPEG2'
5570 _nocodecmodules
="libmpeg2 $_nocodecmodules"
5572 echores
"$_libmpeg2"
5574 echocheck
"libmpcdec (musepack, version >= 1.2.1 required)"
5575 if test "$_musepack" = auto
; then
5578 #include <mpcdec/mpcdec.h>
5580 mpc_streaminfo info;
5581 mpc_decoder decoder;
5582 mpc_decoder_set_streaminfo(&decoder, &info);
5583 mpc_decoder_decode_frame(&decoder, NULL, 0, NULL);
5586 cc_check
-lmpcdec $_ld_lm && _musepack
=yes
5588 if test "$_musepack" = yes ; then
5589 _def_musepack
='#define HAVE_MUSEPACK 1'
5590 _ld_musepack
='-lmpcdec'
5591 _codecmodules
="musepack $_codecmodules"
5593 _def_musepack
='#undef HAVE_MUSEPACK'
5594 _nocodecmodules
="musepack $_nocodecmodules"
5596 echores
"$_musepack"
5599 echocheck
"Matroska support"
5600 if test "$_matroska_internal" = yes ; then
5601 _inputmodules
="matroska $_inputmodules"
5602 _def_matroska
='#define HAVE_MATROSKA 1'
5604 _noinputmodules
="matroska $_noinputmodules"
5605 _def_matroska
='#undef HAVE_MATROSKA'
5607 echores
"$_matroska_internal"
5609 echocheck
"FAAC (AAC encoder) support"
5610 if test "$_faac" = auto
; then
5612 #include <inttypes.h>
5614 int main(void) { unsigned long x, y; faacEncOpen(48000, 2, &x, &y); return 0; }
5617 for _ld_tmp
in "-lfaac" "-lfaac -lmp4v2 -lstdc++" ; do
5618 cc_check
-c -O4 $_ld_tmp $_ld_lm && _ld_faac
="$_ld_tmp" && _faac
=yes && break
5621 if test "$_faac" = yes ; then
5622 _def_faac
="#define HAVE_FAAC 1"
5623 _codecmodules
="faac $_codecmodules"
5625 _def_faac
="#undef HAVE_FAAC"
5626 _nocodecmodules
="faac $_nocodecmodules"
5630 echocheck
"internal FAAD2 (AAC) support"
5631 _inc_faad
="-I`pwd`/libfaad2"
5632 if test "$_faad_internal" = auto
; then
5633 # the faad check needs a config.h file
5634 if not
test -f "config.h" ; then
5635 cat > config.h
<< EOF
5636 /* C99 lrintf function available */
5640 # internal faad: check if our dear gcc is able to compile it...
5641 cp "`pwd`/libfaad2/cfft.c" $TMPC
5642 if ( cc_check
-c -O4 $_march $_mcpu $_pipe -ffast-math -fomit-frame-pointer -D_GNU_SOURCE $_inc_faad ); then
5645 _faad_internal
="no (broken gcc)"
5648 if test "$_faad_internal" = yes ; then
5649 _def_faad_internal
="#define USE_INTERNAL_FAAD 1"
5652 _def_faad_internal
="#undef USE_INTERNAL_FAAD"
5655 echores
"$_faad_internal"
5658 echocheck
"external FAAD2 (AAC) support"
5659 if test "$_faad_external" != no
; then
5661 _inc_faad
="$_inc_extra"
5662 # external faad: check if it's really faad2 :)
5663 if test "$_faad_external" = auto
; then
5667 #ifndef FAAD_MIN_STREAMSIZE
5668 #error Too old version
5670 int main(void) { faacDecHandle testhand; faacDecFrameInfo testinfo; testhand = faacDecOpen(); faacDecInit(0, 0, 0, 0, 0); return 0; }
5672 cc_check
$_inc_faad $_ld_faad $_ld_lm && _faad_external
=yes
5675 echores
"$_faad_external"
5677 if test "$_faad_external" = yes; then
5678 _def_faad
='#define HAVE_FAAD 1'
5679 _codecmodules
="faad2(external) $_codecmodules"
5680 elif test "$_faad_internal" = yes; then
5681 _def_faad
='#define HAVE_FAAD 1'
5682 _codecmodules
="faad2(internal) $_codecmodules"
5684 _def_faad
='#undef HAVE_FAAD'
5685 _nocodecmodules
="faad2 $_nocodecmodules"
5690 echocheck
"LADSPA plugin support"
5691 if test "$_ladspa" = auto
; then
5696 const LADSPA_Descriptor *ld = NULL;
5701 cc_check
&& _ladspa
=yes
5703 if test "$_ladspa" = yes; then
5704 _def_ladspa
="#define HAVE_LADSPA"
5705 _afsrc
="$_afsrc af_ladspa.c"
5706 _afmodules
="ladspa $_afmodules"
5708 _def_ladspa
="#undef HAVE_LADSPA"
5709 _noafmodules
="ladspa $_noafmodules"
5714 if test "$_win32" = auto
; then
5718 _win32
=no
# x86 arch only
5722 if test "$_win32" != no
; then
5723 if test -z "$_win32libdir" ; then
5724 for I
in "$_libdir/codecs" "$_libdir/win32" /usr
/local
/lib
/codecs
/usr
/lib
/codecs
/usr
/local
/lib
/win32
/usr
/lib
/win32
; do
5725 if test -d "$I" ; then
5733 echocheck
"Win32 codec DLL support"
5734 if test "$_win32" = auto
; then
5736 test -n "$_win32libdir" && _win32
=yes
5738 if test "$_win32" = yes ; then
5739 _def_win32
='#define USE_WIN32DLL 1'
5740 _res_comment
="using $_win32libdir"
5742 _def_win32
='#undef USE_WIN32DLL'
5743 _nocodecmodules
="win32 $_nocodecmodules"
5748 if test "$_win32" != no
; then
5749 _def_win32_loader
='#undef WIN32_LOADER'
5750 echocheck
"Win32 loader support"
5751 _ld_win32
='loader/libloader.a'
5752 _dep_win32
='loader/libloader.a'
5753 _codecmodules
="win32 $_codecmodules"
5755 x86
&& _ld_win32
="$_ld_win32 -li386"
5758 _def_win32_loader
='#define WIN32_LOADER 1'
5761 _ld_win32libs
="$_ld_win32libs -ladvapi32 -lole32"
5762 echores
"no (using native windows)"
5766 echocheck
"DirectShow"
5769 if test "$_dshow" != no
; then
5771 # check if compiler supports C++ and C++-libs are installed correctly
5772 cat > "$TMPCPP" << EOF
5776 public: int myreturn(void);
5778 int myclass::myreturn(void) { ret = 0; return ret ; }
5779 int main(void) { myclass myobject; return myobject.myreturn(); }
5781 if cxx_check
&& tmp_run
; then
5783 echores
"yes (C++ is ok)"
5788 Your C++ runtime environment is broken.
5790 Hints: Does $_cc support C++? Do you have you a C++ compiler installed?
5791 Are the C++ libraries correctly installed?
5792 Check for libstdc++ and in (/etc/)ld.so.conf.
5794 If you do not need DirectShow support, you can also use:
5795 ./configure --disable-dshow <your-normal-configure-options>
5796 to disable building the C++ based DirectShow code.
5799 die
"$_cc's C++ is broken"
5807 if test "$_dshow" = yes ; then
5808 _def_dshow
='#define USE_DIRECTSHOW 1'
5809 _ld_dshow
='loader/dshow/libDS_Filter.a loader/dmo/libDMO_Filter.a'
5810 _dep_dshow
='loader/dshow/libDS_Filter.a loader/dmo/libDMO_Filter.a'
5811 _codecmodules
="dshow/dmo $_codecmodules"
5813 _def_dshow
='#undef USE_DIRECTSHOW'
5814 _nocodecmodules
="dshow/dmo $_nocodecmodules"
5818 echocheck
"XAnim DLL"
5819 if test "$_xanim" = auto
; then
5821 _res_comment
="dynamic loader support needed"
5822 if test "$_dl" = yes ; then
5823 _res_comment
="no suitable directory found - see DOCS/HTML/$_doc_lang/codecs.html"
5824 if test -z "$_xanimlibdir" ; then
5825 for I
in "$_libdir/codecs" /usr
/local
/lib
/xanim
/mods
/usr
/lib
/xanim
/mods
/usr
/lib
/xanim
$XANIM_MOD_DIR ; do
5826 if test -d "$I" ; then
5832 test "$_xanimlibdir" && _xanim
=yes
5835 if test "$_xanim" = yes ; then
5836 _def_xanim
='#define USE_XANIM 1'
5837 _def_xanim_path
="#define XACODEC_PATH \"$_xanimlibdir\""
5838 _codecmodules
="xanim $_codecmodules"
5839 _res_comment
="using $_xanimlibdir"
5841 _def_xanim
='#undef USE_XANIM'
5842 _def_xanim_path
='#undef XACODEC_PATH'
5843 _nocodecmodules
="xanim $_nocodecmodules"
5847 echocheck
"RealPlayer DLL"
5848 if test "$_real" = auto
; then
5850 _res_comment
="dynamic loader support needed"
5851 if test "$_dl" = yes ||
test "$_win32" = yes ; then
5852 # if test "$_dl" = yes ; then
5853 _res_comment
="tested only on Linux/FreeBSD/NetBSD/Cygwin/MinGW/Darwin"
5854 if linux || freebsd || netbsd || win32 || darwin
; then
5855 _res_comment
="no suitable directory found - see DOCS/HTML/$_doc_lang/codecs.html"
5856 if test -z "$_reallibdir" ; then
5857 for I
in "$_libdir/codecs" "$_libdir/real" /usr
/lib
/real \
5858 /usr
/lib
/RealPlayer
{9,8,}/Codecs
/usr
/local
/RealPlayer
{9,8,}/Codecs \
5859 /usr
/local
/lib
/RealPlayer
{9,8,}/Codecs
/opt
/RealPlayer
{9,8,}/{Real
/,}Codecs \
5860 {~
,}/Applications
/RealOne\ Player.app
/Contents
/MacOS
/Library
/Codecs \
5862 if test -d "$I" ; then
5868 test "$_reallibdir" && _real
=yes
5872 if test "$_real" = yes ; then
5873 _def_real
='#define USE_REALCODECS 1'
5874 _def_real_path
="#define REALCODEC_PATH \"$_reallibdir\""
5875 _codecmodules
="real $_codecmodules"
5876 _res_comment
="using $_reallibdir"
5878 _def_real
='#undef USE_REALCODECS'
5879 _def_real_path
="#undef REALCODEC_PATH"
5880 _nocodecmodules
="real $_nocodecmodules"
5885 echocheck
"LIVE555 Streaming Media libraries"
5886 if test "$_live" = auto
&& test "$_network" = yes ; then
5887 cat > $TMPCPP << EOF
5888 #include <liveMedia.hh>
5889 #if (LIVEMEDIA_LIBRARY_VERSION_INT < 1090195200)
5890 #error Please upgrade to version 2004.07.19 or later of the "LIVE555 Streaming Media" libraries - available from <www.live555.com/liveMedia/>
5896 for I
in "$_livelibdir" "$_libdir/live" "/usr/lib/live" "/usr/local/live" "/usr/local/lib/live" ; do
5897 cxx_check
-I$I/liveMedia
/include
-I$I/UsageEnvironment
/include
-I$I/groupsock
/include
&& _livelibdir
=$I && _live
=yes && break
5899 if test "$_live" != yes ; then
5900 if cxx_check
-I/usr
/include
/liveMedia
-I/usr
/include
/UsageEnvironment
-I/usr
/include
/groupsock
; then
5905 if test "$_live" = yes && test "$_network" = yes ; then
5906 echores
"yes (using $_livelibdir)"
5907 _def_live
='#define STREAMING_LIVE555 1'
5908 _live_libs_def
="# LIVE555 Streaming Media libraries:
5909 LIVE_LIB_DIR = $_livelibdir
5910 LIVE_LIBS = \$(LIVE_LIB_DIR)/liveMedia/libliveMedia.a
5911 LIVE_LIBS += \$(LIVE_LIB_DIR)/groupsock/libgroupsock.a
5912 LIVE_LIBS += \$(LIVE_LIB_DIR)/UsageEnvironment/libUsageEnvironment.a
5913 LIVE_LIBS += \$(LIVE_LIB_DIR)/BasicUsageEnvironment/libBasicUsageEnvironment.a
5914 LIVE_LIBS += -lstdc++
5915 LIVE_INCLUDES = -I\$(LIVE_LIB_DIR)/liveMedia/include
5916 LIVE_INCLUDES += -I\$(LIVE_LIB_DIR)/UsageEnvironment/include
5917 LIVE_INCLUDES += -I\$(LIVE_LIB_DIR)/BasicUsageEnvironment/include
5918 LIVE_INCLUDES += -I\$(LIVE_LIB_DIR)/groupsock/include"
5919 _ld_live
='$(LIVE_LIBS)'
5920 _inputmodules
="live555 $_inputmodules"
5921 elif test "$_live_dist" = yes && test "$_network" = yes ; then
5922 echores
"yes (using distribution version)"
5924 _def_live
='#define STREAMING_LIVE555 1'
5925 _live_libs_def
="# LIVE555 Streaming Media libraries:
5926 LIVE_LIB_DIR = $_livelibdir
5927 LIVE_LIBS = -lliveMedia
5928 LIVE_LIBS += -lgroupsock
5929 LIVE_LIBS += -lUsageEnvironment
5930 LIVE_LIBS += -lBasicUsageEnvironment
5931 LIVE_LIBS += -lstdc++
5932 LIVE_INCLUDES = -I/usr/include/liveMedia
5933 LIVE_INCLUDES += -I/usr/include/UsageEnvironment
5934 LIVE_INCLUDES += -I/usr/include/BasicUsageEnvironment
5935 LIVE_INCLUDES += -I/usr/include/groupsock"
5936 _ld_live
='$(LIVE_LIBS)'
5937 _inputmodules
="live555 $_inputmodules"
5940 _def_live
='#undef STREAMING_LIVE555'
5941 _noinputmodules
="live555 $_noinputmodules"
5944 echocheck
"FFmpeg libavutil (static)"
5945 if test -d libavutil
; then
5950 echores
"$_libavutil"
5952 echocheck
"FFmpeg libavcodec (static)"
5953 if test "$_libavcodec" = auto
; then
5954 # Note: static linking is preferred to dynamic linking
5956 _res_comment
="see DOCS/HTML/$_doc_lang/codecs.html"
5957 if test -d libavcodec
&& test -f libavcodec
/utils.c
; then
5958 _res_comment
="old ffmpeg version, use CVS !"
5959 if grep avcodec_find_encoder_by_name libavcodec
/utils.c
> /dev
/null
2>&1 ; then
5960 # check if libavutil is a required
5962 #include "libavcodec/avcodec.h"
5963 #if LIBAVCODEC_BUILD >= 3211265
5964 #error We need libavutil!
5966 int main(void) { return 0; }
5969 if cc_check
-I.
-I.
/libavutil
; then
5970 _libavutil_required
="no"
5972 _libavutil_required
="yes"
5974 _res_comment
="libavutil availability does not fit libavcodec version"
5975 if test "$_libavutil_required" = "$_libavutil"; then
5982 echores
"$_libavcodec"
5984 echocheck
"FFmpeg libavformat (static)"
5985 if test "$_libavformat" = auto
; then
5986 # Note: static linking is preferred to dynamic linking
5988 if test -d libavformat
&& test -f libavformat
/utils.c
; then
5992 echores
"$_libavformat"
5994 _def_haveffpostprocess
='no'
5995 if test -d libavcodec
&& test -f libavcodec
/libpostproc
/postprocess.h
; then
5996 _def_haveffpostprocess
='yes'
5999 if test "$_libavcodec" != yes ; then
6000 echocheck
"FFmpeg libavcodec (dynamic)"
6001 if test "$_libavcodecso" = auto
; then
6003 _res_comment
="libavcodec.so is broken/obsolete"
6004 # FIXME : check for avcodec_find_encoder_by_name() for mencoder
6006 #define FF_POSTPROCESS 1
6007 #include <ffmpeg/avcodec.h>
6009 avcodec_find_encoder_by_name("");
6013 if cc_check
-lavcodec $_ld_lm ; then
6015 _res_comment
="using libavcodec.so, but static libavcodec is recommended"
6018 echores
"$_libavcodecso"
6021 _def_libavcodec
='#undef USE_LIBAVCODEC'
6022 _def_libavcodecso
='#undef USE_LIBAVCODEC_SO'
6023 _def_ffpostprocess
='#undef FF_POSTPROCESS'
6024 if test "$_libavcodec" = yes ; then
6025 _def_libavcodec
='#define USE_LIBAVCODEC 1'
6026 _ld_libavcodec
='libavcodec/libavcodec.a'
6027 _dep_libavcodec
='libavcodec/libavcodec.a'
6028 _def_ffpostprocess
='#define FF_POSTPROCESS 1'
6029 _codecmodules
="libavcodec $_codecmodules"
6030 if test "$_libavutil" = yes; then
6031 _ld_libavutil
='libavutil/libavutil.a'
6032 _dep_libavutil
='libavutil/libavutil.a'
6034 elif test "$_libavcodecso" = yes ; then
6035 _def_libavcodec
='#define USE_LIBAVCODEC 1'
6036 _def_libavcodecso
='#define USE_LIBAVCODEC_SO 1'
6037 _ld_libavcodec
='-lavcodec'
6038 _codecmodules
="libavcodec.so $_codecmodules"
6040 _nocodecmodules
="libavcodec $_nocodecmodules"
6043 _def_libavformat
='#undef USE_LIBAVFORMAT'
6044 _def_libavformat_win32
='#undef CONFIG_WIN32'
6045 if test "$_libavformat" = yes ; then
6046 _def_libavformat
='#define USE_LIBAVFORMAT 1'
6047 _ld_libavformat
='libavformat/libavformat.a'
6048 _dep_libavformat
='libavformat/libavformat.a'
6050 _def_libavformat_win32
='#define CONFIG_WIN32 1'
6054 echocheck
"amr narrowband"
6055 if test "$_amr_nb" = auto
; then
6057 if test -f libavcodec
/amr_float
/sp_dec.c
; then
6058 if test "$_libavcodec" = yes ; then
6061 _res_comment
="libavcodec (static) is required by amr_nb, sorry"
6065 if test "$_amr_nb" = yes ; then
6066 _def_amr_nb
='#define AMR_NB 1'
6068 _def_amr_nb
='#undef AMR_NB'
6070 echores
"$_amr_nb $_echomsg"
6072 echocheck
"amr narrowband, fixed point"
6073 if test "$_amr_nb_fixed" = auto
; then
6075 if test -f libavcodec
/amr
/dtx_dec.c
; then
6076 if test "$_libavcodec" = yes ; then
6077 if test "$_amr_nb" = no
; then
6080 _res_comment
="disabled by amr_nb"
6083 _res_comment
="libavcodec (static) is required by amr_nb-fixed, sorry"
6087 if test "$_amr_nb_fixed" = yes ; then
6088 _def_amr_nb
='#define AMR_NB 1'
6089 _def_amr_nb_fixed
='#define AMR_NB_FIXED 1'
6092 _def_amr_nb_fixed
='#undef AMR_NB_FIXED'
6094 echores
"$_amr_nb_fixed"
6096 if test "$_amr_nb" = yes ; then
6097 _codecmodules
="amr_nb $_codecmodules"
6099 _nocodecmodules
="amr_nb $_nocodecmodules"
6102 echocheck
"amr wideband"
6103 if test "$_amr_wb" = auto
; then
6105 if test -f libavcodec
/amrwb_float
/dec_dtx.c
; then
6106 if test "$_libavcodec" = yes ; then
6109 _res_comment
="libavcodec (static) is required by amr_wb, sorry"
6113 if test "$_amr_wb" = yes ; then
6114 _def_amr_wb
='#define AMR_WB 1'
6115 _codecmodules
="amr_wb $_codecmodules"
6117 _def_amr_wb
='#undef AMR_WB'
6118 _nocodecmodules
="amr_wb $_nocodecmodules"
6122 echocheck
"libdv-0.9.5+"
6123 if test "$_libdv" = auto
; then
6126 #include <libdv/dv.h>
6127 int main(void) { dv_encoder_t* enc=dv_encoder_new(1,1,1); return 0; }
6129 cc_check
-ldv $_ld_lm && _libdv
=yes
6131 if test "$_libdv" = yes ; then
6132 _def_libdv
='#define HAVE_LIBDV095 1'
6134 _codecmodules
="libdv $_codecmodules"
6136 _def_libdv
='#undef HAVE_LIBDV095'
6137 _nocodecmodules
="libdv $_nocodecmodules"
6142 if test "$_zr" = auto
; then
6143 #36067's seem to identify themselves as 36057PQC's, so the line
6144 #below should work for 36067's and 36057's.
6145 if grep -e "Multimedia video controller: Zoran Corporation ZR36057" /proc
/pci
> /dev
/null
2>&1; then
6151 if test "$_zr" = yes ; then
6152 if test "$_libavcodec" = yes ; then
6153 _def_zr
='#define HAVE_ZR 1'
6154 _vosrc
="$_vosrc vo_zr2.c vo_zr.c jpeg_enc.c"
6155 _vomodules
="zr zr2 $_vomodules"
6157 _res_comment
="libavcodec (static) is required by zr, sorry"
6158 _novomodules
="zr $_novomodules"
6159 _def_zr
='#undef HAVE_ZR'
6162 _def_zr
='#undef HAVE_ZR'
6163 _novomodules
="zr zr2 $_novomodules"
6168 if test "$_bl" = yes ; then
6169 _def_bl
='#define HAVE_BL 1'
6170 _vosrc
="$_vosrc vo_bl.c"
6171 _vomodules
="bl $_vomodules"
6173 _def_bl
='#undef HAVE_BL'
6174 _novomodules
="bl $_novomodules"
6181 int main(void) { xvid_init(0, 0, 0, 0); return 0; }
6183 _ld_xvid
="$_ld_xvid -lxvidcore"
6184 if test "$_xvid" != no
&& cc_check
$_inc_xvid $_ld_xvid $_ld_lm ; then
6186 _def_xvid3
='#define HAVE_XVID3 1'
6187 _def_xvid4
='#undef HAVE_XVID4'
6188 _codecmodules
="xvid $_codecmodules"
6192 int main(void) { xvid_global(0, 0, 0, 0); return 0; }
6194 if test "$_xvid" != no
&& cc_check
$_inc_xvid $_ld_xvid $_ld_lm ; then
6196 _def_xvid3
='#undef HAVE_XVID3'
6197 _def_xvid4
='#define HAVE_XVID4 1'
6198 _codecmodules
="xvid $_codecmodules"
6202 _def_xvid3
='#undef HAVE_XVID3'
6203 _def_xvid4
='#undef HAVE_XVID4'
6204 _nocodecmodules
="xvid $_nocodecmodules"
6210 _def_decore_xvid
='#undef DECORE_XVID'
6211 _def_encore_xvid
='#undef ENCORE_XVID'
6212 if test "$_xvid" = yes ; then
6213 echocheck
"DivX4 compatibility in XviD"
6216 int main(void) { (void) decore(0, 0, 0, 0); return 0; }
6218 cc_check
$_ld_lm "$_ld_xvid" && _xvidcompat
=yes
6219 echores
"$_xvidcompat"
6224 #include <inttypes.h>
6227 #error We do not support old versions of x264. Get the latest from SVN.
6229 int main(void) { x264_encoder_open((void*)0); return 0; }
6231 _ld_x264
="$_ld_x264 -lx264 $_ld_pthread"
6232 if test "$_x264" != no
&& \
6233 ( cc_check
$_inc_x264 $_ld_x264 $_ld_lm || \
6234 ( test "$_x11" = yes && cc_check
$_inc_x264 $_inc_x11 $_ld_x264 $_ld_x11 $_ld_lm )) ; \
6237 _def_x264
='#define HAVE_X264 1'
6238 _codecmodules
="x264 $_codecmodules"
6242 _def_x264
='#undef HAVE_X264'
6243 _nocodecmodules
="x264 $_nocodecmodules"
6247 echocheck
"DivX4linux/DivX5linux/OpenDivX decore"
6248 # DivX5: DEC_OPT_MEMORY_REQS - DivX4: DEC_OPT_FRAME_311
6251 int main(void) { (void) decore(0, 0, 0, 0); return DEC_OPT_FRAME_311; }
6253 if test "$_divx4linux" != no
&& cc_check
$_ld_lm -ldivxdecore ; then
6255 _ld_decore
='-ldivxdecore'
6256 _def_decore
='#define NEW_DECORE 1'
6257 _def_divx
='#define USE_DIVX'
6258 _def_divx5
='#undef DECORE_DIVX5'
6259 _def_odivx_postprocess
='#undef HAVE_ODIVX_POSTPROCESS'
6260 _codecmodules
="divx4linux $_codecmodules"
6261 echores
"DivX4linux (with libdivxdecore.so)"
6263 # if test "$_divx4linux" != no ; then
6265 # OdivxPP disabled because of:
6266 # ld: Warning: type of symbol `dering' changed from 1 to 2 in opendivx/postprocess.o
6269 int main(void) { (void) decore(0, 0, 0, 0); return DEC_OPT_INIT; }
6271 if test "$_divx4linux" != no
&& cc_check
$_ld_lm -ldivxdecore ; then
6273 # _ld_decore='-ldivxdecore opendivx/postprocess.o'
6274 _ld_decore
='-ldivxdecore'
6275 _def_decore
='#define NEW_DECORE 1'
6276 _def_divx
='#define USE_DIVX'
6277 _def_divx5
='#define DECORE_DIVX5 1'
6278 # _def_odivx_postprocess='#define HAVE_ODIVX_POSTPROCESS 1'
6279 _def_odivx_postprocess
='#undef HAVE_ODIVX_POSTPROCESS'
6280 _codecmodules
="divx5linux $_codecmodules"
6281 _nocodecmodules
="divx4linux $_nocodecmodules"
6282 echores
"DivX5linux (with libdivxdecore.so)"
6283 elif test "$_opendivx" != no
; then
6285 _ld_decore
='opendivx/libdecore.a'
6286 _def_decore
='#undef NEW_DECORE'
6287 _def_divx
='#define USE_DIVX'
6288 _def_divx5
='#undef DECORE_DIVX5'
6289 _def_odivx_postprocess
='#define HAVE_ODIVX_POSTPROCESS 1'
6290 _codecmodules
="opendivx $_codecmodules"
6291 _nocodecmodules
="divx5linux $_nocodecmodules"
6293 elif test "$_xvidcompat" = yes ; then
6296 _def_decore
='#define NEW_DECORE 1'
6297 _def_divx
='#define USE_DIVX 1'
6298 _def_divx5
='#undef DECORE_DIVX5'
6299 _def_decore_xvid
='#define DECORE_XVID 1'
6300 _def_odivx_postprocess
='#undef HAVE_ODIVX_POSTPROCESS'
6301 _nocodecmodules
="opendivx divx5linux divx4linux $_nocodecmodules"
6302 echores
"XviD compat."
6306 _def_decore
='#undef NEW_DECORE'
6307 _def_divx
='#undef USE_DIVX'
6308 _def_divx5
='#undef DECORE_DIVX5'
6309 _def_odivx_postprocess
='#undef HAVE_ODIVX_POSTPROCESS'
6310 _nocodecmodules
="opendivx $_nocodecmodules"
6316 # mencoder requires (optional) those libs: libmp3lame and divx4linux encore
6317 if test "$_mencoder" != no
; then
6319 echocheck
"libmp3lame (for mencoder)"
6321 _def_mp3lame_preset
='#undef HAVE_MP3LAME_PRESET'
6322 _def_mp3lame_preset_medium
='#undef HAVE_MP3LAME_PRESET_MEDIUM'
6324 #include <lame/lame.h>
6325 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; }
6327 # Note: libmp3lame usually depends on vorbis
6328 cc_check
-lmp3lame $_ld_vorbis $_ld_lm && tmp_run
&& _mp3lame
=yes
6329 if test "$_mp3lame" = yes ; then
6330 _def_mp3lame
="#define HAVE_MP3LAME"
6331 _ld_mp3lame
="-lmp3lame $_ld_vorbis"
6333 #include <lame/lame.h>
6334 int main(void) { int p = STANDARD_FAST; return 0; }
6336 cc_check
$_ld_mp3lame $_ld_lm && _def_mp3lame_preset
="#define HAVE_MP3LAME_PRESET"
6338 #include <lame/lame.h>
6339 int main(void) { int p = MEDIUM_FAST; return 0; }
6341 cc_check
$_ld_mp3lame $_ld_lm && _def_mp3lame_preset_medium
="#define HAVE_MP3LAME_PRESET_MEDIUM"
6343 _def_mp3lame
='#undef HAVE_MP3LAME'
6348 echocheck
"DivX4linux encore (for mencoder)"
6350 #include <encore2.h>
6351 int main(void) { (void) encore(0, 0, 0, 0); return 0; }
6353 if test "$_divx4linux" != no
&& cc_check
-ldivxencore $_ld_lm ; then
6354 _def_encore
='#define HAVE_DIVX4ENCORE 1'
6355 _ld_encore
='-ldivxencore'
6356 echores
"DivX4linux (with libdivxencore.so)"
6357 elif test "$_xvidcompat" = yes ; then
6358 _def_encore
='#define HAVE_DIVX4ENCORE 1'
6360 _def_encore_xvid
='#define ENCORE_XVID 1'
6361 echores
"XviD compat."
6363 _def_encore
='#undef HAVE_DIVX4ENCORE'
6369 echocheck
"mencoder"
6370 _mencoder_flag
='#undef HAVE_MENCODER'
6371 if test "$_mencoder" = yes ; then
6372 _mencoder_flag
='#define HAVE_MENCODER'
6374 echores
"$_mencoder"
6376 echocheck
"fastmemcpy"
6377 # fastmemcpy check is done earlier with tests of CPU & binutils features
6378 if test "$_fastmemcpy" = yes ; then
6379 _def_fastmemcpy
='#define USE_FASTMEMCPY 1'
6381 _def_fastmemcpy
='#undef USE_FASTMEMCPY'
6383 echores
"$_fastmemcpy"
6385 echocheck
"UniquE RAR File Library"
6386 if test "$_unrarlib" = yes ; then
6387 _def_unrarlib
='#define USE_UNRARLIB 1'
6389 _def_unrarlib
='#undef USE_UNRARLIB'
6391 echores
"$_unrarlib"
6393 echocheck
"TV interface"
6394 if test "$_tv" = yes ; then
6395 _def_tv
='#define USE_TV 1'
6396 _inputmodules
="tv $_inputmodules"
6398 _noinputmodules
="tv $_noinputmodules"
6399 _def_tv
='#undef USE_TV'
6403 echocheck
"EDL support"
6404 if test "$_edl" = yes ; then
6405 _def_edl
='#define USE_EDL'
6406 _inputmodules
="edl $_inputmodules"
6408 _noinputmodules
="edl $_noinputmodules"
6409 _def_edl
='#undef USE_EDL'
6413 echocheck
"*BSD BrookTree 848 TV interface"
6414 if test "$_tv_bsdbt848" = auto
; then
6416 if test "$_tv" = yes ; then
6418 #include <sys/types.h>
6419 #if defined(__NetBSD__)
6420 #include <dev/ic/bt8xx.h>
6422 #include <machine/ioctl_bt848.h>
6424 int main(void) { return 0; }
6426 cc_check
&& _tv_bsdbt848
=yes
6429 if test "$_tv_bsdbt848" = yes ; then
6430 _def_tv_bsdbt848
='#define HAVE_TV_BSDBT848 1'
6431 _inputmodules
="tv-bsdbt848 $_inputmodules"
6433 _def_tv_bsdbt848
='#undef HAVE_TV_BSDBT848'
6434 _noinputmodules
="tv-bsdbt848 $_noinputmodules"
6436 echores
"$_tv_bsdbt848"
6438 echocheck
"Video 4 Linux TV interface"
6439 if test "$_tv_v4l" = auto
; then
6441 if test "$_tv" = yes && linux
; then
6444 #include <linux/videodev.h>
6445 int main(void) { return 0; }
6447 cc_check
&& _tv_v4l
=yes
6450 if test "$_tv_v4l" = yes ; then
6451 _def_tv_v4l
='#define HAVE_TV_V4L 1'
6452 _inputmodules
="tv-v4l $_inputmodules"
6454 _noinputmodules
="tv-v4l $_noinputmodules"
6455 _def_tv_v4l
='#undef HAVE_TV_V4L'
6460 echocheck
"Video 4 Linux 2 TV interface"
6461 if test "$_tv_v4l2" = auto
; then
6463 if test "$_tv" = yes && linux
; then
6466 #include <linux/types.h>
6467 #include <linux/videodev2.h>
6468 int main(void) { return 0; }
6470 cc_check
&& _tv_v4l2
=yes
6473 if test "$_tv_v4l2" = yes ; then
6474 _def_tv_v4l2
='#define HAVE_TV_V4L2 1'
6475 _inputmodules
="tv-v4l2 $_inputmodules"
6477 _noinputmodules
="tv-v4l2 $_noinputmodules"
6478 _def_tv_v4l2
='#undef HAVE_TV_V4L2'
6483 echocheck
"audio select()"
6484 if test "$_select" = no
; then
6485 _def_select
='#undef HAVE_AUDIO_SELECT'
6486 elif test "$_select" = yes ; then
6487 _def_select
='#define HAVE_AUDIO_SELECT 1'
6493 # FIXME network check
6494 if test "$_network" != no
; then
6495 _def_network
='#define MPLAYER_NETWORK 1'
6496 _ld_network
="$_ld_sock"
6497 _inputmodules
="network $_inputmodules"
6499 _noinputmodules
="network $_noinputmodules"
6500 _def_network
='#undef MPLAYER_NETWORK'
6506 if not beos
&& test "$_ftp" != no
; then
6507 _def_ftp
='#define HAVE_FTP 1'
6508 _inputmodules
="ftp $_inputmodules"
6510 _noinputmodules
="ftp $_noinputmodules"
6511 _def_ftp
='#undef HAVE_FTP'
6515 echocheck
"vstream client"
6516 if test "$_vstream" = auto
; then
6519 #include <vstream-client.h>
6520 void vstream_error(const char *format, ... ) {}
6521 int main(void) { vstream_start(); return 0; }
6523 cc_check
-lvstream-client && _vstream
=yes
6525 if test "$_vstream" = yes ; then
6526 _def_vstream
='#define HAVE_VSTREAM 1'
6527 _inputmodules
="vstream $_inputmodules"
6528 _ld_vstream
='-lvstream-client'
6530 _noinputmodules
="vstream $_noinputmodules"
6531 _def_vstream
='#undef HAVE_VSTREAM'
6536 echocheck
"byte order"
6537 if test "$_big_endian" = auto
; then
6539 short ascii_name[] = { (('M'<<8)|'P'),(('l'<<8)|'a'),(('y'<<8)|'e'),(('r'<<8)|'B'),
6540 (('i'<<8)|'g'),(('E'<<8)|'n'),(('d'<<8)|'i'),(('a'<<8)|'n'),0};
6542 char* s = (char*)ascii_name;
6547 if strings $TMPO |
grep -l MPlayerBigEndian
>/dev
/null
; then
6553 echo -n "failed to autodetect byte order, defaulting to "
6556 if test "$_big_endian" = yes ; then
6557 _byte_order
='big-endian'
6558 _def_words_endian
='#define WORDS_BIGENDIAN 1'
6560 _byte_order
='little-endian'
6561 _def_words_endian
='#undef WORDS_BIGENDIAN'
6563 echores
"$_byte_order"
6565 echocheck
"OSD menu"
6566 if test "$_menu" = yes ; then
6567 _def_menu
='#define HAVE_MENU 1'
6569 _def_menu
='#undef HAVE_MENU'
6573 # Check to see if they want QTX codecs enabled
6574 echocheck
"QTX codecs"
6575 if test "$_qtx" = auto
; then
6578 if test "$_qtx" = yes ; then
6579 _def_qtx
='#define USE_QTX_CODECS 1'
6580 _codecmodules
="qtx $_codecmodules"
6582 _def_qtx
='#undef USE_QTX_CODECS'
6583 _nocodecmodules
="qtx $_nocodecmodules"
6588 echocheck
"Subtitles sorting"
6589 if test "$_sortsub" = yes ; then
6590 _def_sortsub
='#define USE_SORTSUB 1'
6592 _def_sortsub
='#undef USE_SORTSUB'
6597 echocheck
"XMMS inputplugin support"
6598 if test "$_xmms" = yes ; then
6600 if ( xmms-config
--version ) >/dev
/null
2>&1 ; then
6601 if test -z "$_xmmsplugindir" ; then
6602 _xmmsplugindir
=`xmms-config --input-plugin-dir`
6604 if test -z "$_xmmslibdir" ; then
6605 _xmmslibdir
=`xmms-config --exec-prefix`/lib
6608 if test -z "$_xmmsplugindir" ; then
6609 _xmmsplugindir
=/usr
/lib
/xmms
/Input
6611 if test -z "$_xmmslibdir" ; then
6612 _xmmslibdir
=/usr
/lib
6616 _def_xmms
='#define HAVE_XMMS 1'
6618 _xmms_lib
="${_xmmslibdir}/libxmms.dylib"
6620 _xmms_lib
="${_xmmslibdir}/libxmms.so.1 -export-dynamic"
6623 _def_xmms
='#undef HAVE_XMMS'
6628 if test "$_inet6" = auto
; then
6630 #include <sys/types.h>
6631 #include <sys/socket.h>
6632 int main(void) { socket(AF_INET6, SOCK_STREAM, AF_INET6); }
6639 if test "$_inet6" = yes ; then
6640 _def_inet6
='#define HAVE_AF_INET6 1'
6642 _def_inet6
='#undef HAVE_AF_INET6'
6647 echocheck
"gethostbyname2"
6648 if test "$_gethostbyname2" = auto
; then
6650 #include <sys/types.h>
6651 #include <sys/socket.h>
6653 int main(void) { gethostbyname2("", AF_INET); }
6661 if test "$_gethostbyname2" = yes ; then
6662 _def_gethostbyname2
='#define HAVE_GETHOSTBYNAME2 1'
6664 _def_gethostbyname2
='#undef HAVE_GETHOSTBYNAME2'
6666 echores
"$_gethostbyname2"
6668 # --------------- GUI specific tests begin -------------------
6671 if test "$_gui" = yes ; then
6673 # Required libraries
6674 test "$_png" != yes && die
"PNG support required for GUI compilation, please install libpng and libpng-dev packages."
6675 test "$_x11" != yes && die
"X11 support required for GUI compilation"
6677 echocheck
"XShape extension"
6679 if test "$_x11" = yes ; then
6681 #include <X11/Xlib.h>
6682 #include <X11/Xproto.h>
6683 #include <X11/Xutil.h>
6684 #include <X11/extensions/shape.h>
6687 char *name = ":0.0";
6690 int eventbase, errorbase;
6691 if (getenv("DISPLAY"))
6692 name=getenv("DISPLAY");
6693 wsDisplay=XOpenDisplay(name);
6694 if (!XShapeQueryExtension(wsDisplay,&eventbase,&errorbase))
6696 XCloseDisplay(wsDisplay);
6700 cc_check
$_inc_x11 $_ld_x11 && _xshape
=yes
6702 if test "$_xshape" = yes ; then
6703 _def_xshape
='#define HAVE_XSHAPE 1'
6705 die
"The GUI requires the X11 extension XShape (which was not found)."
6710 if test "$_gtk1" = no
; then
6712 echocheck
"GTK+ version"
6714 if pkg-config gtk
+-2.0
--exists ; then
6715 _gtk
=`pkg-config gtk+-2.0 --modversion 2>/dev/null`
6716 _inc_gtk
=`pkg-config gtk+-2.0 --cflags 2>/dev/null`
6717 _ld_gtk
=`pkg-config gtk+-2.0 --libs 2>/dev/null`
6721 if pkg-config glib-2.0
--exists ; then
6722 echocheck
"glib version"
6723 _glib
=`pkg-config glib-2.0 --modversion 2>/dev/null`
6724 _inc_glib
=`pkg-config glib-2.0 --cflags 2>/dev/null`
6725 _ld_glib
=`pkg-config glib-2.0 --libs 2>/dev/null`
6728 _def_gui
='#define HAVE_NEW_GUI 1'
6729 _def_gtk2_gui
='#define HAVE_GTK2_GUI 1'
6730 _ld_gui
='$(GTKLIB) $(GLIBLIB)'
6733 echo "GLIB-2 devel packages were not found, trying GTK 1.2"
6736 echo "GTK-2 devel packages were not found, trying GTK 1.2"
6741 if test "$_gtk1" = yes ; then
6742 # Check for old GTK (1.2.x)
6743 echocheck
"GTK version"
6744 if test -z "$_gtkconfig" ; then
6745 if ( gtk-config
--version ) >/dev
/null
2>&1 ; then
6746 _gtkconfig
="gtk-config"
6747 elif ( gtk12-config
--version ) >/dev
/null
2>&1 ; then
6748 _gtkconfig
="gtk12-config"
6750 die
"The GUI requires GTK devel packages (which were not found)."
6753 _gtk
=`$_gtkconfig --version 2>&1`
6754 _inc_gtk
=`$_gtkconfig --cflags 2>&1`
6755 _ld_gtk
=`$_gtkconfig --libs 2>&1`
6756 echores
"$_gtk (using $_gtkconfig)"
6759 echocheck
"glib version"
6760 if test -z "$_glibconfig" ; then
6761 if ( glib-config
--version ) >/dev
/null
2>&1 ; then
6762 _glibconfig
="glib-config"
6763 elif ( glib12-config
--version ) >/dev
/null
2>&1 ; then
6764 _glibconfig
="glib12-config"
6766 die
"The GUI requires GLib devel packages (which were not found)"
6769 _glib
=`$_glibconfig --version 2>&1`
6770 _inc_glib
=`$_glibconfig --cflags 2>&1`
6771 _ld_glib
=`$_glibconfig --libs 2>&1`
6772 echores
"$_glib (using $_glibconfig)"
6774 _def_gui
='#define HAVE_NEW_GUI 1'
6775 _def_gtk2_gui
='#undef HAVE_GTK2_GUI'
6776 _ld_gui
='$(GTKLIB) $(GLIBLIB)'
6779 echo "Creating Gui/config.mak"
6780 cat > Gui
/config.mak
<< EOF
6781 # -------- Generated by configure -----------
6785 GLIBINC = $_inc_glib
6786 GLIBLIBS = $_ld_glib
6791 _def_gui
='#undef HAVE_NEW_GUI'
6792 _def_gtk2_gui
='#undef HAVE_GTK2_GUI'
6794 # --------------- GUI specific tests end -------------------
6798 #############################################################################
6800 # Checking for CFLAGS
6802 if test "$_profile" != "" ||
test "$_debug" != "" ; then
6803 CFLAGS
="-W -Wall -O2 $_march $_mcpu $_debug $_profile"
6804 if test "$_cc_major" -ge "3" ; then
6805 CFLAGS
=`echo "$CFLAGS" | sed -e 's/\(-Wall\)/\1 -Wno-unused-parameter/'`
6808 elif test -z "$CFLAGS" ; then
6809 CFLAGS
="-O4 $_march $_mcpu $_pipe -ffast-math -fomit-frame-pointer"
6810 # always compile with '-g' if .developer:
6811 if test -f ".developer" ; then
6813 if test "$_crash_debug" = auto
&& not mingw32
; then
6822 echocheck
"automatic gdb attach"
6823 if test "$_crash_debug" = yes ; then
6824 _def_crash_debug
='#define CRASH_DEBUG 1'
6826 _def_crash_debug
='#undef CRASH_DEBUG'
6829 echores
"$_crash_debug"
6832 CFLAGS
="$CFLAGS -mdynamic-no-pic -falign-loops=16 -DSYS_DARWIN"
6833 if [ "$_cc_major" = 3 ] && [ "$_cc_minor" -lt 1 ]; then
6834 CFLAGS
="$CFLAGS -no-cpp-precomp"
6837 # libavcodec (from ffmpeg) requires CONFIG_DARWIN to enable AltiVec on Darwin/MacOSX
6838 test "$_altivec" = yes && CFLAGS
="$CFLAGS -DCONFIG_DARWIN"
6841 # use flag for HPUX missing setenv()
6842 CFLAGS
="$CFLAGS -DHPUX"
6846 CFLAGS
="$CFLAGS -D_REENTRANT"
6848 # FIXME bsd needs this so maybe other OS'es
6849 CFLAGS
="$CFLAGS -D_THREAD_SAFE"
6851 # 64 bit file offsets?
6852 if test "$_largefiles" = yes || freebsd
; then
6853 CFLAGS
="$CFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
6854 if test "$_dvdread" = yes ; then
6855 # dvdread support requires this (for off64_t)
6856 CFLAGS
="$CFLAGS -D_LARGEFILE64_SOURCE"
6860 echocheck
"compiler support for -fno-PIC"
6863 int main(void) { return 0; }
6865 if cc_check
-fno-PIC ; then
6866 CFLAGS
="-fno-PIC $CFLAGS"
6872 echores
"only used for x86"
6875 echocheck
"compiler support for noexecstack"
6877 int main(void) { return 0; }
6879 if cc_check
-Wl,-z,noexecstack
; then
6880 _ld_extra
="-Wl,-z,noexecstack $_ld_extra"
6886 echocheck
"ftello()"
6887 # if we don't have ftello use the osdep/ compatibility module
6890 #include <sys/types.h>
6891 int main (void) { ftello(stdin); return 0; }
6894 cc_check
&& _ftello
=yes
6895 if test "$_ftello" = yes ; then
6896 _def_ftello
='#define HAVE_FTELLO 1'
6898 _def_ftello
='#undef HAVE_FTELLO'
6902 # Determine OS dependent libs
6904 _def_confwin32
='#define WIN32'
6905 #CFLAGS="$CFLAGS -D__CYGWIN__ -D__CYGWIN_USE_BIG_TYPES__"
6906 # stat.st_size with BIG_TYPES is broken (not set) ::atmos
6907 CFLAGS
="$CFLAGS -D__CYGWIN__"
6911 _confwin32
='TARGET_WIN32 = yes'
6913 _confwin32
='TARGET_WIN32 = no'
6916 # Dynamic linking flags
6917 # (FIXME: 'echocheck "dynamic linking"' above and modify here accordingly)
6919 bsd
&& _ld_dl_dynamic
='-rdynamic'
6920 if test "$_real" = yes ||
test "$_xanim" = yes && not win32
&& not qnx
; then
6921 _ld_dl_dynamic
='-rdynamic'
6924 _ld_arch
="$_ld_arch $_ld_pthread $_ld_dl $_ld_dl_dynamic"
6925 bsdos
&& _ld_arch
="$_ld_arch -ldvd"
6927 x86
&& _ld_arch
="$_ld_arch -li386"
6930 _def_debug
='#undef MP_DEBUG'
6931 test "$_debug" != "" && _def_debug
='#define MP_DEBUG 1'
6933 _def_linux
='#undef TARGET_LINUX'
6934 linux
&& _def_linux
='#define TARGET_LINUX 1'
6936 # TODO cleanup the VIDIX stuff here
6938 _def_vidix
='#define CONFIG_VIDIX 1'
6939 test "$_vidix" = no
&& _def_vidix
='#undef CONFIG_VIDIX'
6940 if test "$_vidix" = yes; then
6941 _vosrc
="$_vosrc vo_cvidix.c"
6942 _vomodules
="cvidix $_vomodules"
6944 _novomodules
="cvidix $_novomodules"
6946 if test "$_vidix" = yes && win32
; then
6947 _vosrc
="$_vosrc vo_winvidix.c"
6948 _vomodules
="winvidix $_vomodules"
6949 _ld_win32libs
="-lgdi32 $_ld_win32libs"
6951 _novomodules
="winvidix $_novomodules"
6953 if test "$_vidix" = yes && test "$_x11" = yes; then
6954 _vosrc
="$_vosrc vo_xvidix.c"
6955 _vomodules
="xvidix $_vomodules"
6957 _novomodules
="xvidix $_novomodules"
6961 echocheck
"joystick"
6962 _def_joystick
='#undef HAVE_JOYSTICK'
6963 if test "$_joystick" = yes ; then
6965 # TODO add some check
6966 _def_joystick
='#define HAVE_JOYSTICK 1'
6968 _joystick
="no (unsupported under $system_name)"
6971 echores
"$_joystick"
6974 if test "$_lirc" = auto
; then
6976 if test -c /dev
/lirc
-o -c /dev
/lirc
/0 ; then
6978 #include <lirc/lirc_client.h>
6979 int main(void) { return 0; }
6981 cc_check
-llirc_client && _lirc
=yes
6984 if test "$_lirc" = yes ; then
6985 _def_lirc
='#define HAVE_LIRC 1'
6986 _ld_lirc
='-llirc_client'
6988 _def_lirc
='#undef HAVE_LIRC'
6993 if test "$_lircc" = auto
; then
6996 #include <lirc/lircc.h>
6997 int main(void) { return 0; }
6999 cc_check
-llircc && _lircc
=yes
7001 if test "$_lircc" = yes ; then
7002 _def_lircc
='#define HAVE_LIRCC 1'
7005 _def_lircc
='#undef HAVE_LIRCC'
7009 #############################################################################
7010 echo "Creating config.mak"
7011 cat > config.mak
<< EOF
7012 # -------- Generated by configure -----------
7015 MAN_LANG = $MAN_LANG
7016 TARGET_OS = $system_name
7018 prefix = \$(DESTDIR)$_prefix
7019 BINDIR = \$(DESTDIR)$_bindir
7020 DATADIR = \$(DESTDIR)$_datadir
7021 MANDIR = \$(DESTDIR)$_mandir
7022 CONFDIR = \$(DESTDIR)$_confdir
7023 LIBDIR = \$(DESTDIR)$_libdir
7024 # FFmpeg uses libdir instead of LIBDIR
7032 # OPTFLAGS = -O4 $_profile $_debug $_march $_mcpu $_pipe -fomit-frame-pointer -ffast-math
7033 EXTRA_INC = $_inc_extra
7034 OPTFLAGS = -I../libvo -I../../libvo $_inc_x11 $CFLAGS \$(EXTRA_INC)
7035 STRIPBINARIES = $_stripbinaries
7037 HELP_FILE = $_mp_help
7040 PRG_MENCODER = $_prg_mencoder
7044 MPLAYER_NETWORK = $_network
7045 STREAMING_LIVE555 = $_live
7046 MPLAYER_NETWORK_LIB = $_ld_live $_ld_vstream $_ld_network
7050 CONFIG_MP3LAME = $_mp3lame
7052 I18NLIBS = $_i18n_libs
7053 MATROSKA = $_matroska_internal
7055 OPENDIVX = $_opendivx
7059 LIBMPEG2 = $_libmpeg2
7060 TREMOR = $_tremor_internal
7061 TREMOR_FLAGS = $_tremor_flags
7064 MUSEPACK = $_musepack
7066 UNRARLIB = $_unrarlib
7067 HAVE_FFPOSTPROCESS = $_def_haveffpostprocess
7072 EXTRA_LIB = $_ld_extra
7073 Z_LIB = $_ld_static $_ld_zlib
7075 WIN32_LIB = $_ld_win32libs
7076 STATIC_LIB = $_ld_static
7077 ENCA_LIB = $_ld_enca
7078 HAVE_PTHREADS = $_pthreads
7084 HAVE_XVMC_ACCEL = $_xvmc
7094 X_LIB = $_ld_gl $_ld_dga $_ld_xv $_ld_xvmc $_ld_vm $_ld_xinerama $_ld_x11 $_ld_sock
7096 MLIB_LIB = $_ld_mlib
7097 MLIB_INC = $_inc_mlib
7098 DXR2_INC = $_inc_dxr2
7104 SVGA_LIB = $_ld_svga
7105 VESA_LIB = $_ld_vesa
7107 CACA_INC = $_inc_caca
7108 CACA_LIB = $_ld_caca
7111 ALSA_LIB = $_ld_alsa
7113 ARTS_LIB = $_ld_arts
7114 ARTS_INC = $_inc_arts
7117 POLYP_LIB = $_ld_polyp
7118 POLYP_INC = $_inc_polyp
7119 JACK_LIB = $_ld_jack
7120 JACK_INC = $_inc_jack
7121 SGIAUDIO_LIB = $_ld_sgiaudio
7123 # input/demuxer/codecs
7124 TERMCAP_LIB = $_ld_termcap
7125 LIRC_LIB = $_ld_lirc
7126 LIRCC_LIB = $_ld_lircc
7127 DVDREAD_LIB = $_ld_dvdread
7132 W32_DEP = $_dep_win32
7133 W32_LIB = $_ld_win32
7134 DS_DEP = $_dep_dshow
7136 AV_DEP = $_dep_libavutil $_dep_libavcodec $_dep_libavformat
7137 AV_LIB = $_ld_libavformat $_ld_libavcodec $_ld_libavutil
7138 CONFIG_LIBAVUTIL = $_libavutil
7139 CONFIG_LIBAVCODEC = $_libavcodec
7140 CONFIG_LIBAVCODECSO = $_libavcodecso
7141 CONFIG_LIBAVFORMAT = $_libavformat
7144 FAME_LIB = $_ld_fame
7145 MP1E_DEP = $_dep_mp1e
7146 MP1E_LIB = $_ld_mp1e
7147 ARCH_LIB = $_ld_arch $_ld_iconv
7149 XVID_INC = $_inc_xvid
7150 XVID_LIB = $_ld_xvid
7152 X264_INC = $_inc_x264
7153 X264_LIB = $_ld_x264
7154 CONFIG_DTS = $_libdts
7155 DTS_INC = $_inc_libdts
7156 DTS_LIB = $_ld_libdts
7157 DECORE_LIB = $_ld_decore $_ld_mp3lame
7158 MENCODER = $_mencoder
7159 ENCORE_LIB = $_ld_encore $_ld_mp3lame
7160 DIRECTFB_INC = $_inc_directfb
7161 DIRECTFB_LIB = $_ld_directfb
7162 CDPARANOIA_INC = $_inc_cdparanoia
7163 CDPARANOIA_LIB = $_ld_cdparanoia
7164 FREETYPE_INC = $_inc_freetype
7165 FREETYPE_LIB = $_ld_freetype
7166 FONTCONFIG_INC = $_inc_fontconfig
7167 FONTCONFIG_LIB = $_ld_fontconfig
7168 FRIBIDI_INC = $_inc_fribidi
7169 FRIBIDI_LIB = $_ld_fribidi
7170 LIBCDIO_INC = $_inc_libcdio
7171 LIBCDIO_LIB = $_ld_libcdio
7172 LIBLZO_LIB= $_ld_liblzo
7174 VORBIS_LIB = $_ld_vorbis $_ld_libdv
7175 SPEEX_LIB = $_ld_speex
7176 THEORA_LIB = $_ld_theora
7177 FAAD_LIB = $_ld_faad
7178 INTERNAL_FAAD = $_faad_internal
7179 SMBSUPPORT_LIB = $_ld_smb
7180 XMMS_PLUGINS = $_xmms
7181 XMMS_LIB = $_xmms_lib
7183 MACOSX_FINDER_SUPPORT = $_macosx_finder_support
7184 MACOSX_BUNDLE = $_macosx_bundle
7185 MACOSX_FRAMEWORKS = $_macosx_frameworks
7186 MACOSX_COREVIDEO = $_macosx_corevideo
7188 TOOLAME_EXTRAFLAGS=$_toolame_extraflags
7189 TOOLAME_LIB=$_toolame_lib
7191 TWOLAME_LIB=$_twolame_lib
7192 MUSEPACK_LIB = $_ld_musepack
7196 AMR_NB_FIXED=$_amr_nb_fixed
7198 `echo $_libavcodecs | tr '[a-z] ' '[A-Z]\n' | sed 's/^/CONFIG_/;s/$/=yes/'`
7201 # --- Some stuff for autoconfigure ----
7206 TARGET_MMX2 = $_mmx2
7207 TARGET_3DNOW = $_3dnow
7208 TARGET_3DNOWEX = $_3dnowex
7210 TARGET_ALTIVEC = $_altivec
7215 GTKLIB = $_ld_static $_ld_gtk
7216 GLIBLIB = $_ld_static $_ld_glib
7217 GTK_LIBS = $_ld_static $_ld_gui
7223 #############################################################################
7224 echo "Creating config.h"
7225 cat > config.h
<< EOF
7226 /* -------- This file has been automatically generated by configure ---------
7227 Note: Any changes in it will be lost when you run configure again. */
7229 /* Protect against multiple inclusion */
7230 #ifndef MPLAYER_CONFIG_H
7231 #define MPLAYER_CONFIG_H 1
7233 /* use GNU internationalization */
7236 /* Runtime CPU detection */
7237 $_def_runtime_cpudetection
7239 /* Dynamic a/v plugins */
7240 $_def_dynamic_plugins
7242 /* "restrict" keyword */
7243 $_def_restrict_keyword
7245 /* __builtin_expect branch prediction hint */
7246 $_def_builtin_expect
7247 #ifdef HAVE_BUILTIN_EXPECT
7248 #define likely(x) __builtin_expect ((x) != 0, 1)
7249 #define unlikely(x) __builtin_expect ((x) != 0, 0)
7251 #define likely(x) (x)
7252 #define unlikely(x) (x)
7255 /* attribute(used) as needed by some compilers */
7256 #if (__GNUC__ * 100 + __GNUC_MINOR__ >= 300)
7257 # define attribute_used __attribute__((used))
7259 # define attribute_used
7262 #define PREFIX "$_prefix"
7267 /* enable/disable SIGHANDLER */
7270 /* enable/disable automatic gdb attach on crash, requires SIGHANDLER */
7273 /* Toggles debugging informations */
7276 /* Toggles colorized output */
7277 //#define MSG_USE_COLORS 1
7279 /* Indicates that libcdio is available for VCD and CD-DA playback */
7282 /* Indicates that Ogle's libdvdread is available for DVD playback */
7285 /* Indicates that dvdread is from libmpdvdkit */
7288 /* Additional options for libmpdvdkit*/
7302 /* Common data directory (for fonts, etc) */
7303 #define MPLAYER_DATADIR "$_datadir"
7304 #define MPLAYER_CONFDIR "$_confdir"
7305 #define MPLAYER_LIBDIR "$_libdir"
7307 /* Define this to compile stream-caching support, it can be enabled via
7308 -cache <kilobytes> */
7309 #define USE_STREAM_CACHE 1
7311 /* Define to include support for XviD/Divx4Linux/OpenDivx */
7314 /* Define to use the new XviD/DivX4Linux library instead of open source OpenDivX */
7315 /* You have to change DECORE_LIBS in config.mak, too! */
7318 /* Define if you are using DivX5Linux Decore library */
7321 /* Define if you are using XviD library */
7327 /* Define if you are using the X.264 library */
7330 /* Define to include support for libdv-0.9.5 */
7333 /* If build mencoder */
7336 /* Indicates if XviD/Divx4linux encore is available
7337 Note: for mencoder */
7340 /* Indicates if libmp3lame is available
7341 Note: for mencoder */
7343 $_def_mp3lame_preset
7344 $_def_mp3lame_preset_medium
7346 /* Define libmp1e for realtime mpeg encoding (for DXR3 and DVB cards) */
7349 /* Define this to enable avg. byte/sec-based AVI sync method by default:
7350 (use -bps or -nobps commandline option for run-time method selection)
7351 -bps gives better sync for vbr mp3 audio, it is now default */
7352 #define AVI_SYNC_BPS 1
7354 /* Undefine this if you do not want to select mono audio (left or right)
7355 with a stereo MPEG layer 2/3 audio stream. The command line option
7356 -stereo has three possible values (0 for stereo, 1 for left-only, 2 for
7357 right-only), with 0 being the default.
7359 #define USE_FAKE_MONO 1
7361 /* Undefine this if your sound card driver has no working select().
7362 If you have kernel Oops, player hangups, or just no audio, you should
7363 try to recompile MPlayer with this option disabled! */
7366 /* define this to use iconv(3) function to codepage conversions */
7369 /* define this to use nl_langinfo function */
7372 /* define this to use RTC (/dev/rtc) for video timers */
7375 /* set up max. outburst. use 65536 for ALSA 0.5, for others 16384 is enough */
7376 #define MAX_OUTBURST 65536
7378 /* set up audio OUTBURST. Do not change this! */
7379 #define OUTBURST 512
7381 /* Define this if your system has the header file for the OSS sound interface */
7384 /* Define this if your system has the header file for the OSS sound interface
7385 * in /usr/include */
7388 /* Define this if your system has the sysinfo header */
7391 /* Define this if your system has ftello() */
7395 /* Need these for FILE and off_t an config.h is usually before other includes*/
7397 #include <sys/types.h>
7398 off_t ftello(FILE *);
7401 /* Define this if your system has the "malloc.h" header file */
7404 /* memalign is mapped to malloc if unsupported */
7406 #ifndef HAVE_MEMALIGN
7407 # define memalign(a,b) malloc(b)
7408 #define MEMALIGN_HACK 1
7411 /* Define this if your system has the "alloca.h" header file */
7414 /* Define this if your system has the "sys/mman.h" header file */
7416 $_def_mman_has_map_failed
7418 /* Define this if you have the elf dynamic linker -ldl library */
7421 /* Define this if you have the kstat kernel statistics library */
7424 /* Define this if you have zlib */
7427 #define CONFIG_ZLIB 1
7430 /* Define this if you have shm support */
7433 /* Define this if your system has scandir & alphasort */
7436 /* Define this if your system has strsep */
7439 /* Define this if your system has strlcpy */
7441 #ifndef HAVE_STRLCPY
7442 unsigned int strlcpy (char *dest, const char *src, unsigned int size);
7445 /* Define this if your system has strlcat */
7447 #ifndef HAVE_STRLCAT
7448 unsigned int strlcat (char *dest, const char *src, unsigned int size);
7451 /* Define this if your system has fseeko */
7454 /* Need these for FILE and off_t an config.h is usually before other includes*/
7456 #include <sys/types.h>
7457 int fseeko(FILE *, off_t, int);
7462 /* Define this if your system has vsscanf */
7465 /* Define this if your system has swab */
7468 /* Define this if your system has no posix select */
7469 $_def_no_posix_select
7471 /* Define this if your system has gettimeofday */
7474 /* Define this if your system has glob */
7477 /* Define this if your system has pthreads */
7480 /* Define this if you enabled thread support for libavcodec */
7483 /* LIRC (remote control, see www.lirc.org) support: */
7487 * LIRCCD (LIRC client daemon)
7488 * See http://www.dolda2000.cjb.net/~fredrik/lirccd/
7492 /* DVD navigation support using libdvdnav */
7494 $_def_dvdnav_version
7496 /* Define this to enable MPEG 1/2 image postprocessing (requires a FAST CPU!) */
7497 #define MPEG12_POSTPROC 1
7499 /* Define this to enable image postprocessing in libavcodec (requires a FAST CPU!) */
7502 /* Define to include support for OpenDivx postprocessing */
7503 $_def_odivx_postprocess
7505 /* Win32 DLL support */
7507 #define WIN32_PATH "$_win32libdir"
7509 /* DirectShow support */
7512 /* Mac OS X specific features */
7514 $_def_macosx_finder_support
7516 $_def_macosx_corevideo
7518 /* Build our Win32-loader */
7521 /* ffmpeg's libavcodec support (requires libavcodec source) */
7525 /* ffmpeg's libavformat support (requires libavformat source) */
7527 $_def_libavformat_win32
7529 /* Use libavcodec's decoders */
7530 #define CONFIG_DECODERS 1
7531 /* Use libavcodec's encoders */
7532 #define CONFIG_ENCODERS 1
7534 /* Use libavformat's demuxers */
7535 #define CONFIG_DEMUXERS 1
7536 /* Use libavformat's muxers */
7537 #define CONFIG_MUXERS 1
7539 #define CONFIG_MPEGAUDIO_HP 1
7541 #define CONFIG_GPL 1
7543 /* Use amr codecs from libavcodec (requires amr sources) */
7548 /* Use specific codecs from libavcodec */
7549 `echo $_libavcodecs | tr '[a-z] ' '[A-Z]\n' | sed 's/^/#define CONFIG_/;s/$/ 1/'`
7551 /* Use codec libs included in mplayer CVS / source dist: */
7557 /* Use libfame encoder filter */
7560 /* XAnim DLL support */
7562 /* Default search path */
7565 /* RealPlayer DLL support */
7567 /* Default search path */
7570 /* LIVE555 Streaming Media library support */
7573 /* Use 3dnow/mmxext/sse/mmx optimized fast memcpy() [maybe buggy... signal 4]*/
7576 /* Use unrarlib for Vobsubs */
7579 /* gui support, please do not edit this option */
7583 /* Audio output drivers */
7585 $_def_ossaudio_devdsp
7586 $_def_ossaudio_devmixer
7595 $_def_sys_asoundlib_h
7596 $_def_alsa_asoundlib_h
7602 /* Enable fast OSD/SUB renderer (looks ugly, but uses less CPU power) */
7604 #undef FAST_OSD_TABLE
7606 /* Enable TV Interface support */
7609 /* Enable EDL support */
7612 /* Enable Video 4 Linux TV interface support */
7615 /* Enable Video 4 Linux 2 TV interface support */
7618 /* Enable *BSD BrookTree TV interface support */
7621 /* Define if your processor stores words with the most significant
7622 byte first (like Motorola and SPARC, unlike Intel and VAX). */
7627 /* For the PPC. G5 has the dcbzl when in 64bit mode but G4s and earlier do not
7628 have the instruction. */
7631 /* libmpeg2 wants ARCH_PPC and the rest of mplayer use ARCH_POWERPC,
7632 * define ARCH_PPC if ARCH_POWERPC is set to cope with that.
7638 /* the same issue as with ARCH_POWERPC but with ffmpeg/libavcodec */
7643 /* only gcc3 can compile mvi instructions */
7644 $_def_gcc_mvi_support
7646 /* Define this for Cygwin build for win32 */
7649 /* Define this to any prefered value from 386 up to infinity with step 100 */
7650 #define __CPU__ $iproc
7659 #define DEFAULT_CDROM_DEVICE "/vol/dev/aliases/cdrom0"
7660 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
7662 #define DEFAULT_CDROM_DEVICE "/dev/cdrom"
7663 #define DEFAULT_DVD_DEVICE "/dev/dvd"
7664 #elif defined(WIN32)
7665 #define DEFAULT_CDROM_DEVICE "D:"
7666 #define DEFAULT_DVD_DEVICE "D:"
7667 #elif defined(SYS_DARWIN)
7668 #define DEFAULT_CDROM_DEVICE "/dev/disk1"
7669 #define DEFAULT_DVD_DEVICE "/dev/rdiskN"
7670 #elif defined(__OpenBSD__)
7671 #define DEFAULT_CDROM_DEVICE "/dev/rcd0a"
7672 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
7673 #elif defined(__FreeBSD__)
7674 #define DEFAULT_CDROM_DEVICE "/dev/acd0"
7675 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
7677 #define DEFAULT_CDROM_DEVICE "/dev/cdrom"
7678 #define DEFAULT_DVD_DEVICE "/dev/dvd"
7682 /*----------------------------------------------------------------------------
7684 ** NOTE: Instead of modifying these definitions here, use the
7685 ** --enable/--disable options of the ./configure script!
7686 ** See ./configure --help for details.
7688 *---------------------------------------------------------------------------*/
7690 /* C99 lrintf function available */
7693 /* round function is available */
7696 /* yes, we have inttypes.h */
7697 #define HAVE_INTTYPES_H 1
7699 /* int_fastXY_t emulation */
7702 /* nanosleep support */
7708 /* termcap flag for getch2.c */
7711 /* termios flag for getch2.c */
7716 /* enable PNG support */
7719 /* enable JPEG support */
7722 /* enable PNM support */
7725 /* enable md5sum support */
7728 /* enable GIF support */
7733 /* enable FreeType support */
7736 /* enable Fontconfig support */
7739 /* enable FriBiDi usage */
7742 /* enable ENCA usage */
7745 /* liblzo support */
7748 /* libmad support */
7751 /* enable OggVorbis support */
7754 /* enable Tremor as vorbis decoder */
7757 /* enable Speex support */
7760 /* enable musepack support */
7763 /* enable OggTheora support */
7766 /* enable Matroska support */
7769 /* enable FAAD (AAC) support */
7773 /* enable FAAC (AAC encoder) support */
7776 /* enable LADSPA plugin support */
7779 /* enable network */
7782 /* enable ftp support */
7785 /* enable vstream support */
7788 /* enable winsock2 instead of Unix functions*/
7791 /* define this to use inet_aton() instead of inet_pton() */
7794 /* enables / disables cdparanoia support */
7797 /* enables / disables VIDIX usage */
7800 /* enables / disables new input joystick support */
7803 /* enables / disables QTX codecs */
7806 /* enables / disables osd menu */
7809 /* enables / disables subtitles sorting */
7812 /* XMMS input plugin support */
7814 #define XMMS_INPUT_PLUGIN_DIR "$_xmmsplugindir"
7816 /* enables inet6 support */
7819 /* do we have gethostbyname2? */
7820 $_def_gethostbyname2
7822 /* Extension defines */
7823 $_def_3dnow // only define if you have 3DNOW (AMD k6-2, AMD Athlon, iDT WinChip, etc.)
7824 $_def_3dnowex // only define if you have 3DNOWEX (AMD Athlon, etc.)
7825 $_def_mmx // only define if you have MMX (newer x86 chips, not P54C/PPro)
7826 $_def_mmx2 // only define if you have MMX2 (Athlon/PIII/4/CelII)
7827 $_def_sse // only define if you have SSE (Intel Pentium III/4 or Celeron II)
7828 $_def_sse2 // only define if you have SSE2 (Intel Pentium 4)
7829 $_def_altivec // only define if you have Altivec (G4)
7831 $_def_altivec_h // enables usage of altivec.h
7834 $_def_mlib // Sun mediaLib, available only on solaris
7835 $_def_vis // only define if you have VIS ( ultrasparc )
7837 /* libmpeg2 uses a different feature test macro for mediaLib */
7839 #define LIBMPEG2_MLIB 1
7843 #define SCREEN_SIZE_X 1
7844 #define SCREEN_SIZE_Y 1
7856 /* defined for SDLlib with keyrepeat bugs (before 1.2.1) */
7865 $_def_directfb_version
7888 #if defined(HAVE_GL) || defined(HAVE_X11) || defined(HAVE_XV)
7889 #define X11_FULLSCREEN 1
7892 #endif /* MPLAYER_CONFIG_H */
7895 #############################################################################
7897 echo "Creating libvo/config.mak"
7898 _voobj
=`echo $_vosrc | sed -e 's/\.c/\.o/g;s/\.m/\.o/g'`
7899 cat > libvo
/config.mak
<< EOF
7900 include ../config.mak
7901 OPTIONAL_SRCS = $_vosrc
7902 OPTIONAL_OBJS = $_voobj
7905 #############################################################################
7907 echo "Creating libao2/config.mak"
7908 _aoobj
=`echo $_aosrc | sed -e 's/\.c/\.o/g'`
7909 cat > libao
2/config.mak
<< EOF
7910 include ../config.mak
7911 OPTIONAL_SRCS = $_aosrc
7912 OPTIONAL_OBJS = $_aoobj
7915 #############################################################################
7917 echo "Creating libaf/config.mak"
7918 _afobj
=`echo $_afsrc | sed -e 's/\.c/\.o/g'`
7919 cat > libaf
/config.mak
<< EOF
7920 include ../config.mak
7921 OPTIONAL_SRCS = $_afsrc
7922 OPTIONAL_OBJS = $_afobj
7925 #############################################################################
7929 Config files successfully generated by ./configure !
7931 Install prefix: $_prefix
7932 Data directory: $_datadir
7933 Config direct.: $_confdir
7935 Byte order: $_byte_order
7936 Optimizing for: $_optimizing
7939 Messages/GUI: $_language
7942 echo -n " Manual pages: $MAN_LANG"
7943 test "$LANGUAGES" = en
&& echo -n " (no localization selected, use --language=all)"
7948 Enabled optional drivers:
7949 Input: $_inputmodules
7950 Codecs: $_codecmodules
7951 Audio output: $_aomodules
7952 Video output: $_vomodules
7953 Audio filters: $_afmodules
7954 Disabled optional drivers:
7955 Input: $_noinputmodules
7956 Codecs: $_nocodecmodules
7957 Audio output: $_noaomodules
7958 Video output: $_novomodules
7959 Audio filters: $_noafmodules
7961 'config.h' and 'config.mak' contain your configuration options.
7962 Note: If you alter theses files (for instance CFLAGS) MPlayer may no longer
7963 compile *** DO NOT REPORT BUGS if you tweak these files ***
7965 'make' will now compile MPlayer and 'make install' will install it.
7966 Note: On non-Linux systems you might need to use 'gmake' instead of 'make'.
7971 if test "$_mtrr" = yes ; then
7972 echo "Please check mtrr settings at /proc/mtrr (see DOCS/HTML/$_doc_lang/video.html#mtrr)"
7976 if test "$_sdl" = "outdated" ; then
7978 You have an outdated version of libSDL installed (older than v1.1.7) and SDL
7979 support has therefore been disabled.
7981 Please upgrade to a more recent version (version 1.1.8 and above are known to
7982 work). You may get this library from: http://www.libsdl.org
7984 You need to rerun ./configure and recompile after updating SDL. If you are
7985 only interested in the libSDL audio drivers, then an older version might work.
7987 Use --enable-sdl to force usage of libSDL.
7993 if test "$_win32" = no
; then
7994 if test "$_win32libdir" ; then
7995 echo "Failed to find a Win32 codecs dir at $_win32libdir!"
7997 echo "Failed to find a Win32 codecs directory! (default: /usr/local/lib/codecs/)"
8000 Create it and copy the DLL files there! You can download the codecs from our
8001 homepage at http://www.mplayerhq.hu/MPlayer/releases/codecs/
8007 NOTE: Win32 codec DLLs are not supported on your CPU ($host_arch) or your
8008 operating system ($system_name). You may encounter a few files that cannot
8009 be played due to missing open source video/audio codec support.
8017 Check $TMPLOG if you wonder why an autodetection failed (check whether
8018 the development headers/packages are installed).
8019 Do not report compilation errors if you used any of the --enable-* options
8020 (except --enable-gui and maybe --enable-debug).
8022 If you suspect a bug, please read DOCS/HTML/$_doc_lang/bugreports.html.
8026 if test "$_vidix" = no
; then
8028 You've disabled VIDIX. Although it would be better to PORT it instead.
8029 Have a look at the documentation for supported cards!
8034 if test "$_warn_CFLAGS" = yes; then
8037 MPlayer compilation will use the CFLAGS set by you, but:
8039 *** *** DO NOT REPORT BUGS IF IT DOES NOT COMPILE/WORK! *** ***
8041 It is strongly recommended to let MPlayer choose the correct CFLAGS!
8042 To do so, execute 'CFLAGS= ./configure <options>'
8048 rm -f "$TMPO" "$TMPC" "$TMPS" "$TMPCPP"