annotate src/portaudio_20140130/configure.in @ 83:ae30d91d2ffe

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