Changeset 986131d for wscript


Ignore:
Timestamp:
Jul 29, 2017, 5:55:35 PM (7 years ago)
Author:
Eduard Müller <mueller.eduard@googlemail.com>
Branches:
feature/autosink, feature/cnn, feature/cnn_org, feature/constantq, feature/crepe, feature/crepe_org, feature/pitchshift, feature/pydocstrings, feature/timestretch, fix/ffmpeg5, master
Children:
7100895
Parents:
34ce715
Message:

Intel IPP support for aubio

See emuell/aubio/ intel_ipp2 for details please

File:
1 edited

Legend:

Unmodified
Added
Removed
  • wscript

    r34ce715 r986131d  
    5151            help_str = 'compile with fftw3 instead of ooura',
    5252            help_disable_str = 'do not compile with fftw3')
     53    add_option_enable_disable(ctx, 'intelipp', default = None,
     54            help_str = 'use Intel IPP libraries (auto)',
     55            help_disable_str = 'do not use Intel IPP libraries')
    5356    add_option_enable_disable(ctx, 'complex', default = False,
    5457            help_str ='compile with C99 complex',
     
    156159        # configure warnings
    157160        ctx.env.CFLAGS += ['/W4', '/D_CRT_SECURE_NO_WARNINGS']
     161        # ignore "possible loss of data" warnings
     162        ctx.env.CFLAGS += ['/wd4305', '/wd4244', '/wd4245', '/wd4267']
     163        # ignore "unreferenced formal parameter" warnings
     164        ctx.env.CFLAGS += ['/wd4100']
    158165        # set optimization level and runtime libs
    159166        if (ctx.options.build_type == "release"):
     
    286293    else:
    287294        ctx.msg('Checking if complex.h is enabled', 'no')
    288 
     295   
     296    # check for Intel IPP
     297    if (ctx.options.enable_intelipp != False):
     298        if (ctx.check(header_name=['ippcore.h', 'ippvm.h', 'ipps.h'], mandatory = False) and
     299            ctx.check(lib=['ippcore', 'ippvm', 'ipps'], uselib_store='INTEL_IPP', mandatory = False)):
     300            ctx.msg('Checking if Intel IPP is available', 'yes')
     301            ctx.define('HAVE_INTEL_IPP', 1)
     302            if ctx.env.CC_NAME == 'msvc':
     303                # force linking multi-threaded static IPP libraries on Windows with msvc
     304                ctx.define('_IPP_SEQUENTIAL_STATIC', 1)
     305        else:
     306            ctx.msg('Checking if Intel IPP is available', 'no')
     307   
    289308    # check for fftw3
    290309    if (ctx.options.enable_fftw3 != False or ctx.options.enable_fftw3f != False):
     
    310329        ctx.define('HAVE_FFTW3', 1)
    311330
    312     # fftw not enabled, use vDSP or ooura
     331    # fftw not enabled, use vDSP, intelIPP or ooura
    313332    if 'HAVE_FFTW3F' in ctx.env.define_key:
    314333        ctx.msg('Checking for FFT implementation', 'fftw3f')
     
    317336    elif 'HAVE_ACCELERATE' in ctx.env.define_key:
    318337        ctx.msg('Checking for FFT implementation', 'vDSP')
     338    elif 'HAVE_INTEL_IPP' in ctx.env.define_key:
     339        ctx.msg('Checking for FFT implementation', 'Intel IPP')
    319340    else:
    320341        ctx.msg('Checking for FFT implementation', 'ooura')
Note: See TracChangeset for help on using the changeset viewer.