cxx/test/libcxx/test/target_info.py
Jonathan Roelofs c3068a136a Appease buildbots
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@229114 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-13 15:34:01 +00:00

56 lines
1.3 KiB
Python

import locale
import platform
import sys
class TargetInfo(object):
def platform(self):
raise NotImplementedError
def system(self):
raise NotImplementedError
def platform_ver(self):
raise NotImplementedError
def platform_name(self):
raise NotImplementedError
def supports_locale(self, loc):
raise NotImplementedError
class LocalTI(TargetInfo):
def platform(self):
platform_name = sys.platform.lower().strip()
# Strip the '2' from linux2.
if platform_name.startswith('linux'):
platform_name = 'linux'
return platform_name
def system(self):
return platform.system()
def platform_name(self):
if self.platform() == 'linux':
name, _, _ = platform.linux_distribution()
name = name.lower().strip()
if name:
return name
return None
def platform_ver(self):
if self.platform() == 'linux':
_, ver, _ = platform.linux_distribution()
ver = ver.lower().strip()
if ver:
return ver
return None
def supports_locale(self, loc):
try:
locale.setlocale(locale.LC_ALL, loc)
return True
except locale.Error:
return False