# vim:set syntax=python:
-source = ctx.path.ant_glob('*.c **/*.c')
uselib = []
uselib += ['FFTW3', 'FFTW3F']
uselib += ['SAMPLERATE']
uselib += ['SNDFILE']
-uselib += ['JACK']
-uselib += ['LASH']
+uselib += ['AVCODEC']
+uselib += ['AVFORMAT']
+uselib += ['AVRESAMPLE']
+uselib += ['AVUTIL']
+# build each source files
+source = ctx.path.ant_glob('*.c **/*.c')
+ctx(features = 'c',
+ source = source,
+ includes = ['.'],
+ uselib = uselib,
+ lib = 'm',
+ target = 'lib_objects')
-# build libaubio
-from waflib import Options
-if Options.platform in ['ios', 'iosimulator']:
- build_lib_func = ctx.stlib
-else:
- build_lib_func = ctx.shlib
+# build libaubio.so (cshlib) and/or libaubio.a (cstlib)
+if ctx.env['DEST_OS'] in ['ios', 'iosimulator']:
+ build_features = ['cstlib']
+elif ctx.env['DEST_OS'] in ['win32', 'win64']:
+ build_features = ['cshlib']
+else: #linux, darwin, android, mingw, ...
+ build_features = ['cshlib', 'cstlib']
-build_lib_func(
- includes = ['.'],
- source = source,
- target = 'aubio',
- lib = 'm',
- uselib = uselib,
- install_path = '${PREFIX}/lib',
- vnum = ctx.env['LIB_VERSION'])
+for target in build_features:
+ ctx(features = 'c ' + target,
+ use = ['lib_objects'],
+ lib = 'm',
+ target = 'aubio',
+ vnum = ctx.env['LIB_VERSION'])
# install headers, except _priv.h ones
ctx.install_files('${PREFIX}/include/aubio/',
- ctx.path.ant_glob('**/*.h', excl = ['**_priv.h', 'config.h']),
- relative_trick=True)
+ ctx.path.ant_glob('**/*.h', excl = ['**_priv.h', 'config.h']),
+ relative_trick=True)