diff options
author | David Robillard <d@drobilla.net> | 2009-02-26 01:22:20 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2009-02-26 01:22:20 +0000 |
commit | 1d516ac95a61d12dadaaf75c46f792d8e4308578 (patch) | |
tree | 4510f9d79575fd2f735c6740534e682132d9777b /libs/rubberband | |
parent | 03536cd399131e3fec54c95ae5ac6f11dca05aef (diff) |
Waf building of rubberband.
Use rubberband over soundtouch with waf for the time being.
git-svn-id: svn://localhost/ardour2/branches/3.0@4669 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/rubberband')
-rw-r--r-- | libs/rubberband/SConscript | 2 | ||||
-rw-r--r-- | libs/rubberband/src/FFT.cpp | 2 | ||||
-rw-r--r-- | libs/rubberband/wscript | 64 |
3 files changed, 67 insertions, 1 deletions
diff --git a/libs/rubberband/SConscript b/libs/rubberband/SConscript index adad16a8b3..9c3226526c 100644 --- a/libs/rubberband/SConscript +++ b/libs/rubberband/SConscript @@ -10,7 +10,7 @@ Import('env install_prefix libraries') rb = env.Clone() rb.Merge ([libraries['fftw3f'], - libraries['fftw3'], + libraries['fftw3'], libraries['vamp'], libraries['samplerate'], libraries['sndfile'] diff --git a/libs/rubberband/src/FFT.cpp b/libs/rubberband/src/FFT.cpp index 98201350a2..077c2c57a4 100644 --- a/libs/rubberband/src/FFT.cpp +++ b/libs/rubberband/src/FFT.cpp @@ -18,7 +18,9 @@ //#define FFT_MEASUREMENT 1 +#ifndef HAVE_FFTW3 #define HAVE_FFTW3 // for Ardour +#endif #ifdef HAVE_FFTW3 #include <fftw3.h> 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() + |