annotate src/portaudio_20161030_catalina_patch/configure.in @ 169:223a55898ab9 tip default

Add null config files
author Chris Cannam <cannam@all-day-breakfast.com>
date Mon, 02 Mar 2020 14:03:47 +0000
parents 7e6e71a29886
children
rev   line source
cannam@162 1 dnl
cannam@162 2 dnl portaudio V19 configure.in script
cannam@162 3 dnl
cannam@162 4 dnl Dominic Mazzoni, Arve Knudsen, Stelios Bounanos
cannam@162 5 dnl
cannam@162 6
cannam@162 7 dnl Require autoconf >= 2.13
cannam@162 8 AC_PREREQ(2.13)
cannam@162 9
cannam@162 10 dnl Init autoconf and make sure configure is being called
cannam@162 11 dnl from the right directory
cannam@162 12 AC_INIT([include/portaudio.h])
cannam@162 13
cannam@162 14 dnl Define build, build_cpu, build_vendor, build_os
cannam@162 15 AC_CANONICAL_BUILD
cannam@162 16 dnl Define host, host_cpu, host_vendor, host_os
cannam@162 17 AC_CANONICAL_HOST
cannam@162 18 dnl Define target, target_cpu, target_vendor, target_os
cannam@162 19 AC_CANONICAL_TARGET
cannam@162 20
cannam@162 21 dnl Specify options
cannam@162 22
cannam@162 23 AC_ARG_WITH(alsa,
cannam@162 24 AS_HELP_STRING([--with-alsa], [Enable support for ALSA @<:@autodetect@:>@]),
cannam@162 25 [with_alsa=$withval])
cannam@162 26
cannam@162 27 AC_ARG_WITH(jack,
cannam@162 28 AS_HELP_STRING([--with-jack], [Enable support for JACK @<:@autodetect@:>@]),
cannam@162 29 [with_jack=$withval])
cannam@162 30
cannam@162 31 AC_ARG_WITH(oss,
cannam@162 32 AS_HELP_STRING([--with-oss], [Enable support for OSS @<:@autodetect@:>@]),
cannam@162 33 [with_oss=$withval])
cannam@162 34
cannam@162 35 AC_ARG_WITH(asihpi,
cannam@162 36 AS_HELP_STRING([--with-asihpi], [Enable support for ASIHPI @<:@autodetect@:>@]),
cannam@162 37 [with_asihpi=$withval])
cannam@162 38
cannam@162 39 AC_ARG_WITH(winapi,
cannam@162 40 AS_HELP_STRING([--with-winapi],
cannam@162 41 [Select Windows API support (@<:@wmme|directx|asio|wasapi|wdmks@:>@@<:@,...@:>@) @<:@wmme@:>@]),
cannam@162 42 [with_winapi=$withval], [with_winapi="wmme"])
cannam@162 43 case "$target_os" in *mingw* | *cygwin*)
cannam@162 44 with_wmme=no
cannam@162 45 with_directx=no
cannam@162 46 with_asio=no
cannam@162 47 with_wasapi=no
cannam@162 48 with_wdmks=no
cannam@162 49 for api in $(echo $with_winapi | sed 's/,/ /g'); do
cannam@162 50 case "$api" in
cannam@162 51 wmme|directx|asio|wasapi|wdmks)
cannam@162 52 eval with_$api=yes
cannam@162 53 ;;
cannam@162 54 *)
cannam@162 55 AC_MSG_ERROR([unknown Windows API \"$api\" (do you need --help?)])
cannam@162 56 ;;
cannam@162 57 esac
cannam@162 58 done
cannam@162 59 ;;
cannam@162 60 esac
cannam@162 61
cannam@162 62 AC_ARG_WITH(asiodir,
cannam@162 63 AS_HELP_STRING([--with-asiodir], [ASIO directory @<:@/usr/local/asiosdk2@:>@]),
cannam@162 64 with_asiodir=$withval, with_asiodir="/usr/local/asiosdk2")
cannam@162 65
cannam@162 66 AC_ARG_WITH(dxdir,
cannam@162 67 AS_HELP_STRING([--with-dxdir], [DirectX directory @<:@/usr/local/dx7sdk@:>@]),
cannam@162 68 with_dxdir=$withval, with_dxdir="/usr/local/dx7sdk")
cannam@162 69
cannam@162 70 debug_output=no
cannam@162 71 AC_ARG_ENABLE(debug-output,
cannam@162 72 AS_HELP_STRING([--enable-debug-output], [Enable debug output @<:@no@:>@]),
cannam@162 73 [if test "x$enableval" != "xno" ; then
cannam@162 74 AC_DEFINE(PA_ENABLE_DEBUG_OUTPUT,,[Enable debugging messages])
cannam@162 75 debug_output=yes
cannam@162 76 fi
cannam@162 77 ])
cannam@162 78
cannam@162 79 AC_ARG_ENABLE(cxx,
cannam@162 80 AS_HELP_STRING([--enable-cxx], [Enable C++ bindings @<:@no@:>@]),
cannam@162 81 enable_cxx=$enableval, enable_cxx="no")
cannam@162 82
cannam@162 83 AC_ARG_ENABLE(mac-debug,
cannam@162 84 AS_HELP_STRING([--enable-mac-debug], [Enable Mac debug @<:@no@:>@]),
cannam@162 85 enable_mac_debug=$enableval, enable_mac_debug="no")
cannam@162 86
cannam@162 87 AC_ARG_ENABLE(mac-universal,
cannam@162 88 AS_HELP_STRING([--enable-mac-universal], [Build Mac universal binaries @<:@yes@:>@]),
cannam@162 89 enable_mac_universal=$enableval, enable_mac_universal="yes")
cannam@162 90
cannam@162 91 dnl Continue to accept --host_os for compatibility but do not document
cannam@162 92 dnl it (the correct way to change host_os is with --host=...). Moved
cannam@162 93 dnl here because the empty help string generates a blank line which we
cannam@162 94 dnl can use to separate PA options from libtool options.
cannam@162 95 AC_ARG_WITH(host_os, [], host_os=$withval)
cannam@162 96
cannam@162 97 dnl Checks for programs.
cannam@162 98
cannam@162 99 AC_PROG_CC
cannam@162 100 dnl ASIO and CXX bindings need a C++ compiler
cannam@162 101 if [[ "$with_asio" = "yes" ] || [ "$enable_cxx" = "yes" ]] ; then
cannam@162 102 AC_PROG_CXX
cannam@162 103 fi
cannam@162 104 AC_LIBTOOL_WIN32_DLL
cannam@162 105 AC_PROG_LIBTOOL
cannam@162 106 AC_PROG_INSTALL
cannam@162 107 AC_PROG_LN_S
cannam@162 108 AC_PATH_PROG(AR, ar, no)
cannam@162 109 if [[ $AR = "no" ]] ; then
cannam@162 110 AC_MSG_ERROR("Could not find ar - needed to create a library")
cannam@162 111 fi
cannam@162 112
cannam@162 113 dnl This must be one of the first tests we do or it will fail...
cannam@162 114 AC_C_BIGENDIAN
cannam@162 115
cannam@162 116 dnl checks for various host APIs and arguments to configure that
cannam@162 117 dnl turn them on or off
cannam@162 118
cannam@162 119 have_alsa=no
cannam@162 120 if test "x$with_alsa" != "xno"; then
cannam@162 121 AC_CHECK_LIB(asound, snd_pcm_open, have_alsa=yes, have_alsa=no)
cannam@162 122 fi
cannam@162 123 have_asihpi=no
cannam@162 124 if test "x$with_asihpi" != "xno"; then
cannam@162 125 AC_CHECK_LIB(hpi, HPI_SubSysCreate, have_asihpi=yes, have_asihpi=no, -lm)
cannam@162 126 fi
cannam@162 127 have_libossaudio=no
cannam@162 128 have_oss=no
cannam@162 129 if test "x$with_oss" != "xno"; then
cannam@162 130 AC_CHECK_HEADERS([sys/soundcard.h linux/soundcard.h machine/soundcard.h], [have_oss=yes])
cannam@162 131 if test "x$have_oss" = "xyes"; then
cannam@162 132 AC_CHECK_LIB(ossaudio, _oss_ioctl, have_libossaudio=yes, have_libossaudio=no)
cannam@162 133 fi
cannam@162 134 fi
cannam@162 135 have_jack=no
cannam@162 136 if test "x$with_jack" != "xno"; then
cannam@162 137 PKG_CHECK_MODULES(JACK, jack, have_jack=yes, have_jack=no)
cannam@162 138 fi
cannam@162 139
cannam@162 140
cannam@162 141 dnl sizeof checks: we will need a 16-bit and a 32-bit type
cannam@162 142
cannam@162 143 AC_CHECK_SIZEOF(short)
cannam@162 144 AC_CHECK_SIZEOF(int)
cannam@162 145 AC_CHECK_SIZEOF(long)
cannam@162 146
cannam@162 147 save_LIBS="${LIBS}"
cannam@162 148 AC_CHECK_LIB(rt, clock_gettime, [rt_libs=" -lrt"])
cannam@162 149 LIBS="${LIBS}${rt_libs}"
cannam@162 150 DLL_LIBS="${DLL_LIBS}${rt_libs}"
cannam@162 151 AC_CHECK_FUNCS([clock_gettime nanosleep])
cannam@162 152 LIBS="${save_LIBS}"
cannam@162 153
cannam@162 154 dnl LT_RELEASE=19
cannam@162 155 LT_CURRENT=2
cannam@162 156 LT_REVISION=0
cannam@162 157 LT_AGE=0
cannam@162 158
cannam@162 159 AC_SUBST(LT_CURRENT)
cannam@162 160 AC_SUBST(LT_REVISION)
cannam@162 161 AC_SUBST(LT_AGE)
cannam@162 162
cannam@162 163 dnl extra variables
cannam@162 164 AC_SUBST(OTHER_OBJS)
cannam@162 165 AC_SUBST(PADLL)
cannam@162 166 AC_SUBST(SHARED_FLAGS)
cannam@162 167 AC_SUBST(THREAD_CFLAGS)
cannam@162 168 AC_SUBST(DLL_LIBS)
cannam@162 169 AC_SUBST(CXXFLAGS)
cannam@162 170 AC_SUBST(NASM)
cannam@162 171 AC_SUBST(NASMOPT)
cannam@162 172 AC_SUBST(INCLUDES)
cannam@162 173
cannam@162 174 dnl -g is optional on darwin
cannam@162 175 if ( echo "${host_os}" | grep ^darwin >> /dev/null ) &&
cannam@162 176 [[ "$enable_mac_universal" = "yes" ] &&
cannam@162 177 [ "$enable_mac_debug" != "yes" ]] ; then
cannam@162 178 CFLAGS="-O2 -Wall -pedantic -pipe -fPIC -DNDEBUG"
cannam@162 179 else
cannam@162 180 CFLAGS=${CFLAGS:-"-g -O2 -Wall -pedantic -pipe -fPIC"}
cannam@162 181 fi
cannam@162 182
cannam@162 183 if [[ $ac_cv_c_bigendian = "yes" ]] ; then
cannam@162 184 CFLAGS="$CFLAGS -DPA_BIG_ENDIAN"
cannam@162 185 else
cannam@162 186 CFLAGS="$CFLAGS -DPA_LITTLE_ENDIAN"
cannam@162 187 fi
cannam@162 188
cannam@162 189 add_objects()
cannam@162 190 {
cannam@162 191 for o in $@; do
cannam@162 192 test "${OTHER_OBJS#*${o}*}" = "${OTHER_OBJS}" && OTHER_OBJS="$OTHER_OBJS $o"
cannam@162 193 done
cannam@162 194 }
cannam@162 195
cannam@162 196 INCLUDES=portaudio.h
cannam@162 197
cannam@162 198 dnl Include directories needed by all implementations
cannam@162 199 CFLAGS="$CFLAGS -I\$(top_srcdir)/include -I\$(top_srcdir)/src/common"
cannam@162 200
cannam@162 201 case "${host_os}" in
cannam@162 202 darwin* )
cannam@162 203 dnl Mac OS X configuration
cannam@162 204
cannam@162 205 AC_DEFINE(PA_USE_COREAUDIO,1)
cannam@165 206 AC_DEFINE(AUDIO_COMPONENT_FIX,1)
cannam@162 207
cannam@165 208 CFLAGS="$CFLAGS -I\$(top_srcdir)/src/os/unix -Wno-deprecated"
cannam@162 209 LIBS="-framework CoreAudio -framework AudioToolbox -framework AudioUnit -framework Carbon"
cannam@162 210
cannam@162 211 if test "x$enable_mac_universal" = "xyes" ; then
cannam@162 212 case `xcodebuild -version | sed -n 's/Xcode \(.*\)/\1/p'` in
cannam@162 213
cannam@162 214 [12]*|3.0|3.1)
cannam@162 215 dnl In pre-3.2 versions of Xcode, xcodebuild doesn't
cannam@162 216 dnl support -sdk, so we can't use that to look for
cannam@162 217 dnl SDKs. However, in those versions of Xcode, the
cannam@162 218 dnl SDKs are under /Developer/SDKs, so we can just look
cannam@162 219 dnl there. Also, we assume they had no SDKs later
cannam@162 220 dnl than 10.5, as 3.2 was the version that came with
cannam@162 221 dnl 10.6, at least if the Wikipedia page for Xcode
cannam@162 222 dnl is to be believed.
cannam@162 223 if [[ -d /Developer/SDKs/MacOSX10.5.sdk ]] ; then
cannam@162 224 mac_version_min="-mmacosx-version-min=10.3"
cannam@162 225 mac_sysroot="-isysroot /Developer/SDKs/MacOSX10.5.sdk"
cannam@162 226 else
cannam@162 227 mac_version_min="-mmacosx-version-min=10.3"
cannam@162 228 mac_sysroot="-isysroot /Developer/SDKs/MacOSX10.4u.sdk"
cannam@162 229 fi
cannam@162 230 ;;
cannam@162 231
cannam@162 232 *)
cannam@162 233 dnl In 3.2 and later, xcodebuild supports -sdk, and, in
cannam@162 234 dnl 4.3 and later, the SDKs aren't under /Developer/SDKs
cannam@162 235 dnl as there *is* no /Developer, so we use -sdk to check
cannam@162 236 dnl what SDKs are available and to get the full path of
cannam@162 237 dnl the SDKs.
cannam@162 238 if xcodebuild -version -sdk macosx10.5 Path >/dev/null 2>&1 ; then
cannam@162 239 mac_version_min="-mmacosx-version-min=10.3"
cannam@162 240 mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.5 Path`"
cannam@162 241 elif xcodebuild -version -sdk macosx10.6 Path >/dev/null 2>&1 ; then
cannam@162 242 mac_version_min="-mmacosx-version-min=10.4"
cannam@162 243 mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.6 Path`"
cannam@162 244 elif xcodebuild -version -sdk macosx10.7 Path >/dev/null 2>&1 ; then
cannam@162 245 mac_version_min="-mmacosx-version-min=10.4"
cannam@162 246 mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.7 Path`"
cannam@162 247 elif xcodebuild -version -sdk macosx10.8 Path >/dev/null 2>&1 ; then
cannam@162 248 mac_version_min="-mmacosx-version-min=10.4"
cannam@162 249 mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.8 Path`"
cannam@162 250 elif xcodebuild -version -sdk macosx10.9 Path >/dev/null 2>&1 ; then
cannam@162 251 mac_version_min="-mmacosx-version-min=10.4"
cannam@162 252 mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.9 Path`"
cannam@162 253 elif xcodebuild -version -sdk macosx10.10 Path >/dev/null 2>&1 ; then
cannam@162 254 mac_version_min="-mmacosx-version-min=10.4"
cannam@162 255 mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.10 Path`"
cannam@162 256 elif xcodebuild -version -sdk macosx10.11 Path >/dev/null 2>&1 ; then
cannam@162 257 mac_version_min="-mmacosx-version-min=10.4"
cannam@162 258 mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.11 Path`"
cannam@162 259 elif xcodebuild -version -sdk macosx10.12 Path >/dev/null 2>&1 ; then
cannam@162 260 mac_version_min="-mmacosx-version-min=10.4"
cannam@162 261 mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.12 Path`"
cannam@165 262 elif xcodebuild -version -sdk macosx10.13 Path >/dev/null 2>&1 ; then
cannam@165 263 mac_version_min="-mmacosx-version-min=10.4"
cannam@165 264 mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.13 Path`"
cannam@165 265 elif xcodebuild -version -sdk macosx10.14 Path >/dev/null 2>&1 ; then
cannam@165 266 mac_version_min="-mmacosx-version-min=10.4"
cannam@165 267 mac_sysroot="-isysroot `xcodebuild -version -sdk macosx10.14 Path`"
cannam@162 268 else
cannam@165 269 AC_MSG_ERROR([Could not find 10.5 to 10.14 SDK.])
cannam@162 270 fi
cannam@162 271 esac
cannam@162 272
cannam@162 273 dnl Pick which architectures to build for based on what
cannam@162 274 dnl the compiler supports.
cannam@162 275 mac_arches=""
cannam@165 276 for arch in x86_64
cannam@162 277 do
cannam@162 278 save_CFLAGS="$CFLAGS"
cannam@162 279 CFLAGS="$CFLAGS -arch $arch"
cannam@162 280 AC_TRY_COMPILE([], [return 0;],
cannam@162 281 [
cannam@162 282 if [[ -z "$mac_arches" ]] ; then
cannam@162 283 mac_arches="-arch $arch"
cannam@162 284 else
cannam@162 285 mac_arches="$mac_arches -arch $arch"
cannam@162 286 fi
cannam@162 287 ])
cannam@162 288 CFLAGS="$save_CFLAGS"
cannam@162 289 done
cannam@162 290 else
cannam@162 291 mac_arches=""
cannam@162 292 mac_sysroot=""
cannam@162 293 mac_version=""
cannam@162 294 fi
cannam@162 295 SHARED_FLAGS="$LIBS -dynamiclib $mac_arches $mac_sysroot $mac_version_min"
cannam@162 296 CFLAGS="-std=c99 $CFLAGS $mac_arches $mac_sysroot $mac_version_min"
cannam@162 297 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@162 298 PADLL="libportaudio.dylib"
cannam@162 299 ;;
cannam@162 300
cannam@162 301 mingw* )
cannam@162 302 dnl MingW configuration
cannam@162 303
cannam@162 304 PADLL="portaudio.dll"
cannam@162 305 THREAD_CFLAGS="-mthreads"
cannam@162 306 SHARED_FLAGS="-shared"
cannam@162 307 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@162 308
cannam@162 309 if [[ "x$with_directx" = "xyes" ]]; then
cannam@162 310 DXDIR="$with_dxdir"
cannam@162 311 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@162 312 LIBS="${LIBS} -lwinmm -lm -ldsound -lole32"
cannam@162 313 DLL_LIBS="${DLL_LIBS} -lwinmm -lm -L$DXDIR/lib -ldsound -lole32"
cannam@162 314 #VC98="\"/c/Program Files/Microsoft Visual Studio/VC98/Include\""
cannam@162 315 #CFLAGS="$CFLAGS -I$VC98 -DPA_NO_WMME -DPA_NO_ASIO"
cannam@162 316 CFLAGS="$CFLAGS -I$DXDIR/include -UPA_USE_DS -DPA_USE_DS=1"
cannam@162 317 fi
cannam@162 318
cannam@162 319 if [[ "x$with_asio" = "xyes" ]]; then
cannam@162 320 ASIODIR="$with_asiodir"
cannam@162 321 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@162 322 LIBS="${LIBS} -lwinmm -lm -lole32 -luuid"
cannam@162 323 DLL_LIBS="${DLL_LIBS} -lwinmm -lm -lole32 -luuid"
cannam@162 324 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@162 325
cannam@162 326 dnl Setting the windows version flags below resolves a conflict between Interlocked*
cannam@162 327 dnl definitions in mingw winbase.h and Interlocked* hacks in ASIO SDK combase.h
cannam@162 328 dnl combase.h is included by asiodrvr.h
cannam@162 329 dnl PortAudio does not actually require Win XP (winver 501) APIs
cannam@162 330 CFLAGS="$CFLAGS -D_WIN32_WINNT=0x0501 -DWINVER=0x0501"
cannam@162 331
cannam@162 332 CXXFLAGS="$CFLAGS"
cannam@162 333 fi
cannam@162 334
cannam@162 335 if [[ "x$with_wdmks" = "xyes" ]]; then
cannam@162 336 DXDIR="$with_dxdir"
cannam@162 337 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@162 338 LIBS="${LIBS} -lwinmm -lm -luuid -lsetupapi -lole32"
cannam@162 339 DLL_LIBS="${DLL_LIBS} -lwinmm -lm -L$DXDIR/lib -luuid -lsetupapi -lole32"
cannam@162 340 #VC98="\"/c/Program Files/Microsoft Visual Studio/VC98/Include\""
cannam@162 341 #CFLAGS="$CFLAGS -I$VC98 -DPA_NO_WMME -DPA_NO_ASIO"
cannam@162 342 CFLAGS="$CFLAGS -I$DXDIR/include -UPA_USE_WDMKS -DPA_USE_WDMKS=1"
cannam@162 343 fi
cannam@162 344
cannam@162 345 if [[ "x$with_wmme" = "xyes" ]]; then
cannam@162 346 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@162 347 LIBS="${LIBS} -lwinmm -lm -lole32 -luuid"
cannam@162 348 DLL_LIBS="${DLL_LIBS} -lwinmm"
cannam@162 349 CFLAGS="$CFLAGS -UPA_USE_WMME -DPA_USE_WMME=1"
cannam@162 350 fi
cannam@162 351
cannam@162 352 if [[ "x$with_wasapi" = "xyes" ]]; then
cannam@162 353 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@162 354 LIBS="${LIBS} -lwinmm -lm -lole32 -luuid"
cannam@162 355 DLL_LIBS="${DLL_LIBS} -lwinmm -lole32"
cannam@162 356 CFLAGS="$CFLAGS -I\$(top_srcdir)/src/hostapi/wasapi/mingw-include -UPA_USE_WASAPI -DPA_USE_WASAPI=1"
cannam@162 357 fi
cannam@162 358 ;;
cannam@162 359
cannam@162 360 cygwin* )
cannam@162 361 dnl Cygwin configuration
cannam@162 362
cannam@162 363 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@162 364 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@162 365 LIBS="-lwinmm -lm"
cannam@162 366 PADLL="portaudio.dll"
cannam@162 367 THREAD_CFLAGS="-mthreads"
cannam@162 368 SHARED_FLAGS="-shared"
cannam@162 369 DLL_LIBS="${DLL_LIBS} -lwinmm"
cannam@162 370 ;;
cannam@162 371
cannam@162 372 irix* )
cannam@162 373 dnl SGI IRIX audio library (AL) configuration (Pieter, oct 2-13, 2003).
cannam@162 374 dnl The 'dmedia' library is needed to read the Unadjusted System Time (UST).
cannam@162 375 dnl
cannam@162 376 AC_CHECK_LIB(pthread, pthread_create, , AC_MSG_ERROR([IRIX posix thread library not found!]))
cannam@162 377 AC_CHECK_LIB(audio, alOpenPort, , AC_MSG_ERROR([IRIX audio library not found!]))
cannam@162 378 AC_CHECK_LIB(dmedia, dmGetUST, , AC_MSG_ERROR([IRIX digital media library not found!]))
cannam@162 379
cannam@162 380 dnl See the '#ifdef PA_USE_SGI' in file pa_unix/pa_unix_hostapis.c
cannam@162 381 dnl which selects the appropriate PaXXX_Initialize() function.
cannam@162 382 dnl
cannam@162 383 AC_DEFINE(PA_USE_SGI,1)
cannam@162 384
cannam@162 385 CFLAGS="$CFLAGS -I\$(top_srcdir)/src/os/unix"
cannam@162 386
cannam@162 387 dnl The _REENTRANT option for pthread safety. Perhaps not necessary but it 'll do no harm.
cannam@162 388 dnl
cannam@162 389 THREAD_CFLAGS="-D_REENTRANT"
cannam@162 390
cannam@162 391 OTHER_OBJS="pa_sgi/pa_sgi.o src/os/unix/pa_unix_hostapis.o src/os/unix/pa_unix_util.o"
cannam@162 392
cannam@162 393 dnl SGI books say -lpthread should be the last of the libs mentioned.
cannam@162 394 dnl
cannam@162 395 LIBS="-lm -ldmedia -laudio -lpthread"
cannam@162 396 PADLL="libportaudio.so"
cannam@162 397 SHARED_FLAGS=""
cannam@162 398 ;;
cannam@162 399
cannam@162 400 *)
cannam@162 401 dnl Unix configuration
cannam@162 402
cannam@162 403 CFLAGS="$CFLAGS -I\$(top_srcdir)/src/os/unix"
cannam@162 404
cannam@162 405 AC_CHECK_LIB(pthread, pthread_create,[have_pthread="yes"],
cannam@162 406 AC_MSG_ERROR([libpthread not found!]))
cannam@162 407
cannam@162 408 if [[ "$have_alsa" = "yes" ] && [ "$with_alsa" != "no" ]] ; then
cannam@162 409 DLL_LIBS="$DLL_LIBS -lasound"
cannam@162 410 LIBS="$LIBS -lasound"
cannam@162 411 OTHER_OBJS="$OTHER_OBJS src/hostapi/alsa/pa_linux_alsa.o"
cannam@162 412 INCLUDES="$INCLUDES pa_linux_alsa.h"
cannam@162 413 AC_DEFINE(PA_USE_ALSA,1)
cannam@162 414 fi
cannam@162 415
cannam@162 416 if [[ "$have_jack" = "yes" ] && [ "$with_jack" != "no" ]] ; then
cannam@162 417 DLL_LIBS="$DLL_LIBS $JACK_LIBS"
cannam@162 418 CFLAGS="$CFLAGS $JACK_CFLAGS"
cannam@162 419 OTHER_OBJS="$OTHER_OBJS src/hostapi/jack/pa_jack.o src/common/pa_ringbuffer.o"
cannam@162 420 INCLUDES="$INCLUDES pa_jack.h"
cannam@162 421 AC_DEFINE(PA_USE_JACK,1)
cannam@162 422 fi
cannam@162 423
cannam@162 424 if [[ "$with_oss" != "no" ]] ; then
cannam@162 425 OTHER_OBJS="$OTHER_OBJS src/hostapi/oss/pa_unix_oss.o"
cannam@162 426 if [[ "$have_libossaudio" = "yes" ]] ; then
cannam@162 427 DLL_LIBS="$DLL_LIBS -lossaudio"
cannam@162 428 LIBS="$LIBS -lossaudio"
cannam@162 429 fi
cannam@162 430 AC_DEFINE(PA_USE_OSS,1)
cannam@162 431 fi
cannam@162 432
cannam@162 433 if [[ "$have_asihpi" = "yes" ] && [ "$with_asihpi" != "no" ]] ; then
cannam@162 434 LIBS="$LIBS -lhpi"
cannam@162 435 DLL_LIBS="$DLL_LIBS -lhpi"
cannam@162 436 OTHER_OBJS="$OTHER_OBJS src/hostapi/asihpi/pa_linux_asihpi.o"
cannam@162 437 AC_DEFINE(PA_USE_ASIHPI,1)
cannam@162 438 fi
cannam@162 439
cannam@162 440 DLL_LIBS="$DLL_LIBS -lm -lpthread"
cannam@162 441 LIBS="$LIBS -lm -lpthread"
cannam@162 442 PADLL="libportaudio.so"
cannam@162 443
cannam@162 444 ## support sun cc compiler flags
cannam@162 445 case "${host_os}" in
cannam@162 446 solaris*)
cannam@162 447 SHARED_FLAGS="-G"
cannam@162 448 THREAD_CFLAGS="-mt"
cannam@162 449 ;;
cannam@162 450 *)
cannam@162 451 SHARED_FLAGS="-fPIC"
cannam@162 452 THREAD_CFLAGS="-pthread"
cannam@162 453 ;;
cannam@162 454 esac
cannam@162 455
cannam@162 456 OTHER_OBJS="$OTHER_OBJS src/os/unix/pa_unix_hostapis.o src/os/unix/pa_unix_util.o"
cannam@162 457 esac
cannam@162 458 CFLAGS="$CFLAGS $THREAD_CFLAGS"
cannam@162 459
cannam@162 460 test "$enable_shared" != "yes" && SHARED_FLAGS=""
cannam@162 461
cannam@162 462 if test "$enable_cxx" = "yes"; then
cannam@162 463 AC_CONFIG_SUBDIRS([bindings/cpp])
cannam@162 464 ENABLE_CXX_TRUE=""
cannam@162 465 ENABLE_CXX_FALSE="#"
cannam@162 466 else
cannam@162 467 ENABLE_CXX_TRUE="#"
cannam@162 468 ENABLE_CXX_FALSE=""
cannam@162 469 fi
cannam@162 470 AC_SUBST(ENABLE_CXX_TRUE)
cannam@162 471 AC_SUBST(ENABLE_CXX_FALSE)
cannam@162 472
cannam@162 473 if test "x$with_asio" = "xyes"; then
cannam@162 474 WITH_ASIO_TRUE=""
cannam@162 475 WITH_ASIO_FALSE="@ #"
cannam@162 476 else
cannam@162 477 WITH_ASIO_TRUE="@ #"
cannam@162 478 WITH_ASIO_FALSE=""
cannam@162 479 fi
cannam@162 480 AC_SUBST(WITH_ASIO_TRUE)
cannam@162 481 AC_SUBST(WITH_ASIO_FALSE)
cannam@162 482
cannam@162 483 AC_OUTPUT([Makefile portaudio-2.0.pc])
cannam@162 484
cannam@162 485 AC_MSG_RESULT([
cannam@162 486 Configuration summary:
cannam@162 487
cannam@162 488 Target ...................... $target
cannam@162 489 C++ bindings ................ $enable_cxx
cannam@162 490 Debug output ................ $debug_output])
cannam@162 491
cannam@162 492 case "$target_os" in *linux*)
cannam@162 493 AC_MSG_RESULT([
cannam@162 494 ALSA ........................ $have_alsa
cannam@162 495 ASIHPI ...................... $have_asihpi])
cannam@162 496 ;;
cannam@162 497 esac
cannam@162 498 case "$target_os" in
cannam@162 499 *mingw* | *cygwin*)
cannam@162 500 test "x$with_directx" = "xyes" && with_directx="$with_directx (${with_dxdir})"
cannam@162 501 test "x$with_wdmks" = "xyes" && with_wdmks="$with_wdmks (${with_dxdir})"
cannam@162 502 test "x$with_asio" = "xyes" && with_asio="$with_asio (${with_asiodir})"
cannam@162 503 test "x$with_wasapi" = "xyes"
cannam@162 504 AC_MSG_RESULT([
cannam@162 505 WMME ........................ $with_wmme
cannam@162 506 DSound ...................... $with_directx
cannam@162 507 ASIO ........................ $with_asio
cannam@162 508 WASAPI ...................... $with_wasapi
cannam@162 509 WDMKS ....................... $with_wdmks
cannam@162 510 ])
cannam@162 511 ;;
cannam@162 512 *darwin*)
cannam@162 513 AC_MSG_RESULT([
cannam@162 514 Mac debug flags ............. $enable_mac_debug
cannam@162 515 ])
cannam@162 516 ;;
cannam@162 517 *)
cannam@162 518 AC_MSG_RESULT([
cannam@162 519 OSS ......................... $have_oss
cannam@162 520 JACK ........................ $have_jack
cannam@162 521 ])
cannam@162 522 ;;
cannam@162 523 esac