Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(96)

Side by Side Diff: third_party/scons/scons-local/SCons/compat/__init__.py

Issue 17024: Update to SCons 1.2.0. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 # 1 #
2 # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 The SCons Foundat ion 2 # Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 The SCons Foundat ion
3 # 3 #
4 # Permission is hereby granted, free of charge, to any person obtaining 4 # Permission is hereby granted, free of charge, to any person obtaining
5 # a copy of this software and associated documentation files (the 5 # a copy of this software and associated documentation files (the
6 # "Software"), to deal in the Software without restriction, including 6 # "Software"), to deal in the Software without restriction, including
7 # without limitation the rights to use, copy, modify, merge, publish, 7 # without limitation the rights to use, copy, modify, merge, publish,
8 # distribute, sublicense, and/or sell copies of the Software, and to 8 # distribute, sublicense, and/or sell copies of the Software, and to
9 # permit persons to whom the Software is furnished to do so, subject to 9 # permit persons to whom the Software is furnished to do so, subject to
10 # the following conditions: 10 # the following conditions:
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
53 53
54 We name the compatibility modules with an initial '_scons_' (for example, 54 We name the compatibility modules with an initial '_scons_' (for example,
55 _scons_subprocess.py is our compatibility module for subprocess) so 55 _scons_subprocess.py is our compatibility module for subprocess) so
56 that we can still try to import the real module name and fall back to 56 that we can still try to import the real module name and fall back to
57 our compatibility module if we get an ImportError. The import_as() 57 our compatibility module if we get an ImportError. The import_as()
58 function defined below loads the module as the "real" name (without the 58 function defined below loads the module as the "real" name (without the
59 '_scons'), after which all of the "import {module}" statements in the 59 '_scons'), after which all of the "import {module}" statements in the
60 rest of our code will find our pre-loaded compatibility module. 60 rest of our code will find our pre-loaded compatibility module.
61 """ 61 """
62 62
63 __revision__ = "src/engine/SCons/compat/__init__.py 3603 2008/10/10 05:46:45 sco ns" 63 __revision__ = "src/engine/SCons/compat/__init__.py 3842 2008/12/20 22:59:52 sco ns"
64 64
65 def import_as(module, name): 65 def import_as(module, name):
66 """ 66 """
67 Imports the specified module (from our local directory) as the 67 Imports the specified module (from our local directory) as the
68 specified name. 68 specified name.
69 """ 69 """
70 import imp 70 import imp
71 import os.path 71 import os.path
72 dir = os.path.split(__file__)[0] 72 dir = os.path.split(__file__)[0]
73 file, filename, suffix_mode_type = imp.find_module(module, [dir]) 73 file, filename, suffix_mode_type = imp.find_module(module, [dir])
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
148 except ImportError: 148 except ImportError:
149 # Pre-2.3 Python has no textwrap module. 149 # Pre-2.3 Python has no textwrap module.
150 import_as('_scons_textwrap', 'textwrap') 150 import_as('_scons_textwrap', 'textwrap')
151 151
152 try: 152 try:
153 import optparse 153 import optparse
154 except ImportError: 154 except ImportError:
155 # Pre-2.3 Python has no optparse module. 155 # Pre-2.3 Python has no optparse module.
156 import_as('_scons_optparse', 'optparse') 156 import_as('_scons_optparse', 'optparse')
157 157
158 import os
159 try:
160 os.devnull
161 except AttributeError:
162 # Pre-2.4 Python has no os.devnull attribute
163 import sys
164 _names = sys.builtin_module_names
165 if 'posix' in _names:
166 os.devnull = '/dev/null'
167 elif 'nt' in _names:
168 os.devnull = 'nul'
169 os.path.devnull = os.devnull
170
158 import shlex 171 import shlex
159 try: 172 try:
160 shlex.split 173 shlex.split
161 except AttributeError: 174 except AttributeError:
162 # Pre-2.3 Python has no shlex.split() function. 175 # Pre-2.3 Python has no shlex.split() function.
163 # 176 #
164 # The full white-space splitting semantics of shlex.split() are 177 # The full white-space splitting semantics of shlex.split() are
165 # complicated to reproduce by hand, so just use a compatibility 178 # complicated to reproduce by hand, so just use a compatibility
166 # version of the shlex module cribbed from Python 2.5 with some 179 # version of the shlex module cribbed from Python 2.5 with some
167 # minor modifications for older Python versions. 180 # minor modifications for older Python versions.
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
222 import string 235 import string
223 version_string = string.split(sys.version)[0] 236 version_string = string.split(sys.version)[0]
224 version_ints = map(int, string.split(version_string, '.')) 237 version_ints = map(int, string.split(version_string, '.'))
225 sys.version_info = tuple(version_ints + ['final', 0]) 238 sys.version_info = tuple(version_ints + ['final', 0])
226 239
227 try: 240 try:
228 import UserString 241 import UserString
229 except ImportError: 242 except ImportError:
230 # Pre-1.6 Python has no UserString module. 243 # Pre-1.6 Python has no UserString module.
231 import_as('_scons_UserString', 'UserString') 244 import_as('_scons_UserString', 'UserString')
OLDNEW
« no previous file with comments | « third_party/scons/scons-local/SCons/__init__.py ('k') | third_party/scons/scons-local/SCons/compat/_scons_UserString.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698