123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- #!/usr/bin/env python
- # Copyright (c) 2009 Google Inc. All rights reserved.
- # Use of this source code is governed by a BSD-style license that can be
- # found in the LICENSE file.
- import os
- import sys
- import subprocess
- PY3 = bytes != str
- def IsCygwin():
- # Function copied from pylib/gyp/common.py
- try:
- out = subprocess.Popen(
- "uname", stdout=subprocess.PIPE, stderr=subprocess.STDOUT
- )
- stdout, stderr = out.communicate()
- if PY3:
- stdout = stdout.decode("utf-8")
- return "CYGWIN" in str(stdout)
- except Exception:
- return False
- def UnixifyPath(path):
- try:
- if not IsCygwin():
- return path
- out = subprocess.Popen(
- ["cygpath", "-u", path], stdout=subprocess.PIPE, stderr=subprocess.STDOUT
- )
- stdout, _ = out.communicate()
- if PY3:
- stdout = stdout.decode("utf-8")
- return str(stdout)
- except Exception:
- return path
- # Make sure we're using the version of pylib in this repo, not one installed
- # elsewhere on the system. Also convert to Unix style path on Cygwin systems,
- # else the 'gyp' library will not be found
- path = UnixifyPath(sys.argv[0])
- sys.path.insert(0, os.path.join(os.path.dirname(path), "pylib"))
- import gyp # noqa: E402
- if __name__ == "__main__":
- sys.exit(gyp.script_main())
|