| OLD | NEW | 
|    1 # Copyright 2008 the V8 project authors. All rights reserved. |    1 # Copyright 2008 the V8 project authors. All rights reserved. | 
|    2 # Redistribution and use in source and binary forms, with or without |    2 # Redistribution and use in source and binary forms, with or without | 
|    3 # modification, are permitted provided that the following conditions are |    3 # modification, are permitted provided that the following conditions are | 
|    4 # met: |    4 # met: | 
|    5 # |    5 # | 
|    6 #     * Redistributions of source code must retain the above copyright |    6 #     * Redistributions of source code must retain the above copyright | 
|    7 #       notice, this list of conditions and the following disclaimer. |    7 #       notice, this list of conditions and the following disclaimer. | 
|    8 #     * Redistributions in binary form must reproduce the above |    8 #     * Redistributions in binary form must reproduce the above | 
|    9 #       copyright notice, this list of conditions and the following |    9 #       copyright notice, this list of conditions and the following | 
|   10 #       disclaimer in the documentation and/or other materials provided |   10 #       disclaimer in the documentation and/or other materials provided | 
| (...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   90 math.js |   90 math.js | 
|   91 messages.js |   91 messages.js | 
|   92 apinatives.js |   92 apinatives.js | 
|   93 debug-delay.js |   93 debug-delay.js | 
|   94 mirror-delay.js |   94 mirror-delay.js | 
|   95 date-delay.js |   95 date-delay.js | 
|   96 regexp-delay.js |   96 regexp-delay.js | 
|   97 '''.split() |   97 '''.split() | 
|   98  |   98  | 
|   99  |   99  | 
|  100 JSCRE_FILES = ''' |  | 
|  101 pcre_compile.cpp |  | 
|  102 pcre_exec.cpp |  | 
|  103 pcre_tables.cpp |  | 
|  104 pcre_ucp_searchfuncs.cpp |  | 
|  105 pcre_xclass.cpp |  | 
|  106 '''.split() |  | 
|  107  |  | 
|  108  |  | 
|  109 def Abort(message): |  100 def Abort(message): | 
|  110   print message |  101   print message | 
|  111   sys.exit(1) |  102   sys.exit(1) | 
|  112  |  103  | 
|  113  |  104  | 
|  114 def ConfigureObjectFiles(): |  105 def ConfigureObjectFiles(): | 
|  115   env = Environment() |  106   env = Environment() | 
|  116   env.Replace(**context.flags['v8']) |  107   env.Replace(**context.flags['v8']) | 
|  117   context.ApplyEnvOverrides(env) |  108   context.ApplyEnvOverrides(env) | 
|  118   env['BUILDERS']['JS2C'] = Builder(action=js2c.JS2C) |  109   env['BUILDERS']['JS2C'] = Builder(action=js2c.JS2C) | 
|  119   env['BUILDERS']['Snapshot'] = Builder(action='$SOURCE $TARGET --logfile "$LOGF
     ILE"') |  110   env['BUILDERS']['Snapshot'] = Builder(action='$SOURCE $TARGET --logfile "$LOGF
     ILE"') | 
|  120  |  111  | 
|  121   # Build the standard platform-independent source files. |  112   # Build the standard platform-independent source files. | 
|  122   source_files = context.GetRelevantSources(SOURCES) |  113   source_files = context.GetRelevantSources(SOURCES) | 
|  123  |  114  | 
|  124   d8_files = context.GetRelevantSources(D8_FILES) |  115   d8_files = context.GetRelevantSources(D8_FILES) | 
|  125   d8_js = env.JS2C('d8-js.cc', 'd8.js', TYPE='D8') |  116   d8_js = env.JS2C('d8-js.cc', 'd8.js', TYPE='D8') | 
|  126   d8_js_obj = context.ConfigureObject(env, d8_js, CPPPATH=['.']) |  117   d8_js_obj = context.ConfigureObject(env, d8_js, CPPPATH=['.']) | 
|  127   d8_objs = [context.ConfigureObject(env, [d8_files]), d8_js_obj] |  118   d8_objs = [context.ConfigureObject(env, [d8_files]), d8_js_obj] | 
|  128  |  119  | 
|  129   # Combine the JavaScript library files into a single C++ file and |  120   # Combine the JavaScript library files into a single C++ file and | 
|  130   # compile it. |  121   # compile it. | 
|  131   library_files = [s for s in LIBRARY_FILES] |  122   library_files = [s for s in LIBRARY_FILES] | 
|  132   library_files.append('macros.py') |  123   library_files.append('macros.py') | 
|  133   libraries_src, libraries_empty_src = env.JS2C(['libraries.cc', 'libraries-empt
     y.cc'], library_files, TYPE='CORE') |  124   libraries_src, libraries_empty_src = env.JS2C(['libraries.cc', 'libraries-empt
     y.cc'], library_files, TYPE='CORE') | 
|  134   libraries_obj = context.ConfigureObject(env, libraries_src, CPPPATH=['.']) |  125   libraries_obj = context.ConfigureObject(env, libraries_src, CPPPATH=['.']) | 
|  135  |  126  | 
|  136   # Build JSCRE. |  | 
|  137   jscre_env = env.Copy() |  | 
|  138   jscre_env.Replace(**context.flags['jscre']) |  | 
|  139   jscre_files = [join('third_party', 'jscre', s) for s in JSCRE_FILES] |  | 
|  140   jscre_obj = context.ConfigureObject(jscre_env, jscre_files) |  | 
|  141  |  | 
|  142   # Build dtoa. |  127   # Build dtoa. | 
|  143   dtoa_env = env.Copy() |  128   dtoa_env = env.Copy() | 
|  144   dtoa_env.Replace(**context.flags['dtoa']) |  129   dtoa_env.Replace(**context.flags['dtoa']) | 
|  145   dtoa_files = ['dtoa-config.c'] |  130   dtoa_files = ['dtoa-config.c'] | 
|  146   dtoa_obj = context.ConfigureObject(dtoa_env, dtoa_files) |  131   dtoa_obj = context.ConfigureObject(dtoa_env, dtoa_files) | 
|  147  |  132  | 
|  148   source_objs = context.ConfigureObject(env, source_files) |  133   source_objs = context.ConfigureObject(env, source_files) | 
|  149   non_snapshot_files = [jscre_obj, dtoa_obj, source_objs] |  134   non_snapshot_files = [dtoa_obj, source_objs] | 
|  150  |  135  | 
|  151   # Create snapshot if necessary. |  136   # Create snapshot if necessary. | 
|  152   empty_snapshot_obj = context.ConfigureObject(env, 'snapshot-empty.cc') |  137   empty_snapshot_obj = context.ConfigureObject(env, 'snapshot-empty.cc') | 
|  153   mksnapshot_env = env.Copy() |  138   mksnapshot_env = env.Copy() | 
|  154   mksnapshot_env.Replace(**context.flags['mksnapshot']) |  139   mksnapshot_env.Replace(**context.flags['mksnapshot']) | 
|  155   mksnapshot_src = 'mksnapshot.cc' |  140   mksnapshot_src = 'mksnapshot.cc' | 
|  156   mksnapshot = mksnapshot_env.Program('mksnapshot', [mksnapshot_src, libraries_o
     bj, non_snapshot_files, empty_snapshot_obj], PDB='mksnapshot.exe.pdb') |  141   mksnapshot = mksnapshot_env.Program('mksnapshot', [mksnapshot_src, libraries_o
     bj, non_snapshot_files, empty_snapshot_obj], PDB='mksnapshot.exe.pdb') | 
|  157   if context.use_snapshot: |  142   if context.use_snapshot: | 
|  158     if context.build_snapshot: |  143     if context.build_snapshot: | 
|  159       snapshot_cc = env.Snapshot('snapshot.cc', mksnapshot, LOGFILE=File('snapsh
     ot.log').abspath) |  144       snapshot_cc = env.Snapshot('snapshot.cc', mksnapshot, LOGFILE=File('snapsh
     ot.log').abspath) | 
|  160     else: |  145     else: | 
|  161       snapshot_cc = Command('snapshot.cc', [], []) |  146       snapshot_cc = Command('snapshot.cc', [], []) | 
|  162     snapshot_obj = context.ConfigureObject(env, snapshot_cc, CPPPATH=['.']) |  147     snapshot_obj = context.ConfigureObject(env, snapshot_cc, CPPPATH=['.']) | 
|  163     libraries_obj = context.ConfigureObject(env, libraries_empty_src, CPPPATH=['
     .']) |  148     libraries_obj = context.ConfigureObject(env, libraries_empty_src, CPPPATH=['
     .']) | 
|  164   else: |  149   else: | 
|  165     snapshot_obj = empty_snapshot_obj |  150     snapshot_obj = empty_snapshot_obj | 
|  166   library_objs = [non_snapshot_files, libraries_obj, snapshot_obj] |  151   library_objs = [non_snapshot_files, libraries_obj, snapshot_obj] | 
|  167   return (library_objs, d8_objs, [mksnapshot]) |  152   return (library_objs, d8_objs, [mksnapshot]) | 
|  168  |  153  | 
|  169  |  154  | 
|  170 (library_objs, d8_objs, mksnapshot) = ConfigureObjectFiles() |  155 (library_objs, d8_objs, mksnapshot) = ConfigureObjectFiles() | 
|  171 Return('library_objs d8_objs mksnapshot') |  156 Return('library_objs d8_objs mksnapshot') | 
| OLD | NEW |