diff options
Diffstat (limited to 'engine/SCons/Tool/suncxx.py')
| -rw-r--r-- | engine/SCons/Tool/suncxx.py | 20 | 
1 files changed, 13 insertions, 7 deletions
diff --git a/engine/SCons/Tool/suncxx.py b/engine/SCons/Tool/suncxx.py index 4de5465..b0e343b 100644 --- a/engine/SCons/Tool/suncxx.py +++ b/engine/SCons/Tool/suncxx.py @@ -9,7 +9,7 @@ selection method.  """  # -# Copyright (c) 2001 - 2017 The SCons Foundation +# Copyright (c) 2001 - 2019 The SCons Foundation  #  # Permission is hereby granted, free of charge, to any person obtaining  # a copy of this software and associated documentation files (the @@ -31,7 +31,7 @@ selection method.  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  # -__revision__ = "src/engine/SCons/Tool/suncxx.py 74b2c53bc42290e911b334a6b44f187da698a668 2017/11/14 13:16:53 bdbaddog" +__revision__ = "src/engine/SCons/Tool/suncxx.py 72ae09dc35ac2626f8ff711d8c4b30b6138e08e3 2019-08-08 14:50:06 bdeegan"  import SCons @@ -52,11 +52,17 @@ def get_package_info(package_name, pkginfo, pkgchk):          version = None          pathname = None          try: -            sadm_contents = open('/var/sadm/install/contents', 'r').read() +            from subprocess import DEVNULL # py3k +        except ImportError: +            DEVNULL = open(os.devnull, 'wb') + +        try: +            with open('/var/sadm/install/contents', 'r') as f: +                sadm_contents = f.read()          except EnvironmentError:              pass          else: -            sadm_re = re.compile('^(\S*/bin/CC)(=\S*)? %s$' % package_name, re.M) +            sadm_re = re.compile(r'^(\S*/bin/CC)(=\S*)? %s$' % package_name, re.M)              sadm_match = sadm_re.search(sadm_contents)              if sadm_match:                  pathname = os.path.dirname(sadm_match.group(1)) @@ -64,12 +70,12 @@ def get_package_info(package_name, pkginfo, pkgchk):          try:              p = subprocess.Popen([pkginfo, '-l', package_name],                                   stdout=subprocess.PIPE, -                                 stderr=open('/dev/null', 'w')) +                                 stderr=DEVNULL)          except EnvironmentError:              pass          else:              pkginfo_contents = p.communicate()[0] -            version_re = re.compile('^ *VERSION:\s*(.*)$', re.M) +            version_re = re.compile(r'^ *VERSION:\s*(.*)$', re.M)              version_match = version_re.search(pkginfo_contents)              if version_match:                  version = version_match.group(1) @@ -78,7 +84,7 @@ def get_package_info(package_name, pkginfo, pkgchk):              try:                  p = subprocess.Popen([pkgchk, '-l', package_name],                                       stdout=subprocess.PIPE, -                                     stderr=open('/dev/null', 'w')) +                                     stderr=DEVNULL)              except EnvironmentError:                  pass              else:  | 
