cannam@140: dnl cannam@140: dnl portaudio V19 configure.in script cannam@140: dnl cannam@140: dnl Dominic Mazzoni, Arve Knudsen, Stelios Bounanos cannam@140: dnl cannam@140: cannam@140: dnl Require autoconf >= 2.13 cannam@140: AC_PREREQ(2.13) cannam@140: cannam@140: dnl Init autoconf and make sure configure is being called cannam@140: dnl from the right directory cannam@140: AC_INIT([include/portaudio.h]) cannam@140: cannam@140: dnl Define build, build_cpu, build_vendor, build_os cannam@140: AC_CANONICAL_BUILD cannam@140: dnl Define host, host_cpu, host_vendor, host_os cannam@140: AC_CANONICAL_HOST cannam@140: dnl Define target, target_cpu, target_vendor, target_os cannam@140: AC_CANONICAL_TARGET cannam@140: cannam@140: dnl Specify options cannam@140: cannam@140: AC_ARG_WITH(alsa, cannam@140: AS_HELP_STRING([--with-alsa], [Enable support for ALSA @<:@autodetect@:>@]), cannam@140: [with_alsa=$withval]) cannam@140: cannam@140: AC_ARG_WITH(jack, cannam@140: AS_HELP_STRING([--with-jack], [Enable support for JACK @<:@autodetect@:>@]), cannam@140: [with_jack=$withval]) cannam@140: cannam@140: AC_ARG_WITH(oss, cannam@140: AS_HELP_STRING([--with-oss], [Enable support for OSS @<:@autodetect@:>@]), cannam@140: [with_oss=$withval]) cannam@140: cannam@140: AC_ARG_WITH(asihpi, cannam@140: AS_HELP_STRING([--with-asihpi], [Enable support for ASIHPI @<:@autodetect@:>@]), cannam@140: [with_asihpi=$withval]) cannam@140: cannam@140: AC_ARG_WITH(winapi, cannam@140: AS_HELP_STRING([--with-winapi], cannam@140: [Select Windows API support (@<:@wmme|directx|asio|wasapi|wdmks@:>@@<:@,...@:>@) @<:@wmme@:>@]), cannam@140: [with_winapi=$withval], [with_winapi="wmme"]) cannam@140: case "$target_os" in *mingw* | *cygwin*) cannam@140: with_wmme=no cannam@140: with_directx=no cannam@140: with_asio=no cannam@140: with_wasapi=no cannam@140: with_wdmks=no cannam@140: for api in $(echo $with_winapi | sed 's/,/ /g'); do cannam@140: case "$api" in cannam@140: wmme|directx|asio|wasapi|wdmks) cannam@140: eval with_$api=yes cannam@140: ;; cannam@140: *) cannam@140: AC_MSG_ERROR([unknown Windows API \"$api\" (do you need --help?)]) cannam@140: ;; cannam@140: esac cannam@140: done cannam@140: ;; cannam@140: esac cannam@140: cannam@140: AC_ARG_WITH(asiodir, cannam@140: AS_HELP_STRING([--with-asiodir], [ASIO directory @<:@/usr/local/asiosdk2@:>@]), cannam@140: with_asiodir=$withval, with_asiodir="/usr/local/asiosdk2") cannam@140: cannam@140: AC_ARG_WITH(dxdir, cannam@140: AS_HELP_STRING([--with-dxdir], [DirectX directory @<:@/usr/local/dx7sdk@:>@]), cannam@140: with_dxdir=$withval, with_dxdir="/usr/local/dx7sdk") cannam@140: cannam@140: debug_output=no cannam@140: AC_ARG_ENABLE(debug-output, cannam@140: AS_HELP_STRING([--enable-debug-output], [Enable debug output @<:@no@:>@]), cannam@140: [if test "x$enableval" != "xno" ; then cannam@140: AC_DEFINE(PA_ENABLE_DEBUG_OUTPUT,,[Enable debugging messages]) cannam@140: debug_output=yes cannam@140: fi cannam@140: ]) cannam@140: cannam@140: AC_ARG_ENABLE(cxx, cannam@140: AS_HELP_STRING([--enable-cxx], [Enable C++ bindings @<:@no@:>@]), cannam@140: enable_cxx=$enableval, enable_cxx="no") cannam@140: cannam@140: AC_ARG_ENABLE(mac-debug, cannam@140: AS_HELP_STRING([--enable-mac-debug], [Enable Mac debug @<:@no@:>@]), cannam@140: enable_mac_debug=$enableval, enable_mac_debug="no") cannam@140: cannam@140: AC_ARG_ENABLE(mac-universal, cannam@140: AS_HELP_STRING([--enable-mac-universal], [Build Mac universal binaries @<:@yes@:>@]), cannam@140: enable_mac_universal=$enableval, enable_mac_universal="yes") cannam@140: cannam@140: dnl Continue to accept --host_os for compatibility but do not document cannam@140: dnl it (the correct way to change host_os is with --host=...). Moved cannam@140: dnl here because the empty help string generates a blank line which we cannam@140: dnl can use to separate PA options from libtool options. cannam@140: AC_ARG_WITH(host_os, [], host_os=$withval) cannam@140: cannam@140: dnl Checks for programs. cannam@140: cannam@140: AC_PROG_CC cannam@140: dnl ASIO and CXX bindings need a C++ compiler cannam@140: if [[ "$with_asio" = "yes" ] || [ "$enable_cxx" = "yes" ]] ; then cannam@140: AC_PROG_CXX cannam@140: fi cannam@140: AC_LIBTOOL_WIN32_DLL cannam@140: AC_PROG_LIBTOOL cannam@140: AC_PROG_INSTALL cannam@140: AC_PROG_LN_S cannam@140: AC_PATH_PROG(AR, ar, no) cannam@140: if [[ $AR = "no" ]] ; then cannam@140: AC_MSG_ERROR("Could not find ar - needed to create a library") cannam@140: fi cannam@140: cannam@140: dnl This must be one of the first tests we do or it will fail... cannam@140: AC_C_BIGENDIAN cannam@140: cannam@140: dnl checks for various host APIs and arguments to configure that cannam@140: dnl turn them on or off cannam@140: cannam@140: have_alsa=no cannam@140: if test "x$with_alsa" != "xno"; then cannam@140: AC_CHECK_LIB(asound, snd_pcm_open, have_alsa=yes, have_alsa=no) cannam@140: fi cannam@140: have_asihpi=no cannam@140: if test "x$with_asihpi" != "xno"; then cannam@140: AC_CHECK_LIB(hpi, HPI_SubSysCreate, have_asihpi=yes, have_asihpi=no, -lm) cannam@140: fi cannam@140: have_libossaudio=no cannam@140: have_oss=no cannam@140: if test "x$with_oss" != "xno"; then cannam@140: AC_CHECK_HEADERS([sys/soundcard.h linux/soundcard.h machine/soundcard.h], [have_oss=yes]) cannam@140: if test "x$have_oss" = "xyes"; then cannam@140: AC_CHECK_LIB(ossaudio, _oss_ioctl, have_libossaudio=yes, have_libossaudio=no) cannam@140: fi cannam@140: fi cannam@140: have_jack=no cannam@140: if test "x$with_jack" != "xno"; then cannam@140: PKG_CHECK_MODULES(JACK, jack, have_jack=yes, have_jack=no) cannam@140: fi cannam@140: cannam@140: cannam@140: dnl sizeof checks: we will need a 16-bit and a 32-bit type cannam@140: cannam@140: AC_CHECK_SIZEOF(short) cannam@140: AC_CHECK_SIZEOF(int) cannam@140: AC_CHECK_SIZEOF(long) cannam@140: cannam@140: save_LIBS="${LIBS}" cannam@140: AC_CHECK_LIB(rt, clock_gettime, [rt_libs=" -lrt"]) cannam@140: LIBS="${LIBS}${rt_libs}" cannam@140: DLL_LIBS="${DLL_LIBS}${rt_libs}" cannam@140: AC_CHECK_FUNCS([clock_gettime nanosleep]) cannam@140: LIBS="${save_LIBS}" cannam@140: cannam@140: dnl LT_RELEASE=19 cannam@140: LT_CURRENT=2 cannam@140: LT_REVISION=0 cannam@140: LT_AGE=0 cannam@140: cannam@140: AC_SUBST(LT_CURRENT) cannam@140: AC_SUBST(LT_REVISION) cannam@140: AC_SUBST(LT_AGE) cannam@140: cannam@140: dnl extra variables cannam@140: AC_SUBST(OTHER_OBJS) cannam@140: AC_SUBST(PADLL) cannam@140: AC_SUBST(SHARED_FLAGS) cannam@140: AC_SUBST(THREAD_CFLAGS) cannam@140: AC_SUBST(DLL_LIBS) cannam@140: AC_SUBST(CXXFLAGS) cannam@140: AC_SUBST(NASM) cannam@140: AC_SUBST(NASMOPT) cannam@140: AC_SUBST(INCLUDES) cannam@140: cannam@140: dnl -g is optional on darwin cannam@140: if ( echo "${host_os}" | grep ^darwin >> /dev/null ) && cannam@140: [[ "$enable_mac_universal" = "yes" ] && cannam@140: [ "$enable_mac_debug" != "yes" ]] ; then cannam@140: CFLAGS="-O2 -Wall -pedantic -pipe -fPIC -DNDEBUG" cannam@140: else cannam@140: CFLAGS=${CFLAGS:-"-g -O2 -Wall -pedantic -pipe -fPIC"} cannam@140: fi cannam@140: cannam@140: if [[ $ac_cv_c_bigendian = "yes" ]] ; then cannam@140: CFLAGS="$CFLAGS -DPA_BIG_ENDIAN" cannam@140: else cannam@140: CFLAGS="$CFLAGS -DPA_LITTLE_ENDIAN" cannam@140: fi cannam@140: cannam@140: add_objects() cannam@140: { cannam@140: for o in $@; do cannam@140: test "${OTHER_OBJS#*${o}*}" = "${OTHER_OBJS}" && OTHER_OBJS="$OTHER_OBJS $o" cannam@140: done cannam@140: } cannam@140: cannam@140: INCLUDES=portaudio.h cannam@140: cannam@140: dnl Include directories needed by all implementations cannam@140: CFLAGS="$CFLAGS -I\$(top_srcdir)/include -I\$(top_srcdir)/src/common" cannam@140: cannam@140: case "${host_os}" in cannam@140: darwin* ) cannam@140: dnl Mac OS X configuration cannam@140: cannam@140: AC_DEFINE(PA_USE_COREAUDIO,1) cannam@140: cannam@140: CFLAGS="$CFLAGS -I\$(top_srcdir)/src/os/unix -Wno-deprecated -Werror" cannam@140: LIBS="-framework CoreAudio -framework AudioToolbox -framework AudioUnit -framework Carbon" cannam@140: cannam@140: if test "x$enable_mac_universal" = "xyes" ; then cannam@140: case `xcodebuild -version | sed -n 's/Xcode \(.*\)/\1/p'` in cannam@140: cannam@140: [12]*|3.0|3.1) cannam@140: dnl In pre-3.2 versions of Xcode, xcodebuild doesn't cannam@140: dnl support -sdk, so we can't use that to look for cannam@140: dnl SDKs. However, in those versions of Xcode, the cannam@140: dnl SDKs are under /Developer/SDKs, so we can just look cannam@140: dnl there. Also, we assume they had no SDKs later cannam@140: dnl than 10.5, as 3.2 was the version that came with cannam@140: dnl 10.6, at least if the Wikipedia page for Xcode cannam@140: dnl is to be believed. cannam@140: if [[ -d /Developer/SDKs/MacOSX10.5.sdk ]] ; then cannam@140: mac_version_min="-mmacosx-version-min=10.3" cannam@140: mac_sysroot="-isysroot /Developer/SDKs/MacOSX10.5.sdk" cannam@140: else cannam@140: mac_version_min="-mmacosx-version-min=10.3" cannam@140: mac_sysroot="-isysroot /Developer/SDKs/MacOSX10.4u.sdk" cannam@140: fi cannam@140: ;; cannam@140: cannam@140: *) cannam@140: dnl In 3.2 and later, xcodebuild supports -sdk, and, in cannam@140: dnl 4.3 and later, the SDKs aren't under /Developer/SDKs cannam@140: dnl as there *is* no /Developer, so we use -sdk to check cannam@140: dnl what SDKs are available and to get the full path of cannam@140: dnl the SDKs. cannam@140: if xcodebuild -version -sdk macosx10.5 Path >/dev/null 2>&1 ; then cannam@140: mac_version_min="-mmacosx-version-min=10.3" cannam@140: mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.5 Path`" cannam@140: elif xcodebuild -version -sdk macosx10.6 Path >/dev/null 2>&1 ; then cannam@140: mac_version_min="-mmacosx-version-min=10.4" cannam@140: mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.6 Path`" cannam@140: elif xcodebuild -version -sdk macosx10.7 Path >/dev/null 2>&1 ; then cannam@140: mac_version_min="-mmacosx-version-min=10.4" cannam@140: mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.7 Path`" cannam@140: elif xcodebuild -version -sdk macosx10.8 Path >/dev/null 2>&1 ; then cannam@140: mac_version_min="-mmacosx-version-min=10.4" cannam@140: mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.8 Path`" cannam@140: elif xcodebuild -version -sdk macosx10.9 Path >/dev/null 2>&1 ; then cannam@140: mac_version_min="-mmacosx-version-min=10.4" cannam@140: mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.9 Path`" cannam@140: elif xcodebuild -version -sdk macosx10.10 Path >/dev/null 2>&1 ; then cannam@140: mac_version_min="-mmacosx-version-min=10.4" cannam@140: mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.10 Path`" cannam@140: elif xcodebuild -version -sdk macosx10.11 Path >/dev/null 2>&1 ; then cannam@140: mac_version_min="-mmacosx-version-min=10.4" cannam@140: mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.11 Path`" cannam@140: elif xcodebuild -version -sdk macosx10.12 Path >/dev/null 2>&1 ; then cannam@140: mac_version_min="-mmacosx-version-min=10.4" cannam@140: mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.12 Path`" cannam@140: else cannam@140: AC_MSG_ERROR([Could not find 10.5 to 10.12 SDK.]) cannam@140: fi cannam@140: esac cannam@140: cannam@140: dnl Pick which architectures to build for based on what cannam@140: dnl the compiler supports. cannam@140: mac_arches="" cannam@140: for arch in i386 x86_64 ppc ppc64 cannam@140: do cannam@140: save_CFLAGS="$CFLAGS" cannam@140: CFLAGS="$CFLAGS -arch $arch" cannam@140: AC_TRY_COMPILE([], [return 0;], cannam@140: [ cannam@140: if [[ -z "$mac_arches" ]] ; then cannam@140: mac_arches="-arch $arch" cannam@140: else cannam@140: mac_arches="$mac_arches -arch $arch" cannam@140: fi cannam@140: ]) cannam@140: CFLAGS="$save_CFLAGS" cannam@140: done cannam@140: else cannam@140: mac_arches="" cannam@140: mac_sysroot="" cannam@140: mac_version="" cannam@140: fi cannam@140: SHARED_FLAGS="$LIBS -dynamiclib $mac_arches $mac_sysroot $mac_version_min" cannam@140: CFLAGS="-std=c99 $CFLAGS $mac_arches $mac_sysroot $mac_version_min" cannam@140: 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" cannam@140: PADLL="libportaudio.dylib" cannam@140: ;; cannam@140: cannam@140: mingw* ) cannam@140: dnl MingW configuration cannam@140: cannam@140: PADLL="portaudio.dll" cannam@140: THREAD_CFLAGS="-mthreads" cannam@140: SHARED_FLAGS="-shared" cannam@140: 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" cannam@140: cannam@140: if [[ "x$with_directx" = "xyes" ]]; then cannam@140: DXDIR="$with_dxdir" cannam@140: 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 cannam@140: LIBS="${LIBS} -lwinmm -lm -ldsound -lole32" cannam@140: DLL_LIBS="${DLL_LIBS} -lwinmm -lm -L$DXDIR/lib -ldsound -lole32" cannam@140: #VC98="\"/c/Program Files/Microsoft Visual Studio/VC98/Include\"" cannam@140: #CFLAGS="$CFLAGS -I$VC98 -DPA_NO_WMME -DPA_NO_ASIO" cannam@140: CFLAGS="$CFLAGS -I$DXDIR/include -UPA_USE_DS -DPA_USE_DS=1" cannam@140: fi cannam@140: cannam@140: if [[ "x$with_asio" = "xyes" ]]; then cannam@140: ASIODIR="$with_asiodir" cannam@140: 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 cannam@140: LIBS="${LIBS} -lwinmm -lm -lole32 -luuid" cannam@140: DLL_LIBS="${DLL_LIBS} -lwinmm -lm -lole32 -luuid" cannam@140: 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" cannam@140: cannam@140: dnl Setting the windows version flags below resolves a conflict between Interlocked* cannam@140: dnl definitions in mingw winbase.h and Interlocked* hacks in ASIO SDK combase.h cannam@140: dnl combase.h is included by asiodrvr.h cannam@140: dnl PortAudio does not actually require Win XP (winver 501) APIs cannam@140: CFLAGS="$CFLAGS -D_WIN32_WINNT=0x0501 -DWINVER=0x0501" cannam@140: cannam@140: CXXFLAGS="$CFLAGS" cannam@140: fi cannam@140: cannam@140: if [[ "x$with_wdmks" = "xyes" ]]; then cannam@140: DXDIR="$with_dxdir" cannam@140: 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 cannam@140: LIBS="${LIBS} -lwinmm -lm -luuid -lsetupapi -lole32" cannam@140: DLL_LIBS="${DLL_LIBS} -lwinmm -lm -L$DXDIR/lib -luuid -lsetupapi -lole32" cannam@140: #VC98="\"/c/Program Files/Microsoft Visual Studio/VC98/Include\"" cannam@140: #CFLAGS="$CFLAGS -I$VC98 -DPA_NO_WMME -DPA_NO_ASIO" cannam@140: CFLAGS="$CFLAGS -I$DXDIR/include -UPA_USE_WDMKS -DPA_USE_WDMKS=1" cannam@140: fi cannam@140: cannam@140: if [[ "x$with_wmme" = "xyes" ]]; then cannam@140: 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 cannam@140: LIBS="${LIBS} -lwinmm -lm -lole32 -luuid" cannam@140: DLL_LIBS="${DLL_LIBS} -lwinmm" cannam@140: CFLAGS="$CFLAGS -UPA_USE_WMME -DPA_USE_WMME=1" cannam@140: fi cannam@140: cannam@140: if [[ "x$with_wasapi" = "xyes" ]]; then cannam@140: 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 cannam@140: LIBS="${LIBS} -lwinmm -lm -lole32 -luuid" cannam@140: DLL_LIBS="${DLL_LIBS} -lwinmm -lole32" cannam@140: CFLAGS="$CFLAGS -I\$(top_srcdir)/src/hostapi/wasapi/mingw-include -UPA_USE_WASAPI -DPA_USE_WASAPI=1" cannam@140: fi cannam@140: ;; cannam@140: cannam@140: cygwin* ) cannam@140: dnl Cygwin configuration cannam@140: cannam@140: 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" cannam@140: 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" cannam@140: LIBS="-lwinmm -lm" cannam@140: PADLL="portaudio.dll" cannam@140: THREAD_CFLAGS="-mthreads" cannam@140: SHARED_FLAGS="-shared" cannam@140: DLL_LIBS="${DLL_LIBS} -lwinmm" cannam@140: ;; cannam@140: cannam@140: irix* ) cannam@140: dnl SGI IRIX audio library (AL) configuration (Pieter, oct 2-13, 2003). cannam@140: dnl The 'dmedia' library is needed to read the Unadjusted System Time (UST). cannam@140: dnl cannam@140: AC_CHECK_LIB(pthread, pthread_create, , AC_MSG_ERROR([IRIX posix thread library not found!])) cannam@140: AC_CHECK_LIB(audio, alOpenPort, , AC_MSG_ERROR([IRIX audio library not found!])) cannam@140: AC_CHECK_LIB(dmedia, dmGetUST, , AC_MSG_ERROR([IRIX digital media library not found!])) cannam@140: cannam@140: dnl See the '#ifdef PA_USE_SGI' in file pa_unix/pa_unix_hostapis.c cannam@140: dnl which selects the appropriate PaXXX_Initialize() function. cannam@140: dnl cannam@140: AC_DEFINE(PA_USE_SGI,1) cannam@140: cannam@140: CFLAGS="$CFLAGS -I\$(top_srcdir)/src/os/unix" cannam@140: cannam@140: dnl The _REENTRANT option for pthread safety. Perhaps not necessary but it 'll do no harm. cannam@140: dnl cannam@140: THREAD_CFLAGS="-D_REENTRANT" cannam@140: cannam@140: OTHER_OBJS="pa_sgi/pa_sgi.o src/os/unix/pa_unix_hostapis.o src/os/unix/pa_unix_util.o" cannam@140: cannam@140: dnl SGI books say -lpthread should be the last of the libs mentioned. cannam@140: dnl cannam@140: LIBS="-lm -ldmedia -laudio -lpthread" cannam@140: PADLL="libportaudio.so" cannam@140: SHARED_FLAGS="" cannam@140: ;; cannam@140: cannam@140: *) cannam@140: dnl Unix configuration cannam@140: cannam@140: CFLAGS="$CFLAGS -I\$(top_srcdir)/src/os/unix" cannam@140: cannam@140: AC_CHECK_LIB(pthread, pthread_create,[have_pthread="yes"], cannam@140: AC_MSG_ERROR([libpthread not found!])) cannam@140: cannam@140: if [[ "$have_alsa" = "yes" ] && [ "$with_alsa" != "no" ]] ; then cannam@140: DLL_LIBS="$DLL_LIBS -lasound" cannam@140: LIBS="$LIBS -lasound" cannam@140: OTHER_OBJS="$OTHER_OBJS src/hostapi/alsa/pa_linux_alsa.o" cannam@140: INCLUDES="$INCLUDES pa_linux_alsa.h" cannam@140: AC_DEFINE(PA_USE_ALSA,1) cannam@140: fi cannam@140: cannam@140: if [[ "$have_jack" = "yes" ] && [ "$with_jack" != "no" ]] ; then cannam@140: DLL_LIBS="$DLL_LIBS $JACK_LIBS" cannam@140: CFLAGS="$CFLAGS $JACK_CFLAGS" cannam@140: OTHER_OBJS="$OTHER_OBJS src/hostapi/jack/pa_jack.o src/common/pa_ringbuffer.o" cannam@140: INCLUDES="$INCLUDES pa_jack.h" cannam@140: AC_DEFINE(PA_USE_JACK,1) cannam@140: fi cannam@140: cannam@140: if [[ "$with_oss" != "no" ]] ; then cannam@140: OTHER_OBJS="$OTHER_OBJS src/hostapi/oss/pa_unix_oss.o" cannam@140: if [[ "$have_libossaudio" = "yes" ]] ; then cannam@140: DLL_LIBS="$DLL_LIBS -lossaudio" cannam@140: LIBS="$LIBS -lossaudio" cannam@140: fi cannam@140: AC_DEFINE(PA_USE_OSS,1) cannam@140: fi cannam@140: cannam@140: if [[ "$have_asihpi" = "yes" ] && [ "$with_asihpi" != "no" ]] ; then cannam@140: LIBS="$LIBS -lhpi" cannam@140: DLL_LIBS="$DLL_LIBS -lhpi" cannam@140: OTHER_OBJS="$OTHER_OBJS src/hostapi/asihpi/pa_linux_asihpi.o" cannam@140: AC_DEFINE(PA_USE_ASIHPI,1) cannam@140: fi cannam@140: cannam@140: DLL_LIBS="$DLL_LIBS -lm -lpthread" cannam@140: LIBS="$LIBS -lm -lpthread" cannam@140: PADLL="libportaudio.so" cannam@140: cannam@140: ## support sun cc compiler flags cannam@140: case "${host_os}" in cannam@140: solaris*) cannam@140: SHARED_FLAGS="-G" cannam@140: THREAD_CFLAGS="-mt" cannam@140: ;; cannam@140: *) cannam@140: SHARED_FLAGS="-fPIC" cannam@140: THREAD_CFLAGS="-pthread" cannam@140: ;; cannam@140: esac cannam@140: cannam@140: OTHER_OBJS="$OTHER_OBJS src/os/unix/pa_unix_hostapis.o src/os/unix/pa_unix_util.o" cannam@140: esac cannam@140: CFLAGS="$CFLAGS $THREAD_CFLAGS" cannam@140: cannam@140: test "$enable_shared" != "yes" && SHARED_FLAGS="" cannam@140: cannam@140: if test "$enable_cxx" = "yes"; then cannam@140: AC_CONFIG_SUBDIRS([bindings/cpp]) cannam@140: ENABLE_CXX_TRUE="" cannam@140: ENABLE_CXX_FALSE="#" cannam@140: else cannam@140: ENABLE_CXX_TRUE="#" cannam@140: ENABLE_CXX_FALSE="" cannam@140: fi cannam@140: AC_SUBST(ENABLE_CXX_TRUE) cannam@140: AC_SUBST(ENABLE_CXX_FALSE) cannam@140: cannam@140: if test "x$with_asio" = "xyes"; then cannam@140: WITH_ASIO_TRUE="" cannam@140: WITH_ASIO_FALSE="@ #" cannam@140: else cannam@140: WITH_ASIO_TRUE="@ #" cannam@140: WITH_ASIO_FALSE="" cannam@140: fi cannam@140: AC_SUBST(WITH_ASIO_TRUE) cannam@140: AC_SUBST(WITH_ASIO_FALSE) cannam@140: cannam@140: AC_OUTPUT([Makefile portaudio-2.0.pc]) cannam@140: cannam@140: AC_MSG_RESULT([ cannam@140: Configuration summary: cannam@140: cannam@140: Target ...................... $target cannam@140: C++ bindings ................ $enable_cxx cannam@140: Debug output ................ $debug_output]) cannam@140: cannam@140: case "$target_os" in *linux*) cannam@140: AC_MSG_RESULT([ cannam@140: ALSA ........................ $have_alsa cannam@140: ASIHPI ...................... $have_asihpi]) cannam@140: ;; cannam@140: esac cannam@140: case "$target_os" in cannam@140: *mingw* | *cygwin*) cannam@140: test "x$with_directx" = "xyes" && with_directx="$with_directx (${with_dxdir})" cannam@140: test "x$with_wdmks" = "xyes" && with_wdmks="$with_wdmks (${with_dxdir})" cannam@140: test "x$with_asio" = "xyes" && with_asio="$with_asio (${with_asiodir})" cannam@140: test "x$with_wasapi" = "xyes" cannam@140: AC_MSG_RESULT([ cannam@140: WMME ........................ $with_wmme cannam@140: DSound ...................... $with_directx cannam@140: ASIO ........................ $with_asio cannam@140: WASAPI ...................... $with_wasapi cannam@140: WDMKS ....................... $with_wdmks cannam@140: ]) cannam@140: ;; cannam@140: *darwin*) cannam@140: AC_MSG_RESULT([ cannam@140: Mac debug flags ............. $enable_mac_debug cannam@140: ]) cannam@140: ;; cannam@140: *) cannam@140: AC_MSG_RESULT([ cannam@140: OSS ......................... $have_oss cannam@140: JACK ........................ $have_jack cannam@140: ]) cannam@140: ;; cannam@140: esac