Beispiel #1
0
def buildThreeJs(includesFileList=None):

    jsonConfig = JsonConfig(r'build-config\three.json')
        
    concatinatedOutputFile = jsonConfig.getConcatinatedOutputFile()
    minifiedOutputFile = jsonConfig.getMinifiedOutputFile()
    
    if (includesFileList == None):
        includesFileList = jsonConfig.getFileList('includes')


    printFileList('Concatenating files for Three.Js', includesFileList)
    
    concatinateFiles(includesFileList, concatinatedOutputFile);

    externsStr = jsonConfig.getCommandClause('externs' , '--externs ')

    cmd = 'java -jar %s  --version --language_in=ECMASCRIPT5 --warning_level=VERBOSE --jscomp_off=globalThis %s ' + \
    '--jscomp_off=checkTypes --jscomp_off=internetExplorerChecks --js %s ' + \
    '--js_output_file %s'

    cmd = cmd % (CLOSURE_COMPILER_FILE, externsStr, concatinatedOutputFile, minifiedOutputFile)

    print 'compiling using command: '+ cmd

    p = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
    out, error = p.communicate()

    print 'return code: '+ str(p.returncode)

    if p.returncode == 0:
        print 'SUCCESS: ' + out
    else:
        print 'FAILED: ' + out
        msg =  'Compiling %s failed %s' % (minifiedOutputFile, error)
        print msg
        raise Exception(msg)