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 656 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
667 'values': ['arm', 'thumb2', 'none'], | 667 'values': ['arm', 'thumb2', 'none'], |
668 'default': 'none', | 668 'default': 'none', |
669 'help': 'generate thumb2 instructions instead of arm instructions (default)' | 669 'help': 'generate thumb2 instructions instead of arm instructions (default)' |
670 } | 670 } |
671 } | 671 } |
672 | 672 |
673 | 673 |
674 def GetOptions(): | 674 def GetOptions(): |
675 result = Options() | 675 result = Options() |
676 result.Add('mode', 'compilation mode (debug, release)', 'release') | 676 result.Add('mode', 'compilation mode (debug, release)', 'release') |
677 result.Add('sample', 'build sample (shell, process)', '') | 677 result.Add('sample', 'build sample (shell, process, lineprocessor)', '') |
678 result.Add('env', 'override environment settings (NAME0:value0,NAME1:value1,..
.)', '') | 678 result.Add('env', 'override environment settings (NAME0:value0,NAME1:value1,..
.)', '') |
679 result.Add('importenv', 'import environment settings (NAME0,NAME1,...)', '') | 679 result.Add('importenv', 'import environment settings (NAME0,NAME1,...)', '') |
680 for (name, option) in SIMPLE_OPTIONS.iteritems(): | 680 for (name, option) in SIMPLE_OPTIONS.iteritems(): |
681 help = '%s (%s)' % (name, ", ".join(option['values'])) | 681 help = '%s (%s)' % (name, ", ".join(option['values'])) |
682 result.Add(name, help, option.get('default')) | 682 result.Add(name, help, option.get('default')) |
683 return result | 683 return result |
684 | 684 |
685 | 685 |
686 def GetVersionComponents(): | 686 def GetVersionComponents(): |
687 MAJOR_VERSION_PATTERN = re.compile(r"#define\s+MAJOR_VERSION\s+(.*)") | 687 MAJOR_VERSION_PATTERN = re.compile(r"#define\s+MAJOR_VERSION\s+(.*)") |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
735 for s in SplitList(str): | 735 for s in SplitList(str): |
736 if not s in values: | 736 if not s in values: |
737 Abort("Illegal value for option %s '%s'." % (option, s)) | 737 Abort("Illegal value for option %s '%s'." % (option, s)) |
738 return False | 738 return False |
739 return True | 739 return True |
740 | 740 |
741 | 741 |
742 def VerifyOptions(env): | 742 def VerifyOptions(env): |
743 if not IsLegal(env, 'mode', ['debug', 'release']): | 743 if not IsLegal(env, 'mode', ['debug', 'release']): |
744 return False | 744 return False |
745 if not IsLegal(env, 'sample', ["shell", "process"]): | 745 if not IsLegal(env, 'sample', ["shell", "process", "lineprocessor"]): |
746 return False | 746 return False |
747 if not IsLegal(env, 'regexp', ["native", "interpreted"]): | 747 if not IsLegal(env, 'regexp', ["native", "interpreted"]): |
748 return False | 748 return False |
749 if env['os'] == 'win32' and env['library'] == 'shared' and env['prof'] == 'on'
: | 749 if env['os'] == 'win32' and env['library'] == 'shared' and env['prof'] == 'on'
: |
750 Abort("Profiling on windows only supported for static library.") | 750 Abort("Profiling on windows only supported for static library.") |
751 if env['prof'] == 'oprofile' and env['os'] != 'linux': | 751 if env['prof'] == 'oprofile' and env['os'] != 'linux': |
752 Abort("OProfile is only supported on Linux.") | 752 Abort("OProfile is only supported on Linux.") |
753 if env['os'] == 'win32' and env['soname'] == 'on': | 753 if env['os'] == 'win32' and env['soname'] == 'on': |
754 Abort("Shared Object soname not applicable for Windows.") | 754 Abort("Shared Object soname not applicable for Windows.") |
755 if env['soname'] == 'on' and env['library'] == 'static': | 755 if env['soname'] == 'on' and env['library'] == 'static': |
(...skipping 259 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1015 # version of scons. Also, there's a bug in some revisions that | 1015 # version of scons. Also, there's a bug in some revisions that |
1016 # doesn't allow this flag to be set, so we swallow any exceptions. | 1016 # doesn't allow this flag to be set, so we swallow any exceptions. |
1017 # Lovely. | 1017 # Lovely. |
1018 try: | 1018 try: |
1019 SetOption('warn', 'no-deprecated') | 1019 SetOption('warn', 'no-deprecated') |
1020 except: | 1020 except: |
1021 pass | 1021 pass |
1022 | 1022 |
1023 | 1023 |
1024 Build() | 1024 Build() |
OLD | NEW |