+ # Library
+ if bld.is_defined ('INTERNAL_SHARED_LIBS'):
+ print('BUILD SHARED LIB')
+ obj = bld.shlib(features = 'cxx cxxshlib', source=libpbd_sources)
+ obj.defines = [ 'LIBPBD_DLL_EXPORTS=1' ]
+ obj.cxxflags = [ '-fvisibility=hidden' ]
+ obj.cflags = [ '-fvisibility=hidden' ]
+ else:
+ print('BUILD STATIC LIB')
+ obj = bld.stlib(features = 'cxx cxxstlib', source=libpbd_sources)
+ obj.cxxflags = [ '-fPIC' ]
+ obj.cflags = [ '-fPIC' ]
+ obj.defines = []
+
+ if bld.is_defined('DEBUG_RT_ALLOC'):
+ obj.source += 'debug_rt_alloc.c'
+
+ obj.export_includes = ['.']
+ obj.includes = ['.']
+ obj.name = 'libpbd'
+ obj.target = 'pbd'
+ obj.uselib = 'GLIBMM SIGCPP XML UUID SNDFILE GIOMM'
+ if sys.platform == 'darwin':
+ TaskGen.task_gen.mappings['.mm'] = TaskGen.task_gen.mappings['.cc']
+ if 'cocoa_open_uri.mm' not in obj.source:
+ obj.source += [ 'cocoa_open_uri.mm' ]
+ obj.uselib += ' OSX'
+ obj.vnum = LIBPBD_LIB_VERSION
+ obj.install_path = os.path.join(bld.env['LIBDIR'], 'ardour3')
+ obj.defines += [ 'PACKAGE="' + I18N_PACKAGE + '"' ]
+
+ if bld.env['build_target'] == 'x86_64':
+ obj.defines += [ 'USE_X86_64_ASM' ]