1414MSBuild install directory, e.g. c:\Program Files (x86)\MSBuild
1515"""
1616
17+ from __future__ import print_function
18+
19+ from gyp import string_types
20+
1721import sys
1822import re
1923
@@ -106,11 +110,11 @@ class _String(_Type):
106110 """A setting that's just a string."""
107111
108112 def ValidateMSVS (self , value ):
109- if not isinstance (value , basestring ):
113+ if not isinstance (value , string_types ):
110114 raise ValueError ('expected string; got %r' % value )
111115
112116 def ValidateMSBuild (self , value ):
113- if not isinstance (value , basestring ):
117+ if not isinstance (value , string_types ):
114118 raise ValueError ('expected string; got %r' % value )
115119
116120 def ConvertToMSBuild (self , value ):
@@ -122,11 +126,11 @@ class _StringList(_Type):
122126 """A settings that's a list of strings."""
123127
124128 def ValidateMSVS (self , value ):
125- if not isinstance (value , basestring ) and not isinstance (value , list ):
129+ if not isinstance (value , string_types ) and not isinstance (value , list ):
126130 raise ValueError ('expected string list; got %r' % value )
127131
128132 def ValidateMSBuild (self , value ):
129- if not isinstance (value , basestring ) and not isinstance (value , list ):
133+ if not isinstance (value , string_types ) and not isinstance (value , list ):
130134 raise ValueError ('expected string list; got %r' % value )
131135
132136 def ConvertToMSBuild (self , value ):
@@ -400,7 +404,7 @@ def _ValidateExclusionSetting(setting, settings, error_msg, stderr=sys.stderr):
400404
401405 if unrecognized :
402406 # We don't know this setting. Give a warning.
403- print >> stderr , error_msg
407+ print ( error_msg , file = stderr )
404408
405409
406410def FixVCMacroSlashes (s ):
@@ -433,7 +437,7 @@ def ConvertVCMacrosToMSBuild(s):
433437 '$(PlatformName)' : '$(Platform)' ,
434438 '$(SafeInputName)' : '%(Filename)' ,
435439 }
436- for old , new in replace_map .iteritems ():
440+ for old , new in replace_map .items ():
437441 s = s .replace (old , new )
438442 s = FixVCMacroSlashes (s )
439443 return s
@@ -453,17 +457,17 @@ def ConvertToMSBuildSettings(msvs_settings, stderr=sys.stderr):
453457 dictionaries of settings and their values.
454458 """
455459 msbuild_settings = {}
456- for msvs_tool_name , msvs_tool_settings in msvs_settings .iteritems ():
460+ for msvs_tool_name , msvs_tool_settings in msvs_settings .items ():
457461 if msvs_tool_name in _msvs_to_msbuild_converters :
458462 msvs_tool = _msvs_to_msbuild_converters [msvs_tool_name ]
459- for msvs_setting , msvs_value in msvs_tool_settings .iteritems ():
463+ for msvs_setting , msvs_value in msvs_tool_settings .items ():
460464 if msvs_setting in msvs_tool :
461465 # Invoke the translation function.
462466 try :
463467 msvs_tool [msvs_setting ](msvs_value , msbuild_settings )
464- except ValueError , e :
465- print >> stderr , ('Warning: while converting %s/%s to MSBuild, '
466- '%s' % (msvs_tool_name , msvs_setting , e ))
468+ except ValueError as e :
469+ print ('Warning: while converting %s/%s to MSBuild, '
470+ '%s' % (msvs_tool_name , msvs_setting , e ), file = stderr )
467471 else :
468472 _ValidateExclusionSetting (msvs_setting ,
469473 msvs_tool ,
@@ -472,8 +476,8 @@ def ConvertToMSBuildSettings(msvs_settings, stderr=sys.stderr):
472476 (msvs_tool_name , msvs_setting )),
473477 stderr )
474478 else :
475- print >> stderr , ('Warning: unrecognized tool %s while converting to '
476- 'MSBuild.' % msvs_tool_name )
479+ print ('Warning: unrecognized tool %s while converting to '
480+ 'MSBuild.' % msvs_tool_name , file = stderr )
477481 return msbuild_settings
478482
479483
@@ -513,13 +517,13 @@ def _ValidateSettings(validators, settings, stderr):
513517 for tool_name in settings :
514518 if tool_name in validators :
515519 tool_validators = validators [tool_name ]
516- for setting , value in settings [tool_name ].iteritems ():
520+ for setting , value in settings [tool_name ].items ():
517521 if setting in tool_validators :
518522 try :
519523 tool_validators [setting ](value )
520- except ValueError , e :
521- print >> stderr , ('Warning: for %s/%s, %s' %
522- ( tool_name , setting , e ) )
524+ except ValueError as e :
525+ print ('Warning: for %s/%s, %s' % ( tool_name , setting , e ),
526+ file = stderr )
523527 else :
524528 _ValidateExclusionSetting (setting ,
525529 tool_validators ,
@@ -528,7 +532,7 @@ def _ValidateSettings(validators, settings, stderr):
528532 stderr )
529533
530534 else :
531- print >> stderr , ('Warning: unrecognized tool %s' % tool_name )
535+ print ('Warning: unrecognized tool %s' % ( tool_name ), file = stderr )
532536
533537
534538# MSVS and MBuild names of the tools.
0 commit comments