view nodejs/wscript @ 1359:5313bbfafa67

Fix issue of chain of reference for opacity and matrix
author Thinker K.F. Li <thinker@codemud.net>
date Wed, 16 Feb 2011 15:07:44 +0800
parents 613a7caa9bd6
children
line wrap: on
line source

srcdir = '.'
blddir = 'build'
VERSION = '0.0.1'

def set_options(opt):
    opt.tool_options('compiler_cxx')
    opt.tool_options('compiler_cc')
    pass

def configure(conf):
    import Options
    import os
    
    conf.check_tool('compiler_cxx')
    conf.check_tool('compiler_cc')
    conf.check_tool('node_addon')
    conf.env.SRCDIR = Options.options.srcdir
    conf.env.TOP_BUILDDIR = os.environ['TOP_BUILDDIR']
    pass

def build(conf):
    import Utils
    
    for m in 'observer coord mbfly_njs shapes paints'.split():
        conf(rule='m4 -I ${SRCDIR}/../tools gen_v8_binding.m4 ${SRC} > ${TGT}',
             source=m+'.m4', target=m+'-inc.h',
             name=m+'-inc', shell=True, always=True, before=['cxx'])
        pass

    obj = conf.new_task_gen('cxx', 'shlib', 'node_addon')
    obj.target = 'mbfly'
    obj.source = 'font.cc image_ldr.cc'
    obj.add_objects = 'njs_mb_supp.o observer.o coord.o mbfly_njs.o ' + \
        'shapes.o paints.o'
    obj.lib = 'mbfly'

    for src in 'observer.cc coord.cc mbfly_njs.cc shapes.cc paints.cc'.split():
        obj = conf.new_task_gen('cxx', 'shlib', 'node_addon')
        obj.target = src[:-3] + '.o'
        obj.source = src
        obj.includes = '.'
        pass
    
    obj = conf.new_task_gen('cc', 'shlib', 'node_addon')
    obj.target = 'njs_mb_supp.o'
    obj.source = 'njs_mb_supp.c'
    pass