summaryrefslogtreecommitdiff
path: root/libs/surfaces/control_protocol/wscript
diff options
context:
space:
mode:
Diffstat (limited to 'libs/surfaces/control_protocol/wscript')
-rw-r--r--libs/surfaces/control_protocol/wscript25
1 files changed, 19 insertions, 6 deletions
diff --git a/libs/surfaces/control_protocol/wscript b/libs/surfaces/control_protocol/wscript
index a4331e7b76..10ec7f6c95 100644
--- a/libs/surfaces/control_protocol/wscript
+++ b/libs/surfaces/control_protocol/wscript
@@ -13,6 +13,11 @@ LIBARDOUR_CP_LIB_VERSION = '4.1.0'
top = '.'
out = 'build'
+controlcp_sources = [
+ 'basic_ui.cc',
+ 'control_protocol.cc',
+ ]
+
def options(opt):
autowaf.set_options(opt)
@@ -20,13 +25,21 @@ def configure(conf):
autowaf.configure(conf)
def build(bld):
- obj = bld(features = 'cxx cxxshlib')
- obj.source = '''
- basic_ui.cc
- control_protocol.cc
- '''
+ if bld.is_defined ('INTERNAL_SHARED_LIBS'):
+ obj = bld.shlib(features = 'c cxx cshlib cxxshlib', source=controlcp_sources)
+ # defines for this library
+ obj.defines = [ 'LIBCONTROLCP_DLL=1', 'LIBCONTROLCP_DLL_EXPORTS=1' ]
+ # internal shared libs that we use
+ obj.defines += [ 'LIBPBD_DLL=1', 'LIBARDOUR_DLL=1', 'LIBEVORAL_DLL=1' ]
+ obj.cxxflags = [ '-fvisibility=hidden' ]
+ obj.cflags = [ '-fvisibility=hidden' ]
+ else:
+ obj = bld.stlib(features = 'c cxx cstlib cxxstlib', source=controlcp_sources)
+ obj.cxxflags = [ '-fPIC' ]
+ obj.defines = [ ]
+
obj.export_includes = ['.', './control_protocol' ]
- obj.cxxflags = '-DPACKAGE="ardour_cp" -fPIC'
+ obj.defines += [ 'PACKAGE="ardour_cp"' ]
obj.includes = ['.', './control_protocol']
obj.defines = [ 'ARDOURCP_DLL_EXPORTS' ]
obj.name = 'libardour_cp'