ref: 46378b3b845d266c97ff4d441f394f70e7ea7d36
parent: 20ae690b28378f817256778e0fe826ee55d7775a
author: Paul Brossier <piem@piem.org>
date: Sun Sep 25 20:21:00 EDT 2011
wscript: update to waf 1.6.7
--- a/examples/wscript_build
+++ b/examples/wscript_build
@@ -1,14 +1,23 @@
# build examples
+sndfileio = bld.new_task_gen(features = 'c',
+ includes = '../src',
+ source = ['sndfileio.c'],
+ target = 'sndfileio')
+utilsio = bld.new_task_gen(features = 'c',
+ includes = '../src',
+ add_objects = 'sndfileio',
+ source = ['utils.c', 'jackio.c'],
+ uselib = ['LASH', 'JACK', 'SNDFILE'],
+ target = 'utilsio')
+
# loop over all *.c filenames in examples to build them all
-for target_name in bld.path.ant_glob('*.c').split():
- # ignore utils.c
- if target_name in ['utils.c', 'jackio.c', 'sndfileio.c']: continue
- bld.new_task_gen(features = 'cc cprogram',
+for target_name in bld.path.ant_glob('*.c', excl = ['utils.c', 'jackio.c', 'sndfileio.c']):
+ bld.new_task_gen(features = 'c cprogram',
add_objects = 'utilsio',
includes = '../src',
uselib = ['LASH', 'JACK', 'SNDFILE'],
- uselib_local = ['aubio'],
+ use = ['aubio'],
source = target_name,
# program name is filename.c without the .c
- target = target_name.split('.')[0])
+ target = str(target_name).split('.')[0])
--- a/python/aubio/wscript_build
+++ b/python/aubio/wscript_build
@@ -3,7 +3,7 @@
source = '../../swig/aubio.i',
add_objects = 'sndfileio',
target = '_aubiowrapper',
- uselib_local = ['aubio'],
+ use = ['aubio'],
uselib = ['SNDFILE'],
swig_flags = '-python -Wall',
includes = '. ../../src ../../examples')
--- a/src/wscript_build
+++ b/src/wscript_build
@@ -1,6 +1,6 @@
# build libaubio
libaubio = bld.new_task_gen(
- features = 'cc cshlib',
+ features = 'c cshlib',
includes = ['.'],
source = bld.path.ant_glob('*.c **/*.c'),
target = 'aubio',
@@ -8,6 +8,7 @@
vnum = bld.env['LIB_VERSION'])
# install headers, except _priv.h ones
-for file in bld.path.ant_glob('**/*.h').split():
- if '_priv.h' in file or file == 'config.h': continue
- bld.install_as('${PREFIX}/include/aubio/' + file, file)
+bld.install_files('${PREFIX}/include/aubio/',
+ bld.path.ant_glob('**/*.h',
+ exclude = ['_priv.h', 'config.h']),
+ relative_trick=True)
--- a/wscript
+++ b/wscript
@@ -14,13 +14,13 @@
APPNAME = 'aubio'
VERSION = '0.3.3'
LIB_VERSION = '2.1.1'
-srcdir = '.'
-blddir = 'build'
+top = '.'
+out = 'build'
def init(opt):
pass
-def set_options(opt):
+def options(opt):
opt.add_option('--enable-double', action='store_true', default=False,
help='compile aubio in double precision mode')
opt.add_option('--disable-fftw3f', action='store_true', default=False,
@@ -27,18 +27,18 @@
help='compile with fftw3 instead of fftw3f')
opt.add_option('--enable-complex', action='store_true', default=False,
help='compile with C99 complex')
- opt.add_option('--disable-jack', action='store_true', default=False,
+ opt.add_option('--enable-jack', action='store_true', default=False,
help='compile without jack support')
- opt.add_option('--disable-lash', action='store_true', default=False,
+ opt.add_option('--enable-lash', action='store_true', default=False,
help='compile without lash support')
- opt.add_option('--disable-libsamplerate', action='store_true', default=False,
+ opt.add_option('--enable-libsamplerate', action='store_true', default=False,
help='compile without libsamplerate support')
opt.add_option('--with-target-platform', type='string',
help='set target platform for cross-compilation', dest='target_platform')
- opt.tool_options('compiler_cc')
- opt.tool_options('compiler_cxx')
- opt.tool_options('gnu_dirs')
- opt.tool_options('UnitTest')
+ opt.load('compiler_cc')
+ opt.load('compiler_cxx')
+ opt.load('gnu_dirs')
+ opt.load('waf_unit_test')
def configure(conf):
import Options
@@ -46,6 +46,7 @@
conf.check_tool('compiler_cxx')
conf.check_tool('gnu_dirs') # helpful for autotools transition and .pc generation
conf.check_tool('misc') # needed for subst
+ conf.load('waf_unit_test')
if Options.options.target_platform:
Options.platform = Options.options.target_platform
@@ -67,8 +68,8 @@
# check dependencies
conf.check_cfg(package = 'sndfile', atleast_version = '1.0.4',
args = '--cflags --libs')
- if (Options.options.disable_libsamplerate == False):
- conf.check_cfg(package = 'libsamplerate', atleast_version = '0.0.15',
+ if (Options.options.enable_libsamplerate == True):
+ conf.check_cfg(package = 'samplerate', atleast_version = '0.0.15',
args = '--cflags --libs')
# double precision mode
@@ -91,15 +92,15 @@
args = '--cflags --libs')
# optional dependancies
- if (Options.options.disable_jack == False):
+ if (Options.options.enable_jack == True):
conf.check_cfg(package = 'jack', atleast_version = '0.15.0',
args = '--cflags --libs')
- if (Options.options.disable_lash == False):
+ if (Options.options.enable_lash == True):
conf.check_cfg(package = 'lash-1.0', atleast_version = '0.5.0',
args = '--cflags --libs', uselib_store = 'LASH')
# swig
- if conf.find_program('swig', var='SWIG', mandatory = False):
+ if 0: #conf.find_program('swig', var='SWIG', mandatory = False):
conf.check_tool('swig', tooldir='swig')
conf.check_swig_version('1.3.27')
@@ -115,7 +116,7 @@
#define AUBIO_ERR(...) fprintf(stderr, __VA_ARGS__)
'''
if conf.check_cc(fragment = check_c99_varargs,
- type='cstaticlib',
+ type='cstlib',
msg = 'Checking for C99 __VA_ARGS__ macro'):
conf.define('HAVE_C99_VARARGS_MACROS', 1)
@@ -133,8 +134,6 @@
bld.env['VERSION'] = VERSION
bld.env['LIB_VERSION'] = LIB_VERSION
- build_extras(bld)
-
# add sub directories
bld.add_subdirs('src examples')
if bld.env['SWIG']:
@@ -167,8 +166,6 @@
# build and run the unit tests
build_tests(bld)
- import UnitTest
- bld.add_post_fun(UnitTest.summary)
def shutdown(bld):
pass
@@ -176,35 +173,17 @@
# loop over all *.c filenames in tests/src to build them all
# target name is filename.c without the .c
def build_tests(bld):
- for target_name in bld.path.ant_glob('tests/src/**/*.c').split():
+ for target_name in bld.path.ant_glob('tests/src/**/*.c'):
this_target = bld.new_task_gen(
- features = 'cc cprogram test',
+ features = 'c cprogram test',
source = target_name,
- target = target_name.split('.')[0],
+ target = str(target_name).split('.')[0],
includes = 'src',
defines = 'AUBIO_UNSTABLE_API=1',
- uselib_local = 'aubio')
+ use = 'aubio')
# phasevoc-jack also needs jack
- if target_name.endswith('test-phasevoc-jack.c'):
+ if str(target_name).endswith('test-phasevoc-jack.c'):
this_target.includes = ['src', 'examples']
- this_target.uselib_local = ['aubio']
+ this_target.use = ['aubio']
this_target.uselib = ['JACK']
- this_target.source += ' examples/jackio.c'
-
-def build_extras(bld):
- # corner cases to build these ones only once
- sndfileio = bld.new_task_gen(features = 'cc',
- includes = 'examples src',
- source = ['examples/sndfileio.c'],
- target = 'sndfileio')
-
- defines = ['AUBIO_PREFIX="' + bld.env['AUBIO_PREFIX'] + '"']
- defines += ['PACKAGE="' + bld.env['PACKAGE'] + '"']
-
- utilsio = bld.new_task_gen(features = 'cc',
- includes = 'examples src',
- add_objects = 'sndfileio',
- source = ['examples/utils.c', 'examples/jackio.c'],
- uselib = ['LASH', 'JACK', 'SNDFILE'],
- defines = defines,
- target = 'utilsio')
+ this_target.target += ' examples/jackio.c'