From 1d516ac95a61d12dadaaf75c46f792d8e4308578 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Thu, 26 Feb 2009 01:22:20 +0000 Subject: 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 --- libs/rubberband/wscript | 64 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 libs/rubberband/wscript (limited to 'libs/rubberband/wscript') 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() + -- cgit v1.2.3