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