Commit c2de5c91a25eb3dcc73b63f1ce515b8e44d1d011

Authored by malc
1 parent e5178e8d

Document usage of new options remove stray variables, check for ALSA/FMOD/ESD

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4797 c046a42c-6fe2-441c-8c8c-71466251a162
Showing 1 changed file with 66 additions and 35 deletions
configure
... ... @@ -117,15 +117,18 @@ OS_CFLAGS="-mno-cygwin"
117 117 if [ "$cpu" = "i386" ] ; then
118 118 kqemu="yes"
119 119 fi
  120 +audio_possible_drivers="sdl"
120 121 ;;
121 122 MINGW32*)
122 123 mingw32="yes"
123 124 if [ "$cpu" = "i386" ] ; then
124 125 kqemu="yes"
125 126 fi
  127 +audio_possible_drivers="dsound sdl fmod"
126 128 ;;
127 129 GNU/kFreeBSD)
128 130 audio_drv_list="oss"
  131 +audio_possible_drivers="oss sdl esd"
129 132 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
130 133 kqemu="yes"
131 134 fi
... ... @@ -133,6 +136,7 @@ fi
133 136 FreeBSD)
134 137 bsd="yes"
135 138 audio_drv_list="oss"
  139 +audio_possible_drivers="oss sdl esd"
136 140 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
137 141 kqemu="yes"
138 142 fi
... ... @@ -140,10 +144,12 @@ fi
140 144 NetBSD)
141 145 bsd="yes"
142 146 audio_drv_list="oss"
  147 +audio_possible_drivers="oss sdl esd"
143 148 ;;
144 149 OpenBSD)
145 150 bsd="yes"
146 151 audio_drv_list="oss"
  152 +audio_possible_drivers="oss sdl esd"
147 153 ;;
148 154 Darwin)
149 155 bsd="yes"
... ... @@ -151,6 +157,7 @@ darwin="yes"
151 157 darwin_user="yes"
152 158 cocoa="yes"
153 159 audio_drv_list="coreaudio"
  160 +audio_possible_drivers="coreaudio sdl fmod"
154 161 OS_CFLAGS="-mdynamic-no-pic"
155 162 OS_LDFLAGS="-framework CoreFoundation -framework IOKit"
156 163 ;;
... ... @@ -185,13 +192,16 @@ SunOS)
185 192 if test -f /usr/include/sys/soundcard.h ; then
186 193 audio_drv_list="oss"
187 194 fi
  195 + audio_possible_drivers="oss sdl"
188 196 ;;
189 197 *)
190 198 audio_drv_list="oss"
  199 +audio_possible_drivers="oss alsa sdl esd"
191 200 linux="yes"
192 201 linux_user="yes"
193 202 if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then
194 203 kqemu="yes"
  204 + audio_possible_drivers="$audio_possible_drivers fmod"
195 205 fi
196 206 ;;
197 207 esac
... ... @@ -258,12 +268,12 @@ for opt do
258 268 ;;
259 269 --fmod-lib=*) fmod_lib="$optarg"
260 270 ;;
  271 + --fmod-inc=*) fmod_inc="$optarg"
  272 + ;;
261 273 --audio-card-list=*) audio_card_list="$optarg"
262 274 ;;
263 275 --audio-drv-list=*) audio_drv_list="$optarg"
264 276 ;;
265   - --fmod-inc=*) fmod_inc="$optarg"
266   - ;;
267 277 --disable-vnc-tls) vnc_tls="no"
268 278 ;;
269 279 --enable-mingw32) mingw32="yes" ; cross_prefix="i386-mingw32-" ; linux_user="no"
... ... @@ -276,7 +286,10 @@ for opt do
276 286 ;;
277 287 --enable-profiler) profiler="yes"
278 288 ;;
279   - --enable-cocoa) cocoa="yes" ; sdl="no" ;
  289 + --enable-cocoa)
  290 + cocoa="yes" ;
  291 + sdl="no" ;
  292 + audio_drv_list="coreaudio `echo $audio_drv_list | sed s,coreaudio,,g`"
280 293 ;;
281 294 --disable-gfx-check) check_gfx="no"
282 295 ;;
... ... @@ -400,8 +413,10 @@ echo " --disable-werror disable compilation abort on warning"
400 413 echo " --disable-sdl disable SDL"
401 414 echo " --enable-cocoa enable COCOA (Mac OS X only)"
402 415 echo " --enable-mingw32 enable Win32 cross compilation with mingw32"
403   -echo " --audio-drv-list set audio drivers list"
404   -echo " --audio-card-list set list of additional emulated audio cards"
  416 +echo " --audio-drv-list=LIST set audio drivers list:"
  417 +echo " Available drivers: $audio_possible_drivers"
  418 +echo " --audio-card-list=LIST set list of additional emulated audio cards"
  419 +echo " Available cards: ac97 adlib cs4231a gus"
405 420 echo " --enable-mixemu enable mixer emulation"
406 421 echo " --disable-brlapi disable BrlAPI"
407 422 echo " --disable-vnc-tls disable TLS encryption for VNC server"
... ... @@ -692,7 +707,7 @@ else
692 707 # Make sure to disable cocoa if sdl was set
693 708 if test "$sdl" = "yes" ; then
694 709 cocoa="no"
695   - audio_drv_list="echo $audio_drv_list | sed s,coreaudio,,g"
  710 + audio_drv_list="`echo $audio_drv_list | sed s,coreaudio,,g`"
696 711 fi
697 712 fi # -z $sdl
698 713  
... ... @@ -707,23 +722,53 @@ if test "$vnc_tls" = "yes" ; then
707 722 fi
708 723  
709 724 ##########################################
710   -# alsa sound support libraries
  725 +# Sound support libraries probe
711 726  
712   -if test "$alsa" = "yes" ; then
713   - cat > $TMPC << EOF
714   -#include <alsa/asoundlib.h>
715   -int main(void) { snd_pcm_t **handle; return snd_pcm_close(*handle); }
  727 +audio_drv_probe()
  728 +{
  729 + drv=$1
  730 + hdr=$2
  731 + lib=$3
  732 + exp=$4
  733 + cfl=$5
  734 + cat > $TMPC << EOF
  735 +#include <$hdr>
  736 +int main(void) { $exp }
716 737 EOF
717   - if $cc $ARCH_CFLAGS -o $TMPE $TMPC -lasound 2> /dev/null ; then
718   - :
719   - else
720   - echo
721   - echo "Error: Could not find alsa"
722   - echo "Make sure to have the alsa libs and headers installed."
723   - echo
724   - exit 1
725   - fi
726   -fi
  738 + if $cc $ARCH_CFLAGS $cfl -o $TMPE $TMPC $lib 2> /dev/null ; then
  739 + :
  740 + else
  741 + echo
  742 + echo "Error: $drv check failed"
  743 + echo "Make sure to have the $drv libs and headers installed."
  744 + echo
  745 + exit 1
  746 + fi
  747 +}
  748 +
  749 +for drv in $audio_drv_list; do
  750 + case $drv in
  751 + alsa)
  752 + audio_drv_probe $drv alsa/asoundlib.h -lasound \
  753 + "snd_pcm_t **handle; return snd_pcm_close(*handle);"
  754 + ;;
  755 +
  756 + fmod)
  757 + if test -z $fmod_lib || test -z $fmod_inc; then
  758 + echo
  759 + echo "Error: You must specify path to FMOD library and headers"
  760 + echo "Example: --fmod-inc=/path/include/fmod --fmod-lib=/path/lib/libfmod-3.74.so"
  761 + echo
  762 + exit 1
  763 + fi
  764 + audio_drv_probe $drv fmod.h $fmod_lib "return FSOUND_GetVersion();" "-I $fmod_inc"
  765 + ;;
  766 +
  767 + esd)
  768 + audio_drv_probe $drv esd.h -lesd 'return esd_play_stream(0, 0, "", 0);'
  769 + ;;
  770 + esac
  771 +done
727 772  
728 773 ##########################################
729 774 # BrlAPI probe
... ... @@ -809,20 +854,6 @@ echo &quot;mingw32 support $mingw32&quot;
809 854 echo "Audio drivers $audio_drv_list"
810 855 echo "Extra audio cards $audio_card_list"
811 856 echo "Mixer emulation $mixemu"
812   -if test "$fmod" = "yes"; then
813   - if test -z $fmod_lib || test -z $fmod_inc; then
814   - echo
815   - echo "Error: You must specify path to FMOD library and headers"
816   - echo "Example: --fmod-inc=/path/include/fmod --fmod-lib=/path/lib/libfmod-3.74.so"
817   - echo
818   - exit 1
819   - fi
820   - fmod_support=" (lib='$fmod_lib' include='$fmod_inc')"
821   -else
822   - fmod_support=""
823   -fi
824   -echo "FMOD support $fmod $fmod_support"
825   -echo "OSS support $oss"
826 857 echo "VNC TLS support $vnc_tls"
827 858 if test "$vnc_tls" = "yes" ; then
828 859 echo " TLS CFLAGS $vnc_tls_cflags"
... ...