From 8ff9cbf776ccb6306a8a0699bc4c8f5a8af7f922 Mon Sep 17 00:00:00 2001 From: malc Date: Mon, 23 Jun 2008 18:33:30 +0000 Subject: [PATCH] Make mixer emulation a configure option (Jan Kiszka) git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4783 c046a42c-6fe2-441c-8c8c-71466251a162 --- audio/mixeng.c | 2 -- audio/mixeng_template.h | 10 +++++----- configure | 9 +++++++++ 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/audio/mixeng.c b/audio/mixeng.c index b668c524e7..5e0426cb6d 100644 --- a/audio/mixeng.c +++ b/audio/mixeng.c @@ -28,8 +28,6 @@ #define AUDIO_CAP "mixeng" #include "audio_int.h" -#define NOVOL - /* 8 bit */ #define ENDIAN_CONVERSION natural #define ENDIAN_CONVERT(v) (v) diff --git a/audio/mixeng_template.h b/audio/mixeng_template.h index d726441e2e..21eef58bf6 100644 --- a/audio/mixeng_template.h +++ b/audio/mixeng_template.h @@ -31,14 +31,14 @@ #define HALF (IN_MAX >> 1) #endif -#ifdef NOVOL -#define VOL(a, b) a -#else +#ifdef CONFIG_MIXEMU #ifdef FLOAT_MIXENG #define VOL(a, b) ((a) * (b)) #else #define VOL(a, b) ((a) * (b)) >> 32 #endif +#else +#define VOL(a, b) a #endif #define ET glue (ENDIAN_CONVERSION, glue (_, IN_T)) @@ -113,7 +113,7 @@ static void glue (glue (conv_, ET), _to_stereo) { st_sample_t *out = dst; IN_T *in = (IN_T *) src; -#ifndef NOVOL +#ifdef CONFIG_MIXEMU if (vol->mute) { mixeng_clear (dst, samples); return; @@ -133,7 +133,7 @@ static void glue (glue (conv_, ET), _to_mono) { st_sample_t *out = dst; IN_T *in = (IN_T *) src; -#ifndef NOVOL +#ifdef CONFIG_MIXEMU if (vol->mute) { mixeng_clear (dst, samples); return; diff --git a/configure b/configure index fb704bae42..efecd20c42 100755 --- a/configure +++ b/configure @@ -114,6 +114,7 @@ build_docs="no" uname_release="" curses="yes" nptl="yes" +mixemu="no" # OS specific targetos=`uname -s` @@ -337,6 +338,8 @@ for opt do ;; --disable-nptl) nptl="no" ;; + --enable-mixemu) mixemu="yes" + ;; *) echo "ERROR: unknown option $opt"; show_help="yes" ;; esac @@ -428,6 +431,7 @@ echo " --enable-alsa enable ALSA audio driver" echo " --enable-esd enable EsoundD audio driver" echo " --enable-fmod enable FMOD audio driver" echo " --enable-dsound enable DirectSound audio driver" +echo " --enable-mixemu enable mixer emulation" echo " --disable-brlapi disable BrlAPI" echo " --disable-vnc-tls disable TLS encryption for VNC server" echo " --disable-curses disable curses output" @@ -839,6 +843,7 @@ echo "CoreAudio support $coreaudio" echo "ALSA support $alsa" echo "EsounD support $esd" echo "DSound support $dsound" +echo "Mixer emulation $mixemu" if test "$fmod" = "yes"; then if test -z $fmod_lib || test -z $fmod_inc; then echo @@ -1067,6 +1072,10 @@ if test "$dsound" = "yes" ; then echo "CONFIG_DSOUND=yes" >> $config_mak echo "#define CONFIG_DSOUND 1" >> $config_h fi +if test "$mixemu" = "yes" ; then + echo "CONFIG_MIXEMU=yes" >> $config_mak + echo "#define CONFIG_MIXEMU 1" >> $config_h +fi if test "$fmod" = "yes" ; then echo "CONFIG_FMOD=yes" >> $config_mak echo "CONFIG_FMOD_LIB=$fmod_lib" >> $config_mak