aboutsummaryrefslogtreecommitdiffstats
path: root/setuptools/bootstrap.py
diff options
context:
space:
mode:
Diffstat (limited to 'setuptools/bootstrap.py')
-rw-r--r--setuptools/bootstrap.py27
1 files changed, 27 insertions, 0 deletions
diff --git a/setuptools/bootstrap.py b/setuptools/bootstrap.py
new file mode 100644
index 00000000..0cd95778
--- /dev/null
+++ b/setuptools/bootstrap.py
@@ -0,0 +1,27 @@
+"""
+When setuptools is installed in a clean environment, it doesn't have its
+dependencies, so it can't run to install its dependencies. This module
+checks those dependencies and if one or more are missing, it uses vendored
+versions.
+"""
+
+import os
+import sys
+import glob
+
+def ensure_deps():
+ """
+ Detect if dependencies are installed and if not, use vendored versions.
+ """
+ try:
+ __import__('six')
+ except ImportError:
+ use_vendor_deps()
+
+def use_vendor_deps():
+ """
+ Use vendored versions
+ """
+ here = os.path.dirname(__file__)
+ eggs = glob.glob(here + '/_vendor/*.egg')
+ sys.path.extend(eggs)