[0e355f6] | 1 | # vim:set syntax=python: |
---|
| 2 | |
---|
[eae5898] | 3 | uselib = [] |
---|
[ccc55bd] | 4 | uselib += ['M'] |
---|
[0318cc1] | 5 | uselib += ['FFTW3', 'FFTW3F'] |
---|
| 6 | uselib += ['SAMPLERATE'] |
---|
| 7 | uselib += ['SNDFILE'] |
---|
[ba0ba10] | 8 | uselib += ['AVCODEC'] |
---|
| 9 | uselib += ['AVFORMAT'] |
---|
| 10 | uselib += ['AVRESAMPLE'] |
---|
| 11 | uselib += ['AVUTIL'] |
---|
[f0ce36a1] | 12 | uselib += ['BLAS'] |
---|
[eae5898] | 13 | |
---|
[dc0e759] | 14 | source = ctx.path.ant_glob('*.c **/*.c') |
---|
[ccc55bd] | 15 | |
---|
[985a5d1] | 16 | ctx(features = 'c', |
---|
[dc0e759] | 17 | source = source, |
---|
| 18 | includes = ['.'], |
---|
[ccc55bd] | 19 | use = uselib, |
---|
[dc0e759] | 20 | target = 'lib_objects') |
---|
[afbd7e7] | 21 | |
---|
[985a5d1] | 22 | # build libaubio.so (cshlib) and/or libaubio.a (cstlib) |
---|
[19ddbf3] | 23 | if ctx.env['DEST_OS'] in ['ios', 'iosimulator']: |
---|
[a90e9d4] | 24 | build_features = ['cstlib', 'cshlib'] |
---|
[06dba46] | 25 | elif ctx.env['DEST_OS'] in ['win32', 'win64']: |
---|
[25e2001] | 26 | build_features = ['cstlib', 'cshlib'] |
---|
[fb5838a] | 27 | elif ctx.env['DEST_OS'] in ['emscripten']: |
---|
| 28 | build_features = ['cstlib'] |
---|
[0ec7113] | 29 | elif '--static' in ctx.env['LDFLAGS'] or '--static' in ctx.env['LINKFLAGS']: |
---|
| 30 | # static in cflags, ... |
---|
| 31 | build_features = ['cstlib'] |
---|
| 32 | else: |
---|
| 33 | # linux, darwin, android, mingw, ... |
---|
[3bf80b9] | 34 | build_features = ['cstlib', 'cshlib'] |
---|
[b712146] | 35 | |
---|
[8698499] | 36 | # also install static lib |
---|
| 37 | from waflib.Tools.c import cstlib |
---|
| 38 | from waflib.Tools.fc import fcstlib |
---|
| 39 | fcstlib.inst_to = cstlib.inst_to = '${LIBDIR}' |
---|
| 40 | |
---|
[7fd1831] | 41 | for target in build_features: |
---|
[dc0e759] | 42 | ctx(features = 'c ' + target, |
---|
[ccc55bd] | 43 | use = uselib + ['lib_objects'], |
---|
[dc0e759] | 44 | target = 'aubio', |
---|
| 45 | vnum = ctx.env['LIB_VERSION']) |
---|
[000b090] | 46 | |
---|
| 47 | # install headers, except _priv.h ones |
---|
[0ec7113] | 48 | ctx.install_files('${INCLUDEDIR}/aubio/', |
---|
[dc0e759] | 49 | ctx.path.ant_glob('**/*.h', excl = ['**_priv.h', 'config.h']), |
---|
| 50 | relative_trick=True) |
---|