mirror of
https://github.com/cookiengineer/audacity
synced 2025-10-19 09:01:15 +02:00
Move library tree where it belongs
This commit is contained in:
65
lib-src/portaudio-v19/bindings/cpp/SConscript
Normal file
65
lib-src/portaudio-v19/bindings/cpp/SConscript
Normal file
@@ -0,0 +1,65 @@
|
||||
import os.path
|
||||
|
||||
Import("env", "buildDir")
|
||||
env.Append(CPPPATH="include")
|
||||
|
||||
ApiVer = "0.0.12"
|
||||
Major, Minor, Micro = [int(c) for c in ApiVer.split(".")]
|
||||
|
||||
sharedLibs = []
|
||||
staticLibs = []
|
||||
Import("Platform", "Posix")
|
||||
if Platform in Posix:
|
||||
env["SHLIBSUFFIX"] = ".so.%d.%d.%d" % (Major, Minor, Micro)
|
||||
soFile = "libportaudiocpp.so"
|
||||
if Platform != 'darwin':
|
||||
env.AppendUnique(SHLINKFLAGS="-Wl,-soname=%s.%d" % (soFile, Major))
|
||||
|
||||
# Create symlinks
|
||||
def symlink(env, target, source):
|
||||
trgt = str(target[0])
|
||||
src = str(source[0])
|
||||
if os.path.islink(trgt) or os.path.exists(trgt):
|
||||
os.remove(trgt)
|
||||
os.symlink(os.path.basename(src), trgt)
|
||||
lnk0 = env.Command(soFile + ".%d" % (Major), soFile + ".%d.%d.%d" % (Major, Minor, Micro), symlink)
|
||||
lnk1 = env.Command(soFile, soFile + ".%d" % (Major), symlink)
|
||||
sharedLibs.append(lnk0)
|
||||
sharedLibs.append(lnk1)
|
||||
|
||||
src = [os.path.join("source", "portaudiocpp", "%s.cxx" % f) for f in ("BlockingStream", "CallbackInterface", \
|
||||
"CallbackStream", "CFunCallbackStream","CppFunCallbackStream", "Device",
|
||||
"DirectionSpecificStreamParameters", "Exception", "HostApi", "InterfaceCallbackStream",
|
||||
"MemFunCallbackStream", "Stream", "StreamParameters", "System", "SystemDeviceIterator",
|
||||
"SystemHostApiIterator")]
|
||||
env.Append(LIBS="portaudio", LIBPATH=buildDir)
|
||||
sharedLib = env.SharedLibrary("portaudiocpp", src, LIBS=["portaudio"])
|
||||
staticLib = env.Library("portaudiocpp", src, LIBS=["portaudio"])
|
||||
sharedLibs.append(sharedLib)
|
||||
staticLibs.append(staticLib)
|
||||
|
||||
headers = Split("""AutoSystem.hxx
|
||||
BlockingStream.hxx
|
||||
CallbackInterface.hxx
|
||||
CallbackStream.hxx
|
||||
CFunCallbackStream.hxx
|
||||
CppFunCallbackStream.hxx
|
||||
Device.hxx
|
||||
DirectionSpecificStreamParameters.hxx
|
||||
Exception.hxx
|
||||
HostApi.hxx
|
||||
InterfaceCallbackStream.hxx
|
||||
MemFunCallbackStream.hxx
|
||||
PortAudioCpp.hxx
|
||||
SampleDataFormat.hxx
|
||||
Stream.hxx
|
||||
StreamParameters.hxx
|
||||
SystemDeviceIterator.hxx
|
||||
SystemHostApiIterator.hxx
|
||||
System.hxx
|
||||
""")
|
||||
if env["PLATFORM"] == "win32":
|
||||
headers.append("AsioDeviceAdapter.hxx")
|
||||
headers = [File(os.path.join("include", "portaudiocpp", h)) for h in headers]
|
||||
|
||||
Return("sharedLibs", "staticLibs", "headers")
|
Reference in New Issue
Block a user