Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • wscript

    r873646d r342eb13e  
    103103
    104104def configure(ctx):
     105    from waflib import Options
     106    ctx.load('compiler_c')
     107    ctx.load('waf_unit_test')
     108    ctx.load('gnu_dirs')
     109
    105110    target_platform = sys.platform
    106111    if ctx.options.target_platform:
    107112        target_platform = ctx.options.target_platform
    108113
    109     from waflib import Options
    110114
    111115    if target_platform=='emscripten':
    112         ctx.load('c_emscripten')
    113     else:
    114         ctx.load('compiler_c')
    115 
    116     ctx.load('waf_unit_test')
    117     ctx.load('gnu_dirs')
    118 
     116        # need to force spaces between flag -o and path
     117        # inspired from :
     118        # https://github.com/waf-project/waf/blob/master/waflib/extras/c_emscripten.py (#1885)
     119        # (OSX /emscripten 1.37.9)
     120        ctx.env.CC_TGT_F            = ['-c', '-o', '']
     121        ctx.env.CCLNK_TGT_F         = ['-o', '']
    119122    # check for common headers
    120123    ctx.check(header_name='stdlib.h')
     
    149152    else:
    150153        # enable debug symbols
    151         ctx.env.CFLAGS += ['/Z7']
    152         # /FS flag available in msvc >= 12 (2013)
    153         if 'MSVC_VERSION' in ctx.env and ctx.env.MSVC_VERSION >= 12:
    154             ctx.env.CFLAGS += ['/FS']
     154        ctx.env.CFLAGS += ['/Z7', '/FS']
    155155        ctx.env.LINKFLAGS += ['/DEBUG', '/INCREMENTAL:NO']
    156156        # configure warnings
     
    227227
    228228    if target_platform == 'emscripten':
     229        import os.path
     230        ctx.env.CFLAGS += [ '-I' + os.path.join(os.environ['EMSCRIPTEN'], 'system', 'include') ]
     231       
    229232        if ctx.options.build_type == "debug":
    230233            ctx.env.cshlib_PATTERN = '%s.js'
     
    247250        from python.lib.gen_external import get_c_declarations, get_cpp_objects_from_c_declarations, get_all_func_names_from_lib, generate_lib_from_c_declarations
    248251        c_decls = get_c_declarations(usedouble=False)  # emscripten can't use double
    249         objects = list(get_cpp_objects_from_c_declarations(c_decls))
     252        objects = get_cpp_objects_from_c_declarations(c_decls)
    250253        # ensure that aubio structs are exported
    251254        objects += ['fvec_t', 'cvec_t', 'fmat_t']
     
    444447    # add sub directories
    445448    if bld.env['DEST_OS'] not in ['ios', 'iosimulator', 'android']:
    446         if bld.env['DEST_OS']=='emscripten' and not bld.options.testcmd:
    447             bld.options.testcmd = 'node %s'
    448449        bld.recurse('examples')
    449450        bld.recurse('tests')
Note: See TracChangeset for help on using the changeset viewer.