📄 configure.ac
字号:
## PortAudioCpp V19 autoconf input file# Shamelessly ripped from the PortAudio one by Dominic Mazzoni# Ludwig Schwardt## Require autoconf >= 2.13AC_PREREQ(2.13)AC_INIT([PortAudioCpp], [12])AC_CONFIG_SRCDIR([../../include/portaudiocpp/PortAudioCpp.hxx])###### Top-level directory of pacpp###### This makes it easy to shuffle the build directories###### Also edit AC_CONFIG_SRCDIR above (wouldn't accept this variable)!PACPP_ROOT="../.."############ SET THIS TO PORTAUDIO DIRECTORY######PORTAUDIO="$PACPP_ROOT/../portaudio"# Various other variables and flagsPACPP_INC="$PACPP_ROOT/include"INCLUDES="-I$PACPP_INC -I$PORTAUDIO -I$PORTAUDIO/pa_common"CFLAGS="-g -O2 -Wall -ansi -pedantic $INCLUDES"CXXFLAGS="$CFLAGS"PALIBDIR="$PORTAUDIO/lib"# Checks for programsAC_PROG_CCAC_PROG_CXXAC_PROG_LN_SAC_PROG_RANLIBAC_PROG_INSTALLAC_PATH_PROG(AR, ar, no)if [[ $AR = "no" ]] ; then AC_MSG_ERROR("Could not find ar - needed to create a library");fi# This must be one of the first tests we do or it will fail...AC_C_BIGENDIAN# Transfer these variables to the MakefileAC_SUBST(PACPP_ROOT)AC_SUBST(PORTAUDIO)AC_SUBST(PADLL)AC_SUBST(PACPP_DLL)AC_SUBST(PACPP_INC)AC_SUBST(SHARED_FLAGS)AC_SUBST(DLL_LIBS)AC_SUBST(CXXFLAGS)##################### CHECK FOR INSTALLED PACKAGES ############################# checks for various host APIs and arguments to configure that# turn them on or offAC_CHECK_LIB(asound, snd_pcm_open, have_alsa=yes, have_alsa=no)# Determine the host description for the subsequent test.# PKG_CHECK_MODULES seems to check and set the host variable also, but# that then requires pkg-config availability which is not standard on# MinGW systems and can be a pain to install.AC_CANONICAL_HOSTPKG_CHECK_MODULES(JACK, jack, have_jack=yes, have_jack=no)AC_ARG_WITH(alsa, [ --with-alsa (default=auto)], with_alsa=$withval, with_alsa="yes")AC_ARG_WITH(jack, [ --with-jack (default=auto)], with_jack=$withval, with_jack="yes")AC_ARG_WITH(oss, [ --with-oss (default=yes)], with_oss=$withval, with_oss="yes")AC_ARG_WITH(host_os, [ --with-host_os (no default)], host_os=$withval)AC_ARG_WITH(winapi, [ --with-winapi ((wmme/directx/asio) default=wmme)], with_winapi=$withval, with_winapi="wmme")# Mac API added for ASIO, can have other api's listedAC_ARG_WITH(macapi, [ --with-macapi (asio) default=asio)], with_macapi=$withval, with_macapi="asio")AC_ARG_WITH(asiodir, [ --with-asiodir (default=/usr/local/asiosdk2)], with_asiodir=$withval, with_asiodir="/usr/local/asiosdk2")AC_ARG_WITH(dxdir, [ --with-dxdir (default=/usr/local/dx7sdk)], with_dxdir=$withval, with_dxdir="/usr/local/dx7sdk")##################### HOST-SPECIFIC LIBRARY SETTINGS ##########################case "${host_os}" in darwin* ) # Mac OS X configuration LIBS="-framework AudioUnit -framework AudioToolbox -framework CoreAudio"; PADLL="libportaudio.dylib"; PACPP_DLL="libportaudiocpp.dylib"; SHARED_FLAGS="-framework AudioUnit -framework AudioToolbox"; SHARED_FLAGS="$SHARED_FLAGS -framework CoreAudio -dynamiclib"; if [[ $with_macapi = "asio" ]] ; then if [[ $with_asiodir ]] ; then ASIODIR="$with_asiodir"; else ASIODIR="/usr/local/asiosdk2"; fi echo "ASIODIR: $ASIODIR"; fi ;; mingw* ) # MingW configuration echo "WINAPI: $with_winapi" if [[ $with_winapi = "directx" ]] ; then if [[ $with_dxdir ]] ; then DXDIR="$with_dxdir"; else DXDIR="/usr/local/dx7sdk"; fi echo "DXDIR: $DXDIR" LIBS="-L$PALIBDIR -lportaudio" LIBS="$LIBS -lwinmm -lm -ldsound -lole32"; PADLL="portaudio.dll"; PACPP_DLL="portaudiocpp.dll"; SHARED_FLAGS="-shared -mthreads"; DLL_LIBS="-lwinmm -lm -L./dx7sdk/lib -ldsound -lole32"; CFLAGS="$CFLAGS -DPA_NO_WMME -DPA_NO_ASIO"; CXXFLAGS="$CFLAGS" elif [[ $with_winapi = "asio" ]] ; then if [[ $with_asiodir ]] ; then ASIODIR="$with_asiodir"; else ASIODIR="/usr/local/asiosdk2"; fi echo "ASIODIR: $ASIODIR" LIBS="-L$PALIBDIR -lportaudio" LIBS="$LIBS -lwinmm -lm -lstdc++ -lole32 -luuid"; PADLL="portaudio.dll"; PACPP_DLL="portaudiocpp.dll"; SHARED_FLAGS="-shared -mthreads"; DLL_LIBS="-lwinmm -lm -lstdc++ -lole32 -luuid"; CFLAGS="$CFLAGS -ffast-math -fomit-frame-pointer -DPA_NO_WMME -DPA_NO_DS -DWINDOWS"; CXXFLAGS="$CFLAGS"; else # WMME default LIBS="-L$PALIBDIR -lportaudio" LIBS="$LIBS -lwinmm -lm -lstdc++ -lole32 -luuid"; PADLL="portaudio.dll"; PACPP_DLL="portaudiocpp.dll"; SHARED_FLAGS="-shared -mthreads"; DLL_LIBS="-lwinmm"; CFLAGS="$CFLAGS -DPA_NO_DS -DPA_NO_ASIO"; CXXFLAGS="$CFLAGS"; fi ;; cygwin* ) # Cygwin configuration LIBS="-L$PALIBDIR -lportaudio" LIBS="$LIBS -lwinmm -lm"; PADLL="portaudio.dll"; PACPP_DLL="portaudiocpp.dll"; SHARED_FLAGS="-shared -mthreads"; DLL_LIBS="-lwinmm"; ;; *) # Unix OSS configuration AC_CHECK_LIB(pthread, pthread_create, , AC_MSG_ERROR([libpthread not found!])) LIBS="$LIBS -L$PALIBDIR -lportaudio" if [[ $have_jack = "yes" ] && [ $with_jack != "no" ]] ; then LIBS="$LIBS $JACK_LIBS" CFLAGS="$CFLAGS $JACK_CFLAGS" AC_DEFINE(PA_USE_JACK) fi if [[ $have_alsa = "yes" ] && [ $with_alsa != "no" ]] ; then LIBS="$LIBS -lasound" AC_DEFINE(PA_USE_ALSA) fi if [[ $with_oss != "no" ]] ; then AC_DEFINE(PA_USE_OSS) fi LIBS="$LIBS -lm -lpthread"; PADLL="libportaudio.so"; PACPP_DLL="libportaudiocpp.so"; SHARED_FLAGS="-shared";esacAC_CONFIG_FILES([Makefile])AC_OUTPUT
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -