mirror of
https://github.com/cookiengineer/audacity
synced 2025-12-27 15:08:39 +01:00
PortAudio devendored
Closes #1413 Closes #1414 This commit addresses issues with building PortMixer using the upstream version of PortAudio. The resulting solution allows: * To build Linux with the vanilla PortAudio. * To build Windows with the vanilla PortAudio, but the notable exceptions: * for PortMixer to work on MME - PA 19.7.0 is required; only static linking is supported. A patch is available to allow dynamic linking; * for PortMixer to work on DirectSound - the patch is always required. Remove nyquist autotools
This commit is contained in:
committed by
Dmitry Vedenko
parent
394ddd2e35
commit
e6fb573001
@@ -106,6 +106,18 @@ add_conan_lib(
|
||||
PKG_CONFIG "mad >= 0.15.0b" # Ubuntu has broken PC file
|
||||
)
|
||||
|
||||
add_conan_lib(
|
||||
PortAudio
|
||||
portaudio/19.7.0
|
||||
OPTION_NAME portaudio
|
||||
ALLOW_FIND_PACKAGE
|
||||
INTERFACE_NAME PortAudio::PortAudio
|
||||
CONAN_OPTIONS
|
||||
portaudio:shared=True
|
||||
# Audacity doesn't support WDM/KS (yet)
|
||||
portaudio:with_wdmks=False
|
||||
)
|
||||
|
||||
if( CMAKE_SYSTEM_NAME MATCHES "Darwin" )
|
||||
set( curl_ssl "darwinssl" )
|
||||
elseif( CMAKE_SYSTEM_NAME MATCHES "Windows" )
|
||||
@@ -163,14 +175,12 @@ set_conan_vars_to_parent()
|
||||
#
|
||||
# directory option symbol req chk version
|
||||
addlib( libsndfile sndfile SNDFILE YES YES "sndfile >= 1.0.28" )
|
||||
addlib( portaudio-v19 portaudio PORTAUDIO YES YES "" )
|
||||
addlib( sqlite sqlite SQLITE YES YES "sqlite3 >= 3.31.1" )
|
||||
|
||||
# Optional libraries
|
||||
#
|
||||
# directory option symbol req chk version
|
||||
addlib( ffmpeg ffmpeg FFMPEG NO NO "libavcodec >= 51.53" "libavformat >= 52.12" "libavutil >= 52.66" )
|
||||
addlib( libnyquist nyquist NYQUIST NO YES "" )
|
||||
addlib( libvamp vamp VAMP NO YES "vamp >= 2.5" "vamp-hostsdk >= 2.5" )
|
||||
addlib( libogg ogg LIBOGG NO YES "ogg >= 1.3.1" )
|
||||
addlib( libvorbis vorbis LIBVORBIS NO YES "vorbis >= 1.3.3" "vorbisenc >= 1.3.3" "vorbisfile >= 1.3.3" )
|
||||
@@ -184,14 +194,6 @@ if (NOT USE_MIDI AND
|
||||
message(FATAL_ERROR "EXPERIMENTAL_MIDI_OUT requires USE_MIDI")
|
||||
endif ()
|
||||
|
||||
|
||||
addlib( portmixer portmixer PORTMIXER NO YES "" )
|
||||
if (NOT USE_PORTMIXER AND
|
||||
"EXPERIMENTAL_AUTOMATED_INPUT_LEVEL_ADJUSTMENT" IN_LIST
|
||||
EXPERIMENTAL_OPTIONS_LIST )
|
||||
message(FATAL_ERROR "EXPERIMENTAL_AUTOMATED_INPUT_LEVEL_ADJUSTMENT requires USE_PORTMIXER")
|
||||
endif ()
|
||||
|
||||
addlib( portsmf portsmf PORTSMF NO YES "portSMF >= 0.1" )
|
||||
addlib( libsbsms sbsms SBSMS NO YES "sbsms >= 2.2.0" )
|
||||
addlib( soundtouch soundtouch SOUNDTOUCH NO YES "soundtouch >= 1.7.1" )
|
||||
|
||||
65
cmake-proxies/cmake-modules/FindOSS.cmake
Normal file
65
cmake-proxies/cmake-modules/FindOSS.cmake
Normal file
@@ -0,0 +1,65 @@
|
||||
#[[
|
||||
A module to look for OSS
|
||||
]]
|
||||
|
||||
if( NOT OSS_FOUND )
|
||||
find_path(LINUX_OSS_INCLUDE_DIR "linux/soundcard.h"
|
||||
HINTS "/usr/include" "/usr/local/include"
|
||||
)
|
||||
|
||||
find_path(SYS_OSS_INCLUDE_DIR "sys/soundcard.h"
|
||||
HINTS "/usr/include" "/usr/local/include"
|
||||
)
|
||||
|
||||
find_path(MACHINE_OSS_INCLUDE_DIR "machine/soundcard.h"
|
||||
HINTS "/usr/include" "/usr/local/include"
|
||||
)
|
||||
|
||||
set( HAVE_SYS_SOUNDCARD_H No CACHE BOOL "sys/soundcard.h is available" FORCE )
|
||||
set( HAVE_LINUX_SOUNDCARD_H No CACHE BOOL "linux/soundcard.h is available" FORCE )
|
||||
set( HAVE_MACHINE_SOUNDCARD_H No CACHE BOOL "machine/soundcard.h is available" FORCE )
|
||||
|
||||
if( LINUX_OSS_INCLUDE_DIR )
|
||||
set( OSS_FOUND True )
|
||||
set( OSS_INCLUDE_DIR ${LINUX_OSS_INCLUDE_DIR} )
|
||||
set( HAVE_LINUX_SOUNDCARD_H Yes CACHE BOOL "sys/soundcard.h is available" FORCE )
|
||||
list( APPEND OSS_DEFINITIONS HAVE_LINUX_SOUNDCARD_H=1 )
|
||||
elseif( SYS_OSS_INCLUDE_DIR )
|
||||
set( OSS_FOUND True )
|
||||
set( OSS_INCLUDE_DIR ${SYS_OSS_INCLUDE_DIR} )
|
||||
set( HAVE_SYS_SOUNDCARD_H Yes CACHE BOOL "sys/soundcard.h is available" FORCE )
|
||||
list( APPEND OSS_DEFINITIONS HAVE_SYS_SOUNDCARD_H=1 )
|
||||
|
||||
elseif( MACHINE_OSS_INCLUDE_DIR )
|
||||
set( OSS_FOUND True )
|
||||
set( OSS_INCLUDE_DIR ${MACHINE_OSS_INCLUDE_DIR} )
|
||||
set( HAVE_MACHINE_SOUNDCARD_H Yes CACHE BOOL "sys/soundcard.h is available" FORCE )
|
||||
list( APPEND OSS_DEFINITIONS HAVE_MACHINE_SOUNDCARD_H=1 )
|
||||
endif()
|
||||
|
||||
if( OSS_FOUND )
|
||||
if( NOT OSS_FIND_QUIETLY )
|
||||
message( STATUS "Found OSS: \n\tOSS_INCLUDE_DIR: ${OSS_INCLUDE_DIR}" )
|
||||
endif()
|
||||
|
||||
if( NOT TARGET OSS::OSS )
|
||||
add_library( OSS::OSS INTERFACE IMPORTED GLOBAL)
|
||||
|
||||
target_include_directories( OSS::OSS INTERFACE ${OSS_INCLUDE_DIR} )
|
||||
target_compile_definitions( OSS::OSS INTERFACE ${OSS_DEFINITIONS} )
|
||||
endif()
|
||||
else()
|
||||
if( OSS_FIND_REQUIRED )
|
||||
message( FATAL_ERROR "Could not find OSS")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
mark_as_advanced(
|
||||
OSS_FOUND
|
||||
OSS_INCLUDE_DIR
|
||||
OSS_DEFINITIONS
|
||||
HAVE_LINUX_SOUNDCARD_H
|
||||
HAVE_SYS_SOUNDCARD_H
|
||||
HAVE_MACHINE_SOUNDCARD_H
|
||||
)
|
||||
endif()
|
||||
31
cmake-proxies/cmake-modules/FindPortAudio.cmake
Normal file
31
cmake-proxies/cmake-modules/FindPortAudio.cmake
Normal file
@@ -0,0 +1,31 @@
|
||||
#[[
|
||||
A module to look for PortAudio
|
||||
]]
|
||||
|
||||
if( NOT PortAudio_FOUND )
|
||||
find_path( PortAudio_INCLUDE_DIR portaudio.h )
|
||||
find_library( PortAudio_LIBRARIES NAMES portaudio )
|
||||
|
||||
if( PortAudio_INCLUDE_DIR AND PortAudio_LIBRARIES )
|
||||
set( PortAudio_FOUND Yes )
|
||||
endif()
|
||||
|
||||
if( PortAudio_FOUND )
|
||||
if( NOT PortAudio_FIND_QUIETLY )
|
||||
message( STATUS "Found PortAudio: \n\tPortAudio_INCLUDE_DIR: ${PortAudio_INCLUDE_DIR}\n\tPortAudio_LIBRARIES: ${PortAudio_LIBRARIES}" )
|
||||
endif()
|
||||
|
||||
if( NOT TARGET PortAudio::PortAudio )
|
||||
add_library( PortAudio::PortAudio INTERFACE IMPORTED GLOBAL)
|
||||
|
||||
target_include_directories( PortAudio::PortAudio INTERFACE ${PortAudio_INCLUDE_DIR} )
|
||||
target_link_libraries( PortAudio::PortAudio INTERFACE ${PortAudio_LIBRARIES} )
|
||||
|
||||
add_library(portaudio ALIAS PortAudio::PortAudio)
|
||||
endif()
|
||||
else()
|
||||
if( PortAudio_FIND_REQUIRED )
|
||||
message( FATAL_ERROR "Could not find PortAudio")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
@@ -1,305 +0,0 @@
|
||||
|
||||
add_library( ${TARGET} STATIC )
|
||||
|
||||
def_vars()
|
||||
|
||||
list( APPEND SOURCES
|
||||
PRIVATE
|
||||
# libnyquist
|
||||
|
||||
${TARGET_ROOT}/nyx.c
|
||||
|
||||
# libnyquist/nyquist/cmt
|
||||
|
||||
${TARGET_ROOT}/nyquist/cmt/cext.c
|
||||
${TARGET_ROOT}/nyquist/cmt/cleanup.c
|
||||
${TARGET_ROOT}/nyquist/cmt/cmdline.c
|
||||
${TARGET_ROOT}/nyquist/cmt/cmtcmd.c
|
||||
${TARGET_ROOT}/nyquist/cmt/mem.c
|
||||
${TARGET_ROOT}/nyquist/cmt/midifile.c
|
||||
${TARGET_ROOT}/nyquist/cmt/midifns.c
|
||||
${TARGET_ROOT}/nyquist/cmt/moxc.c
|
||||
${TARGET_ROOT}/nyquist/cmt/record.c
|
||||
${TARGET_ROOT}/nyquist/cmt/seq.c
|
||||
${TARGET_ROOT}/nyquist/cmt/seqmread.c
|
||||
${TARGET_ROOT}/nyquist/cmt/seqmwrite.c
|
||||
${TARGET_ROOT}/nyquist/cmt/seqread.c
|
||||
${TARGET_ROOT}/nyquist/cmt/seqwrite.c
|
||||
${TARGET_ROOT}/nyquist/cmt/tempomap.c
|
||||
${TARGET_ROOT}/nyquist/cmt/timebase.c
|
||||
${TARGET_ROOT}/nyquist/cmt/userio.c
|
||||
|
||||
# libnyquist/nyquist/cmupv
|
||||
|
||||
${TARGET_ROOT}/nyquist/cmupv/src/cmupv.c
|
||||
${TARGET_ROOT}/nyquist/cmupv/src/cmupvdbg.c
|
||||
${TARGET_ROOT}/nyquist/cmupv/src/internal.c
|
||||
|
||||
# libnyquist/nyquist/ffts
|
||||
|
||||
${TARGET_ROOT}/nyquist/ffts/src/fftext.c
|
||||
${TARGET_ROOT}/nyquist/ffts/src/fftlib.c
|
||||
${TARGET_ROOT}/nyquist/ffts/src/matlib.c
|
||||
|
||||
# libnyquist/nyquist/nyqsrc
|
||||
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/add.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/avg.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/compose.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/convolve.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/debug.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/downsample.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/f0.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/falloc.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/ffilterkit.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/fft.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/handlers.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/inverse.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/local.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/lpanal.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/multiread.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/multiseq.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/phasevocoder.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/probe.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/pvshell.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/resamp.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/resampv.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/samples.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/seqext.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/seqfnint.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/seqinterf.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/sliderdata.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/sndfnint.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/sndmax.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/sndread.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/sndseq.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/sndsliders.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/sndwritepa.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/sound.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/stats.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/stoponzero.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/trigger.c
|
||||
${TARGET_ROOT}/nyquist/nyqsrc/yin.c
|
||||
|
||||
# libnyquist/nyquist/nyqstk
|
||||
|
||||
${TARGET_ROOT}/nyquist/nyqstk/instr.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/stkinit.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/stkint.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/ADSR.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/BandedWG.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/BiQuad.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/Bowed.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/BowTable.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/Chorus.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/Clarinet.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/Delay.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/DelayA.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/DelayL.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/Effect.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/Envelope.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/FileRead.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/FileWvIn.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/Filter.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/Flute.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/Function.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/Generator.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/Instrmnt.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/JCRev.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/JetTable.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/Mandolin.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/Modal.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/ModalBar.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/Noise.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/NRev.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/OnePole.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/OneZero.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/PitShift.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/PluckTwo.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/PoleZero.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/PRCRev.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/ReedTable.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/Saxofony.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/SineWave.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/Sitar.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/Stk.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/WaveLoop.cpp
|
||||
${TARGET_ROOT}/nyquist/nyqstk/src/WvIn.cpp
|
||||
|
||||
|
||||
# libnyquist/nyquist/sys
|
||||
|
||||
#${TARGET_ROOT}/nyquist/sys/mac/macaboutbox.c
|
||||
#${TARGET_ROOT}/nyquist/sys/mac/MacAE.c
|
||||
#${TARGET_ROOT}/nyquist/sys/mac/MacCommandWin.c
|
||||
#${TARGET_ROOT}/nyquist/sys/mac/macdrag.c
|
||||
#${TARGET_ROOT}/nyquist/sys/mac/MacFileUtils.c
|
||||
#${TARGET_ROOT}/nyquist/sys/mac/macfun.c
|
||||
#${TARGET_ROOT}/nyquist/sys/mac/MacHandleEv.c
|
||||
#${TARGET_ROOT}/nyquist/sys/mac/macint.c
|
||||
#${TARGET_ROOT}/nyquist/sys/mac/macstuff.c
|
||||
#${TARGET_ROOT}/nyquist/sys/mac/xlextstart.c
|
||||
#${TARGET_ROOT}/nyquist/sys/unix/io.c
|
||||
#${TARGET_ROOT}/nyquist/sys/unix/osstuff.c
|
||||
#${TARGET_ROOT}/nyquist/sys/unix/term.c
|
||||
#${TARGET_ROOT}/nyquist/sys/unix/termtest.c
|
||||
#${TARGET_ROOT}/nyquist/sys/win/msvc/winfun.c
|
||||
#${TARGET_ROOT}/nyquist/sys/win/msvc/winstuff.c
|
||||
#${TARGET_ROOT}/nyquist/sys/win/wingui/winguistuff.c
|
||||
#${TARGET_ROOT}/nyquist/sys/win/wingui/xlextstart.c
|
||||
#${TARGET_ROOT}/nyquist/sys/win/wingui/xlispfns.c
|
||||
|
||||
# libnyquist/nyquist/tran
|
||||
|
||||
${TARGET_ROOT}/nyquist/tran/abs.c
|
||||
${TARGET_ROOT}/nyquist/tran/allpoles.c
|
||||
${TARGET_ROOT}/nyquist/tran/alpass.c
|
||||
${TARGET_ROOT}/nyquist/tran/alpasscv.c
|
||||
${TARGET_ROOT}/nyquist/tran/alpassvc.c
|
||||
${TARGET_ROOT}/nyquist/tran/alpassvv.c
|
||||
${TARGET_ROOT}/nyquist/tran/amosc.c
|
||||
${TARGET_ROOT}/nyquist/tran/areson.c
|
||||
${TARGET_ROOT}/nyquist/tran/aresoncv.c
|
||||
${TARGET_ROOT}/nyquist/tran/aresonvc.c
|
||||
${TARGET_ROOT}/nyquist/tran/aresonvv.c
|
||||
${TARGET_ROOT}/nyquist/tran/atone.c
|
||||
${TARGET_ROOT}/nyquist/tran/atonev.c
|
||||
${TARGET_ROOT}/nyquist/tran/biquadfilt.c
|
||||
${TARGET_ROOT}/nyquist/tran/buzz.c
|
||||
${TARGET_ROOT}/nyquist/tran/chase.c
|
||||
${TARGET_ROOT}/nyquist/tran/clip.c
|
||||
${TARGET_ROOT}/nyquist/tran/congen.c
|
||||
${TARGET_ROOT}/nyquist/tran/const.c
|
||||
${TARGET_ROOT}/nyquist/tran/coterm.c
|
||||
${TARGET_ROOT}/nyquist/tran/delaycc.c
|
||||
${TARGET_ROOT}/nyquist/tran/delaycv.c
|
||||
${TARGET_ROOT}/nyquist/tran/eqbandvvv.c
|
||||
${TARGET_ROOT}/nyquist/tran/exp.c
|
||||
${TARGET_ROOT}/nyquist/tran/fmfb.c
|
||||
${TARGET_ROOT}/nyquist/tran/fmfbv.c
|
||||
${TARGET_ROOT}/nyquist/tran/fmosc.c
|
||||
${TARGET_ROOT}/nyquist/tran/follow.c
|
||||
${TARGET_ROOT}/nyquist/tran/fromarraystream.c
|
||||
${TARGET_ROOT}/nyquist/tran/fromobject.c
|
||||
${TARGET_ROOT}/nyquist/tran/gate.c
|
||||
${TARGET_ROOT}/nyquist/tran/ifft.c
|
||||
${TARGET_ROOT}/nyquist/tran/instrbanded.c
|
||||
${TARGET_ROOT}/nyquist/tran/instrbow.c
|
||||
${TARGET_ROOT}/nyquist/tran/instrbowedfreq.c
|
||||
${TARGET_ROOT}/nyquist/tran/instrclar.c
|
||||
${TARGET_ROOT}/nyquist/tran/instrclarall.c
|
||||
${TARGET_ROOT}/nyquist/tran/instrclarfreq.c
|
||||
${TARGET_ROOT}/nyquist/tran/instrflute.c
|
||||
${TARGET_ROOT}/nyquist/tran/instrfluteall.c
|
||||
${TARGET_ROOT}/nyquist/tran/instrflutefreq.c
|
||||
${TARGET_ROOT}/nyquist/tran/instrmandolin.c
|
||||
${TARGET_ROOT}/nyquist/tran/instrmodalbar.c
|
||||
${TARGET_ROOT}/nyquist/tran/instrsax.c
|
||||
${TARGET_ROOT}/nyquist/tran/instrsaxall.c
|
||||
${TARGET_ROOT}/nyquist/tran/instrsaxfreq.c
|
||||
${TARGET_ROOT}/nyquist/tran/instrsitar.c
|
||||
${TARGET_ROOT}/nyquist/tran/integrate.c
|
||||
${TARGET_ROOT}/nyquist/tran/log.c
|
||||
${TARGET_ROOT}/nyquist/tran/lpreson.c
|
||||
${TARGET_ROOT}/nyquist/tran/maxv.c
|
||||
${TARGET_ROOT}/nyquist/tran/offset.c
|
||||
${TARGET_ROOT}/nyquist/tran/oneshot.c
|
||||
${TARGET_ROOT}/nyquist/tran/osc.c
|
||||
${TARGET_ROOT}/nyquist/tran/partial.c
|
||||
${TARGET_ROOT}/nyquist/tran/pluck.c
|
||||
${TARGET_ROOT}/nyquist/tran/prod.c
|
||||
${TARGET_ROOT}/nyquist/tran/pwl.c
|
||||
${TARGET_ROOT}/nyquist/tran/quantize.c
|
||||
${TARGET_ROOT}/nyquist/tran/recip.c
|
||||
${TARGET_ROOT}/nyquist/tran/reson.c
|
||||
${TARGET_ROOT}/nyquist/tran/resoncv.c
|
||||
${TARGET_ROOT}/nyquist/tran/resonvc.c
|
||||
${TARGET_ROOT}/nyquist/tran/resonvv.c
|
||||
${TARGET_ROOT}/nyquist/tran/sampler.c
|
||||
${TARGET_ROOT}/nyquist/tran/scale.c
|
||||
${TARGET_ROOT}/nyquist/tran/shape.c
|
||||
${TARGET_ROOT}/nyquist/tran/sine.c
|
||||
${TARGET_ROOT}/nyquist/tran/siosc.c
|
||||
${TARGET_ROOT}/nyquist/tran/slope.c
|
||||
${TARGET_ROOT}/nyquist/tran/sqrt.c
|
||||
${TARGET_ROOT}/nyquist/tran/stkchorus.c
|
||||
${TARGET_ROOT}/nyquist/tran/stkpitshift.c
|
||||
${TARGET_ROOT}/nyquist/tran/stkrev.c
|
||||
${TARGET_ROOT}/nyquist/tran/tapf.c
|
||||
${TARGET_ROOT}/nyquist/tran/tapv.c
|
||||
${TARGET_ROOT}/nyquist/tran/tone.c
|
||||
${TARGET_ROOT}/nyquist/tran/tonev.c
|
||||
${TARGET_ROOT}/nyquist/tran/upsample.c
|
||||
${TARGET_ROOT}/nyquist/tran/white.c
|
||||
|
||||
# libnyquist/nyquist/xlisp
|
||||
|
||||
${TARGET_ROOT}/nyquist/xlisp/extern.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/path.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/security.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlbfun.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlcont.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xldbug.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xldmem.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xleval.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlfio.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlftab.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlglob.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlimage.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlinit.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlio.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlisp.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xljump.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xllist.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlmath.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlobj.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlpp.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlprin.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlread.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlstr.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlsubr.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlsym.c
|
||||
${TARGET_ROOT}/nyquist/xlisp/xlsys.c
|
||||
)
|
||||
|
||||
list( APPEND INCLUDES
|
||||
PRIVATE
|
||||
${TARGET_ROOT}/nyquist/cmt
|
||||
${TARGET_ROOT}/nyquist/cmupv/src
|
||||
${TARGET_ROOT}/nyquist/ffts/src
|
||||
${TARGET_ROOT}/nyquist/nyqsrc
|
||||
${TARGET_ROOT}/nyquist/nyqstk
|
||||
${TARGET_ROOT}/nyquist/nyqstk/include
|
||||
${TARGET_ROOT}/nyquist/tran
|
||||
${TARGET_ROOT}/nyquist/xlisp
|
||||
$<$<BOOL:${UNIX}>:${TARGET_ROOT}/nyquist/sys/unix>
|
||||
$<$<NOT:$<BOOL:${UNIX}>>:${TARGET_ROOT}/nyquist/sys/win/msvc>
|
||||
PUBLIC
|
||||
${TARGET_ROOT}
|
||||
)
|
||||
|
||||
list( APPEND DEFINES
|
||||
PRIVATE
|
||||
CMTSTUFF
|
||||
EXT
|
||||
$<$<PLATFORM_ID:Windows>:WIN32>
|
||||
)
|
||||
|
||||
list( APPEND OPTIONS
|
||||
PRIVATE
|
||||
$<$<PLATFORM_ID:Darwin>:-fno-common>
|
||||
)
|
||||
|
||||
list( APPEND LIBRARIES
|
||||
PRIVATE
|
||||
portaudio-v19
|
||||
libsndfile
|
||||
)
|
||||
|
||||
organize_source( "${TARGET_ROOT}" "" "${SOURCES}" )
|
||||
target_sources( ${TARGET} PRIVATE ${SOURCES} )
|
||||
target_compile_definitions( ${TARGET} PRIVATE ${DEFINES} )
|
||||
target_compile_options( ${TARGET} PRIVATE ${OPTIONS} )
|
||||
target_include_directories( ${TARGET} PRIVATE ${INCLUDES} )
|
||||
target_link_libraries( ${TARGET} PRIVATE ${LIBRARIES} )
|
||||
|
||||
@@ -1,278 +0,0 @@
|
||||
|
||||
add_library( ${TARGET} STATIC )
|
||||
|
||||
def_vars()
|
||||
|
||||
set( CMAKE_MODULE_PATH ${TARGET_ROOT}/cmake_support )
|
||||
|
||||
# Define the platform specific interface options
|
||||
if( CMAKE_SYSTEM_NAME MATCHES "Windows" )
|
||||
if(DEFINED ENV{ASIOSDK_DIR} )
|
||||
cmd_option(
|
||||
${_OPT}use_pa_asio
|
||||
"Use the portaudio ASIO interface if available"
|
||||
YES
|
||||
)
|
||||
endif()
|
||||
cmd_option(
|
||||
${_OPT}use_pa_ds
|
||||
"Use the portaudio DirectSound interface if available"
|
||||
YES
|
||||
)
|
||||
cmd_option(
|
||||
${_OPT}use_pa_wasapi
|
||||
"Use the portaudio WASAPI interface if available"
|
||||
YES
|
||||
)
|
||||
cmd_option(
|
||||
${_OPT}use_pa_wmme
|
||||
"Use the portaudio WMME interface if available"
|
||||
YES
|
||||
)
|
||||
else()
|
||||
# Look for OSS if the user wants it
|
||||
cmd_option(
|
||||
${_OPT}use_pa_oss
|
||||
"Use the OSS audio interface if available"
|
||||
YES
|
||||
)
|
||||
|
||||
if( ${_OPT}use_pa_oss )
|
||||
find_path( OSS_INCLUDE NAMES sys/soundcard.h )
|
||||
mark_as_advanced( FORCE OSS_INCLUDE )
|
||||
|
||||
if( OSS_INCLUDE )
|
||||
set( OSS_INCLUDE_DIRS ${OSS_INCLUDE} )
|
||||
endif()
|
||||
|
||||
find_library( OSS_LIBRARY NAMES ossaudio )
|
||||
mark_as_advanced( FORCE OSS_LIBRARY )
|
||||
|
||||
if( OSS_LIBRARY )
|
||||
set( OSS_LIBRARIES ${OSS_LIBRARY} )
|
||||
endif()
|
||||
|
||||
if( NOT OSS_INCLUDE_DIRS )
|
||||
set_cache_value( ${_OPT}use_pa_oss NO )
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if( CMAKE_SYSTEM_NAME MATCHES "Darwin" )
|
||||
cmd_option(
|
||||
${_OPT}use_pa_coreaudio
|
||||
"Use the portaudio CoreAudio interface if available"
|
||||
YES
|
||||
)
|
||||
elseif( CMAKE_SYSTEM_NAME MATCHES "Linux|FreeBSD" )
|
||||
cmd_option(
|
||||
${_OPT}use_pa_alsa
|
||||
"Use the portaudio ALSA interface if available"
|
||||
YES
|
||||
)
|
||||
|
||||
if( ${_OPT}use_pa_alsa )
|
||||
find_package( ALSA )
|
||||
if( NOT ALSA_FOUND )
|
||||
set_cache_value( ${_OPT}use_pa_alsa NO )
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# JACK can be dynamically loaded, linked to, or off
|
||||
cmd_option( ${_OPT}use_pa_jack
|
||||
"Use the JACK audio interface if available [loaded, linked, off]"
|
||||
"linked"
|
||||
STRINGS "loaded" "linked" "off"
|
||||
)
|
||||
|
||||
if( NOT ${_OPT}use_pa_jack STREQUAL "off" )
|
||||
# Find it
|
||||
find_package( Jack )
|
||||
if( NOT JACK_FOUND)
|
||||
set_cache_value( ${_OPT}use_pa_jack "off" )
|
||||
endif()
|
||||
endif()
|
||||
|
||||
list( APPEND SOURCES
|
||||
PRIVATE
|
||||
${TARGET_ROOT}/src/common/pa_allocation.c
|
||||
${TARGET_ROOT}/src/common/pa_converters.c
|
||||
${TARGET_ROOT}/src/common/pa_cpuload.c
|
||||
${TARGET_ROOT}/src/common/pa_debugprint.c
|
||||
${TARGET_ROOT}/src/common/pa_dither.c
|
||||
${TARGET_ROOT}/src/common/pa_dynload.c
|
||||
${TARGET_ROOT}/src/common/pa_front.c
|
||||
${TARGET_ROOT}/src/common/pa_process.c
|
||||
${TARGET_ROOT}/src/common/pa_ringbuffer.c
|
||||
${TARGET_ROOT}/src/common/pa_stream.c
|
||||
${TARGET_ROOT}/src/common/pa_trace.c
|
||||
|
||||
$<$<PLATFORM_ID:Windows>:
|
||||
${TARGET_ROOT}/src/os/win/pa_win_coinitialize.c
|
||||
${TARGET_ROOT}/src/os/win/pa_win_hostapis.c
|
||||
${TARGET_ROOT}/src/os/win/pa_win_util.c
|
||||
${TARGET_ROOT}/src/os/win/pa_win_waveformat.c
|
||||
${TARGET_ROOT}/src/os/win/pa_win_wdmks_utils.c
|
||||
$<$<C_COMPILER_ID:MSVC>:
|
||||
${TARGET_ROOT}/src/os/win/pa_x86_plain_converters.c
|
||||
>
|
||||
>
|
||||
|
||||
$<$<PLATFORM_ID:Darwin>:
|
||||
${TARGET_ROOT}/src/hostapi/coreaudio/pa_mac_core.c
|
||||
${TARGET_ROOT}/src/hostapi/coreaudio/pa_mac_core_blocking.c
|
||||
${TARGET_ROOT}/src/hostapi/coreaudio/pa_mac_core_utilities.c
|
||||
>
|
||||
|
||||
$<$<PLATFORM_ID:Darwin,Linux,FreeBSD,CYGWIN>:
|
||||
${TARGET_ROOT}/src/os/unix/pa_unix_hostapis.c
|
||||
${TARGET_ROOT}/src/os/unix/pa_unix_util.c
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_asio}>:
|
||||
${TARGET_ROOT}/src/hostapi/asio/iasiothiscallresolver.cpp
|
||||
${TARGET_ROOT}/src/hostapi/asio/pa_asio.cpp
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_ds}>:
|
||||
${TARGET_ROOT}/src/hostapi/dsound/pa_win_ds.c
|
||||
${TARGET_ROOT}/src/hostapi/dsound/pa_win_ds_dynlink.c
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_wasapi}>:
|
||||
${TARGET_ROOT}/src/hostapi/wasapi/pa_win_wasapi.c
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_wmme}>:
|
||||
${TARGET_ROOT}/src/hostapi/wmme/pa_win_wmme.c
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_alsa}>:
|
||||
${TARGET_ROOT}/src/hostapi/alsa/pa_linux_alsa.c
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_oss}>:
|
||||
${TARGET_ROOT}/src/hostapi/oss/pa_unix_oss.c
|
||||
>
|
||||
|
||||
$<$<NOT:$<STREQUAL:${${_OPT}use_pa_jack},off>>:
|
||||
${TARGET_ROOT}/src/hostapi/jack/pa_jack.c
|
||||
${TARGET_ROOT}/src/hostapi/jack/pa_jack_dynload.c
|
||||
>
|
||||
)
|
||||
|
||||
list( APPEND EXTRASRC
|
||||
PRIVATE
|
||||
$<$<BOOL:${${_OPT}use_pa_asio}>:
|
||||
$ENV{ASIOSDK_DIR}/common/asio.cpp
|
||||
$ENV{ASIOSDK_DIR}/host/asiodrivers.cpp
|
||||
$ENV{ASIOSDK_DIR}/host/pc/asiolist.cpp
|
||||
>
|
||||
)
|
||||
|
||||
list( APPEND INCLUDES
|
||||
PRIVATE
|
||||
${TARGET_ROOT}/src/common
|
||||
|
||||
$<$<PLATFORM_ID:Windows>:
|
||||
${TARGET_ROOT}/src/os/win
|
||||
>
|
||||
|
||||
$<$<PLATFORM_ID:Darwin,Linux,FreeBSD,CYGWIN>:
|
||||
${TARGET_ROOT}/src/os/unix
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_asio}>:
|
||||
${TARGET_ROOT}/src/hostapi/asio
|
||||
$ENV{ASIOSDK_DIR}/common
|
||||
$ENV{ASIOSDK_DIR}/host
|
||||
$ENV{ASIOSDK_DIR}/host/pc
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_ds}>:
|
||||
${TARGET_ROOT}/src/hostapi/dsound
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_coreaudio}>:
|
||||
${TARGET_ROOT}/src/hostapi/coreaudio
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_alsa}>:
|
||||
${ALSA_INCLUDE_DIRS}
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_oss}>:
|
||||
${OSS_INCLUDE_DIRS}
|
||||
>
|
||||
|
||||
$<$<NOT:$<STREQUAL:${${_OPT}use_pa_jack},off>>:
|
||||
${TARGET_ROOT}/src/hostapi/jack
|
||||
${JACK_INCLUDE_DIRS}
|
||||
>
|
||||
|
||||
PUBLIC
|
||||
${TARGET_ROOT}/include
|
||||
)
|
||||
|
||||
list( APPEND DEFINES
|
||||
PUBLIC
|
||||
$<$<BOOL:${${_OPT}use_pa_asio}>:
|
||||
PA_USE_ASIO=1
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_ds}>:
|
||||
PA_USE_DS=1
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_wasapi}>:
|
||||
PA_USE_WASAPI=1
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_wmme}>:
|
||||
PA_USE_WMME=1
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_coreaudio}>:
|
||||
PA_USE_COREAUDIO=1
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_alsa}>:
|
||||
PA_USE_ALSA=1
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_oss}>:
|
||||
PA_USE_OSS=1
|
||||
HAVE_SYS_SOUNDCARD_H=1
|
||||
>
|
||||
|
||||
$<$<NOT:$<STREQUAL:${${_OPT}use_pa_jack},off>>:
|
||||
PA_USE_JACK=1
|
||||
>
|
||||
|
||||
$<$<STREQUAL:${${_OPT}use_pa_jack},dynamic>:
|
||||
PA_DYNAMIC_JACK=1
|
||||
>
|
||||
)
|
||||
|
||||
list( APPEND LIBRARIES
|
||||
INTERFACE
|
||||
$<$<BOOL:${${_OPT}use_pa_alsa}>:
|
||||
${ALSA_LIBRARIES}
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_oss}>:
|
||||
${OSS_LIBRARIES}
|
||||
>
|
||||
|
||||
$<$<NOT:$<STREQUAL:${${_OPT}use_pa_jack},off>>:
|
||||
${JACK_LIBRARIES}
|
||||
>
|
||||
)
|
||||
|
||||
organize_source( "${TARGET_ROOT}" "" "${SOURCES}" )
|
||||
target_sources( ${TARGET} PRIVATE ${SOURCES} ${EXTRASRC} )
|
||||
target_compile_definitions( ${TARGET} PRIVATE ${DEFINES} )
|
||||
target_include_directories( ${TARGET} PRIVATE ${INCLUDES} )
|
||||
target_link_libraries( ${TARGET} PRIVATE ${LIBRARIES} )
|
||||
|
||||
@@ -1,83 +0,0 @@
|
||||
|
||||
add_library( ${TARGET} STATIC )
|
||||
|
||||
def_vars()
|
||||
|
||||
list( APPEND SOURCES
|
||||
PRIVATE
|
||||
${TARGET_ROOT}/src/px_mixer.c
|
||||
$<$<PLATFORM_ID:Windows>:
|
||||
${TARGET_ROOT}/src/px_win_common.c
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_ds}>:
|
||||
${TARGET_ROOT}/src/px_win_ds.c
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_wasapi}>:
|
||||
${TARGET_ROOT}/src/px_win_wasapi.c
|
||||
${TARGET_ROOT}/src/px_win_endpoint.c
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_wmme}>:
|
||||
${TARGET_ROOT}/src/px_win_wmme.c
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_coreaudio}>:
|
||||
${TARGET_ROOT}/src/px_mac_coreaudio.c
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_alsa}>:
|
||||
${TARGET_ROOT}/src/px_linux_alsa.c
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_oss}>:
|
||||
${TARGET_ROOT}/src/px_unix_oss.c
|
||||
>
|
||||
)
|
||||
|
||||
list( APPEND INCLUDES
|
||||
PRIVATE
|
||||
${TARGET_ROOT}/src
|
||||
PUBLIC
|
||||
${TARGET_ROOT}/include
|
||||
)
|
||||
|
||||
list( APPEND DEFINES
|
||||
PRIVATE
|
||||
$<$<BOOL:${${_OPT}use_pa_ds}>:
|
||||
PX_USE_WIN_DSOUND=1
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_wasapi}>:
|
||||
PX_USE_WIN_WASAPI=1
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_wmme}>:
|
||||
PX_USE_WIN_MME=1
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_coreaudio}>:
|
||||
PX_USE_MAC_COREAUDIO=1
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_alsa}>:
|
||||
PX_USE_LINUX_ALSA=1
|
||||
>
|
||||
|
||||
$<$<BOOL:${${_OPT}use_pa_oss}>:
|
||||
PX_USE_UNIX_OSS=1
|
||||
>
|
||||
)
|
||||
|
||||
list( APPEND LIBRARIES
|
||||
PRIVATE
|
||||
portaudio-v19
|
||||
)
|
||||
|
||||
organize_source( "${TARGET_ROOT}" "" "${SOURCES}" )
|
||||
target_sources( ${TARGET} PRIVATE ${SOURCES} )
|
||||
target_compile_definitions( ${TARGET} PRIVATE ${DEFINES} )
|
||||
target_include_directories( ${TARGET} PRIVATE ${INCLUDES} )
|
||||
target_link_libraries( ${TARGET} PRIVATE ${LIBRARIES} )
|
||||
|
||||
Reference in New Issue
Block a user