-1#!/usr/bin/env python
+#!/usr/bin/env python
from waflib.extras import autowaf as autowaf
from waflib import Options
import os
autowaf.build_version_files(
path_prefix + 'ardour/version.h',
path_prefix + 'version.cc',
- 'libardour3', conf.env['MAJOR'], conf.env['MINOR'], 0)
+ 'libardour3', conf.env['MAJOR'], conf.env['MINOR'], 0,
+ 'LIBARDOUR_API', 'ardour/libardour_visibility.h')
autowaf.configure(conf)
autowaf.check_pkg(conf, 'aubio', uselib_store='AUBIO',
atleast_version='0.3.2')
# major increment <=> incompatible changes
# minor increment <=> compatible changes (additions)
# micro increment <=> no interface changes
- LIBARDOUR_LIB_VERSION = "3.0.0."
+ LIBARDOUR_LIB_VERSION = "3.0.0"
# Library
if bld.is_defined ('INTERNAL_SHARED_LIBS'):
obj = bld.shlib(features = 'c cxx cshlib cxxshlib', source=libardour_sources)
+ # macros for this shared library
+ obj.defines = [ 'LIBARDOUR_DLL_EXPORTS=1' ]
+ obj.cflags = [ '-fvisibility=hidden' ]
+ obj.cxxflags = [ '-fvisibility=hidden' ]
else:
obj = bld.stlib(features = 'c cxx cstlib cxxstlib', source=libardour_sources)
obj.cxxflags = [ '-fPIC' ]
obj.cflags = [ '-fPIC' ]
+ obj.defines = []
obj.export_includes = ['.']
obj.includes = ['.', '../surfaces/control_protocol', '..']
obj.uselib = ['GLIBMM','GTHREAD','AUBIO','SIGCPP','XML','UUID',
'SNDFILE','SAMPLERATE','LRDF','AUDIOUNITS',
'OSX','BOOST','CURL','DL']
- obj.use = ['libpbd','libmidipp','libevoral','libvamphost',
- 'libvampplugin','libtaglib','librubberband',
- 'libaudiographer','libltc','libtimecode']
+ obj.use = ['libpbd','libmidipp','libevoral', 'libvampplugin',
+ 'libaudiographer',
+ 'libtimecode_includes',
+ ]
+ if bld.is_defined('USE_EXTERNAL_LIBS'):
+ obj.uselib.extend(['RUBBERBAND', 'TAGLIB', 'VAMPSDK', 'LIBLTC',
+ 'VAMPHOSTSDK'])
+ else:
+ obj.use.extend(['librubberband', 'libtaglib', 'libvamphost'
+ 'libltc_includes', 'libltc'])
+
obj.vnum = LIBARDOUR_LIB_VERSION
obj.install_path = os.path.join(bld.env['LIBDIR'], 'ardour3')
- obj.defines = [
+ obj.defines += [
'PACKAGE="' + I18N_PACKAGE + '"',
'DATA_DIR="' + os.path.normpath(bld.env['DATADIR']) + '"',
'CONFIG_DIR="' + os.path.normpath(bld.env['SYSCONFDIR']) + '"',
'LOCALEDIR="' + os.path.join(os.path.normpath(bld.env['DATADIR']), 'locale') + '"',
'PROGRAM_NAME="' + bld.env['PROGRAM_NAME'] + '"',
- 'EVORAL_MIDI_XML=1'
+ 'EVORAL_MIDI_XML=1',
]
#obj.source += ' st_stretch.cc st_pitch.cc '
# only build these common sources once
testcommon = bld(features = 'cxx')
testcommon.includes = obj.includes + ['test', '../pbd', '..']
- testcommon.source = ['test/test_globals.cc', 'test/testrunner.cc', 'test/test_needing_session.cc',
+ testcommon.source = ['test/testrunner.cc', 'test/test_needing_session.cc',
'test/test_common.cc', 'test/dummy_lxvst.cc', 'test/audio_region_test.cc', 'test/test_util.cc']
testcommon.uselib = ['CPPUNIT','SIGCPP','GLIBMM','GTHREAD',
'SAMPLERATE','XML','LRDF','COREAUDIO']
- testcommon.use = ['libpbd','libmidipp','libevoral','libvamphost',
- 'libvampplugin','libtaglib','librubberband',
- 'libaudiographer','libltc','ardour']
+ testcommon.use = ['libpbd','libmidipp','libevoral',
+ 'libvampplugin','libaudiographer','ardour']
+ if bld.is_defined('USE_EXTERNAL_LIBS'):
+ testcommon.uselib.extend(['RUBBERBAND', 'TAGLIB', 'LIBLTC', 'VAMPSDK',
+ 'VAMPHOSTSDK'])
+ else:
+ testcommon.use.extend(['libltc', 'librubberband', 'libtaglib', 'libvamphost'])
testcommon.defines = [
'DATA_DIR="' + os.path.normpath(bld.env['DATADIR']) + '"',
'CONFIG_DIR="' + os.path.normpath(bld.env['SYSCONFDIR']) + '"',
testobj.source = sources
testobj.uselib = ['CPPUNIT','SIGCPP','GLIBMM','GTHREAD',
'SAMPLERATE','XML','LRDF','COREAUDIO']
- testobj.use = ['libpbd','libmidipp','libevoral','libvamphost',
- 'libvampplugin','libtaglib','librubberband',
- 'libaudiographer','libltc','ardour','testcommon']
+ testobj.use = ['libpbd','libmidipp','libevoral','libvampplugin',
+ 'libaudiographer','ardour','testcommon']
+ if bld.is_defined('USE_EXTERNAL_LIBS'):
+ testobj.uselib.extend(['RUBBERBAND', 'TAGLIB', 'LIBLTC', 'VAMPSDK',
+ 'VAMPHOSTSDK'])
+ else:
+ testobj.use.extend(['libltc', 'librubberband', 'libtaglib',
+ 'libvamphost'])
+
testobj.name = name
testobj.target = target
# not sure about install path