source: src/wscript_build @ 4624a568

feature/autosinkfeature/cnnfeature/cnn_orgfeature/constantqfeature/crepefeature/crepe_orgfeature/pitchshiftfeature/pydocstringsfeature/timestretchfix/ffmpeg5
Last change on this file since 4624a568 was 18ec142, checked in by Paul Brossier <piem@piem.org>, 7 years ago

waf_gensyms.py: move to own file

  • Property mode set to 100644
File size: 1.5 KB
Line 
1# vim:set syntax=python:
2
3uselib = []
4uselib += ['M']
5uselib += ['FFTW3', 'FFTW3F']
6uselib += ['INTEL_IPP']
7uselib += ['SAMPLERATE']
8uselib += ['SNDFILE']
9uselib += ['AVCODEC']
10uselib += ['AVFORMAT']
11uselib += ['SWRESAMPLE']
12uselib += ['AVRESAMPLE']
13uselib += ['AVUTIL']
14uselib += ['BLAS']
15
16source = ctx.path.ant_glob('*.c **/*.c')
17
18ctx(features = 'c',
19        source = source,
20        includes = ['.'],
21        use = uselib,
22        target = 'lib_objects')
23
24# build libaubio.so (cshlib) and/or libaubio.a (cstlib)
25if ctx.env['DEST_OS'] in ['ios', 'iosimulator']:
26    build_features = ['cstlib', 'cshlib']
27elif ctx.env['DEST_OS'] in ['win32', 'win64']:
28    build_features = ['cstlib', 'cshlib gensyms']
29elif ctx.env['DEST_OS'] in ['emscripten']:
30    build_features = ['cstlib','cshlib']
31elif '--static' in ctx.env['LDFLAGS'] or '--static' in ctx.env['LINKFLAGS']:
32    # static in cflags, ...
33    build_features = ['cstlib']
34else:
35    # linux, darwin, android, mingw, ...
36    build_features = ['cstlib', 'cshlib']
37
38# also install static lib
39from waflib.Tools.c import cstlib
40cstlib.inst_to = '${LIBDIR}'
41
42for target in build_features:
43    ctx(features = 'c ' + target,
44            use = uselib + ['lib_objects'],
45            target = 'aubio',
46            export_symbols_regex=r'(?:.*aubio|fvec|lvec|cvec|fmat|new|del)_.*',
47            vnum = ctx.env['LIB_VERSION'])
48
49# install headers, except _priv.h ones
50ctx.install_files('${INCLUDEDIR}/aubio/',
51        ctx.path.ant_glob('**/*.h', excl = ['**_priv.h', 'config.h']),
52        relative_trick=True)
Note: See TracBrowser for help on using the repository browser.