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

Side by Side Diff: third_party/scons/scons-local/SCons/Tool/g++.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 """SCons.Tool.g++ 1 """SCons.Tool.g++
2 2
3 Tool-specific initialization for g++. 3 Tool-specific initialization for g++.
4 4
5 There normally shouldn't be any need to import this module directly. 5 There normally shouldn't be any need to import this module directly.
6 It will usually be imported through the generic SCons.Tool.Tool() 6 It will usually be imported through the generic SCons.Tool.Tool()
7 selection method. 7 selection method.
8 8
9 """ 9 """
10 10
(...skipping 13 matching lines...) Expand all
24 # 24 #
25 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY 25 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
26 # KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE 26 # KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
27 # WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 27 # WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
28 # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 28 # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
29 # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 29 # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
30 # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 30 # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
31 # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 31 # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
32 # 32 #
33 33
34 __revision__ = "src/engine/SCons/Tool/g++.py 3603 2008/10/10 05:46:45 scons" 34 __revision__ = "src/engine/SCons/Tool/g++.py 3842 2008/12/20 22:59:52 scons"
35 35
36 import os.path 36 import os.path
37 import re 37 import re
38 import subprocess 38 import subprocess
39 39
40 import SCons.Tool 40 import SCons.Tool
41 import SCons.Util 41 import SCons.Util
42 42
43 cplusplus = __import__('c++', globals(), locals(), []) 43 cplusplus = __import__('c++', globals(), locals(), [])
44 44
(...skipping 13 matching lines...) Expand all
58 env['STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME'] = 1 58 env['STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME'] = 1
59 env['SHOBJSUFFIX'] = '$OBJSUFFIX' 59 env['SHOBJSUFFIX'] = '$OBJSUFFIX'
60 elif env['PLATFORM'] == 'hpux': 60 elif env['PLATFORM'] == 'hpux':
61 env['SHOBJSUFFIX'] = '.pic.o' 61 env['SHOBJSUFFIX'] = '.pic.o'
62 elif env['PLATFORM'] == 'sunos': 62 elif env['PLATFORM'] == 'sunos':
63 env['SHOBJSUFFIX'] = '.pic.o' 63 env['SHOBJSUFFIX'] = '.pic.o'
64 # determine compiler version 64 # determine compiler version
65 if env['CXX']: 65 if env['CXX']:
66 #pipe = SCons.Action._subproc(env, [env['CXX'], '-dumpversion'], 66 #pipe = SCons.Action._subproc(env, [env['CXX'], '-dumpversion'],
67 pipe = SCons.Action._subproc(env, [env['CXX'], '--version'], 67 pipe = SCons.Action._subproc(env, [env['CXX'], '--version'],
68 stderr = subprocess.PIPE, 68 stdin = 'devnull',
69 stderr = 'devnull',
69 stdout = subprocess.PIPE) 70 stdout = subprocess.PIPE)
70 if pipe.wait() != 0: return 71 if pipe.wait() != 0: return
71 # -dumpversion was added in GCC 3.0. As long as we're supporting 72 # -dumpversion was added in GCC 3.0. As long as we're supporting
72 # GCC versions older than that, we should use --version and a 73 # GCC versions older than that, we should use --version and a
73 # regular expression. 74 # regular expression.
74 #line = pipe.stdout.read().strip() 75 #line = pipe.stdout.read().strip()
75 #if line: 76 #if line:
76 # env['CXXVERSION'] = line 77 # env['CXXVERSION'] = line
77 line = pipe.stdout.readline() 78 line = pipe.stdout.readline()
78 match = re.search(r'[0-9]+(\.[0-9]+)+', line) 79 match = re.search(r'[0-9]+(\.[0-9]+)+', line)
79 if match: 80 if match:
80 env['CXXVERSION'] = match.group(0) 81 env['CXXVERSION'] = match.group(0)
81 82
82 def exists(env): 83 def exists(env):
83 return env.Detect(compilers) 84 return env.Detect(compilers)
OLDNEW
« no previous file with comments | « third_party/scons/scons-local/SCons/Tool/fortran.py ('k') | third_party/scons/scons-local/SCons/Tool/g77.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698