You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
8725 lines
242 KiB
8725 lines
242 KiB
diff -Naur MPlayer-1.0rc2.orig/configure MPlayer-1.0rc2/configure |
|
--- MPlayer-1.0rc2.orig/configure 2007-10-07 21:49:33.000000000 +0200 |
|
+++ MPlayer-1.0rc2/configure 2008-09-13 15:56:38.000000000 +0200 |
|
@@ -4920,7 +4920,7 @@ |
|
echores "$_dxr3" |
|
|
|
|
|
-echocheck "IVTV TV-Out" |
|
+echocheck "IVTV TV-Out (pre linux-2.6.24)" |
|
if test "$_ivtv" = auto ; then |
|
cat > $TMPC << EOF |
|
#include <stdlib.h> |
|
@@ -4928,7 +4928,13 @@ |
|
#include <linux/types.h> |
|
#include <linux/videodev2.h> |
|
#include <linux/ivtv.h> |
|
-int main(void) { return 0; } |
|
+#include <sys/ioctl.h> |
|
+int main(void) { |
|
+struct ivtv_cfg_stop_decode sd; |
|
+struct ivtv_cfg_start_decode sd1; |
|
+ioctl (0, IVTV_IOC_START_DECODE, &sd1); |
|
+ioctl (0, IVTV_IOC_STOP_DECODE, &sd); |
|
+return 0; } |
|
EOF |
|
_ivtv=no |
|
cc_check && _ivtv=yes |
|
@@ -5986,11 +5992,11 @@ |
|
#include <dts.h> |
|
int main(void) { dts_init (0); return 0; } |
|
EOF |
|
- cc_check -ldts $_ld_lm && _libdca=yes |
|
+ cc_check -ldca $_ld_lm && _libdca=yes |
|
fi |
|
if test "$_libdca" = yes ; then |
|
_def_libdca='#define USE_LIBDCA 1' |
|
- _ld_extra="$_ld_extra -ldts" |
|
+ _ld_extra="$_ld_extra -ldca" |
|
_codecmodules="libdca $_codecmodules" |
|
else |
|
_def_libdca='#undef USE_LIBDCA' |
|
diff -Naur MPlayer-1.0rc2.orig/configure~ MPlayer-1.0rc2/configure~ |
|
--- MPlayer-1.0rc2.orig/configure~ 1970-01-01 01:00:00.000000000 +0100 |
|
+++ MPlayer-1.0rc2/configure~ 2008-09-13 15:56:38.000000000 +0200 |
|
@@ -0,0 +1,8578 @@ |
|
+#! /bin/sh |
|
+# |
|
+# Original version (C) 2000 Pontscho/fresh!mindworkz |
|
+# pontscho@makacs.poliod.hu |
|
+# |
|
+# History / Contributors: check the cvs log ! |
|
+# |
|
+# Cleanups all over the place (c) 2001 pl |
|
+# |
|
+# |
|
+# This configure script is *not* autoconf-based and has different semantics. |
|
+# It attempts to autodetect all settings and options where possible. It is |
|
+# possible to override autodetection with the --enable-option/--disable-option |
|
+# command line parameters. --enable-option forces the option on skipping |
|
+# autodetection. Yes, this means that compilation may fail and yes, this is not |
|
+# how autoconf-based configure scripts behave. |
|
+# |
|
+# configure generates a series of configuration files: |
|
+# - config.h contains #defines that are used in the C code. |
|
+# - config.mak is included from the Makefiles. |
|
+# |
|
+# If you want to add a new check for $feature, here is a simple skeleton: |
|
+# |
|
+# echocheck "$feature" |
|
+# if "$_feature" = auto; then |
|
+# cat > $TMPC << EOF |
|
+# #include <feature.h> |
|
+# int main(void) { return 0; } |
|
+# EOF |
|
+# _feature=no |
|
+# cc_check && _feature=yes |
|
+# if test "$_feature" = yes ; then |
|
+# _def_feature='#define HAVE_FEATURE 1' |
|
+# else |
|
+# _def_feature='#undef HAVE_FEATURE' |
|
+# fi |
|
+# echores "$_feature" |
|
+# |
|
+# Furthermore you need to add the variable _feature to the list of default |
|
+# settings and set it to one of yes/no/auto. Also add appropriate |
|
+# --enable-feature/--disable-feature command line options. |
|
+# The results of the check should be written to config.h and config.mak |
|
+# at the end of this script. The variable names used for this should be |
|
+# uniform, i.e. if the option is named 'feature': |
|
+# |
|
+# _feature : should have a value of yes/no/auto |
|
+# _def_feature : '#define ... 1' or '#undef ...' for conditional compilation |
|
+# _ld_feature : '-L/path/dir -lfeature' GCC options |
|
+# |
|
+############################################################################# |
|
+ |
|
+# Prevent locale nonsense from breaking basic text processing utils |
|
+LC_ALL=C |
|
+export LC_ALL |
|
+ |
|
+# Store the configure line that was used |
|
+_configuration="$*" |
|
+ |
|
+# Prefer these macros to full length text ! |
|
+# These macros only return an error code - NO display is done |
|
+compile_check() { |
|
+ echo >> "$TMPLOG" |
|
+ cat "$1" >> "$TMPLOG" |
|
+ echo >> "$TMPLOG" |
|
+ echo "$_cc $CFLAGS $_inc_extra $_ld_static $_ld_extra $_libs_mplayer $_libs_mencoder -o $TMPEXE $@" >> "$TMPLOG" |
|
+ rm -f "$TMPEXE" |
|
+ $_cc $CFLAGS $_inc_extra $_ld_static $_ld_extra $_libs_mplayer $_libs_mencoder -o "$TMPEXE" "$@" >> "$TMPLOG" 2>&1 |
|
+ TMP="$?" |
|
+ echo >> "$TMPLOG" |
|
+ echo >> "$TMPLOG" |
|
+ return "$TMP" |
|
+} |
|
+ |
|
+cc_check() { |
|
+ compile_check $TMPC $@ |
|
+} |
|
+ |
|
+cxx_check() { |
|
+ compile_check $TMPCPP $@ -lstdc++ |
|
+} |
|
+ |
|
+tmp_run() { |
|
+ "$TMPEXE" >> "$TMPLOG" 2>&1 |
|
+} |
|
+ |
|
+# Display error message, flushes tempfile, exit |
|
+die () { |
|
+ echo |
|
+ echo "Error: $@" >&2 |
|
+ echo >&2 |
|
+ rm -f "$TMPEXE" "$TMPC" "$TMPS" "$TMPCPP" |
|
+ echo "Check \"$TMPLOG\" if you do not understand why it failed." |
|
+ exit 1 |
|
+} |
|
+ |
|
+# OS test booleans functions |
|
+issystem() { |
|
+ test "`echo $system_name | tr A-Z a-z`" = "`echo $1 | tr A-Z a-z`" |
|
+} |
|
+linux() { issystem "Linux" || issystem "uClinux" ; return "$?" ; } |
|
+sunos() { issystem "SunOS" ; return "$?" ; } |
|
+hpux() { issystem "HP-UX" ; return "$?" ; } |
|
+irix() { issystem "IRIX" ; return "$?" ; } |
|
+aix() { issystem "AIX" ; return "$?" ; } |
|
+cygwin() { issystem "CYGWIN" ; return "$?" ; } |
|
+freebsd() { issystem "FreeBSD" || issystem "GNU/kFreeBSD"; return "$?" ; } |
|
+netbsd() { issystem "NetBSD" ; return "$?" ; } |
|
+bsdos() { issystem "BSD/OS" ; return "$?" ; } |
|
+openbsd() { issystem "OpenBSD" ; return "$?" ; } |
|
+bsd() { freebsd || netbsd || bsdos || openbsd ; return "$?" ; } |
|
+qnx() { issystem "QNX" ; return "$?" ; } |
|
+darwin() { issystem "Darwin" ; return "$?" ; } |
|
+gnu() { issystem "GNU" ; return "$?" ; } |
|
+mingw32() { issystem "MINGW32" ; return "$?" ; } |
|
+morphos() { issystem "MorphOS" ; return "$?" ; } |
|
+amigaos() { issystem "AmigaOS" ; return "$?" ; } |
|
+win32() { cygwin || mingw32 ; return "$?" ; } |
|
+beos() { issystem "BEOS" ; return "$?" ; } |
|
+ |
|
+# arch test boolean functions |
|
+# x86/x86pc is used by QNX |
|
+x86_32() { |
|
+ case "$host_arch" in |
|
+ i[3-9]86|x86|x86pc|k5|k6|k6-2|k6-3|pentium*|athlon*|i586-i686) return 0 ;; |
|
+ *) return 1 ;; |
|
+ esac |
|
+} |
|
+ |
|
+x86_64() { |
|
+ case "$host_arch" in |
|
+ x86_64|amd64) return 0 ;; |
|
+ *) return 1 ;; |
|
+ esac |
|
+} |
|
+ |
|
+x86() { |
|
+ x86_32 || x86_64 |
|
+} |
|
+ |
|
+ppc() { |
|
+ case "$host_arch" in |
|
+ ppc|powerpc) return 0;; |
|
+ *) return 1;; |
|
+ esac |
|
+} |
|
+ |
|
+alpha() { |
|
+ case "$host_arch" in |
|
+ alpha) return 0;; |
|
+ *) return 1;; |
|
+ esac |
|
+} |
|
+ |
|
+arm() { |
|
+ case "$host_arch" in |
|
+ arm) return 0;; |
|
+ *) return 1;; |
|
+ esac |
|
+} |
|
+ |
|
+sh3() { |
|
+ case "$host_arch" in |
|
+ sh3) return 0;; |
|
+ *) return 1;; |
|
+ esac |
|
+} |
|
+ |
|
+# not boolean test: implement the posix shell "!" operator for a |
|
+# non-posix /bin/sh. |
|
+# usage: not {command} |
|
+# returns exit status "success" when the execution of "command" |
|
+# fails. |
|
+not() { |
|
+ eval "$@" |
|
+ test $? -ne 0 |
|
+} |
|
+ |
|
+# Use this before starting a check |
|
+echocheck() { |
|
+ echo "============ Checking for $@ ============" >> "$TMPLOG" |
|
+ echo ${_echo_n} "Checking for $@ ... ${_echo_c}" |
|
+} |
|
+ |
|
+# Use this to echo the results of a check |
|
+echores() { |
|
+ if test "$_res_comment" ; then |
|
+ _res_comment="($_res_comment)" |
|
+ fi |
|
+ echo "Result is: $@ $_res_comment" >> "$TMPLOG" |
|
+ echo "##########################################" >> "$TMPLOG" |
|
+ echo "" >> "$TMPLOG" |
|
+ echo "$@ $_res_comment" |
|
+ _res_comment="" |
|
+} |
|
+############################################################################# |
|
+ |
|
+# Check how echo works in this /bin/sh |
|
+case `echo -n` in |
|
+ -n) _echo_n= _echo_c='\c' ;; # SysV echo |
|
+ *) _echo_n='-n ' _echo_c= ;; # BSD echo |
|
+esac |
|
+ |
|
+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"` |
|
+ |
|
+show_help(){ |
|
+cat << EOF |
|
+Usage: $0 [OPTIONS]... |
|
+ |
|
+Configuration: |
|
+ -h, --help display this help and exit |
|
+ |
|
+Installation directories: |
|
+ --prefix=DIR prefix directory for installation [/usr/local] |
|
+ --bindir=DIR directory for installing binaries [PREFIX/bin] |
|
+ --datadir=DIR directory for installing machine independent |
|
+ data files (skins, etc) [PREFIX/share/mplayer] |
|
+ --mandir=DIR directory for installing man pages [PREFIX/share/man] |
|
+ --confdir=DIR directory for installing configuration files |
|
+ [PREFIX/etc/mplayer] |
|
+ --libdir=DIR directory for object code libraries [PREFIX/lib] |
|
+ --codecsdir=DIR directory for binary codecs [LIBDIR/codecs] |
|
+ --win32codecsdir=DIR directory for Windows DLLs [LIBDIR/codecs] |
|
+ --xanimcodecsdir=DIR directory for XAnim codecs [LIBDIR/codecs] |
|
+ --realcodecsdir=DIR directory for RealPlayer codecs [LIBDIR/codecs] |
|
+ |
|
+Optional features: |
|
+ --disable-mencoder disable MEncoder (A/V encoder) compilation [enable] |
|
+ --disable-mplayer disable MPlayer compilation [enable] |
|
+ --enable-gui enable GMPlayer compilation (GTK+ GUI) [disable] |
|
+ --enable-gtk1 force using GTK 1.2 for the GUI [disable] |
|
+ --enable-largefiles enable support for files > 2GB [disable] |
|
+ --enable-linux-devfs set default devices to devfs [disable] |
|
+ --enable-termcap use termcap database for key codes [autodetect] |
|
+ --enable-termios use termios database for key codes [autodetect] |
|
+ --disable-iconv disable iconv for encoding conversion [autodetect] |
|
+ --disable-langinfo do not use langinfo [autodetect] |
|
+ --enable-lirc enable LIRC (remote control) support [autodetect] |
|
+ --enable-lircc enable LIRCCD (LIRC client daemon) input [autodetect] |
|
+ --enable-joystick enable joystick support [disable] |
|
+ --enable-apple-remote enable Apple Remote input (Mac OS X only) [autodetect] |
|
+ --disable-vm disable X video mode extensions [autodetect] |
|
+ --disable-xf86keysym disable support for multimedia keys [autodetect] |
|
+ --enable-radio enable radio interface [disable] |
|
+ --enable-radio-capture enable radio capture (through PCI/line-in) [disable] |
|
+ --disable-radio-v4l2 disable Video4Linux2 radio interface [autodetect] |
|
+ --disable-radio-bsdbt848 disable BSD BT848 radio interface [autodetect] |
|
+ --disable-tv disable TV interface (TV/DVB grabbers) [enable] |
|
+ --disable-tv-v4l1 disable Video4Linux TV interface [autodetect] |
|
+ --disable-tv-v4l2 disable Video4Linux2 TV interface [autodetect] |
|
+ --disable-tv-bsdbt848 disable BSD BT848 interface [autodetect] |
|
+ --disable-tv-teletext disable TV teletext interface [autodetect] |
|
+ --disable-pvr disable Video4Linux2 MPEG PVR [autodetect] |
|
+ --disable-rtc disable RTC (/dev/rtc) on Linux [autodetect] |
|
+ --disable-network disable networking [enable] |
|
+ --enable-winsock2 enable winsock2 [autodetect] |
|
+ --enable-smb enable Samba (SMB) input [autodetect] |
|
+ --enable-live enable LIVE555 Streaming Media [autodetect] |
|
+ --enable-nemesi enable Nemesi Streaming Media [autodetect] |
|
+ --disable-dvdnav disable libdvdnav [autodetect] |
|
+ --disable-dvdread disable libdvdread [autodetect] |
|
+ --disable-dvdread-internal disable internal libdvdread [autodetect] |
|
+ --disable-libdvdcss-internal disable internal libdvdcss [autodetect] |
|
+ --disable-cdparanoia disable cdparanoia [autodetect] |
|
+ --disable-cddb disable cddb [autodetect] |
|
+ --disable-bitmap-font disable bitmap font support [enable] |
|
+ --disable-freetype disable FreeType 2 font rendering [autodetect] |
|
+ --disable-fontconfig disable fontconfig font lookup [autodetect] |
|
+ --disable-unrarlib disable Unique RAR File Library [enabled] |
|
+ --enable-menu enable OSD menu (not DVD menu) [disabled] |
|
+ --disable-sortsub disable subtitle sorting [enabled] |
|
+ --enable-fribidi enable the FriBiDi libs [autodetect] |
|
+ --disable-enca disable ENCA charset oracle library [autodetect] |
|
+ --disable-macosx disable Mac OS X specific features [autodetect] |
|
+ --disable-maemo disable maemo specific features [autodetect] |
|
+ --enable-macosx-finder-support enable Mac OS X Finder invocation |
|
+ parameter parsing [disabled] |
|
+ --enable-macosx-bundle enable Mac OS X bundle file locations [autodetect] |
|
+ --disable-inet6 disable IPv6 support [autodetect] |
|
+ --disable-gethostbyname2 gethostbyname2 part of the C library [autodetect] |
|
+ --disable-ftp disable FTP support [enabled] |
|
+ --disable-vstream disable TiVo vstream client support [autodetect] |
|
+ --disable-pthreads disable Posix threads support [autodetect] |
|
+ --disable-w32threads disable Win32 threads support [autodetect] |
|
+ --disable-ass disable internal SSA/ASS subtitle support [autodetect] |
|
+ --enable-rpath enable runtime linker path for extra libs [disabled] |
|
+ |
|
+Codecs: |
|
+ --enable-gif enable GIF support [autodetect] |
|
+ --enable-png enable PNG input/output support [autodetect] |
|
+ --enable-jpeg enable JPEG input/output support [autodetect] |
|
+ --enable-libcdio enable external libcdio [autodetect] |
|
+ --enable-liblzo enable external liblzo [autodetect] |
|
+ --disable-win32dll disable Win32 DLL support [enabled] |
|
+ --disable-qtx disable QuickTime codecs support [enabled] |
|
+ --disable-xanim disable XAnim codecs support [enabled] |
|
+ --disable-real disable RealPlayer codecs support [enabled] |
|
+ --disable-xvid disable XviD [autodetect] |
|
+ --disable-x264 disable x264 [autodetect] |
|
+ --disable-libnut disable libnut [autodetect] |
|
+ --disable-libavutil_a disable static libavutil [autodetect] |
|
+ --disable-libavcodec_a disable static libavcodec [autodetect] |
|
+ --disable-libavformat_a disable static libavformat [autodetect] |
|
+ --disable-libpostproc_a disable static libpostproc [autodetect] |
|
+ --disable-libavutil_so disable shared libavutil [autodetect] |
|
+ --disable-libavcodec_so disable shared libavcodec [autodetect] |
|
+ --disable-libavformat_so disable shared libavformat [autodetect] |
|
+ --disable-libpostproc_so disable shared libpostproc [autodetect] |
|
+ --disable-libavcodec_mpegaudio_hp disable high precision audio decoding |
|
+ in libavcodec [enabled] |
|
+ --disable-tremor-internal disable internal Tremor [enabled] |
|
+ --enable-tremor-low enable lower accuracy internal Tremor [disabled] |
|
+ --enable-tremor-external enable external Tremor [autodetect] |
|
+ --disable-libvorbis disable libvorbis support [autodetect] |
|
+ --disable-speex disable Speex support [autodetect] |
|
+ --enable-theora enable OggTheora libraries [autodetect] |
|
+ --enable-faad-external enable external FAAD2 (AAC) [autodetect] |
|
+ --disable-faad-internal disable internal FAAD2 (AAC) [autodetect] |
|
+ --enable-faad-fixed enable fixed-point mode in internal FAAD2 [disabled] |
|
+ --disable-faac disable support for FAAC (AAC encoder) [autodetect] |
|
+ --disable-ladspa disable LADSPA plugin support [autodetect] |
|
+ --disable-libdv disable libdv 0.9.5 en/decoding support [autodetect] |
|
+ --disable-mad disable libmad (MPEG audio) support [autodetect] |
|
+ --disable-toolame disable Toolame (MPEG layer 2) encoding [autodetect] |
|
+ --disable-twolame disable Twolame (MPEG layer 2) encoding [autodetect] |
|
+ --enable-xmms enable XMMS input plugin support [disabled] |
|
+ --enable-libdca enable libdca support [autodetect] |
|
+ --disable-mp3lib disable builtin mp3lib [enabled] |
|
+ --disable-liba52 disable builtin liba52 [enabled] |
|
+ --disable-libmpeg2 disable builtin libmpeg2 [enabled] |
|
+ --disable-musepack disable musepack support [autodetect] |
|
+ --disable-libamr_nb disable libamr narrowband [autodetect] |
|
+ --disable-libamr_wb disable libamr wideband [autodetect] |
|
+ --disable-decoder=DECODER disable specified FFmpeg decoder |
|
+ --enable-decoder=DECODER enable specified FFmpeg decoder |
|
+ --disable-encoder=ENCODER disable specified FFmpeg encoder |
|
+ --enable-encoder=ENCODER enable specified FFmpeg encoder |
|
+ --disable-parser=PARSER disable specified FFmpeg parser |
|
+ --enable-parser=PARSER enable specified FFmpeg parser |
|
+ --disable-demuxer=DEMUXER disable specified FFmpeg demuxer |
|
+ --enable-demuxer=DEMUXER enable specified FFmpeg demuxer |
|
+ --disable-muxer=MUXER disable specified FFmpeg muxer |
|
+ --enable-muxer=MUXER enable specified FFmpeg muxer |
|
+ |
|
+Video output: |
|
+ --disable-vidix-internal disable internal VIDIX [for x86 *nix] |
|
+ --disable-vidix-external disable external VIDIX [for x86 *nix] |
|
+ --with-vidix-drivers[=*] list of VIDIX drivers to be compiled in |
|
+ Available: cyberblade,ivtv,mach64,mga,mga_crtc2, |
|
+ nvidia,pm2,pm3,radeon,rage128,savage,sis,unichrome |
|
+ --enable-gl enable OpenGL video output [autodetect] |
|
+ --enable-dga2 enable DGA 2 support [autodetect] |
|
+ --enable-dga1 enable DGA 1 support [autodetect] |
|
+ --enable-vesa enable VESA video output [autodetect] |
|
+ --enable-svga enable SVGAlib video output [autodetect] |
|
+ --enable-sdl enable SDL video output [autodetect] |
|
+ --enable-aa enable AAlib video output [autodetect] |
|
+ --enable-caca enable CACA video output [autodetect] |
|
+ --enable-ggi enable GGI video output [autodetect] |
|
+ --enable-ggiwmh enable GGI libggiwmh extension [autodetect] |
|
+ --enable-directx enable DirectX video output [autodetect] |
|
+ --enable-dxr2 enable DXR2 video output [autodetect] |
|
+ --enable-dxr3 enable DXR3/H+ video output [autodetect] |
|
+ --enable-ivtv enable IVTV TV-Out video output [autodetect] |
|
+ --enable-v4l2 enable V4L2 Decoder audio/video output [autodetect] |
|
+ --enable-dvb enable DVB video output [autodetect] |
|
+ --enable-dvbhead enable DVB video output (HEAD version) [autodetect] |
|
+ --enable-mga enable mga_vid video output [autodetect] |
|
+ --enable-xmga enable mga_vid X11 video output [autodetect] |
|
+ --enable-xv enable Xv video output [autodetect] |
|
+ --enable-xvmc enable XvMC acceleration [disable] |
|
+ --enable-vm enable XF86VidMode support [autodetect] |
|
+ --enable-xinerama enable Xinerama support [autodetect] |
|
+ --enable-x11 enable X11 video output [autodetect] |
|
+ --enable-xshape enable XShape support [autodetect] |
|
+ --enable-fbdev enable FBDev video output [autodetect] |
|
+ --enable-mlib enable mediaLib video output (Solaris) [disable] |
|
+ --enable-3dfx enable obsolete /dev/3dfx video output [disable] |
|
+ --enable-tdfxfb enable tdfxfb video output [disable] |
|
+ --enable-s3fb enable s3fb (S3 ViRGE) video output [disable] |
|
+ --enable-directfb enable DirectFB video output [autodetect] |
|
+ --enable-zr enable ZR360[56]7/ZR36060 video output [autodetect] |
|
+ --enable-bl enable Blinkenlights video output [disable] |
|
+ --enable-tdfxvid enable tdfx_vid video output [disable] |
|
+ --enable-xvr100 enable SUN XVR-100 video output [autodetect] |
|
+ --disable-tga disable Targa video output [enable] |
|
+ --disable-pnm disable PNM video output [enable] |
|
+ --disable-md5sum disable md5sum video output [enable] |
|
+ |
|
+Audio output: |
|
+ --disable-alsa disable ALSA audio output [autodetect] |
|
+ --disable-ossaudio disable OSS audio output [autodetect] |
|
+ --disable-arts disable aRts audio output [autodetect] |
|
+ --disable-esd disable esd audio output [autodetect] |
|
+ --disable-polyp disable Polypaudio audio output [autodetect] |
|
+ --disable-jack disable JACK audio output [autodetect] |
|
+ --disable-openal disable OpenAL audio output [autodetect] |
|
+ --disable-nas disable NAS audio output [autodetect] |
|
+ --disable-sgiaudio disable SGI audio output [autodetect] |
|
+ --disable-sunaudio disable Sun audio output [autodetect] |
|
+ --disable-win32waveout disable Windows waveout audio output [autodetect] |
|
+ --disable-select disable using select() on the audio device [enable] |
|
+ |
|
+Miscellaneous options: |
|
+ --enable-runtime-cpudetection enable runtime CPU detection [disable] |
|
+ --enable-cross-compile enable cross-compilation [autodetect] |
|
+ --cc=COMPILER C compiler to build MPlayer [gcc] |
|
+ --host-cc=COMPILER C compiler for tools needed while building [gcc] |
|
+ --as=ASSEMBLER assembler to build MPlayer [as] |
|
+ --ar=AR librarian to build MPlayer [ar] |
|
+ --ranlib=RANLIB ranlib to build MPlayer [ranlib] |
|
+ --target=PLATFORM target platform (i386-linux, arm-linux, etc) |
|
+ --enable-static build a statically linked binary |
|
+ --charset=charset convert the console messages to this character set |
|
+ --language=list a white space or comma separated list of languages for |
|
+ translated man pages, the first language is used for |
|
+ messages and the GUI (the environment variable |
|
+ \$LINGUAS is also honored) [en] |
|
+ (Available: $LANGUAGES all) |
|
+ --with-install=PATH path to a custom install program |
|
+ --enable-color-console enable color console output (UNSUPPORTED) [disable] |
|
+ |
|
+Advanced options: |
|
+ --enable-mmx enable MMX [autodetect] |
|
+ --enable-mmxext enable MMX2 (Pentium III, Athlon) [autodetect] |
|
+ --enable-3dnow enable 3DNow! [autodetect] |
|
+ --enable-3dnowext enable extended 3DNow! [autodetect] |
|
+ --enable-sse enable SSE [autodetect] |
|
+ --enable-sse2 enable SSE2 [autodetect] |
|
+ --enable-ssse3 enable SSSE3 [autodetect] |
|
+ --enable-shm enable shm [autodetect] |
|
+ --enable-altivec enable AltiVec (PowerPC) [autodetect] |
|
+ --enable-armv5te enable DSP extensions (ARM) [autodetect] |
|
+ --enable-armv6 enable ARMv6 (ARM) [autodetect] |
|
+ --enable-iwmmxt enable iWMMXt (ARM) [autodetect] |
|
+ --disable-fastmemcpy disable 3DNow!/SSE/MMX optimized memcpy [enable] |
|
+ --enable-big-endian force byte order to big-endian [autodetect] |
|
+ --enable-debug[=1-3] compile-in debugging information [disable] |
|
+ --enable-profile compile-in profiling information [disable] |
|
+ --disable-sighandler disable sighandler for crashes [enable] |
|
+ --enable-crash-debug enable automatic gdb attach on crash [disable] |
|
+ --enable-dynamic-plugins enable dynamic A/V plugins [disable] |
|
+ |
|
+Hazardous options AKA "DO NOT REPORT ANY BUGS!" |
|
+ --disable-gcc-check disable gcc version checking [enable] |
|
+ |
|
+Use these options if autodetection fails (Options marked with (*) accept |
|
+multiple paths separated by ':'): |
|
+ --extra-libs=FLAGS extra linker flags |
|
+ --extra-libs-mplayer=FLAGS extra linker flags for MPlayer |
|
+ --extra-libs-mencoder=FLAGS extra linker flags for MEncoder |
|
+ --with-extraincdir=DIR extra header search paths in DIR (*) |
|
+ --with-extralibdir=DIR extra linker search paths in DIR (*) |
|
+ --with-xvmclib=NAME adapter-specific library name (e.g. XvMCNVIDIA) |
|
+ |
|
+ --with-freetype-config=PATH path to freetype-config |
|
+ --with-fribidi-config=PATH path to fribidi-config |
|
+ --with-glib-config=PATH path to glib*-config |
|
+ --with-gtk-config=PATH path to gtk*-config |
|
+ --with-sdl-config=PATH path to sdl*-config |
|
+ --with-dvdnav-config=PATH path to dvdnav-config |
|
+ |
|
+This configure script is NOT autoconf-based, even though its output is similar. |
|
+It will try to autodetect all configuration options. If you --enable an option |
|
+it will be forcefully turned on, skipping autodetection. This can break |
|
+compilation, so you need to know what you are doing. |
|
+EOF |
|
+exit 0 |
|
+} #show_help() |
|
+ |
|
+# GOTCHA: the variables below defines the default behavior for autodetection |
|
+# and have - unless stated otherwise - at least 2 states : yes no |
|
+# If autodetection is available then the third state is: auto |
|
+_mmx=auto |
|
+_3dnow=auto |
|
+_3dnowext=auto |
|
+_mmxext=auto |
|
+_sse=auto |
|
+_sse2=auto |
|
+_ssse3=auto |
|
+_cmov=auto |
|
+_fast_cmov=auto |
|
+_armv5te=auto |
|
+_armv6=auto |
|
+_iwmmxt=auto |
|
+_mtrr=auto |
|
+_altivec=auto |
|
+_install=install |
|
+_ranlib=ranlib |
|
+_ldconfig=ldconfig |
|
+_cc=cc |
|
+_ar=ar |
|
+test "$CC" && _cc="$CC" |
|
+_gcc_check=yes |
|
+_as=auto |
|
+_runtime_cpudetection=no |
|
+_cross_compile=auto |
|
+_prefix="/usr/local" |
|
+_libavutil_a=auto |
|
+_libavutil_so=auto |
|
+_libavcodec_a=auto |
|
+_libamr_nb=auto |
|
+_libamr_wb=auto |
|
+_libavdecoders_all=`sed -n 's/^[^#]*DEC.*(.*, *\(.*\)).*/\1_decoder/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]'` |
|
+_libavdecoders=` echo $_libavdecoders_all | sed -e s/LIBFAAD_DECODER// -e s/MPEG4AAC_DECODER// -e s/LIBA52_DECODER// -e s/LIBGSM_DECODER// -e s/LIBGSM_MS_DECODER// -e s/LIBVORBIS_DECODER// ` |
|
+_libavencoders_all=`sed -n 's/^[^#]*ENC.*(.*, *\(.*\)).*/\1_encoder/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]'` |
|
+_libavencoders=` echo $_libavencoders_all | sed -e s/LIBGSM_ENCODER// -e s/LIBGSM_MS_ENCODER// -e s/LIBTHEORA_ENCODER// ` |
|
+_libavparsers_all=`sed -n 's/^[^#]*PARSER.*(.*, *\(.*\)).*/\1_parser/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]'` |
|
+_libavparsers=$_libavparsers_all |
|
+_libavbsfs_all=`sed -n 's/^[^#]*BSF.*(.*, *\(.*\)).*/\1_bsf/p' libavcodec/allcodecs.c | tr '[a-z]' '[A-Z]'` |
|
+_libavbsfs=$_libavbsfs_all |
|
+_libavdemuxers_all=`sed -n 's/^[^#]*DEMUX.*(.*, *\(.*\)).*/\1_demuxer/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]'` |
|
+_libavdemuxers=`echo $_libavdemuxers_all | sed -e s/AUDIO_BEOS_DEMUXER// -e s/OSS_DEMUXER// -e s/DC1394_DEMUXER// -e s/DV1394_DEMUXER// -e s/REDIR_DEMUXER// -e s/RTSP_DEMUXER// -e s/SDP_DEMUXER// -e s/V4L_DEMUXER// -e s/BKTR_DEMUXER// -e s/X11_GRAB_DEVICE_DEMUXER// -e s/V4L2_DEMUXER// -e s/LIBNUT_DEMUXER// -e s/AVISYNTH_DEMUXER// ` |
|
+_libavmuxers_all=`sed -n 's/^[^#]*_MUX.*(.*, *\(.*\)).*/\1_muxer/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]'` |
|
+_libavmuxers=`echo $_libavmuxers_all | sed -e s/AUDIO_BEOS_MUXER// -e s/OSS_MUXER// -e s/RTP_MUXER// ` |
|
+_libavprotocols_all=`sed -n 's/^[^#]*PROTOCOL.*(.*, *\(.*\)).*/\1_protocol/p' libavformat/allformats.c | tr '[a-z]' '[A-Z]'` |
|
+_libavcodec_so=auto |
|
+_libavformat_a=auto |
|
+_libavformat_so=auto |
|
+_libpostproc_a=auto |
|
+_libpostproc_so=auto |
|
+_libavcodec_mpegaudio_hp=yes |
|
+_mencoder=yes |
|
+_mplayer=yes |
|
+_x11=auto |
|
+_xshape=auto |
|
+_dga1=auto |
|
+_dga2=auto |
|
+_xv=auto |
|
+_xvmc=no #auto when complete |
|
+_sdl=auto |
|
+_directx=auto |
|
+_win32waveout=auto |
|
+_nas=auto |
|
+_png=auto |
|
+_jpeg=auto |
|
+_pnm=yes |
|
+_md5sum=yes |
|
+_gif=auto |
|
+_gl=auto |
|
+_ggi=auto |
|
+_ggiwmh=auto |
|
+_aa=auto |
|
+_caca=auto |
|
+_svga=auto |
|
+_vesa=auto |
|
+_fbdev=auto |
|
+_dvb=auto |
|
+_dvbhead=auto |
|
+_dxr2=auto |
|
+_dxr3=auto |
|
+_ivtv=auto |
|
+_v4l2=auto |
|
+_iconv=auto |
|
+_langinfo=auto |
|
+_rtc=auto |
|
+_ossaudio=auto |
|
+_arts=auto |
|
+_esd=auto |
|
+_polyp=auto |
|
+_jack=auto |
|
+_openal=auto |
|
+_libcdio=auto |
|
+_liblzo=auto |
|
+_mad=auto |
|
+_toolame=auto |
|
+_twolame=auto |
|
+_tremor_internal=yes |
|
+_tremor_low=no |
|
+_tremor_external=auto |
|
+_libvorbis=auto |
|
+_speex=auto |
|
+_theora=auto |
|
+_mp3lib=yes |
|
+_liba52=yes |
|
+_libdca=auto |
|
+_libmpeg2=yes |
|
+_faad_internal=auto |
|
+_faad_external=auto |
|
+_faad_fixed=no |
|
+_faac=auto |
|
+_ladspa=auto |
|
+_xmms=no |
|
+_dvdnav=auto |
|
+_dvdnavconfig=dvdnav-config |
|
+_dvdread=auto |
|
+_dvdread_internal=auto |
|
+_libdvdcss_internal=auto |
|
+_xanim=auto |
|
+_real=auto |
|
+_live=auto |
|
+_nemesi=auto |
|
+_native_rtsp=yes |
|
+_xinerama=auto |
|
+_mga=auto |
|
+_xmga=auto |
|
+_vm=auto |
|
+_xf86keysym=auto |
|
+_mlib=no #broken, thus disabled |
|
+_sgiaudio=auto |
|
+_sunaudio=auto |
|
+_alsa=auto |
|
+_fastmemcpy=yes |
|
+_unrarlib=yes |
|
+_win32dll=auto |
|
+_select=yes |
|
+_radio=no |
|
+_radio_capture=no |
|
+_radio_v4l=auto |
|
+_radio_v4l2=auto |
|
+_radio_bsdbt848=auto |
|
+_tv=yes |
|
+_tv_v4l1=auto |
|
+_tv_v4l2=auto |
|
+_tv_bsdbt848=auto |
|
+_tv_teletext=auto |
|
+_pvr=auto |
|
+_network=yes |
|
+_winsock2=auto |
|
+_smbsupport=auto |
|
+_vidix_internal=auto |
|
+_vidix_external=auto |
|
+_joystick=no |
|
+_xvid=auto |
|
+_x264=auto |
|
+_libnut=auto |
|
+_lirc=auto |
|
+_lircc=auto |
|
+_apple_remote=auto |
|
+_gui=no |
|
+_gtk1=no |
|
+_termcap=auto |
|
+_termios=auto |
|
+_3dfx=no |
|
+_s3fb=no |
|
+_tdfxfb=no |
|
+_tdfxvid=no |
|
+_xvr100=auto |
|
+_tga=yes |
|
+_directfb=auto |
|
+_zr=auto |
|
+_bl=no |
|
+_largefiles=no |
|
+#_language=en |
|
+_shm=auto |
|
+_linux_devfs=no |
|
+_charset="UTF-8" |
|
+_dynamic_plugins=no |
|
+_crash_debug=no |
|
+_sighandler=yes |
|
+_libdv=auto |
|
+_cdparanoia=auto |
|
+_cddb=auto |
|
+_big_endian=auto |
|
+_bitmap_font=yes |
|
+_freetype=auto |
|
+_fontconfig=auto |
|
+_menu=no |
|
+_qtx=auto |
|
+_macosx=auto |
|
+_maemo=auto |
|
+_macosx_finder_support=no |
|
+_macosx_bundle=auto |
|
+_sortsub=yes |
|
+_freetypeconfig='freetype-config' |
|
+_fribidi=auto |
|
+_fribidiconfig='fribidi-config' |
|
+_enca=auto |
|
+_inet6=auto |
|
+_gethostbyname2=auto |
|
+_ftp=yes |
|
+_musepack=auto |
|
+_vstream=auto |
|
+_pthreads=auto |
|
+_w32threads=auto |
|
+_ass=auto |
|
+_rpath=no |
|
+_asmalign_pot=auto |
|
+_color_console=no |
|
+_stream_cache=yes |
|
+_def_stream_cache="#define USE_STREAM_CACHE 1" |
|
+_need_shmem=yes |
|
+for ac_option do |
|
+ case "$ac_option" in |
|
+ --help|-help|-h) |
|
+ show_help |
|
+ ;; |
|
+ --prefix=*) |
|
+ _prefix=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --bindir=*) |
|
+ _bindir=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --datadir=*) |
|
+ _datadir=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --mandir=*) |
|
+ _mandir=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --confdir=*) |
|
+ _confdir=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --libdir=*) |
|
+ _libdir=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --codecsdir=*) |
|
+ _codecsdir=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --win32codecsdir=*) |
|
+ _win32codecsdir=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --xanimcodecsdir=*) |
|
+ _xanimcodecsdir=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --realcodecsdir=*) |
|
+ _realcodecsdir=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --with-extraincdir=*) |
|
+ _inc_extra=-I`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -I,g'` |
|
+ ;; |
|
+ --with-extralibdir=*) |
|
+ _ld_extra=-L`echo $ac_option | cut -d '=' -f 2 | sed 's,:, -L,g'` |
|
+ ;; |
|
+ |
|
+ --with-install=*) |
|
+ _install=`echo $ac_option | cut -d '=' -f 2 ` |
|
+ ;; |
|
+ --with-xvmclib=*) |
|
+ _xvmclib=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ |
|
+ --with-sdl-config=*) |
|
+ _sdlconfig=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --with-freetype-config=*) |
|
+ _freetypeconfig=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --with-fribidi-config=*) |
|
+ _fribidiconfig=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --with-gtk-config=*) |
|
+ _gtkconfig=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --with-glib-config=*) |
|
+ _glibconfig=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --with-dvdnav-config=*) |
|
+ _dvdnavconfig=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ |
|
+ --extra-libs=*) |
|
+ _extra_libs=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --extra-libs-mplayer=*) |
|
+ _libs_mplayer=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --extra-libs-mencoder=*) |
|
+ _libs_mencoder=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ |
|
+ --target=*) |
|
+ _target=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --cc=*) |
|
+ _cc=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --host-cc=*) |
|
+ _host_cc=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --as=*) |
|
+ _as=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --ar=*) |
|
+ _ar=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --ranlib=*) |
|
+ _ranlib=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --charset=*) |
|
+ _charset=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --language=*) |
|
+ _language=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ |
|
+ --enable-static) |
|
+ _ld_static='-static' |
|
+ ;; |
|
+ --disable-static) |
|
+ _ld_static='' |
|
+ ;; |
|
+ --enable-profile) |
|
+ _profile='-p' |
|
+ ;; |
|
+ --disable-profile) |
|
+ _profile= |
|
+ ;; |
|
+ --enable-debug) |
|
+ _debug='-g' |
|
+ ;; |
|
+ --enable-debug=*) |
|
+ _debug=`echo $_echo_n '-g'$_echo_c; echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --disable-debug) |
|
+ _debug= |
|
+ ;; |
|
+ --enable-gcc-check) _gcc_check=yes ;; |
|
+ --disable-gcc-check) _gcc_check=no ;; |
|
+ --enable-runtime-cpudetection) _runtime_cpudetection=yes ;; |
|
+ --disable-runtime-cpudetection) _runtime_cpudetection=no ;; |
|
+ --enable-cross-compile) _cross_compile=yes ;; |
|
+ --disable-cross-compile) _cross_compile=no ;; |
|
+ --enable-mencoder) _mencoder=yes ;; |
|
+ --disable-mencoder) _mencoder=no ;; |
|
+ --enable-mplayer) _mplayer=yes ;; |
|
+ --disable-mplayer) _mplayer=no ;; |
|
+ --enable-dynamic-plugins) _dynamic_plugins=yes ;; |
|
+ --disable-dynamic-plugins) _dynamic_plugins=no ;; |
|
+ --enable-x11) _x11=yes ;; |
|
+ --disable-x11) _x11=no ;; |
|
+ --enable-xshape) _xshape=yes ;; |
|
+ --disable-xshape) _xshape=no ;; |
|
+ --enable-xv) _xv=yes ;; |
|
+ --disable-xv) _xv=no ;; |
|
+ --enable-xvmc) _xvmc=yes ;; |
|
+ --disable-xvmc) _xvmc=no ;; |
|
+ --enable-sdl) _sdl=yes ;; |
|
+ --disable-sdl) _sdl=no ;; |
|
+ --enable-directx) _directx=yes ;; |
|
+ --disable-directx) _directx=no ;; |
|
+ --enable-win32waveout) _win32waveout=yes ;; |
|
+ --disable-win32waveout) _win32waveout=no ;; |
|
+ --enable-nas) _nas=yes ;; |
|
+ --disable-nas) _nas=no ;; |
|
+ --enable-png) _png=yes ;; |
|
+ --disable-png) _png=no ;; |
|
+ --enable-jpeg) _jpeg=yes ;; |
|
+ --disable-jpeg) _jpeg=no ;; |
|
+ --enable-pnm) _pnm=yes ;; |
|
+ --disable-pnm) _pnm=no ;; |
|
+ --enable-md5sum) _md5sum=yes ;; |
|
+ --disable-md5sum) _md5sum=no ;; |
|
+ --enable-gif) _gif=yes ;; |
|
+ --disable-gif) _gif=no ;; |
|
+ --enable-gl) _gl=yes ;; |
|
+ --disable-gl) _gl=no ;; |
|
+ --enable-ggi) _ggi=yes ;; |
|
+ --disable-ggi) _ggi=no ;; |
|
+ --enable-ggiwmh) _ggiwmh=yes ;; |
|
+ --disable-ggiwmh) _ggiwmh=no ;; |
|
+ --enable-aa) _aa=yes ;; |
|
+ --disable-aa) _aa=no ;; |
|
+ --enable-caca) _caca=yes ;; |
|
+ --disable-caca) _caca=no ;; |
|
+ --enable-svga) _svga=yes ;; |
|
+ --disable-svga) _svga=no ;; |
|
+ --enable-vesa) _vesa=yes ;; |
|
+ --disable-vesa) _vesa=no ;; |
|
+ --enable-fbdev) _fbdev=yes ;; |
|
+ --disable-fbdev) _fbdev=no ;; |
|
+ --enable-dvb) _dvb=yes ;; |
|
+ --disable-dvb) _dvb=no ;; |
|
+ --enable-dvbhead) _dvbhead=yes ;; |
|
+ --disable-dvbhead) _dvbhead=no ;; |
|
+ --enable-dxr2) _dxr2=yes ;; |
|
+ --disable-dxr2) _dxr2=no ;; |
|
+ --enable-dxr3) _dxr3=yes ;; |
|
+ --disable-dxr3) _dxr3=no ;; |
|
+ --enable-ivtv) _ivtv=yes ;; |
|
+ --disable-ivtv) _ivtv=no ;; |
|
+ --enable-v4l2) _v4l2=yes ;; |
|
+ --disable-v4l2) _v4l2=no ;; |
|
+ --enable-iconv) _iconv=yes ;; |
|
+ --disable-iconv) _iconv=no ;; |
|
+ --enable-langinfo) _langinfo=yes ;; |
|
+ --disable-langinfo) _langinfo=no ;; |
|
+ --enable-rtc) _rtc=yes ;; |
|
+ --disable-rtc) _rtc=no ;; |
|
+ --enable-libdv) _libdv=yes ;; |
|
+ --disable-libdv) _libdv=no ;; |
|
+ --enable-ossaudio) _ossaudio=yes ;; |
|
+ --disable-ossaudio) _ossaudio=no ;; |
|
+ --enable-arts) _arts=yes ;; |
|
+ --disable-arts) _arts=no ;; |
|
+ --enable-esd) _esd=yes ;; |
|
+ --disable-esd) _esd=no ;; |
|
+ --enable-polyp) _polyp=yes ;; |
|
+ --disable-polyp) _polyp=no ;; |
|
+ --enable-jack) _jack=yes ;; |
|
+ --disable-jack) _jack=no ;; |
|
+ --enable-openal) _openal=yes ;; |
|
+ --disable-openal) _openal=no ;; |
|
+ --enable-mad) _mad=yes ;; |
|
+ --disable-mad) _mad=no ;; |
|
+ --enable-toolame) _toolame=yes ;; |
|
+ --disable-toolame) _toolame=no ;; |
|
+ --enable-twolame) _twolame=yes ;; |
|
+ --disable-twolame) _twolame=no ;; |
|
+ --enable-libcdio) _libcdio=yes ;; |
|
+ --disable-libcdio) _libcdio=no ;; |
|
+ --enable-liblzo) _liblzo=yes ;; |
|
+ --disable-liblzo) _liblzo=no ;; |
|
+ --enable-libvorbis) _libvorbis=yes ;; |
|
+ --disable-libvorbis) _libvorbis=no ;; |
|
+ --enable-speex) _speex=yes ;; |
|
+ --disable-speex) _speex=no ;; |
|
+ --enable-tremor-internal) _tremor_internal=yes ;; |
|
+ --disable-tremor-internal) _tremor_internal=no ;; |
|
+ --enable-tremor-low) _tremor_low=yes ;; |
|
+ --disable-tremor-low) _tremor_low=no ;; |
|
+ --enable-tremor-external) _tremor_external=yes ;; |
|
+ --disable-tremor-external) _tremor_external=no ;; |
|
+ --enable-theora) _theora=yes ;; |
|
+ --disable-theora) _theora=no ;; |
|
+ --enable-mp3lib) _mp3lib=yes ;; |
|
+ --disable-mp3lib) _mp3lib=no ;; |
|
+ --enable-liba52) _liba52=yes ;; |
|
+ --disable-liba52) _liba52=no ;; |
|
+ --enable-libdca) _libdca=yes ;; |
|
+ --disable-libdca) _libdca=no ;; |
|
+ --enable-libmpeg2) _libmpeg2=yes ;; |
|
+ --disable-libmpeg2) _libmpeg2=no ;; |
|
+ --enable-musepack) _musepack=yes ;; |
|
+ --disable-musepack) _musepack=no ;; |
|
+ --enable-faad-internal) _faad_internal=yes ;; |
|
+ --disable-faad-internal) _faad_internal=no ;; |
|
+ --enable-faad-external) _faad_external=yes ;; |
|
+ --disable-faad-external) _faad_external=no ;; |
|
+ --enable-faad-fixed) _faad_fixed=yes ;; |
|
+ --disable-faad-fixed) _faad_fixed=no ;; |
|
+ --enable-faac) _faac=yes ;; |
|
+ --disable-faac) _faac=no ;; |
|
+ --enable-ladspa) _ladspa=yes ;; |
|
+ --disable-ladspa) _ladspa=no ;; |
|
+ --enable-xmms) _xmms=yes ;; |
|
+ --disable-xmms) _xmms=no ;; |
|
+ --enable-dvdread) _dvdread=yes ;; |
|
+ --disable-dvdread) _dvdread=no ;; |
|
+ --enable-dvdread-internal) _dvdread_internal=yes ;; |
|
+ --disable-dvdread-internal) _dvdread_internal=no ;; |
|
+ --enable-libdvdcss-internal) _libdvdcss_internal=yes ;; |
|
+ --disable-libdvdcss-internal) _libdvdcss_internal=no ;; |
|
+ --enable-dvdnav) _dvdnav=yes ;; |
|
+ --disable-dvdnav) _dvdnav=no ;; |
|
+ --enable-xanim) _xanim=yes ;; |
|
+ --disable-xanim) _xanim=no ;; |
|
+ --enable-real) _real=yes ;; |
|
+ --disable-real) _real=no ;; |
|
+ --enable-live) _live=yes ;; |
|
+ --disable-live) _live=no ;; |
|
+ --enable-nemesi) _nemesi=yes ;; |
|
+ --disable-nemesi) _nemesi=no ;; |
|
+ --enable-xinerama) _xinerama=yes ;; |
|
+ --disable-xinerama) _xinerama=no ;; |
|
+ --enable-mga) _mga=yes ;; |
|
+ --disable-mga) _mga=no ;; |
|
+ --enable-xmga) _xmga=yes ;; |
|
+ --disable-xmga) _xmga=no ;; |
|
+ --enable-vm) _vm=yes ;; |
|
+ --disable-vm) _vm=no ;; |
|
+ --enable-xf86keysym) _xf86keysym=yes ;; |
|
+ --disable-xf86keysym) _xf86keysym=no ;; |
|
+ --enable-mlib) _mlib=yes ;; |
|
+ --disable-mlib) _mlib=no ;; |
|
+ --enable-sunaudio) _sunaudio=yes ;; |
|
+ --disable-sunaudio) _sunaudio=no ;; |
|
+ --enable-sgiaudio) _sgiaudio=yes ;; |
|
+ --disable-sgiaudio) _sgiaudio=no ;; |
|
+ --enable-alsa) _alsa=yes ;; |
|
+ --disable-alsa) _alsa=no ;; |
|
+ --enable-tv) _tv=yes ;; |
|
+ --disable-tv) _tv=no ;; |
|
+ --enable-tv-bsdbt848) _tv_bsdbt848=yes ;; |
|
+ --disable-tv-bsdbt848) _tv_bsdbt848=no ;; |
|
+ --enable-tv-v4l1) _tv_v4l1=yes ;; |
|
+ --disable-tv-v4l1) _tv_v4l1=no ;; |
|
+ --enable-tv-v4l2) _tv_v4l2=yes ;; |
|
+ --disable-tv-v4l2) _tv_v4l2=no ;; |
|
+ --enable-tv-teletext) _tv_teletext=yes ;; |
|
+ --disable-tv-teletext) _tv_teletext=no ;; |
|
+ --enable-radio) _radio=yes ;; |
|
+ --enable-radio-capture) _radio_capture=yes ;; |
|
+ --disable-radio-capture) _radio_capture=no ;; |
|
+ --disable-radio) _radio=no ;; |
|
+ --enable-radio-v4l) _radio_v4l=yes ;; |
|
+ --disable-radio-v4l) _radio_v4l=no ;; |
|
+ --enable-radio-v4l2) _radio_v4l2=yes ;; |
|
+ --disable-radio-v4l2) _radio_v4l2=no ;; |
|
+ --enable-radio-bsdbt848) _radio_bsdbt848=yes ;; |
|
+ --disable-radio-bsdbt848) _radio_bsdbt848=no ;; |
|
+ --enable-pvr) _pvr=yes ;; |
|
+ --disable-pvr) _pvr=no ;; |
|
+ --enable-fastmemcpy) _fastmemcpy=yes ;; |
|
+ --disable-fastmemcpy) _fastmemcpy=no ;; |
|
+ --enable-network) _network=yes ;; |
|
+ --disable-network) _network=no ;; |
|
+ --enable-winsock2) _winsock2=yes ;; |
|
+ --disable-winsock2) _winsock2=no ;; |
|
+ --enable-smb) _smbsupport=yes ;; |
|
+ --disable-smb) _smbsupport=no ;; |
|
+ --enable-vidix-internal) _vidix_internal=yes ;; |
|
+ --disable-vidix-internal) _vidix_internal=no ;; |
|
+ --enable-vidix-external) _vidix_external=yes ;; |
|
+ --disable-vidix-external) _vidix_external=no ;; |
|
+ --with-vidix-drivers=*) |
|
+ _vidix_drivers=`echo $ac_option | cut -d '=' -f 2` |
|
+ ;; |
|
+ --enable-joystick) _joystick=yes ;; |
|
+ --disable-joystick) _joystick=no ;; |
|
+ --enable-xvid) _xvid=yes ;; |
|
+ --disable-xvid) _xvid=no ;; |
|
+ --enable-x264) _x264=yes ;; |
|
+ --disable-x264) _x264=no ;; |
|
+ --enable-libnut) _libnut=yes ;; |
|
+ --disable-libnut) _libnut=no ;; |
|
+ --enable-libavutil_a) _libavutil_a=yes ;; |
|
+ --disable-libavutil_a) _libavutil_a=no ;; |
|
+ --enable-libavutil_so) _libavutil_so=yes ;; |
|
+ --disable-libavutil_so) _libavutil_so=no ;; |
|
+ --enable-libavcodec_a) _libavcodec_a=yes ;; |
|
+ --disable-libavcodec_a) _libavcodec_a=no ;; |
|
+ --enable-libavcodec_so) _libavcodec_so=yes ;; |
|
+ --disable-libavcodec_so) _libavcodec_so=no ;; |
|
+ --enable-libamr_nb) _libamr_nb=yes ;; |
|
+ --disable-libamr_nb) _libamr_nb=no ;; |
|
+ --enable-libamr_wb) _libamr_wb=yes ;; |
|
+ --disable-libamr_wb) _libamr_wb=no ;; |
|
+ --enable-decoder=*) _libavdecoders="$_libavdecoders `echo $ac_option | cut -d '=' -f 2`" ;; |
|
+ --disable-decoder=*) _libavdecoders=`echo $_libavdecoders | sed "s/\`echo $ac_option | cut -d '=' -f 2\`//g"` ;; |
|
+ --enable-encoder=*) _libavencoders="$_libavencoders `echo $ac_option | cut -d '=' -f 2`" ;; |
|
+ --disable-encoder=*) _libavencoders=`echo $_libavencoders | sed "s/\`echo $ac_option | cut -d '=' -f 2\`//g"` ;; |
|
+ --enable-parser=*) _libavparsers="$_libavparsers `echo $ac_option | cut -d '=' -f 2`" ;; |
|
+ --disable-parser=*) _libavparsers=`echo $_libavparsers | sed "s/\`echo $ac_option | cut -d '=' -f 2\`//g"` ;; |
|
+ --enable-demuxer=*) _libavdemuxers="$_libavdemuxers `echo $ac_option | cut -d '=' -f 2`" ;; |
|
+ --disable-demuxer=*) _libavdemuxers=`echo $_libavdemuxers | sed "s/\`echo $ac_option | cut -d '=' -f 2\`//g"` ;; |
|
+ --enable-muxer=*) _libavmuxers="$_libavmuxers `echo $ac_option | cut -d '=' -f 2`" ;; |
|
+ --disable-muxer=*) _libavmuxers=`echo $_libavmuxers | sed "s/\`echo $ac_option | cut -d '=' -f 2\`//g"` ;; |
|
+ --enable-libavformat_a) _libavformat_a=yes ;; |
|
+ --disable-libavformat_a) _libavformat_a=no ;; |
|
+ --enable-libavformat_so) _libavformat_so=yes ;; |
|
+ --disable-libavformat_so) _libavformat_so=no ;; |
|
+ --enable-libpostproc_a) _libpostproc_a=yes ;; |
|
+ --disable-libpostproc_a) _libpostproc_a=no ;; |
|
+ --enable-libpostproc_so) _libpostproc_so=yes ;; |
|
+ --disable-libpostproc_so) _libpostproc_so=no ;; |
|
+ --enable-libavcodec_mpegaudio_hp) _libavcodec_mpegaudio_hp=yes ;; |
|
+ --disable-libavcodec_mpegaudio_hp) _libavcodec_mpegaudio_hp=no ;; |
|
+ |
|
+ --enable-lirc) _lirc=yes ;; |
|
+ --disable-lirc) _lirc=no ;; |
|
+ --enable-lircc) _lircc=yes ;; |
|
+ --disable-lircc) _lircc=no ;; |
|
+ --enable-apple-remote) _apple_remote=yes ;; |
|
+ --disable-apple-remote) _apple_remote=no ;; |
|
+ --enable-gui) _gui=yes ;; |
|
+ --disable-gui) _gui=no ;; |
|
+ --enable-gtk1) _gtk1=yes ;; |
|
+ --disable-gtk1) _gtk1=no ;; |
|
+ --enable-termcap) _termcap=yes ;; |
|
+ --disable-termcap) _termcap=no ;; |
|
+ --enable-termios) _termios=yes ;; |
|
+ --disable-termios) _termios=no ;; |
|
+ --enable-3dfx) _3dfx=yes ;; |
|
+ --disable-3dfx) _3dfx=no ;; |
|
+ --enable-s3fb) _s3fb=yes ;; |
|
+ --disable-s3fb) _s3fb=no ;; |
|
+ --enable-tdfxfb) _tdfxfb=yes ;; |
|
+ --disable-tdfxfb) _tdfxfb=no ;; |
|
+ --disable-tdfxvid) _tdfxvid=no ;; |
|
+ --enable-tdfxvid) _tdfxvid=yes ;; |
|
+ --disable-xvr100) _xvr100=no ;; |
|
+ --enable-xvr100) _xvr100=yes ;; |
|
+ --disable-tga) _tga=no ;; |
|
+ --enable-tga) _tga=yes ;; |
|
+ --enable-directfb) _directfb=yes ;; |
|
+ --disable-directfb) _directfb=no ;; |
|
+ --enable-zr) _zr=yes ;; |
|
+ --disable-zr) _zr=no ;; |
|
+ --enable-bl) _bl=yes ;; |
|
+ --disable-bl) _bl=no ;; |
|
+ --enable-mtrr) _mtrr=yes ;; |
|
+ --disable-mtrr) _mtrr=no ;; |
|
+ --enable-largefiles) _largefiles=yes ;; |
|
+ --disable-largefiles) _largefiles=no ;; |
|
+ --enable-shm) _shm=yes ;; |
|
+ --disable-shm) _shm=no ;; |
|
+ --enable-select) _select=yes ;; |
|
+ --disable-select) _select=no ;; |
|
+ --enable-linux-devfs) _linux_devfs=yes ;; |
|
+ --disable-linux-devfs) _linux_devfs=no ;; |
|
+ --enable-cdparanoia) _cdparanoia=yes ;; |
|
+ --disable-cdparanoia) _cdparanoia=no ;; |
|
+ --enable-cddb) _cddb=yes ;; |
|
+ --disable-cddb) _cddb=no ;; |
|
+ --enable-big-endian) _big_endian=yes ;; |
|
+ --disable-big-endian) _big_endian=no ;; |
|
+ --enable-bitmap-font) _bitmap_font=yes ;; |
|
+ --disable-bitmap-font) _bitmap_font=no ;; |
|
+ --enable-freetype) _freetype=yes ;; |
|
+ --disable-freetype) _freetype=no ;; |
|
+ --enable-fontconfig) _fontconfig=yes ;; |
|
+ --disable-fontconfig) _fontconfig=no ;; |
|
+ --enable-unrarlib) _unrarlib=yes ;; |
|
+ --disable-unrarlib) _unrarlib=no ;; |
|
+ --enable-ftp) _ftp=yes ;; |
|
+ --disable-ftp) _ftp=no ;; |
|
+ --enable-vstream) _vstream=yes ;; |
|
+ --disable-vstream) _vstream=no ;; |
|
+ --enable-pthreads) _pthreads=yes ;; |
|
+ --disable-pthreads) _pthreads=no ;; |
|
+ --enable-w32threads) _w32threads=yes ;; |
|
+ --disable-w32threads) _w32threads=no ;; |
|
+ --enable-ass) _ass=yes ;; |
|
+ --disable-ass) _ass=no ;; |
|
+ --enable-rpath) _rpath=yes ;; |
|
+ --disable-rpath) _rpath=no ;; |
|
+ --enable-color-console) _color_console=yes ;; |
|
+ --disable-color-console) _color_console=no ;; |
|
+ |
|
+ --enable-fribidi) _fribidi=yes ;; |
|
+ --disable-fribidi) _fribidi=no ;; |
|
+ |
|
+ --enable-enca) _enca=yes ;; |
|
+ --disable-enca) _enca=no ;; |
|
+ |
|
+ --enable-inet6) _inet6=yes ;; |
|
+ --disable-inet6) _inet6=no ;; |
|
+ |
|
+ --enable-gethostbyname2) _gethostbyname2=yes ;; |
|
+ --disable-gethostbyname2) _gethostbyname2=no ;; |
|
+ |
|
+ --enable-dga1) _dga1=yes ;; |
|
+ --disable-dga1) _dga1=no ;; |
|
+ --enable-dga2) _dga2=yes ;; |
|
+ --disable-dga2) _dga2=no ;; |
|
+ |
|
+ --enable-menu) _menu=yes ;; |
|
+ --disable-menu) _menu=no ;; |
|
+ |
|
+ --enable-qtx) _qtx=yes ;; |
|
+ --disable-qtx) _qtx=no ;; |
|
+ |
|
+ --enable-macosx) _macosx=yes ;; |
|
+ --disable-macosx) _macosx=no ;; |
|
+ --enable-macosx-finder-support) _macosx_finder_support=yes ;; |
|
+ --disable-macosx-finder-support) _macosx_finder_support=no ;; |
|
+ --enable-macosx-bundle) _macosx_bundle=yes;; |
|
+ --disable-macosx-bundle) _macosx_bundle=no;; |
|
+ |
|
+ --enable-maemo) _maemo=yes ;; |
|
+ --disable-maemo) _maemo=no ;; |
|
+ |
|
+ --enable-sortsub) _sortsub=yes ;; |
|
+ --disable-sortsub) _sortsub=no ;; |
|
+ |
|
+ --enable-crash-debug) _crash_debug=yes ;; |
|
+ --disable-crash-debug) _crash_debug=no ;; |
|
+ --enable-sighandler) _sighandler=yes ;; |
|
+ --disable-sighandler) _sighandler=no ;; |
|
+ --enable-win32dll) _win32dll=yes ;; |
|
+ --disable-win32dll) _win32dll=no ;; |
|
+ |
|
+ --enable-sse) _sse=yes ;; |
|
+ --disable-sse) _sse=no ;; |
|
+ --enable-sse2) _sse2=yes ;; |
|
+ --disable-sse2) _sse2=no ;; |
|
+ --enable-ssse3) _ssse3=yes ;; |
|
+ --disable-ssse3) _ssse3=no ;; |
|
+ --enable-mmxext) _mmxext=yes ;; |
|
+ --disable-mmxext) _mmxext=no ;; |
|
+ --enable-3dnow) _3dnow=yes ;; |
|
+ --disable-3dnow) _3dnow=no _3dnowext=no ;; |
|
+ --enable-3dnowext) _3dnow=yes _3dnowext=yes ;; |
|
+ --disable-3dnowext) _3dnowext=no ;; |
|
+ --enable-cmov) _cmov=yes ;; |
|
+ --disable-cmov) _cmov=no ;; |
|
+ --enable-fast-cmov) _fast_cmov=yes ;; |
|
+ --disable-fast-cmov) _fast_cmov=no ;; |
|
+ --enable-altivec) _altivec=yes ;; |
|
+ --disable-altivec) _altivec=no ;; |
|
+ --enable-armv5te) _armv5te=yes ;; |
|
+ --disable-armv5te) _armv5te=no ;; |
|
+ --enable-armv6) _armv6=yes ;; |
|
+ --disable-armv6) _armv6=no ;; |
|
+ --enable-iwmmxt) _iwmmxt=yes ;; |
|
+ --disable-iwmmxt) _iwmmxt=no ;; |
|
+ --enable-mmx) _mmx=yes ;; |
|
+ --disable-mmx) # 3Dnow! and MMX2 require MMX |
|
+ _3dnow=no _3dnowext=no _mmx=no _mmxext=no ;; |
|
+ |
|
+ *) |
|
+ echo "Unknown parameter: $ac_option" |
|
+ exit 1 |
|
+ ;; |
|
+ |
|
+ esac |
|
+done |
|
+ |
|
+# Atmos: moved this here, to be correct, if --prefix is specified |
|
+test -z "$_bindir" && _bindir="$_prefix/bin" |
|
+test -z "$_datadir" && _datadir="$_prefix/share/mplayer" |
|
+test -z "$_mandir" && _mandir="$_prefix/share/man" |
|
+test -z "$_confdir" && _confdir="$_prefix/etc/mplayer" |
|
+test -z "$_libdir" && _libdir="$_prefix/lib" |
|
+ |
|
+# Determine our OS name and CPU architecture |
|
+if test -z "$_target" ; then |
|
+ # OS name |
|
+ system_name=`uname -s 2>&1` |
|
+ case "$system_name" in |
|
+ Linux|FreeBSD|NetBSD|BSD/OS|OpenBSD|SunOS|QNX|Darwin|GNU|BeOS|MorphOS|AIX|AmigaOS) |
|
+ ;; |
|
+ IRIX*) |
|
+ system_name=IRIX |
|
+ ;; |
|
+ GNU/kFreeBSD) |
|
+ system_name=FreeBSD |
|
+ ;; |
|
+ HP-UX*) |
|
+ system_name=HP-UX |
|
+ ;; |
|
+ [cC][yY][gG][wW][iI][nN]*) |
|
+ system_name=CYGWIN |
|
+ ;; |
|
+ MINGW32*) |
|
+ system_name=MINGW32 |
|
+ ;; |
|
+ *) |
|
+ system_name="$system_name-UNKNOWN" |
|
+ ;; |
|
+ esac |
|
+ |
|
+ |
|
+ # host's CPU/instruction set |
|
+ host_arch=`uname -p 2>&1` |
|
+ case "$host_arch" in |
|
+ i386|sparc|ppc|alpha|arm|sh3|mips|vax) |
|
+ ;; |
|
+ powerpc) # Darwin returns 'powerpc' |
|
+ host_arch=ppc |
|
+ ;; |
|
+ *) # uname -p on Linux returns 'unknown' for the processor type, |
|
+ # OpenBSD returns 'Intel Pentium/MMX ("Genuine Intel" 586-class)' |
|
+ |
|
+ # Maybe uname -m (machine hardware name) returns something we |
|
+ # recognize. |
|
+ |
|
+ # x86/x86pc is used by QNX |
|
+ case "`uname -m 2>&1`" in |
|
+ 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 ;; |
|
+ ia64) host_arch=ia64 ;; |
|
+ x86_64|amd64) |
|
+ if [ -n "`$_cc -dumpmachine | sed -n '/^x86_64-/p;/^amd64-/p'`" -a \ |
|
+ -z "`echo $CFLAGS | grep -- -m32`" ]; then |
|
+ host_arch=x86_64 |
|
+ else |
|
+ host_arch=i386 |
|
+ fi |
|
+ ;; |
|
+ macppc|ppc|ppc64) host_arch=ppc ;; |
|
+ alpha) host_arch=alpha ;; |
|
+ sparc) host_arch=sparc ;; |
|
+ sparc64) host_arch=sparc64 ;; |
|
+ parisc*|hppa*|9000*) host_arch=hppa ;; |
|
+ arm*|zaurus|cats) host_arch=arm ;; |
|
+ sh3) host_arch=sh3 ;; |
|
+ s390) host_arch=s390 ;; |
|
+ s390x) host_arch=s390x ;; |
|
+ mips*) host_arch=mips ;; |
|
+ vax) host_arch=vax ;; |
|
+ *) host_arch=UNKNOWN ;; |
|
+ esac |
|
+ ;; |
|
+ esac |
|
+else # if test -z "$_target" |
|
+ system_name=`echo $_target | cut -d '-' -f 2` |
|
+ case "`echo $system_name | tr A-Z a-z`" in |
|
+ linux) system_name=Linux ;; |
|
+ freebsd) system_name=FreeBSD ;; |
|
+ gnu/kfreebsd) system_name=FreeBSD ;; |
|
+ netbsd) system_name=NetBSD ;; |
|
+ bsd/os) system_name=BSD/OS ;; |
|
+ openbsd) system_name=OpenBSD ;; |
|
+ sunos) system_name=SunOS ;; |
|
+ qnx) system_name=QNX ;; |
|
+ morphos) system_name=MorphOS ;; |
|
+ amigaos) system_name=AmigaOS ;; |
|
+ mingw32msvc) system_name=MINGW32 ;; |
|
+ esac |
|
+ # We need to convert underscores so that values like k6-2 and pentium-mmx can be passed |
|
+ host_arch=`echo $_target | cut -d '-' -f 1` |
|
+ if test `echo $host_arch` != "x86_64" ; then |
|
+ host_arch=`echo $host_arch | tr '_' '-'` |
|
+ fi |
|
+fi |
|
+ |
|
+echo "Detected operating system: $system_name" |
|
+echo "Detected host architecture: $host_arch" |
|
+ |
|
+if test "$_runtime_cpudetection" = yes && not x86 && not ppc; then |
|
+ die "Runtime CPU detection only works for x86, x86-64 and PPC!" |
|
+fi |
|
+ |
|
+ |
|
+if openbsd ; then |
|
+ _ldconfig="ldconfig -R" |
|
+fi |
|
+ |
|
+if freebsd ; then |
|
+ _ld_extra="$_ld_extra -L/usr/local/lib" |
|
+ _inc_extra="$_inc_extra -I/usr/local/include" |
|
+fi |
|
+ |
|
+if darwin; then |
|
+ _ld_extra="$_ld_extra -L/usr/local/lib" |
|
+ _inc_extra="$_inc_extra -I/usr/local/include" |
|
+fi |
|
+ |
|
+if aix ; then |
|
+ _ld_extra="$_ld_extra -lC" |
|
+fi |
|
+ |
|
+if irix ; then |
|
+ _ranlib='ar -r' |
|
+elif linux ; then |
|
+ _ranlib='true' |
|
+fi |
|
+ |
|
+if win32 ; then |
|
+ _exesuf=".exe" |
|
+ # -lwinmm is always needed for osdep/timer-win2.c |
|
+ _ld_extra="$_ld_extra -lwinmm" |
|
+ _confwin32='TARGET_WIN32 = yes' |
|
+else |
|
+ _confwin32='TARGET_WIN32 = no' |
|
+fi |
|
+ |
|
+if mingw32 ; then |
|
+ _need_shmem=no |
|
+fi |
|
+ |
|
+if cygwin ; then |
|
+ _def_confwin32='#define WIN32' |
|
+fi |
|
+ |
|
+if amigaos ; then |
|
+ _select=no |
|
+ _sighandler=no |
|
+ _stream_cache=no |
|
+ _def_stream_cache="#undef USE_STREAM_CACHE" |
|
+fi |
|
+ |
|
+if qnx ; then |
|
+ _ld_extra="$_ld_extra -lph" |
|
+fi |
|
+ |
|
+for I in "$TMPDIR" "$TEMPDIR" "/tmp" ; do |
|
+ test "$I" && break |
|
+done |
|
+ |
|
+ |
|
+TMPLOG="configure.log" |
|
+TMPC="$I/mplayer-conf-$RANDOM-$$.c" |
|
+TMPCPP="$I/mplayer-conf-$RANDOM-$$.cpp" |
|
+TMPEXE="$I/mplayer-conf-$RANDOM-$$$_exesuf" |
|
+TMPH="$I/mplayer-conf-$RANDOM-$$.h" |
|
+TMPS="$I/mplayer-conf-$RANDOM-$$.S" |
|
+ |
|
+rm -f "$TMPLOG" |
|
+echo configuration: $_configuration > "$TMPLOG" |
|
+echo >> "$TMPLOG" |
|
+ |
|
+ |
|
+# Check how to call 'head' and 'tail'. Newer versions spit out warnings |
|
+# if used as 'head -1' instead of 'head -n 1', but older versions don't |
|
+# know about '-n'. |
|
+if test "`(echo line1 ; echo line2) | head -1 2>/dev/null`" = "line1" ; then |
|
+ _head() { head -$1 2>/dev/null ; } |
|
+else |
|
+ _head() { head -n $1 2>/dev/null ; } |
|
+fi |
|
+if test "`(echo line1 ; echo line2) | tail -1 2>/dev/null`" = "line2" ; then |
|
+ _tail() { tail -$1 2>/dev/null ; } |
|
+else |
|
+ _tail() { tail -n $1 2>/dev/null ; } |
|
+fi |
|
+ |
|
+# Checking CC version... |
|
+if test "$_gcc_check" = yes ; then |
|
+ # Intel C++ Compilers (no autoselect, use CC=/some/binary ./configure) |
|
+ if test "`basename $_cc`" = "icc" || test "`basename $_cc`" = "ecc"; then |
|
+ echocheck "$_cc version" |
|
+ cc_vendor=intel |
|
+ cc_name=`$_cc -V 2>&1 | _head 1 | cut -d ',' -f 1` |
|
+ cc_version=`$_cc -V 2>&1 | _head 1 | cut -d ',' -f 2 | cut -d ' ' -f 3` |
|
+ _cc_major=`echo $cc_version | cut -d '.' -f 1` |
|
+ _cc_minor=`echo $cc_version | cut -d '.' -f 2` |
|
+ # TODO verify older icc/ecc compatibility |
|
+ case $cc_version in |
|
+ '') |
|
+ cc_version="v. ?.??, bad" |
|
+ cc_verc_fail=yes |
|
+ ;; |
|
+ 8.0|9.1|10.0) |
|
+ cc_version="$cc_version, ok" |
|
+ cc_verc_fail=no |
|
+ ;; |
|
+ *) |
|
+ cc_version="$cc_version, bad" |
|
+ cc_verc_fail=yes |
|
+ ;; |
|
+ esac |
|
+ echores "$cc_version" |
|
+ else |
|
+ for _cc in "$_cc" gcc gcc-3.4 gcc-3.3 gcc-3.2 gcc-3.1 gcc3 gcc-3.0 cc ; do |
|
+ echocheck "$_cc version" |
|
+ cc_vendor=gnu |
|
+ cc_name=`$_cc -v 2>&1 | _tail 1 | cut -d ' ' -f 1` |
|
+ cc_version=`$_cc -dumpversion 2>&1` |
|
+ if test "$?" -gt 0; then |
|
+ cc_version="not found" |
|
+ fi |
|
+ case $cc_version in |
|
+ '') |
|
+ cc_version="v. ?.??, bad" |
|
+ cc_verc_fail=yes |
|
+ ;; |
|
+ 2.95.[2-9]|2.95.[2-9][-.]*|[3-4].*) |
|
+ _cc_major=`echo $cc_version | cut -d '.' -f 1` |
|
+ _cc_minor=`echo $cc_version | cut -d '.' -f 2` |
|
+ _cc_mini=`echo $cc_version | cut -d '.' -f 3` |
|
+ cc_version="$cc_version, ok" |
|
+ cc_verc_fail=no |
|
+ ;; |
|
+ 'not found') |
|
+ cc_verc_fail=yes |
|
+ ;; |
|
+ *) |
|
+ cc_version="$cc_version, bad" |
|
+ cc_verc_fail=yes |
|
+ ;; |
|
+ esac |
|
+ echores "$cc_version" |
|
+ test "$cc_verc_fail" = "no" && break |
|
+ done |
|
+ fi # icc |
|
+ if test "$cc_verc_fail" = yes ; then |
|
+ cat <<EOF |
|
+ |
|
+*** Please downgrade/upgrade C compiler to version gcc-2.95, 3.x or 4.x! *** |
|
+ |
|
+You are not using a supported compiler. We do not have the time to make sure |
|
+everything works with compilers other than the ones we use. Use either the |
|
+same compiler as we do, or use --disable-gcc-check but DO *NOT* REPORT BUGS |
|
+unless you can reproduce them after recompiling with a 2.95.x or 3/4.x version! |
|
+ |
|
+Note for gcc 2.96 users: Some versions of this compiler are known to miscompile |
|
+mplayer and lame (which is used for mencoder). If you get compile errors, |
|
+first upgrade to the latest 2.96 release (minimum 2.96-85) and try again. |
|
+If the problem still exists, try with gcc 3.x (or 2.95.x) *BEFORE* reporting |
|
+bugs! |
|
+ |
|
+ GCC 2.96 IS NOT AND WILL NOT BE SUPPORTED BY US ! |
|
+ |
|
+EOF |
|
+ die "Bad gcc version" |
|
+ fi |
|
+else |
|
+cat <<EOF |
|
+ |
|
+****************************************************************************** |
|
+ |
|
+Hmm. You really want to compile MPlayer with an *UNSUPPORTED* C compiler? |
|
+Ok. You know. Do it. |
|
+ |
|
+DO NOT SEND BUGREPORTS OR COMPLAIN, it's *YOUR* compiler's fault! |
|
+Get ready for mysterious crashes, no-picture bugs, strange noises... REALLY! |
|
+Lame which is used by mencoder produces weird errors, too. |
|
+ |
|
+If you have any problem, install a GCC 2.95.x or 3.x version and try again. |
|
+If the problem _still_ exists, then read DOCS/HTML/en/bugreports.html ! |
|
+ |
|
+ *** DO NOT SEND BUG REPORTS OR COMPLAIN it's *YOUR* compiler's fault! *** |
|
+ |
|
+****************************************************************************** |
|
+ |
|
+EOF |
|
+ |
|
+read _answer |
|
+ |
|
+fi |
|
+echocheck "host cc" |
|
+test "$_host_cc" || _host_cc=$_cc |
|
+echores $_host_cc |
|
+ |
|
+echocheck "cross compilation" |
|
+if test $_cross_compile = auto ; then |
|
+ cat > $TMPC << EOF |
|
+int main() { return 0; } |
|
+EOF |
|
+ _cross_compile=yes |
|
+ cc_check && "$TMPEXE" && _cross_compile=no |
|
+fi |
|
+echores $_cross_compile |
|
+ |
|
+if test $_cross_compile = yes; then |
|
+ tmp_run() { |
|
+ return 0 |
|
+ } |
|
+fi |
|
+ |
|
+# --- |
|
+ |
|
+# now that we know what compiler should be used for compilation, try to find |
|
+# out which assembler is used by the $_cc compiler |
|
+if test "$_as" = auto ; then |
|
+ _as=`$_cc -print-prog-name=as` |
|
+ test -z "$_as" && _as=as |
|
+fi |
|
+ |
|
+# XXX: this should be ok.. |
|
+_cpuinfo="echo" |
|
+ |
|
+if test "$_runtime_cpudetection" = no ; then |
|
+ |
|
+# Cygwin has /proc/cpuinfo, but only supports Intel CPUs |
|
+# FIXME: Remove the cygwin check once AMD CPUs are supported |
|
+if test -r /proc/cpuinfo && not cygwin; then |
|
+ # Linux with /proc mounted, extract CPU information from it |
|
+ _cpuinfo="cat /proc/cpuinfo" |
|
+elif test -r /compat/linux/proc/cpuinfo && not x86_32 ; then |
|
+ # FreeBSD with Linux emulation /proc mounted, |
|
+ # extract CPU information from it |
|
+ _cpuinfo="cat /compat/linux/proc/cpuinfo" |
|
+elif darwin && not x86_32 ; then |
|
+ # use hostinfo on Darwin |
|
+ _cpuinfo="hostinfo" |
|
+elif aix; then |
|
+ # use 'lsattr' on AIX |
|
+ _cpuinfo="lsattr -E -l proc0 -a type" |
|
+elif x86; then |
|
+ # all other OSes try to extract CPU information from a small helper |
|
+ # program cpuinfo instead |
|
+ $_cc -o cpuinfo$_exesuf cpuinfo.c |
|
+ _cpuinfo="./cpuinfo$_exesuf" |
|
+fi |
|
+ |
|
+if x86 ; then |
|
+ # gather more CPU information |
|
+ pname=`$_cpuinfo | grep 'model name' | cut -d ':' -f 2 | _head 1` |
|
+ pvendor=`$_cpuinfo | grep 'vendor_id' | cut -d ':' -f 2 | cut -d ' ' -f 2 | _head 1` |
|
+ pfamily=`$_cpuinfo | grep 'cpu family' | cut -d ':' -f 2 | cut -d ' ' -f 2 | _head 1` |
|
+ pmodel=`$_cpuinfo | grep -v 'model name' | grep 'model' | cut -d ':' -f 2 | cut -d ' ' -f 2 | _head 1` |
|
+ pstepping=`$_cpuinfo | grep 'stepping' | cut -d ':' -f 2 | cut -d ' ' -f 2 | _head 1` |
|
+ |
|
+ exts=`$_cpuinfo | egrep 'features|flags' | cut -d ':' -f 2 | _head 1` |
|
+ |
|
+ pparam=`echo $exts | sed -e s/k6_mtrr/mtrr/ -e s/cyrix_arr/mtrr/ -e s/centaur_mcr/mtrr/ \ |
|
+ -e s/xmm/sse/ -e s/kni/sse/` |
|
+ |
|
+ for ext in $pparam ; do |
|
+ eval test \"\$_$ext\" = auto 2>/dev/null && eval _$ext=kernel_check |
|
+ done |
|
+ |
|
+ # SSE implies MMX2, but not all SSE processors report the mmxext CPU flag. |
|
+ test $_sse = kernel_check && _mmxext=kernel_check |
|
+ |
|
+ echocheck "CPU vendor" |
|
+ echores "$pvendor ($pfamily:$pmodel:$pstepping)" |
|
+ |
|
+ echocheck "CPU type" |
|
+ echores "$pname" |
|
+fi |
|
+ |
|
+fi # test "$_runtime_cpudetection" = no |
|
+ |
|
+if x86 && test "$_runtime_cpudetection" = no ; then |
|
+ extcheck() { |
|
+ if test "$1" = kernel_check ; then |
|
+ echocheck "kernel support of $2" |
|
+ cat > $TMPC <<EOF |
|
+#include <signal.h> |
|
+void catch() { exit(1); } |
|
+int main(void){ |
|
+ signal(SIGILL, catch); |
|
+ __asm__ __volatile__ ("$3":::"memory");return(0); |
|
+} |
|
+EOF |
|
+ |
|
+ if cc_check && tmp_run ; then |
|
+ eval _$2=yes |
|
+ echores "yes" |
|
+ _optimizing="$_optimizing $2" |
|
+ return 0 |
|
+ else |
|
+ eval _$2=no |
|
+ echores "failed" |
|
+ echo "It seems that your kernel does not correctly support $2." |
|
+ echo "To use $2 extensions in MPlayer, you have to upgrade/recompile your kernel!" |
|
+ return 1 |
|
+ fi |
|
+ fi |
|
+ return 0 |
|
+ } |
|
+ |
|
+ extcheck $_mmx "mmx" "emms" |
|
+ extcheck $_mmxext "mmxext" "sfence" |
|
+ extcheck $_3dnow "3dnow" "femms" |
|
+ extcheck $_3dnowext "3dnowext" "pswapd %%mm0, %%mm0" |
|
+ extcheck $_sse "sse" "xorps %%xmm0, %%xmm0" || _gcc3_ext="$_gcc3_ext -mno-sse" |
|
+ extcheck $_sse2 "sse2" "xorpd %%xmm0, %%xmm0" || _gcc3_ext="$_gcc3_ext -mno-sse2" |
|
+ extcheck $_ssse3 "ssse3" "pabsd %%xmm0, %%xmm0" |
|
+ extcheck $_cmov "cmov" "cmovb %%eax,%%ebx" |
|
+ |
|
+ echocheck "mtrr support" |
|
+ if test "$_mtrr" = kernel_check ; then |
|
+ _mtrr="yes" |
|
+ _optimizing="$_optimizing mtrr" |
|
+ fi |
|
+ echores "$_mtrr" |
|
+ |
|
+ if test "$_gcc3_ext" != ""; then |
|
+ # if we had to disable sse/sse2 because the active kernel does not |
|
+ # support this instruction set extension, we also have to tell |
|
+ # gcc3 to not generate sse/sse2 instructions for normal C code |
|
+ cat > $TMPC << EOF |
|
+int main(void) { return 0; } |
|
+EOF |
|
+ cc_check $_march $_gcc3_ext && _march="$_march $_gcc3_ext" |
|
+ fi |
|
+ |
|
+fi |
|
+ |
|
+ |
|
+_arch_all='X86 X86_32 X86_64 IA64 SPARC ARM ARMV4L SH3 POWERPC PPC ALPHA SGI_MIPS PA_RISC S390 S390X VAX BFIN GENERIC' |
|
+case "$host_arch" in |
|
+ i[3-9]86|x86|x86pc|k5|k6|k6-2|k6-3|pentium*|athlon*|i586-i686) |
|
+ _arch='X86 X86_32' |
|
+ _target_arch_x86="ARCH_X86 = yes" |
|
+ _target_arch="ARCH_X86_32 = yes" |
|
+ _def_fast_unaligned='#define HAVE_FAST_UNALIGNED 1' |
|
+ iproc=486 |
|
+ proc=i486 |
|
+ |
|
+ |
|
+ if test "$_runtime_cpudetection" = no ; then |
|
+ case "$pvendor" in |
|
+ AuthenticAMD) |
|
+ case "$pfamily" in |
|
+ 3) proc=i386 iproc=386 ;; |
|
+ 4) proc=i486 iproc=486 ;; |
|
+ 5) iproc=586 # LGB: models are: K5/SSA5 K5 K5 K5 ? ? K6 K6 K6-2 K6-3 |
|
+ # K6 model 13 are the K6-2+ and K6-III+, only differing in cache size. |
|
+ if test "$pmodel" -eq 9 -o "$pmodel" -eq 13; then |
|
+ proc=k6-3 |
|
+ elif test "$pmodel" -eq 5 -o "$pmodel" -eq 10; then |
|
+ proc=geode |
|
+ elif test "$pmodel" -ge 8; then |
|
+ proc=k6-2 |
|
+ elif test "$pmodel" -ge 6; then |
|
+ proc=k6 |
|
+ else |
|
+ proc=i586 |
|
+ fi |
|
+ ;; |
|
+ 6) iproc=686 |
|
+ # It's a bit difficult to determine the correct type of Family 6 |
|
+ # AMD CPUs just from their signature. Instead, we check directly |
|
+ # whether it supports SSE. |
|
+ if test "$_sse" = yes; then |
|
+ # gcc treats athlon-xp, athlon-4 and athlon-mp similarly. |
|
+ proc=athlon-xp |
|
+ else |
|
+ # Again, gcc treats athlon and athlon-tbird similarly. |
|
+ proc=athlon |
|
+ fi |
|
+ ;; |
|
+ 15) iproc=686 |
|
+ # k8 cpu-type only supported in gcc >= 3.4.0, but that will be |
|
+ # caught and remedied in the optimization tests below. |
|
+ proc=k8 |
|
+ ;; |
|
+ |
|
+ *) proc=k8 iproc=686 ;; |
|
+ esac |
|
+ ;; |
|
+ GenuineIntel) |
|
+ case "$pfamily" in |
|
+ 3) proc=i386 iproc=386 ;; |
|
+ 4) proc=i486 iproc=486 ;; |
|
+ 5) iproc=586 |
|
+ if test "$pmodel" -eq 4 || test "$pmodel" -eq 8; then |
|
+ proc=pentium-mmx # 4 is desktop, 8 is mobile |
|
+ else |
|
+ proc=i586 |
|
+ fi |
|
+ ;; |
|
+ 6) iproc=686 |
|
+ if test "$pmodel" -ge 15; then |
|
+ proc=core2 |
|
+ elif test "$pmodel" -eq 9 -o "$pmodel" -ge 13; then |
|
+ proc=pentium-m |
|
+ elif test "$pmodel" -ge 7; then |
|
+ proc=pentium3 |
|
+ elif test "$pmodel" -ge 3; then |
|
+ proc=pentium2 |
|
+ else |
|
+ proc=i686 |
|
+ fi |
|
+ ;; |
|
+ 15) iproc=686 |
|
+ # A nocona in 32-bit mode has no more capabilities than a prescott. |
|
+ if test "$pmodel" -ge 3; then |
|
+ proc=prescott |
|
+ else |
|
+ proc=pentium4 |
|
+ fi |
|
+ test $_fast_cmov = "auto" && _fast_cmov=no |
|
+ ;; |
|
+ *) proc=prescott iproc=686 ;; |
|
+ esac |
|
+ ;; |
|
+ CentaurHauls) |
|
+ case "$pfamily" in |
|
+ 5) iproc=586 |
|
+ if test "$pmodel" -ge 8; then |
|
+ proc=winchip2 |
|
+ elif test "$pmodel" -ge 4; then |
|
+ proc=winchip-c6 |
|
+ else |
|
+ proc=i586 |
|
+ fi |
|
+ ;; |
|
+ 6) iproc=686 |
|
+ if test "$pmodel" -ge 9; then |
|
+ proc=c3-2 |
|
+ else |
|
+ proc=c3 |
|
+ iproc=586 |
|
+ fi |
|
+ ;; |
|
+ *) proc=i686 iproc=i686 ;; |
|
+ esac |
|
+ ;; |
|
+ unknown) |
|
+ case "$pfamily" in |
|
+ 3) proc=i386 iproc=386 ;; |
|
+ 4) proc=i486 iproc=486 ;; |
|
+ *) proc=i586 iproc=586 ;; |
|
+ esac |
|
+ ;; |
|
+ *) |
|
+ proc=i586 iproc=586 ;; |
|
+ esac |
|
+ fi # test "$_runtime_cpudetection" = no |
|
+ |
|
+ |
|
+ # check that gcc supports our CPU, if not, fall back to earlier ones |
|
+ # LGB: check -mcpu and -march swithing step by step with enabling |
|
+ # to fall back till 386. |
|
+ |
|
+ # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead |
|
+ |
|
+ if [ "$cc_vendor" = "gnu" ] && ([ "$_cc_major" -gt 3 ] || ( [ "$_cc_major" = 3 ] && [ "$_cc_minor" -ge 4 ])) ; then |
|
+ cpuopt=-mtune |
|
+ else |
|
+ cpuopt=-mcpu |
|
+ fi |
|
+ |
|
+ echocheck "GCC & CPU optimization abilities" |
|
+cat > $TMPC << EOF |
|
+int main(void) { return 0; } |
|
+EOF |
|
+ if test "$_runtime_cpudetection" = no ; then |
|
+ cc_check -march=native && proc=native |
|
+ if test "$proc" = "k8"; then |
|
+ cc_check -march=$proc $cpuopt=$proc || proc=athlon-xp |
|
+ fi |
|
+ if test "$proc" = "athlon-xp"; then |
|
+ cc_check -march=$proc $cpuopt=$proc || proc=athlon |
|
+ fi |
|
+ if test "$proc" = "k6-3" || test "$proc" = "k6-2"; then |
|
+ cc_check -march=$proc $cpuopt=$proc || proc=k6 |
|
+ fi |
|
+ if test "$proc" = "k6" || test "$proc" = "c3"; then |
|
+ if not cc_check -march=$proc $cpuopt=$proc; then |
|
+ if cc_check -march=i586 $cpuopt=i686; then |
|
+ proc=i586-i686 |
|
+ else |
|
+ proc=i586 |
|
+ fi |
|
+ fi |
|
+ fi |
|
+ if test "$proc" = "prescott" ; then |
|
+ cc_check -march=$proc $cpuopt=$proc || proc=pentium4 |
|
+ fi |
|
+ if test "$proc" = "core2" ; then |
|
+ cc_check -march=$proc $cpuopt=$proc || proc=pentium-m |
|
+ fi |
|
+ if test "$proc" = "pentium4" || test "$proc" = "pentium-m" || test "$proc" = "pentium3" || test "$proc" = "pentium2" || test "$proc" = "athlon" || test "$proc" = "c3-2" || test "$proc" = "geode"; then |
|
+ cc_check -march=$proc $cpuopt=$proc || proc=i686 |
|
+ fi |
|
+ if test "$proc" = "i686" || test "$proc" = "pentium-mmx" || test "$proc" = "winchip-c6" || test "$proc" = "winchip2"; then |
|
+ cc_check -march=$proc $cpuopt=$proc || proc=i586 |
|
+ fi |
|
+ if test "$proc" = "i586"; then |
|
+ cc_check -march=$proc $cpuopt=$proc || proc=i486 |
|
+ fi |
|
+ if test "$proc" = "i486" ; then |
|
+ cc_check -march=$proc $cpuopt=$proc || proc=i386 |
|
+ fi |
|
+ if test "$proc" = "i386" ; then |
|
+ cc_check -march=$proc $cpuopt=$proc || proc=error |
|
+ fi |
|
+ if test "$proc" = "error" ; then |
|
+ echores "CPU optimization disabled. CPU not recognized or your compiler is too old." |
|
+ _mcpu="" |
|
+ _march="" |
|
+ _optimizing="" |
|
+ elif test "$proc" = "i586-i686"; then |
|
+ _march="-march=i586" |
|
+ _mcpu="$cpuopt=i686" |
|
+ _optimizing="$proc" |
|
+ else |
|
+ _march="-march=$proc" |
|
+ _mcpu="$cpuopt=$proc" |
|
+ _optimizing="$proc" |
|
+ fi |
|
+ else # if test "$_runtime_cpudetection" = no |
|
+ _mcpu="$cpuopt=generic" |
|
+ # at least i486 required, for bswap instruction |
|
+ _march="-march=i486" |
|
+ cc_check $_mcpu || _mcpu="$cpuopt=i686" |
|
+ cc_check $_mcpu || _mcpu="" |
|
+ cc_check $_march $_mcpu || _march="" |
|
+ fi |
|
+ |
|
+ ## Gabucino : --target takes effect here (hopefully...) by overwriting |
|
+ ## autodetected mcpu/march parameters |
|
+ if test "$_target" ; then |
|
+ # TODO: it may be a good idea to check GCC and fall back in all cases |
|
+ if test "$host_arch" = "i586-i686"; then |
|
+ _march="-march=i586" |
|
+ _mcpu="$cpuopt=i686" |
|
+ else |
|
+ _march="-march=$host_arch" |
|
+ _mcpu="$cpuopt=$host_arch" |
|
+ fi |
|
+ |
|
+ proc="$host_arch" |
|
+ |
|
+ case "$proc" in |
|
+ i386) iproc=386 ;; |
|
+ i486) iproc=486 ;; |
|
+ i586|k5|k6|k6-2|k6-3|pentium|pentium-mmx) iproc=586 ;; |
|
+ i686|athlon*|pentium*) iproc=686 ;; |
|
+ *) iproc=586 ;; |
|
+ esac |
|
+ fi |
|
+ |
|
+ if test $_cmov = "yes" && test $_fast_cmov = "auto" ; then |
|
+ _fast_cmov="yes" |
|
+ else |
|
+ _fast_cmov="no" |
|
+ fi |
|
+ |
|
+ echores "$proc" |
|
+ ;; |
|
+ |
|
+ ia64) |
|
+ _arch='IA64' |
|
+ _target_arch='ARCH_IA64 = yes' |
|
+ iproc='ia64' |
|
+ proc='' |
|
+ _march='' |
|
+ _mcpu='' |
|
+ _optimizing='' |
|
+ ;; |
|
+ |
|
+ x86_64|amd64) |
|
+ _arch='X86 X86_64' |
|
+ _target_arch='ARCH_X86_64 = yes' |
|
+ _target_arch_x86="ARCH_X86 = yes" |
|
+ _def_fast_unaligned='#define HAVE_FAST_UNALIGNED 1' |
|
+ iproc='x86_64' |
|
+ |
|
+ # gcc >= 3.4.0 doesn't support -mcpu, we have to use -mtune instead |
|
+ if test "$cc_vendor" = "gnu" && test "$_cc_major" -gt 3 -o "$_cc_major" -eq 3 -a "$_cc_minor" -ge 4 ; then |
|
+ cpuopt=-mtune |
|
+ else |
|
+ cpuopt=-mcpu |
|
+ fi |
|
+ if test "$_runtime_cpudetection" = no ; then |
|
+ case "$pvendor" in |
|
+ AuthenticAMD) |
|
+ proc=k8;; |
|
+ GenuineIntel) |
|
+ case "$pfamily" in |
|
+ 6) proc=core2;; |
|
+ *) |
|
+ # 64-bit prescotts exist, but as far as GCC is concerned they |
|
+ # have the same capabilities as a nocona. |
|
+ proc=nocona |
|
+ test $_fast_cmov = "auto" && _fast_cmov=no |
|
+ ;; |
|
+ esac |
|
+ ;; |
|
+ *) |
|
+ proc=error;; |
|
+ esac |
|
+ fi # test "$_runtime_cpudetection" = no |
|
+ |
|
+ echocheck "GCC & CPU optimization abilities" |
|
+cat > $TMPC << EOF |
|
+int main(void) { return 0; } |
|
+EOF |
|
+ # This is a stripped-down version of the i386 fallback. |
|
+ if test "$_runtime_cpudetection" = no ; then |
|
+ cc_check -march=native && proc=native |
|
+ # --- AMD processors --- |
|
+ if test "$proc" = "k8"; then |
|
+ cc_check -march=$proc $cpuopt=$proc || proc=athlon-xp |
|
+ fi |
|
+ # This will fail if gcc version < 3.3, which is ok because earlier |
|
+ # versions don't really support 64-bit on amd64. |
|
+ # Is this a valid assumption? -Corey |
|
+ if test "$proc" = "athlon-xp"; then |
|
+ cc_check -march=$proc $cpuopt=$proc || proc=error |
|
+ fi |
|
+ # --- Intel processors --- |
|
+ if test "$proc" = "core2"; then |
|
+ cc_check -march=$proc $cpuopt=$proc || proc=nocona |
|
+ fi |
|
+ if test "$proc" = "nocona"; then |
|
+ cc_check -march=$proc $cpuopt=$proc || proc=pentium4 |
|
+ fi |
|
+ if test "$proc" = "pentium4"; then |
|
+ cc_check -march=$proc $cpuopt=$proc || proc=error |
|
+ fi |
|
+ |
|
+ _march="-march=$proc" |
|
+ _mcpu="$cpuopt=$proc" |
|
+ if test "$proc" = "error" ; then |
|
+ echores "CPU optimization disabled. CPU not recognized or your compiler is too old." |
|
+ _mcpu="" |
|
+ _march="" |
|
+ fi |
|
+ else # if test "$_runtime_cpudetection" = no |
|
+ # x86-64 is an undocumented option, an intersection of k8 and nocona. |
|
+ _march="-march=x86-64" |
|
+ _mcpu="$cpuopt=generic" |
|
+ cc_check $_mcpu || _mcpu="x86-64" |
|
+ cc_check $_mcpu || _mcpu="" |
|
+ cc_check $_march $_mcpu || _march="" |
|
+ fi |
|
+ |
|
+ _optimizing="" |
|
+ |
|
+ echores "$proc" |
|
+ ;; |
|
+ |
|
+ sparc) |
|
+ _arch='SPARC' |
|
+ _target_arch='ARCH_SPARC = yes' |
|
+ iproc='sparc' |
|
+ if sunos ; then |
|
+ echocheck "CPU type" |
|
+ karch=`uname -m` |
|
+ case "`echo $karch`" in |
|
+ sun4) proc=v7 ;; |
|
+ sun4c) proc=v7 ;; |
|
+ sun4d) proc=v8 ;; |
|
+ sun4m) proc=v8 ;; |
|
+ sun4u) proc=ultrasparc _vis='yes' ;; |
|
+ sun4v) proc=v9 ;; |
|
+ *) proc=v8 ;; |
|
+ esac |
|
+ echores "$proc" |
|
+ else |
|
+ proc=v8 |
|
+ fi |
|
+ _march='' |
|
+ _mcpu="-mcpu=$proc" |
|
+ _optimizing="$proc" |
|
+ ;; |
|
+ |
|
+ sparc64) |
|
+ _arch='SPARC' |
|
+ _target_arch='ARCH_SPARC = yes' |
|
+ _vis='yes' |
|
+ iproc='sparc' |
|
+ proc='ultrasparc' |
|
+ _march='' |
|
+ _mcpu="-mcpu=$proc" |
|
+ _optimizing="$proc" |
|
+ ;; |
|
+ |
|
+ arm|armv4l|armv5tel) |
|
+ _arch='ARM ARMV4L' |
|
+ _target_arch='ARCH_ARMV4L = yes' |
|
+ iproc='arm' |
|
+ proc='' |
|
+ _march='' |
|
+ _mcpu='' |
|
+ _optimizing='' |
|
+ ;; |
|
+ |
|
+ sh3) |
|
+ _arch='SH3' |
|
+ _target_arch='ARCH_SH3 = yes' |
|
+ iproc='sh3' |
|
+ proc='' |
|
+ _march='-m3' |
|
+ _mcpu='-ml' |
|
+ _optimizing='' |
|
+ ;; |
|
+ |
|
+ ppc|powerpc) |
|
+ _arch='POWERPC PPC' |
|
+ _def_dcbzl='#define NO_DCBZL 1' |
|
+ _target_arch='ARCH_POWERPC = yes' |
|
+ iproc='ppc' |
|
+ proc='' |
|
+ _march='' |
|
+ _mcpu='' |
|
+ _optimizing='' |
|
+ |
|
+ echocheck "CPU type" |
|
+ case $system_name in |
|
+ Linux) |
|
+ proc=`$_cpuinfo | grep 'cpu' | cut -d ':' -f 2 | cut -d ',' -f 1 | cut -b 2- | _head 1` |
|
+ if test -n "`$_cpuinfo | grep altivec`"; then |
|
+ test $_altivec = auto && _altivec=yes |
|
+ fi |
|
+ ;; |
|
+ Darwin) |
|
+ proc=`$_cpuinfo | grep "Processor type" | cut -f 3 -d ' ' | sed 's/ppc//'` |
|
+ if [ `sysctl -n hw.vectorunit` -eq 1 -o \ |
|
+ "`sysctl -n hw.optional.altivec 2> /dev/null`" = "1" ]; then |
|
+ test $_altivec = auto && _altivec=yes |
|
+ fi |
|
+ ;; |
|
+ NetBSD) |
|
+ # only gcc 3.4 works reliably with AltiVec code under NetBSD |
|
+ case $cc_version in |
|
+ 2*|3.0*|3.1*|3.2*|3.3*) |
|
+ ;; |
|
+ *) |
|
+ if [ `sysctl -n machdep.altivec` -eq 1 ]; then |
|
+ test $_altivec = auto && _altivec=yes |
|
+ fi |
|
+ ;; |
|
+ esac |
|
+ ;; |
|
+ AIX) |
|
+ proc=`$_cpuinfo | grep 'type' | cut -f 2 -d ' ' | sed 's/PowerPC_//'` |
|
+ ;; |
|
+ esac |
|
+ if test "$_altivec" = yes; then |
|
+ echores "$proc altivec" |
|
+ else |
|
+ _altivec=no |
|
+ echores "$proc" |
|
+ fi |
|
+ |
|
+ echocheck "GCC & CPU optimization abilities" |
|
+ |
|
+ if test -n "$proc"; then |
|
+ case "$proc" in |
|
+ 601) _march='-mcpu=601' _mcpu='-mtune=601' ;; |
|
+ 603) _march='-mcpu=603' _mcpu='-mtune=603' ;; |
|
+ 603e|603ev) _march='-mcpu=603e' _mcpu='-mtune=603e' ;; |
|
+ 604|604e|604r|604ev) _march='-mcpu=604' _mcpu='-mtune=604' ;; |
|
+ 740|740/750|745/755) _march='-mcpu=740' _mcpu='-mtune=740' ;; |
|
+ 750|750CX) _march='-mcpu=750' _mcpu='-mtune=750' ;; |
|
+ POWER) _march='-mcpu=power' _mcpu='-mtune=power' ;; |
|
+ POWER2) _march='-mcpu=power2' _mcpu='-mtune=power2' ;; |
|
+ POWER3) _march='-mcpu=power3' _mcpu='-mtune=power3' ;; |
|
+ *) ;; |
|
+ esac |
|
+ # gcc 3.1(.1) and up supports 7400 and 7450 |
|
+ if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "1" || test "$_cc_major" -ge "4"; then |
|
+ case "$proc" in |
|
+ 7400*|7410*) _march='-mcpu=7400' _mcpu='-mtune=7400' ;; |
|
+ 7447*|7450*|7455*) _march='-mcpu=7450' _mcpu='-mtune=7450' ;; |
|
+ *) ;; |
|
+ esac |
|
+ fi |
|
+ # gcc 3.2 and up supports 970 |
|
+ if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "3" || test "$_cc_major" -ge "4"; then |
|
+ case "$proc" in |
|
+ 970*|PPC970*) _march='-mcpu=970' _mcpu='-mtune=970' |
|
+ _def_dcbzl='#undef NO_DCBZL' ;; |
|
+ *) ;; |
|
+ esac |
|
+ fi |
|
+ # gcc 3.3 and up supports POWER4 |
|
+ if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "3" || test "$_cc_major" -ge "4"; then |
|
+ case "$proc" in |
|
+ POWER4) _march='-mcpu=power4' _mcpu='-mtune=power4' ;; |
|
+ *) ;; |
|
+ esac |
|
+ fi |
|
+ # gcc 3.4 and up supports 440* |
|
+ if test "$_cc_major" -ge "3" && test "$_cc_minor" -ge "4" || test "$_cc_major" -ge "4"; then |
|
+ case "$proc" in |
|
+ 440EP*) _march='-mcpu=440fp' _mcpu='-mtune=440fp' ;; |
|
+ 440G* ) _march='-mcpu=440' _mcpu='-mtune=440' ;; |
|
+ *) ;; |
|
+ esac |
|
+ fi |
|
+ # gcc 4.0 and up supports POWER5 |
|
+ if test "$_cc_major" -ge "4"; then |
|
+ case "$proc" in |
|
+ POWER5*) _march='-mcpu=power5' _mcpu='-mtune=power5' ;; |
|
+ *) ;; |
|
+ esac |
|
+ fi |
|
+ fi |
|
+ |
|
+ if test -n "$_mcpu"; then |
|
+ _optimizing=`echo $_mcpu | cut -c 8-` |
|
+ echores "$_optimizing" |
|
+ else |
|
+ echores "none" |
|
+ fi |
|
+ |
|
+ ;; |
|
+ |
|
+ alpha) |
|
+ _arch='ALPHA' |
|
+ _target_arch='ARCH_ALPHA = yes' |
|
+ iproc='alpha' |
|
+ _march='' |
|
+ |
|
+ echocheck "CPU type" |
|
+ cat > $TMPC << EOF |
|
+int main() { |
|
+ unsigned long ver, mask; |
|
+ asm ("implver %0" : "=r" (ver)); |
|
+ asm ("amask %1, %0" : "=r" (mask) : "r" (-1)); |
|
+ printf("%ld-%x\n", ver, ~mask); |
|
+ return 0; |
|
+} |
|
+EOF |
|
+ $_cc -o "$TMPEXE" "$TMPC" |
|
+ case `"$TMPEXE"` in |
|
+ |
|
+ 0-0) proc="ev4"; _mvi="0";; |
|
+ 1-0) proc="ev5"; _mvi="0";; |
|
+ 1-1) proc="ev56"; _mvi="0";; |
|
+ 1-101) proc="pca56"; _mvi="1";; |
|
+ 2-303) proc="ev6"; _mvi="1";; |
|
+ 2-307) proc="ev67"; _mvi="1";; |
|
+ 2-1307) proc="ev68"; _mvi="1";; |
|
+ esac |
|
+ echores "$proc" |
|
+ |
|
+ echocheck "GCC & CPU optimization abilities" |
|
+ if test "$proc" = "ev68" ; then |
|
+ cc_check -mcpu=$proc || proc=ev67 |
|
+ fi |
|
+ if test "$proc" = "ev67" ; then |
|
+ cc_check -mcpu=$proc || proc=ev6 |
|
+ fi |
|
+ _mcpu="-mcpu=$proc" |
|
+ echores "$proc" |
|
+ |
|
+ _optimizing="$proc" |
|
+ |
|
+ echocheck "MVI instruction support in GCC" |
|
+ if test "$_cc_major" -ge "3" && test "$_mvi" = "1" ; then |
|
+ _def_gcc_mvi_support="#define CAN_COMPILE_ALPHA_MVI 1" |
|
+ echores "yes" |
|
+ else |
|
+ _def_gcc_mvi_support="#undef CAN_COMPILE_ALPHA_MVI" |
|
+ echores "no, GCC = `$_cc -dumpversion 2>&1` (must be >= 3), CPU = $proc (must be pca56 or later)" |
|
+ fi |
|
+ ;; |
|
+ |
|
+ mips) |
|
+ _arch='SGI_MIPS' |
|
+ _target_arch='ARCH_SGI_MIPS = yes' |
|
+ iproc='sgi-mips' |
|
+ proc='' |
|
+ _march='' |
|
+ _mcpu='' |
|
+ _optimizing='' |
|
+ |
|
+ if irix ; then |
|
+ echocheck "CPU type" |
|
+ proc=`hinv -c processor | grep CPU | cut -d " " -f3` |
|
+ case "`echo $proc`" in |
|
+ R3000) _march='-mips1' _mcpu='-mtune=r2000' ;; |
|
+ R4000) _march='-mips3' _mcpu='-mtune=r4000' ;; |
|
+ R4400) _march='-mips3' _mcpu='-mtune=r4400' ;; |
|
+ R4600) _march='-mips3' _mcpu='-mtune=r4600' ;; |
|
+ R5000) _march='-mips4' _mcpu='-mtune=r5000' ;; |
|
+ R8000|R10000|R12000|R14000|R16000) _march='-mips4' _mcpu='-mtune=r8000' ;; |
|
+ esac |
|
+ # gcc < 3.x does not support -mtune. |
|
+ if test "$cc_vendor" = "gnu" && test "$_cc_major" -lt 3 ; then |
|
+ _mcpu='' |
|
+ fi |
|
+ echores "$proc" |
|
+ fi |
|
+ |
|
+ ;; |
|
+ |
|
+ hppa) |
|
+ _arch='PA_RISC' |
|
+ _target_arch='ARCH_PA_RISC = yes' |
|
+ iproc='PA-RISC' |
|
+ proc='' |
|
+ _march='' |
|
+ _mcpu='' |
|
+ _optimizing='' |
|
+ ;; |
|
+ |
|
+ s390) |
|
+ _arch='S390' |
|
+ _target_arch='ARCH_S390 = yes' |
|
+ iproc='390' |
|
+ proc='' |
|
+ _march='' |
|
+ _mcpu='' |
|
+ _optimizing='' |
|
+ ;; |
|
+ |
|
+ s390x) |
|
+ _arch='S390X' |
|
+ _target_arch='ARCH_S390X = yes' |
|
+ iproc='390x' |
|
+ proc='' |
|
+ _march='' |
|
+ _mcpu='' |
|
+ _optimizing='' |
|
+ ;; |
|
+ |
|
+ vax) |
|
+ _arch='VAX' |
|
+ _target_arch='ARCH_VAX = yes' |
|
+ iproc='vax' |
|
+ proc='' |
|
+ _march='' |
|
+ _mcpu='' |
|
+ _optimizing='' |
|
+ ;; |
|
+ |
|
+ generic) |
|
+ _arch='GENERIC' |
|
+ _target_arch='ARCH_GENERIC = yes' |
|
+ iproc='' |
|
+ proc='' |
|
+ _march='' |
|
+ _mcpu='' |
|
+ _optimizing='' |
|
+ ;; |
|
+ |
|
+ *) |
|
+ echo "The architecture of your CPU ($host_arch) is not supported by this configure script" |
|
+ echo "It seems nobody has ported MPlayer to your OS or CPU type yet." |
|
+ die "unsupported architecture $host_arch" |
|
+ ;; |
|
+esac # case "$host_arch" in |
|
+ |
|
+if test "$_runtime_cpudetection" = yes ; then |
|
+ if x86 ; then |
|
+ test "$_cmov" != no && _cmov=yes |
|
+ x86_32 && _cmov=no |
|
+ test "$_mmx" != no && _mmx=yes |
|
+ test "$_3dnow" != no && _3dnow=yes |
|
+ test "$_3dnowext" != no && _3dnowext=yes |
|
+ test "$_mmxext" != no && _mmxext=yes |
|
+ test "$_sse" != no && _sse=yes |
|
+ test "$_sse2" != no && _sse2=yes |
|
+ test "$_ssse3" != no && _ssse3=yes |
|
+ test "$_mtrr" != no && _mtrr=yes |
|
+ fi |
|
+ if ppc; then |
|
+ _altivec=yes |
|
+ fi |
|
+fi |
|
+ |
|
+ |
|
+ |
|
+echocheck "assembler support of -pipe option" |
|
+cat > $TMPC << EOF |
|
+int main(void) { return 0; } |
|
+EOF |
|
+cc_check -pipe && _pipe="-pipe" && echores "yes" || echores "no" |
|
+ |
|
+ |
|
+echocheck "compiler support of named assembler arguments" |
|
+_named_asm_args=yes |
|
+_def_named_asm_args="#define NAMED_ASM_ARGS 1" |
|
+if test "$cc_vendor" = "gnu" && test "$_cc_major" -lt 3 \ |
|
+ -o "$_cc_major" -eq 3 -a "$_cc_minor" = 0 ; then |
|
+ _named_asm_args=no |
|
+ _def_named_asm_args="#undef NAMED_ASM_ARGS" |
|
+fi |
|
+echores $_named_asm_args |
|
+ |
|
+ |
|
+if darwin && test "$cc_vendor" = "gnu" ; then |
|
+echocheck "GCC support of -mstackrealign" |
|
+# GCC 4.2 and some earlier Apple versions support this flag on x86. Since |
|
+# Mac OS X/Intel has an ABI different from Windows this is needed to avoid |
|
+# crashes when loading Win32 DLLs. Unfortunately some gcc versions create |
|
+# wrong code with this flag, but this can be worked around by adding |
|
+# -fno-unit-at-a-time as described in the blog post at |
|
+# http://www.dribin.org/dave/blog/archives/2006/12/05/missing_third_param/ |
|
+cat > $TMPC << EOF |
|
+__attribute__((noinline)) static int foo3(int i1, int i2, int i3) { return i3; } |
|
+int main(void) { return foo3(1,2,3) == 3 ? 0 : 1; } |
|
+EOF |
|
+ cc_check -O4 -mstackrealign && tmp_run && _stackrealign=-mstackrealign |
|
+ test -z "$_stackrealign" && cc_check -O4 -mstackrealign -fno-unit-at-a-time \ |
|
+ && tmp_run && _stackrealign="-mstackrealign -fno-unit-at-a-time" |
|
+ test -n "$_stackrealign" && echores "yes" || echores "no" |
|
+fi # if darwin && test "$cc_vendor" = "gnu" ; then |
|
+ |
|
+ |
|
+# Checking for CFLAGS |
|
+_install_strip="-s" |
|
+if test "$_profile" != "" || test "$_debug" != "" ; then |
|
+ CFLAGS="-W -Wall -O2 $_march $_mcpu $_pipe $_debug $_profile" |
|
+ _install_strip= |
|
+elif test -z "$CFLAGS" ; then |
|
+ if test "$cc_vendor" = "intel" ; then |
|
+ CFLAGS="-O2 $_march $_mcpu $_pipe -fomit-frame-pointer -wd167 -wd556 -wd144" |
|
+ elif test "$cc_vendor" != "gnu" ; then |
|
+ CFLAGS="-O2 $_march $_mcpu $_pipe" |
|
+ else |
|
+ CFLAGS="-Wall -Wno-switch -Wpointer-arith -Wredundant-decls -O4 $_march $_mcpu $_pipe -ffast-math -fomit-frame-pointer" |
|
+ fi |
|
+else |
|
+ _warn_CFLAGS=yes |
|
+fi |
|
+if test -n "$LDFLAGS" ; then |
|
+ _ld_extra="$_ld_extra $LDFLAGS" |
|
+ _warn_CFLAGS=yes |
|
+elif test "$cc_vendor" = "intel" ; then |
|
+ _ld_extra="$_ld_extra -i-static" |
|
+fi |
|
+if test -n "$CPPFLAGS" ; then |
|
+ _inc_extra="$_inc_extra $CPPFLAGS" |
|
+ _warn_CFLAGS=yes |
|
+fi |
|
+ |
|
+ |
|
+ |
|
+if x86_32 ; then |
|
+ # Checking assembler (_as) compatibility... |
|
+ # Added workaround for older as that reads from stdin by default - atmos |
|
+ as_version=`echo '' | $_as -version 2>&1 | sed -n 's/^.*assembler \(version \)*\([0-9.]*\).*$/\2/p'` |
|
+ echocheck "assembler ($_as $as_version)" |
|
+ |
|
+ _pref_as_version='2.9.1' |
|
+ echo 'nop' > $TMPS |
|
+ if test "$_mmx" = yes ; then |
|
+ echo 'emms' >> $TMPS |
|
+ fi |
|
+ if test "$_3dnow" = yes ; then |
|
+ _pref_as_version='2.10.1' |
|
+ echo 'femms' >> $TMPS |
|
+ fi |
|
+ if test "$_3dnowext" = yes ; then |
|
+ _pref_as_version='2.10.1' |
|
+ echo 'pswapd %mm0, %mm0' >> $TMPS |
|
+ fi |
|
+ if test "$_mmxext" = yes ; then |
|
+ _pref_as_version='2.10.1' |
|
+ echo 'movntq %mm0, (%eax)' >> $TMPS |
|
+ fi |
|
+ if test "$_sse" = yes ; then |
|
+ _pref_as_version='2.10.1' |
|
+ echo 'xorps %xmm0, %xmm0' >> $TMPS |
|
+ fi |
|
+ #if test "$_sse2" = yes ; then |
|
+ # _pref_as_version='2.11' |
|
+ # echo 'xorpd %xmm0, %xmm0' >> $TMPS |
|
+ #fi |
|
+ if test "$_cmov" = yes ; then |
|
+ _pref_as_version='2.10.1' |
|
+ echo 'cmovb %eax, %ebx' >> $TMPS |
|
+ fi |
|
+ if test "$_ssse3" = yes ; then |
|
+ _pref_as_version='2.16.92' |
|
+ echo 'pabsd %xmm0, %xmm1' >> $TMPS |
|
+ fi |
|
+ $_as $TMPS -o $TMPEXE > /dev/null 2>&1 || as_verc_fail=yes |
|
+ |
|
+ if test "$as_verc_fail" != yes ; then |
|
+ echores "ok" |
|
+ else |
|
+ _res_comment="Upgrade binutils to ${_pref_as_version} or use --disable-ssse3 etc." |
|
+ echores "failed" |
|
+ die "obsolete binutils version" |
|
+ fi |
|
+ |
|
+fi #if x86_32 |
|
+ |
|
+echocheck ".align is a power of two" |
|
+if test "$_asmalign_pot" = auto ; then |
|
+_asmalign_pot=no |
|
+cat > $TMPC << EOF |
|
+main() { asm (".align 3"); } |
|
+EOF |
|
+cc_check && _asmalign_pot=yes |
|
+fi |
|
+if test "$_asmalign_pot" = "yes" ; then |
|
+ _def_asmalign_pot='#define ASMALIGN(ZEROBITS) ".align " #ZEROBITS "\n\t"' |
|
+else |
|
+ _def_asmalign_pot='#define ASMALIGN(ZEROBITS) ".align 1<<" #ZEROBITS "\n\t"' |
|
+fi |
|
+echores $_asmalign_pot |
|
+ |
|
+ |
|
+#FIXME: This should happen before the check for CFLAGS.. |
|
+if ppc ; then |
|
+ |
|
+ # check if altivec is supported by the compiler, and how to enable it |
|
+ |
|
+ _altivec_gcc_flags='' |
|
+ |
|
+ if test "$_altivec" = yes -o "$_runtime_cpudetection" = yes ; then |
|
+ echocheck "GCC altivec support" |
|
+ |
|
+ p='' |
|
+ cat > $TMPC << EOF |
|
+int main() { |
|
+ return 0; |
|
+} |
|
+EOF |
|
+ FSF_flags='-maltivec -mabi=altivec' |
|
+ Darwin_flags='-faltivec -D__APPLE_ALTIVEC__' |
|
+ |
|
+ # check for Darwin-style flags first, since |
|
+ # gcc-3.3 (August Update from Apple) on MacOS 10.2.8 |
|
+ # accepts but ignores FSF-style flags... |
|
+ |
|
+ if test -z "$p"; then |
|
+ cc_check $Darwin_flags && p='Darwin' |
|
+ fi |
|
+ if test -z "$p"; then |
|
+ cc_check $FSF_flags && p='FSF' |
|
+ fi |
|
+ |
|
+ case $p in |
|
+ FSF) _altivec_gcc_flags="$FSF_flags" _altivec=yes ;; |
|
+ Darwin) _altivec_gcc_flags="$Darwin_flags" _altivec=yes ;; |
|
+ *) _altivec=no ;; |
|
+ esac |
|
+ |
|
+ if test -z "$p"; then |
|
+ p=none |
|
+ else |
|
+ p="$p-style ($_altivec_gcc_flags)" |
|
+ fi |
|
+ |
|
+ echores "$p" |
|
+ fi |
|
+ |
|
+ # check if <altivec.h> should be included |
|
+ |
|
+ _def_altivec_h='#undef HAVE_ALTIVEC_H' |
|
+ |
|
+ if test "$_altivec" = yes ; then |
|
+ echocheck "altivec.h" |
|
+ cat > $TMPC << EOF |
|
+#include <altivec.h> |
|
+int main(void) { return 0; } |
|
+EOF |
|
+ _have_altivec_h=no |
|
+ cc_check $_altivec_gcc_flags && _have_altivec_h=yes |
|
+ if test "$_have_altivec_h" = yes ; then |
|
+ _def_altivec_h='#define HAVE_ALTIVEC_H 1' |
|
+ fi |
|
+ echores "$_have_altivec_h" |
|
+ fi |
|
+ |
|
+ # disable runtime cpudetection if |
|
+ # - we cannot generate altivec code |
|
+ # - altivec is disabled by the user |
|
+ |
|
+ if test "$_runtime_cpudetection" = yes -a "$_altivec" = no ; then |
|
+ _runtime_cpudetection=no |
|
+ fi |
|
+ |
|
+ # show that we are optimizing for altivec (if enabled and supported) |
|
+ |
|
+ if test "$_runtime_cpudetection" = no -a "$_altivec" = yes ; then |
|
+ _optimizing="$_optimizing altivec" |
|
+ fi |
|
+ |
|
+ # if altivec is enabled, make sure the correct flags turn up in CFLAGS |
|
+ |
|
+ if test "$_altivec" = yes ; then |
|
+ #FIXME: _mcpu is used for CFLAGS, this needs to be set earlier |
|
+ #_mcpu="$_mcpu $_altivec_gcc_flags" |
|
+ CFLAGS="$CFLAGS $_altivec_gcc_flags" |
|
+ fi |
|
+fi |
|
+ |
|
+if arm ; then |
|
+ echocheck "ARMv5TE (Enhanced DSP Extensions)" |
|
+ if test $_armv5te = "auto" ; then |
|
+ cat > $TMPC << EOF |
|
+int main(void) { |
|
+ __asm__ __volatile__ ("qadd r0, r0, r0"); |
|
+} |
|
+EOF |
|
+ _armv5te=no |
|
+ cc_check && _armv5te=yes |
|
+ fi |
|
+ echores "$_armv5te" |
|
+ |
|
+ echocheck "ARMv6 (SIMD instructions)" |
|
+ if test $_armv6 = "auto" ; then |
|
+ cat > $TMPC << EOF |
|
+int main(void) { __asm__ __volatile__ ("sadd16 r0, r0, r0"); } |
|
+EOF |
|
+ _armv6=no |
|
+ cc_check && _armv6=yes |
|
+ fi |
|
+ echores "$_armv6" |
|
+ |
|
+ echocheck "iWMMXt (Intel XScale SIMD instructions)" |
|
+ if test $_iwmmxt = "auto" ; then |
|
+ cat > $TMPC << EOF |
|
+int main(void) { |
|
+ __asm__ __volatile__ ("wunpckelub wr6, wr4"); |
|
+} |
|
+EOF |
|
+ _iwmmxt=no |
|
+ cc_check && _iwmmxt=yes |
|
+ fi |
|
+ echores "$_iwmmxt" |
|
+fi |
|
+ |
|
+_cpuexts_all='ALTIVEC MMX MMX2 3DNOW 3DNOWEX SSE SSE2 SSSE3 FAST_CMOV CMOV ARMV5TE ARMV6 IWMMXT MLIB MMI SH4 VIS MVI' |
|
+test "$_altivec" = yes && _cpuexts="ALTIVEC $_cpuexts" |
|
+test "$_mmx" = yes && _cpuexts="MMX $_cpuexts" |
|
+test "$_mmxext" = yes && _cpuexts="MMX2 $_cpuexts" |
|
+test "$_3dnow" = yes && _cpuexts="3DNOW $_cpuexts" |
|
+test "$_3dnowext" = yes && _cpuexts="3DNOWEX $_cpuexts" |
|
+test "$_sse" = yes && _cpuexts="SSE $_cpuexts" |
|
+test "$_sse2" = yes && _cpuexts="SSE2 $_cpuexts" |
|
+test "$_ssse3" = yes && _cpuexts="SSSE3 $_cpuexts" |
|
+test "$_cmov" = yes && _cpuexts="CMOV $_cpuexts" |
|
+test "$_fast_cmov" = yes && _cpuexts="FAST_CMOV $_cpuexts" |
|
+test "$_armv5te" = yes && _cpuexts="ARMV5TE $_cpuexts" |
|
+test "$_armv6" = yes && _cpuexts="ARMV6 $_cpuexts" |
|
+test "$_iwmmxt" = yes && _cpuexts="IWMMXT $_cpuexts" |
|
+test "$_vis" = yes && _cpuexts="VIS $_cpuexts" |
|
+test "$_mvi" = yes && _cpuexts="MVI $_cpuexts" |
|
+ |
|
+# Checking kernel version... |
|
+if x86_32 && linux ; then |
|
+ _k_verc_problem=no |
|
+ kernel_version=`uname -r 2>&1` |
|
+ echocheck "$system_name kernel version" |
|
+ case "$kernel_version" in |
|
+ '') kernel_version="?.??"; _k_verc_fail=yes;; |
|
+ [0-1].[0-9].[0-9]*|2.[0-3].[0-9]*) |
|
+ _k_verc_problem=yes;; |
|
+ esac |
|
+ if test "$_k_verc_problem" = yes && test "$_sse" = yes ; then |
|
+ _k_verc_fail=yes |
|
+ fi |
|
+ if test "$_k_verc_fail" ; then |
|
+ echores "$kernel_version, fail" |
|
+ echo "WARNING! If you want to run MPlayer on this system, get prepared for problems!" |
|
+ echo "2.2.x has limited SSE support. Upgrade the kernel or use --disable-sse if you" |
|
+ echo "experience crashes. MPlayer tries to autodetect if your kernel correctly" |
|
+ echo "supports SSE, but you have been warned! If you are using a kernel older than" |
|
+ echo "2.2.x you must upgrade it to get SSE support!" |
|
+# die "Your kernel is too old for this CPU." # works fine on some 2.2.x so don't die (later check will test) |
|
+ else |
|
+ echores "$kernel_version, ok" |
|
+ fi |
|
+fi |
|
+ |
|
+###################### |
|
+# MAIN TESTS GO HERE # |
|
+###################### |
|
+ |
|
+ |
|
+echocheck "-lposix" |
|
+cat > $TMPC <<EOF |
|
+int main(void) { return 0; } |
|
+EOF |
|
+if cc_check -lposix ; then |
|
+ _ld_extra="$_ld_extra -lposix" |
|
+ echores "yes" |
|
+else |
|
+ echores "no" |
|
+fi |
|
+ |
|
+echocheck "-lm" |
|
+cat > $TMPC <<EOF |
|
+int main(void) { return 0; } |
|
+EOF |
|
+if cc_check -lm ; then |
|
+ _ld_lm="-lm" |
|
+ echores "yes" |
|
+else |
|
+ _ld_lm="" |
|
+ echores "no" |
|
+fi |
|
+ |
|
+ |
|
+echocheck "langinfo" |
|
+if test "$_langinfo" = auto ; then |
|
+ cat > $TMPC <<EOF |
|
+#include <langinfo.h> |
|
+int main(void) { nl_langinfo(CODESET); return 0; } |
|
+EOF |
|
+ _langinfo=no |
|
+ cc_check && _langinfo=yes |
|
+fi |
|
+if test "$_langinfo" = yes ; then |
|
+ _def_langinfo='#define USE_LANGINFO 1' |
|
+else |
|
+ _def_langinfo='#undef USE_LANGINFO' |
|
+fi |
|
+echores "$_langinfo" |
|
+ |
|
+ |
|
+echocheck "language" |
|
+test -z "$_language" && _language=$LINGUAS |
|
+_language=`echo $_language | sed 's/,/ /g'` |
|
+echo $_language | grep all > /dev/null || LANGUAGES="$_language en" |
|
+for lang in $_language ; do |
|
+ test "$lang" = all && lang=en |
|
+ if test -f "help/help_mp-${lang}.h" ; then |
|
+ _language=$lang |
|
+ break |
|
+ else |
|
+ echo ${_echo_n} "$lang not found, ${_echo_c}" |
|
+ _language=`echo $_language | sed "s/$lang *//"` |
|
+ fi |
|
+done |
|
+test -z "$_language" && _language=en |
|
+_mp_help="help/help_mp-${_language}.h" |
|
+test -f $_mp_help || die "$_mp_help not found" |
|
+for lang in $LANGUAGES ; do |
|
+ if test -f "DOCS/man/$lang/mplayer.1" ; then |
|
+ MAN_LANG="$lang $MAN_LANG" |
|
+ fi |
|
+done |
|
+_doc_lang=$_language |
|
+test -d DOCS/xml/$_doc_lang || _doc_lang=en |
|
+echores "using $_language (man pages: $MAN_LANG)" |
|
+ |
|
+ |
|
+echocheck "enable sighandler" |
|
+if test "$_sighandler" = yes ; then |
|
+ _def_sighandler='#define ENABLE_SIGHANDLER 1' |
|
+else |
|
+ _def_sighandler='#undef ENABLE_SIGHANDLER' |
|
+fi |
|
+echores "$_sighandler" |
|
+ |
|
+echocheck "runtime cpudetection" |
|
+if test "$_runtime_cpudetection" = yes ; then |
|
+ _optimizing="Runtime CPU-Detection enabled" |
|
+ _def_runtime_cpudetection='#define RUNTIME_CPUDETECT 1' |
|
+else |
|
+ _def_runtime_cpudetection='#undef RUNTIME_CPUDETECT' |
|
+fi |
|
+echores "$_runtime_cpudetection" |
|
+ |
|
+ |
|
+echocheck "restrict keyword" |
|
+for restrict_keyword in restrict __restrict __restrict__ ; do |
|
+ echo "void foo(char * $restrict_keyword p); int main(){}" > $TMPC |
|
+ if cc_check; then |
|
+ _def_restrict_keyword=$restrict_keyword |
|
+ break; |
|
+ fi |
|
+done |
|
+if [ -n "$_def_restrict_keyword" ]; then |
|
+ echores "$_def_restrict_keyword" |
|
+else |
|
+ echores "none" |
|
+fi |
|
+# Avoid infinite recursion loop ("#define restrict restrict") |
|
+if [ "$_def_restrict_keyword" != "restrict" ]; then |
|
+ _def_restrict_keyword="#define restrict $_def_restrict_keyword" |
|
+else |
|
+ _def_restrict_keyword="" |
|
+fi |
|
+ |
|
+ |
|
+echocheck "__builtin_expect" |
|
+# GCC branch prediction hint |
|
+cat > $TMPC << EOF |
|
+int foo (int a) { |
|
+ a = __builtin_expect (a, 10); |
|
+ return a == 10 ? 0 : 1; |
|
+} |
|
+int main() { return foo(10) && foo(0); } |
|
+EOF |
|
+_builtin_expect=no |
|
+cc_check && _builtin_expect=yes |
|
+if test "$_builtin_expect" = yes ; then |
|
+ _def_builtin_expect='#define HAVE_BUILTIN_EXPECT 1' |
|
+else |
|
+ _def_builtin_expect='#undef HAVE_BUILTIN_EXPECT' |
|
+fi |
|
+echores "$_builtin_expect" |
|
+ |
|
+ |
|
+echocheck "kstat" |
|
+cat > $TMPC << EOF |
|
+#include <kstat.h> |
|
+int main(void) { (void) kstat_open(); (void) kstat_close(0); return 0; } |
|
+EOF |
|
+_kstat=no |
|
+cc_check -lkstat && _kstat=yes |
|
+if test "$_kstat" = yes ; then |
|
+ _def_kstat="#define HAVE_LIBKSTAT 1" |
|
+ _ld_extra="$_ld_extra -lkstat" |
|
+else |
|
+ _def_kstat="#undef HAVE_LIBKSTAT" |
|
+fi |
|
+echores "$_kstat" |
|
+ |
|
+ |
|
+echocheck "posix4" |
|
+# required for nanosleep on some systems |
|
+cat > $TMPC << EOF |
|
+#include <time.h> |
|
+int main(void) { (void) nanosleep(0, 0); return 0; } |
|
+EOF |
|
+_posix4=no |
|
+cc_check -lposix4 && _posix4=yes |
|
+if test "$_posix4" = yes ; then |
|
+ _ld_extra="$_ld_extra -lposix4" |
|
+fi |
|
+echores "$_posix4" |
|
+ |
|
+echocheck "lrintf" |
|
+cat > $TMPC << EOF |
|
+#include <math.h> |
|
+int main(void) { long (*foo)(float); foo = lrintf; (void)(*foo)(0.0); return 0; } |
|
+EOF |
|
+_lrintf=no |
|
+cc_check -D_GNU_SOURCE $_ld_lm && _lrintf=yes |
|
+if test "$_lrintf" = yes ; then |
|
+ _def_lrintf="#define HAVE_LRINTF 1" |
|
+else |
|
+ _def_lrintf="#undef HAVE_LRINTF" |
|
+fi |
|
+echores "$_lrintf" |
|
+ |
|
+ |
|
+echocheck "mkstemp" |
|
+cat > $TMPC << EOF |
|
+#include <stdlib.h> |
|
+int main(void) { char a; mkstemp(&a); return 0; } |
|
+EOF |
|
+_mkstemp=no |
|
+cc_check && _mkstemp=yes |
|
+if test "$_mkstemp" = yes ; then |
|
+ _def_mkstemp='#define HAVE_MKSTEMP 1' |
|
+else |
|
+ _def_mkstemp='#undef HAVE_MKSTEMP' |
|
+fi |
|
+echores "$_mkstemp" |
|
+ |
|
+ |
|
+echocheck "nanosleep" |
|
+# also check for nanosleep |
|
+cat > $TMPC << EOF |
|
+#include <time.h> |
|
+int main(void) { (void) nanosleep(0, 0); return 0; } |
|
+EOF |
|
+_nanosleep=no |
|
+cc_check && _nanosleep=yes |
|
+if test "$_nanosleep" = yes ; then |
|
+ _def_nanosleep='#define HAVE_NANOSLEEP 1' |
|
+else |
|
+ _def_nanosleep='#undef HAVE_NANOSLEEP' |
|
+fi |
|
+echores "$_nanosleep" |
|
+ |
|
+ |
|
+echocheck "socklib" |
|
+# for Solaris (socket stuff is in -lsocket, gethostbyname and friends in -lnsl): |
|
+# for BeOS (socket stuff is in -lsocket, gethostbyname and friends in -lbind): |
|
+cat > $TMPC << EOF |
|
+#include <netdb.h> |
|
+#include <sys/socket.h> |
|
+int main(void) { (void) gethostbyname(0); (void) socket(AF_INET, SOCK_STREAM, 0); return 0; } |
|
+EOF |
|
+_socklib=no |
|
+for _ld_tmp in "" "-lsocket -lbind" "-lsocket -ldnet" "-lsocket -lnsl" "-lnsl" "-lsocket" ; do |
|
+ cc_check $_ld_tmp && _ld_sock="$_ld_tmp" && _socklib=yes && break |
|
+done |
|
+if test $_winsock2 = auto && not cygwin ; then |
|
+ _winsock2=no |
|
+ cat > $TMPC << EOF |
|
+#include <winsock2.h> |
|
+int main(void) { (void) gethostbyname(0); return 0; } |
|
+EOF |
|
+ cc_check -lws2_32 && _ld_sock="-lws2_32" && _winsock2=yes |
|
+fi |
|
+test "$_ld_sock" && _res_comment="using $_ld_sock" |
|
+echores "$_socklib" |
|
+ |
|
+ |
|
+if test $_winsock2 = yes ; then |
|
+ _ld_sock="-lws2_32" |
|
+ _def_winsock2='#define HAVE_WINSOCK2 1' |
|
+else |
|
+ _def_winsock2='#undef HAVE_WINSOCK2' |
|
+fi |
|
+ |
|
+ |
|
+_use_aton=no |
|
+echocheck "inet_pton()" |
|
+cat > $TMPC << EOF |
|
+#include <sys/types.h> |
|
+#include <sys/socket.h> |
|
+#include <arpa/inet.h> |
|
+int main(void) { (void) inet_pton(0, 0, 0); return 0; } |
|
+EOF |
|
+if test "$_winsock2" = yes ; then |
|
+ _res_comment="using winsock2 functions instead" |
|
+ echores "no" |
|
+elif cc_check $_ld_sock ; then |
|
+ # NOTE: Linux has libresolv but does not need it |
|
+ : |
|
+ _res_comment="using $_ld_sock" |
|
+ echores "yes" |
|
+elif cc_check $_ld_sock -lresolv ; then |
|
+ # NOTE: needed for SunOS at least |
|
+ _ld_sock="$_ld_sock -lresolv" |
|
+ _res_comment="using $_ld_sock" |
|
+ echores "yes" |
|
+else |
|
+ _res_comment="trying inet_aton next" |
|
+ echores "no" |
|
+ |
|
+ echocheck "inet_aton()" |
|
+ cat > $TMPC << EOF |
|
+#include <sys/types.h> |
|
+#include <sys/socket.h> |
|
+#include <arpa/inet.h> |
|
+int main(void) { (void) inet_aton(0, 0); return 0; } |
|
+EOF |
|
+ _use_aton=yes |
|
+ if cc_check $_ld_sock ; then |
|
+ # NOTE: Linux has libresolv but does not need it |
|
+ : |
|
+ _res_comment="using $_ld_sock" |
|
+ elif cc_check $_ld_sock -lresolv ; then |
|
+ # NOTE: needed for SunOS at least |
|
+ _ld_sock="$_ld_sock -lresolv" |
|
+ _res_comment="using $_ld_sock" |
|
+ else |
|
+ _use_aton=no |
|
+ _network=no |
|
+ _res_comme |