Paul Davis
3900537fcf
Rounding to bar requires access to the tempo map, and we don't want this in the beats.h header
70 lines
1.8 KiB
Python
70 lines
1.8 KiB
Python
#!/usr/bin/env python
|
|
from waflib.extras import autowaf as autowaf
|
|
from waflib import Options
|
|
import os
|
|
|
|
# Mandatory variables
|
|
top = '.'
|
|
out = 'build'
|
|
|
|
# Version of this package (even if built as a child)
|
|
MAJOR = '0'
|
|
MINOR = '0'
|
|
MICRO = '0'
|
|
TEMPORAL_VERSION = "%s.%s.%s" % (MAJOR, MINOR, MICRO)
|
|
|
|
# Library version (UNIX style major, minor, micro)
|
|
# major increment <=> incompatible changes
|
|
# minor increment <=> compatible changes (additions)
|
|
# micro increment <=> no interface changes
|
|
TEMPORAL_LIB_VERSION = '0.0.0'
|
|
|
|
# Variables for 'waf dist'
|
|
APPNAME = 'temporal'
|
|
VERSION = TEMPORAL_VERSION
|
|
I18N_PACKAGE = 'libtemporal'
|
|
|
|
temporal_sources = [
|
|
'debug.cc',
|
|
'bbt_time.cc',
|
|
'beats.cc',
|
|
'enums.cc',
|
|
'range.cc',
|
|
'superclock.cc',
|
|
'tempo.cc',
|
|
'time.cc',
|
|
'time_converter.cc',
|
|
'timeline.cc',
|
|
]
|
|
|
|
def options(opt):
|
|
autowaf.set_options(opt)
|
|
|
|
def configure(conf):
|
|
conf.load('compiler_cxx')
|
|
autowaf.configure(conf)
|
|
|
|
def build(bld):
|
|
# Library
|
|
if bld.is_defined ('INTERNAL_SHARED_LIBS'):
|
|
obj = bld.shlib(features = 'cxx cxxshlib', source=temporal_sources)
|
|
obj.defines = [ 'LIBTEMPORAL_DLL_EXPORTS=1' ]
|
|
else:
|
|
obj = bld.stlib(features = 'cxx cxxstlib', source=temporal_sources)
|
|
obj.cxxflags = [ bld.env['compiler_flags_dict']['pic'] ]
|
|
obj.cflags = [ bld.env['compiler_flags_dict']['pic'] ]
|
|
obj.defines = [ ]
|
|
|
|
obj.export_includes = ['.']
|
|
obj.includes = ['.']
|
|
obj.name = 'libtemporal'
|
|
obj.target = 'temporal'
|
|
obj.vnum = TEMPORAL_LIB_VERSION
|
|
obj.install_path = bld.env['LIBDIR']
|
|
obj.defines += [ 'PACKAGE="' + I18N_PACKAGE + '"' ]
|
|
obj.uselib = [ 'GLIBMM', 'XML' ]
|
|
obj.use = [ 'libpbd' ]
|
|
|
|
def shutdown():
|
|
autowaf.shutdown()
|