Merge branch 'master' into gitshaversion
[aubio.git] / src / wscript_build
index 04048c0..df931f3 100644 (file)
@@ -1,23 +1,23 @@
 # vim:set syntax=python:
 
 uselib = []
+uselib += ['M']
 uselib += ['FFTW3', 'FFTW3F']
 uselib += ['SAMPLERATE']
 uselib += ['SNDFILE']
 uselib += ['AVCODEC']
 uselib += ['AVFORMAT']
+uselib += ['SWRESAMPLE']
 uselib += ['AVRESAMPLE']
 uselib += ['AVUTIL']
 uselib += ['BLAS']
 
-# build each source files
 source = ctx.path.ant_glob('*.c **/*.c')
-lib = 'm' if 'CL.exe' not in ctx.env.CC[0] else None
+
 ctx(features = 'c',
         source = source,
         includes = ['.'],
-        uselib = uselib,
-        lib = lib,
+        use = uselib,
         target = 'lib_objects')
 
 # build libaubio.so (cshlib) and/or libaubio.a (cstlib)
@@ -27,18 +27,25 @@ elif ctx.env['DEST_OS'] in ['win32', 'win64']:
     build_features = ['cstlib', 'cshlib']
 elif ctx.env['DEST_OS'] in ['emscripten']:
     build_features = ['cstlib']
-else: #linux, darwin, android, mingw, ...
-    build_features = ['cshlib', 'cstlib']
+elif '--static' in ctx.env['LDFLAGS'] or '--static' in ctx.env['LINKFLAGS']:
+    # static in cflags, ...
+    build_features = ['cstlib']
+else:
+    # linux, darwin, android, mingw, ...
+    build_features = ['cstlib', 'cshlib']
+
+# also install static lib
+from waflib.Tools.c import cstlib
+from waflib.Tools.fc import fcstlib
+fcstlib.inst_to = cstlib.inst_to = '${LIBDIR}'
 
 for target in build_features:
     ctx(features = 'c ' + target,
-            use = ['lib_objects'],
-            uselib = uselib,
-            lib = lib,
+            use = uselib + ['lib_objects'],
             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']),
+ctx.install_files('${INCLUDEDIR}/aubio/',
+        ctx.path.ant_glob('**/*.h', excl = ['**_priv.h']),
         relative_trick=True)