changeset 1177:f2516027a346

FreeBSD patch by Vladimir Kushnir <vkushnir@Alfacom.net>
author arpi_esp
date Thu, 21 Jun 2001 00:06:40 +0000
parents 229a54d7e338
children 8b7c7d9aa20a
files DOCS/FREEBSD configure configure.FreeBSD dvdauth.c mplayer.c stream.c vcd_read_fbsd.h
diffstat 7 files changed, 116 insertions(+), 1328 deletions(-) [+]
line wrap: on
line diff
--- a/DOCS/FREEBSD	Wed Jun 20 21:44:51 2001 +0000
+++ b/DOCS/FREEBSD	Thu Jun 21 00:06:40 2001 +0000
@@ -4,12 +4,13 @@
 1. To build the package you will need GNU make (gmake, /usr/ports/devel/gmake), 
 native BSD make will not work.
 
-2. Configure script is different for FreeBSD; use configure.FreeBSD instead.
-
-3. To run mplayer you will need to re-compile the kernel with 
+2. To run mplayer you will need to re-compile the kernel with 
 "options USER_LDT" (unless you are running -CURRENT, where this is default).
 
-4. There's no VCD (well, it is not finished) or DVD support for FreeBSD yet. 
+3. If mplayer complains about "CD-ROM Device '/dev/cdrom' not found!" make a 
+symbolic link : ln -s /dev/<your_cdrom_device> /dev/cdrom 
+
+4. There's no DVD support for FreeBSD yet. 
 Feel free to add them :-)
 
 Enjoy (as do I)!
--- a/configure	Wed Jun 20 21:44:51 2001 +0000
+++ b/configure	Thu Jun 21 00:06:40 2001 +0000
@@ -142,13 +142,18 @@
 	--disable-fastmemcpy    disable 3dnow/sse/mmx optimized memcpy()
 
         --with-x11libdir=DIR    X library files are in DIR
+        --with-x11incdir=DIR    X headerss are in DIR
+                                (only needed if autodetection fails)
         --with-win32libdir=DIR  windows codec files
         --with-csslibdir=DIR    directory contains libcss.so shared library
         --with-cssincdir=DIR    directory contains libcss header file (css.h)
                                 (--with-css* only needed, if libCSS autodetect fails)
         --with-sdl-config=PATH  specify location of sdl-config if it's not in your PATH
                                 (example: --with-sdl-config=/usr/sdl/bin/sdl-config)
-
+        --with-extralibdir=DIR  extra library files (png, SDL) are in DIR
+                                (only needed if autodetection fails)
+        --with-extraincdir=DIR extra headers (png, SDL) are in DIR
+                                (only needed if autodetection fails)
 	--size-x=SIZE		default screen width
 	--size-y=SIZE		default screen height
 EOF
@@ -160,6 +165,15 @@
 echo "You can get detailed help on configure with: $0 --help"
 echo "Please wait while ./configure discovers your software and hardware environment!"
 
+# Determine our OS name and OS dependent libs
+
+system_name=`uname -s 2>&1`
+if [ "$system_name" = "FreeBSD" ]; then
+_archlibs="-rdynamic -pthread"
+else
+_archlibs="-ldl -lpthread"
+fi
+
 # LGB: temporary files
 
 TMPC="mplayer-conf-${RANDOM}-$$-${RANDOM}.c"
@@ -201,9 +215,27 @@
  fi
 fi
 
+_x11incdir=
+if [ -d /usr/include/X11 ]; then
+ _x11incdir=
+elif [ -d /usr/X11R6 ]; then
+ _x11incdir=-I/usr/X11R6/include
+elif [ -d /usr/X11 ]; then
+ _x11incdir=-I/usr/X11/include
+fi
+
+# Lots of stuff are installed under /usr/local
+
+_extralibdir=-L/usr/local/lib
+_extraincdir=-I/usr/local/include
+
 _skip_cc_check=no
 _skip_as_check=no
+if [ "$system_name" = "FreeBSD" ]; then
+_sdlconfig='sdl11-config'
+else
 _sdlconfig='sdl-config'
+fi
 
 for ac_option
 do
@@ -223,6 +255,9 @@
   --with-x11libdir=*)
         _x11libdir=-L`echo $ac_option | cut -d '=' -f 2`
         ;;
+  --with-x11incdir=*)
+        _x11incdir=-I`echo $ac_option | cut -d '=' -f 2`
+        ;;
   --enable-x11)
         _x11=yes
         ;;
@@ -232,6 +267,12 @@
   --with-sdl-config=*)
         _sdlconfig=`echo $ac_option | cut -d '=' -f 2`
         ;;
+  --with-extralibdir=*)
+        _extralibdir=-L`echo $ac_option | cut -d '=' -f 2`
+        ;;
+  --with-extraincdir=*)
+        _extraincdir=-I`echo $ac_option | cut -d '=' -f 2`
+        ;;
  esac
 done
 
@@ -265,6 +306,10 @@
 if [ -r /proc/cpuinfo ]; then
 	# linux with /proc mounted, extract cpu information from it
 	_cpuinfo="cat /proc/cpuinfo"
+elif [ -r /compat/linux/proc/cpuinfo ]; then
+        # FreeBSD with linux emulation /proc mounted, 
+	# extract cpu information from it
+        _cpuinfo="cat /compat/linux/proc/cpuinfo"
 else
 	# all other OS try to extract cpu information from a small helper
 	# program TOOLS/cpuinfo instead
@@ -523,10 +568,15 @@
 #echo "DONE (${proc})."
 
 
-$_cc $TMPC -o $TMPO -lvgagl -lvga > /dev/null 2>&1 && _svga=yes
+$_cc $_extraincdir $_extralibdir $TMPC -o $TMPO -lvgagl -lvga > /dev/null 2>&1 && _svga=yes
 
+if [ "$system_name" = "FreeBSD" ]; then
+$_cc $TMPC -o $TMPO -pthread > /dev/null 2>&1 || \
+ { echo "Lib pthread not found."; rm -f $TMPC $TMPO $TMPS ; exit 1; }
+else
 $_cc $TMPC -o $TMPO -lpthread > /dev/null 2>&1 || \
  { echo "Lib pthread not found."; rm -f $TMPC $TMPO $TMPS ; exit 1; }
+fi
 
 # Atmosfear: added SDL versioncheck and autodetect; removed warnings.
 _sdl=no
@@ -569,7 +619,7 @@
 $_cc $TMPC -o $TMPO -ltermcap > /dev/null 2>&1 && _termcap=yes
 
 _png=no
-$_cc $TMPC -o $TMPO -lpng -lz -lm > /dev/null 2>&1 && _png=yes
+$_cc $_extraincdir $_extralibdir $TMPC -o $TMPO -lpng -lz -lm > /dev/null 2>&1 && _png=yes
 
 _ggi=no
 $_cc $TMPC -o $TMPO -lggi > /dev/null 2>&1 && _ggi=yes
@@ -598,14 +648,23 @@
 $_cc $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lXv $_socklib > /dev/null 2>&1 && _xv=yes
 $_cc $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lXxf86vm $_socklib > /dev/null 2>&1 && _vm=yes
 
+if [ "$system_name" = "FreeBSD" ]; then
+$_cc $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lGL -pthread $_socklib > /dev/null 2>&1 && _gl=yes
+else
 $_cc $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lGL $_socklib > /dev/null 2>&1 && _gl=yes
+fi
 
 cat > $TMPC << EOF
 #include <GL/gl.h>
 int main( void ) { return 0; }
 EOF
+if [ "$system_name" = "FreeBSD" ]; then
+$_cc $_x11incdir $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lGL -pthread $_socklib > /dev/null 2>&1 || \
+ { _gl=no; echo "GL includes not found!";}
+else
 $_cc $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lGL $_socklib > /dev/null 2>&1 || \
  { _gl=no; echo "GL includes not found!";}
+fi
 
 cat > $TMPC << EOF
 #include <stdio.h>
@@ -614,7 +673,7 @@
 int main (void) { return 0;}
 EOF
 
-$_cc $TMPC -o $TMPO -L/usr/X11R6/lib -L/usr/X11/lib -lX11 -lXext -lXxf86dga -lXxf86vm $_socklib > /dev/null 2>&1 && _dga=yes
+$_cc -I/usr/X11R6/unclude $TMPC -o $TMPO -L/usr/X11R6/lib -L/usr/X11/lib -lX11 -lXext -lXxf86dga -lXxf86vm $_socklib > /dev/null 2>&1 && _dga=yes
 # Note: the -lXxf86vm library is the VideoMode extension and though it's
 # not needed for DGA, AFAIK every distribution packages together with DGA
 # stuffs named 'X extensions' or something similar. This check can be usefull
@@ -630,7 +689,7 @@
 EOF
 
 _dga2=no
-$_cc $TMPC -o $TMPO -L/usr/X11R6/lib -L/usr/X11/lib -lX11 -lXext -lXxf86dga -lXxf86vm $_socklib > /dev/null 2>&1 && _dga2=yes
+$_cc $_x11incdir $TMPC -o $TMPO -L/usr/X11R6/lib -L/usr/X11/lib -lX11 -lXext -lXxf86dga -lXxf86vm $_socklib > /dev/null 2>&1 && _dga2=yes
 
 fi
 
@@ -699,7 +758,7 @@
 int main( void ){ return 0; }
 EOF
 
-$_cc -o $TMPO -lesd $TMPC 2> /dev/null || { _esd=no; }
+$_cc $_extraincdir $_extralibdir -o $TMPO -lesd $TMPC 2> /dev/null || { _esd=no; }
 
 # ---
 
@@ -920,6 +979,12 @@
 	;;
   --with-x11libdir=*)
 	;;
+  --with-x11incdir=*)
+        ;;
+  --with-extralibdir=*)
+        ;;
+  --with-extraincdir=*)
+        ;;
   --prefix=*)
 	_prefix=`echo $ac_option | cut -d '=' -f 2`
         ;;
@@ -1001,7 +1066,7 @@
 
 # Checking kernel version...
 _k_verc_problem=no
-system_name=`uname -s 2>&1`
+if [ "$system_name" != "FreeBSD" ];then
 kernel_version=`uname -r 2>&1`
 echo $_echo_n "Checking $system_name kernel version ... $_echo_c"
 case $kernel_version in
@@ -1018,6 +1083,7 @@
 else
 echo "$kernel_version, ok"
 fi
+fi
 
 if [ $_x11 = 'yes' ]; then
  if [ $_mga = 'yes' ]; then
@@ -1067,7 +1133,16 @@
 fi
 
 if [ $_gl = yes ]; then
+   if [ "$system_name" = "FreeBSD" ]; then
+      # Under XFree86 4.x GL port is poorly designed
+      if [ -r /usr/X11R6/bin/XFree86 ]; then
+         _gllib='-lGL -pthread'
+      else
+         _gllib='-lGL'
+      fi
+   else
    _gllib='-lGL'
+   fi
 fi
 
 if [ $_css = yes ]; then
@@ -1219,9 +1294,9 @@
 CC=$_cc
 X11DIR=$_x11libdir
 # OPTFLAGS=-O4 $_profile $_debug -march=$proc -mcpu=$proc -pipe -fomit-frame-pointer -ffast-math
-OPTFLAGS=$CFLAGS
+OPTFLAGS=$CFLAGS $_x11incdir $_extraincdir
 # LIBS=-L/usr/lib -L/usr/local/lib $_x11libdir $_gllib $_sdllib $_ggilib $_dgalib $_x11lib $_xvlib
-X_LIBS=$_x11libdir $_gllib $_sdllib $_ggilib $_dgalib $_x11lib $_xvlib $_vmlib $_svgalib $_libpng $_socklib
+X_LIBS=$_x11libdir $_extralibdir $_gllib $_sdllib $_ggilib $_dgalib $_x11lib $_xvlib $_vmlib $_svgalib $_libpng $_socklib
 TERMCAP_LIB=$_libtermcap
 XMM_LIBS = $_xmmplibs
 LIRC_LIBS = $_lirclibs
@@ -1235,7 +1310,7 @@
 ALSA_LIB = $_alsalib
 ESD_LIB = $_esdlib
 prefix = $_prefix
-ARCH_LIBS = -ldl -lpthread
+ARCH_LIBS = $_archlibs
 STREAM_SRCS = $_streamingsrcs
 
 EOF
--- a/configure.FreeBSD	Wed Jun 20 21:44:51 2001 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1299 +0,0 @@
-#!/bin/sh
-
-#
-# MPlayer configurator.   (C) 2000 Pontscho/fresh!mindworkz
-#				   pontscho@makacs.poliod.hu
-#
-# Changes in reversed order:
-#
-# 2001/05/40 by LGB
-#  - added --prefix support
-#
-# 2001/05/22 by Nick Kurshev
-#  - added definition of CPU clone
-#
-# 2001/04/16 by LGB
-#  - added libcss stuffs
-#
-# 2001/04/15 by Pontscho
-#  - added --disable-select option
-#  - added X11DIR variable in config.mak and fix syncfb Makefile -L/usr/X11/lib bug 
-#
-# 2001/03/24 by Mike Graffam:
-#  - added autodetect code for XF86VidMode, along with explicit --enable-vm
-#
-# 2001/03/22 by Bivanbi:
-#  - new option: --cc  (to specify C compiler path+name)
-#
-# 2001/03/08 by LGB:
-#  - DGA detect-o-matic :)
-#  - '--disable-dga' option to force disabling DGA vo driver compiling into mplayer
-#  - line about '--enable-dga' is added to the help message
-#
-# 2001/02/26 by A'rpi:
-#  - added DGA option:  --enable-dga
-#  - no notify if --with-win32libdir used [Tibcu]
-#
-# 2001/02/25 by LGB:
-#  - TMPDIR or TEMPDIR variable is honored during tests for temporary files
-#  - ChangeLog inside configure was reversed ;-)
-#
-# some changes by A'rpi/ESP-team:
-#  - added 'athlon' target for the new athlongcc [Ian Kumlien]
-#  - applied _win32libdir=-L patch by Magnus Pfeffer
-#
-# some changes by LGB:
-#  - Ehhh, AMD K6-2 returns with cpuid 5 ;-) Changing back Arpi's last change :)
-#    More info: AMD K6-2 reports with family 5, duron with 6, so I attached
-#    much finer CPU type detection based on Linux kernel's one :)
-#    (k5: 5, model<6, k6: 5, model>=6, k7: 6, model=any)
-#  - On some exit point (error) temporary files were not deleted. Fixed.
-#  - $TMP and $TMP2 are renamed to $TMPC and $TMPO ;-)
-#  - Some useless { ... } are removed
-#
-# some changes by A'rpi/ESP-team:
-#  - the --with-win32libdir patch by Aaron Hope applied
-#  - some english bugfix again :)
-#  - cpu type selection changed:
-#    ( k7->k6->k5-> ) || (i686->pentiumpro-> ) pentium-> i486 -> i386 -> error!
-#  - cpu type for AMD/family=5 changed k6->k5
-#
-# some changes by LGB (Gábor Lénárt):
-#  - SOME gcc may support 'k7', so I added tests for ALL CPU type optimization
-#    switches with the ability to find out the best optimization for your CPU.
-#  - Help moved to the begining to avoid tests if user only wants help.
-#  - A one lined help to indicate detailed help for users
-#  - Fixed /tmp race (PIDs can be predicted, I added random numbers as well)
-#
-# some changes by A'rpi/ESP-team:
-#  - some english bugfix :)
-#  - removed _??exists flags, _?? is enough...
-#  - creating only config.mak files instead of whole Makefiles
-#
-# --
-
-
-# LGB: Help moved here.
-
-if [ "$1" = "--help" -o "$1" = "-help" -o "$1" = "-h" ]; then
-cat << EOF
-
-usage: $0 [options]
-
-params:
-        --cc                    use this C compiler to build MPlayer [gcc]
-	--prefix=DIR		use this prefix for installing mplayer [/usr/local]
-	--enable-debug[=1-3]	compile debugging information into mplayer [disable]
-	--enable-profile	compile profiling information into mplayer [disable]
-        --enable-mmx            build with mmx support [autodetect]
-        --enable-mmx2           build with mmx2 support (PIII, Athlon) [autodetect]
-        --enable-3dnow          build with 3dnow! support [autodetect]
-        --enable-3dnowex        build with 3dnow-dsp! support (K7) [autodetect]
-        --enable-sse            build with sse support [autodetect]
-        --enable-gl             build with OpenGL render support [autodetect]
-        --enable-dga            build with DGA support [autodetect]
-        --enable-svga           build with SVGAlib support [autodetect]
-        --enable-sdl            build with SDL render support [autodetect]
-        --enable-mga            build with mga_vid support [autodetect, if /dev/mga_vid
-                                is available]
-	--enable-xmga           build with mga_vid X Window support [autodetect,
-				if both /dev/mga_vid and x11 are available]
-        --enable-xv             build with Xv render support for X 4.x [autodetect]
-	--enable-vm		build with XF86VidMode support for x11 driver
-        --enable-x11            build with X11 render support [autodetect]
-	--enable-fbdev		build with FBDev render support [_not_ autodetected]
-	--enable-mlib		build with MLIB support ( only Solaris )
-
-	--enable-termcap	use termcap database for key codes
-	--enable-xmmp	        use XMMP audio drivers
-	--enable-lirc	        enable LIRC (remote control) support
-
-	--disable-select        disable audio select() support ( for example required this
-	                        option ALSA or Vortex2 driver )
-
-	--disable-dshow         disable DirectShow support (if you don't have
-                                C++ compiler&libs, or you've found dshow codecs
-                                slower than old VfW ones)
-
-	--disable-fastmemcpy    disable 3dnow/sse/mmx optimized memcpy()
-
-        --with-x11libdir=DIR    X library files are in DIR
-        --with-win32libdir=DIR  windows codec files
-        --with-csslibdir=DIR    directory contains libcss.so shared library
-        --with-cssincdir=DIR    directory contains libcss header file (css.h)
-				(--with-css* only needed, if libCSS autodetect fails)
-
-	--size-x=SIZE		default screen width
-	--size-y=SIZE		default screen height
-EOF
-exit 0
-fi
-
-# LGB: Some inital help
-
-echo "You can get detailed help on configure with: $0 --help"
-echo "Please wait while ./configure discovers your software and hardware environment!"
-
-# LGB: temporary files
-
-TMPC="mplayer-conf-${RANDOM}-$$-${RANDOM}.c"
-TMPO="mplayer-conf-${RANDOM}-$$-${RANDOM}.o"
-
-if [ ! -z $TMPDIR ]; then
-	TMPC="${TMPDIR}/${TMPC}"
-	TMPO="${TMPDIR}/${TMPO}"
-elif [ ! -z $TEMPDIR ]; then
-	TMPC="${TEMPDIR}/${TMPC}"
-	TMPO="${TEMPDIR}/${TMPO}"
-else
-	TMPC="/tmp/${TMPC}"
-	TMPO="/tmp/${TMPO}"
-fi
-
-# ---
-
-# config files
-CCONF='config.h'
-MCONF='config.mak'
-
-# ---  Check for C compiler:
-
-_cc=gcc
-_x11=auto
-
-_x11libdir=
-if [ -e /usr/X11R6 ]; then
- _x11libdir=-L/usr/X11R6/lib
-else
- if [ -e /usr/X11 ]; then
-  _x11libdir=-L/usr/X11/lib
- fi
-fi
-
-for ac_option
-do
- case "$ac_option" in
-  --cc=*)
-        _cc=`echo $ac_option | cut -d '=' -f 2`
-        ;;
-  --with-x11libdir=*)
-        _x11libdir=-L`echo $ac_option | cut -d '=' -f 2`
-        ;;
-  --enable-x11)
-        _x11=yes
-        ;;
-  --disable-x11)
-        _x11=no
-        ;;
- esac
-done
-
-# ---
-
-pname=`sysctl -n hw.model`
-pparam=`cat /var/run/dmesg.boot | grep Features | cut -d '<' -f 2 | cut -d '>' -f 1 | sed 's/,/ /g'`
-pvendor=`cat /var/run/dmesg.boot | grep Origin | cut -d '"' -f 2 | cut -d '"' -f 1`
-pfamily=`cat /var/run/dmesg.boot | grep Origin | cut -d '0x' -f 2 | cut -c 2`
-pmodel=`cat /var/run/dmesg.boot | grep Origin | cut -d '0x' -f 2 | cut -c 3`
-pstepping=`cat /var/run/dmesg.boot | grep Stepping | cut -d 'Stepping' -f 2 | cut -c 11`
-
-_mmx=no
-_mmx2=no
-_3dnow=no
-_3dnowex=no
-_mtrr=no
-_sse=no
-
-_mga=no
-_gl=no
-_sdl=no
-_xv=no
-_vm=no
-_xdpms=no
-_3dfx=no
-_syncfb=no
-_mlib=no
-_mpg123=no
-_xmga=no
-_dga=no
-_dga2=no
-_svga=no
-_fbdev=no
-_lirc=no
-_css=no
-_dshow=yes
-_fastmemcpy=yes
-
-_x=1
-_y=1
-
-_gllib=
-_sdllib=
-_xvlib=
-_x11lib=
-
-_select='#define HAVE_AUDIO_SELECT'
-
-_gui=no;
-
-for i in `echo $pparam`; do
-
- case "$i" in
-  3DNow!)
-        _3dnow=yes
-        _mpg123=yes
-        ;;
-  DSP)
-        _3dnow=yes
-        _3dnowex=yes
-        _mpg123=yes
-        ;;
-  MMX)
-        _mmx=yes
-        ;;
-  MTRR)
-        _mtrr=yes
-        ;;
-  SSE)
-        _sse=yes
-        _mmx2=yes
-        ;;
-  SSE2)
-        _sse=yes
-        _mmx2=yes
-        ;;
- esac
-
-done
-
-
-_win32libdirnotify=no
-if [ -e /usr/lib/win32 ]; then
- _win32libdir=/usr/lib/win32
-else
- if [ -e /usr/local/lib/win32 ]; then
-  _win32libdir=/usr/local/lib/win32
- else
-# This is our default:
-  _win32libdir=/usr/lib/win32
-  _win32libdirnotify=yes
- fi
-fi
-
-
-if [ -e /dev/mga_vid ]; then
- _mga=yes
- _syncfb=yes
-fi
-
-proc=pentium
-iproc=586
-
-case "$pvendor" in
- AuthenticAMD)
-   case "$pfamily" in
-    3)
-      proc=i386
-      iproc=386
-      ;;
-    4)
-      proc=i486
-      iproc=486
-      ;;
-    5)
-      if [ $pmodel -ge 6 ]; then	# LGB: models are: K5/SSA5 K5 K5 K5 ? ? K6 K6 K6-2 K6-3 
-    	    proc=k6
-      else
-    	    proc=k5
-      fi
-      iproc=586
-      ;;
-    6|7)				# LGB: Though it seems Athlon CPUs returns with "6"
-      proc=k7
-      iproc=686
-      ;;
-    *)
-      proc=pentium
-      iproc=586
-      ;;
-   esac
-   ;;
- GenuineIntel)
-   case "$pfamily" in
-    3)
-      proc=i386
-      iproc=386
-      ;;
-    4)
-      proc=i486
-      iproc=486
-      ;;
-    5)
-      proc=pentium
-      iproc=586
-      ;;
-    6)
-      proc=i686
-      iproc=686
-      ;;
-    *)
-      proc=pentium
-      iproc=586
-      ;;
-   esac
-   ;;
- unknown)              # added by Gabucino - upon Tibcu's request
-   case "$pfamily" in
-    3)
-      proc=i386
-      iproc=386
-      ;;
-    4)
-      proc=i486
-      iproc=486
-      ;;
-    *)
-      proc=pentium
-      iproc=586
-      ;;
-   esac
-   ;;
- *)
-   proc=pentium
-   iproc=586
-   ;;
-esac
-
-# ---
-
-cat > $TMPC << EOF
-int main( void ) { return 0; }
-EOF
-
-# check that gcc supports our cpu, if not, fallback to pentium
-# LGB: check -mcpu and -march swithing step by step with enabling
-# to fall back till 386.
-
-#echo -n "Checking your GCC CPU optimalization abilities: "
-if [ "$proc" = "k7" ]; then
-#	echo -n "trying k7  "
-	$_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc > /dev/null || proc=athlon
-fi
-if [ "$proc" = "athlon" ]; then
-#	echo -n "trying athlon  "
-	$_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc > /dev/null || proc=k6
-fi
-if [ "$proc" = "k6" ]; then
-#	echo -n "trying k6  "
-	$_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc > /dev/null || proc=k5
-fi
-if [ "$proc" = "k5" ]; then
-#	echo -n "trying k5  "
-	$_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc > /dev/null || proc=pentium
-fi
-if [ "$proc" = "i686" ]; then
-#	echo -n "trying i686  "
-	$_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc > /dev/null || proc=pentiumpro
-fi
-if [ "$proc" = "pentiumpro" ]; then
-#	echo -n "trying pentiumpro  "
-	$_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc > /dev/null || proc=pentium
-fi
-if [ "$proc" = "pentium" ]; then
-#	echo -n "trying pentium  "
-	$_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc > /dev/null || proc=i486
-fi
-if [ "$proc" = "i486" ]; then
-#	echo -n "trying i486  "
-	$_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc > /dev/null || proc=i386
-fi
-if [ "$proc" = "i386" ]; then
-#	echo -n "trying i386  "
-	$_cc $TMPC -o $TMPO -march=$proc -mcpu=$proc > /dev/null || proc=error
-fi
-if [ "$proc" = "error" ]; then
-	echo
-	echo "Your gcc does not support even \"i386\" for '-march' and '-mcpu'." >&2
-	rm -f $TMPC $TMPO
-	exit
-fi
-#echo "DONE (${proc})."
-
-
-$_cc -I/usr/local/include -I/usr/X11R6/include -L/usr/local/lib $TMPC -o $TMPO -lvgagl -lvga > /dev/null && _svga=yes
-
-$_cc $TMPC -o $TMPO -pthread > /dev/null || \
- { echo "Lib pthread not found."; rm -f $TMPC $TMPO ; exit 1; }
-
-# Atmosfear: added SDL versioncheck and autodetect; removed warnings.
-_sdl=no
-if $_cc -I/usr/local/include -I/usr/X11R6/include -L/usr/local/lib $TMPC -o $TMPO -L/usr/lib/ -L/usr/local/lib/ -lSDL-1.1 -pthread > /dev/null ; then
-	if test `sdl11-config --version | sed s/[=[:punct:]=]//g` -gt 116 ; then
-		if test `sdl11-config --version | sed s/[=[:punct:]=]//g` -lt 121 ; then
-			_sdlbuggy='#define BUGGY_SDL'
-		else	
-			_sdlbuggy='#undef BUGGY_SDL'
-		fi	
-		_sdl=yes
-	else
-		_sdl=outdated
-	fi
-fi	
-
-# Atmosfear: added libcss autodetect
-_css=no
-if test -e "/usr/local/lib/libcss.so" ; then
-	_csslibdir="/usr/local/lib/"
-	if test -e "/usr/local/include/css.h" ; then
-		_cssincdir="/usr/local/include"
-		_css=yes
-	fi	
-else
-	if test -e "/usr/lib/libcss.so" ; then
-		_csslibdir="/usr/lib/"
-		if test -e "/usr/include/css.h" ; then
-			_cssincdir="/usr/include/"
-			_css=yes
-		fi	
-	fi
-fi
-	
-_termcap=no
-$_cc -I/usr/local/include -I/usr/X11R6/include -L/usr/local/lib $TMPC -o $TMPO -ltermcap > /dev/null && _termcap=yes
-
-_png=no
-$_cc -I/usr/local/include -I/usr/X11R6/include -L/usr/local/lib $TMPC -o $TMPO -lpng -lz> /dev/null && _png=yes
-
-_binutils=no
-as libac3/downmix/downmix_i386.S -o $TMPO > /dev/null && _binutils=yes
-
-# ----------- Check X11 and related libs (GL, Xxf86vm, Xv, DGA) --------------
-
-if [ $_x11 = auto ]; then
-  _x11=no
-  $_cc -I/usr/local/include -I/usr/X11R6/include -L/usr/local/lib $TMPC -o $TMPO $_x11libdir -lX11 -lXext > /dev/null && _x11=yes
-fi
-
-if [ $_x11 = yes ]; then
-
-$_cc -I/usr/local/include -I/usr/X11R6/include -L/usr/local/lib $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lXdpms > /dev/null && _xdpms=yes
-$_cc -I/usr/local/include -I/usr/X11R6/include -L/usr/local/lib $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lXv > /dev/null && _xv=yes
-$_cc -I/usr/local/include -I/usr/X11R6/include -L/usr/local/lib $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lXxf86vm > /dev/null && _vm=yes
-
-if $_cc -I/usr/local/include -I/usr/X11R6/include -L/usr/local/lib $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lGL > /dev/null; then
-_gl=yes
-elif $_cc -I/usr/local/include -I/usr/X11R6/include -L/usr/local/lib $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lGL -pthread > /dev/null; then
-_gl=yes
-fi
-
-cat > $TMPC << EOF
-#include <GL/gl.h>
-int main( void ) { return 0; }
-EOF
-
-if $_cc -I/usr/local/include -I/usr/X11R6/include -L/usr/local/lib $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lGL > /dev/null; then
-elif $_cc -I/usr/local/include -I/usr/X11R6/include -L/usr/local/lib $TMPC -o $TMPO $_x11libdir -lX11 -lXext -lGL -pthread > /dev/null;then 
-else 
-_gl=no; echo "GL includes not found!"
-fi
-
-cat > $TMPC << EOF
-#include <stdio.h>
-#include <X11/Xlib.h>
-#include <X11/extensions/xf86dga.h>
-int main (void) { return 0;}
-EOF
-
-$_cc -I/usr/local/include -I/usr/X11R6/include -L/usr/local/lib $TMPC -o $TMPO -L/usr/X11R6/lib -L/usr/X11/lib -lX11 -lXext -lXxf86dga -lXxf86vm > /dev/null && _dga=yes
-# Note: the -lXxf86vm library is the VideoMode extension and though it's
-# not needed for DGA, AFAIK every distribution packages together with DGA
-# stuffs named 'X extensions' or something similar. This check can be usefull
-# for further mplayer versions to set resolution by mplayer itself.
-# If you run into problems, remove '-lXxf86vm'.
-
-# Check if DGA is 2.0 or greater
-cat > $TMPC << EOF
-#include <stdio.h>
-#include <X11/Xlib.h>
-#include <X11/extensions/xf86dga.h>
-int main (void) { XDGAMode mode; XDGADevice device; return 0;}
-EOF
-
-_dga2=no
-$_cc -I/usr/local/include -I/usr/X11R6/include -L/usr/local/lib $TMPC -o $TMPO -L/usr/X11R6/lib -L/usr/X11/lib -lX11 -lXext -lXxf86dga -lXxf86vm > /dev/null && _dga2=yes
-
-fi
-
-rm -f $TMPC $TMPO
-
-# ---
-
-# check for the parameters.
-
-_prefix="/usr/local"
-
-for ac_option
-do
- case "$ac_option" in
-  --enable-profile)
-  	_profile='-p'
-	;;
-  --enable-debug)
-  	_debug='-g'
-	;;
-  --enable-debug=*)
-        _debug=`echo -n '-g'; echo $ac_option | cut -d '=' -f 2`
-	;;
-  --enable-css)
-	_css=yes
-	;;
-  --enable-png)
-	_png=yes
-	;;
-  --enable-sse)
-        _sse=yes
-        ;;
-  --enable-3dnow)
-        _3dnow=yes
-        ;;
-  --enable-3dnowex)
-        _3dnow=yes
-        _3dnowex=yes
-        ;;
-  --enable-mmx)
-        _mmx=yes
-        ;;
-  --enable-mmx2)
-        _mmx2=yes
-        ;;
-  --enable-mtrr)
-  	_mtrr=yes
-	;;
-  --enable-gl)
-        _gl=yes
-        ;;
-  --enable-sdl)
-        _sdl=yes
-        ;;
-  --enable-mga)
-        _mga=yes
-        ;;
-  --enable-xmga)
-        _xmga=yes
-        ;;	
-  --enable-svga)
-        _svga=yes
-        ;;
-  --enable-dga)
-        _dga=yes
-        ;;
-  --enable-dga2)
-        _dga2=yes
-        ;;
-  --enable-xv)
-        _xv=yes
-        ;;
-  --enable-vm)
-        _vm=yes
-        ;;
-  --enable-3dfx)
-        _3dfx=yes
-        ;;
-  --enable-syncfb)
-        _syncfb=yes
-        ;;
-  --enable-fbdev)
-  	_fbdev=yes
-	;;
-  --enable-mlib)
-	_mlib=yes
-	;;
-  --enable-termcap)
-	_termcap=yes
-	;;
-  --enable-xmmp)
-	_xmmp=yes
-	;;
-  --enable-lirc)
-	_lirc=yes
-	;;
-  --enable-select)
-        _select='#define HAVE_AUDIO_SELECT'
-	;;
-  --enable-gui)
-  	_gui=yes
-	;;
-  --disable-css)
-	_css=no
-	;;
-  --disable-png)
-	_png=no
-	;;
-  --disable-sse)
-        _sse=no
-        ;;
-  --disable-3dnow)
-        _3dnow=no
-        _3dnowex=no
-        ;;
-  --disable-3dnowex)
-        _3dnowex=no
-        ;;
-  --disable-mmx)
-        _mmx=no
-	_mmx2=no
-        ;;
-  --disable-mmx2)
-	_mmx2=no
-        ;;
-  --disable-mtrr)
-  	_mtrr=no
-	;;
-  --disable-gl)
-        _gl=no
-        ;;
-  --disable-sdl)
-        _sdl=no
-        ;;
-  --disable-mga)
-        _mga=no
-        ;;
-  --disable-xmga)
-        _xmga=no
-        ;;
-  --disable-xv)
-        _xv=no
-        ;;
-  --disable-vm)
-        _vm=no
-        ;;
-  --disable-mlib)
-	_mlib=no
-	;;
-  --disable-svga)
-	_svga=no
-	;;
-  --disable-dga)
-	_dga=no
-	;;
-  --disable-dga2)
-        _dga2=no
-        ;;
-  --disable-fbdev)
-  	_fbdev=no
-	;;
-  --disable-termcap)
-	_termcap=no
-	;;
-  --disable-select)
-        _select='#undef HAVE_AUDIO_SELECT'
-	;;
-  --disable-dshow)
-        _dshow=no
-	;;
-  --disable-fastmemcpy)
-        _fastmemcpy=no
-	;;
-  --disable-gui)
-  	_gui=no
-	;;
-  --with-win32libdir=*)
-        _win32libdir=`echo $ac_option | cut -d '=' -f 2`
-	_win32libdirnotify=no
-        ;;
-  --with-csslibdir=*)
-        _csslibdir=`echo $ac_option | cut -d '=' -f 2`
-	_css='yes';
-	;;
-  --with-cssincdir=*)
-        _cssincdir=`echo $ac_option | cut -d '=' -f 2`
-        _css='yes';
-        ;;
-  --size-x=*)
-	_x=`echo $ac_option | cut -d '=' -f 2`
-	;;
-  --size-y=*)
-	_y=`echo $ac_option | cut -d '=' -f 2`
-	;;
-  --with-x11libdir=*)
-	;;
-  --prefix=*)
-	_prefix=`echo $ac_option | cut -d '=' -f 2`
-        ;;
-  --cc=*)
-	;;
- esac
-done
-
-if [ $_x11 = 'yes' ]; then
- if [ $_mga = 'yes' ]; then
-  _xmga=yes
- fi
-fi
-
-# to screen.
-echo -n "Kernel: "
-uname -a
-echo "Using C compiler: $_cc"
-echo "Install prefix: $_prefix"
-$_cc -v
-as --version | head -n 1
-echo "Checking for cpu vendor ... $pvendor ( $pfamily:$pmodel:$pstepping )"
-echo "Checking for cpu type ... $pname"
-echo "Optimizing to ... $proc"
-echo "Checking for mmx support ... $_mmx"
-echo "Checking for mmx2 support ... $_mmx2"
-echo "Checking for 3dnow support ... $_3dnow"
-echo "Checking for 3dnowex support ... $_3dnowex"
-echo "Checking for sse support ... $_sse"
-echo "Checking for mtrr support ... $_mtrr"
-echo "Screen size ... ${_x}x${_y}"
-echo "Checking for X11 libs ... $_x11libdir"
-echo "Checking mga_vid device ... $_mga"
-echo "Checking for xmga ... $_xmga" 
-echo "Checking for SDL ... $_sdl"
-echo "Checking for OpenGL ... $_gl"
-echo "Checking for Xv ... $_xv"
-echo "Checking for X11 ... $_x11"
-echo "Checking for DGA ... $_dga"
-echo "Checking for DGA 2.0 .. $_dga2"
-echo "Checking for Xf86VM ... $_vm"
-echo "Checking for SVGAlib ... $_svga"
-echo "Checking for FBDev ... $_fbdev"
-echo "Checking for DeCSS support ... $_css"
-echo "Checking for PNG support ... $_png"
-echo "Checking for DirectShow ... $_dshow"
-echo "Checking for fastmemcpy ... $_fastmemcpy"
-# write conf files.
-
-if [ $_gl = yes ]; then
-   if [ -f /usr/X11R6/bin/XFree86 ]; then
-     _gllib='-lGL -pthread'
-   else
-     _gllib='-lGL'
-   fi
-fi
-
-if [ $_css = yes ]; then
-   if [ ! -z $_csslibdir ]; then
-     _csslib="-L${_csslibdir} -lcss"
-   else
-     _csslib='-lcss'
-   fi
-   _css='#define HAVE_LIBCSS'
-   if [ ! -z $_cssincdir ]; then
-     _cssinc="-I${_cssincdir}"
-   else
-     _cssinc=""
-   fi
-else
-   _css='#undef HAVE_LIBCSS'
-   _csslib=''
-   _cssinc=''
-fi
-
-if [ $_dshow = yes ]; then
-   _dshowlib='-Lloader/DirectShow -lDS_Filter -lstdc++'
-   _dshowdep='loader/DirectShow/libDS_Filter.a'
-   _dshow='#define USE_DIRECTSHOW'
-else
-   _dshowlib=''
-   _dshowdep=''
-   _dshow='#undef USE_DIRECTSHOW'
-fi
-
-if [ $_fastmemcpy = yes ]; then
-   _fastmemcpy='#define USE_FASTMEMCPY'
-else
-   _fastmemcpy='#undef USE_FASTMEMCPY'
-fi
-
-if [ $_x11 = yes ]; then
-  if [ $_xdpms = yes ]; then
-    _x11lib='-lX11 -lXext -lXdpms'
-  else
-    _x11lib='-lX11 -lXext'
-  fi
-fi
-
-if [ $_xv = yes ]; then
-  _xvlib='-lXv'
-fi
-
-if [ $_sdl = yes ]; then
-  _sdllib='-L/usr/local/lib -lSDL-1.1 -pthread' 
-fi
-
-if [ $_dga = yes ]; then
-  _dgalib='-lXxf86dga'
-fi
-
-if [ $_svga = yes ]; then
-  _svgalib='-lvgagl -lvga'
-fi
-
-if [ $_vm = yes ]; then
-  _vmlib='-lXxf86vm'
-fi
-
-if [ "$_termcap" = "yes" ]; then
- _termcap='#define USE_TERMCAP'
- _libtermcap='-ltermcap'
-else
- _termcap='#undef USE_TERMCAP'
- _libtermcap=''
-fi
-
-if [ "$_xmmp" = "yes" ]; then
- _xmmpaudio='#define USE_XMMP_AUDIO'
- _xmmplibs='-Llibxmm -lxmm'
-else
- _xmmpaudio='#undef USE_XMMP_AUDIO'
-fi
-
-if [ "$_lirc" = "yes" ]; then
- _lircdefs='#define HAVE_LIRC'
- _lirclibs='-llirc_client'
-else
- _lircdefs='#undef HAVE_LIRC'
- _lirclibs=''
-fi
-
-if [ $_png = yes ]; then
-   _libpng='-L/usr/local/lib -lpng -lz'
-fi
-
-# Checking for CFLAGS
-if [ "$_profile" != "" ] || [ "$_debug" != "" ]; then
- CFLAGS="-O2 -D_THREAD_SAFE -march=$proc -mcpu=$proc $_debug $_profile"
-else
-if test -z "$CFLAGS"; then
- CFLAGS="-O4 -D_THREAD_SAFE -march=$proc -mcpu=$proc -pipe -ffast-math -fomit-frame-pointer"
-fi
-fi
-echo
-echo "Creating $MCONF"
-cat > $MCONF << EOF
-
-# -------- Generated by ./configure -----------
-
-ARCH=FREEBSD
-AR=ar
-CC=$_cc
-X11DIR=$_x11libdir
-# OPTFLAGS=-O4 -D_THREAD_SAFE $_profile $_debug -march=$proc -mcpu=$proc -pipe -fomit-frame-pointer -ffast-math
-OPTFLAGS=$CFLAGS -I/usr/local/include -I/usr/X11R6/include
-# LIBS=-L/usr/lib -L/usr/local/lib $_x11libdir $_gllib $_sdllib $_dgalib $_x11lib $_xvlib
-X_LIBS=$_x11libdir $_gllib $_sdllib $_dgalib $_x11lib $_xvlib $_vmlib $_svgalib $_libpng
-TERMCAP_LIB=$_libtermcap
-XMM_LIBS = $_xmmplibs
-LIRC_LIBS = $_lirclibs
-CSS_LIB = $_csslib
-CSS_INC = $_cssinc
-WIN32_PATH=-DWIN32_PATH=\"$_win32libdir\"
-DS_DEP = $_dshowdep
-DS_LIB = $_dshowlib
-prefix = $_prefix
-ARCH_LIBS = -rdynamic -pthread
-
-EOF
-# echo 'CFLAGS=$(OPTFLAGS) -Wall -DMPG12PLAY' >> config.mak
-
-echo "Creating $CCONF"
-
-if [ "$_mmx" = "yes" ]; then
- _mmx='#define HAVE_MMX'
-else
- _mmx='#undef HAVE_MMX'
-fi
-
-if [ "$_mmx2" = "yes" ]; then
- _mmx2='#define HAVE_MMX2'
-else
- _mmx2='#undef HAVE_MMX2'
-fi
-
-if [ $_3dnow = yes ]; then
- _3dnowm='#define HAVE_3DNOW'
-else
- _3dnowm='#undef HAVE_3DNOW'
-fi
-
-if [ $_3dnowex = yes ]; then
- _3dnowexm='#define HAVE_3DNOWEX'
-else
- _3dnowexm='#undef HAVE_3DNOWEX'
-fi
-
-if [ $_sse = yes ]; then
- _ssem='#define HAVE_SSE'
-else
- _ssem='#undef HAVE_SSE'
-fi
-
-# ---
-
-_vosrc=''
-_aosrc=''
-
-if [ $_png = yes ]; then
- _png='#define HAVE_PNG'
- _vosrc=$_vosrc' vo_png.c'
-else
-   _png='#undef HAVE_PNG'
-fi
-
-
-if [ $_mlib = yes ]; then
- _mlib='#define HAVE_MLIB'
- _vosrc=$_vosrc' yuv2rgb_mlib.c'
-else
- _mlib='#undef HAVE_MLIB'
-fi
-
-# ---
-
-if [ $_gl = yes ]; then
- _gl='#define HAVE_GL'
- _vosrc=$_vosrc' vo_gl.c'
-else
- _gl='#undef HAVE_GL'
-fi
-
-if [ $_sdl = yes ]; then
- _sdldef='#define HAVE_SDL'
- _vosrc=$_vosrc' vo_sdl.c'
- _aosrc=$_aosrc' ao_sdl.c'
-else
- _sdldef='#undef HAVE_SDL'
-fi
-
-if [ $_x11 = yes ]; then
- _x11='#define HAVE_X11'
- _vosrc=$_vosrc' vo_x11.c'
-else
- _x11='#undef HAVE_X11'
-fi
-
-if [ $_xv = yes ]; then
- _xv='#define HAVE_XV'
- _vosrc=$_vosrc' vo_xv.c'
-else
- _xv='#undef HAVE_XV'
-fi
-
-if [ $_vm = yes ]; then
- _vm='#define HAVE_XF86VM'
-else
- _vm='#undef HAVE_XF86VM'
-fi
-
-# ---
-
-if [ $_mga = yes ]; then
- _mga='#define HAVE_MGA'
- _vosrc=$_vosrc' vo_mga.c'
-else
- _mga='#undef HAVE_MGA'
-fi
-if [ $_xmga = yes ]; then
- _vosrc=$_vosrc' vo_xmga.c'
-fi
-
-if [ $_syncfb = yes ]; then
- _syncfb='#define HAVE_SYNCFB'
- _vosrc=$_vosrc' vo_syncfb.c'
-else
- _syncfb='#undef HAVE_SYNCFB'
-fi
-
-if [ $_3dfx = yes ]; then
- _3dfx='#define HAVE_3DFX'
- _vosrc=$_vosrc' vo_3dfx.c'
-else
- _3dfx='#undef HAVE_3DFX'
-fi
-
-if [ $_svga = yes ]; then
- _svga='#define HAVE_SVGALIB'
- _vosrc=$_vosrc' vo_svga.c'
-else
- _svga='#undef HAVE_SVGALIB'
-fi
-
-if [ $_dga = yes ]; then
- _dga='#define HAVE_DGA'
- _vosrc=$_vosrc' vo_dga.c vo_fsdga.c'
-else
- _dga='#undef HAVE_DGA'
-fi
-
-if [ $_dga2 = yes ]; then
- _dga2='#define HAVE_DGA2'
- _vosrc=$_vosrc' vo_dga.c vo_fsdga.c'
-else
- _dga2='#undef HAVE_DGA2'
-fi
-
-if [ $_fbdev = yes ]; then
- _fbdev='#define HAVE_FBDEV'
- _vosrc=$_vosrc' vo_fbdev.c'
-else
- _fbdev='#undef HAVE_FBDEV'
-fi
-
-if [ $_mpg123 = yes ]; then
- _mpg123='#define DEFAULT_MPG123'
-else
- _mpg123='#undef DEFAULT_MPG123'
-fi
-
-if [ $_gui = yes ]; then
- _gui='#define HAVE_GUI'
-else
- _gui='#undef HAVE_GUI'
-fi
-
-cat > $CCONF << EOF
-
-/* -------- Generated by ./configure ----------- */
-
-/* Define this to enable avg. byte/sec-based AVI sync method by default:
-   (use -bps or -nobps commandline option for run-time method selection)    */
-#undef AVI_SYNC_BPS
-
-/* Undefine this if you want soundcard-only timing by default:
-   You can still change this with the -alsa or -noalsa command-line option!
-   (This function was originally impemented to solve ALSA driver's big
-   buffer problems, but it seems to be useful for every soundcard drivers) */
-#define ALSA_TIMER
-
-/* Undefine this if you don't want to select mono audio (left or right)
-   with a stereo MPEG layer 2/3 audio stream. The command-line option
-   -stereo has three possible values (0 for stereo, 1 for left-only, 2 for
-   right-only), with 0 being the default.
-   */
-#define USE_FAKE_MONO
-
-/* Undefine this if your soundcard driver has no working select().
-   If you have kernel Oops, player hangups, or just no audio, you should
-   try to recompile MPlayer with this option disabled! */
-$_select
-
-/* You have a choice for MP3 decoding: mp3lib(mpg123) or Win32(l3codeca.acm)
-   #define this if you prefer mpg123 (with 3Dnow! support) than l3codeca.acm
-   (with mmx/sse optimizations)
-   You can still change it runtime using -afm 1 (mpg123) or -afm 4 (l3codeca)*/
-$_mpg123
-
-/* XMMP support: (test code) */
-$_xmmpaudio
-#define LIBDIR "/usr/local/lib"
-#define PLUGINDIR LIBDIR "/xmmp/Plugins"
-#define XMMP_AUDIO_DRIVER PLUGINDIR "/Sound/oss.so"
-
-/* set up max. outburst. use 65536 for ALSA 0.5, for others 16384 is enough */
-#define MAX_OUTBURST 65536
-
-/* set up audio OUTBURST. Do not change this! */
-#ifdef USE_XMMP_AUDIO
-#define OUTBURST 4096
-#else
-//#define OUTBURST 1024
-#define OUTBURST 512
-#endif
-
-/* LIRC (remote control, see www.lirc.org) support: */
-$_lircdefs
-
-/* DeCSS support using libcss */
-$_css
-
-/* Define this to enable MPEG 1/2 image postprocessing (requires FAST cpu!) */
-#define MPEG12_POSTPROC
-
-/* DirectShow support */
-$_dshow
-
-/* Use 3dnow/mmxext/sse/mmx optimized fast memcpy() [maybe buggy... signal 4]*/
-$_fastmemcpy
-
-/* gui support, please do not edit this option */
-$_gui
-
-/* Define if your processor stores words with the most significant
-   byte first (like Motorola and SPARC, unlike Intel and VAX).  */
-/* #define WORDS_BIGENDIAN */
-
-#define ARCH_X86
-
-/* Define this to any prefered value from 386 up to infinity with step 100 */
-#define __CPU__ $iproc
-
-/*----------------------------------------------------------------------------
-**
-** NOTE: Instead of modifying these definitions here, use the
-**       --enable/--disable options of the ./configure script!
-**       See ./configure --help for details.
-**
-*---------------------------------------------------------------------------*/
-
-/* termcap flag for getch2.c */
-$_termcap
-$_png
-
-/* Extension defines */
-$_mlib     // available only on solaris
-$_3dnowm   // only define if you have 3DNOW (AMD k6-2, AMD Athlon, iDT WinChip, etc.)
-$_3dnowexm // only define if you have 3DNOWEX (AMD Athlon, etc.)
-$_mmx      // only define if you have MMX
-$_mmx2     // only define if you have MMX2
-$_ssem     // only define if you have SSE (Intel Pentium III or Celeron II)
-
-/* libvo options */
-#define SCREEN_SIZE_X $_x
-#define SCREEN_SIZE_Y $_y
-$_x11
-$_xv
-$_vm
-$_gl
-$_dga
-$_dga2
-$_sdldef
-/* defined for SDLlib with keyrepeat bugs (before 1.2.1) */
-$_sdlbuggy
-$_3dfx
-$_mga
-$_syncfb
-$_fbdev
-$_svga
-
-#if defined(HAVE_GL)||defined(HAVE_X11)||defined(HAVE_XV)
-#define X11_FULLSCREEN
-#endif
-
-EOF
-
-echo "Creating libvo/config.mak"
-
-_voobj=`echo $_vosrc | sed -e 's/\.c/\.o/g'`
-
-cat > libvo/config.mak << EOF
-
-include ../config.mak
-
-OPTIONAL_SRCS=$_vosrc
-OPTIONAL_OBJS=$_voobj
-
-EOF
-
-echo "Creating libao2/config.mak"
-
-_aoobj=`echo $_aosrc | sed -e 's/\.c/\.o/g'`
-
-cat > libao2/config.mak << EOF
-
-include ../config.mak
-
-OPTIONAL_SRCS=$_aosrc
-OPTIONAL_OBJS=$_aoobj
-
-EOF
-
-echo "Creating libac3/config.mak"
-
-if [ $_sse = yes ]; then
- _downmixc='downmix/downmix_kni.S'
- _downmixo='downmix/downmix_kni.o'
-else
-if [ $_3dnow = yes ]; then
- _downmixc='downmix/downmix_3dnow.S'
- _downmixo='downmix/downmix_3dnow.o'
-else
-if [ $_binutils = yes ]; then
- _downmixc='downmix/downmix_i386.S'
- _downmixo='downmix/downmix_i386.o'
-else
-_downmixc='downmix/downmix.c'
-_downmixo='downmix/downmix.o'
-cat << EOF
-
-!!! Warning! fallback to slow downmix.c due the old binutils.
-!!! Upgrade for better audio decoding performance.
-
-EOF
-fi
-fi
-fi
-cat > libac3/config.mak << EOF
-
-include ../config.mak
-
-OPTIONAL_SRCS    = $_downmixc
-OPTIONAL_OBJS    = $_downmixo
-
-EOF
-
-echo "Creating mp3lib/config.mak"
-
-if [ $_3dnowex = yes ]; then
- _mp3libobjectsrcs='dct36_k7.s dct64_k7.s decode_k7.s dct36_3dnow.s dct64_3dnow.s decode_3dnow.s'
- _mp3libobjectobjs='dct36_k7.o dct64_k7.o decode_k7.o dct36_3dnow.o dct64_3dnow.o decode_3dnow.o'
-else
-if [ $_3dnow = yes ]; then
- _mp3libobjectsrcs='dct36_3dnow.s dct64_3dnow.s decode_3dnow.s'
- _mp3libobjectobjs='dct36_3dnow.o dct64_3dnow.o decode_3dnow.o'
-else
-if [ $_sse = yes ]; then
- _mp3libobjectsrcs='decode_sse.s'
- _mp3libobjectobjs='decode_sse.o'
-else
- _mp3libobjectsrcs=
- _mp3libobjectobjs=
-fi
-fi
-fi
-
-cat > mp3lib/config.mak << EOF
-
-include ../config.mak
-
-OPTIONAL_SRCS = $_mp3libobjectsrcs
-OPTIONAL_OBJS = $_mp3libobjectobjs
-
-EOF
-
-cat << EOF
-
-Config files successfully generated by ./configure !
-Please check config.h and config.mak files, tune CPU
-and optimization flags if you don't like these defaults.
-You can compile the program with 'make dep;make' and
-install with  'make install'. Good luck!
-
-EOF
-
-if [ $_mtrr = yes ]; then
- echo "Please check mtrr settings at /compat/linux/proc/mtrr (see DOCS/MTRR)"
- echo
-fi
-
-if [ $_sdl = outdated ]; then
- echo "You have libSDL installed, but your version is outdated (earlier then"
- echo "v.1.1.7), SDL support has been disabled please update, if you want to"
- echo "use it (libSDL v1.1.8 and v1.2.0/1 are tested and known to work, recent"
- echo "versions are available from http://www.libsdl.org/)."
- echo "After updating you need to re-run ./configure and recompile to enable SDL."
- echo "(If you only want to use SDLlib audio driver older versions might work, you"
- echo "can use --enable-sdl to force using SDLlib)"
- echo
-fi
-
-if [ $_win32libdirnotify = yes ]; then
- echo "Missing WIN32 codecs dir at $_win32libdir !"
- echo "Make it and copy DLL files to there! (You can get them from your windows"
- echo "directory or download ftp://thot.banki.hu/esp-team/linux/MPlayer/w32codec.zip"
-else
- echo "Ok, Win32 codecs directory at $_win32libdir already exists."
-fi
-
--- a/dvdauth.c	Wed Jun 20 21:44:51 2001 +0000
+++ b/dvdauth.c	Thu Jun 21 00:06:40 2001 +0000
@@ -19,7 +19,7 @@
 # include <dvd.h>
 # undef	 OLD_CSS_API
 #else
-# if defined(__NetBSD__) || defined(__OpenBSD__)
+# if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)
 #  include <sys/dvdio.h>
 # elif defined(__linux__)
 #  include <linux/cdrom.h>
--- a/mplayer.c	Wed Jun 20 21:44:51 2001 +0000
+++ b/mplayer.c	Thu Jun 21 00:06:40 2001 +0000
@@ -22,6 +22,9 @@
 
 #if	defined(sun)
 #define	DEFAULT_CDROM_DEVICE	"/vol/dev/aliases/cdrom0"
+#elif defined(__FreeBSD__)
+#define DEFAULT_CDROM_DEVICE    "/dev/cdrom"
+#include <sys/cdrio.h>
 #else
 #define	DEFAULT_CDROM_DEVICE	"/dev/cdrom"
 #endif
@@ -491,6 +494,9 @@
 #ifdef VCD_CACHE
 int vcd_cache_size=128;
 #endif
+#ifdef __FreeBSD__
+int bsize = VCD_SECTOR_SIZE;
+#endif
 char* title="MPlayer";
 
 // movie info:
@@ -631,6 +637,11 @@
 #ifdef VCD_CACHE
   vcd_cache_init(vcd_cache_size);
 #endif
+#ifdef __FreeBSD__
+  if (ioctl (f, CDRIOCSETBLOCKSIZE, &bsize) == -1) {
+        perror ( "Error in CDRIOCSETBLOCKSIZE");
+  }
+#endif
   stream=new_stream(f,STREAMTYPE_VCD);
   stream->start_pos=ret;
   stream->end_pos=ret2;
--- a/stream.c	Wed Jun 20 21:44:51 2001 +0000
+++ b/stream.c	Thu Jun 21 00:06:40 2001 +0000
@@ -10,7 +10,6 @@
 extern int verbose; // defined in mplayer.c
 
 #ifdef __FreeBSD__
-#warning "VCD support under FreeBSD not implemented yet"
 #include "vcd_read_fbsd.c" 
 #else
 #include "vcd_read.c"
--- a/vcd_read_fbsd.h	Wed Jun 20 21:44:51 2001 +0000
+++ b/vcd_read_fbsd.h	Thu Jun 21 00:06:40 2001 +0000
@@ -4,12 +4,13 @@
 //=================== VideoCD ==========================
 #define	CDROM_LEADOUT	0xAA
 
-typedef	struct {
-	unsigned char   unused;
-	unsigned char   minute;
-	unsigned char   second;
-	unsigned char   frame;
-} cdrom_msf;
+typedef struct {
+	uint8_t sync            [12];
+	uint8_t header          [4];
+	uint8_t subheader       [8];
+	uint8_t data            [2324];
+	uint8_t spare           [4];
+} cdsector_t;
 
 static struct ioc_read_toc_single_entry vcd_entry;
 
@@ -76,13 +77,14 @@
     }
 }
 
-static char vcd_buf[VCD_SECTOR_SIZE];
+static cdsector_t vcd_buf;
 
 static int vcd_read(int fd,char *mem){
-      memcpy(vcd_buf,&vcd_entry.entry.addr.msf,sizeof(cdrom_msf));
-/*      if(ioctl(fd,CDROMREADRAW,vcd_buf)==-1) return 0; */ // EOF?
-/*      if(ioctl(fd,CDRIOCSETBLOCKSIZE,VCD_SECTOR_SIZE)==-1) return 0;
-      if (pread(fd,vcd_buf,VCD_SECTOR_SIZE,ntohl(vcd_entry.entry.addr.lba)*VCD_SECTOR_SIZE) != VCD_SECTOR_SIZE) return 0; */ // EOF?
+	off_t offset = 0;
+      if (pread(fd,&vcd_buf,VCD_SECTOR_SIZE,vcd_get_msf()*VCD_SECTOR_SIZE)
+	 != VCD_SECTOR_SIZE) return 0;  // EOF?
+      offset++;
+
       vcd_entry.entry.addr.msf.frame++;
       if (vcd_entry.entry.addr.msf.frame==75){
         vcd_entry.entry.addr.msf.frame=0;
@@ -92,8 +94,7 @@
           vcd_entry.entry.addr.msf.minute++;
         }
       }
-
-      memcpy(mem,&vcd_buf[VCD_SECTOR_OFFS],VCD_SECTOR_DATA);
+      memcpy(mem,vcd_buf.data,VCD_SECTOR_DATA);
       return VCD_SECTOR_DATA;
 }