summaryrefslogtreecommitdiff
path: root/libs/rubberband/wscript
diff options
context:
space:
mode:
Diffstat (limited to 'libs/rubberband/wscript')
-rw-r--r--libs/rubberband/wscript64
1 files changed, 64 insertions, 0 deletions
diff --git a/libs/rubberband/wscript b/libs/rubberband/wscript
new file mode 100644
index 0000000000..d43ec08c16
--- /dev/null
+++ b/libs/rubberband/wscript
@@ -0,0 +1,64 @@
+#!/usr/bin/env python
+import autowaf
+import glob
+
+# Version of this package (even if built as a child)
+LIBRUBBERBAND_VERSION = '0.0.0'
+
+# Library version (UNIX style major, minor, micro)
+# major increment <=> incompatible changes
+# minor increment <=> compatible changes (additions)
+# micro increment <=> no interface changes
+LIBRUBBERBAND_LIB_VERSION = '4.1.0'
+
+# Variables for 'waf dist'
+APPNAME = 'librubberband'
+VERSION = LIBRUBBERBAND_VERSION
+
+# Mandatory variables
+srcdir = '.'
+blddir = 'build'
+
+def set_options(opt):
+ autowaf.set_options(opt)
+
+def configure(conf):
+ autowaf.configure(conf)
+ autowaf.check_tool(conf, 'compiler_cxx')
+ autowaf.check_pkg(conf, 'libxml-2.0', uselib_store='XML')
+ autowaf.check_pkg(conf, 'sigc++-2.0', uselib_store='SIGCPP', atleast_version='2.0')
+ autowaf.check_pkg(conf, 'uuid', uselib_store='UUID')
+
+ conf.check(function_name='getmntent', header_name='mntent.h', define_name='HAVE_GETMNTENT')
+
+ # This must be defined for librubberband only, it breaks ardour
+ conf.check(header_name='execinfo.h', define_name='PBD_HAVE_EXECINFO')
+
+ conf.env.append_value('CXXFLAGS', '-DHAVE_WAFCONFIG_H')
+ conf.write_config_header('wafconfig.h')
+
+ # Boost headers
+ autowaf.check_header(conf, 'boost/shared_ptr.hpp')
+ autowaf.check_header(conf, 'boost/weak_ptr.hpp')
+
+def build(bld):
+ # Library
+ obj = bld.new_task_gen('cxx', 'shlib')
+ prefix = 'libs/rubberband/'
+ sources = glob.glob(prefix + 'src/*.cpp')
+ obj.source = [ ]
+ for i in sources:
+ obj.source += [ i.replace(prefix, '') ]
+ obj.export_incdirs = ['.']
+ obj.includes = ['.', 'rubberband']
+ obj.name = 'librubberband'
+ obj.target = 'rubberband'
+ obj.uselib = 'FFTW3 FFTW3F SAMPLERATE SNDFILE'
+ obj.uselib_local = 'libvamp'
+ obj.vnum = LIBRUBBERBAND_LIB_VERSION
+ obj.install_path = ''
+ obj.cxxflags = '-DPACKAGE=\\\"librubberband\\\"'
+
+def shutdown():
+ autowaf.shutdown()
+