1*8975f5c5SAndroid Build Coastguard Worker# Copyright 2013 The Chromium Authors 2*8975f5c5SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be 3*8975f5c5SAndroid Build Coastguard Worker# found in the LICENSE file. 4*8975f5c5SAndroid Build Coastguard Worker 5*8975f5c5SAndroid Build Coastguard Worker 6*8975f5c5SAndroid Build Coastguard Workerimport sys 7*8975f5c5SAndroid Build Coastguard Worker 8*8975f5c5SAndroid Build Coastguard Worker 9*8975f5c5SAndroid Build Coastguard Workerdef IsWindows(): 10*8975f5c5SAndroid Build Coastguard Worker return sys.platform in ['win32', 'cygwin'] 11*8975f5c5SAndroid Build Coastguard Worker 12*8975f5c5SAndroid Build Coastguard Worker 13*8975f5c5SAndroid Build Coastguard Workerdef IsLinux(): 14*8975f5c5SAndroid Build Coastguard Worker return sys.platform.startswith(('linux', 'freebsd', 'netbsd', 'openbsd')) 15*8975f5c5SAndroid Build Coastguard Worker 16*8975f5c5SAndroid Build Coastguard Worker 17*8975f5c5SAndroid Build Coastguard Workerdef IsMac(): 18*8975f5c5SAndroid Build Coastguard Worker return sys.platform == 'darwin' 19*8975f5c5SAndroid Build Coastguard Worker 20*8975f5c5SAndroid Build Coastguard Worker 21*8975f5c5SAndroid Build Coastguard Workerdef host_os(): 22*8975f5c5SAndroid Build Coastguard Worker """ 23*8975f5c5SAndroid Build Coastguard Worker Returns a string representing the host_os of the current system. 24*8975f5c5SAndroid Build Coastguard Worker Possible values: 'win', 'mac', 'linux', 'unknown'. 25*8975f5c5SAndroid Build Coastguard Worker """ 26*8975f5c5SAndroid Build Coastguard Worker if IsWindows(): 27*8975f5c5SAndroid Build Coastguard Worker return 'win' 28*8975f5c5SAndroid Build Coastguard Worker elif IsLinux(): 29*8975f5c5SAndroid Build Coastguard Worker return 'linux' 30*8975f5c5SAndroid Build Coastguard Worker elif IsMac(): 31*8975f5c5SAndroid Build Coastguard Worker return 'mac' 32*8975f5c5SAndroid Build Coastguard Worker else: 33*8975f5c5SAndroid Build Coastguard Worker return 'unknown' 34