OLD | NEW |
1 # Copyright 2011 the V8 project authors. All rights reserved. | 1 # Copyright 2011 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 1048 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1059 else: | 1059 else: |
1060 # Option has a fixed default | 1060 # Option has a fixed default |
1061 default = option.get('default') | 1061 default = option.get('default') |
1062 help = '%s (%s)' % (option.get('help'), ", ".join(option['values'])) | 1062 help = '%s (%s)' % (option.get('help'), ", ".join(option['values'])) |
1063 result.Add(name, help, default) | 1063 result.Add(name, help, default) |
1064 | 1064 |
1065 | 1065 |
1066 def GetOptions(): | 1066 def GetOptions(): |
1067 result = Options() | 1067 result = Options() |
1068 result.Add('mode', 'compilation mode (debug, release)', 'release') | 1068 result.Add('mode', 'compilation mode (debug, release)', 'release') |
1069 result.Add('sample', 'build sample (shell, process, lineprocessor)', '') | 1069 result.Add('sample', 'build sample (shell, process, lineprocessor, gdb-integra
tion)', '') |
1070 result.Add('cache', 'directory to use for scons build cache', '') | 1070 result.Add('cache', 'directory to use for scons build cache', '') |
1071 result.Add('env', 'override environment settings (NAME0:value0,NAME1:value1,..
.)', '') | 1071 result.Add('env', 'override environment settings (NAME0:value0,NAME1:value1,..
.)', '') |
1072 result.Add('importenv', 'import environment settings (NAME0,NAME1,...)', '') | 1072 result.Add('importenv', 'import environment settings (NAME0,NAME1,...)', '') |
1073 AddOptions(PLATFORM_OPTIONS, result) | 1073 AddOptions(PLATFORM_OPTIONS, result) |
1074 AddOptions(SIMPLE_OPTIONS, result) | 1074 AddOptions(SIMPLE_OPTIONS, result) |
1075 return result | 1075 return result |
1076 | 1076 |
1077 | 1077 |
1078 def GetTools(opts): | 1078 def GetTools(opts): |
1079 env = Environment(options=opts) | 1079 env = Environment(options=opts) |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1139 for s in SplitList(str): | 1139 for s in SplitList(str): |
1140 if not s in values: | 1140 if not s in values: |
1141 Abort("Illegal value for option %s '%s'." % (option, s)) | 1141 Abort("Illegal value for option %s '%s'." % (option, s)) |
1142 return False | 1142 return False |
1143 return True | 1143 return True |
1144 | 1144 |
1145 | 1145 |
1146 def VerifyOptions(env): | 1146 def VerifyOptions(env): |
1147 if not IsLegal(env, 'mode', ['debug', 'release']): | 1147 if not IsLegal(env, 'mode', ['debug', 'release']): |
1148 return False | 1148 return False |
1149 if not IsLegal(env, 'sample', ["shell", "process", "lineprocessor"]): | 1149 if not IsLegal(env, 'sample', ["shell", "process", "lineprocessor", "gdb-integ
ration"]): |
1150 return False | 1150 return False |
1151 if not IsLegal(env, 'regexp', ["native", "interpreted"]): | 1151 if not IsLegal(env, 'regexp', ["native", "interpreted"]): |
1152 return False | 1152 return False |
1153 if env['os'] == 'win32' and env['library'] == 'shared' and env['prof'] == 'on'
: | 1153 if env['os'] == 'win32' and env['library'] == 'shared' and env['prof'] == 'on'
: |
1154 Abort("Profiling on windows only supported for static library.") | 1154 Abort("Profiling on windows only supported for static library.") |
1155 if env['gdbjit'] == 'on' and (env['os'] != 'linux' or (env['arch'] != 'ia32' a
nd env['arch'] != 'x64' and env['arch'] != 'arm')): | 1155 if env['gdbjit'] == 'on' and ((env['os'] != 'linux' and env['os'] != 'macos')
or (env['arch'] != 'ia32' and env['arch'] != 'x64' and env['arch'] != 'arm')): |
1156 Abort("GDBJIT interface is supported only for Intel-compatible (ia32 or x64)
Linux target.") | 1156 Abort("GDBJIT interface is supported only for Intel-compatible (ia32 or x64)
Linux/OSX target.") |
1157 if env['os'] == 'win32' and env['soname'] == 'on': | 1157 if env['os'] == 'win32' and env['soname'] == 'on': |
1158 Abort("Shared Object soname not applicable for Windows.") | 1158 Abort("Shared Object soname not applicable for Windows.") |
1159 if env['soname'] == 'on' and env['library'] == 'static': | 1159 if env['soname'] == 'on' and env['library'] == 'static': |
1160 Abort("Shared Object soname not applicable for static library.") | 1160 Abort("Shared Object soname not applicable for static library.") |
1161 if env['os'] != 'win32' and env['pgo'] != 'off': | 1161 if env['os'] != 'win32' and env['pgo'] != 'off': |
1162 Abort("Profile guided optimization only supported on Windows.") | 1162 Abort("Profile guided optimization only supported on Windows.") |
1163 if env['cache'] and not os.path.isdir(env['cache']): | 1163 if env['cache'] and not os.path.isdir(env['cache']): |
1164 Abort("The specified cache directory does not exist.") | 1164 Abort("The specified cache directory does not exist.") |
1165 if not (env['arch'] == 'arm' or env['simulator'] == 'arm') and ('unalignedacce
sses' in ARGUMENTS): | 1165 if not (env['arch'] == 'arm' or env['simulator'] == 'arm') and ('unalignedacce
sses' in ARGUMENTS): |
1166 print env['arch'] | 1166 print env['arch'] |
(...skipping 308 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1475 # version of scons. Also, there's a bug in some revisions that | 1475 # version of scons. Also, there's a bug in some revisions that |
1476 # doesn't allow this flag to be set, so we swallow any exceptions. | 1476 # doesn't allow this flag to be set, so we swallow any exceptions. |
1477 # Lovely. | 1477 # Lovely. |
1478 try: | 1478 try: |
1479 SetOption('warn', 'no-deprecated') | 1479 SetOption('warn', 'no-deprecated') |
1480 except: | 1480 except: |
1481 pass | 1481 pass |
1482 | 1482 |
1483 | 1483 |
1484 Build() | 1484 Build() |
OLD | NEW |