changeset 2450:f51307170f69

MIPS support by oliver.schoenbrunner@jku.at
author arpi
date Wed, 24 Oct 2001 14:02:19 +0000
parents 7ef89d9b06ed
children a56bf9c0e76f
files Makefile configure libao2/audio_out.c libmpdemux/vcd_read.h mp3lib/Makefile
diffstat 5 files changed, 58 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/Makefile	Wed Oct 24 13:57:46 2001 +0000
+++ b/Makefile	Wed Oct 24 14:02:19 2001 +0000
@@ -19,13 +19,17 @@
 SRCS = ima4.c xacodec.c cpudetect.c mp_msg.c ac3-iec958.c find_sub.c dec_audio.c dec_video.c codec-cfg.c subreader.c lirc_mp.c cfgparser.c mixer.c spudec.c
 OBJS = $(SRCS:.c=.o)
 CFLAGS = $(OPTFLAGS) -Ilibmpdemux -Iloader -Ilibvo $(CSS_INC) $(EXTRA_INC) $(MADLIB_INC) # -Wall
-A_LIBS = -Lmp3lib -lMP3 -Llibac3 -lac3 $(ALSA_LIB) $(ESD_LIB) $(MADLIB_LIB)
+A_LIBS = -Lmp3lib -lMP3 -Llibac3 -lac3 $(ALSA_LIB) $(ESD_LIB) $(MADLIB_LIB) $(SGI_AUDIO_LIB)
 VO_LIBS = -Llibvo -lvo $(MLIB_LIB) $(X_LIBS)
 OSDEP_LIBS = -Llinux -losdep
 PP_LIBS = -Lpostproc -lpostproc
 XA_LIBS = -Lxa -lxa
 
+ifeq ($(TARGET_ARCH_SGI_MIPS),yes)
+PARTS = libmpdemux mp3lib libac3 libmpeg2 opendivx libavcodec encore libvo libao2 drivers drivers/syncfb
+else
 PARTS = libmpdemux mp3lib libac3 libmpeg2 opendivx libavcodec encore libvo libao2 drivers drivers/syncfb linux postproc xa
+endif
 ifeq ($(GUI),yes)
 PARTS += Gui
 endif
@@ -108,7 +112,7 @@
 	@for a in $(PARTS); do $(MAKE) -C $$a all ; done
 
 $(PRG):	$(MPLAYER_DEP)
-	$(CC) -rdynamic $(CFLAGS) -o $(PRG) mplayer.o -Llibmpdemux -lmpdemux $(OBJS) $(XMM_LIBS) $(LIRC_LIBS) $(A_LIBS) -lm $(TERMCAP_LIB) $(LIB_LOADER) $(AV_LIB) -Llibmpeg2 -lmpeg2 -Llibao2 -lao2 $(VO_LIBS) $(CSS_LIB) -Lencore -lencore $(GUI_LIBS) $(ARCH_LIBS) $(OSDEP_LIBS) $(PP_LIBS) $(XA_LIBS) $(DECORE_LIBS) 
+	$(CC) -rdynamic $(CFLAGS) -o $(PRG) mplayer.o -Llibmpdemux -lmpdemux $(OBJS) $(XMM_LIBS) $(LIRC_LIBS)  $(TERMCAP_LIB) $(LIB_LOADER) $(AV_LIB) -Llibmpeg2 -lmpeg2 -Llibao2 -lao2 $(A_LIBS) $(VO_LIBS) $(CSS_LIB) -Lencore -lencore $(GUI_LIBS) $(ARCH_LIBS) $(OSDEP_LIBS) $(PP_LIBS) $(XA_LIBS) $(DECORE_LIBS) -lm
 
 $(PRG_FIBMAP): fibmap_mplayer.o
 	$(CC) -o $(PRG_FIBMAP) fibmap_mplayer.o
--- a/configure	Wed Oct 24 13:57:46 2001 +0000
+++ b/configure	Wed Oct 24 14:02:19 2001 +0000
@@ -804,6 +804,19 @@
     _mcpu="-mcpu=ev56"
     ;;
 
+mips)
+    _arch="#define ARCH_SGI_MIPS 1"
+    _target_arch="TARGET_ARCH_SGI_MIPS=yes"
+    _words_endian="#define WORDS_BIGENDIAN 1"
+    iproc=sgi-mips
+    proc=default
+    _march=""
+    _mcpu="-mcpu=$proc"
+    _skip_as_check=yes
+    # _png=no
+    # CFLAGS="-O4 $_march $_mcpu -ffast-math -fomit-frame-pointer"
+    ;;
+
 *)
     echo "The architecture of your CPU ($host_arch) is not supported by this configure script"
     echo "It seems noone has ported MPlayer to your OS or CPU type yet."
@@ -1182,6 +1195,14 @@
 EOF
 cc_check $_extraincdir $_extralibdir -lesd || _esd=no
 
+# check for SGI audio
+cat > $TMPC << EOF
+#include <dmedia/audio.h>
+int main( void ) { return 0; }
+EOF
+
+_sgi_audio=no
+$_cc -o $TMPO $TMPC 2> /dev/null && _sgi_audio=yes
 
 # check for mad library
 cat > $TMPC << EOF
@@ -1656,6 +1677,7 @@
 echo "Checking for ESD Audio ... $_esd"
 echo "Checking for Sun Audio ... $_sun_audio"
 echo "Checking for Sun mediaLib ... $_mlib"
+echo "Checking for SGI Audio ... $_sgi_audio"
 echo "Checking for DeCSS support ... $_css"
 echo "Checking for DVDread support ... $_dvdread"
 echo "Checking for PNG support ... $_png"
@@ -1995,6 +2017,14 @@
  _sunaudio='#undef USE_SUN_AUDIO'
 fi
 
+if [ "$_sgi_audio" = "yes" ]; then
+ _sgiaudio='#define USE_SGI_AUDIO'
+ _aosrc="$_aosrc ao_sgi.c"
+ _sgi_audio_lib='-laudio'
+else
+ _sgiaudio='#undef USE_SGI_AUDIO'
+fi
+
 if test "$_sys_soundcard_h" = yes ; then
  _have_soundcard_h='#define HAVE_SYS_SOUNDCARD_H 1'
 else
@@ -2036,8 +2066,12 @@
 # Checking for CFLAGS
 if test "$_profile" || test "$_debug" ; then
  CFLAGS="-W -Wall -O2 $_march $_mcpu $_debug $_profile"
-elif test -z "$CFLAGS" ; then
- CFLAGS="-O4 $_march $_mcpu -pipe -ffast-math -fomit-frame-pointer"
+elif test -z "$CFLAGS" ; then 
+ if [ "$host_arch" != "mips" ]; then
+  CFLAGS="-O4 $_march $_mcpu -pipe -ffast-math -fomit-frame-pointer"
+ else
+  CFLAGS="-O4 $_march $_mcpu -ffast-math -fomit-frame-pointer"
+ fi
 else
  cat <<EOF
 MPlayer is using custom CFLAGS set by you, it is strongly recommended that you
@@ -2330,6 +2364,7 @@
 AV_LIB = $_lavclib
 ALSA_LIB = $_alsalib
 ESD_LIB = $_esdlib
+SGI_AUDIO_LIB = $_sgi_audio_lib
 ARCH_LIBS = $_archlibs $_iconvlib
 STREAMING=$_streaming
 DECORE_LIBS = $_decorelibs
@@ -2486,6 +2521,7 @@
 $_alsa9
 $_esdd
 $_sunaudio
+$_sgiaudio
 
 /* Enable fast OSD/SUB renderer (looks ugly, but uses less CPU power) */
 #undef FAST_OSD
--- a/libao2/audio_out.c	Wed Oct 24 13:57:46 2001 +0000
+++ b/libao2/audio_out.c	Wed Oct 24 14:02:19 2001 +0000
@@ -34,6 +34,9 @@
 #ifdef USE_SUN_AUDIO
 extern ao_functions_t audio_out_sun;
 #endif
+#ifdef USE_SGI_AUDIO
+extern ao_functions_t audio_out_sgi;
+#endif
 extern ao_functions_t audio_out_pcm;
 extern ao_functions_t audio_out_pss;
 
@@ -45,6 +48,9 @@
 #ifdef USE_SUN_AUDIO
         &audio_out_sun,
 #endif
+#ifdef USE_SGI_AUDIO
+        &audio_out_sgi,
+#endif
         &audio_out_null,
 #ifdef HAVE_ALSA5
 	&audio_out_alsa5,
@@ -84,7 +90,7 @@
 	case AFMT_S16_LE:
 	    return("Signed 16-bit (Little-Endian)");
 	case AFMT_S16_BE:
-	    return("Unsigned 16-bit (Big-Endian)");
+	    return("Signed 16-bit (Big-Endian)");
 	case AFMT_MPEG:
 	    return("MPEG (2) audio");
 	case AFMT_AC3:
--- a/libmpdemux/vcd_read.h	Wed Oct 24 13:57:46 2001 +0000
+++ b/libmpdemux/vcd_read.h	Wed Oct 24 14:02:19 2001 +0000
@@ -277,4 +277,8 @@
   return -1;
 }
 
+static inline void vcd_set_msf(unsigned int sect)
+{
+}
+
 #endif /* !linux && !sun */
--- a/mp3lib/Makefile	Wed Oct 24 13:57:46 2001 +0000
+++ b/mp3lib/Makefile	Wed Oct 24 14:02:19 2001 +0000
@@ -4,6 +4,9 @@
 SRCS = sr1.c
 OBJS = sr1.o
 # OBJS = $(SRCS:.c,.s=.o)
+ifeq ($(TARGET_ARCH_SGI_MIPS),yes)
+OPTFLAGS := $(OPTFLAGS:-O4=-O0)
+endif
 CFLAGS  = $(OPTFLAGS) $(EXTRA_INC)
 ifeq ($(TARGET_ARCH_X86),yes)
 SRCS += d_cpu.s decode_i586.s