Optimize Plugin connect & run API, use const maps
[ardour.git] / libs / zita-convolver / wscript
1 #!/usr/bin/env python
2 from waflib.extras import autowaf as autowaf
3 from waflib import Options
4 from waflib import TaskGen
5 import os
6
7 # Version of this package (even if built as a child)
8 MAJOR = '4'
9 MINOR = '0'
10 MICRO = '0'
11 ZCONVOLVER_VERSION = "%s.%s.%s" % (MAJOR, MINOR, MICRO)
12
13 # Library version (UNIX style major, minor, micro)
14 # major increment <=> incompatible changes
15 # minor increment <=> compatible changes (additions)
16 # micro increment <=> no interface changes
17 ZCONVOLVER_LIB_VERSION = '4.0.0'
18
19 # Variables for 'waf dist'
20 APPNAME = 'zita-convolver'
21 VERSION = ZCONVOLVER_VERSION
22 I18N_PACKAGE = 'libzita-convolver'
23
24 # Mandatory variables
25 top = '.'
26 out = 'build'
27
28 def options(opt):
29     autowaf.set_options(opt)
30
31 def configure(conf):
32     if conf.is_defined('USE_EXTERNAL_LIBS'):
33         autowaf.check_pkg(conf, 'zita-convolver', uselib_store='LIBZCONVOLVER', atleast_version=ZCONVOLVER_LIB_VERSION, mandatory=True)
34     else:
35         conf.load ('compiler_cxx')
36         autowaf.configure(conf)
37         autowaf.check_pkg(conf, 'fftw3f', uselib_store='FFTW3F', mandatory=True)
38
39 def build(bld):
40     if bld.is_defined('USE_EXTERNAL_LIBS'):
41         return
42
43     obj = bld.stlib(features = 'cxx cxxstlib', source = 'zita-convolver.cc')
44     obj.cxxflags        = [ '-fPIC', '-O3', '-ffast-math', '-funroll-loops' ]
45     obj.export_includes = ['.']
46     obj.includes        = ['.']
47     obj.name            = 'zita-convolver'
48     obj.target          = 'zita-convolver'
49     obj.vnum            = ZCONVOLVER_LIB_VERSION
50     obj.install_path    = bld.env['LIBDIR']
51     obj.uselib          = 'FFTW3F'
52     obj.defines         = [ 'PACKAGE="' + I18N_PACKAGE + '"', 'ENABLE_VECTOR_MODE', '_POSIX_PTHREAD_SEMANTICS', '_REENTRANT' ]
53
54 def shutdown():
55     autowaf.shutdown()