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
24 #############################################################################
26 # Prefer these macros to full length text !
27 # These macros only return an error code - NO display is done
30 cat "$TMPC" >> "$TMPLOG"
32 echo "$_cc $CFLAGS $_inc_extra $_ld_static $_ld_extra $TMPC -o $TMPO $@" >> "$TMPLOG"
34 ( $_cc $CFLAGS $_inc_extra $_ld_static $_ld_extra "$TMPC" -o "$TMPO" "$@" ) >> "$TMPLOG" 2>&1
37 echo "ldd $TMPO" >> "$TMPLOG"
38 ( $_ldd "$TMPO" ) >> "$TMPLOG" 2>&1
43 # Display error message, flushes tempfile, exit
48 rm -f "$TMPO" "$TMPC" "$TMPS" "$TMPCPP"
49 echo "Check \"$TMPLOG\" if you do not understand why it failed."
53 # OS test booleans functions
55 test "`echo $system_name | tr A-Z a-z`" = "`echo $1 | tr A-Z a-z`"
57 linux
() { issystem
"Linux" ; return "$?" ; }
58 sunos
() { issystem
"SunOS" ; return "$?" ; }
59 hpux
() { issystem
"HP-UX" ; return "$?" ; }
60 irix
() { issystem
"IRIX" ; return "$?" ; }
61 cygwin
() { issystem
"CYGWIN" ; return "$?" ; }
62 freebsd
() { issystem
"FreeBSD" ; return "$?" ; }
63 netbsd
() { issystem
"NetBSD" ; return "$?" ; }
64 bsdos
() { issystem
"BSD/OS" ; return "$?" ; }
65 openbsd
() { issystem
"OpenBSD" ; return "$?" ; }
66 bsd
() { freebsd || netbsd || bsdos || openbsd
; return "$?" ; }
67 qnx
() { issystem
"QNX" ; return "$?" ; }
68 darwin
() { issystem
"Darwin" ; return "$?" ; }
69 gnu
() { issystem
"GNU" ; return "$?" ; }
70 mingw32
() { issystem
"MINGW32" ; return "$?" ; }
71 morphos
() { issystem
"MorphOS" ; return "$?" ; }
72 win32
() { cygwin || mingw32
; return "$?" ; }
73 beos
() { issystem
"BEOS" ; return "$?" ; }
75 # arch test boolean functions
76 # x86/x86pc is used by QNX
79 i
[3-9]86|x86|x86pc|k5|k6|k6-2|k6-3|pentium
*|athlon
*|i586-i686
) return 0 ;;
98 # not boolean test: implement the posix shell "!" operator for a
100 # usage: not {command}
101 # returns exit status "success" when the execution of "command"
108 # Use this before starting a check
110 echo "============ Checking for $@ ============" >> "$TMPLOG"
111 echo ${_echo_n} "Checking for $@ ... ${_echo_c}"
114 # Use this to echo the results of a check
116 echo "Result is: $@" >> "$TMPLOG"
117 echo "##########################################" >> "$TMPLOG"
121 #############################################################################
123 # Check how echo works in this /bin/sh
125 -n) _echo_n
= _echo_c
='\c' ;; # SysV echo
126 *) _echo_n
='-n ' _echo_c
= ;; # BSD echo
129 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"`
131 for parm
in "$@" ; do
132 if test "$parm" = "--help" ||
test "$parm" = "-help" ||
test "$parm" = "-h" ; then
135 Usage: $0 [OPTIONS]...
138 -h, --help display this help and exit
140 Installation directories:
141 --prefix=DIR use this prefix for installing mplayer [/usr/local]
142 --bindir=DIR use this prefix for installing mplayer binary
144 --datadir=DIR use this prefix for installing machine independent
145 data files (fonts, skins) [PREFIX/share/mplayer]
146 --mandir=DIR use this prefix for installing manpages [PREFIX/man]
147 --confdir=DIR use this prefix for installing configuration files
149 --libdir=DIR use this prefix for object code libraries [PREFIX/lib]
152 --disable-mencoder disable mencoder (a/v encoder) compilation [enable]
153 --enable-gui enable gmplayer compilation (GTK 1.2 GUI) [disable]
154 --enable-largefiles enable support for files > 2 GBytes [disable]
155 --enable-linux-devfs set default devices to devfs ones [disable]
156 --enable-termcap use termcap database for key codes [autodetect]
157 --enable-termios use termios database for key codes [autodetect]
158 --disable-iconv do not use iconv(3) function [autodetect]
159 --disable-setlocale disable setlocale using in mplayer [autodetect]
160 --disable-langinfo do not use langinfo [autodetect]
161 --enable-lirc enable LIRC (remote control) support [autodetect]
162 --enable-lircc enable LIRCCD (LIRC client daemon) input [autodetect]
163 --enable-joystick enable joystick support [disable]
164 --disable-tv disable TV Interface (tv/dvb grabbers) [enable]
165 --disable-tv-v4l disable Video4Linux TV Interface support [autodetect]
166 --disable-tv-v4l2 disable Video4Linux2 TV Interface support [autodetect]
167 --disable-tv-bsdbt848 disable BSD BT848 Interface support [autodetect]
168 --disable-edl disable EDL (edit decision list) support [enable]
169 --disable-rtc disable RTC (/dev/rtc) on Linux [autodetect]
170 --disable-network disable network support (for: http/mms/rtp) [enable]
171 --enable-winsock2 enable winsock2 usage [autodetect]
172 --enable-smb enable Samba (SMB) input support [autodetect]
173 --enable-live enable LIVE.COM Streaming Media support [autodetect]
174 --disable-dvdread Disable libdvdread support [autodetect]
175 --disable-mpdvdkit Disable mpdvdkit/mpdvdkit2 support [autodetect]
176 --disable-cdparanoia Disable cdparanoia support [autodetect]
177 --disable-freetype Disable freetype2 font rendering support [autodetect]
178 --disable-fontconfig Disable fontconfig font lookup support [autodetect]
179 --disable-unrarlib Disable Unique RAR File Library [enabled]
180 --enable-menu Enable OSD menu support (NOT DVD MENU) [disabled]
181 --disable-sortsub Disable subtitles sorting [enabled]
182 --enable-fribidi Enable using the FriBiDi libs [disabled]
183 --disable-enca Disable using ENCA charset oracle library [autodetect]
184 --disable-macosx Disable Mac OS X specific features [autodetect]
185 --disable-inet6 Disable IPv6 support [autodetect]
186 --disable-gethostbyname2 gethostbyname() function is not provided by the C
188 --disable-ftp Disable ftp support [enabled]
191 --enable-gif enable gif support [autodetect]
192 --enable-png enable png input/output support [autodetect]
193 --enable-jpeg enable jpeg input/output support [autodetect]
194 --enable-liblzo enable external liblzo support [autodetect]
195 --disable-win32 disable Win32 DLL support [autodetect]
196 --disable-macshlb disable Mac OS X SHLB support [autodetect]
197 --disable-dshow disable Win32/DirectShow support [autodetect]
198 --disable-qtx disable Quicktime codecs [autodetect]
199 --disable-xanim disable XAnim DLL support [autodetect]
200 --disable-real disable RealPlayer DLL support [autodetect]
201 --disable-xvid disable XviD codec [autodetect]
202 --disable-x264 disable H.264 encoder [autodetect]
203 --disable-divx4linux disable DivX4linux/Divx5linux codec [autodetect]
204 --enable-opendivx enable _old_ OpenDivx codec [disable]
205 --disable-libavcodec disable libavcodec [autodetect]
206 --disable-libavformat disable libavformat [autodetect]
207 --enable-libfame enable libfame realtime encoder [autodetect]
208 --enable-vorbis build with OggVorbis support [autodetect]
209 --enable-tremor build with integer-only OggVorbis support [disabled]
210 --enable-theora build with OggTheora support [autodetect]
211 --disable-internal-matroska disable internal Matroska support [enabled]
212 --enable-external-faad build with external FAAD2 (AAC) support [autodetect]
213 --disable-internal-faad disable internal FAAD2 (AAC) support [autodetect]
214 --disable-libdv disable libdv 0.9.5 en/decoding support [autodetect]
215 --disable-mad disable libmad (MPEG audio) support [autodetect]
216 --disable-toolame disable Toolame (MPEG layer 2 audio) support in mencoder [autodetect]
217 --enable-xmms build with XMMS inputplugin support [disabled]
218 --disable-mp3lib disable builtin mp3lib [enabled]
219 --disable-liba52 disable builtin liba52 [enabled]
220 --enable-libdts enable libdts support [autodetect]
221 --disable-libmpeg2 disable builtin libmpeg2 [enabled]
224 --disable-vidix disable VIDIX [enable on x86 *nix]
225 --enable-gl build with OpenGL render support [autodetect]
226 --enable-dga[=n] build with DGA [n in {1, 2} ] support [autodetect]
227 --enable-vesa build with VESA support [autodetect]
228 --enable-svga build with SVGAlib support [autodetect]
229 --enable-sdl build with SDL render support [autodetect]
230 --enable-aa build with AAlib render support [autodetect]
231 --enable-caca build with CACA render support [autodetect]
232 --enable-ggi build with GGI render support [autodetect]
233 --enable-directx build with DirectX support [autodetect]
234 --enable-dxr2 build with DXR2 render support [autodetect]
235 --enable-dxr3 build with DXR3/H+ render support [autodetect]
236 --enable-dvb build with support for output via DVB-Card [autodetect]
237 --enable-dvbhead build with DVB support (HEAD version) [autodetect]
238 --enable-mga build with mga_vid (for Matrox G200/G4x0/G550) support
239 (check for /dev/mga_vid) [autodetect]
240 --enable-xmga build with mga_vid X Window support
241 (check for X & /dev/mga_vid) [autodetect]
242 --enable-xv build with Xv render support for X 4.x [autodetect]
243 --enable-xvmc build with XvMC acceleration for X 4.x [autodetect]
244 --enable-vm build with XF86VidMode support for X11 [autodetect]
245 --enable-xinerama build with Xinerama support for X11 [autodetect]
246 --enable-x11 build with X11 render support [autodetect]
247 --enable-fbdev build with FBDev render support [autodetect]
248 --enable-mlib build with MLIB support (Solaris only) [autodetect]
249 --enable-3dfx build with obsolete /dev/3dfx support [disable]
250 --enable-tdfxfb build with tdfxfb (Voodoo 3/banshee) support [disable]
251 --enable-directfb build with DirectFB support [autodetect]
252 --enable-zr build with ZR360[56]7/ZR36060 support [autodetect]
253 --enable-bl build with Blinkenlights support [disable]
254 --enable-tdfxvid build with tdfx_vid support [disable]
255 --disable-tga disable targa output support [enable]
258 --disable-alsa disable ALSA sound support [autodetect]
259 --disable-ossaudio disable OSS sound support [autodetect]
260 --disable-arts disable aRts sound support [autodetect]
261 --disable-esd disable esd sound support [autodetect]
262 --disable-jack disable JACK sound support [autodetect]
263 --disable-nas disable NAS sound support [autodetect]
264 --disable-sgiaudio disable SGI sound support [autodetect]
265 --disable-sunaudio disable Sun sound support [autodetect]
266 --disable-win32waveout disable Windows waveout sound support [autodetect]
267 --disable-select disable using select() on audio device [enable]
269 Miscellaneous options:
270 --enable-runtime-cpudetection Enable runtime CPU detection [disable]
271 --cc=COMPILER use this C compiler to build MPlayer [gcc]
272 --host-cc=COMPILER use this C compiler to build apps needed for the build process [gcc]
273 --as=ASSEMBLER use this assembler to build MPlayer [as]
274 --target=PLATFORM target platform (i386-linux, arm-linux, etc)
275 --enable-static build a statically linked binary. Set further linking
276 options with --enable-static="-lslang -lncurses"
277 --language=list a white space or comma separated list of languages
278 for translated man pages, the first language is the
279 primary and therefore used for translated messages
280 and GUI (also the environment variable \$LINGUAS is
282 (Available: $LANGUAGES all)
283 --enable-shared-pp install & use shared postprocessing lib
284 --with-install=PATH use a custom install program (useful if your OS uses
285 a GNU-incompatible install utility by default and
286 you want to use GNU version)
287 --install-path=PATH the path to a custom install program
288 this option is obsolete and will be removed soon,
289 use --with-install instead.
292 --enable-mmx build with MMX support [autodetect]
293 --enable-mmx2 build with MMX2 support (PIII, Athlon) [autodetect]
294 --enable-3dnow build with 3DNow! support [autodetect]
295 --enable-3dnowex build with extended 3DNow! support [autodetect]
296 --enable-sse build with SSE support [autodetect]
297 --enable-sse2 build with SSE2 support [autodetect]
298 --enable-shm build with shm support [autodetect]
299 --enable-altivec build with Altivec support (PowerPC) [autodetect]
300 --disable-fastmemcpy disable 3DNow!/SSE/MMX optimized memcpy() [enable]
301 --enable-big-endian Force byte order to big-endian [autodetect]
302 --enable-debug[=1-3] compile debugging information into mplayer [disable]
303 --enable-profile compile profiling information into mplayer [disable]
304 --disable-sighandler disable sighandler for crashes [enable]
305 --enable-i18n _experimental_ gnu gettext() support [autodetect]
306 --enable-dynamic-plugins Enable support for dynamic a/v plugins [disable]
308 Hazardous options a.k.a. "DO NOT REPORT ANY BUGS!"
309 --disable-gcc-checking disable gcc version checking [enable]
311 Use these options if autodetection fails (Options marked with (*) accept
312 multiple paths separated by ':'):
313 --with-extraincdir=DIR extra headers (png, mad, sdl, ...) in DIR (*)
314 --with-extralibdir=DIR extra library files (png, mad, sdl, ...) in DIR (*)
315 --with-x11incdir=DIR X headers in DIR (*)
316 --with-x11libdir=DIR X library files in DIR (*)
317 --with-dxr2incdir=DIR DXR2 headers in DIR (*)
318 --with-dvbincdir=DIR DVB headers in DIR (*)
319 --with-madlibdir=DIR libmad (libmad shared library) in DIR (*)
320 --with-mlibdir=DIR libmlib (MLIB support) in DIR (Solaris only)
321 --with-codecsdir=DIR Binary codec files in DIR
322 --with-win32libdir=DIR W*ndows DLL files in DIR
323 --with-xanimlibdir=DIR XAnim DLL files in DIR
324 --with-reallibdir=DIR RealPlayer DLL files in DIR
325 --with-xvidlibdir=DIR libxvidcore (XviD) in DIR (*)
326 --with-xvidincdir=DIR XviD header in DIR (*)
327 --with-x264libdir=DIR libx264 in DIR
328 --with-x264incdir=DIR x264 header in DIR
329 --with-dtslibdir=DIR libdts library in DIR (*)
330 --with-dtsincdir=DIR libdts header in DIR (*)
331 --with-livelibdir=DIR LIVE.COM Streaming Media libraries in DIR
332 --with-toolamedir=DIR path to Toolame library and include file
333 --with-xmmsplugindir=DIR XMMS plugins in DIR
334 --with-xmmslibdir=DIR libxmms.so.1 in DIR
335 --with-bio2jack=DIR libbio2jack.a in DIR
336 --with-cdparanoiaincdir=DIR cdparanoia headers in DIR (*)
337 --with-cdparanoialibdir=DIR cdparanoia libraries (libcdda_*) in DIR (*)
338 --with-xvmclib=NAME name of adapter-specific library (e.g. XvMCNVIDIA)
339 --with-termcaplib=NAME name of library with termcap functionality
340 name should be given without leading "lib"
341 checks for "termcap" and "tinfo"
343 --with-freetype-config=PATH path to freetype-config
344 (e.g. /opt/bin/freetype-config)
345 --with-fribidi-config=PATH path to fribidi-config
346 (e.g. /opt/bin/fribidi-config)
347 --with-glib-config=PATH path to glib*-config (e.g. /opt/bin/glib-config)
348 --with-gtk-config=PATH path to gtk*-config (e.g. /opt/bin/gtk-config)
349 --with-sdl-config=PATH path to sdl*-config (e.g. /opt/bin/sdl-config)
353 done # for parm in ...
356 # 1st pass checking for vital options
360 test "$CC" && _cc
="$CC"
362 _runtime_cpudetection
=no
366 _target
=`echo $ac_option | cut -d '=' -f 2`
369 _cc
=`echo $ac_option | cut -d '=' -f 2`
372 _host_cc
=`echo $ac_option | cut -d '=' -f 2`
375 _as
=`echo $ac_option | cut -d '=' -f 2`
377 --enable-gcc-checking)
380 --disable-gcc-checking)
390 _ld_static
="-static `echo $ac_option | cut -d '=' -f 2`"
392 --with-extraincdir=*)
393 _inc_extra
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
395 --with-extralibdir=*)
396 _ld_extra
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
398 --enable-runtime-cpudetection)
399 _runtime_cpudetection
=yes
401 --disable-runtime-cpudetection)
402 _runtime_cpudetection
=no
405 _install
=`echo $ac_option | cut -d '=' -f 2 | sed 's/\/$//'`"/install"
408 _install
=`echo $ac_option | cut -d '=' -f 2 `
413 # Determine our OS name and CPU architecture
414 if test -z "$_target" ; then
416 system_name
=`( uname -s ) 2>&1`
417 case "$system_name" in
418 Linux|FreeBSD|NetBSD|BSD
/OS|OpenBSD|SunOS|QNX|Darwin|GNU|BeOS
)
426 [cC
][yY
][gG
][wW
][iI
][nN
]*)
436 system_name
="$system_name-UNKNOWN"
441 # host's CPU/instruction set
442 host_arch
=`( uname -p ) 2>&1`
444 i386|sparc|ppc|alpha|arm|mips|vax
)
446 powerpc
) # Darwin returns 'powerpc'
449 *) # uname -p on Linux returns 'unknown' for the processor type,
450 # OpenBSD returns 'Intel Pentium/MMX ("Genuine Intel" 586-class)'
452 # Maybe uname -m (machine hardware name) returns something we
455 # x86/x86pc is used by QNX
456 case "`( uname -m ) 2>&1`" in
457 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
;;
458 ia64
) host_arch
=ia64
;;
459 x86_64|amd64
) host_arch
=x86_64
;;
460 macppc|ppc
) host_arch
=ppc
;;
461 alpha
) host_arch
=alpha
;;
462 sparc
) host_arch
=sparc
;;
463 sparc64
) host_arch
=sparc64
;;
464 parisc
*|hppa
*|
9000*) host_arch
=hppa
;;
465 arm
*) host_arch
=arm
;;
466 s390
) host_arch
=s390
;;
467 s390x
) host_arch
=s390x
;;
468 mips
) host_arch
=mips
;;
469 vax
) host_arch
=vax
;;
470 *) host_arch
=UNKNOWN
;;
475 system_name
=`echo $_target | cut -d '-' -f 2`
476 case "`echo $system_name | tr A-Z a-z`" in
477 linux
) system_name
=Linux
;;
478 freebsd
) system_name
=FreeBSD
;;
479 netbsd
) system_name
=NetBSD
;;
480 bsd
/os
) system_name
=BSD
/OS
;;
481 openbsd
) system_name
=OpenBSD
;;
482 sunos
) system_name
=SunOS
;;
483 qnx
) system_name
=QNX
;;
484 morphos
) system_name
=MorphOS
;;
485 mingw32msvc
) system_name
=MINGW32
;;
487 # We need to convert underscores so that values like k6-2 and pentium-mmx can be passed
488 host_arch
=`echo $_target | cut -d '-' -f 1 | tr '_' '-'`
491 echo "Detected operating system: $system_name"
492 echo "Detected host architecture: $host_arch"
494 # LGB: temporary files
495 for I
in "$TMPDIR" "$TEMPDIR" "/tmp" ; do
499 TMPLOG
="configure.log"
501 TMPC
="$I/mplayer-conf-$RANDOM-$$.c"
502 TMPCPP
="$I/mplayer-conf-$RANDOM-$$.cpp"
503 TMPO
="$I/mplayer-conf-$RANDOM-$$.o"
504 TMPS
="$I/mplayer-conf-$RANDOM-$$.S"
508 # FIXME: A lot of stuff is installed under /usr/local
509 # NK: But we should never use this stuff implicitly since we call compiler
510 # from /usr we should be sure that there no effects from other compilers
511 # (libraries) which might be installed into /usr/local. Let users use this
512 # stuff explicitly as command line argument. In other words: It would be
513 # resonable to have only /usr/include or only /usr/local/include.
516 _ld_extra
="$_ld_extra -L/usr/local/lib"
517 _inc_extra
="$_inc_extra -I/usr/local/include"
521 for I
in `echo $_ld_extra | sed 's/-L//g'` ; do
522 tmp
="$tmp ` echo $I | sed 's/.*/ -L& -Wl,-R&/'`"
532 # Checking CC version...
533 if test "$_skip_cc_check" != yes ; then
534 # Intel C++ Compilers (no autoselect, use CC=/some/binary ./configure)
535 if test "`basename $_cc`" = "icc" ||
test "`basename $_cc`" = "ecc"; then
536 echocheck
"$_cc version"
538 cc_name
=`( $_cc -V ) 2>&1 | head -1 | cut -d ',' -f 1`
539 cc_version
=`( $_cc -V ) 2>&1 | head -1 | cut -d ',' -f 2 | cut -d ' ' -f 3`
540 _cc_major
=`echo $cc_version | cut -d '.' -f 1`
541 _cc_minor
=`echo $cc_version | cut -d '.' -f 2`
542 # TODO verify older icc/ecc compatibility
545 cc_version
="v. ?.??, bad"
549 cc_version
="$cc_version, ok"
553 cc_version
="$cc_version, bad"
557 echores
"$cc_version"
559 for _cc
in "$_cc" gcc gcc-3.4 gcc-3.3 gcc-3.2 gcc-3.1 gcc3 gcc-3.0 cc
; do
560 echocheck
"$_cc version"
562 cc_name
=`( $_cc -v ) 2>&1 | tail -1 | cut -d ' ' -f 1`
563 cc_version
=`( $_cc -dumpversion ) 2>&1`
564 if test "$?" -gt 0; then
565 cc_version
="not found"
569 cc_version
="v. ?.??, bad"
572 2.95.
[2-9]|
2.95.
[2-9][-.
]*|
3.
[0-9]|
3.
[0-9].
[0-9])
573 _cc_major
=`echo $cc_version | cut -d '.' -f 1`
574 _cc_minor
=`echo $cc_version | cut -d '.' -f 2`
575 _cc_mini
=`echo $cc_version | cut -d '.' -f 3`
576 cc_version
="$cc_version, ok"
583 cc_version
="$cc_version, bad"
587 echores
"$cc_version"
588 (test "$cc_verc_fail" = "no") && break
591 if test "$cc_verc_fail" = yes ; then
594 *** Please downgrade/upgrade C compiler to version gcc-2.95.x or gcc-3.x! ***
596 You are not using a supported compiler. We do not have the time to make sure
597 everything works with compilers other than the ones we use. Use either the
598 same compiler as we do, or use --disable-gcc-checking but DO *NOT* REPORT BUGS
599 unless you can reproduce them after recompiling with a 2.95.x or 3.x version!
601 Note for gcc 2.96 users: Some versions of this compiler are known to miscompile
602 mplayer and lame (which is used for mencoder). If you get compile errors,
603 first upgrade to the latest 2.96 release (minimum 2.96-85) and try again.
604 If the problem still exists, try with gcc 3.x (or 2.95.x) *BEFORE* reporting
607 GCC 2.96 IS NOT AND WILL NOT BE SUPPORTED BY US !
609 *** For details please read DOCS/HTML/en/users-vs-dev.html ***
612 die
"Bad gcc version"
617 ******************************************************************************
619 Hmm. You really want to compile MPlayer with an *UNSUPPORTED* C compiler?
620 Ok. You know. Do it. Did you read DOCS/HTML/en/users-vs-dev.html???
622 DO NOT SEND BUGREPORTS OR COMPLAIN, it's *YOUR* compiler's fault!
623 Get ready for mysterious crashes, no-picture bugs, strange noises... REALLY!
624 Lame which is used by mencoder produces weird errors, too.
626 If you have any problem, install a GCC 2.95.x or 3.x version and try again.
627 If the problem _still_ exists, then read DOCS/HTML/en/bugreports.html !
629 *** DO NOT SEND BUG REPORTS OR COMPLAIN it's *YOUR* compiler's fault! ***
631 ******************************************************************************
639 if not
test "$_host_cc" ; then
647 # now that we know what compiler should be used for compilation, try to find
648 # out which assembler is used by the $_cc compiler
649 if test "$_as" = auto
; then
650 _as
=`$_cc -print-prog-name=as`
651 test -z "$_as" && _as
=as
654 # XXX: this should be ok..
656 # Cygwin has /proc/cpuinfo, but only supports Intel CPUs
657 # FIXME: Remove the cygwin check once AMD CPUs are supported
658 if test -r /proc
/cpuinfo
&& not cygwin
; then
659 # Linux with /proc mounted, extract CPU information from it
660 _cpuinfo
="cat /proc/cpuinfo"
661 elif test -r /compat
/linux
/proc
/cpuinfo
&& not x86
; then
662 # FreeBSD with Linux emulation /proc mounted,
663 # extract CPU information from it
664 _cpuinfo
="cat /compat/linux/proc/cpuinfo"
666 # use hostinfo on Darwin
669 # all other OSes try to extract CPU information from a small helper
670 # program TOOLS/cpuinfo instead
671 $_cc -o TOOLS
/cpuinfo TOOLS
/cpuinfo.c
672 _cpuinfo
="TOOLS/cpuinfo"
676 i
[3-9]86|x86|x86pc|k5|k6|k6-2|k6-3|pentium
*|athlon
*|i586-i686
)
677 _def_arch
="#define ARCH_X86 1"
678 _target_arch
="TARGET_ARCH_X86 = yes"
680 pname
=`$_cpuinfo | grep 'model name' | cut -d ':' -f 2 | head -1`
681 pvendor
=`$_cpuinfo | grep 'vendor_id' | cut -d ':' -f 2 | cut -d ' ' -f 2 | head -1`
682 pfamily
=`$_cpuinfo | grep 'cpu family' | cut -d ':' -f 2 | cut -d ' ' -f 2 | head -1`
683 pmodel
=`$_cpuinfo | grep -v 'model name' | grep 'model' | cut -d ':' -f 2 | cut -d ' ' -f 2 | head -1`
684 pstepping
=`$_cpuinfo | grep 'stepping' | cut -d ':' -f 2 | cut -d ' ' -f 2 | head -1`
686 pparam
=`$_cpuinfo | grep 'features' | cut -d ':' -f 2 | head -1`
687 if test -z "$pparam" ; then
688 pparam
=`$_cpuinfo | grep 'flags' | cut -d ':' -f 2 | head -1`
699 for i
in $pparam ; do
702 3dnowext
) _3dnow
=yes _3dnowex
=yes ;;
705 mtrr|k6_mtrr|cyrix_arr
) _mtrr
=yes ;;
706 xmm|sse|kni
) _sse
=yes _mmx2
=yes ;;
711 echocheck
"CPU vendor"
712 echores
"$pvendor ($pfamily:$pmodel:$pstepping)"
720 3) proc
=i386 iproc
=386 ;;
721 4) proc
=i486 iproc
=486 ;;
722 5) iproc
=586 # LGB: models are: K5/SSA5 K5 K5 K5 ? ? K6 K6 K6-2 K6-3
723 # K6 model 13 are the K6-2+ and K6-III+, only differing in cache size.
724 if test "$pmodel" -eq 9 -o "$pmodel" -eq 13; then
726 elif test "$pmodel" -ge 8; then
728 elif test "$pmodel" -ge 6; then
736 if test "$pmodel" -ge 7; then
738 elif test "$pmodel" -ge 6; then
739 # only Athlon XP supports ssem MP, Duron etc not
740 # but most of them are CPUID 666, so check if sse detected
741 # btw. there is also athlon-mp opt, but we need extended
742 # CPUID to detect if CPU is SMP capable -> athlon-mp ::atmos
743 if test "$_sse" = yes && test "$pstepping" -ge 2; then
748 elif test "$pmodel" -ge 4; then
751 proc
=athlon
# TODO: should the Duron Spitfire be considered a Thunderbird instead?
755 *) proc
=athlon-xp iproc
=686 ;;
760 3) proc
=i386 iproc
=386 ;;
761 4) proc
=i486 iproc
=486 ;;
763 if test "$pmodel" -eq 4 ||
test "$pmodel" -eq 8; then
764 proc
=pentium-mmx
# 4 is desktop, 8 is mobile
770 if test "$pmodel" -ge 7; then
772 elif test "$pmodel" -ge 3; then
778 15) proc
=pentium4 iproc
=686 ;;
779 *) proc
=pentium4 iproc
=686 ;;
784 3) proc
=i386 iproc
=386 ;;
785 4) proc
=i486 iproc
=486 ;;
786 *) proc
=i586 iproc
=586 ;;
790 proc
=i586 iproc
=586 ;;
793 # check that gcc supports our CPU, if not, fall back to earlier ones
794 # LGB: check -mcpu and -march swithing step by step with enabling
795 # to fall back till 386.
797 # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead
799 if [ "$cc_vendor" = "gnu" ] && ([ "$_cc_major" -gt 3 ] ||
( [ "$_cc_major" = 3 ] && [ "$_cc_minor" -ge 4 ])) ; then
805 echocheck
"GCC & CPU optimization abilities"
807 int main(void) { return 0; }
809 if test "$_runtime_cpudetection" = no
; then
810 if test "$proc" = "athlon-xp" ||
test "$proc" = "athlon-4" ||
test "$proc" = "athlon-tbird"; then
811 cc_check
-march=$proc $cpuopt=$proc || proc
=athlon
813 if test "$proc" = "k6-3" ||
test "$proc" = "k6-2"; then
814 cc_check
-march=$proc $cpuopt=$proc || proc
=k6
816 if test "$proc" = "k6"; then
817 if not cc_check
-march=$proc $cpuopt=$proc; then
818 if cc_check
-march=i586
$cpuopt=i686
; then
825 if test "$proc" = "pentium4" ||
test "$proc" = "pentium3" ||
test "$proc" = "pentium2" ||
test "$proc" = "athlon"; then
826 cc_check
-march=$proc $cpuopt=$proc || proc
=i686
828 if test "$proc" = "i686" ||
test "$proc" = "pentium-mmx"; then
829 cc_check
-march=$proc $cpuopt=$proc || proc
=i586
831 if test "$proc" = "i586" ; then
832 cc_check
-march=$proc $cpuopt=$proc || proc
=i486
834 if test "$proc" = "i486" ; then
835 cc_check
-march=$proc $cpuopt=$proc || proc
=i386
837 if test "$proc" = "i386" ; then
838 cc_check
-march=$proc $cpuopt=$proc || proc
=error
840 if test "$proc" = "error" ; then
841 echores
"Your $_cc does not even support \"i386\" for '-march' and '$cpuopt'."
845 elif test "$proc" = "i586-i686"; then
850 _march
="-march=$proc"
851 _mcpu
="$cpuopt=$proc"
855 # i686 is probably the most common CPU - optimize for it
857 # at least i486 required, for bswap instruction
859 cc_check
$_mcpu || _mcpu
=""
860 cc_check
$_march $_mcpu || _march
=""
863 ## Gabucino : --target takes effect here (hopefully...) by overwriting
864 ## autodetected mcpu/march parameters
865 if test "$_target" ; then
866 # TODO: it may be a good idea to check GCC and fall back in all cases
867 if test "$host_arch" = "i586-i686"; then
871 _march
="-march=$host_arch"
872 _mcpu
="$cpuopt=$host_arch"
880 i586|k5|k6|k6-2|k6-3|pentium|pentium-mmx
) iproc
=586 ;;
881 i686|athlon
*|pentium
*) iproc
=686 ;;
890 _def_arch
='#define ARCH_IA64 1'
891 _target_arch
='TARGET_ARCH_IA64 = yes'
900 _def_arch
='#define ARCH_X86_64 1'
901 _target_arch
='TARGET_ARCH_X86_64 = yes'
910 _def_arch
='#define ARCH_SPARC 1'
911 _target_arch
='TARGET_ARCH_SPARC = yes'
916 case "`echo $karch`" in
921 sun4u
) proc
=v9 _vis
='yes' _def_vis
='#define HAVE_VIS = yes' ;;
934 _def_arch
='#define ARCH_SPARC 1'
935 _target_arch
='TARGET_ARCH_SPARC = yes'
937 _def_vis
='#define HAVE_VIS = yes'
946 _def_arch
='#define ARCH_ARMV4L 1'
947 _target_arch
='TARGET_ARCH_ARMV4L = yes'
956 _def_arch
='#define ARCH_POWERPC 1'
957 _target_arch
='TARGET_ARCH_POWERPC = yes'
966 if linux
&& test -n "$_cpuinfo"; then
967 proc
=`$_cpuinfo | grep 'cpu' | cut -d ':' -f 2 | cut -d ',' -f 1 | cut -b 2- | head -1`
968 if test -n "`$_cpuinfo | grep altivec`"; then
973 proc
=`$_cpuinfo | grep "Processor type" | cut -f 3 -d ' ' | sed 's/ppc//'`
974 if [ `sysctl -n hw.vectorunit` -eq 1 ]; then
976 elif [ "`sysctl -n hw.optional.altivec 2>/dev/null`" = 1 ]; then
980 # only gcc 3.4 works reliably with altivec code under netbsd
983 2*|
3.0*|
3.1*|
3.2*|
3.3*)
986 if [ `sysctl -n machdep.altivec` -eq 1 ]; then
992 if test "$_altivec" = yes; then
993 echores
"$proc altivec"
998 echocheck
"GCC & CPU optimization abilities"
1000 if test -n "$proc"; then
1002 601) _march
='-mcpu=601' _mcpu
='-mtune=601' ;;
1003 603) _march
='-mcpu=603' _mcpu
='-mtune=603' ;;
1004 603e|
603ev
) _march
='-mcpu=603e' _mcpu
='-mtune=603e' ;;
1005 604|
604e|
604r|
604ev
) _march
='-mcpu=604' _mcpu
='-mtune=604' ;;
1006 740|
740/750|
745/755) _march
='-mcpu=740' _mcpu
='-mtune=740' ;;
1007 750|
750CX
) _march
='-mcpu=750' _mcpu
='-mtune=750' ;;
1010 # gcc 3.1(.1) and up supports 7400 and 7450
1011 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "1"; then
1013 7400*|
7410*) _march
='-mcpu=7400' _mcpu
='-mtune=7400' ;;
1014 7450*|
7455*) _march
='-mcpu=7450' _mcpu
='-mtune=7450' ;;
1018 # gcc 3.2 and up supports 970
1019 if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "3"; then
1021 970*) _march
='-mcpu=970' _mcpu
='-mtune=970' ;;
1027 if test -n "$_mcpu"; then
1028 _optimizing
=`echo $_mcpu | cut -c 8-`
1029 echores
"$_optimizing"
1037 _def_arch
='#define ARCH_ALPHA 1'
1038 _target_arch
='TARGET_ARCH_ALPHA = yes'
1042 echocheck
"CPU type"
1045 unsigned long ver, mask;
1046 asm ("implver %0" : "=r" (ver));
1047 asm ("amask %1, %0" : "=r" (mask) : "r" (-1));
1048 printf("%ld-%x\n", ver, ~mask);
1052 $_cc -o "$TMPO" "$TMPC"
1055 0-0) proc
="ev4"; cpu_understands_mvi
="0";;
1056 1-0) proc
="ev5"; cpu_understands_mvi
="0";;
1057 1-1) proc
="ev56"; cpu_understands_mvi
="0";;
1058 1-101) proc
="pca56"; cpu_understands_mvi
="1";;
1059 2-303) proc
="ev6"; cpu_understands_mvi
="1";;
1060 2-307) proc
="ev67"; cpu_understands_mvi
="1";;
1061 2-1307) proc
="ev68"; cpu_understands_mvi
="1";;
1065 echocheck
"GCC & CPU optimization abilities"
1066 if test "$proc" = "ev68" ; then
1067 cc_check
-mcpu=$proc || proc
=ev67
1069 if test "$proc" = "ev67" ; then
1070 cc_check
-mcpu=$proc || proc
=ev6
1077 echocheck
"MVI instruction support in GCC"
1078 if test "$_cc_major" -ge "3" && test "$cpu_understands_mvi" = "1" ; then
1079 _def_gcc_mvi_support
="#define CAN_COMPILE_ALPHA_MVI 1"
1082 _def_gcc_mvi_support
="#undef CAN_COMPILE_ALPHA_MVI"
1083 echores
"no, GCC = `( $_cc -dumpversion ) 2>&1` (must be >= 3), CPU = $proc (must be pca56 or later)"
1088 _def_arch
='#define ARCH_SGI_MIPS 1'
1089 _target_arch
='TARGET_ARCH_SGI_MIPS = yes'
1097 echocheck
"CPU type"
1098 proc
=`hinv -c processor | grep CPU | cut -d " " -f3`
1099 case "`echo $proc`" in
1100 R3000
) _march
='-mips1' _mcpu
='-mtune=r2000' ;;
1101 R4000
) _march
='-mips3' _mcpu
='-mtune=r4000' ;;
1102 R4400
) _march
='-mips3' _mcpu
='-mtune=r4400' ;;
1103 R4600
) _march
='-mips3' _mcpu
='-mtune=r4600' ;;
1104 R5000
) _march
='-mips4' _mcpu
='-mtune=r5000' ;;
1105 R8000|R10000|R12000|R14000|R16000
) _march
='-mips4' _mcpu
='-mtune=r8000' ;;
1113 _def_arch
='#define ARCH_PA_RISC 1'
1114 _target_arch
='TARGET_ARCH_PA_RISC = yes'
1123 _def_arch
='#define ARCH_S390 1'
1124 _target_arch
='TARGET_ARCH_S390 = yes'
1133 _def_arch
='#define ARCH_S390X 1'
1134 _target_arch
='TARGET_ARCH_S390X = yes'
1143 _def_arch
='#define ARCH_VAX 1'
1144 _target_arch
='TARGET_ARCH_VAX = yes'
1153 echo "The architecture of your CPU ($host_arch) is not supported by this configure script"
1154 echo "It seems nobody has ported MPlayer to your OS or CPU type yet."
1155 die
"unsupported architecture $host_arch"
1159 if test "$_runtime_cpudetection" = yes ; then
1174 if x86
&& test "$_runtime_cpudetection" = no
; then
1176 if test "$1" = yes ; then
1177 echocheck
"kernel support of $2"
1180 void catch() { exit(1); }
1182 signal(SIGILL, catch);
1183 __asm__ __volatile__ ("$3":::"memory");return(0);
1187 if ( cc_check
&& $TMPO ) > /dev
/null
2>&1 ; then
1189 _optimizing
="$_optimizing $2"
1193 echo "It seems that your kernel does not correctly support $2."
1194 echo "To use $2 extensions in MPlayer, you have to upgrade/recompile your kernel!"
1201 extcheck
$_mmx "mmx" "emms" || _mmx
=no
1202 extcheck
$_mmx2 "mmx2" "sfence" || _mmx2
=no
1203 extcheck
$_3dnow "3dnow" "femms" || _3dnow
=no
1204 extcheck
$_3dnowex "3dnowex" "pswapd %%mm0, %%mm0" || _3dnowex
=no
1205 extcheck
$_sse "sse" "xorps %%xmm0, %%xmm0" || _sse
=no _gcc3_ext
="$_gcc3_ext -mno-sse"
1206 extcheck
$_sse2 "sse2" "xorpd %%xmm0, %%xmm0" || _sse2
=no _gcc3_ext
="$_gcc3_ext -mno-sse2"
1207 echocheck
"mtrr support"
1210 if test "$_mtrr" = yes ; then
1211 _optimizing
="$_optimizing mtrr"
1214 if test "$_gcc3_ext" != ""; then
1215 # if we had to disable sse/sse2 because the active kernel does not
1216 # support this instruction set extension, we also have to tell
1217 # gcc3 to not generate sse/sse2 instructions for normal C code
1219 int main(void) { return 0; }
1221 cc_check
$_march $_gcc3_ext && _march
="$_march $_gcc3_ext"
1226 echocheck
"assembler support of -pipe option"
1228 int main(void) { return 0; }
1230 cc_check
-pipe && _pipe
="-pipe" && echores
"yes" || echores
"no"
1232 _prefix
="/usr/local"
1233 _xvmclib
="XvMCNVIDIA"
1235 # GOTCHA: the variables below defines the default behavior for autodetection
1236 # and have - unless stated otherwise - at least 2 states : yes no
1237 # If autodetection is available then the third state is: auto
1245 _dga
=auto
# 1 2 no auto
1247 _xvmc
=no
#auto when complete
1282 _matroska_internal
=yes
1287 # dvdnav disabled, it does not work
1352 _freetypeconfig
='freetype-config'
1354 _fribidiconfig
='fribidi-config'
1357 _gethostbyname2
=auto
1360 case "$ac_option" in
1366 --enable-gcc-checking) ;;
1367 --disable-gcc-checking) ;;
1368 --enable-static*) ;;
1369 --disable-static*) ;;
1370 --with-extraincdir=*) ;;
1371 --with-extralibdir=*) ;;
1372 --enable-runtime-cpudetection) ;;
1373 --disable-runtime-cpudetection) ;;
1374 --install-path=*) ;;
1375 --with-install=*) ;;
1378 --enable-mencoder) _mencoder
=yes ;;
1379 --disable-mencoder) _mencoder
=no
;;
1380 --enable-i18n) _i18n
=yes ;;
1381 --disable-i18n) _i18n
=no
;;
1382 --enable-dynamic-plugins) _dynamic_plugins
=yes ;;
1383 --disable-dynamic-plugins) _dynamic_plugins
=no
;;
1384 --enable-setlocale) _setlocale
=yes ;;
1385 --disable-setlocale) _setlocale
=no
;;
1386 --enable-x11) _x11
=yes ;;
1387 --disable-x11) _x11
=no
;;
1388 --enable-xv) _xv
=yes ;;
1389 --disable-xv) _xv
=no
;;
1390 --enable-xvmc) _xvmc
=yes ;;
1391 --disable-xvmc) _xvmc
=no
;;
1392 --enable-sdl) _sdl
=yes ;;
1393 --disable-sdl) _sdl
=no
;;
1394 --enable-directx) _directx
=yes ;;
1395 --disable-directx) _directx
=no
;;
1396 --enable-win32waveout) _win32waveout
=yes ;;
1397 --disable-win32waveout) _win32waveout
=no
;;
1398 --enable-nas) _nas
=yes ;;
1399 --disable-nas) _nas
=no
;;
1400 --enable-png) _png
=yes ;;
1401 --disable-png) _png
=no
;;
1402 --enable-jpeg) _jpg
=yes ;;
1403 --disable-jpeg) _jpg
=no
;;
1404 --enable-gif) _gif
=yes ;;
1405 --disable-gif) _gif
=no
;;
1406 --enable-gl) _gl
=yes ;;
1407 --disable-gl) _gl
=no
;;
1408 --enable-ggi) _ggi
=yes ;;
1409 --disable-ggi) _ggi
=no
;;
1410 --enable-aa) _aa
=yes ;;
1411 --disable-aa) _aa
=no
;;
1412 --enable-caca) _caca
=yes ;;
1413 --disable-caca) _caca
=no
;;
1414 --enable-svga) _svga
=yes ;;
1415 --disable-svga) _svga
=no
;;
1416 --enable-vesa) _vesa
=yes ;;
1417 --disable-vesa) _vesa
=no
;;
1418 --enable-fbdev) _fbdev
=yes ;;
1419 --disable-fbdev) _fbdev
=no
;;
1420 --enable-dvb) _dvb
=yes ;;
1421 --disable-dvb) _dvb
=no
;;
1422 --enable-dvbhead) _dvbhead
=yes ;;
1423 --disable-dvbhead) _dvbhead
=no
;;
1424 --enable-dxr2) _dxr2
=yes ;;
1425 --disable-dxr2) _dxr2
=no
;;
1426 --enable-dxr3) _dxr3
=yes ;;
1427 --disable-dxr3) _dxr3
=no
;;
1428 --enable-iconv) _iconv
=yes ;;
1429 --disable-iconv) _iconv
=no
;;
1430 --enable-langinfo) _langinfo
=yes ;;
1431 --disable-langinfo) _langinfo
=no
;;
1432 --enable-rtc) _rtc
=yes ;;
1433 --disable-rtc) _rtc
=no
;;
1434 --enable-mp1e) _mp1e
=yes ;;
1435 --disable-mp1e) _mp1e
=no
;;
1436 --enable-libdv) _libdv
=yes ;;
1437 --disable-libdv) _libdv
=no
;;
1438 --enable-ossaudio) _ossaudio
=yes ;;
1439 --disable-ossaudio) _ossaudio
=no
;;
1440 --enable-arts) _arts
=yes ;;
1441 --disable-arts) _arts
=no
;;
1442 --enable-esd) _esd
=yes ;;
1443 --disable-esd) _esd
=no
;;
1444 --enable-jack) _jack
=yes ;;
1445 --disable-jack) _jack
=no
;;
1446 --enable-mad) _mad
=yes ;;
1447 --disable-mad) _mad
=no
;;
1448 --disable-toolame) _toolame
=no
;;
1449 --enable-liblzo) _liblzo
=yes ;;
1450 --disable-liblzo) _liblzo
=no
;;
1451 --enable-vorbis) _vorbis
=yes ;;
1452 --disable-vorbis) _vorbis
=no
;;
1453 --enable-tremor) _tremor
=yes ;;
1454 --disable-tremor) _tremor
=no
;;
1455 --enable-theora) _theora
=yes ;;
1456 --disable-theora) _theora
=no
;;
1457 --enable-mp3lib) _mp3lib
=yes ;;
1458 --disable-mp3lib) _mp3lib
=no
;;
1459 --enable-liba52) _liba52
=yes ;;
1460 --disable-liba52) _liba52
=no
;;
1461 --enable-libdts) _libdts
=yes ;;
1462 --disable-libdts) _libdts
=no
;;
1463 --enable-libmpeg2) _libmpeg2
=yes ;;
1464 --disable-libmpeg2) _libmpeg2
=no
;;
1465 --enable-internal-matroska) _matroska_internal
=yes ;;
1466 --disable-internal-matroska) _matroska_internal
=no
;;
1467 --enable-internal-faad) _faad_internal
=yes _faad_external
=no
;;
1468 --disable-internal-faad) _faad_internal
=no
;;
1469 --enable-external-faad) _faad_external
=yes _faad_internal
=no
;;
1470 --disable-external-faad) _faad_external
=no
;;
1471 --enable-xmms) _xmms
=yes ;;
1472 --disable-xmms) _xmms
=no
;;
1473 --enable-dvdread) _dvdread
=yes ;;
1474 --disable-dvdread) _dvdread
=no
;;
1475 --enable-mpdvdkit) _dvdkit
=yes ;;
1476 --disable-mpdvdkit) _dvdkit
=no
;;
1477 # dvdnav disabled, it does not work
1478 # --enable-dvdnav) _dvdnav=yes ;;
1479 # --disable-dvdnav) _dvdnav=no ;;
1480 --enable-xanim) _xanim
=yes ;;
1481 --disable-xanim) _xanim
=no
;;
1482 --enable-real) _real
=yes ;;
1483 --disable-real) _real
=no
;;
1484 --enable-live) _live
=yes ;;
1485 --disable-live) _live
=no
;;
1486 --enable-xinerama) _xinerama
=yes ;;
1487 --disable-xinerama) _xinerama
=no
;;
1488 --enable-mga) _mga
=yes ;;
1489 --disable-mga) _mga
=no
;;
1490 --enable-xmga) _xmga
=yes ;;
1491 --disable-xmga) _xmga
=no
;;
1492 --enable-vm) _vm
=yes ;;
1493 --disable-vm) _vm
=no
;;
1494 --enable-mlib) _mlib
=yes ;;
1495 --disable-mlib) _mlib
=no
;;
1496 --enable-sunaudio) _sunaudio
=yes ;;
1497 --disable-sunaudio) _sunaudio
=no
;;
1498 --enable-sgiaudio) _sgiaudio
=yes ;;
1499 --disable-sgiaudio) _sgiaudio
=no
;;
1500 --enable-alsa) _alsa
=yes ;;
1501 --disable-alsa) _alsa
=no
;;
1502 --enable-tv) _tv
=yes ;;
1503 --disable-tv) _tv
=no
;;
1504 --enable-edl) _edl
=yes ;;
1505 --disable-edl) _edl
=no
;;
1506 --enable-tv-bsdbt848) _tv_bsdbt848
=yes ;;
1507 --disable-tv-bsdbt848) _tv_bsdbt848
=no
;;
1508 --enable-tv-v4l) _tv_v4l
=yes ;;
1509 --disable-tv-v4l) _tv_v4l
=no
;;
1510 --enable-tv-v4l2) _tv_v4l2
=yes ;;
1511 --disable-tv-v4l2) _tv_v4l2
=no
;;
1512 --enable-fastmemcpy) _fastmemcpy
=yes ;;
1513 --disable-fastmemcpy) _fastmemcpy
=no
;;
1514 --enable-network) _network
=yes ;;
1515 --disable-network) _network
=no
;;
1516 --enable-winsock2) _winsock2
=yes ;;
1517 --disable-winsock2) _winsock2
=no
;;
1518 --enable-smb) _smbsupport
=yes ;;
1519 --disable-smb) _smbsupport
=no
;;
1520 --enable-vidix) _vidix
=yes ;;
1521 --disable-vidix) _vidix
=no
;;
1522 --enable-joystick) _joystick
=yes ;;
1523 --disable-joystick) _joystick
=no
;;
1524 --enable-xvid) _xvid
=yes ;;
1525 --disable-xvid) _xvid
=no
;;
1526 --enable-x264) _x264
=yes ;;
1527 --disable-x264) _x264
=no
;;
1528 --enable-divx4linux) _divx4linux
=yes ;;
1529 --disable-divx4linux) _divx4linux
=no
;;
1530 --enable-opendivx) _opendivx
=yes ;;
1531 --disable-opendivx) _opendivx
=no
;;
1532 --enable-libavcodec) _libavcodec
=yes ;;
1533 --disable-libavcodec) _libavcodec
=no
;;
1534 --enable-libavformat) _libavformat
=yes;;
1535 --disable-libavformat) _libavformat
=no
;;
1536 --enable-libfame) _fame
=yes ;;
1537 --disable-libfame) _fame
=no
;;
1538 --enable-lirc) _lirc
=yes ;;
1539 --disable-lirc) _lirc
=no
;;
1540 --enable-lircc) _lircc
=yes ;;
1541 --disable-lircc) _lircc
=no
;;
1542 --enable-gui) _gui
=yes ;;
1543 --disable-gui) _gui
=no
;;
1544 --enable-termcap) _termcap
=yes ;;
1545 --disable-termcap) _termcap
=no
;;
1546 --enable-termios) _termios
=yes ;;
1547 --disable-termios) _termios
=no
;;
1548 --enable-3dfx) _3dfx
=yes ;;
1549 --disable-3dfx) _3dfx
=no
;;
1550 --enable-tdfxfb) _tdfxfb
=yes ;;
1551 --disable-tdfxvid) _tdfxvid
=no
;;
1552 --enable-tdfxvid) _tdfxvid
=yes ;;
1553 --disable-tga) _tga
=no
;;
1554 --enable-tga) _tga
=yes ;;
1555 --disable-tdfxfb) _tdfxfb
=no
;;
1556 --enable-directfb) _directfb
=yes ;;
1557 --disable-directfb) _directfb
=no
;;
1558 --enable-zr) _zr
=yes ;;
1559 --disable-zr) _zr
=no
;;
1560 --enable-bl) _bl
=yes ;;
1561 --disable-bl) _bl
=no
;;
1562 --enable-mtrr) _mtrr
=yes ;;
1563 --disable-mtrr) _mtrr
=no
;;
1564 --enable-largefiles) _largefiles
=yes ;;
1565 --disable-largefiles) _largefiles
=no
;;
1566 --enable-shm) _shm
=yes ;;
1567 --disable-shm) _shm
=no
;;
1568 --enable-select) _select
=yes ;;
1569 --disable-select) _select
=no
;;
1570 --enable-linux-devfs) _linux_devfs
=yes ;;
1571 --disable-linux-devfs) _linux_devfs
=no
;;
1572 --enable-cdparanoia) _cdparanoia
=yes ;;
1573 --disable-cdparanoia) _cdparanoia
=no
;;
1574 --enable-big-endian) _big_endian
=yes ;;
1575 --disable-big-endian) _big_endian
=no
;;
1576 --enable-freetype) _freetype
=yes ;;
1577 --disable-freetype) _freetype
=no
;;
1578 --enable-fontconfig) _fontconfig
=yes ;;
1579 --disable-fontconfig) _fontconfig
=no
;;
1580 --enable-unrarlib) _unrarlib
=yes ;;
1581 --disable-unrarlib) _unrarlib
=no
;;
1582 --enable-ftp) _ftp
=yes ;;
1583 --disable-ftp) _ftp
=no
;;
1585 --enable-fribidi) _fribidi
=yes ;;
1586 --disable-fribidi) _fribidi
=no
;;
1588 --enable-enca) _enca
=yes ;;
1589 --disable-enca) _enca
=no
;;
1591 --enable-inet6) _inet6
=yes ;;
1592 --disable-inet6) _inet6
=no
;;
1594 --enable-gethostbyname2) _gethostbyname2
=yes ;;
1595 --disable-gethostbyname2) _gethostbyname2
=no
;;
1597 --enable-dga) _dga
=auto
;; # as we don't know if it's 1 or 2
1598 --enable-dga=*) _dga
=`echo $ac_option | cut -d '=' -f 2` ;;
1599 --disable-dga) _dga
=no
;;
1601 --enable-shared-pp) _shared_pp
=yes ;;
1602 --disable-shared-pp) _shared_pp
=no
;;
1604 --enable-menu) _menu
=yes ;;
1605 --disable-menu) _menu
=no
;;
1607 --enable-qtx) _qtx
=yes ;;
1608 --disable-qtx) _qtx
=no
;;
1610 --enable-macosx) _macosx
=yes ;;
1611 --disable-macosx) _macosx
=no
;;
1613 --enable-sortsub) _sortsub
=yes ;;
1614 --disable-sortsub) _sortsub
=no
;;
1617 _language
=`echo $ac_option | cut -d '=' -f 2`
1619 # dvdnav disabled, it does not work
1620 # --with-libdvdnav=*)
1621 # _dvdnavdir=`echo $ac_option | cut -d '=' -f 2`
1626 _win32libdir
=`echo $ac_option | cut -d '=' -f 2`
1627 _xanimlibdir
=`echo $ac_option | cut -d '=' -f 2`
1628 _reallibdir
=`echo $ac_option | cut -d '=' -f 2`
1630 --with-win32libdir=*)
1631 _win32libdir
=`echo $ac_option | cut -d '=' -f 2`
1634 --with-xanimlibdir=*)
1635 _xanimlibdir
=`echo $ac_option | cut -d '=' -f 2`
1638 --with-reallibdir=*)
1639 _reallibdir
=`echo $ac_option | cut -d '=' -f 2`
1642 --with-livelibdir=*)
1643 _livelibdir
=`echo $ac_option | cut -d '=' -f 2`
1645 --with-toolamedir=*)
1646 _toolamedir
=`echo $ac_option | cut -d '=' -f 2`
1649 _mlibdir
=`echo $ac_option | cut -d '=' -f 2`
1653 --with-xmmslibdir=*)
1654 _xmmslibdir
=`echo $ac_option | cut -d '=' -f 2`
1657 --with-xmmsplugindir=*)
1658 _xmmsplugindir
=`echo $ac_option | cut -d '=' -f 2`
1662 _bio2jackdir
=`echo $ac_option | cut -d '=' -f 2`
1675 _debug
=`echo $_echo_n '-g'$_echo_c; echo $ac_option | cut -d '=' -f 2`
1680 --enable-sighandler)
1683 --disable-sighandler)
1687 --enable-sse) _sse
=yes ;;
1688 --disable-sse) _sse
=no
;;
1689 --enable-sse2) _sse2
=yes ;;
1690 --disable-sse2) _sse2
=no
;;
1691 --enable-mmx2) _mmx2
=yes ;;
1692 --disable-mmx2) _mmx2
=no
;;
1693 --enable-3dnow) _3dnow
=yes ;;
1694 --disable-3dnow) _3dnow
=no _3dnowex
=no
;;
1695 --enable-3dnowex) _3dnow
=yes _3dnowex
=yes ;;
1696 --disable-3dnowex) _3dnowex
=no
;;
1697 --enable-altivec) _altivec
=yes ;;
1698 --disable-altivec) _altivec
=no
;;
1699 --enable-mmx) _mmx
=yes ;;
1700 --disable-mmx) # 3Dnow! and MMX2 require MMX
1701 _3dnow
=no _3dnowex
=no _mmx
=no _mmx2
=no
;;
1703 --enable-macshlb) _macshlb
=yes ;;
1704 --disable-macshlb) _macshlb
=no
;;
1705 --enable-win32) _win32
=yes ;;
1706 --disable-win32) _win32
=no _dshow
=no
;;
1707 --enable-dshow) _win32
=yes _dshow
=yes ;;
1708 --disable-dshow) _dshow
=no
;;
1711 _inc_x11
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1714 _ld_x11
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
1716 --with-dxr2incdir=*)
1717 _inc_dxr2
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1720 _xvmclib
=`echo $ac_option | cut -d '=' -f 2`
1723 _inc_dvb
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1725 --with-xvidlibdir=*)
1726 _ld_xvid
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
1728 --with-xvidincdir=*)
1729 _inc_xvid
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1732 _ld_libdts
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
1735 _inc_libdts
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1737 --with-x264libdir=*)
1738 _ld_x264
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
1740 --with-x264incdir=*)
1741 _inc_x264
=-I`echo $ac_option | cut -d '=' -f 2 |sed 's,:, -I,g'`
1743 --with-sdl-config=*)
1744 _sdlconfig
=`echo $ac_option | cut -d '=' -f 2`
1746 --with-freetype-config=*)
1747 _freetypeconfig
=`echo $ac_option | cut -d '=' -f 2`
1749 --with-fribidi-config=*)
1750 _fribidiconfig
=`echo $ac_option | cut -d '=' -f 2`
1752 --with-gtk-config=*)
1753 _gtkconfig
=`echo $ac_option | cut -d '=' -f 2`
1755 --with-glib-config=*)
1756 _glibconfig
=`echo $ac_option | cut -d '=' -f 2`
1758 # dvdnav disabled, it does not work
1759 # --with-dvdnav-config=*)
1760 # _dvdnavconfig=`echo $ac_option | cut -d '=' -f 2`
1763 _ld_mad
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
1765 --with-cdparanoiaincdir=*)
1766 _inc_cdparanoia
=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'`
1768 --with-cdparanoialibdir=*)
1769 _ld_cdparanoia
=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'`
1771 --with-termcaplib=*)
1772 _ld_termcap
=-l`echo $ac_option | cut -d '=' -f 2`
1776 _prefix
=`echo $ac_option | cut -d '=' -f 2`
1779 _bindir
=`echo $ac_option | cut -d '=' -f 2`
1782 _datadir
=`echo $ac_option | cut -d '=' -f 2`
1785 _mandir
=`echo $ac_option | cut -d '=' -f 2`
1788 _confdir
=`echo $ac_option | cut -d '=' -f 2`
1791 _libdir
=`echo $ac_option | cut -d '=' -f 2`
1795 echo "Unknown parameter: $ac_option"
1802 # Atmos: moved this here, to be correct, if --prefix is specified
1803 test -z "$_bindir" && _bindir
="$_prefix/bin"
1804 test -z "$_datadir" && _datadir
="$_prefix/share/mplayer"
1805 test -z "$_mandir" && _mandir
="$_prefix/man"
1806 test -z "$_confdir" && _confdir
="$_prefix/etc/mplayer"
1807 test -z "$_libdir" && _libdir
="$_prefix/lib"
1808 test -z "$_mlibdir" && _mlibdir
="$MLIBHOME"
1811 # Checking assembler (_as) compatibility...
1812 # Added workaround for older as that reads from stdin by default - atmos
1813 as_version
=`echo '' | $_as -version 2>&1 | sed -n 's/^.*assembler \(version \)*\([0-9.]*\).*$/\2/p'`
1814 echocheck
"assembler ($_as $as_version)"
1816 _pref_as_version
='2.9.1'
1818 if test "$_mmx" = yes ; then
1819 echo 'emms' >> $TMPS
1821 if test "$_3dnow" = yes ; then
1822 _pref_as_version
='2.10.1'
1823 echo 'femms' >> $TMPS
1825 if test "$_3dnowex" = yes ; then
1826 _pref_as_version
='2.10.1'
1827 echo 'pswapd %mm0, %mm0' >> $TMPS
1829 if test "$_mmx2" = yes ; then
1830 _pref_as_version
='2.10.1'
1831 echo 'movntq %mm0, (%eax)' >> $TMPS
1833 if test "$_sse" = yes ; then
1834 _pref_as_version
='2.10.1'
1835 echo 'xorps %xmm0, %xmm0' >> $TMPS
1837 #if test "$_sse2" = yes ; then
1838 # _pref_as_version='2.11'
1839 # echo 'xorpd %xmm0, %xmm0' >> $TMPS
1841 $_as $TMPS -o $TMPO > /dev
/null
2>&1 || as_verc_fail
=yes
1843 if test "$as_verc_fail" != yes ; then
1847 echo "Upgrade binutils to ${_pref_as_version} ..."
1848 die
"obsolete binutils version"
1854 # check if altivec is supported by the compiler, and how to enable it
1856 _altivec_gcc_flags
=''
1858 if test "$_altivec" = yes -o "$_runtime_cpudetection" = yes ; then
1859 echocheck
"GCC altivec support"
1867 FSF_flags
='-maltivec -mabi=altivec'
1868 Darwin_flags
='-faltivec'
1870 # check for Darwin-style flags first, since
1871 # gcc-3.3 (August Update from Apple) on MacOS 10.2.8
1872 # accepts but ignores FSF-style flags...
1874 if test -z "$p"; then
1875 cc_check
$Darwin_flags && p
='Darwin'
1877 if test -z "$p"; then
1878 cc_check
$FSF_flags && p
='FSF'
1882 FSF
) _altivec_gcc_flags
="$FSF_flags" _altivec
=yes ;;
1883 Darwin
) _altivec_gcc_flags
="$Darwin_flags" _altivec
=yes ;;
1887 if test -z "$p"; then
1890 p
="$p-style ($_altivec_gcc_flags)"
1896 # check if <altivec.h> should be included
1898 _def_altivec_h
='#undef HAVE_ALTIVEC_H'
1900 if test "$_altivec" = yes ; then
1901 echocheck
"altivec.h"
1903 #include <altivec.h>
1904 int main(void) { return 0; }
1907 cc_check
$_altivec_gcc_flags && _have_altivec_h
=yes
1908 if test "$_have_altivec_h" = yes ; then
1909 _def_altivec_h
='#define HAVE_ALTIVEC_H 1'
1911 echores
"$_have_altivec_h"
1914 # disable runtime cpudetection if
1915 # - we cannot generate altivec code
1916 # - altivec is disabled by the user
1918 if test "$_runtime_cpudetection" = yes -a "$_altivec" = no
; then
1919 _runtime_cpudetection
=no
1922 # show that we are optimizing for altivec (if enabled and supported)
1924 if test "$_runtime_cpudetection" = no
-a "$_altivec" = yes ; then
1925 _optimizing
="$_optimizing altivec"
1928 # if altivec is enabled, make sure the correct flags turn up in CFLAGS
1930 if test "$_altivec" = yes ; then
1931 _mcpu
="$_mcpu $_altivec_gcc_flags"
1934 # setup _def_altivec correctly
1936 if test "$_altivec" = yes ; then
1937 _def_altivec
='#define HAVE_ALTIVEC 1'
1939 _def_altivec
='#undef HAVE_ALTIVEC'
1943 _def_mmx
='#undef HAVE_MMX'
1944 test "$_mmx" = yes && _def_mmx
='#define HAVE_MMX 1'
1945 _def_mmx2
='#undef HAVE_MMX2'
1946 test "$_mmx2" = yes && _def_mmx2
='#define HAVE_MMX2 1'
1947 _def_3dnow
='#undef HAVE_3DNOW'
1948 test "$_3dnow" = yes && _def_3dnow
='#define HAVE_3DNOW 1'
1949 _def_3dnowex
='#undef HAVE_3DNOWEX'
1950 test "$_3dnowex" = yes && _def_3dnowex
='#define HAVE_3DNOWEX 1'
1951 _def_sse
='#undef HAVE_SSE'
1952 test "$_sse" = yes && _def_sse
='#define HAVE_SSE 1'
1953 _def_sse2
='#undef HAVE_SSE2'
1954 test "$_sse2" = yes && _def_sse2
='#define HAVE_SSE2 1'
1956 # Checking kernel version...
1957 if x86
&& linux
; then
1959 kernel_version
=`uname -r 2>&1`
1960 echocheck
"$system_name kernel version"
1961 case "$kernel_version" in
1962 '') kernel_version
="?.??"; _k_verc_fail
=yes;;
1963 [0-1].
[0-9].
[0-9]*|
2.
[0-3].
[0-9]*)
1964 _k_verc_problem
=yes;;
1966 if test "$_k_verc_problem" = yes && test "$_sse" = yes ; then
1969 if test "$_k_verc_fail" ; then
1970 echores
"$kernel_version, fail"
1971 echo "WARNING! If you want to run MPlayer on this system, get prepared for problems!"
1972 echo "2.2.x has limited SSE support. Upgrade the kernel or use --disable-sse if you"
1973 echo "experience crashes. MPlayer tries to autodetect if your kernel correctly"
1974 echo "supports SSE, but you have been warned! If you are using a kernel older than"
1975 echo "2.2.x you must upgrade it to get SSE support!"
1976 # die "Your kernel is too old for this CPU." # works fine on some 2.2.x so don't die (later check will test)
1978 echores
"$kernel_version, ok"
1982 if test "$_vidix" = auto
; then
1984 # should check for x86 systems supporting VIDIX (does QNX have VIDIX?)
1986 ppc
&& linux
&& _vidix
=yes
1987 alpha
&& linux
&& _vidix
=yes
1993 echocheck
"mplayer binary name"
1996 _prg_mencoder
="mencoder.exe"
1999 _prg_mencoder
="mencoder"
2004 # On QNX we must link to libph - Gabucino
2006 _ld_arch
="$_ld_arch -lph"
2009 # checking for a working awk, I'm using mawk first, because it's fastest - atmos
2011 if test "$_vidix" = yes ; then
2014 for _awk
in mawk gawk nawk
awk; do
2015 if ( $_awk 'BEGIN{testme();}function testme(){print"";}' ) >> "$TMPLOG" 2>&1; then
2020 test "$_awk_verc_fail" = yes && _awk
=no
2022 if test "$_awk_verc_fail" = yes; then
2023 echo "VIDIX needs awk, but no working implementation was found!"
2024 echo "Try the GNU version, which can be downloaded from:"
2025 echo "ftp://ftp.gnu.org/gnu/gawk/"
2026 echo "If you don't need VIDIX, you can use configure --disable-vidix instead."
2031 # If IRIX we must use ar instead of ranlib (not present on IRIX systems)
2038 ######################
2039 # MAIN TESTS GO HERE #
2040 ######################
2043 echocheck
"extra headers"
2044 if test "$_inc_extra" ; then
2045 echores
"$_inc_extra"
2051 echocheck
"extra libs"
2052 if test "$_ld_extra" ; then
2053 echores
"$_ld_extra"
2060 int main(void) { return 0; }
2062 if cc_check
-lposix ; then
2063 _ld_arch
="$_ld_arch -lposix"
2071 int main(void) { return 0; }
2073 if cc_check
-lm ; then
2081 # Checking for localization ...
2082 # CSAK EGY MARADHAT - A HEGYLAKO
2084 if test "$_i18n" != no
; then
2086 #include <libintl.h>
2087 int main(void) { gettext("test"); return 0; }
2091 if test "$_i18n" = auto
; then
2092 cc_check
&& _i18n
=yes
2094 for i18n_lib
in "" "-lintl"; do
2095 cc_check
$i18n_lib && _i18n
=yes && _i18n_libs
=$i18n_lib && break
2099 if test "$_i18n" = yes ; then
2100 _def_i18n
='#define USE_I18N 1'
2102 _def_i18n
='#undef USE_I18N'
2104 if test -z "$_i18n_libs" ; then
2107 echores
"$_i18n (using $_i18n_libs)"
2111 # Checking for setlocale() ...
2112 # CSAK EGY MARADHAT - A HEGYLAKO
2113 # Nemnem. a TV Maci !
2114 echocheck
"setlocale()"
2115 if test "$_setlocale" = auto
; then
2118 int main(void) { setlocale( LC_ALL,"" ); return 0; }
2121 cc_check
&& _setlocale
=yes
2123 if test "$_setlocale" = yes ; then
2124 _def_setlocale
='#define USE_SETLOCALE 1'
2126 _def_setlocale
='#undef USE_SETLOCALE'
2128 echores
"$_setlocale"
2132 if test "$_iconv" = auto
; then
2133 _iconv_tmp
='#include <iconv.h>'
2139 #define INBUFSIZE 1024
2140 #define OUTBUFSIZE 4096
2142 char inbuffer[INBUFSIZE];
2143 char outbuffer[OUTBUFSIZE];
2148 char *tocode="UTF-8";
2149 char *fromcode="cp1250";
2150 if ((icdsc = iconv_open (tocode, fromcode)) != (iconv_t)(-1)) {
2151 while ((numread = read (0, inbuffer, INBUFSIZE))) {
2152 char *iptr=inbuffer;
2153 char *optr=outbuffer;
2154 size_t inleft=numread;
2155 size_t outleft=OUTBUFSIZE;
2156 if (iconv(icdsc, (const char **)&iptr, &inleft, &optr, &outleft)
2158 write (1, outbuffer, OUTBUFSIZE - outleft);
2161 if (iconv_close(icdsc) == -1)
2167 if cc_check
$_ld_lm ; then
2169 elif cc_check
$_ld_lm -liconv ; then
2174 if test "$_iconv" = yes ; then
2175 _def_iconv
='#define USE_ICONV 1'
2177 _def_iconv
='#undef USE_ICONV'
2182 echocheck
"langinfo"
2183 if test "$_langinfo" = auto
; then
2185 #include <langinfo.h>
2186 int main(void) { nl_langinfo(CODESET); return 0; }
2189 cc_check
&& _langinfo
=yes
2191 if test "$_langinfo" = yes ; then
2192 _def_langinfo
='#define USE_LANGINFO 1'
2194 _def_langinfo
='#undef USE_LANGINFO'
2196 echores
"$_langinfo"
2199 echocheck
"language"
2200 test -z "$_language" && _language
=$LINGUAS
2201 _language
=`echo $_language | sed 's/,/ /g'`
2202 echo $_language |
grep all
> /dev
/null || LANGUAGES
="$_language en"
2203 for lang
in $_language ; do
2204 test "$lang" = all
&& lang
=en
2205 if test -f "help/help_mp-${lang}.h" ; then
2209 echo -n "$lang not found, "
2210 _language
=`echo $_language | sed "s/$lang *//"`
2213 test -z "$_language" && _language
=en
2214 _mp_help
="help/help_mp-${_language}.h"
2215 test -f $_mp_help || die
"$_mp_help not found"
2216 for lang
in $LANGUAGES ; do
2217 if test -f "DOCS/man/$lang/mplayer.1" ; then
2218 MAN_LANG
="$MAN_LANG $lang"
2221 _doc_lang
=$_language
2222 test -d DOCS
/xml
/$_doc_lang || _doc_lang
=en
2223 echores
"using $_language (man pages: $MAN_LANG)"
2226 echocheck
"enable sighandler"
2227 if test "$_sighandler" = yes ; then
2228 _def_sighandler
='#define ENABLE_SIGHANDLER 1'
2230 _def_sighandler
='#undef ENABLE_SIGHANDLER'
2232 echores
"$_sighandler"
2234 echocheck
"runtime cpudetection"
2235 if test "$_runtime_cpudetection" = yes ; then
2236 _optimizing
="Runtime CPU-Detection enabled"
2237 _def_runtime_cpudetection
='#define RUNTIME_CPUDETECT 1'
2239 _def_runtime_cpudetection
='#undef RUNTIME_CPUDETECT'
2241 echores
"$_runtime_cpudetection"
2244 echocheck
"restrict keyword"
2245 for restrict_keyword
in restrict __restrict __restrict__
; do
2246 echo "void foo(char * $restrict_keyword p); int main(){}" > $TMPC
2248 _def_restrict_keyword
=$restrict_keyword
2252 if [ -n "$_def_restrict_keyword" ]; then
2253 echores
"$_def_restrict_keyword"
2262 int main(void) { (void) kstat_open(); (void) kstat_close(0); return 0; }
2265 cc_check
-lkstat && _kstat
=yes
2266 if test "$_kstat" = yes ; then
2267 _ld_arch
="-lkstat $_ld_arch"
2269 if test "$_kstat" = yes ; then
2270 _def_kstat
="#define HAVE_LIBKSTAT 1"
2272 _def_kstat
="#undef HAVE_LIBKSTAT"
2278 # required for nanosleep on some systems
2281 int main(void) { (void) nanosleep(0, 0); return 0; }
2284 cc_check
-lposix4 && _posix4
=yes
2285 if test "$_posix4" = yes ; then
2286 _ld_arch
="-lposix4 $_ld_arch"
2294 int main(void) { (void) lrintf(0.0); return 0; }
2297 cc_check
$_ld_lm && _lrintf
=yes
2298 if test "$_lrintf" = yes ; then
2299 _def_lrintf
="#define HAVE_LRINTF 1"
2301 _def_lrintf
="#undef HAVE_LRINTF"
2306 echocheck
"nanosleep"
2307 # also check for nanosleep
2310 int main(void) { (void) nanosleep(0, 0); return 0; }
2313 cc_check
$_ld_arch && _nanosleep
=yes
2314 if test "$_nanosleep" = yes ; then
2315 _def_nanosleep
='#define HAVE_NANOSLEEP 1'
2317 _def_nanosleep
='#undef HAVE_NANOSLEEP'
2319 echores
"$_nanosleep"
2323 # for Solaris (socket stuff is in -lsocket, gethostbyname and friends in -lnsl):
2324 # for BeOS (socket stuff is in -lsocket, gethostbyname and friends in -lbind):
2327 int main(void) { (void) gethostbyname(0); return 0; }
2329 cc_check
-lsocket && _ld_sock
="-lsocket"
2330 cc_check
-lnsl && _ld_sock
="-lnsl"
2331 cc_check
-lsocket -lnsl && _ld_sock
="-lsocket -lnsl"
2332 cc_check
-lsocket -ldnet && _ld_sock
="-lsocket -ldnet"
2333 cc_check
-lsocket -lbind && _ld_sock
="-lsocket -lbind"
2334 if test $_winsock2 = auto
&& not cygwin
; then
2337 #include <winsock2.h>
2338 int main(void) { (void) gethostbyname(0); return 0; }
2340 cc_check
-lws2_32 && _ld_sock
="-lws2_32" && _winsock2
=yes
2342 if test "$_ld_sock" ; then
2343 echores
"yes (using $_ld_sock)"
2349 if test $_winsock2 = yes ; then
2351 _def_winsock2
='#define HAVE_WINSOCK2 1'
2353 _def_winsock2
='#undef HAVE_WINSOCK2'
2358 echocheck
"inet_pton()"
2360 #include <sys/types.h>
2361 #include <sys/socket.h>
2362 #include <arpa/inet.h>
2363 int main(void) { (void) inet_pton(0, 0, 0); return 0; }
2365 if test "$_winsock2" = yes ; then
2366 echores
"not needed (using winsock2 functions)"
2367 elif cc_check
$_ld_sock ; then
2368 # NOTE: Linux has libresolv but does not need it
2370 echores
"yes (using $_ld_sock)"
2371 elif cc_check
$_ld_sock -lresolv ; then
2372 # NOTE: needed for SunOS at least
2373 _ld_sock
="$_ld_sock -lresolv"
2374 echores
"yes (using $_ld_sock)"
2376 echores
"no (=> i'll try inet_aton next)"
2378 echocheck
"inet_aton()"
2380 #include <sys/types.h>
2381 #include <sys/socket.h>
2382 #include <arpa/inet.h>
2383 int main(void) { (void) inet_aton(0, 0); return 0; }
2386 if cc_check
$_ld_sock ; then
2387 # NOTE: Linux has libresolv but does not need it
2389 echores
"yes (using $_ld_sock)"
2390 elif cc_check
$_ld_sock -lresolv ; then
2391 # NOTE: needed for SunOS at least
2392 _ld_sock
="$_ld_sock -lresolv"
2393 echores
"yes (using $_ld_sock)"
2397 echores
"no (=> network support disabled)"
2401 _def_use_aton
='#undef USE_ATON'
2402 if test "$_use_aton" != no
; then
2403 _def_use_aton
='#define USE_ATON 1'
2407 echocheck
"inttypes.h (required)"
2409 #include <inttypes.h>
2410 int main(void) { return 0; }
2413 cc_check
&& _inttypes
=yes
2414 if test "$_inttypes" = yes ; then
2419 echocheck
"bitypes.h (inttypes.h predecessor)"
2421 #include <sys/bitypes.h>
2422 int main(void) { return 0; }
2425 cc_check
&& _inttypes
=yes
2426 if test "$_inttypes" = yes ; then
2427 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."
2429 die
"Cannot find header either inttypes.h or bitypes.h (see DOCS/HTML/$_doc_lang/faq.html)."
2432 echores
"$_inttypes"
2435 echocheck
"int_fastXY_t in inttypes.h"
2437 #include <inttypes.h>
2439 volatile int_fast16_t v= 0;
2443 cc_check
&& _fast_inttypes
=yes
2444 if test "$_fast_inttypes" = yes ; then
2448 _def_fast_inttypes
='
2449 typedef signed char int_fast8_t;
2450 typedef signed int int_fast16_t;
2451 typedef signed int int_fast32_t;
2452 typedef unsigned char uint_fast8_t;
2453 typedef unsigned int uint_fast16_t;
2454 typedef unsigned int uint_fast32_t;'
2456 echores
"$_fast_inttypes"
2459 echocheck
"word size"
2460 _mp_wordsize
="#undef MP_WORDSIZE"
2463 #include <sys/types.h>
2464 int main(void) { printf("%d\n", sizeof(size_t)*8); return 0; }
2466 cc_check
&& _wordsize
=`$TMPO` && _mp_wordsize
="#define MP_WORDSIZE $_wordsize"
2467 echores
"$_wordsize"
2470 echocheck
"stddef.h"
2473 int main(void) { return 0; }
2476 cc_check
&& _stddef
=yes
2477 if test "$_stddef" = yes ; then
2478 _def_stddef
='#define HAVE_STDDEF_H 1'
2480 _def_stddef
='#undef HAVE_STDDEF_H'
2485 echocheck
"malloc.h"
2488 int main(void) { (void) malloc(0); return 0; }
2491 cc_check
&& _malloc
=yes
2492 if test "$_malloc" = yes ; then
2493 _def_malloc
='#define HAVE_MALLOC_H 1'
2495 _def_malloc
='#undef HAVE_MALLOC_H'
2497 # malloc.h emits a warning in FreeBSD and OpenBSD
2498 (freebsd || openbsd
) && _def_malloc
='#undef HAVE_MALLOC_H'
2502 echocheck
"memalign()"
2503 # XXX restrict to x86 ? extend to other CPUs/cacheline sizes ?
2506 int main (void) { (void) memalign(64, sizeof(char)); return 0; }
2509 cc_check
&& _memalign
=yes
2510 if test "$_memalign" = yes ; then
2511 _def_memalign
='#define HAVE_MEMALIGN 1'
2513 _def_memalign
='#undef HAVE_MEMALIGN'
2515 echores
"$_memalign"
2518 echocheck
"alloca.h"
2521 int main(void) { (void) alloca(0); return 0; }
2524 cc_check
&& _alloca
=yes
2526 _def_alloca
='#define HAVE_ALLOCA_H 1'
2528 _def_alloca
='#undef HAVE_ALLOCA_H'
2535 #include <sys/types.h>
2536 #include <sys/mman.h>
2537 int main(void) { (void) mmap(0, 0, 0, 0, 0, 0); return 0; }
2540 cc_check
&& _mman
=yes
2541 if test "$_mman" = yes ; then
2542 _def_mman
='#define HAVE_SYS_MMAN_H 1'
2544 _def_mman
='#undef HAVE_SYS_MMAN_H'
2548 echocheck
"dynamic loader"
2551 int main(void) { dlopen(0, 0); dlclose(0); dlsym(0, 0); return 0; }
2556 elif cc_check
-ldl ; then
2560 if test "$_dl" = yes ; then
2561 _def_dl
='#define HAVE_LIBDL 1'
2563 _def_dl
='#undef HAVE_LIBDL'
2568 echocheck
"dynamic a/v plugins support"
2569 if test "$_dl" = no
; then
2572 if test "$_dynamic_plugins" = yes ; then
2573 _def_dynamic_plugins
='#define DYNAMIC_PLUGINS 1'
2575 _def_dynamic_plugins
='#undef DYNAMIC_PLUGINS'
2577 echores
"$_dynamic_plugins"
2580 #echocheck "dynamic linking"
2581 # FIXME !! make this dynamic detection work and modify at the end (search _ld_dl_dynamic)
2582 # also gcc flags are different, but ld flags aren't (-Bdynamic/-Bstatic/-Bsymbolic)
2584 #int main(void) { return 0; }
2586 #if cc_check -rdynamic ; then
2587 # _ld_dl_dynamic='-rdynamic'
2588 #elif cc_check -Bdynamic ; then
2589 # _ld_dl_dynamic='-Bdynamic'
2590 #elif cc_check ; then
2593 #echores "using $_ld_dl_dynamic"
2598 #include <pthread.h>
2599 void* func(void *arg) { return arg; }
2600 int main(void) { pthread_t tid; return pthread_create (&tid, 0, func, 0) == 0 ? 0 : 1; }
2604 elif ( cc_check
&& $TMPO ) ; then # QNX
2606 elif ( cc_check
-lpthread && $TMPO ) ; then
2607 _ld_pthread
='-lpthread'
2608 elif ( cc_check
-pthread && $TMPO ) ; then
2609 _ld_pthread
='-pthread'
2611 if test "$_ld_static" ; then
2612 # for crosscompilation, we cannot execute the program, be happy if we can link statically
2613 if ( cc_check
-lpthread ) ; then
2614 _ld_pthread
='-lpthread'
2615 elif ( cc_check
-pthread ) ; then
2616 _ld_pthread
='-pthread'
2618 echores
"no static pthread found (v4l, vo_gl, ao_alsa, ao_nas, ao_macosx, Win32 loader disabled)"
2619 _ld_pthread
='' ; _nas
=no
; _tv_v4l
=no
; _macosx
=no
; _win32
=no
2622 echores
"no (v4l, vo_gl, ao_alsa, ao_nas, ao_macosx, win32 loader disabled)"
2623 _ld_pthread
='' ; _nas
=no
; _tv_v4l
=no
; _macosx
=no
; _win32
=no
2626 if test "$_ld_pthread" != '' ; then
2627 echores
"yes (using $_ld_pthread)"
2629 _def_pthreads
='#define HAVE_PTHREADS 1'
2633 _def_pthreads
='#undef HAVE_PTHREADS'
2637 echocheck
"sys/soundcard.h"
2639 #include <sys/soundcard.h>
2640 int main(void) { return 0; }
2643 cc_check
&& _sys_soundcard
=yes
2644 if test "$_sys_soundcard" = yes ; then
2645 _def_sys_soundcard
='#define HAVE_SYS_SOUNDCARD_H 1'
2646 _inc_soundcard
='#include <sys/soundcard.h>'
2648 _def_sys_soundcard
='#undef HAVE_SYS_SOUNDCARD_H'
2650 echores
"$_sys_soundcard"
2652 if test "$_sys_soundcard" != yes ; then
2653 echocheck
"soundcard.h"
2655 #include <soundcard.h>
2656 int main(void) { return 0; }
2659 cc_check
&& _soundcard
=yes
2660 if linux ||
test "$_ossaudio" != no
; then
2661 # use soundcard.h on Linux, or when OSS support is enabled
2662 echores
"$_soundcard"
2664 # we don't want to use soundcard.h on non-Linux if OSS support not enabled!
2665 echores
"$_soundcard, but ignored!"
2668 if test "$_soundcard" = yes ; then
2669 _def_soundcard
='#define HAVE_SOUNDCARD_H 1'
2670 _inc_soundcard
='#include <soundcard.h>'
2672 _def_soundcard
='#undef HAVE_SOUNDCARD_H'
2675 _def_soundcard
='#undef HAVE_SOUNDCARD_H'
2679 echocheck
"sys/dvdio.h"
2682 #include <sys/dvdio.h>
2683 int main(void) { return 0; }
2686 cc_check
&& _dvdio
=yes
2687 if test "$_dvdio" = yes ; then
2688 _def_dvdio
='#define DVD_STRUCT_IN_SYS_DVDIO_H 1'
2690 _def_dvdio
='#undef DVD_STRUCT_IN_SYS_DVDIO_H'
2695 echocheck
"sys/cdio.h"
2698 #include <sys/cdio.h>
2699 int main(void) { return 0; }
2702 cc_check
&& _cdio
=yes
2703 if test "$_cdio" = yes ; then
2704 _def_cdio
='#define DVD_STRUCT_IN_SYS_CDIO_H 1'
2706 _def_cdio
='#undef DVD_STRUCT_IN_SYS_CDIO_H'
2711 echocheck
"linux/cdrom.h"
2713 #include <sys/types.h>
2714 #include <linux/cdrom.h>
2715 int main(void) { return 0; }
2718 cc_check
&& _cdrom
=yes
2719 if test "$_cdrom" = yes ; then
2720 _def_cdrom
='#define DVD_STRUCT_IN_LINUX_CDROM_H 1'
2722 _def_cdrom
='#undef DVD_STRUCT_IN_LINUX_CDROM_H'
2730 int main(void) { return 0; }
2733 cc_check
&& _dvd
=yes
2734 if test "$_dvd" = yes ; then
2735 _def_dvd
='#define DVD_STRUCT_IN_DVD_H 1'
2737 _def_dvd
='#undef DVD_STRUCT_IN_DVD_H'
2742 echocheck
"BSDI dvd.h"
2745 int main(void) { return 0; }
2748 cc_check
&& _bsdi_dvd
=yes
2749 if test "$_bsdi_dvd" = yes ; then
2750 _def_bsdi_dvd
='#define DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H 1'
2752 _def_bsdi_dvd
='#undef DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H'
2754 echores
"$_bsdi_dvd"
2757 echocheck
"HPUX SCSI header"
2759 #include <sys/scsi.h>
2760 int main(void) { return 0; }
2763 cc_check
&& _hpux_scsi_h
=yes
2764 if test "$_hpux_scsi_h" = yes ; then
2765 _def_hpux_scsi_h
='#define HPUX_SCTL_IO 1'
2767 _def_hpux_scsi_h
='#undef HPUX_SCTL_IO'
2769 echores
"$_hpux_scsi_h"
2772 echocheck
"userspace SCSI headers (Solaris)"
2774 # include <unistd.h>
2775 # include <stropts.h>
2776 # include <sys/scsi/scsi_types.h>
2777 # include <sys/scsi/impl/uscsi.h>
2778 int main(void) { return 0; }
2781 cc_check
&& _sol_scsi_h
=yes
2782 if test "$_sol_scsi_h" = yes ; then
2783 _def_sol_scsi_h
='#define SOLARIS_USCSI 1'
2785 _def_sol_scsi_h
='#undef SOLARIS_USCSI'
2787 echores
"$_sol_scsi_h"
2791 if test "$_termcap" = auto
; then
2793 int main(void) { return 0; }
2796 cc_check
-ltermcap && _termcap
=yes && _ld_termcap
='-ltermcap'
2797 cc_check
-ltinfo && _termcap
=yes && _ld_termcap
='-ltinfo'
2799 if test "$_termcap" = yes ; then
2800 _def_termcap
='#define USE_TERMCAP 1'
2801 echores
"yes (using $_ld_termcap)"
2803 _def_termcap
='#undef USE_TERMCAP'
2809 if test "$_termios" = auto
; then
2811 #include <sys/termios.h>
2812 int main(void) { return 0; }
2815 cc_check
&& _termios
=yes
2816 _def_termios_h_name
='sys/termios.h'
2819 if test "$_termios" = no
; then
2821 #include <termios.h>
2822 int main(void) { return 0; }
2825 cc_check
&& _termios
=yes
2826 _def_termios_h_name
='termios.h'
2829 if test "$_termios" = yes ; then
2830 _def_termios
='#define HAVE_TERMIOS 1'
2831 _def_termios_h
='#undef HAVE_TERMIOS_H'
2832 _def_termios_sys_h
='#undef HAVE_SYS_TERMIOS_H'
2834 if test "$_def_termios_h_name" = 'sys/termios.h' ; then
2835 _def_termios_sys_h
='#define HAVE_SYS_TERMIOS_H 1'
2836 elif test "$_def_termios_h_name" = 'termios.h' ; then
2837 _def_termios_h
='#define HAVE_TERMIOS_H 1'
2839 echores
"yes (using $_def_termios_h_name)"
2841 _def_termios
='#undef HAVE_TERMIOS'
2842 _def_termios_h_name
=''
2848 if test "$_shm" = auto
; then
2850 #include <sys/types.h>
2851 #include <sys/shm.h>
2852 int main(void) { shmget(0, 0, 0); shmat(0, 0, 0); shmctl(0, 0, 0); return 0; }
2855 cc_check
&& _shm
=yes
2857 if test "$_shm" = yes ; then
2858 _def_shm
='#define HAVE_SHM 1'
2860 _def_shm
='#undef HAVE_SHM'
2865 # XXX: FIXME, add runtime checking
2866 echocheck
"linux devfs"
2867 echores
"$_linux_devfs"
2870 echocheck
"scandir()"
2872 int main (void) { scandir("", 0, 0, 0); alphasort(0, 0); return 0; }
2875 cc_check
&& _scandir
=yes
2876 if test "$_scandir" = yes ; then
2877 _def_scandir
='#define HAVE_SCANDIR 1'
2879 _def_scandir
='#undef HAVE_SCANDIR'
2884 echocheck
"strsep()"
2887 int main (void) { char *s = "Hello, world!"; (void) strsep(&s, ","); return 0; }
2890 cc_check
&& _strsep
=yes
2891 if test "$_strsep" = yes ; then
2892 _def_strsep
='#define HAVE_STRSEP 1'
2894 _def_strsep
='#undef HAVE_STRSEP'
2898 echocheck
"strlcpy()"
2901 int main (void) { char *s = "Hello, world!", t[20]; (void) strlcpy(t, s, sizeof( t )); return 0; }
2904 cc_check
&& _strlcpy
=yes
2905 if test "$_strlcpy" = yes ; then
2906 _def_strlcpy
='#define HAVE_STRLCPY 1'
2908 _def_strlcpy
='#undef HAVE_STRLCPY'
2912 echocheck
"strlcat()"
2915 int main (void) { char *s = "Hello, world!", t[20]; (void) strlcat(t, s, sizeof( t )); return 0; }
2918 cc_check
&& _strlcat
=yes
2919 if test "$_strlcat" = yes ; then
2920 _def_strlcat
='#define HAVE_STRLCAT 1'
2922 _def_strlcat
='#undef HAVE_STRLCAT'
2926 echocheck
"fseeko()"
2929 int main (void) { int i; i = fseeko(stdin, 0, 0); return 0; }
2932 cc_check
&& _fseeko
=yes
2933 if test "$_fseeko" = yes ; then
2934 _def_fseeko
='#define HAVE_FSEEKO 1'
2936 _def_fseeko
='#undef HAVE_FSEEKO'
2940 echocheck
"localtime_r()"
2943 int main( void ) { localtime_r(NULL, NULL); }
2946 cc_check
&& _localtime_r
=yes
2947 if test "$_localtime_r" = yes ; then
2948 _def_localtime_r
='#define HAVE_LOCALTIME_R 1'
2950 _def_localtime_r
='#undef HAVE_LOCALTIME_R'
2952 echores
"$_localtime_r"
2954 echocheck
"vsscanf()"
2957 int main(void) { vsscanf(0, 0, 0); return 0; }
2960 cc_check
&& _vsscanf
=yes
2961 if test "$_vsscanf" = yes ; then
2962 _def_vsscanf
='#define HAVE_VSSCANF 1'
2964 _def_vsscanf
='#undef HAVE_VSSCANF'
2972 int main(void) { swab(0, 0, 0); return 0; }
2975 cc_check
&& _swab
=yes
2976 if test "$_swab" = yes ; then
2977 _def_swab
='#define HAVE_SWAB 1'
2979 _def_swab
='#undef HAVE_SWAB'
2983 echocheck
"posix select()"
2987 #include <sys/types.h>
2989 #include <sys/time.h>
2991 int main(void) {int nfds = 1; fd_set readfds; struct timeval timeout; select(nfds,&readfds,NULL,NULL,&timeout); return 0; }
2994 cc_check
&& _posix_select
=yes
2995 if test "$_posix_select" = no
; then
2996 _def_no_posix_select
='#define HAVE_NO_POSIX_SELECT 1'
2998 _def_no_posix_select
='#undef HAVE_NO_POSIX_SELECT'
3000 echores
"$_posix_select"
3003 echocheck
"gettimeofday()"
3006 #include <sys/time.h>
3007 int main(void) {struct timeval tv_start; gettimeofday(&tv_start, NULL); return 0; }
3010 cc_check
&& _gettimeofday
=yes
3011 if test "$_gettimeofday" = yes ; then
3012 _def_gettimeofday
='#define HAVE_GETTIMEOFDAY 1'
3014 _def_gettimeofday
='#undef HAVE_GETTIMEOFDAY'
3016 echores
"$_gettimeofday"
3023 int main(void) { glob_t gg; glob("filename",0,NULL,&gg); return 0; }
3026 cc_check
&& _glob
=yes
3027 if test "$_glob" = yes ; then
3028 _def_glob
='#define HAVE_GLOB 1'
3030 _def_glob
='#undef HAVE_GLOB'
3035 echocheck
"sys/sysinfo.h"
3037 #include <sys/sysinfo.h>
3039 struct sysinfo s_info;
3045 cc_check
&& _sys_sysinfo
=yes
3046 if test "$_sys_sysinfo" = yes ; then
3047 _def_sys_sysinfo
='#define HAVE_SYS_SYSINFO_H 1'
3048 _inc_sysinfo
='#include <sys/sysinfo.h>'
3050 _def_sys_sysinfo
='#undef HAVE_SYS_SYSINFO_H'
3052 echores
"$_sys_sysinfo"
3055 echocheck
"Mac OS X APIs"
3056 if test "$_macosx" = auto
; then
3057 if darwin
&& ppc
; then
3061 _def_macosx
='#undef MACOSX'
3062 _noaomodules
="macosx $_noaomodules"
3063 _novomodules
="quartz $_novomodules"
3066 if test "$_macosx" = yes ; then
3068 #include <Carbon/Carbon.h>
3069 #include <QuickTime/QuickTime.h>
3070 #include <CoreAudio/CoreAudio.h>
3074 CFRunLoopRunInMode(kCFRunLoopDefaultMode, 0, false);
3077 if cc_check
-framework Carbon
-framework QuickTime
-framework CoreAudio
; then
3079 _macosx_frameworks
="-framework Carbon -framework QuickTime -framework CoreAudio"
3080 _def_macosx
='#define MACOSX 1'
3081 _aosrc
="$_aosrc ao_macosx.c"
3082 _aomodules
="macosx $_aomodules"
3083 _vosrc
="$_vosrc vo_quartz.c"
3084 _vomodules
="quartz $_vomodules"
3087 _def_macosx
='#undef MACOSX'
3088 _noaomodules
="macosx $_noaomodules"
3089 _novomodules
="quartz $_novomodules"
3095 echocheck
"Samba support (libsmbclient)"
3096 if test "$_smbsupport" = yes; then
3097 _ld_smb
="-lsmbclient"
3099 if test "$_smbsupport" = auto
; then
3102 #include <libsmbclient.h>
3103 int main(void) { smbc_opendir("smb://"); return 0; }
3105 if cc_check
-lsmbclient ; then
3107 _ld_smb
="-lsmbclient"
3109 if cc_check
-lsmbclient $_ld_dl ; then
3111 _ld_smb
="-lsmbclient $_ld_dl"
3113 if cc_check
-lsmbclient $_ld_dl -lnsl ; then
3115 _ld_smb
="-lsmbclient $_ld_dl -lnsl"
3121 if test "$_smbsupport" = yes; then
3122 _def_smbsupport
="#define LIBSMBCLIENT"
3123 _inputmodules
="smb $_inputmodules"
3125 _def_smbsupport
="#undef LIBSMBCLIENT"
3126 _noinputmodules
="smb $_noinputmodules"
3128 echores
"$_smbsupport"
3137 if test "$_3dfx" = yes ; then
3138 _def_3dfx
='#define HAVE_3DFX 1'
3139 _vosrc
="$_vosrc vo_3dfx.c"
3140 _vomodules
="3dfx $_vomodules"
3142 _def_3dfx
='#undef HAVE_3DFX'
3143 _novomodules
="3dfx $_novomodules"
3149 if test "$_tdfxfb" = yes ; then
3150 _def_tdfxfb
='#define HAVE_TDFXFB 1'
3151 _vosrc
="$_vosrc vo_tdfxfb.c"
3152 _vomodules
="tdfxfb $_vomodules"
3154 _def_tdfxfb
='#undef HAVE_TDFXFB'
3155 _novomodules
="tdfxfb $_novomodules"
3160 if test "$_tdfxvid" = yes ; then
3161 _def_tdfxvid
='#define HAVE_TDFX_VID 1'
3162 _vosrc
="$_vosrc vo_tdfx_vid.c"
3163 _vomodules
="tdfx_vid $_vomodules"
3165 _def_tdfxvid
='#undef HAVE_TDFX_VID'
3166 _novomodules
="tdfx_vid $_novomodules"
3171 if test "$_tga" = yes ; then
3172 _def_tga
='#define HAVE_TGA 1'
3173 _vosrc
="$_vosrc vo_tga.c"
3174 _vomodules
="tga $_vomodules"
3176 _def_tga
='#undef HAVE_TGA'
3177 _novomodules
="tga $_novomodules"
3181 echocheck
"DirectFB headers presence"
3182 if test -z "$_inc_directfb" ; then
3183 for I
in /usr
/include
/usr
/local
/include
$_inc_extra; do
3184 if test -d "$I/directfb" && test -f "$I/directfb/directfb.h" ; then
3185 _inc_directfb
="-I$I/directfb"
3186 echores
"yes (using $_inc_directfb)"
3189 if test -d "$I" && test -f "$I/directfb.h" ; then
3190 _inc_directfb
="-I$I"
3191 echores
"yes (using $_inc_directfb)"
3195 if test -z "$_inc_directfb" ; then
3200 echores
"yes (using $_inc_directfb)"
3202 if test "$_inc_directfb" = "-I/usr/include" ; then
3206 echocheck
"DirectFB"
3207 if test "$_directfb" = auto
; then
3210 #include <directfb.h>
3211 int main(void) { IDirectFB *foo; return 0; }
3213 linux
&& test -c /dev
/fb0
&& cc_check
$_inc_directfb -ldirectfb && _directfb
=yes
3216 if test "$_directfb" = yes; then
3218 #include <directfb.h>
3220 printf ("%i",(directfb_major_version*100+directfb_minor_version)*100+directfb_micro_version);
3224 if cc_check
$_inc_directfb -ldirectfb && "$TMPO" >> "$TMPLOG" ; then
3225 _directfb_version
=`"$TMPO"`
3226 _def_directfb_version
="#define DIRECTFBVERSION $_directfb_version"
3227 echores
"yes ($_directfb_version)"
3230 echores
"no (failed to get version)"
3233 echores
"$_directfb"
3236 if test "$_directfb" = yes ; then
3237 _def_directfb
='#define HAVE_DIRECTFB 1'
3238 if test "$_directfb_version" -ge 913; then
3239 _vosrc
="$_vosrc vo_directfb2.c"
3241 _vosrc
="$_vosrc vo_directfb.c"
3243 _vomodules
="directfb $_vomodules"
3244 _ld_directfb
='-ldirectfb'
3246 if test "$_directfb_version" -ge 915; then
3247 _vosrc
="$_vosrc vo_dfbmga.c"
3248 _vomodules
="dfbmga $_vomodules"
3251 _def_directfb
='#undef HAVE_DIRECTFB'
3252 _novomodules
="directfb $_novomodules"
3257 echocheck
"X11 headers presence"
3258 if test -z "$_inc_x11" ; then
3259 for I
in /usr
/X11
/include
/usr
/X11R
6/include
/usr
/include
/X11R6
/usr
/include
/usr
/openwin
/include
; do
3260 if test -d "$I/X11" && test -f "$I/X11/Xlib.h" ; then
3262 echores
"yes (using $I)"
3266 if test -z "$_inc_x11" ; then
3268 echores
"not found (check if the dev(el) packages are installed)"
3271 echores
"yes (using $_inc_x11)"
3273 if test "$_inc_x11" = "-I/usr/include" ; then
3278 echocheck
"X11 libs presence"
3279 if test -z "$_ld_x11" ; then
3280 for I
in /usr
/X11R
6/lib
/usr
/lib
/X11R6
/usr
/X11
/lib
/usr
/lib32
/usr
/openwin
/lib
/usr
/X11R
6/lib64
/usr
/lib
; do
3281 if test -d "$I" && ( test -f "$I/libX11.so" ||
test -f "$I/libX11.a" ||
test -f "$I/libX11.dll.a" ) ; then
3283 _ld_x11
="-L$I -Wl,-R$I"
3287 echores
"yes (using $I)"
3291 if test -z "$_ld_x11" ; then
3293 echores
"not found (check if the dev(el) packages are installed)"
3296 echores
"yes (using $_ld_x11)"
3298 _ld_x11
="$_ld_x11 -lXext -lX11 $_ld_sock"
3302 if test "$_x11" != no
; then
3304 #include <X11/Xlib.h>
3305 #include <X11/Xutil.h>
3306 int main(void) { (void) XCreateWindow(0,0,0,0,0,0,0,0,0,0,0,0); return 0; }
3309 cc_check
$_inc_x11 $_ld_x11 && _x11
=yes
3311 if test "$_x11" = yes ; then
3312 _def_x11
='#define HAVE_X11 1'
3313 _vosrc
="$_vosrc x11_common.c vo_x11.c vo_xover.c"
3314 _vomodules
="x11 xover $_vomodules"
3316 _def_x11
='#undef HAVE_X11'
3319 _novomodules
="x11 $_novomodules"
3326 if test "$_x11" = yes ; then
3328 #include <X11/Xmd.h>
3329 #include <X11/Xlib.h>
3330 #include <X11/Xutil.h>
3331 #include <X11/Xatom.h>
3332 #include <X11/extensions/dpms.h>
3334 (void) DPMSQueryExtension(0, 0, 0);
3337 cc_check
$_inc_x11 -lXdpms $_ld_x11 && _xdpms3
=yes
3340 if test "$_x11" = yes ; then
3342 #include <X11/Xlib.h>
3343 #include <X11/extensions/dpms.h>
3345 (void) DPMSQueryExtension(0, 0, 0);
3348 cc_check
$_inc_x11 $_ld_x11 && _xdpms4
=yes
3350 if test "$_xdpms4" = yes ; then
3351 _def_xdpms
='#define HAVE_XDPMS 1'
3352 echores
"yes (using Xdpms 4)"
3353 elif test "$_xdpms3" = yes ; then
3354 _def_xdpms
='#define HAVE_XDPMS 1'
3355 _ld_x11
="-lXdpms $_ld_x11"
3356 echores
"yes (using Xdpms 3)"
3358 _def_xdpms
='#undef HAVE_XDPMS'
3364 if test "$_x11" = yes && test "$_xv" != no
; then
3366 #include <X11/Xlib.h>
3367 #include <X11/extensions/Xvlib.h>
3368 int main(void) { (void) XvGetPortAttribute(0, 0, 0, 0); return 0; }
3371 cc_check
$_inc_x11 -lXv $_ld_x11 && _xv
=yes
3375 if test "$_xv" = yes ; then
3376 _def_xv
='#define HAVE_XV 1'
3378 _vosrc
="$_vosrc vo_xv.c"
3379 _vomodules
="xv $_vomodules"
3381 _def_xv
='#undef HAVE_XV'
3382 _novomodules
="xv $_novomodules"
3388 if test "$_x11" = yes && test "$_xv" = yes && test "$_xvmc" != no
; then
3391 #include <X11/Xlib.h>
3392 #include <X11/extensions/Xvlib.h>
3393 #include <X11/extensions/XvMClib.h>
3395 (void) XvMCQueryExtension(0,0,0);
3396 (void) XvMCCreateContext(0,0,0,0,0,0,0);
3399 cc_check
$_inc_x11 -lXvMC -l$_xvmclib $_ld_xv $_ld_x11 && _xvmc
=yes
3401 if test "$_xvmc" = yes ; then
3402 _def_xvmc
='#define HAVE_XVMC 1'
3403 _ld_xvmc
="-lXvMC -l$_xvmclib"
3404 _vosrc
="$_vosrc vo_xvmc.c"
3405 _vomodules
="xvmc $_vomodules"
3407 _def_xvmc
='#undef HAVE_XVMC'
3408 _novomodules
="xvmc $_novomodules"
3413 echocheck
"Xinerama"
3414 if test "$_x11" = yes && test "$_xinerama" != no
; then
3416 #include <X11/Xlib.h>
3417 #include <X11/extensions/Xinerama.h>
3418 int main(void) { (void) XineramaIsActive(0); return 0; }
3421 cc_check
$_inc_x11 -lXinerama $_ld_x11 && _xinerama
=yes
3425 if test "$_xinerama" = yes ; then
3426 _def_xinerama
='#define HAVE_XINERAMA 1'
3427 _ld_xinerama
='-lXinerama'
3429 _def_xinerama
='#undef HAVE_XINERAMA'
3431 echores
"$_xinerama"
3434 # Note: the -lXxf86vm library is the VideoMode extension and though it's not
3435 # needed for DGA, AFAIK every distribution packages together with DGA stuffs
3436 # named 'X extensions' or something similar.
3437 # This check may be useful for future mplayer versions (to change resolution)
3438 # If you run into problems, remove '-lXxf86vm'.
3440 if test "$_x11" = yes && test "$_vm" != no
; then
3442 #include <X11/Xlib.h>
3443 #include <X11/extensions/xf86vmode.h>
3444 #include <X11/XF86keysym.h>
3445 int main(void) { (void) XF86VidModeQueryExtension(0, 0, 0); return 0; }
3448 cc_check
$_inc_x11 -lXxf86vm $_ld_x11 && _vm
=yes
3452 if test "$_vm" = yes ; then
3453 _def_vm
='#define HAVE_XF86VM 1'
3456 _def_vm
='#undef HAVE_XF86VM'
3462 # Version 2 is preferred to version 1 if available
3463 if test "$_dga" = auto
; then
3465 #include <X11/Xlib.h>
3466 #include <X11/extensions/xf86dga.h>
3467 int main (void) { (void) XF86DGASetViewPort(0, 0, 0, 0); return 0; }
3470 cc_check
$_inc_x11 -lXxf86dga -lXxf86vm $_ld_x11 && _dga
=1
3473 #include <X11/Xlib.h>
3474 #include <X11/extensions/xf86dga.h>
3475 int main (void) { (void) XDGASetViewport(0, 0, 0, 0, 0); return 0; }
3477 cc_check
$_inc_x11 -lXxf86dga $_ld_x11 && _dga
=2
3480 _def_dga
='#undef HAVE_DGA'
3481 _def_dga2
='#undef HAVE_DGA2'
3482 if test "$_dga" = 1 ; then
3483 _def_dga
='#define HAVE_DGA 1'
3484 _ld_dga
='-lXxf86dga'
3485 _vosrc
="$_vosrc vo_dga.c"
3486 _vomodules
="dga $_vomodules"
3487 echores
"yes (using DGA 1.0)"
3488 elif test "$_dga" = 2 ; then
3489 _def_dga
='#define HAVE_DGA 1'
3490 _def_dga2
='#define HAVE_DGA2 1'
3491 _ld_dga
='-lXxf86dga'
3492 _vosrc
="$_vosrc vo_dga.c"
3493 _vomodules
="dga $_vomodules"
3494 echores
"yes (using DGA 2.0)"
3495 elif test "$_dga" = no
; then
3497 _novomodules
="dga $_novomodules"
3499 die
"DGA version must be 1 or 2"
3504 #Note: this test is run even with --enable-gl since we autodetect $_ld_gl
3505 if (test "$_x11" = yes || win32
) && test "$_gl" != no
; then
3508 int main(void) { return 0; }
3511 if cc_check
$_inc_x11 $_ld_x11 -lGL $_ld_lm ; then
3514 elif cc_check
$_inc_x11 $_ld_x11 -lGL $_ld_lm $_ld_pthread ; then
3516 _ld_gl
="-lGL $_ld_pthread"
3517 elif cc_check
-lopengl32 ; then
3520 _ld_gl
="-lopengl32 -lgdi32"
3525 if test "$_gl" = yes ; then
3526 _def_gl
='#define HAVE_GL 1'
3527 if test "$_gl_win32" = yes ; then
3528 _def_gl_win32
='#define GL_WIN32 1'
3529 _vosrc
="$_vosrc vo_gl2.c w32_common.c gl_common.c"
3531 _vosrc
="$_vosrc vo_gl.c vo_gl2.c gl_common.c"
3533 _vomodules
="opengl $_vomodules"
3535 _def_gl
='#undef HAVE_GL'
3536 _def_gl_win32
='#undef GL_WIN32'
3537 _novomodules
="opengl $_novomodules"
3542 echocheck
"/dev/mga_vid"
3543 if test "$_mga" = auto
; then
3545 test -c /dev
/mga_vid
&& _mga
=yes
3547 if test "$_mga" = yes ; then
3548 _def_mga
='#define HAVE_MGA 1'
3549 _vosrc
="$_vosrc vo_mga.c"
3550 _vomodules
="mga $_vomodules"
3552 _def_mga
='#undef HAVE_MGA'
3553 _novomodules
="mga $_novomodules"
3558 # echocheck "syncfb"
3560 # test "$_mga" = yes && _syncfb=yes
3561 # if test "$_syncfb" = yes ; then
3562 # _def_syncfb='#define HAVE_SYNCFB 1'
3563 # _vosrc="$_vosrc vo_syncfb.c"
3565 # _def_syncfb='#undef HAVE_SYNCFB'
3567 # echores "$_syncfb"
3571 if test "$_xmga" = auto
; then
3573 test "$_x11" = yes && test "$_mga" = yes && _xmga
=yes
3575 if test "$_xmga" = yes ; then
3576 _def_xmga
='#define HAVE_XMGA 1'
3577 _vosrc
="$_vosrc vo_xmga.c"
3578 _vomodules
="xmga $_vomodules"
3580 _def_xmga
='#undef HAVE_XMGA'
3581 _novomodules
="xmga $_novomodules"
3587 if test "$_ggi" = auto
; then
3589 #include <ggi/ggi.h>
3590 int main(void) { return 0; }
3593 cc_check
-lggi && _ggi
=yes
3595 if test "$_ggi" = yes ; then
3596 _def_ggi
='#define HAVE_GGI 1'
3598 _vosrc
="$_vosrc vo_ggi.c"
3599 _vomodules
="ggi $_vomodules"
3601 _def_ggi
='#undef HAVE_GGI'
3602 _novomodules
="ggi $_novomodules"
3608 if test "$_aa" = auto
; then
3611 int main(void) { (void) aa_init(0, 0, 0); return 0; }
3614 cc_check
-laa && _aa
=yes
3616 if test "$_aa" = yes ; then
3617 _def_aa
='#define HAVE_AA 1'
3619 _ld_aa
=`aalib-config --libs | cut -d " " -f 2,5,6`
3623 _vosrc
="$_vosrc vo_aa.c"
3624 _vomodules
="aa $_vomodules"
3626 _def_aa
='#undef HAVE_AA'
3627 _novomodules
="aa $_novomodules"
3633 if test "$_caca" = auto
; then
3635 if ( caca-config
--version ) >> "$TMPLOG" 2>&1 ; then
3638 int main(void) { (void) caca_init(); return 0; }
3640 cc_check
`caca-config --libs` && _caca
=yes
3643 if test "$_caca" = yes ; then
3644 _def_caca
='#define HAVE_CACA 1'
3645 _inc_caca
=`caca-config --cflags`
3646 _ld_caca
=`caca-config --libs`
3647 _vosrc
="$_vosrc vo_caca.c"
3648 _vomodules
="caca $_vomodules"
3650 _def_caca
='#undef HAVE_CACA'
3651 _novomodules
="caca $_novomodules"
3657 if test "$_svga" = auto
; then
3661 int main(void) { return 0; }
3664 cc_check
-lvgagl -lvga $_ld_lm && _svga
=yes
3666 if test "$_svga" = yes ; then
3667 _def_svga
='#define HAVE_SVGALIB 1'
3668 _ld_svga
="-lvgagl -lvga $_ld_lm"
3669 _vosrc
="$_vosrc vo_svga.c"
3670 _vomodules
="svga $_vomodules"
3672 _def_svga
='#undef HAVE_SVGALIB'
3673 _novomodules
="svga $_novomodules"
3679 if test "$_fbdev" = auto
; then
3681 linux
&& test -c /dev
/fb0
&& _fbdev
=yes
3683 if test "$_fbdev" = yes ; then
3684 _def_fbdev
='#define HAVE_FBDEV 1'
3685 _vosrc
="$_vosrc vo_fbdev.c vo_fbdev2.c"
3686 _vomodules
="fbdev $_vomodules"
3688 _def_fbdev
='#undef HAVE_FBDEV'
3689 _novomodules
="fbdev $_novomodules"
3696 if test "$_dvb" != no
; then
3699 #include <sys/poll.h>
3700 #include <sys/ioctl.h>
3705 #include <ost/dmx.h>
3706 #include <ost/frontend.h>
3707 #include <ost/sec.h>
3708 #include <ost/video.h>
3709 #include <ost/audio.h>
3710 int main(void) {return 0;}
3716 for I
in "$_inc_dvb" "-I/usr/src/DVB/ost/include" ; do
3717 if cc_check
"$I" ; then
3720 echores
"yes (using $_inc_dvb)"
3724 test "$_dvb" = no
&& echores
"no (specify path to DVB/ost/include with --with-dvbincdir=DIR)"
3729 if test "$_dvb" = yes ; then
3730 _def_dvb
='#define HAVE_DVB 1'
3731 _def_dvb_in
='#define HAS_DVBIN_SUPPORT 1'
3732 _aomodules
="mpegpes(dvb) $_aomodules"
3733 _vomodules
="mpegpes(dvb) $_vomodules"
3735 if test "$_dvbhead" != no
; then
3736 echocheck
"DVB HEAD"
3737 if test "$_dvbhead" != no
; then
3741 #include <sys/poll.h>
3742 #include <sys/ioctl.h>
3747 #include <linux/dvb/dmx.h>
3748 #include <linux/dvb/frontend.h>
3749 #include <linux/dvb/video.h>
3750 #include <linux/dvb/audio.h>
3751 int main(void) {return 0;}
3757 for I
in "$_inc_dvb" "-I/usr/src/DVB/include" ; do
3758 if cc_check
"$I" ; then
3761 echores
"yes (using $_inc_dvb)"
3765 test "$_dvbhead" = no
&& echores
"no (specify path to DVB/include (HEAD Version) with --with-dvbincdir=DIR)"
3770 if test "$_dvbhead" = yes ; then
3771 _def_dvb
='#define HAVE_DVB_HEAD 1'
3772 _def_dvb_in
='#define HAS_DVBIN_SUPPORT 1'
3773 _aomodules
="mpegpes(dvb) $_aomodules"
3774 _vomodules
="mpegpes(dvb) $_vomodules"
3777 if test "$_dvbhead" = no
&& test "$_dvb" = no
; then
3778 _def_dvb
='#undef HAVE_DVB'
3779 _def_dvb_in
='#undef HAS_DVBIN_SUPPORT '
3780 _aomodules
="mpegpes(file) $_aomodules"
3781 _vomodules
="mpegpes(file) $_vomodules"
3784 if test "$_dvb" = yes ||
test "$_dvbhead" = yes ; then
3786 _inputmodules
="dvb $_inputmodules"
3789 _noinputmodules
="dvb $_noinputmodules"
3792 echocheck
"PNG support"
3793 if test "$_png" = auto
; then
3796 # Don't check for -lpng on irix since it has its own libpng
3797 # incompatible with the GNU libpng
3798 echores
"disabled on irix (not GNU libpng)"
3804 printf("png.h : %s\n", PNG_LIBPNG_VER_STRING);
3805 printf("libpng: %s\n", png_libpng_ver);
3806 return (strcmp(PNG_LIBPNG_VER_STRING, png_libpng_ver));
3809 if cc_check
-lpng -lz $_ld_lm ; then
3810 if "$TMPO" >> "$TMPLOG" ; then
3814 echores
"no (mismatch of library and header versions)"
3823 if test "$_png" = yes ; then
3824 _def_png
='#define HAVE_PNG 1'
3826 _vosrc
="$_vosrc vo_png.c"
3827 _vomodules
="png $_vomodules"
3830 _def_png
='#undef HAVE_PNG'
3831 _novomodules
="png $_novomodules"
3835 echocheck
"JPEG support"
3836 if test "$_jpg" = auto
; then
3843 #include <jpeglib.h>
3848 if cc_check
-ljpeg $_ld_lm ; then
3849 if "$TMPO" >> "$TMPLOG" ; then
3856 if test "$_jpg" = yes ; then
3857 _def_jpg
='#define HAVE_JPEG 1'
3858 _vosrc
="$_vosrc vo_jpeg.c"
3859 _vomodules
="jpeg $_vomodules"
3863 _def_jpg
='#undef HAVE_JPEG'
3864 _novomodules
="jpeg $_novomodules"
3869 echocheck
"GIF support"
3870 # This is to appease people who want to force gif support.
3871 # If it is forced to yes, then we still do checks to determine
3872 # which gif library to use.
3873 if test "$_gif" = yes ; then
3878 if test "$_gif" = auto
; then
3881 #include <gif_lib.h>
3886 if cc_check
-lungif && "$TMPO" >> "$TMPLOG" ; then
3889 elif cc_check
-lungif $_ld_x11 && "$TMPO" >> "$TMPLOG" ; then
3891 _ld_gif
="-lungif $_ld_x11"
3892 elif cc_check
-lgif && "$TMPO" >> "$TMPLOG" ; then
3895 elif cc_check
-lgif $_ld_x11 && "$TMPO" >> "$TMPLOG" ; then
3897 _ld_gif
="-lgif $_ld_x11"
3901 # If no library was found, and the user wants support forced,
3902 # then we force it on with libgif, as this is the safest
3903 # assumption IMHO. (libungif & libregif both create symbolic
3904 # links to libgif. We also assume that no x11 support is needed,
3905 # because if you are forcing this, then you _should_ know what
3906 # you are doing. [ Besides, package maintainers should never
3907 # have compiled x11 deps into libungif in the first place. ] )
3910 if test "$_force_gif" = yes && test "$_gif" = no
; then
3915 if test "$_gif" = yes ; then
3916 _def_gif
='#define HAVE_GIF 1'
3917 _vosrc
="$_vosrc vo_gif89a.c"
3918 _codecmodules
="gif $_codecmodules"
3919 _vomodules
="gif89a $_vomodules"
3921 _gif
="yes (old version, some encoding functions disabled)"
3922 _def_gif_4
='#undef HAVE_GIF_4'
3926 #include <gif_lib.h>
3927 void catch() { exit(1); }
3929 signal(SIGSEGV, catch); // catch segfault
3930 printf("EGifPutExtensionFirst is at address %p\n", EGifPutExtensionFirst);
3931 EGifSetGifVersion("89a"); // this will segfault a buggy gif lib.
3935 if cc_check
"$_ld_gif" && ( "$TMPO" ) >>"$TMPLOG" 2>&1 ; then
3936 _def_gif_4
='#define HAVE_GIF_4 1'
3940 _def_gif
='#undef HAVE_GIF'
3941 _def_gif_4
='#undef HAVE_GIF_4'
3942 _novomodules
="gif89a $_novomodules"
3943 _nocodecmodules
="gif $_codecmodules"
3949 case "$_gif" in yes*)
3950 echocheck
"broken giflib workaround"
3951 _def_gif_tvt_hack
='#define HAVE_GIF_TVT_HACK 1'
3954 #include <gif_lib.h>
3957 printf("UserData is at address %p\n", gif.UserData);
3961 if cc_check
"$_ld_gif" && ( "$TMPO" ) >>"$TMPLOG" 2>&1 ; then
3962 _def_gif_tvt_hack
='#undef HAVE_GIF_TVT_HACK'
3971 echocheck
"VESA support"
3972 if test "$_vesa" = auto
; then
3973 if x86
&& linux
; then
3977 int main(void) { return 0; }
3979 cc_check
&& _vesa
=yes
3982 if test "$_vesa" = yes ; then
3983 _def_vesa
='#define HAVE_VESA 1'
3984 _vosrc
="$_vosrc vo_vesa.c vesa_lvo.c"
3985 _vomodules
="vesa $_vomodules"
3988 _def_vesa
='#undef HAVE_VESA'
3989 echores
"no (not supported on this OS/architecture)"
3990 _novomodules
="vesa $_novomodules"
3999 if test -z "$_sdlconfig" ; then
4000 if ( sdl-config
--version ) >>"$TMPLOG" 2>&1 ; then
4001 _sdlconfig
="sdl-config"
4002 elif ( sdl11-config
--version ) >>"$TMPLOG" 2>&1 ; then
4003 _sdlconfig
="sdl11-config"
4008 if test "$_sdl" = auto ||
test "$_sdl" = yes ; then
4011 int main(int argc, char *argv[]) { return 0; }
4014 if "$_sdlconfig" --version >>"$TMPLOG" 2>&1 ; then
4015 if cc_check
`$_sdlconfig --cflags` `$_sdlconfig --libs` >>"$TMPLOG" 2>&1 ; then
4016 _sdlversion
=`$_sdlconfig --version | sed 's/[^0-9]//g'`
4017 if test "$_sdlversion" -gt 116 ; then
4018 if test "$_sdlversion" -lt 121 ; then
4019 _def_sdlbuggy
='#define BUGGY_SDL'
4021 _def_sdlbuggy
='#undef BUGGY_SDL'
4030 if test "$_sdl" = yes ; then
4031 _def_sdl
='#define HAVE_SDL 1'
4033 _ld_sdl
=`$_sdlconfig --libs | cut -d " " -f 1,4,6 | sed s/no-cygwin/cygwin/`
4034 _inc_sdl
=`$_sdlconfig --cflags | cut -d " " -f 1,5,6 | sed s/no-cygwin/cygwin/`
4036 _ld_sdl
=`$_sdlconfig --libs | sed s/-mwindows//`
4037 _inc_sdl
=`$_sdlconfig --cflags | sed s/-Dmain=SDL_main//`
4039 _ld_sdl
=`$_sdlconfig --libs`
4040 _inc_sdl
=`$_sdlconfig --cflags`
4042 _vosrc
="$_vosrc vo_sdl.c"
4043 _vomodules
="sdl $_vomodules"
4044 _aosrc
="$_aosrc ao_sdl.c"
4045 _aomodules
="sdl $_aomodules"
4046 echores
"yes (using $_sdlconfig)"
4048 _def_sdl
='#undef HAVE_SDL'
4049 _novomodules
="sdl $_novomodules"
4050 _noaomodules
="sdl $_noaomodules"
4054 echocheck
"Windows waveout"
4055 if test "$_win32waveout" = auto
; then
4057 #include <windows.h>
4058 #include <mmsystem.h>
4059 int main(void) { return 0; }
4062 cc_check
-lwinmm && _win32waveout
=yes
4064 if test "$_win32waveout" = yes ; then
4065 _def_win32waveout
='#define HAVE_WIN32WAVEOUT 1'
4066 _ld_win32libs
="-lwinmm $_ld_win32libs"
4067 _aosrc
="$_aosrc ao_win32.c"
4068 _aomodules
="win32 $_aomodules"
4070 _def_win32waveout
='#undef HAVE_WIN32WAVEOUT'
4071 _noaomodules
="win32 $_noaomodules"
4073 echores
"$_win32waveout"
4076 if test "$_directx" = auto
; then
4078 #include <windows.h>
4081 int main(void) { return 0; }
4084 cc_check
-lgdi32 && _directx
=yes
4086 if test "$_directx" = yes ; then
4087 _def_directx
='#define HAVE_DIRECTX 1'
4088 _ld_win32libs
="-lgdi32 $_ld_win32libs"
4089 _vosrc
="$_vosrc vo_directx.c"
4090 _vomodules
="directx $_vomodules"
4091 _aosrc
="$_aosrc ao_dsound.c"
4092 _aomodules
="dsound $_aomodules"
4094 _def_directx
='#undef HAVE_DIRECTX'
4095 _novomodules
="directx $_novomodules"
4096 _noaomodules
="dsound $_noaomodules"
4101 if test "$_nas" = auto ||
test "$_nas" = yes ; then
4103 #include <audio/audiolib.h>
4104 int main(void) { return 0; }
4107 cc_check
-laudio $_inc_x11 -lXt $_ld_x11 $_ld_lm && _nas
=yes
4109 if test "$_nas" = yes ; then
4110 _def_nas
='#define HAVE_NAS 1'
4111 _ld_nas
="-laudio -lXt $_ld_x11"
4112 _aosrc
="$_aosrc ao_nas.c"
4113 _aomodules
="nas $_aomodules"
4115 _noaomodules
="nas $_noaomodules"
4116 _def_nas
='#undef HAVE_NAS'
4121 if test "$_dxr2" = auto
; then
4123 for _inc_dxr2
in "$_inc_dxr2" \
4124 "-I/usr/local/include/dxr2" \
4125 "-I/usr/include/dxr2"; do
4127 #include <dxr2ioctl.h>
4128 int main(void) { return 0; }
4130 cc_check
$_inc_dxr2 && _dxr2
=yes && break
4133 if test "$_dxr2" = yes; then
4134 _def_dxr2
='#define HAVE_DXR2 1'
4135 _vosrc
="$_vosrc vo_dxr2.c"
4136 _aosrc
="$_aosrc ao_dxr2.c"
4137 _aomodules
="dxr2 $_aomodules"
4138 _vomodules
="dxr2 $_vomodules"
4139 echores
"yes (using $_inc_dxr2)"
4141 _def_dxr2
='#undef HAVE_DXR2'
4142 _noaomodules
="dxr2 $_noaomodules"
4143 _novomodules
="dxr2 $_novomodules"
4149 if test "$_dxr3" = auto
; then
4151 #include <linux/em8300.h>
4152 int main(void) { return 0; }
4155 cc_check
&& _dxr3
=yes
4157 if test "$_dxr3" = yes ; then
4158 _def_dxr3
='#define HAVE_DXR3 1'
4159 _vosrc
="$_vosrc vo_dxr3.c"
4160 _vomodules
="dxr3 $_vomodules"
4162 _def_dxr3
='#undef HAVE_DXR3'
4163 _novomodules
="dxr3 $_novomodules"
4164 if test "$_mp1e" = auto
; then
4165 # we don't need mp1e
4172 if test "$_mmx" = no
; then
4173 # mp1e REQUIRES mmx!
4176 if test "$_mp1e" != no
; then
4178 _def_mp1e
='#define USE_MP1E'
4179 _ld_mp1e
='libmp1e/libmp1e.a'
4180 _dep_mp1e
='libmp1e/libmp1e.a'
4183 _def_mp1e
='#undef USE_MP1E'
4191 if test "$_fame" = auto
; then
4193 test "$_dxr2" = yes && _fame
=auto
4194 test "$_dxr3" = yes && _fame
=auto
4195 test "$_dvb" = yes && _fame
=auto
4197 if test "$_fame" = auto
; then
4199 if test -d libfame
&& test -f libfame
/fame.h
; then
4200 # disable fame on cygwin as no sense to port - atmos
4204 echores
"no (no fame dir)"
4210 _def_fame
='#undef USE_LIBFAME'
4211 if test "$_fame" = yes ; then
4212 _def_fame
='#define USE_LIBFAME 1'
4213 _ld_fame
='libfame/libfame.a'
4222 echocheck
"OSS Audio"
4223 if test "$_ossaudio" = auto
; then
4225 #include <sys/ioctl.h>
4227 int main(void) { int arg = SNDCTL_DSP_SETFRAGMENT; return 0; }
4230 cc_check
&& _ossaudio
=yes
4232 if test "$_ossaudio" = yes ; then
4233 _def_ossaudio
='#define USE_OSS_AUDIO 1'
4234 _aosrc
="$_aosrc ao_oss.c"
4235 _aomodules
="oss $_aomodules"
4236 if test "$_linux_devfs" = yes; then
4237 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound/dsp"'
4238 _def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/sound/mixer"'
4241 #include <sys/ioctl.h>
4243 #ifdef OPEN_SOUND_SYSTEM
4244 int main(void) { return 0; }
4246 #error Not the real thing
4250 cc_check
&& _real_ossaudio
=yes
4251 if test "$_real_ossaudio" = yes; then
4252 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
4253 elif netbsd || openbsd
; then
4254 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/sound"'
4255 _ld_arch
="$_ld_arch -lossaudio"
4257 _def_ossaudio_devdsp
='#define PATH_DEV_DSP "/dev/dsp"'
4259 _def_ossaudio_devmixer
='#define PATH_DEV_MIXER "/dev/mixer"'
4262 _def_ossaudio
='#undef USE_OSS_AUDIO'
4263 _def_ossaudio_devdsp
='#define PATH_DEV_DSP ""'
4264 _def_ossaudio_devmixer
='#define PATH_DEV_MIXER ""'
4265 _noaomodules
="oss $_noaomodules"
4267 echores
"$_ossaudio"
4271 if test "$_arts" = auto
; then
4273 if ( artsc-config
--version ) >> "$TMPLOG" 2>&1 ; then
4277 int main(void) { return 0; }
4279 cc_check
`artsc-config --libs` `artsc-config --cflags` && ( "$TMPO" >> "$TMPLOG" 2>&1 ) && _arts
=yes
4284 if test "$_arts" = yes ; then
4285 _def_arts
='#define USE_ARTS 1'
4286 _aosrc
="$_aosrc ao_arts.c"
4287 _aomodules
="arts $_aomodules"
4288 _ld_arts
=`artsc-config --libs`
4289 _inc_arts
=`artsc-config --cflags`
4291 _noaomodules
="arts $_noaomodules"
4297 if test "$_esd" = auto
; then
4299 if ( esd-config
--version ) >> "$TMPLOG" 2>&1 ; then
4303 int main(void) { return 0; }
4305 cc_check
`esd-config --libs` `esd-config --cflags` && ( "$TMPO" >> "$TMPLOG" 2>&1 ) && _esd
=yes
4311 if test "$_esd" = yes ; then
4312 _def_esd
='#define USE_ESD 1'
4313 _aosrc
="$_aosrc ao_esd.c"
4314 _aomodules
="esd $_aomodules"
4315 _ld_esd
=`esd-config --libs`
4316 _inc_esd
=`esd-config --cflags`
4318 echocheck
"esd_get_latency()"
4321 int main(void) { return esd_get_latency(0); }
4323 cc_check
`esd-config --libs` `esd-config --cflags` && _esd_latency
=yes && _def_esd_latency
='#define HAVE_ESD_LATENCY'
4324 echores
"$_esd_latency"
4326 _def_esd
='#undef USE_ESD'
4327 _def_esd_latency
='#undef HAVE_ESD_LATENCY'
4328 _noaomodules
="esd $_noaomodules"
4333 if test "$_jack" = auto
; then
4335 if ( ( pkg-config
--modversion jack
) > /dev
/null
2>&1 ) &&
4336 ( jackd
--version |
grep version |
awk '{ print $3 }' ) >> "$TMPLOG" 2>&1 ; then
4339 #include <jack/jack.h>
4340 int main(void) { JACK_Init(); return 0; }
4342 # This test only checks the minor version number.
4343 if ( ( test `bio2jack-config --version | cut -d '.' -f 2` -ge 3 ) ) >/dev
/null
2>&1 ; then
4344 if test -z "$_bio2jackdir" ; then
4345 cc_check
-lbio2jack `pkg-config --libs --cflags jack` && ( "$TMPO" >> "$TMPLOG" 2>&1 ) && _jack
=yes
4347 cc_check
-L "$_bio2jackdir" -lbio2jack `pkg-config --libs --cflags jack` && ( "$TMPO" >> "$TMPLOG" 2>&1 ) && _jack
=yes
4353 if test "$_jack" = yes ; then
4354 _def_jack
='#define USE_JACK 1'
4355 _aosrc
="$_aosrc ao_jack.c"
4356 _aomodules
="jack $_aomodules"
4357 if test -z "$_bio2jackdir" ; then
4358 _ld_jack
="-lbio2jack `pkg-config --libs jack`"
4360 _ld_jack
="-L \"$_bio2jackdir\" -lbio2jack `pkg-config --libs jack`"
4362 _inc_jack
=`pkg-config --cflags jack`
4364 _noaomodules
="jack $_noaomodules"
4369 echocheck
"ALSA audio"
4370 if test "$_alsa" != no
; then
4373 #include <sys/asoundlib.h>
4374 int main(void) { return (!(SND_LIB_MAJOR==0 && SND_LIB_MINOR==5)); }
4376 cc_check
-lasound $_ld_dl $_ld_pthread && $TMPO && _alsaver
='0.5.x'
4379 #include <sys/asoundlib.h>
4380 int main(void) { return (!(SND_LIB_MAJOR==0 && SND_LIB_MINOR==9)); }
4382 cc_check
-lasound $_ld_dl $_ld_pthread && $TMPO && _alsaver
='0.9.x-sys'
4384 #include <alsa/asoundlib.h>
4385 int main(void) { return (!(SND_LIB_MAJOR==0 && SND_LIB_MINOR==9)); }
4387 cc_check
-lasound $_ld_dl $_ld_pthread && $TMPO && _alsaver
='0.9.x-alsa'
4390 #include <sys/asoundlib.h>
4391 int main(void) { return (!(SND_LIB_MAJOR==1 && SND_LIB_MINOR==0)); }
4393 cc_check
-lasound $_ld_dl $_ld_pthread && $TMPO && _alsaver
='1.0.x-sys'
4395 #include <alsa/asoundlib.h>
4396 int main(void) { return (!(SND_LIB_MAJOR==1 && SND_LIB_MINOR==0)); }
4398 cc_check
-lasound $_ld_dl $_ld_pthread && $TMPO && _alsaver
='1.0.x-alsa'
4400 _def_alsa5
='#undef HAVE_ALSA5'
4401 _def_alsa9
='#undef HAVE_ALSA9'
4402 _def_alsa1x
='#undef HAVE_ALSA1X'
4403 _def_sys_asoundlib_h
='#undef HAVE_SYS_ASOUNDLIB_H'
4404 _def_alsa_asoundlib_h
='#undef HAVE_ALSA_ASOUNDLIB_H'
4405 if test "$_alsaver" ; then
4406 if test "$_alsaver" = '0.5.x' ; then
4407 _aosrc
="$_aosrc ao_alsa5.c"
4408 _aomodules
="alsa5 $_aomodules"
4409 _def_alsa5
='#define HAVE_ALSA5 1'
4410 _def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
4411 echores
"yes (using alsa 0.5.x and sys/asoundlib.h)"
4412 elif test "$_alsaver" = '0.9.x-sys' ; then
4413 _aosrc
="$_aosrc ao_alsa.c"
4414 _aomodules
="alsa $_aomodules"
4415 _def_alsa9
='#define HAVE_ALSA9 1'
4416 _def_sys_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
4417 echores
"yes (using alsa 0.9.x and sys/asoundlib.h)"
4418 elif test "$_alsaver" = '0.9.x-alsa' ; then
4419 _aosrc
="$_aosrc ao_alsa.c"
4420 _aomodules
="alsa $_aomodules"
4421 _def_alsa9
='#define HAVE_ALSA9 1'
4422 _def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
4423 echores
"yes (using alsa 0.9.x and alsa/asoundlib.h)"
4424 elif test "$_alsaver" = '1.0.x-sys' ; then
4425 _aosrc
="$_aosrc ao_alsa.c"
4426 _aomodules
="alsa $_aomodules"
4427 _def_alsa1x
="#define HAVE_ALSA1X 1"
4428 _def_alsa_asoundlib_h
='#define HAVE_SYS_ASOUNDLIB_H 1'
4429 echores
"yes (using alsa 1.0.x and sys/asoundlib.h)"
4430 elif test "$_alsaver" = '1.0.x-alsa' ; then
4431 _aosrc
="$_aosrc ao_alsa.c"
4432 _aomodules
="alsa $_aomodules"
4433 _def_alsa1x
="#define HAVE_ALSA1X 1"
4434 _def_alsa_asoundlib_h
='#define HAVE_ALSA_ASOUNDLIB_H 1'
4435 echores
"yes (using alsa 1.0.x and alsa/asoundlib.h)"
4437 _ld_alsa
="-lasound $_ld_dl $_ld_pthread"
4439 _noaomodules
="alsa $_noaomodules"
4444 echocheck
"Sun audio"
4445 if test "$_sunaudio" = auto
; then
4447 #include <sys/types.h>
4448 #include <sys/audioio.h>
4449 int main(void) { audio_info_t info; AUDIO_INITINFO(&info); return 0; }
4452 cc_check
&& _sunaudio
=yes
4454 if test "$_sunaudio" = yes ; then
4455 _def_sunaudio
='#define USE_SUN_AUDIO 1'
4456 _aosrc
="$_aosrc ao_sun.c"
4457 _aomodules
="sun $_aomodules"
4459 _def_sunaudio
='#undef USE_SUN_AUDIO'
4460 _noaomodules
="sun $_noaomodules"
4462 echores
"$_sunaudio"
4465 echocheck
"Sun mediaLib"
4466 if test "$_mlib" = auto
; then
4468 test -z "$_mlibdir" && _mlibdir
=/opt
/SUNWmlib
4471 int main(void) { mlib_VideoColorYUV2ABGR420(0,0,0,0,0,0,0,0,0); return 0; }
4473 cc_check
-I${_mlibdir}/include
-L${_mlibdir}/lib
-lmlib && _mlib
=yes
4475 if test "$_mlib" = yes ; then
4476 _def_mlib
='#define HAVE_MLIB 1'
4477 _inc_mlib
=" -I${_mlibdir}/include "
4478 _ld_mlib
=" -L${_mlibdir}/lib -R${_mlibdir}/lib -lmlib "
4480 _def_mlib
='#undef HAVE_MLIB'
4485 echocheck
"SGI audio"
4486 if test "$_sgiaudio" = auto
; then
4487 # check for SGI audio
4489 #include <dmedia/audio.h>
4490 int main(void) { return 0; }
4493 cc_check
&& _sgiaudio
=yes
4495 if test "$_sgiaudio" = "yes" ; then
4496 _def_sgiaudio
='#define USE_SGI_AUDIO 1'
4497 _ld_sgiaudio
='-laudio'
4498 _aosrc
="$_aosrc ao_sgi.c"
4499 _aomodules
="sgi $_aomodules"
4501 _def_sgiaudio
='#undef USE_SGI_AUDIO'
4502 _noaomodules
="sgi $_noaomodules"
4504 echores
"$_sgiaudio"
4507 echocheck
"VCD support"
4508 if linux || bsdos || freebsd || netbsd || sunos ||
(darwin
&& ppc
) ; then
4509 _inputmodules
="vcd $_inputmodules"
4510 _def_vcd
='#define HAVE_VCD 1'
4513 _def_vcd
='#undef HAVE_VCD'
4514 _noinputmodules
="vcd $_noinputmodules"
4515 echores
"not supported on this OS"
4518 echocheck
"DVD support (libmpdvdkit)"
4519 if test "$_dvdkit" = auto
; then
4521 if linux || freebsd || netbsd || darwin || openbsd || win32 || sunos || hpux
; then
4522 test -f "./libmpdvdkit2/Makefile" && _dvdkit
=yes
4523 test -f "./libmpdvdkit/Makefile" && _dvdkit
=yes
4526 if test "$_dvdkit" = yes ; then
4527 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
4528 if test -f "./libmpdvdkit2/Makefile" ; then
4529 _inputmodules
="mpdvdkit2 $_inputmodules"
4530 _dvdread
=libmpdvdkit2
4534 _inputmodules
="mpdvdkit $_inputmodules"
4535 _dvdread
=libmpdvdkit
4538 _noinputmodules
="mpdvdkit $_noinputmodules"
4540 _def_dvd_linux
='#undef HAVE_LINUX_DVD_STRUCT'
4541 _def_dvd_bsd
='#undef HAVE_BSD_DVD_STRUCT'
4542 _dev_dvd_openbsd
='#undef HAVE_OPENBSD_DVD_STRUCT'
4543 _def_dvd_darwin
='#undef DARWIN_DVD_IOCTL'
4544 if linux || netbsd || openbsd || bsdos
; then
4545 _def_dvd_linux
='#define HAVE_LINUX_DVD_STRUCT 1'
4547 _dev_dvd_openbsd
='#define HAVE_OPENBSD_DVD_STRUCT 1'
4551 _def_dvd_bsd
='#define HAVE_BSD_DVD_STRUCT 1'
4554 _def_dvd_darwin
='#define DARWIN_DVD_IOCTL'
4559 _noinputmodules
="mpdvdkit $_noinputmodules"
4561 if test "$_dvdkit" = yes ||
test "$_dvdkit2" = yes; then
4567 echocheck
"DVD support (libdvdread)"
4568 if test "$_dvdread" = auto
; then
4570 #include <inttypes.h>
4571 #include <dvdread/dvd_reader.h>
4572 #include <dvdread/ifo_types.h>
4573 #include <dvdread/ifo_read.h>
4574 #include <dvdread/nav_read.h>
4575 int main(void) { return 0; }
4578 if test "$_dl" = yes; then
4580 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -ldvdread $_ld_dl && \
4584 _def_mpdvdkit
="#undef USE_MPDVDKIT"
4588 _def_dvdread
='#define USE_DVDREAD 1'
4589 _ld_dvdread
='-ldvdread'
4590 _inputmodules
="dvdread $_inputmodules"
4594 _def_dvdread
='#undef USE_DVDREAD'
4595 _noinputmodules
="dvdread $_noinputmodules"
4600 _def_dvdread
='#define USE_DVDREAD 1'
4601 _ld_dvdread
='-Llibmpdvdkit -lmpdvdkit'
4602 _noinputmodules
="dvdread $_noinputmodules"
4603 _def_mpdvdkit
="#define USE_MPDVDKIT 1"
4604 echores
"disabled by libmpdvdkit"
4608 _def_dvdread
='#define USE_DVDREAD 1'
4609 _ld_dvdread
='-Llibmpdvdkit2 -lmpdvdkit'
4610 _noinputmodules
="dvdread $_noinputmodules"
4611 _def_mpdvdkit
="#define USE_MPDVDKIT 2"
4612 echores
"disabled by libmpdvdkit2"
4616 # dvdnav disabled, it does not work
4617 # echocheck "DVD support (libdvdnav)"
4618 # if test "$_dvdnav" = yes ; then
4620 # #include <dvdnav.h>
4621 # int main(void) { dvdnav_t *dvd=0; return 0; }
4624 # test -n "$_dvdnavdir" && _legal_dvdnavdir=-L$_dvdnavdir/.libs
4625 # if test -z "$_dvdnavconfig" ; then
4626 # if ( dvdnav-config --version ) >/dev/null 2>&1 ; then
4627 # _dvdnavconfig="dvdnav-config"
4630 # test -z "$_dvdnavdir" && test -n "$_dvdnavconfig" && _dvdnavdir=`$_dvdnavconfig --cflags`
4632 # test "$_dvdkit" = no && test "$_dvdkit2" = no && _used_css=$_ld_css
4633 # cc_check $_inc_extra -I$_dvdnavdir $_legal_dvdnavdir -ldvdnav $_used_css $_ld_dl $_ld_pthread && _dvdnav=yes
4635 # if test "$_dvdnav" = yes ; then
4637 # _def_dvdnav='#define USE_DVDNAV 1'
4638 # if test -n "$_legal_dvdnavdir" ; then
4639 # _ld_css="$_ld_css $_legal_dvdnavdir -ldvdnav"
4640 # elif test -n "$_dvdnavconfig" ; then
4641 # _ld_css="$_ld_css `$_dvdnavconfig --libs`"
4643 # _ld_css="$_ld_css -ldvdnav"
4645 # if test -n "$_dvdnavconfig" ; then
4646 # _dvdnav_version=`$_dvdnavconfig --version | sed "s/\.//g"`
4647 # _def_dvdnav_version="#define DVDNAVVERSION $_dvdnav_version"
4649 # if test -n "$_dvdnavdir" ; then
4650 # _inc_extra="$_inc_extra -I$_dvdnavdir"
4652 # _inputmodules="dvdnav $_inputmodules"
4655 # _def_dvdnav='#undef USE_DVDNAV'
4656 # _noinputmodules="dvdnav $_noinputmodules"
4660 echocheck
"cdparanoia"
4661 if test "$_cdparanoia" = auto
; then
4663 #include <cdda_interface.h>
4664 #include <cdda_paranoia.h>
4665 // This need a better test. How ?
4666 int main(void) { return 1; }
4669 if cc_check
$_inc_cdparanoia $_ld_cdparanoia -lcdda_interface -lcdda_paranoia $_ld_lm ; then
4672 for I
in /usr
/include
/cdda
/usr
/local
/include
/cdda
; do
4673 if cc_check
-I$I $_ld_cdparanoia -lcdda_interface -lcdda_paranoia $_ld_lm ; then
4674 _cdparanoia
=yes; _inc_cdparanoia
="-I$I"; break
4679 if test "$_cdparanoia" = yes ; then
4680 _def_cdparanoia
='#define HAVE_CDDA'
4681 _inputmodules
="cdda $_inputmodules"
4682 _ld_cdparanoia
="$_ld_cdparanoia -lcdda_interface -lcdda_paranoia"
4683 openbsd
&& _ld_cdparanoia
="$_ld_cdparanoia -lutil"
4685 _def_cdparanoia
='#undef HAVE_CDDA'
4686 _noinputmodules
="cdda $_noinputmodules"
4688 echores
"$_cdparanoia"
4691 echocheck
"freetype >= 2.0.9"
4693 # freetype depends on iconv
4694 if test "$_iconv" = no
; then
4695 _freetype
="no (iconv support needed)"
4698 if test "$_freetype" = auto
; then
4699 if ( $_freetypeconfig --version ) >/dev
/null
2>&1 ; then
4702 #include <ft2build.h>
4703 #include FT_FREETYPE_H
4704 #if ((FREETYPE_MAJOR < 2) || ((FREETYPE_MINOR == 0) && (FREETYPE_PATCH < 9)))
4705 #error "Need FreeType 2.0.9 or newer"
4710 FT_Int major=-1,minor=-1,patch=-1;
4711 int err=FT_Init_FreeType(&library);
4713 printf("Couldn't initialize freetype2 lib, err code: %d\n",err);
4716 FT_Library_Version(library,&major,&minor,&patch); // in v2.1.0+ only :(((
4717 printf("freetype2 header version: %d.%d.%d library version: %d.%d.%d\n",
4718 FREETYPE_MAJOR,FREETYPE_MINOR,FREETYPE_PATCH,
4719 (int)major,(int)minor,(int)patch );
4720 if(major!=FREETYPE_MAJOR || minor!=FREETYPE_MINOR){
4721 printf("Library and header version mismatch! Fix it in your distribution!\n");
4728 cc_check
`$_freetypeconfig --cflags` `$_freetypeconfig --libs` && ( $TMPO >> "$TMPLOG" ) && _freetype
=yes
4733 if test "$_freetype" = yes ; then
4734 _def_freetype
='#define HAVE_FREETYPE'
4735 _inc_freetype
=`$_freetypeconfig --cflags`
4736 _ld_freetype
=`$_freetypeconfig --libs`
4738 _def_freetype
='#undef HAVE_FREETYPE'
4740 echores
"$_freetype"
4742 if test "$_freetype" = no
; then
4745 echocheck
"fontconfig"
4746 if test "$_fontconfig" = auto
; then
4747 if ( pkg-config
--modversion fontconfig
) > /dev
/null
2>&1 ; then
4750 #include <fontconfig/fontconfig.h>
4755 printf("Couldn't initialize fontconfig lib\n");
4763 cc_check
`pkg-config --cflags --libs fontconfig` && ( $TMPO >> "$TMPLOG" ) && _fontconfig
=yes
4768 if test "$_fontconfig" = yes ; then
4769 _def_fontconfig
='#define HAVE_FONTCONFIG'
4770 _inc_fontconfig
=`pkg-config --cflags fontconfig`
4771 _ld_fontconfig
=`pkg-config --libs fontconfig`
4773 _def_fontconfig
='#undef HAVE_FONTCONFIG'
4775 echores
"$_fontconfig"
4777 echocheck
"fribidi with charsets"
4778 if test "$_fribidi" = yes ; then
4779 if ( $_fribidiconfig --version ) >/dev
/null
2>&1 ; then
4782 #include <fribidi/fribidi.h>
4785 if(fribidi_parse_charset("UTF-8") != FRIBIDI_CHARSET_UTF8) {
4786 printf("Fribidi headers are not consistents with the library!\n");
4793 cc_check
`$_fribidiconfig --cflags` `$_fribidiconfig --libs` && ( $TMPO >> "$TMPLOG" ) && _fribidi
=yes
4798 if test "$_fribidi" = yes ; then
4799 _def_fribidi
='#define USE_FRIBIDI'
4800 _inc_fribidi
=`$_fribidiconfig --cflags`
4801 _ld_fribidi
=`$_fribidiconfig --libs`
4803 _def_fribidi
='#undef USE_FRIBIDI'
4809 if test "$_enca" = auto
; then
4816 langs = enca_get_languages(&langcnt);
4821 cc_check
-lenca && _enca
=yes
4822 if test "$_enca" = yes ; then
4823 _def_enca
='#define HAVE_ENCA 1'
4826 _def_enca
='#undef HAVE_ENCA'
4835 int main(void) { (void) inflate(0, Z_NO_FLUSH); return 0; }
4838 cc_check
-lz && _zlib
=yes
4839 if test "$_zlib" = yes ; then
4840 _def_zlib
='#define HAVE_ZLIB 1'
4843 _def_zlib
='#undef HAVE_ZLIB'
4850 if test "$_rtc" = auto
; then
4852 #include <sys/ioctl.h>
4853 #include <linux/rtc.h>
4854 int main(void) { return RTC_IRQP_READ; }
4857 cc_check
&& _rtc
=yes
4862 echores
"no (Linux specific feature)"
4864 if test "$_rtc" = yes ; then
4865 _def_rtc
='#define HAVE_RTC 1'
4867 _def_rtc
='#undef HAVE_RTC'
4871 echocheck
"external liblzo support"
4872 if test "$_liblzo" = auto
; then
4876 int main(void) { lzo_init();return 0; }
4878 cc_check
-llzo && _liblzo
=yes
4880 if test "$_liblzo" = yes ; then
4881 _def_liblzo
='#define USE_LIBLZO 1'
4883 _codecmodules
="liblzo $_codecmodules"
4885 _def_liblzo
='#undef USE_LIBLZO'
4886 _nocodecmodules
="liblzo $_nocodecmodules"
4891 echocheck
"mad support"
4892 if test "$_mad" = auto
; then
4896 int main(void) { return 0; }
4898 cc_check
$_madlibdir -lmad && _mad
=yes
4900 if test "$_mad" = yes ; then
4901 _def_mad
='#define USE_LIBMAD 1'
4903 _codecmodules
="libmad $_codecmodules"
4905 _def_mad
='#undef USE_LIBMAD'
4906 _nocodecmodules
="libmad $_nocodecmodules"
4911 if test "$_toolame" = auto
; then
4913 #include <toolame.h>
4914 int main(void) { toolame_init(); return 0; }
4917 _toolame_extraflags
=""
4918 _toolame_lib
="-ltoolame"
4919 if test -n "$_toolamedir"; then
4920 _toolame_extraflags
="-I$_toolamedir -L$_toolamedir"
4922 cc_check
$_toolame_extraflags $_toolame_lib $_ld_lm && _toolame
=yes
4924 if test "$_toolame" = yes ; then
4925 _def_toolame
='#define HAVE_TOOLAME 1'
4926 _codecmodules
="$_codecmodules toolame"
4928 _def_toolame
='#undef HAVE_TOOLAME'
4930 _nocodecmodules
="toolame $_nocodecmodules"
4932 if test -z "$_toolamedir" ; then
4935 echores
"$_toolame (using $_toolamedir)"
4938 echocheck
"OggVorbis support"
4939 if test "$_vorbis" = auto
; then
4942 #include <vorbis/codec.h>
4943 int main(void) { vorbis_packet_blocksize(0,0); return 0; }
4945 cc_check
-lvorbis -logg $_ld_lm && _vorbis
=yes
4947 if test "$_vorbis" = yes ; then
4948 _def_vorbis
='#define HAVE_OGGVORBIS 1'
4949 if test "$_tremor" = yes ; then
4950 _def_tremor
='#define TREMOR 1'
4951 _ld_vorbis
='-lvorbisidec'
4953 _def_tremor
='#undef TREMOR'
4954 _ld_vorbis
='-lvorbis -logg'
4956 _codecmodules
="libvorbis $_codecmodules"
4958 _def_vorbis
='#undef HAVE_OGGVORBIS'
4959 _def_tremor
='#undef TREMOR'
4960 _nocodecmodules
="libvorbis $_nocodecmodules"
4962 if test "$_vorbis" = yes -a "$_tremor" = yes ; then
4963 echores
"$_vorbis (Tremor)"
4968 echocheck
"OggTheora support (only the CVS version!)"
4969 if test "$_theora" = auto
; then
4972 #include <theora/theora.h>
4976 /* theora is in flux, make sure that all interface routines and
4977 * datatypes exist and work the way we expect it, so we don't break
4987 theora_info_init (&inf);
4988 theora_comment_init (&tc);
4992 /* we don't want to execute this kind of nonsense; just for making sure
4993 * that compilation works... */
4994 memset(&op, 0, sizeof(op));
4995 r = theora_decode_header (&inf, &tc, &op);
4996 r = theora_decode_init (&st, &inf);
4997 t = theora_granule_time (&st, op.granulepos);
4998 r = theora_decode_packetin (&st, &op);
4999 r = theora_decode_YUVout (&st, &yuv);
5005 cc_check
-ltheora -logg $_ld_lm && _theora
=yes
5007 if test "$_theora" = yes ; then
5008 _def_theora
='#define HAVE_OGGTHEORA 1'
5009 _codecmodules
="libtheora $_codecmodules"
5010 _ld_theora
="-ltheora -logg"
5012 _def_theora
='#undef HAVE_OGGTHEORA'
5013 _nocodecmodules
="libtheora $_nocodecmodules"
5017 echocheck
"mp3lib support"
5018 if test "$_mp3lib" = yes ; then
5019 _def_mp3lib
='#define USE_MP3LIB 1'
5020 _codecmodules
="mp3lib $_codecmodules"
5022 _def_mp3lib
='#undef USE_MP3LIB'
5023 _nocodecmodules
="mp3lib $_nocodecmodules"
5027 echocheck
"liba52 support"
5028 if test "$_liba52" = yes ; then
5029 _def_liba52
='#define USE_LIBA52 1'
5030 _codecmodules
="liba52 $_codecmodules"
5032 _def_liba52
='#undef USE_LIBA52'
5033 _nocodecmodules
="liba52 $_nocodecmodules"
5037 echocheck
"libdts support"
5038 if test "$_libdts" = auto
; then
5043 int main(void) { dts_init (0); return 0; }
5045 cc_check
$_inc_libdts $_ld_libdts -ldts $_ld_lm && _libdts
=yes
5047 if test "$_libdts" = yes ; then
5048 _def_libdts
='#define CONFIG_DTS 1'
5049 _ld_libdts
="$_ld_libdts -ldts $_ld_lm"
5050 _codecmodules
="libdts $_codecmodules"
5052 _def_libdts
='#undef CONFIG_DTS'
5053 _nocodecmodules
="libdts $_nocodecmodules"
5057 echocheck
"libmpeg2 support"
5058 if test "$_libmpeg2" = yes ; then
5059 _def_libmpeg2
='#define USE_LIBMPEG2 1'
5060 _codecmodules
="libmpeg2 $_codecmodules"
5062 _def_libmpeg2
='#undef USE_LIBMPEG2'
5063 _nocodecmodules
="libmpeg2 $_nocodecmodules"
5065 echores
"$_libmpeg2"
5068 echocheck
"Matroska support"
5069 if test "$_matroska_internal" = yes ; then
5070 _inputmodules
="matroska $_inputmodules"
5071 _def_matroska
='#define HAVE_MATROSKA 1'
5073 _noinputmodules
="matroska $_noinputmodules"
5074 _def_matroska
='#undef HAVE_MATROSKA'
5076 echores
"$_matroska_internal"
5079 echocheck
"internal FAAD2 (AAC) support"
5080 _inc_faad
="-I`pwd`/libfaad2"
5081 if test "$_faad_internal" = auto
; then
5082 # the faad check needs a config.h file
5083 if not
test -f "config.h" ; then
5086 # internal faad: check if our dear gcc is able to compile it...
5087 cp "`pwd`/libfaad2/cfft.c" $TMPC
5088 if ( cc_check
-c -O4 $_march $_mcpu $_pipe -ffast-math -fomit-frame-pointer $_inc_faad ); then
5091 _faad_internal
="no (broken gcc)"
5094 if test "$_faad_internal" = yes ; then
5095 _def_faad_internal
="#define USE_INTERNAL_FAAD 1"
5098 _def_faad_internal
="#undef USE_INTERNAL_FAAD"
5101 echores
"$_faad_internal"
5104 echocheck
"external FAAD2 (AAC) support"
5105 if test "$_faad_external" != no
; then
5107 _inc_faad
="$_inc_extra"
5108 # external faad: check if it's really faad2 :)
5109 if test "$_faad_external" = auto
; then
5113 int main(void) { faacDecHandle testhand; faacDecFrameInfo testinfo; testhand = faacDecOpen(); return 0; }
5115 cc_check
$_inc_faad $_ld_faad $_ld_lm && _faad_external
=yes
5117 echores
"$_faad_external"
5122 if test "$_faad_internal" = yes -o "$_faad_external" = yes; then
5123 echocheck
"FAAD2 version"
5126 #ifndef FAAD_MIN_STREAMSIZE
5127 #error Too old version
5130 #ifdef FAAD2_VERSION
5131 printf("%s\n",FAAD2_VERSION);
5138 if cc_check
-I- $_inc_faad $_ld_faad $_ld_lm && "$TMPO" >> "$TMPLOG" ; then
5139 _faad_version
=`"$TMPO"`
5140 _faad_tempversion
=`"$TMPO" | sed -e 's/^\([0-9]\{1,\}\)\.\([0-9]\{1,\}\).*/\1\2/'`
5141 _def_faad_version
="#define FAADVERSION $_faad_tempversion"
5142 echores
"$_faad_version"
5146 echores
"failed to get version"
5150 if test "$_faad_external" = yes; then
5151 _def_faad
='#define HAVE_FAAD 1'
5152 _codecmodules
="faad2(external) $_codecmodules"
5153 elif test "$_faad_internal" = yes; then
5154 _def_faad
='#define HAVE_FAAD 1'
5155 _codecmodules
="faad2(internal) $_codecmodules"
5157 _def_faad
='#undef HAVE_FAAD'
5158 _nocodecmodules
="faad2 $_nocodecmodules"
5162 echocheck
"MacOS X SHLB (shared lib) support"
5163 if test "$_macshlb" = auto
; then
5164 if test "$_macosx" = yes ; then
5171 if test "$_macshlb" = yes ; then
5172 _def_macshlb
='#define USE_MACSHLB 1'
5174 _def_macshlb
='#undef USE_MACSHLB'
5177 if test "$_win32" = auto
; then
5181 _win32
=no
# x86 arch only
5185 if test "$_win32" != no
; then
5186 if test -z "$_win32libdir" ; then
5187 for I
in "$_libdir/codecs" "$_libdir/win32" /usr
/local
/lib
/win32
/usr
/lib
/win32
; do
5188 if test -d "$I" ; then
5196 echocheck
"Win32 codec DLL support"
5197 if test "$_win32" = auto
; then
5199 test -n "$_win32libdir" && _win32
=yes
5201 if test "$_win32" = yes ; then
5202 _def_win32
='#define USE_WIN32DLL 1'
5203 echores
"yes (using $_win32libdir)"
5205 _def_win32
='#undef USE_WIN32DLL'
5206 _nocodecmodules
="win32 $_nocodecmodules"
5211 if test "$_win32" != no
; then
5212 _def_win32_loader
='#undef WIN32_LOADER'
5213 echocheck
"Win32 loader support"
5214 _ld_win32
='loader/libloader.a'
5215 _dep_win32
='loader/libloader.a'
5216 _codecmodules
="win32 $_codecmodules"
5218 x86
&& _ld_win32
="$_ld_win32 -li386"
5221 _def_win32_loader
='#define WIN32_LOADER 1'
5224 _ld_win32libs
="$_ld_win32libs -ladvapi32 -lole32"
5225 echores
"no (using native windows)"
5229 echocheck
"DirectShow"
5232 if test "$_dshow" != no
; then
5234 # check if compiler supports C++ and C++-libs are installed correctly
5235 cat > "$TMPCPP" << EOF
5239 public: int myreturn(void);
5241 int myclass::myreturn(void) { ret = 0; return ret ; }
5242 int main(void) { myclass myobject; return myobject.myreturn(); }
5244 echo "------------------------------------------------" >> "$TMPLOG"
5245 cat "$TMPCPP" >> "$TMPLOG"
5246 if ( $_cc "$TMPCPP" -o "$TMPO" && "$TMPO" ) >> "$TMPLOG" 2>&1 ; then
5248 echores
"yes (C++ is ok)"
5253 Your C++ runtime environment is broken.
5255 Hints: Does $_cc support C++? Do you have you a C++ compiler installed?
5256 Are the C++ libraries correctly installed?
5257 Check for libstdc++ and in (/etc/)ld.so.conf.
5259 If you do not need DirectShow support, you can also use:
5260 ./configure --disable-dshow <your-normal-configure-options>
5261 to disable building the C++ based DirectShow code.
5264 die
"$_cc's C++ is broken"
5272 if test "$_dshow" = yes ; then
5273 _def_dshow
='#define USE_DIRECTSHOW 1'
5274 _ld_dshow
='loader/dshow/libDS_Filter.a loader/dmo/libDMO_Filter.a'
5275 _dep_dshow
='loader/dshow/libDS_Filter.a loader/dmo/libDMO_Filter.a'
5276 _codecmodules
="dshow/dmo $_codecmodules"
5278 _def_dshow
='#undef USE_DIRECTSHOW'
5279 _nocodecmodules
="dshow/dmo $_nocodecmodules"
5283 echocheck
"XAnim DLL"
5284 if test "$_xanim" = auto
; then
5286 if test "$_dl" = yes ; then
5287 if test -z "$_xanimlibdir" ; then
5288 for I
in "$_libdir/codecs" /usr
/local
/lib
/xanim
/mods
/usr
/lib
/xanim
/mods
/usr
/lib
/xanim
$XANIM_MOD_DIR ; do
5289 if test -d "$I" ; then
5295 test "$_xanimlibdir" && _xanim
=yes
5296 if test "$_xanim" = yes ; then
5297 echores
"yes (using $_xanimlibdir)"
5299 echores
"no (no suitable directory found - see DOCS/HTML/$_doc_lang/codecs.html)"
5302 echores
"no (dynamic loader support needed)"
5305 echores
"$_xanim (using $_xanimlibdir)"
5307 if test "$_xanim" = yes ; then
5308 _def_xanim
='#define USE_XANIM 1'
5309 _def_xanim_path
="#define XACODEC_PATH \"$_xanimlibdir\""
5310 _codecmodules
="xanim $_codecmodules"
5312 _def_xanim
='#undef USE_XANIM'
5313 _def_xanim_path
='#undef XACODEC_PATH'
5314 _nocodecmodules
="xanim $_nocodecmodules"
5317 echocheck
"RealPlayer DLL"
5318 if test "$_real" = auto
; then
5320 if test "$_dl" = yes ||
test "$_win32" = yes ||
test "$_macshlb" = yes ; then
5321 # if test "$_dl" = yes ; then
5322 if linux || freebsd || netbsd || win32 || darwin
; then
5325 echores
"no (tested only on Linux/FreeBSD/NetBSD/Cygwin/MinGW/Darwin)"
5327 if test "$_real" = yes ; then
5328 if test -z "$_reallibdir" ; then
5329 for I
in "$_libdir/codecs" "$_libdir/real" /usr
/lib
/real \
5330 /usr
/lib
/RealPlayer
{9,8,}/Codecs
/usr
/local
/RealPlayer
{9,8,}/Codecs \
5331 /usr
/local
/lib
/RealPlayer
{9,8,}/Codecs
/opt
/RealPlayer
{9,8,}/{Real
/,}Codecs \
5332 {~
,}/Applications
/RealOne\ Player.app
/Contents
/MacOS
/Library
/Codecs \
5334 if test -d "$I" ; then
5340 test "$_reallibdir" || _real
=no
5341 if test "$_real" = yes ; then
5342 echores
"yes (using $_reallibdir)"
5344 echores
"no (no suitable directory found - see DOCS/HTML/$_doc_lang/codecs.html)"
5348 echores
"no (dynamic loader support needed)"
5351 echores
"$_real (using $_reallibdir)"
5353 if test "$_real" = yes ; then
5354 _def_real
='#define USE_REALCODECS 1'
5355 _def_real_path
="#define REALCODEC_PATH \"$_reallibdir\""
5356 _codecmodules
="real $_codecmodules"
5358 _def_real
='#undef USE_REALCODECS'
5359 _def_real_path
="#undef REALCODEC_PATH"
5360 _nocodecmodules
="real $_nocodecmodules"
5364 if test -z "$_livelibdir" ; then
5365 for I
in $_libdir/live
/usr
/lib
/live
/usr
/local
/live
/usr
/local
/lib
/live
; do
5366 if test -d "$I" ; then
5373 echocheck
"LIVE.COM Streaming Media libraries"
5374 if test "$_live" = auto
&& test "$_network" = yes ; then
5378 #include <liveMedia.hh>
5379 #if (LIVEMEDIA_LIBRARY_VERSION_INT < 1090195200)
5380 #error Please upgrade to version 2004.07.19 or later of the "LIVE.COM Streaming Media" libraries - available from <www.live.com/liveMedia/>
5384 if cc_check
-I$_livelibdir/liveMedia
/include
/ -I$_livelibdir/UsageEnvironment
/include
-I$_livelibdir/groupsock
/include
; then
5391 if test "$_live" = yes && test "$_network" = yes ; then
5392 echores
"yes (using $_livelibdir)"
5393 _def_live
='#define STREAMING_LIVE_DOT_COM 1'
5394 _live_libs_def
="# LIVE.COM Streaming Media libraries:
5395 LIVE_LIB_DIR = $_livelibdir
5396 LIVE_LIBS = \$(LIVE_LIB_DIR)/liveMedia/libliveMedia.a
5397 LIVE_LIBS += \$(LIVE_LIB_DIR)/groupsock/libgroupsock.a
5398 LIVE_LIBS += \$(LIVE_LIB_DIR)/UsageEnvironment/libUsageEnvironment.a
5399 LIVE_LIBS += \$(LIVE_LIB_DIR)/BasicUsageEnvironment/libBasicUsageEnvironment.a
5400 LIVE_LIBS += -lstdc++"
5401 _ld_live
='$(LIVE_LIBS)'
5402 _inputmodules
="live.com $_inputmodules"
5405 _def_live
='#undef STREAMING_LIVE_DOT_COM'
5406 _noinputmodules
="live.com $_noinputmodules"
5410 echocheck
"FFmpeg libavcodec (static)"
5411 if test "$_libavcodec" = auto
; then
5412 # Note: static linking is preferred to dynamic linking
5414 if test -d libavcodec
&& test -f libavcodec
/utils.c
; then
5415 if grep avcodec_find_encoder_by_name libavcodec
/utils.c
> /dev
/null
2>&1 ; then
5419 echores
"no (old ffmpeg version, use CVS !)"
5422 echores
"no (see DOCS/HTML/$_doc_lang/codecs.html)"
5425 echores
"$_libavcodec"
5428 echocheck
"FFmpeg libavformat (static)"
5429 if test "$_libavformat" = auto
; then
5430 # Note: static linking is preferred to dynamic linking
5432 if test -d libavformat
&& test -f libavformat
/utils.c
; then
5439 echores
"$_libavformat"
5442 _def_haveffpostprocess
='no'
5443 if test -d libavcodec
&& test -f libavcodec
/libpostproc
/postprocess.h
; then
5444 _def_haveffpostprocess
='yes'
5447 if test "$_libavcodec" != yes ; then
5448 echocheck
"FFmpeg libavcodec (dynamic)"
5449 if test "$_libavcodecso" = auto
; then
5451 # FIXME : check for avcodec_find_encoder_by_name() for mencoder
5453 #define FF_POSTPROCESS 1
5454 #include <ffmpeg/avcodec.h>
5456 avcodec_find_encoder_by_name("");
5460 if cc_check
-lavcodec $_ld_lm ; then
5462 echores
"yes (using libavcodec.so)"
5464 echores
"no (libavcodec.so is broken/obsolete)"
5467 echores
"$_libavcodecso"
5471 _def_libavcodec
='#undef USE_LIBAVCODEC'
5472 _def_libavcodecso
='#undef USE_LIBAVCODEC_SO'
5473 _def_ffpostprocess
='#undef FF_POSTPROCESS'
5474 if test "$_libavcodec" = yes ; then
5475 _def_libavcodec
='#define USE_LIBAVCODEC 1'
5476 _ld_libavcodec
='libavcodec/libavcodec.a'
5477 _dep_libavcodec
='libavcodec/libavcodec.a'
5478 _def_ffpostprocess
='#define FF_POSTPROCESS 1'
5479 _codecmodules
="libavcodec $_codecmodules"
5480 elif test "$_libavcodecso" = yes ; then
5481 _def_libavcodec
='#define USE_LIBAVCODEC 1'
5482 _def_libavcodecso
='#define USE_LIBAVCODEC_SO 1'
5483 _ld_libavcodec
='-lavcodec'
5484 _codecmodules
="libavcodec.so $_codecmodules"
5486 _nocodecmodules
="libavcodec $_nocodecmodules"
5489 _def_libavformat
='#undef USE_LIBAVFORMAT'
5490 _def_libavformat_win32
='#undef CONFIG_WIN32'
5491 if test "$_libavformat" = yes ; then
5492 _def_libavformat
='#define USE_LIBAVFORMAT 1'
5493 _ld_libavformat
='libavformat/libavformat.a'
5494 _dep_libavformat
='libavformat/libavformat.a'
5496 _def_libavformat_win32
='#define CONFIG_WIN32 1'
5500 echocheck
"libdv-0.9.5+"
5501 if test "$_libdv" = auto
; then
5504 #include <libdv/dv.h>
5505 int main(void) { dv_encoder_t* enc=dv_encoder_new(1,1,1); return 0; }
5507 cc_check
-ldv $_ld_lm && _libdv
=yes
5509 if test "$_libdv" = yes ; then
5510 _def_libdv
='#define HAVE_LIBDV095 1'
5512 _codecmodules
="libdv $_codecmodules"
5514 _def_libdv
='#undef HAVE_LIBDV095'
5515 _nocodecmodules
="libdv $_nocodecmodules"
5520 if test "$_zr" = auto
; then
5521 #36067's seem to identify themselves as 36057PQC's, so the line
5522 #below should work for 36067's and 36057's.
5523 if grep -e "Multimedia video controller: Zoran Corporation ZR36057" /proc
/pci
> /dev
/null
2>&1; then
5529 if test "$_zr" = yes ; then
5530 if test "$_libavcodec" = yes ; then
5531 _def_zr
='#define HAVE_ZR 1'
5532 _vosrc
="$_vosrc vo_zr2.c vo_zr.c jpeg_enc.c"
5533 _vomodules
="zr zr2 $_vomodules"
5536 echores
"libavcodec (static) is required by zr, sorry"
5537 _novomodules
="zr $_novomodules"
5538 _def_zr
='#undef HAVE_ZR'
5541 _def_zr
='#undef HAVE_ZR'
5542 _novomodules
="zr zr2 $_novomodules"
5547 if test "$_bl" = yes ; then
5548 _def_bl
='#define HAVE_BL 1'
5549 _vosrc
="$_vosrc vo_bl.c"
5550 _vomodules
="bl $_vomodules"
5552 _def_bl
='#undef HAVE_BL'
5553 _novomodules
="bl $_novomodules"
5560 int main(void) { xvid_init(0, 0, 0, 0); return 0; }
5562 _ld_xvid
="$_ld_xvid -lxvidcore $_ld_lm"
5563 if test "$_xvid" != no
&& cc_check
$_inc_xvid $_ld_xvid ; then
5565 _def_xvid3
='#define HAVE_XVID3 1'
5566 _def_xvid4
='#undef HAVE_XVID4'
5567 _codecmodules
="xvid $_codecmodules"
5571 int main(void) { xvid_global(0, 0, 0, 0); return 0; }
5573 if test "$_xvid" != no
&& cc_check
$_inc_xvid $_ld_xvid ; then
5575 _def_xvid3
='#undef HAVE_XVID3'
5576 _def_xvid4
='#define HAVE_XVID4 1'
5577 _codecmodules
="xvid $_codecmodules"
5581 _def_xvid3
='#undef HAVE_XVID3'
5582 _def_xvid4
='#undef HAVE_XVID4'
5583 _nocodecmodules
="xvid $_nocodecmodules"
5589 _def_decore_xvid
='#undef DECORE_XVID'
5590 _def_encore_xvid
='#undef ENCORE_XVID'
5591 if test "$_xvid" = yes ; then
5592 echocheck
"DivX4 compatibility in XviD"
5595 int main(void) { (void) decore(0, 0, 0, 0); return 0; }
5597 cc_check
$_ld_lm "$_ld_xvid" && _xvidcompat
=yes
5598 echores
"$_xvidcompat"
5606 int main(void) { x264_encoder_open((void*)0); return 0; }
5608 _ld_x264
="$_ld_x264 -lx264 $_ld_lm"
5609 if test "$_x264" != no
&& cc_check
$_inc_x264 $_ld_x264 ; then
5611 _def_x264
='#define HAVE_X264 1'
5612 _codecmodules
="x264 $_codecmodules"
5616 _def_x264
='#undef HAVE_X264'
5617 _nocodecmodules
="x264 $_nocodecmodules"
5621 echocheck
"DivX4linux/DivX5linux/OpenDivX decore"
5622 # DivX5: DEC_OPT_MEMORY_REQS - DivX4: DEC_OPT_FRAME_311
5625 int main(void) { (void) decore(0, 0, 0, 0); return DEC_OPT_FRAME_311; }
5627 if test "$_divx4linux" != no
&& cc_check
$_ld_lm -ldivxdecore ; then
5629 _ld_decore
='-ldivxdecore'
5630 _def_decore
='#define NEW_DECORE 1'
5631 _def_divx
='#define USE_DIVX'
5632 _def_divx5
='#undef DECORE_DIVX5'
5633 _def_odivx_postprocess
='#undef HAVE_ODIVX_POSTPROCESS'
5634 _codecmodules
="divx4linux $_codecmodules"
5635 echores
"DivX4linux (with libdivxdecore.so)"
5637 # if test "$_divx4linux" != no ; then
5639 # OdivxPP disabled because of:
5640 # ld: Warning: type of symbol `dering' changed from 1 to 2 in opendivx/postprocess.o
5643 int main(void) { (void) decore(0, 0, 0, 0); return DEC_OPT_INIT; }
5645 if test "$_divx4linux" != no
&& cc_check
$_ld_lm -ldivxdecore ; then
5647 # _ld_decore='-ldivxdecore opendivx/postprocess.o'
5648 _ld_decore
='-ldivxdecore'
5649 _def_decore
='#define NEW_DECORE 1'
5650 _def_divx
='#define USE_DIVX'
5651 _def_divx5
='#define DECORE_DIVX5 1'
5652 # _def_odivx_postprocess='#define HAVE_ODIVX_POSTPROCESS 1'
5653 _def_odivx_postprocess
='#undef HAVE_ODIVX_POSTPROCESS'
5654 _codecmodules
="divx5linux $_codecmodules"
5655 _nocodecmodules
="divx4linux $_nocodecmodules"
5656 echores
"DivX5linux (with libdivxdecore.so)"
5657 elif test "$_opendivx" != no
; then
5659 _ld_decore
='opendivx/libdecore.a'
5660 _def_decore
='#undef NEW_DECORE'
5661 _def_divx
='#define USE_DIVX'
5662 _def_divx5
='#undef DECORE_DIVX5'
5663 _def_odivx_postprocess
='#define HAVE_ODIVX_POSTPROCESS 1'
5664 _codecmodules
="opendivx $_codecmodules"
5665 _nocodecmodules
="divx5linux $_nocodecmodules"
5667 elif test "$_xvidcompat" = yes ; then
5670 _def_decore
='#define NEW_DECORE 1'
5671 _def_divx
='#define USE_DIVX 1'
5672 _def_divx5
='#undef DECORE_DIVX5'
5673 _def_decore_xvid
='#define DECORE_XVID 1'
5674 _def_odivx_postprocess
='#undef HAVE_ODIVX_POSTPROCESS'
5675 _nocodecmodules
="opendivx divx5linux divx4linux $_nocodecmodules"
5676 echores
"XviD compat."
5680 _def_decore
='#undef NEW_DECORE'
5681 _def_divx
='#undef USE_DIVX'
5682 _def_divx5
='#undef DECORE_DIVX5'
5683 _def_odivx_postprocess
='#undef HAVE_ODIVX_POSTPROCESS'
5684 _nocodecmodules
="opendivx $_nocodecmodules"
5690 # mencoder requires (optional) those libs: libmp3lame and divx4linux encore
5691 if test "$_mencoder" != no
; then
5693 echocheck
"libmp3lame (for mencoder)"
5696 #include <lame/lame.h>
5697 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; }
5699 # Note: libmp3lame usually depends on vorbis
5700 cc_check
-lmp3lame $_ld_vorbis $_ld_lm && ( "$TMPO" >> "$TMPLOG" 2>&1 ) && _mp3lame
=yes
5701 if test "$_mp3lame" = yes ; then
5702 _def_mp3lame
="#define HAVE_MP3LAME `$TMPO`"
5703 _def_cfg_mp3lame
="#define CONFIG_MP3LAME `$TMPO`"
5704 _ld_mp3lame
="-lmp3lame $_ld_vorbis"
5706 _def_mp3lame
='#undef HAVE_MP3LAME'
5707 _def_cfg_mp3lame
='#undef CONFIG_MP3LAME'
5712 echocheck
"DivX4linux encore (for mencoder)"
5714 #include <encore2.h>
5715 int main(void) { (void) encore(0, 0, 0, 0); return 0; }
5717 if test "$_divx4linux" != no
&& cc_check
-ldivxencore $_ld_lm ; then
5718 _def_encore
='#define HAVE_DIVX4ENCORE 1'
5719 _ld_encore
='-ldivxencore'
5720 echores
"DivX4linux (with libdivxencore.so)"
5721 elif test "$_xvidcompat" = yes ; then
5722 _def_encore
='#define HAVE_DIVX4ENCORE 1'
5724 _def_encore_xvid
='#define ENCORE_XVID 1'
5725 echores
"XviD compat."
5727 _def_encore
='#undef HAVE_DIVX4ENCORE'
5733 echocheck
"mencoder"
5734 _mencoder_flag
='#undef HAVE_MENCODER'
5735 if test "$_mencoder" = yes ; then
5736 _mencoder_flag
='#define HAVE_MENCODER'
5738 echores
"$_mencoder"
5740 echocheck
"fastmemcpy"
5741 # fastmemcpy check is done earlier with tests of CPU & binutils features
5742 if test "$_fastmemcpy" = yes ; then
5743 _def_fastmemcpy
='#define USE_FASTMEMCPY 1'
5745 _def_fastmemcpy
='#undef USE_FASTMEMCPY'
5747 echores
"$_fastmemcpy"
5749 echocheck
"UniquE RAR File Library"
5750 if test "$_unrarlib" = yes ; then
5751 _def_unrarlib
='#define USE_UNRARLIB 1'
5753 _def_unrarlib
='#undef USE_UNRARLIB'
5755 echores
"$_unrarlib"
5757 echocheck
"TV interface"
5758 if test "$_tv" = yes ; then
5759 _def_tv
='#define USE_TV 1'
5760 _inputmodules
="tv $_inputmodules"
5762 _noinputmodules
="tv $_noinputmodules"
5763 _def_tv
='#undef USE_TV'
5767 echocheck
"EDL support"
5768 if test "$_edl" = yes ; then
5769 _def_edl
='#define USE_EDL'
5770 _inputmodules
="edl $_inputmodules"
5772 _noinputmodules
="edl $_noinputmodules"
5773 _def_edl
='#undef USE_EDL'
5777 echocheck
"*BSD BrookTree 848 TV interface"
5778 if test "$_tv_bsdbt848" = auto
; then
5780 if test "$_tv" = yes ; then
5782 #include <sys/types.h>
5783 #if defined(__NetBSD__)
5784 #include <dev/ic/bt8xx.h>
5786 #include <machine/ioctl_bt848.h>
5788 int main(void) { return 0; }
5790 cc_check
&& _tv_bsdbt848
=yes
5793 if test "$_tv_bsdbt848" = yes ; then
5794 _def_tv_bsdbt848
='#define HAVE_TV_BSDBT848 1'
5795 _inputmodules
="tv-bsdbt848 $_inputmodules"
5797 _def_tv_bsdbt848
='#undef HAVE_TV_BSDBT848'
5798 _noinputmodules
="tv-bsdbt848 $_noinputmodules"
5800 echores
"$_tv_bsdbt848"
5802 echocheck
"Video 4 Linux TV interface"
5803 if test "$_tv_v4l" = auto
; then
5805 if test "$_tv" = yes && linux
; then
5806 for I
in /dev
/video
/dev
/video?
; do
5807 if test -c $I ; then
5810 #include <linux/videodev.h>
5811 int main(void) { return 0; }
5813 cc_check
&& _tv_v4l
=yes
5819 if test "$_tv_v4l" = yes ; then
5820 _def_tv_v4l
='#define HAVE_TV_V4L 1'
5821 _inputmodules
="tv-v4l $_inputmodules"
5823 _noinputmodules
="tv-v4l $_noinputmodules"
5824 _def_tv_v4l
='#undef HAVE_TV_V4L'
5829 echocheck
"Video 4 Linux 2 TV interface"
5830 if test "$_tv_v4l2" = auto
; then
5832 if test "$_tv" = yes && linux
; then
5833 for I
in /dev
/video
/dev
/video?
; do
5834 if test -c $I ; then
5841 if test "$_tv_v4l2" = yes ; then
5842 _def_tv_v4l2
='#define HAVE_TV_V4L2 1'
5843 _inputmodules
="tv-v4l2 $_inputmodules"
5845 _noinputmodules
="tv-v4l2 $_noinputmodules"
5846 _def_tv_v4l2
='#undef HAVE_TV_V4L2'
5851 echocheck
"audio select()"
5852 if test "$_select" = no
; then
5853 _def_select
='#undef HAVE_AUDIO_SELECT'
5854 elif test "$_select" = yes ; then
5855 _def_select
='#define HAVE_AUDIO_SELECT 1'
5861 # FIXME network check
5862 if test "$_network" != no
; then
5863 _def_network
='#define MPLAYER_NETWORK 1'
5864 _ld_network
="$_ld_sock"
5865 _inputmodules
="network $_inputmodules"
5867 _noinputmodules
="network $_noinputmodules"
5868 _def_network
='#undef MPLAYER_NETWORK'
5874 if (not beos
) && (test "$_ftp" != no
) ; then
5875 _def_ftp
='#define HAVE_FTP 1'
5876 _inputmodules
="ftp $_inputmodules"
5878 _noinputmodules
="ftp $_noinputmodules"
5879 _def_ftp
='#undef HAVE_FTP'
5884 echocheck
"byte order"
5885 if test "$_big_endian" = auto
; then
5887 short asci_name[] = { (('M'<<8)|'P'),(('l'<<8)|'a'),(('y'<<8)|'e'),(('r'<<8)|0)};
5889 char* s = (char*)asci_name;
5894 if test `grep -l MPlayer $TMPO` ; then
5900 echo -n "failed to autodetect byte order, defaulting to "
5903 if test "$_big_endian" = yes ; then
5904 _byte_order
='big-endian'
5905 _def_words_endian
='#define WORDS_BIGENDIAN 1'
5907 _byte_order
='little-endian'
5908 _def_words_endian
='#undef WORDS_BIGENDIAN'
5910 echores
"$_byte_order"
5912 echocheck
"shared postprocess lib"
5913 echores
"$_shared_pp"
5915 echocheck
"OSD menu"
5916 if test "$_menu" = yes ; then
5917 _def_menu
='#define HAVE_MENU 1'
5919 _def_menu
='#undef HAVE_MENU'
5923 # Check to see if they want QTX codecs enabled
5924 echocheck
"QTX codecs"
5925 if test "$_qtx" = auto
; then
5928 if test "$_qtx" = yes ; then
5929 _def_qtx
='#define USE_QTX_CODECS 1'
5930 _codecmodules
="qtx $_codecmodules"
5932 _def_qtx
='#undef USE_QTX_CODECS'
5933 _nocodecmodules
="qtx $_nocodecmodules"
5938 echocheck
"Subtitles sorting"
5939 if test "$_sortsub" = yes ; then
5940 _def_sortsub
='#define USE_SORTSUB 1'
5942 _def_sortsub
='#undef USE_SORTSUB'
5947 echocheck
"XMMS inputplugin support"
5948 if test "$_xmms" = yes ; then
5950 if ( xmms-config
--version ) >/dev
/null
2>&1 ; then
5951 if test -z "$_xmmsplugindir" ; then
5952 _xmmsplugindir
=`xmms-config --input-plugin-dir`
5954 if test -z "$_xmmslibdir" ; then
5955 _xmmslibdir
=`xmms-config --exec-prefix`/lib
5958 if test -z "$_xmmsplugindir" ; then
5959 _xmmsplugindir
=/usr
/lib
/xmms
/Input
5961 if test -z "$_xmmslibdir" ; then
5962 _xmmslibdir
=/usr
/lib
5966 _def_xmms
='#define HAVE_XMMS 1'
5968 _xmms_lib
="${_xmmslibdir}/libxmms.dylib"
5970 _xmms_lib
="${_xmmslibdir}/libxmms.so.1 -export-dynamic"
5973 _def_xmms
='#undef HAVE_XMMS'
5978 if test "$_inet6" = auto
; then
5980 #include <sys/types.h>
5981 #include <sys/socket.h>
5982 int main(void) { socket(AF_INET6, SOCK_STREAM, AF_INET6); }
5989 if test "$_inet6" = yes ; then
5990 _def_inet6
='#define HAVE_AF_INET6 1'
5992 _def_inet6
='#undef HAVE_AF_INET6'
5997 echocheck
"gethostbyname2"
5998 if test "$_gethostbyname2" = auto
; then
6000 #include <sys/types.h>
6001 #include <sys/socket.h>
6003 int main(void) { gethostbyname2("", AF_INET); }
6011 if test "$_gethostbyname2" = yes ; then
6012 _def_gethostbyname2
='#define HAVE_GETHOSTBYNAME2 1'
6014 _def_gethostbyname2
='#undef HAVE_GETHOSTBYNAME2'
6016 echores
"$_gethostbyname2"
6018 # --------------- GUI specific tests begin -------------------
6021 if test "$_gui" = yes ; then
6023 # Required libraries
6024 test "$_png" != yes && die
"PNG support required for GUI compilation, please install libpng and libpng-dev packages."
6025 test "$_x11" != yes && die
"X11 support required for GUI compilation"
6027 echocheck
"XShape extension"
6029 if test "$_x11" = yes ; then
6031 #include <X11/Xlib.h>
6032 #include <X11/Xproto.h>
6033 #include <X11/Xutil.h>
6034 #include <X11/extensions/shape.h>
6037 char *name = ":0.0";
6040 int eventbase, errorbase;
6041 if (getenv("DISPLAY"))
6042 name=getenv("DISPLAY");
6043 wsDisplay=XOpenDisplay(name);
6044 if (!XShapeQueryExtension(wsDisplay,&eventbase,&errorbase))
6046 XCloseDisplay(wsDisplay);
6050 cc_check
$_inc_x11 $_ld_x11 && _xshape
=yes
6052 if test "$_xshape" = yes ; then
6053 _def_xshape
='#define HAVE_XSHAPE 1'
6055 die
"The GUI requires the X11 extension XShape (which was not found)."
6061 echocheck
"GTK version"
6062 if test -z "$_gtkconfig" ; then
6063 if ( gtk-config
--version ) >/dev
/null
2>&1 ; then
6064 _gtkconfig
="gtk-config"
6065 elif ( gtk12-config
--version ) >/dev
/null
2>&1 ; then
6066 _gtkconfig
="gtk12-config"
6068 die
"The GUI requires GTK devel packages (which were not found)."
6071 _gtk
=`$_gtkconfig --version 2>&1`
6072 _inc_gtk
=`$_gtkconfig --cflags 2>&1`
6073 _ld_gtk
=`$_gtkconfig --libs 2>&1`
6074 echores
"$_gtk (using $_gtkconfig)"
6077 echocheck
"glib version"
6078 if test -z "$_glibconfig" ; then
6079 if ( glib-config
--version ) >/dev
/null
2>&1 ; then
6080 _glibconfig
="glib-config"
6081 elif ( glib12-config
--version ) >/dev
/null
2>&1 ; then
6082 _glibconfig
="glib12-config"
6084 die
"The GUI requires GLib devel packages (which were not found)"
6087 _glib
=`$_glibconfig --version 2>&1`
6088 _inc_glib
=`$_glibconfig --cflags 2>&1`
6089 _ld_glib
=`$_glibconfig --libs 2>&1`
6090 echores
"$_glib (using $_glibconfig)"
6092 _def_gui
='#define HAVE_NEW_GUI 1'
6093 _ld_gui
='$(GTKLIB) $(GLIBLIB)'
6095 echo "Creating Gui/config.mak"
6096 cat > Gui
/config.mak
<< EOF
6097 # -------- Generated by configure -----------
6101 GLIBINC = $_inc_glib
6102 GLIBLIBS = $_ld_glib
6107 _def_gui
='#undef HAVE_NEW_GUI'
6109 # --------------- GUI specific tests end -------------------
6113 #############################################################################
6115 # Checking for CFLAGS
6117 if test "$_profile" != "" ||
test "$_debug" != "" ; then
6118 CFLAGS
="-W -Wall -O2 $_march $_mcpu $_debug $_profile"
6119 if test "$_cc_major" -ge "3" ; then
6120 CFLAGS
=`echo "$CFLAGS" | sed -e 's/\(-Wall\)/\1 -Wno-unused-parameter/'`
6123 elif test -z "$CFLAGS" ; then
6124 CFLAGS
="-O4 $_march $_mcpu $_pipe -ffast-math -fomit-frame-pointer"
6125 # always compile with '-g' if .developer:
6126 if test -f ".developer" ; then
6133 MPlayer compilation will use the CFLAGS set by you, but:
6135 *** *** DO NOT REPORT BUGS IF IT DOES NOT COMPILE/WORK! *** ***
6137 It is strongly recommended to let MPlayer choose the correct CFLAGS!
6138 To do so, execute 'CFLAGS= ./configure <options>'
6143 CFLAGS
="$CFLAGS -DSYS_DARWIN"
6144 if [ "$_cc_major" = 3 ] && [ "$_cc_minor" -lt 1 ]; then
6145 CFLAGS
="$CFLAGS -no-cpp-precomp"
6148 # libavcodec (from ffmpeg) requires CONFIG_DARWIN to enable AltiVec on Darwin/MacOSX
6149 test "$_altivec" = yes && CFLAGS
="$CFLAGS -DCONFIG_DARWIN"
6152 # use flag for HPUX missing setenv()
6153 CFLAGS
="$CFLAGS -DHPUX"
6157 CFLAGS
="$CFLAGS -D_REENTRANT"
6159 # FIXME bsd needs this so maybe other OS'es
6160 CFLAGS
="$CFLAGS -D_THREAD_SAFE"
6162 # 64 bit file offsets?
6163 if test "$_largefiles" = yes || freebsd
; then
6164 CFLAGS
="$CFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
6165 if test "$_dvdread" = yes ; then
6166 # dvdread support requires this (for off64_t)
6167 CFLAGS
="$CFLAGS -D_LARGEFILE64_SOURCE"
6171 echocheck
"compiler support for -fno-PIC"
6174 int main(void) { return 0; }
6176 if cc_check
-fno-PIC ; then
6177 CFLAGS
="-fno-PIC $CFLAGS"
6183 echores
"only used for x86"
6186 echocheck
"ftello()"
6187 # if we don't have ftello use the osdep/ compatibility module
6190 #include <sys/types.h>
6191 int main (void) { ftello(stdin); return 0; }
6194 cc_check
&& _ftello
=yes
6195 if test "$_ftello" = yes ; then
6196 _def_ftello
='#define HAVE_FTELLO 1'
6198 _def_ftello
='#undef HAVE_FTELLO'
6202 # Determine OS dependent libs
6204 _def_confwin32
='#define WIN32'
6205 #CFLAGS="$CFLAGS -D__CYGWIN__ -D__CYGWIN_USE_BIG_TYPES__"
6206 # stat.st_size with BIG_TYPES is broken (not set) ::atmos
6207 CFLAGS
="$CFLAGS -D__CYGWIN__"
6211 _confwin32
='TARGET_WIN32 = yes'
6213 _confwin32
='TARGET_WIN32 = no'
6216 # Dynamic linking flags
6217 # (FIXME: 'echocheck "dynamic linking"' above and modify here accordingly)
6219 bsd
&& _ld_dl_dynamic
='-rdynamic'
6220 if test "$_real" = yes ||
test "$_xanim" = yes && not win32
&& not qnx
; then
6221 _ld_dl_dynamic
='-rdynamic'
6224 _ld_arch
="$_ld_arch $_ld_pthread $_ld_dl $_ld_dl_dynamic"
6225 bsdos
&& _ld_arch
="$_ld_arch -ldvd"
6227 x86
&& _ld_arch
="$_ld_arch -li386"
6230 _def_debug
='#undef MP_DEBUG'
6231 test "$_debug" != "" && _def_debug
='#define MP_DEBUG 1'
6233 _def_linux
='#undef TARGET_LINUX'
6234 linux
&& _def_linux
='#define TARGET_LINUX 1'
6236 # TODO cleanup the VIDIX stuff here
6237 _def_vidix
='#define CONFIG_VIDIX 1'
6238 test "$_vidix" = no
&& _def_vidix
='#undef CONFIG_VIDIX'
6239 if test "$_vidix" = yes; then
6240 _vosrc
="$_vosrc vo_cvidix.c"
6241 _vomodules
="cvidix $_vomodules"
6243 _novomodules
="cvidix $_novomodules"
6245 if test "$_vidix" = yes && (win32
); then
6246 _vosrc
="$_vosrc vo_winvidix.c"
6247 _vomodules
="winvidix $_vomodules"
6249 _novomodules
="winvidix $_novomodules"
6251 if test "$_vidix" = yes && test "$_x11" = yes; then
6252 _vosrc
="$_vosrc vo_xvidix.c"
6253 _vomodules
="xvidix $_vomodules"
6255 _novomodules
="xvidix $_novomodules"
6257 echo Checking
for VIDIX ...
"$_vidix"
6259 _def_joystick
='#undef HAVE_JOYSTICK'
6260 if test "$_joystick" = yes ; then
6262 # TODO add some check
6263 _def_joystick
='#define HAVE_JOYSTICK 1'
6265 _joystick
="no (unsupported under $system_name)"
6268 echo Checking
for joystick ...
"$_joystick"
6271 if test "$_lirc" = auto
; then
6273 if test -c /dev
/lirc
-o -c /dev
/lirc
/0 ; then
6275 #include <lirc/lirc_client.h>
6276 int main(void) { return 0; }
6278 cc_check
-llirc_client && _lirc
=yes
6281 if test "$_lirc" = yes ; then
6282 _def_lirc
='#define HAVE_LIRC 1'
6283 _ld_lirc
='-llirc_client'
6285 _def_lirc
='#undef HAVE_LIRC'
6290 if test "$_lircc" = auto
; then
6293 #include <lirc/lircc.h>
6294 int main(void) { return 0; }
6296 cc_check
-llircc && _lircc
=yes
6298 if test "$_lircc" = yes ; then
6299 _def_lircc
='#define HAVE_LIRCC 1'
6302 _def_lircc
='#undef HAVE_LIRCC'
6306 #############################################################################
6307 echo "Creating config.mak"
6308 cat > config.mak
<< EOF
6309 # -------- Generated by configure -----------
6312 MAN_LANG = $MAN_LANG
6313 TARGET_OS = $system_name
6315 prefix = \$(DESTDIR)$_prefix
6316 BINDIR = \$(DESTDIR)$_bindir
6317 DATADIR = \$(DESTDIR)$_datadir
6318 MANDIR = \$(DESTDIR)$_mandir
6319 CONFDIR = \$(DESTDIR)$_confdir
6320 LIBDIR = \$(DESTDIR)$_libdir
6327 # OPTFLAGS = -O4 $_profile $_debug $_march $_mcpu $_pipe -fomit-frame-pointer -ffast-math
6328 EXTRA_INC = $_inc_extra $_inc_gtk
6329 OPTFLAGS = -I../libvo -I../../libvo $_inc_x11 $CFLAGS \$(EXTRA_INC)
6330 STRIPBINARIES = $_stripbinaries
6333 PRG_MENCODER = $_prg_mencoder
6337 MPLAYER_NETWORK = $_network
6338 STREAMING_LIVE_DOT_COM = $_live
6339 MPLAYER_NETWORK_LIB = $_ld_live $_ld_network
6342 SHARED_PP = $_shared_pp
6345 CONFIG_MP3LAME = $_mp3lame
6347 I18NLIBS = $_i18n_libs
6348 MATROSKA = $_matroska_internal
6350 OPENDIVX = $_opendivx
6354 LIBMPEG2 = $_libmpeg2
6356 UNRARLIB = $_unrarlib
6357 HAVE_FFPOSTPROCESS = $_def_haveffpostprocess
6362 EXTRA_LIB = $_ld_extra
6363 Z_LIB = $_ld_static $_ld_zlib
6365 WIN32_LIB = $_ld_win32libs
6366 STATIC_LIB = $_ld_static
6367 ENCA_LIB = $_ld_enca
6368 HAVE_PTHREADS = $_pthreads
6374 HAVE_XVMC_ACCEL = $_xvmc
6384 X_LIB = $_ld_gl $_ld_dga $_ld_xv $_ld_xvmc $_ld_vm $_ld_xinerama $_ld_x11 $_ld_sock
6386 MLIB_LIB = $_ld_mlib
6387 MLIB_INC = $_inc_mlib
6388 DXR2_INC = $_inc_dxr2
6394 SVGA_LIB = $_ld_svga
6396 CACA_INC = $_inc_caca
6397 CACA_LIB = $_ld_caca
6400 ALSA_LIB = $_ld_alsa
6402 ARTS_LIB = $_ld_arts
6403 ARTS_INC = $_inc_arts
6406 JACK_LIB = $_ld_jack
6407 JACK_INC = $_inc_jack
6408 SGIAUDIO_LIB = $_ld_sgiaudio
6410 # input/demuxer/codecs
6411 TERMCAP_LIB = $_ld_termcap
6412 LIRC_LIB = $_ld_lirc
6413 LIRCC_LIB = $_ld_lircc
6414 DVDREAD_LIB = $_ld_dvdread
6419 W32_DEP = $_dep_win32
6420 W32_LIB = $_ld_win32
6421 DS_DEP = $_dep_dshow
6423 AV_DEP = $_dep_libavcodec $_dep_libavformat
6424 AV_LIB = $_ld_libavcodec $_ld_libavformat
6425 CONFIG_LIBAVFORMAT = $_libavformat
6428 FAME_LIB = $_ld_fame
6429 MP1E_DEP = $_dep_mp1e
6430 MP1E_LIB = $_ld_mp1e
6431 ARCH_LIB = $_ld_arch $_ld_iconv
6433 XVID_INC = $_inc_xvid
6434 XVID_LIB = $_ld_xvid
6436 X264_INC = $_inc_x264
6437 X264_LIB = $_ld_x264
6438 CONFIG_DTS = $_libdts
6439 DTS_INC = $_inc_libdts
6440 DTS_LIB = $_ld_libdts
6441 DECORE_LIB = $_ld_decore $_ld_mp3lame
6442 MENCODER = $_mencoder
6443 ENCORE_LIB = $_ld_encore $_ld_mp3lame
6444 DIRECTFB_INC = $_inc_directfb
6445 DIRECTFB_LIB = $_ld_directfb
6446 CDPARANOIA_INC = $_inc_cdparanoia
6447 CDPARANOIA_LIB = $_ld_cdparanoia
6448 FREETYPE_INC = $_inc_freetype
6449 FREETYPE_LIB = $_ld_freetype
6450 FONTCONFIG_INC = $_inc_fontconfig
6451 FONTCONFIG_LIB = $_ld_fontconfig
6452 FRIBIDI_INC = $_inc_fribidi
6453 FRIBIDI_LIB = $_ld_fribidi
6454 LIBLZO_LIB= $_ld_liblzo
6456 VORBIS_LIB = $_ld_vorbis $_ld_libdv
6457 THEORA_LIB = $_ld_theora
6458 FAAD_LIB = $_ld_faad
6459 INTERNAL_FAAD = $_faad_internal
6460 SMBSUPPORT_LIB = $_ld_smb
6461 XMMS_PLUGINS = $_xmms
6462 XMMS_LIB = $_xmms_lib
6464 MACOSX_FRAMEWORKS = $_macosx_frameworks
6466 TOOLAME_EXTRAFLAGS=$_toolame_extraflags
6467 TOOLAME_LIB=$_toolame_lib
6469 # --- Some stuff for autoconfigure ----
6474 TARGET_MMX2 = $_mmx2
6475 TARGET_3DNOW = $_3dnow
6476 TARGET_3DNOWEX = $_3dnowex
6478 TARGET_ALTIVEC = $_altivec
6482 GTKLIB = $_ld_static $_ld_gtk
6483 GLIBLIB = $_ld_static $_ld_glib
6484 GTK_LIBS = $_ld_static $_ld_gui
6490 #############################################################################
6491 echo "Creating config.h"
6492 cat > config.h
<< EOF
6493 /* -------- This file has been automatically generated by configure ---------
6494 Note: Any changes in it will be lost when you run configure again. */
6496 /* Protect against multiple inclusion */
6497 #ifndef MPLAYER_CONFIG_H
6498 #define MPLAYER_CONFIG_H 1
6500 /* use GNU internationalization */
6503 /* missing mmap function on libc5 systems */
6505 # define MAP_FAILED ((void *) -1)
6508 /* use setlocale() function */
6511 /* Runtime CPU detection */
6512 $_def_runtime_cpudetection
6514 /* Dynamic a/v plugins */
6515 $_def_dynamic_plugins
6517 /* "restrict" keyword */
6518 #define restrict $_def_restrict_keyword
6520 /* attribute(used) as needed by some compilers */
6521 #if (__GNUC__ * 100 + __GNUC_MINOR__ >= 300)
6522 # define attribute_used __attribute__((used))
6524 # define attribute_used
6527 #define PREFIX "$_prefix"
6532 /* enable/disable SIGHANDLER */
6535 /* Toggles debugging informations */
6538 /* Indicates that Ogle's libdvdread is available for DVD playback */
6541 /* Indicates that dvdread is from libmpdvdkit */
6544 /* Additional options for libmpdvdkit*/
6558 /* Common data directory (for fonts, etc) */
6559 #define MPLAYER_DATADIR "$_datadir"
6560 #define MPLAYER_CONFDIR "$_confdir"
6561 #define MPLAYER_LIBDIR "$_libdir"
6563 /* Define this to compile stream-caching support, it can be enabled via
6564 -cache <kilobytes> */
6565 #define USE_STREAM_CACHE 1
6567 /* Define to include support for XviD/Divx4Linux/OpenDivx */
6570 /* Define to use the new XviD/DivX4Linux library instead of open source OpenDivX */
6571 /* You have to change DECORE_LIBS in config.mak, too! */
6574 /* Define if you are using DivX5Linux Decore library */
6577 /* Define if you are using XviD library */
6583 /* Define if you are using the X.264 library */
6586 /* Define to include support for libdv-0.9.5 */
6589 /* If build mencoder */
6592 /* Indicates if XviD/Divx4linux encore is available
6593 Note: for mencoder */
6596 /* Indicates if libmp3lame is available
6597 Note: for mencoder */
6601 /* Define libmp1e for realtime mpeg encoding (for DXR3 and DVB cards) */
6604 /* Define this to enable avg. byte/sec-based AVI sync method by default:
6605 (use -bps or -nobps commandline option for run-time method selection)
6606 -bps gives better sync for vbr mp3 audio, it is now default */
6607 #define AVI_SYNC_BPS 1
6609 /* Undefine this if you do not want to select mono audio (left or right)
6610 with a stereo MPEG layer 2/3 audio stream. The command line option
6611 -stereo has three possible values (0 for stereo, 1 for left-only, 2 for
6612 right-only), with 0 being the default.
6614 #define USE_FAKE_MONO 1
6616 /* Undefine this if your sound card driver has no working select().
6617 If you have kernel Oops, player hangups, or just no audio, you should
6618 try to recompile MPlayer with this option disabled! */
6621 /* define this to use iconv(3) function to codepage conversions */
6624 /* define this to use nl_langinfo function */
6627 /* define this to use RTC (/dev/rtc) for video timers (LINUX only) */
6630 /* set up max. outburst. use 65536 for ALSA 0.5, for others 16384 is enough */
6631 #define MAX_OUTBURST 65536
6633 /* set up audio OUTBURST. Do not change this! */
6634 #define OUTBURST 512
6636 /* Define this if your system has the header file for the OSS sound interface */
6639 /* Define this if your system has the header file for the OSS sound interface
6640 * in /usr/include */
6643 /* Define this if your system has the sysinfo header */
6646 /* Define this if your system has ftello() */
6650 /* Need these for FILE and off_t an config.h is usually before other includes*/
6652 #include <sys/types.h>
6653 off_t ftello(FILE *);
6656 /* Define this if your system has the "malloc.h" header file */
6659 /* memalign is mapped to malloc if unsupported */
6661 #ifndef HAVE_MEMALIGN
6662 # define memalign(a,b) malloc(b)
6665 /* Define this if your system has the "alloca.h" header file */
6668 /* Define this if your system has the "sys/mman.h" header file */
6671 /* Define this if you have the elf dynamic linker -ldl library */
6674 /* Define this if you have the kstat kernel statistics library */
6677 /* Define this if you have zlib */
6680 #define CONFIG_ZLIB 1
6683 /* Define this if you have shm support */
6686 /* Define this if your system has scandir & alphasort */
6689 /* Define this if your system has strsep */
6692 /* Define this if your system has strlcpy */
6694 #ifndef HAVE_STRLCPY
6695 unsigned int strlcpy (char *dest, char *src, unsigned int size);
6698 /* Define this if your system has strlcat */
6700 #ifndef HAVE_STRLCAT
6701 unsigned int strlcat (char *dest, char *src, unsigned int size);
6704 /* Define this if your system has fseeko */
6707 /* Need these for FILE and off_t an config.h is usually before other includes*/
6709 #include <sys/types.h>
6710 int fseeko(FILE *, off_t, int);
6715 /* Define this if your system has vsscanf */
6718 /* Define this if your system has swab */
6721 /* Define this if your system has no posix select */
6722 $_def_no_posix_select
6724 /* Define this if your system has gettimeofday */
6727 /* Define this if your system has glob */
6730 /* Define this if your system has pthreads */
6733 /* LIRC (remote control, see www.lirc.org) support: */
6737 * LIRCCD (LIRC client daemon)
6738 * See http://www.dolda2000.cjb.net/~fredrik/lirccd/
6742 /* DVD navigation support using libdvdnav */
6744 $_def_dvdnav_version
6746 /* Define this to enable MPEG 1/2 image postprocessing (requires a FAST CPU!) */
6747 #define MPEG12_POSTPROC 1
6749 /* Define this to enable image postprocessing in libavcodec (requires a FAST CPU!) */
6752 /* Define to include support for OpenDivx postprocessing */
6753 $_def_odivx_postprocess
6755 /* Win32 DLL support */
6757 #define WIN32_PATH "$_win32libdir"
6759 /* DirectShow support */
6762 /* Mac OS X specific features */
6765 /* Mac OS X SHLB support */
6768 /* Build our Win32-loader */
6771 /* ffmpeg's libavcodec support (requires libavcodec source) */
6775 /* ffmpeg's libavformat support (requires libavformat source) */
6777 $_def_libavformat_win32
6780 #define CONFIG_RISKY 1
6782 /* Use libavcodec's decoders */
6783 #define CONFIG_DECODERS 1
6784 /* Use libavcodec's encoders */
6785 #define CONFIG_ENCODERS 1
6787 #define CONFIG_MPEGAUDIO_HP 1
6789 /* Use codec libs included in mplayer CVS / source dist: */
6795 /* Use libfame encoder filter */
6798 /* XAnim DLL support */
6800 /* Default search path */
6803 /* RealPlayer DLL support */
6805 /* Default search path */
6808 /* LIVE.COM Streaming Media library support */
6811 /* Use 3dnow/mmxext/sse/mmx optimized fast memcpy() [maybe buggy... signal 4]*/
6814 /* Use unrarlib for Vobsubs */
6817 /* gui support, please do not edit this option */
6820 /* Audio output drivers */
6822 $_def_ossaudio_devdsp
6823 $_def_ossaudio_devmixer
6831 $_def_sys_asoundlib_h
6832 $_def_alsa_asoundlib_h
6838 /* Enable fast OSD/SUB renderer (looks ugly, but uses less CPU power) */
6840 #undef FAST_OSD_TABLE
6842 /* Enable TV Interface support */
6845 /* Enable EDL support */
6848 /* Enable Video 4 Linux TV interface support */
6851 /* Enable Video 4 Linux 2 TV interface support */
6854 /* Enable *BSD BrookTree TV interface support */
6857 /* Define if your processor stores words with the most significant
6858 byte first (like Motorola and SPARC, unlike Intel and VAX). */
6863 /* libmpeg2 wants ARCH_PPC and the rest of mplayer use ARCH_POWERPC,
6864 * define ARCH_PPC if ARCH_POWERPC is set to cope with that.
6870 /* the same issue as with ARCH_POWERPC but with ffmpeg/libavcodec */
6875 /* only gcc3 can compile mvi instructions */
6876 $_def_gcc_mvi_support
6878 /* Define this for Cygwin build for win32 */
6881 /* Define this to any prefered value from 386 up to infinity with step 100 */
6882 #define __CPU__ $iproc
6891 #define DEFAULT_CDROM_DEVICE "/vol/dev/aliases/cdrom0"
6892 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
6894 #define DEFAULT_CDROM_DEVICE "/dev/cdrom"
6895 #define DEFAULT_DVD_DEVICE "/dev/dvd"
6896 #elif defined(WIN32)
6897 #define DEFAULT_CDROM_DEVICE "D:"
6898 #define DEFAULT_DVD_DEVICE "D:"
6899 #elif defined(SYS_DARWIN)
6900 #define DEFAULT_CDROM_DEVICE "/dev/disk1"
6901 #define DEFAULT_DVD_DEVICE "/dev/rdiskN"
6902 #elif defined(__OpenBSD__)
6903 #define DEFAULT_CDROM_DEVICE "/dev/rcd0a"
6904 #define DEFAULT_DVD_DEVICE DEFAULT_CDROM_DEVICE
6906 #define DEFAULT_CDROM_DEVICE "/dev/cdrom"
6907 #define DEFAULT_DVD_DEVICE "/dev/dvd"
6911 /*----------------------------------------------------------------------------
6913 ** NOTE: Instead of modifying these definitions here, use the
6914 ** --enable/--disable options of the ./configure script!
6915 ** See ./configure --help for details.
6917 *---------------------------------------------------------------------------*/
6919 /* C99 lrintf function available */
6922 /* yes, we have inttypes.h */
6923 #define HAVE_INTTYPES_H 1
6925 /* int_fastXY_t emulation */
6928 /* nanosleep support */
6934 /* termcap flag for getch2.c */
6937 /* termios flag for getch2.c */
6942 /* enable PNG support */
6945 /* enable JPEG support */
6948 /* enable GIF support */
6953 /* enable FreeType support */
6956 /* enable Fontconfig support */
6959 /* enable FriBiDi usage */
6962 /* enable ENCA usage */
6965 /* liblzo support */
6968 /* libmad support */
6971 /* enable OggVorbis support */
6974 /* enable Tremor as vorbis decoder */
6977 /* enable OggTheora support */
6980 /* enable Matroska support */
6983 /* enable FAAD (AAC) support */
6988 /* enable network */
6991 /* enable ftp support */
6994 /* enable winsock2 instead of Unix functions*/
6997 /* define this to use inet_aton() instead of inet_pton() */
7000 /* enables / disables cdparanoia support */
7003 /* enables / disables VIDIX usage */
7006 /* enables / disables new input joystick support */
7009 /* enables / disables QTX codecs */
7012 /* enables / disables osd menu */
7015 /* enables / disables subtitles sorting */
7018 /* XMMS input plugin support */
7020 #define XMMS_INPUT_PLUGIN_DIR "$_xmmsplugindir"
7022 /* enables inet6 support */
7025 /* do we have gethostbyname2? */
7026 $_def_gethostbyname2
7028 /* Extension defines */
7029 $_def_3dnow // only define if you have 3DNOW (AMD k6-2, AMD Athlon, iDT WinChip, etc.)
7030 $_def_3dnowex // only define if you have 3DNOWEX (AMD Athlon, etc.)
7031 $_def_mmx // only define if you have MMX (newer x86 chips, not P54C/PPro)
7032 $_def_mmx2 // only define if you have MMX2 (Athlon/PIII/4/CelII)
7033 $_def_sse // only define if you have SSE (Intel Pentium III/4 or Celeron II)
7034 $_def_sse2 // only define if you have SSE2 (Intel Pentium 4)
7035 $_def_altivec // only define if you have Altivec (G4)
7037 $_def_altivec_h // enables usage of altivec.h
7040 $_def_mlib // Sun mediaLib, available only on solaris
7041 $_def_vis // only define if you have VIS ( ultrasparc )
7043 /* libmpeg2 uses a different feature test macro for mediaLib */
7045 #define LIBMPEG2_MLIB 1
7049 #define SCREEN_SIZE_X 1
7050 #define SCREEN_SIZE_Y 1
7061 /* defined for SDLlib with keyrepeat bugs (before 1.2.1) */
7069 $_def_directfb_version
7091 #if defined(HAVE_GL) || defined(HAVE_X11) || defined(HAVE_XV)
7092 #define X11_FULLSCREEN 1
7095 #endif /* MPLAYER_CONFIG_H */
7098 #############################################################################
7100 echo "Creating libvo/config.mak"
7101 _voobj
=`echo $_vosrc | sed -e 's/\.c/\.o/g'`
7102 cat > libvo
/config.mak
<< EOF
7103 include ../config.mak
7104 OPTIONAL_SRCS = $_vosrc
7105 OPTIONAL_OBJS = $_voobj
7108 #############################################################################
7110 echo "Creating libao2/config.mak"
7111 _aoobj
=`echo $_aosrc | sed -e 's/\.c/\.o/g'`
7112 cat > libao
2/config.mak
<< EOF
7113 include ../config.mak
7114 OPTIONAL_SRCS = $_aosrc
7115 OPTIONAL_OBJS = $_aoobj
7118 #############################################################################
7120 echo "Creating help_mp.h"
7121 cat > help_mp.h
<< EOF
7123 // WARNING! This is a generated file. Do NOT edit.
7124 // See the help/ subdir for the editable files.
7126 #include "$_mp_help"
7129 if test $_mp_help != "help/help_mp-en.h"; then
7130 echo "Adding untranslated messages to help_mp.h"
7131 echo '// untranslated messages from the english master-file:' >> help_mp.h
7132 help
/help_diff.sh
$_mp_help <help
/help_mp-en.h
>> help_mp.h
7135 #############################################################################
7139 Config files successfully generated by ./configure !
7141 Install prefix: $_prefix
7142 Data directory: $_datadir
7143 Config direct.: $_confdir
7145 Byte order: $_byte_order
7146 Optimizing for: $_optimizing
7149 Messages/GUI: $_language
7152 echo -n " Manual pages: $MAN_LANG"
7153 test "$LANGUAGES" = en
&& echo -n " (no localization selected, use --language=all)"
7158 Enabled optional drivers:
7159 Input: $_inputmodules
7160 Codecs: $_codecmodules
7161 Audio output: $_aomodules
7162 Video output: $_vomodules
7163 Disabled optional drivers:
7164 Input: $_noinputmodules
7165 Codecs: $_nocodecmodules
7166 Audio output: $_noaomodules
7167 Video output: $_novomodules
7169 'config.h' and 'config.mak' contain your configuration options.
7170 Note: If you alter theses files (for instance CFLAGS) MPlayer may no longer
7171 compile *** DO NOT REPORT BUGS if you tweak these files ***
7173 'make' will now compile MPlayer and 'make install' will install it.
7174 Note: On non-Linux systems you might need to use 'gmake' instead of 'make'.
7179 if test "$_mtrr" = yes ; then
7180 echo "Please check mtrr settings at /proc/mtrr (see DOCS/HTML/$_doc_lang/devices.html#mtrr)"
7184 if test "$_sdl" = "outdated" ; then
7186 You have an outdated version of libSDL installed (older than v1.1.7) and SDL
7187 support has therefore been disabled.
7189 Please upgrade to a more recent version (version 1.1.8 and above are known to
7190 work). You may get this library from: http://www.libsdl.org
7192 You need to rerun ./configure and recompile after updating SDL. If you are
7193 only interested in the libSDL audio drivers, then an older version might work.
7195 Use --enable-sdl to force usage of libSDL.
7201 if test "$_win32" = no
; then
7202 if test "$_win32libdir" ; then
7203 echo "Failed to find a Win32 codecs dir at $_win32libdir!"
7205 echo "Failed to find a Win32 codecs directory! (default: /usr/local/lib/codecs/)"
7208 Create it and copy the DLL files there! You can download the codecs from our
7209 homepage at http://www.mplayerhq.hu/MPlayer/releases/codecs/
7215 NOTE: Win32 codec DLLs are not supported on your CPU ($host_arch) or your
7216 operating system ($system_name). You may encounter a few files that cannot
7217 be played due to missing open source video/audio codec support.
7225 Check $TMPLOG if you wonder why an autodetection failed (check whether
7226 the development headers/packages are installed).
7228 If you suspect a bug, please read DOCS/HTML/$_doc_lang/bugreports.html.
7232 if test "$_vidix" = no
; then
7234 You've disabled VIDIX. Although it would be better to PORT it instead.
7235 Have a look at the documentation for supported cards!
7241 rm -f "$TMPO" "$TMPC" "$TMPS" "$TMPCPP"