495 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			495 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
								 | 
							
								dnl
							 | 
						||
| 
								 | 
							
								dnl portaudio V19 configure.in script
							 | 
						||
| 
								 | 
							
								dnl
							 | 
						||
| 
								 | 
							
								dnl Dominic Mazzoni, Arve Knudsen, Stelios Bounanos
							 | 
						||
| 
								 | 
							
								dnl
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								dnl Require autoconf >= 2.13
							 | 
						||
| 
								 | 
							
								AC_PREREQ(2.13)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								dnl Init autoconf and make sure configure is being called
							 | 
						||
| 
								 | 
							
								dnl from the right directory
							 | 
						||
| 
								 | 
							
								AC_INIT([include/portaudio.h])
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								dnl This is is for testing compilation on Mac OS
							 | 
						||
| 
								 | 
							
								PAMAC_TEST_PROGRAM="
							 | 
						||
| 
								 | 
							
								  /* cdefs.h checks for supported architectures. */
							 | 
						||
| 
								 | 
							
								  #include <sys/cdefs.h>
							 | 
						||
| 
								 | 
							
								  int main() {
							 | 
						||
| 
								 | 
							
								      return 0;
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								dnl Define build, build_cpu, build_vendor, build_os
							 | 
						||
| 
								 | 
							
								AC_CANONICAL_BUILD
							 | 
						||
| 
								 | 
							
								dnl Define host, host_cpu, host_vendor, host_os
							 | 
						||
| 
								 | 
							
								AC_CANONICAL_HOST
							 | 
						||
| 
								 | 
							
								dnl Define target, target_cpu, target_vendor, target_os
							 | 
						||
| 
								 | 
							
								AC_CANONICAL_TARGET
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								dnl Specify options
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_ARG_WITH(alsa,
							 | 
						||
| 
								 | 
							
								            AS_HELP_STRING([--with-alsa], [Enable support for ALSA @<:@autodetect@:>@]),
							 | 
						||
| 
								 | 
							
								            [with_alsa=$withval])
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_ARG_WITH(audioio,
							 | 
						||
| 
								 | 
							
								            AS_HELP_STRING([--with-audioio], [Enable support for Solaris/NetBSD audio @<:@autodetect@:>@]),
							 | 
						||
| 
								 | 
							
								            [with_audioio=$withval])
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_ARG_WITH(jack,
							 | 
						||
| 
								 | 
							
								            AS_HELP_STRING([--with-jack], [Enable support for JACK @<:@autodetect@:>@]),
							 | 
						||
| 
								 | 
							
								            [with_jack=$withval])
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_ARG_WITH(oss,
							 | 
						||
| 
								 | 
							
								            AS_HELP_STRING([--with-oss], [Enable support for OSS @<:@autodetect@:>@]),
							 | 
						||
| 
								 | 
							
								            [with_oss=$withval])
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_ARG_WITH(asihpi,
							 | 
						||
| 
								 | 
							
								            AS_HELP_STRING([--with-asihpi], [Enable support for ASIHPI @<:@autodetect@:>@]),
							 | 
						||
| 
								 | 
							
								            [with_asihpi=$withval])
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_ARG_WITH(winapi,
							 | 
						||
| 
								 | 
							
								            AS_HELP_STRING([--with-winapi],
							 | 
						||
| 
								 | 
							
								                           [Select Windows API support (@<:@wmme|directx|asio|wasapi|wdmks@:>@@<:@,...@:>@) @<:@wmme@:>@]),
							 | 
						||
| 
								 | 
							
								            [with_winapi=$withval], [with_winapi="wmme"])
							 | 
						||
| 
								 | 
							
								case "$target_os" in *mingw* | *cygwin*)
							 | 
						||
| 
								 | 
							
								     with_wmme=no
							 | 
						||
| 
								 | 
							
								     with_directx=no
							 | 
						||
| 
								 | 
							
								     with_asio=no
							 | 
						||
| 
								 | 
							
								     with_wasapi=no
							 | 
						||
| 
								 | 
							
								     with_wdmks=no
							 | 
						||
| 
								 | 
							
								     for api in $(echo $with_winapi | sed 's/,/ /g'); do
							 | 
						||
| 
								 | 
							
								         case "$api" in
							 | 
						||
| 
								 | 
							
								             wmme|directx|asio|wasapi|wdmks)
							 | 
						||
| 
								 | 
							
								                 eval with_$api=yes
							 | 
						||
| 
								 | 
							
								                 ;;
							 | 
						||
| 
								 | 
							
								             *)
							 | 
						||
| 
								 | 
							
								                 AC_MSG_ERROR([unknown Windows API \"$api\" (do you need --help?)])
							 | 
						||
| 
								 | 
							
								                 ;;
							 | 
						||
| 
								 | 
							
								         esac
							 | 
						||
| 
								 | 
							
								     done
							 | 
						||
| 
								 | 
							
								     ;;
							 | 
						||
| 
								 | 
							
								esac
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_ARG_WITH(asiodir,
							 | 
						||
| 
								 | 
							
								            AS_HELP_STRING([--with-asiodir], [ASIO directory @<:@/usr/local/asiosdk2@:>@]),
							 | 
						||
| 
								 | 
							
								            with_asiodir=$withval, with_asiodir="/usr/local/asiosdk2")
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_ARG_WITH(dxdir,
							 | 
						||
| 
								 | 
							
								            AS_HELP_STRING([--with-dxdir], [DirectX directory @<:@/usr/local/dx7sdk@:>@]),
							 | 
						||
| 
								 | 
							
								            with_dxdir=$withval, with_dxdir="/usr/local/dx7sdk")
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								debug_output=no
							 | 
						||
| 
								 | 
							
								AC_ARG_ENABLE(debug-output,
							 | 
						||
| 
								 | 
							
								              AS_HELP_STRING([--enable-debug-output], [Enable debug output @<:@no@:>@]),
							 | 
						||
| 
								 | 
							
								              [if test "x$enableval" != "xno" ; then
							 | 
						||
| 
								 | 
							
								                  AC_DEFINE(PA_ENABLE_DEBUG_OUTPUT,,[Enable debugging messages])
							 | 
						||
| 
								 | 
							
								                  debug_output=yes
							 | 
						||
| 
								 | 
							
								               fi
							 | 
						||
| 
								 | 
							
								              ])
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_ARG_ENABLE(cxx,
							 | 
						||
| 
								 | 
							
								              AS_HELP_STRING([--enable-cxx], [Enable C++ bindings @<:@no@:>@]),
							 | 
						||
| 
								 | 
							
								              enable_cxx=$enableval, enable_cxx="no")
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_ARG_ENABLE(mac-debug,
							 | 
						||
| 
								 | 
							
								              AS_HELP_STRING([--enable-mac-debug], [Enable Mac debug @<:@no@:>@]),
							 | 
						||
| 
								 | 
							
								              enable_mac_debug=$enableval, enable_mac_debug="no")
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_ARG_ENABLE(mac-universal,
							 | 
						||
| 
								 | 
							
								              AS_HELP_STRING([--enable-mac-universal], [Build Mac universal binaries @<:@yes@:>@]),
							 | 
						||
| 
								 | 
							
								              enable_mac_universal=$enableval, enable_mac_universal="yes")
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								dnl Continue to accept --host_os for compatibility but do not document
							 | 
						||
| 
								 | 
							
								dnl it (the correct way to change host_os is with --host=...).  Moved
							 | 
						||
| 
								 | 
							
								dnl here because the empty help string generates a blank line which we
							 | 
						||
| 
								 | 
							
								dnl can use to separate PA options from libtool options.
							 | 
						||
| 
								 | 
							
								AC_ARG_WITH(host_os, [], host_os=$withval)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								dnl Checks for programs.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_PROG_CC
							 | 
						||
| 
								 | 
							
								dnl ASIO and CXX bindings need a C++ compiler
							 | 
						||
| 
								 | 
							
								if [[ "$with_asio" = "yes" ] || [ "$enable_cxx" = "yes" ]] ; then
							 | 
						||
| 
								 | 
							
								       AC_PROG_CXX
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								AC_LIBTOOL_WIN32_DLL
							 | 
						||
| 
								 | 
							
								AC_PROG_LIBTOOL
							 | 
						||
| 
								 | 
							
								AC_PROG_INSTALL
							 | 
						||
| 
								 | 
							
								AC_PROG_LN_S
							 | 
						||
| 
								 | 
							
								AC_PATH_PROG(AR, ar, no)
							 | 
						||
| 
								 | 
							
								if [[ $AR = "no" ]] ; then
							 | 
						||
| 
								 | 
							
								    AC_MSG_ERROR("Could not find ar - needed to create a library")
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								dnl This must be one of the first tests we do or it will fail...
							 | 
						||
| 
								 | 
							
								AC_C_BIGENDIAN
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								dnl checks for various host APIs and arguments to configure that
							 | 
						||
| 
								 | 
							
								dnl turn them on or off
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								have_alsa=no
							 | 
						||
| 
								 | 
							
								if test "x$with_alsa" != "xno"; then
							 | 
						||
| 
								 | 
							
								    AC_CHECK_LIB(asound, snd_pcm_open, have_alsa=yes, have_alsa=no)
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								have_asihpi=no
							 | 
						||
| 
								 | 
							
								if test "x$with_asihpi" != "xno"; then
							 | 
						||
| 
								 | 
							
								    AC_CHECK_LIB(hpi, HPI_SubSysCreate, have_asihpi=yes, have_asihpi=no, -lm)
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								have_audioio=no
							 | 
						||
| 
								 | 
							
								if test "x$with_audioio" != "xno"; then
							 | 
						||
| 
								 | 
							
								    AC_CHECK_HEADERS([sys/audioio.h], [have_audioio=yes])
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								have_libossaudio=no
							 | 
						||
| 
								 | 
							
								have_oss=no
							 | 
						||
| 
								 | 
							
								if test "x$with_oss" != "xno"; then
							 | 
						||
| 
								 | 
							
								    AC_CHECK_HEADERS([sys/soundcard.h linux/soundcard.h machine/soundcard.h], [have_oss=yes])
							 | 
						||
| 
								 | 
							
								    if test "x$have_oss" = "xyes"; then
							 | 
						||
| 
								 | 
							
								        AC_CHECK_LIB(ossaudio, _oss_ioctl, have_libossaudio=yes, have_libossaudio=no)
							 | 
						||
| 
								 | 
							
								    fi
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								have_jack=no
							 | 
						||
| 
								 | 
							
								if test "x$with_jack" != "xno"; then
							 | 
						||
| 
								 | 
							
								    PKG_CHECK_MODULES(JACK, jack, have_jack=yes, have_jack=no)
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								dnl sizeof checks: we will need a 16-bit and a 32-bit type
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_CHECK_SIZEOF(short)
							 | 
						||
| 
								 | 
							
								AC_CHECK_SIZEOF(int)
							 | 
						||
| 
								 | 
							
								AC_CHECK_SIZEOF(long)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								save_LIBS="${LIBS}"
							 | 
						||
| 
								 | 
							
								AC_CHECK_LIB(rt, clock_gettime, [rt_libs=" -lrt"])
							 | 
						||
| 
								 | 
							
								LIBS="${LIBS}${rt_libs}"
							 | 
						||
| 
								 | 
							
								DLL_LIBS="${DLL_LIBS}${rt_libs}"
							 | 
						||
| 
								 | 
							
								AC_CHECK_FUNCS([clock_gettime nanosleep])
							 | 
						||
| 
								 | 
							
								LIBS="${save_LIBS}"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								dnl LT_RELEASE=19
							 | 
						||
| 
								 | 
							
								LT_CURRENT=2
							 | 
						||
| 
								 | 
							
								LT_REVISION=0
							 | 
						||
| 
								 | 
							
								LT_AGE=0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_SUBST(LT_CURRENT)
							 | 
						||
| 
								 | 
							
								AC_SUBST(LT_REVISION)
							 | 
						||
| 
								 | 
							
								AC_SUBST(LT_AGE)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								dnl extra variables
							 | 
						||
| 
								 | 
							
								AC_SUBST(OTHER_OBJS)
							 | 
						||
| 
								 | 
							
								AC_SUBST(PADLL)
							 | 
						||
| 
								 | 
							
								AC_SUBST(SHARED_FLAGS)
							 | 
						||
| 
								 | 
							
								AC_SUBST(THREAD_CFLAGS)
							 | 
						||
| 
								 | 
							
								AC_SUBST(DLL_LIBS)
							 | 
						||
| 
								 | 
							
								AC_SUBST(CXXFLAGS)
							 | 
						||
| 
								 | 
							
								AC_SUBST(NASM)
							 | 
						||
| 
								 | 
							
								AC_SUBST(NASMOPT)
							 | 
						||
| 
								 | 
							
								AC_SUBST(INCLUDES)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								dnl -g is optional on darwin
							 | 
						||
| 
								 | 
							
								if ( echo "${host_os}" | grep ^darwin >> /dev/null ) &&
							 | 
						||
| 
								 | 
							
								      [[ "$enable_mac_universal" = "yes" ] &&
							 | 
						||
| 
								 | 
							
								       [ "$enable_mac_debug" != "yes" ]] ; then
							 | 
						||
| 
								 | 
							
								   CFLAGS="-O2 -Wall -pedantic -pipe -fPIC -DNDEBUG"
							 | 
						||
| 
								 | 
							
								else
							 | 
						||
| 
								 | 
							
								   CFLAGS=${CFLAGS:-"-g -O2 -Wall -pedantic -pipe -fPIC"}
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if [[ $ac_cv_c_bigendian = "yes" ]] ; then
							 | 
						||
| 
								 | 
							
								   CFLAGS="$CFLAGS -DPA_BIG_ENDIAN"
							 | 
						||
| 
								 | 
							
								else
							 | 
						||
| 
								 | 
							
								   CFLAGS="$CFLAGS -DPA_LITTLE_ENDIAN"
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								add_objects()
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    for o in $@; do
							 | 
						||
| 
								 | 
							
								        test "${OTHER_OBJS#*${o}*}" = "${OTHER_OBJS}" && OTHER_OBJS="$OTHER_OBJS $o"
							 | 
						||
| 
								 | 
							
								    done
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								INCLUDES=portaudio.h
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								dnl Include directories needed by all implementations
							 | 
						||
| 
								 | 
							
								CFLAGS="$CFLAGS -I\$(top_srcdir)/include -I\$(top_srcdir)/src/common"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								case "${host_os}" in
							 | 
						||
| 
								 | 
							
								  darwin* )
							 | 
						||
| 
								 | 
							
								        dnl Mac OS X configuration
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        AC_DEFINE(PA_USE_COREAUDIO,1)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        CFLAGS="$CFLAGS -I\$(top_srcdir)/src/os/unix -Wno-deprecated"
							 | 
						||
| 
								 | 
							
								        LIBS="-framework CoreAudio -framework AudioToolbox -framework AudioUnit -framework CoreFoundation -framework CoreServices"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        if test "x$enable_mac_universal" = "xyes" ; then
							 | 
						||
| 
								 | 
							
								           mac_version_min="-mmacosx-version-min=10.6"
							 | 
						||
| 
								 | 
							
								           mac_sysroot="-isysroot $(xcrun --sdk macosx --show-sdk-path)"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								           dnl Pick which architectures to build for based on what
							 | 
						||
| 
								 | 
							
								           dnl the compiler and SDK supports.
							 | 
						||
| 
								 | 
							
								           mac_arches=""
							 | 
						||
| 
								 | 
							
								           for arch in x86_64 arm64
							 | 
						||
| 
								 | 
							
								           do
							 | 
						||
| 
								 | 
							
								              save_CFLAGS="$CFLAGS"
							 | 
						||
| 
								 | 
							
								              CFLAGS="$CFLAGS -arch $arch"
							 | 
						||
| 
								 | 
							
								              AC_COMPILE_IFELSE(
							 | 
						||
| 
								 | 
							
								                 [AC_LANG_SOURCE([$PAMAC_TEST_PROGRAM])],
							 | 
						||
| 
								 | 
							
								                 [
							 | 
						||
| 
								 | 
							
								                    if [[ -z "$mac_arches" ]] ; then
							 | 
						||
| 
								 | 
							
								                       mac_arches="-arch $arch"
							 | 
						||
| 
								 | 
							
								                    else
							 | 
						||
| 
								 | 
							
								                       mac_arches="$mac_arches -arch $arch"
							 | 
						||
| 
								 | 
							
								                    fi
							 | 
						||
| 
								 | 
							
								                 ])
							 | 
						||
| 
								 | 
							
								              CFLAGS="$save_CFLAGS"
							 | 
						||
| 
								 | 
							
								           done
							 | 
						||
| 
								 | 
							
								        else
							 | 
						||
| 
								 | 
							
								           mac_arches=""
							 | 
						||
| 
								 | 
							
								           mac_sysroot=""
							 | 
						||
| 
								 | 
							
								           mac_version=""
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								        SHARED_FLAGS="$LIBS -dynamiclib $mac_arches $mac_sysroot $mac_version_min"
							 | 
						||
| 
								 | 
							
								        AX_CHECK_COMPILE_FLAG([-std=c11], [CFLAGS="-std=c11 $CFLAGS"], [CFLAGS="-std=c99 $CFLAGS"])
							 | 
						||
| 
								 | 
							
								        CFLAGS="$CFLAGS $mac_arches $mac_sysroot $mac_version_min"
							 | 
						||
| 
								 | 
							
								        OTHER_OBJS="src/os/unix/pa_unix_hostapis.o src/os/unix/pa_unix_util.o src/hostapi/coreaudio/pa_mac_core.o src/hostapi/coreaudio/pa_mac_core_utilities.o src/hostapi/coreaudio/pa_mac_core_blocking.o src/common/pa_ringbuffer.o"
							 | 
						||
| 
								 | 
							
								        PADLL="libportaudio.dylib"
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  mingw* )
							 | 
						||
| 
								 | 
							
								        dnl MingW configuration
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        PADLL="portaudio.dll"
							 | 
						||
| 
								 | 
							
								        THREAD_CFLAGS="-mthreads"
							 | 
						||
| 
								 | 
							
								        SHARED_FLAGS="-shared"
							 | 
						||
| 
								 | 
							
								        CFLAGS="$CFLAGS -I\$(top_srcdir)/src/os/win -DPA_USE_WMME=0 -DPA_USE_ASIO=0 -DPA_USE_WDMKS=0 -DPA_USE_DS=0 -DPA_USE_WASAPI=0"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        if [[ "x$with_directx" = "xyes" ]]; then
							 | 
						||
| 
								 | 
							
								            DXDIR="$with_dxdir"
							 | 
						||
| 
								 | 
							
								            add_objects src/hostapi/dsound/pa_win_ds.o src/hostapi/dsound/pa_win_ds_dynlink.o src/os/win/pa_win_hostapis.o src/os/win/pa_win_util.o src/os/win/pa_win_coinitialize.o src/os/win/pa_win_waveformat.o
							 | 
						||
| 
								 | 
							
								            LIBS="${LIBS} -lwinmm -lm -ldsound -lole32"
							 | 
						||
| 
								 | 
							
								            DLL_LIBS="${DLL_LIBS} -lwinmm -lm -L$DXDIR/lib -ldsound -lole32"
							 | 
						||
| 
								 | 
							
								            #VC98="\"/c/Program Files/Microsoft Visual Studio/VC98/Include\""
							 | 
						||
| 
								 | 
							
								            #CFLAGS="$CFLAGS -I$VC98 -DPA_NO_WMME -DPA_NO_ASIO"
							 | 
						||
| 
								 | 
							
								            CFLAGS="$CFLAGS -I$DXDIR/include -UPA_USE_DS -DPA_USE_DS=1"
							 | 
						||
| 
								 | 
							
								            INCLUDES="$INCLUDES pa_win_ds.h pa_win_waveformat.h"
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        if [[ "x$with_asio" = "xyes" ]]; then
							 | 
						||
| 
								 | 
							
								            ASIODIR="$with_asiodir"
							 | 
						||
| 
								 | 
							
								            add_objects src/hostapi/asio/pa_asio.o src/common/pa_ringbuffer.o src/os/win/pa_win_hostapis.o src/os/win/pa_win_util.o src/os/win/pa_win_coinitialize.o src/hostapi/asio/iasiothiscallresolver.o $ASIODIR/common/asio.o $ASIODIR/host/asiodrivers.o $ASIODIR/host/pc/asiolist.o
							 | 
						||
| 
								 | 
							
								            LIBS="${LIBS} -lwinmm -lm -lole32 -luuid"
							 | 
						||
| 
								 | 
							
								            DLL_LIBS="${DLL_LIBS} -lwinmm -lm -lole32 -luuid"
							 | 
						||
| 
								 | 
							
								            CFLAGS="$CFLAGS -ffast-math -fomit-frame-pointer -I\$(top_srcdir)/src/hostapi/asio -I$ASIODIR/host/pc -I$ASIODIR/common -I$ASIODIR/host -UPA_USE_ASIO -DPA_USE_ASIO=1 -DWINDOWS"
							 | 
						||
| 
								 | 
							
								            INCLUDES="$INCLUDES pa_asio.h"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            dnl Setting the windows version flags below resolves a conflict between Interlocked*
							 | 
						||
| 
								 | 
							
								            dnl definitions in mingw winbase.h and Interlocked* hacks in ASIO SDK combase.h
							 | 
						||
| 
								 | 
							
								            dnl combase.h is included by asiodrvr.h
							 | 
						||
| 
								 | 
							
								            dnl PortAudio does not actually require Win XP (winver 501) APIs
							 | 
						||
| 
								 | 
							
								            CFLAGS="$CFLAGS -D_WIN32_WINNT=0x0501 -DWINVER=0x0501"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								            CXXFLAGS="$CFLAGS"
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        if [[ "x$with_wdmks" = "xyes" ]]; then
							 | 
						||
| 
								 | 
							
								            DXDIR="$with_dxdir"
							 | 
						||
| 
								 | 
							
								            add_objects src/hostapi/wdmks/pa_win_wdmks.o src/common/pa_ringbuffer.o src/os/win/pa_win_hostapis.o src/os/win/pa_win_util.o src/os/win/pa_win_wdmks_utils.o src/os/win/pa_win_waveformat.o
							 | 
						||
| 
								 | 
							
								            LIBS="${LIBS} -lwinmm -lm -luuid -lsetupapi -lole32"
							 | 
						||
| 
								 | 
							
								            DLL_LIBS="${DLL_LIBS} -lwinmm -lm -L$DXDIR/lib -luuid -lsetupapi -lole32"
							 | 
						||
| 
								 | 
							
								            #VC98="\"/c/Program Files/Microsoft Visual Studio/VC98/Include\""
							 | 
						||
| 
								 | 
							
								            #CFLAGS="$CFLAGS -I$VC98 -DPA_NO_WMME -DPA_NO_ASIO"
							 | 
						||
| 
								 | 
							
								            CFLAGS="$CFLAGS -I$DXDIR/include -UPA_USE_WDMKS -DPA_USE_WDMKS=1"
							 | 
						||
| 
								 | 
							
								            INCLUDES="$INCLUDES pa_win_wdmks.h"
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        if [[ "x$with_wmme" = "xyes" ]]; then
							 | 
						||
| 
								 | 
							
								            add_objects src/hostapi/wmme/pa_win_wmme.o src/os/win/pa_win_hostapis.o src/os/win/pa_win_util.o src/os/win/pa_win_waveformat.o
							 | 
						||
| 
								 | 
							
								            LIBS="${LIBS} -lwinmm -lm -lole32 -luuid"
							 | 
						||
| 
								 | 
							
								            DLL_LIBS="${DLL_LIBS} -lwinmm"
							 | 
						||
| 
								 | 
							
								            CFLAGS="$CFLAGS -UPA_USE_WMME -DPA_USE_WMME=1"
							 | 
						||
| 
								 | 
							
								            INCLUDES="$INCLUDES pa_win_wmme.h pa_win_waveformat.h"
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        if [[ "x$with_wasapi" = "xyes" ]]; then
							 | 
						||
| 
								 | 
							
								            add_objects src/hostapi/wasapi/pa_win_wasapi.o src/common/pa_ringbuffer.o src/os/win/pa_win_hostapis.o src/os/win/pa_win_util.o src/os/win/pa_win_coinitialize.o src/os/win/pa_win_waveformat.o
							 | 
						||
| 
								 | 
							
								            LIBS="${LIBS} -lwinmm -lm -lole32 -luuid"
							 | 
						||
| 
								 | 
							
								            DLL_LIBS="${DLL_LIBS} -lwinmm -lole32"
							 | 
						||
| 
								 | 
							
								            CFLAGS="$CFLAGS -UPA_USE_WASAPI -DPA_USE_WASAPI=1"
							 | 
						||
| 
								 | 
							
								            INCLUDES="$INCLUDES pa_win_wasapi.h pa_win_waveformat.h"
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  cygwin* )
							 | 
						||
| 
								 | 
							
								        dnl Cygwin configuration
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        OTHER_OBJS="src/hostapi/wmme/pa_win_wmme.o src/os/win/pa_win_hostapis.o src/os/win/pa_win_util.o src/os/win/pa_win_waveformat.o"
							 | 
						||
| 
								 | 
							
								        CFLAGS="$CFLAGS -I\$(top_srcdir)/src/os/win -DPA_USE_DS=0 -DPA_USE_WDMKS=0 -DPA_USE_ASIO=0 -DPA_USE_WASAPI=0 -DPA_USE_WMME=1"
							 | 
						||
| 
								 | 
							
								        LIBS="-lwinmm -lm"
							 | 
						||
| 
								 | 
							
								        PADLL="portaudio.dll"
							 | 
						||
| 
								 | 
							
								        THREAD_CFLAGS="-mthreads"
							 | 
						||
| 
								 | 
							
								        SHARED_FLAGS="-shared"
							 | 
						||
| 
								 | 
							
								        DLL_LIBS="${DLL_LIBS} -lwinmm"
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  irix* )
							 | 
						||
| 
								 | 
							
								        dnl SGI IRIX audio library (AL) configuration (Pieter, oct 2-13, 2003).
							 | 
						||
| 
								 | 
							
								        dnl The 'dmedia' library is needed to read the Unadjusted System Time (UST).
							 | 
						||
| 
								 | 
							
								        dnl
							 | 
						||
| 
								 | 
							
								        AC_CHECK_LIB(pthread, pthread_create, , AC_MSG_ERROR([IRIX posix thread library not found!]))
							 | 
						||
| 
								 | 
							
								        AC_CHECK_LIB(audio,   alOpenPort,     , AC_MSG_ERROR([IRIX audio library not found!]))
							 | 
						||
| 
								 | 
							
								        AC_CHECK_LIB(dmedia,  dmGetUST,       , AC_MSG_ERROR([IRIX digital media library not found!]))
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        dnl See the '#ifdef PA_USE_SGI' in file pa_unix/pa_unix_hostapis.c
							 | 
						||
| 
								 | 
							
								        dnl which selects the appropriate PaXXX_Initialize() function.
							 | 
						||
| 
								 | 
							
								        dnl
							 | 
						||
| 
								 | 
							
								        AC_DEFINE(PA_USE_SGI,1)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        CFLAGS="$CFLAGS -I\$(top_srcdir)/src/os/unix"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        dnl The _REENTRANT option for pthread safety. Perhaps not necessary but it 'll do no harm.
							 | 
						||
| 
								 | 
							
								        dnl
							 | 
						||
| 
								 | 
							
								        THREAD_CFLAGS="-D_REENTRANT"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        OTHER_OBJS="pa_sgi/pa_sgi.o src/os/unix/pa_unix_hostapis.o src/os/unix/pa_unix_util.o"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        dnl SGI books say -lpthread should be the last of the libs mentioned.
							 | 
						||
| 
								 | 
							
								        dnl
							 | 
						||
| 
								 | 
							
								        LIBS="-lm -ldmedia -laudio -lpthread"
							 | 
						||
| 
								 | 
							
								        PADLL="libportaudio.so"
							 | 
						||
| 
								 | 
							
								        SHARED_FLAGS=""
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  *)
							 | 
						||
| 
								 | 
							
								        dnl Unix configuration
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        CFLAGS="$CFLAGS -I\$(top_srcdir)/src/os/unix"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        AC_CHECK_LIB(pthread, pthread_create,[have_pthread="yes"],
							 | 
						||
| 
								 | 
							
								                AC_MSG_ERROR([libpthread not found!]))
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        if [[ "$have_alsa" = "yes" ] && [ "$with_alsa" != "no" ]] ; then
							 | 
						||
| 
								 | 
							
								           DLL_LIBS="$DLL_LIBS -lasound"
							 | 
						||
| 
								 | 
							
								           LIBS="$LIBS -lasound"
							 | 
						||
| 
								 | 
							
								           OTHER_OBJS="$OTHER_OBJS src/hostapi/alsa/pa_linux_alsa.o"
							 | 
						||
| 
								 | 
							
								           INCLUDES="$INCLUDES pa_linux_alsa.h"
							 | 
						||
| 
								 | 
							
								           AC_DEFINE(PA_USE_ALSA,1)
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        if [[ "$have_audioio" = "yes" ] && [ "$with_audioio" != "no" ]] ; then
							 | 
						||
| 
								 | 
							
								           OTHER_OBJS="$OTHER_OBJS src/hostapi/audioio/pa_unix_audioio.o"
							 | 
						||
| 
								 | 
							
								           AC_DEFINE(PA_USE_AUDIOIO,1)
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        if [[ "$have_jack" = "yes" ] && [ "$with_jack" != "no" ]] ; then
							 | 
						||
| 
								 | 
							
								           DLL_LIBS="$DLL_LIBS $JACK_LIBS"
							 | 
						||
| 
								 | 
							
								           CFLAGS="$CFLAGS $JACK_CFLAGS"
							 | 
						||
| 
								 | 
							
								           OTHER_OBJS="$OTHER_OBJS src/hostapi/jack/pa_jack.o src/common/pa_ringbuffer.o"
							 | 
						||
| 
								 | 
							
								           INCLUDES="$INCLUDES pa_jack.h"
							 | 
						||
| 
								 | 
							
								           AC_DEFINE(PA_USE_JACK,1)
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        if [[ "$with_oss" != "no" ]] ; then
							 | 
						||
| 
								 | 
							
								           OTHER_OBJS="$OTHER_OBJS src/hostapi/oss/pa_unix_oss.o"
							 | 
						||
| 
								 | 
							
								           if [[ "$have_libossaudio" = "yes" ]] ; then
							 | 
						||
| 
								 | 
							
								                   DLL_LIBS="$DLL_LIBS -lossaudio"
							 | 
						||
| 
								 | 
							
								                   LIBS="$LIBS -lossaudio"
							 | 
						||
| 
								 | 
							
								           fi
							 | 
						||
| 
								 | 
							
								           AC_DEFINE(PA_USE_OSS,1)
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        if [[ "$have_asihpi" = "yes" ] && [ "$with_asihpi" != "no" ]] ; then
							 | 
						||
| 
								 | 
							
								           LIBS="$LIBS -lhpi"
							 | 
						||
| 
								 | 
							
								           DLL_LIBS="$DLL_LIBS -lhpi"
							 | 
						||
| 
								 | 
							
								           OTHER_OBJS="$OTHER_OBJS src/hostapi/asihpi/pa_linux_asihpi.o"
							 | 
						||
| 
								 | 
							
								           AC_DEFINE(PA_USE_ASIHPI,1)
							 | 
						||
| 
								 | 
							
								        fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        DLL_LIBS="$DLL_LIBS -lm -lpthread"
							 | 
						||
| 
								 | 
							
								        LIBS="$LIBS -lm -lpthread"
							 | 
						||
| 
								 | 
							
								        PADLL="libportaudio.so"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        ## support sun cc compiler flags
							 | 
						||
| 
								 | 
							
								        case "${host_os}" in
							 | 
						||
| 
								 | 
							
								           solaris*)
							 | 
						||
| 
								 | 
							
								              SHARED_FLAGS="-G"
							 | 
						||
| 
								 | 
							
								              THREAD_CFLAGS="-mt"
							 | 
						||
| 
								 | 
							
								              ;;
							 | 
						||
| 
								 | 
							
								           *)
							 | 
						||
| 
								 | 
							
								              SHARED_FLAGS="-fPIC"
							 | 
						||
| 
								 | 
							
								              THREAD_CFLAGS="-pthread"
							 | 
						||
| 
								 | 
							
								              ;;
							 | 
						||
| 
								 | 
							
								        esac
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        OTHER_OBJS="$OTHER_OBJS src/os/unix/pa_unix_hostapis.o src/os/unix/pa_unix_util.o"
							 | 
						||
| 
								 | 
							
								esac
							 | 
						||
| 
								 | 
							
								CFLAGS="$CFLAGS $THREAD_CFLAGS"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								test "$enable_shared" != "yes" && SHARED_FLAGS=""
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if test "$enable_cxx" = "yes"; then
							 | 
						||
| 
								 | 
							
								   AC_CONFIG_SUBDIRS([bindings/cpp])
							 | 
						||
| 
								 | 
							
								   ENABLE_CXX_TRUE=""
							 | 
						||
| 
								 | 
							
								   ENABLE_CXX_FALSE="#"
							 | 
						||
| 
								 | 
							
								else
							 | 
						||
| 
								 | 
							
								   ENABLE_CXX_TRUE="#"
							 | 
						||
| 
								 | 
							
								   ENABLE_CXX_FALSE=""
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								AC_SUBST(ENABLE_CXX_TRUE)
							 | 
						||
| 
								 | 
							
								AC_SUBST(ENABLE_CXX_FALSE)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if test "x$with_asio" = "xyes"; then
							 | 
						||
| 
								 | 
							
								   WITH_ASIO_TRUE=""
							 | 
						||
| 
								 | 
							
								   WITH_ASIO_FALSE="@ #"
							 | 
						||
| 
								 | 
							
								else
							 | 
						||
| 
								 | 
							
								   WITH_ASIO_TRUE="@ #"
							 | 
						||
| 
								 | 
							
								   WITH_ASIO_FALSE=""
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								AC_SUBST(WITH_ASIO_TRUE)
							 | 
						||
| 
								 | 
							
								AC_SUBST(WITH_ASIO_FALSE)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_OUTPUT([Makefile portaudio-2.0.pc])
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								AC_MSG_RESULT([
							 | 
						||
| 
								 | 
							
								Configuration summary:
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  Target ...................... $target
							 | 
						||
| 
								 | 
							
								  C++ bindings ................ $enable_cxx
							 | 
						||
| 
								 | 
							
								  Debug output ................ $debug_output])
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								case "$target_os" in *linux*)
							 | 
						||
| 
								 | 
							
								    AC_MSG_RESULT([
							 | 
						||
| 
								 | 
							
								  ALSA ........................ $have_alsa
							 | 
						||
| 
								 | 
							
								  ASIHPI ...................... $have_asihpi])
							 | 
						||
| 
								 | 
							
								    ;;
							 | 
						||
| 
								 | 
							
								esac
							 | 
						||
| 
								 | 
							
								case "$target_os" in
							 | 
						||
| 
								 | 
							
								    *mingw* | *cygwin*)
							 | 
						||
| 
								 | 
							
								        test "x$with_directx" = "xyes" && with_directx="$with_directx (${with_dxdir})"
							 | 
						||
| 
								 | 
							
								        test "x$with_wdmks" = "xyes" && with_wdmks="$with_wdmks (${with_dxdir})"
							 | 
						||
| 
								 | 
							
								        test "x$with_asio" = "xyes" && with_asio="$with_asio (${with_asiodir})"
							 | 
						||
| 
								 | 
							
								        test "x$with_wasapi" = "xyes"
							 | 
						||
| 
								 | 
							
								        AC_MSG_RESULT([
							 | 
						||
| 
								 | 
							
								  WMME ........................ $with_wmme
							 | 
						||
| 
								 | 
							
								  DSound ...................... $with_directx
							 | 
						||
| 
								 | 
							
								  ASIO ........................ $with_asio
							 | 
						||
| 
								 | 
							
								  WASAPI ...................... $with_wasapi
							 | 
						||
| 
								 | 
							
								  WDMKS ....................... $with_wdmks
							 | 
						||
| 
								 | 
							
								])
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								    *darwin*)
							 | 
						||
| 
								 | 
							
								        AC_MSG_RESULT([
							 | 
						||
| 
								 | 
							
								  Mac debug flags ............. $enable_mac_debug
							 | 
						||
| 
								 | 
							
								])
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								     *)
							 | 
						||
| 
								 | 
							
									AC_MSG_RESULT([
							 | 
						||
| 
								 | 
							
								  AudioIO ..................... $have_audioio
							 | 
						||
| 
								 | 
							
								  OSS ......................... $have_oss
							 | 
						||
| 
								 | 
							
								  JACK ........................ $have_jack
							 | 
						||
| 
								 | 
							
								])
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								esac
							 |