[pypy-svn] r75586 - in pypy/trunk/lib-python/modified-2.5.2: . distutils distutils/command

antocuni at codespeak.net antocuni at codespeak.net
Fri Jun 25 15:08:47 CEST 2010


Author: antocuni
Date: Fri Jun 25 15:08:45 2010
New Revision: 75586

Modified:
   pypy/trunk/lib-python/modified-2.5.2/distutils/cmd.py
   pypy/trunk/lib-python/modified-2.5.2/distutils/command/install.py
   pypy/trunk/lib-python/modified-2.5.2/distutils/sysconfig_pypy.py
   pypy/trunk/lib-python/modified-2.5.2/site.py
Log:
fix distutils for the new directory layout. setuptools and easy_install work again now


Modified: pypy/trunk/lib-python/modified-2.5.2/distutils/cmd.py
==============================================================================
--- pypy/trunk/lib-python/modified-2.5.2/distutils/cmd.py	(original)
+++ pypy/trunk/lib-python/modified-2.5.2/distutils/cmd.py	Fri Jun 25 15:08:45 2010
@@ -17,9 +17,9 @@
 def _easy_install_get_site_dirs():
     # return a list of 'site' dirs for easy_install
     from pkg_resources import normalize_path
+    from distutils.sysconfig import get_python_lib
     sitedirs = filter(None,os.environ.get('PYTHONPATH','').split(os.pathsep))
-    pypylib = 'pypy%d.%d' % sys.pypy_version_info[:2]
-    sitedirs.append(os.path.join(sys.prefix, 'lib', pypylib, 'site-packages'))
+    sitedirs.append(get_python_lib(standard_lib=False))
     sitedirs = map(normalize_path, sitedirs)
     return sitedirs
 

Modified: pypy/trunk/lib-python/modified-2.5.2/distutils/command/install.py
==============================================================================
--- pypy/trunk/lib-python/modified-2.5.2/distutils/command/install.py	(original)
+++ pypy/trunk/lib-python/modified-2.5.2/distutils/command/install.py	Fri Jun 25 15:08:45 2010
@@ -67,8 +67,8 @@
         'data'   : '$base',
         },
     'pypy': {
-        'purelib': '$base/lib/pypy$pypy_version_short/site-packages',
-        'platlib': '$base/lib/pypy$pypy_version_short/site-packages',
+        'purelib': '$base/site-packages',
+        'platlib': '$base/site-packages',
         'headers': '$base/include',
         'scripts': '$base/bin',
         'data'   : '$base',

Modified: pypy/trunk/lib-python/modified-2.5.2/distutils/sysconfig_pypy.py
==============================================================================
--- pypy/trunk/lib-python/modified-2.5.2/distutils/sysconfig_pypy.py	(original)
+++ pypy/trunk/lib-python/modified-2.5.2/distutils/sysconfig_pypy.py	Fri Jun 25 15:08:45 2010
@@ -13,7 +13,7 @@
 
 def get_python_inc(plat_specific=0, prefix=None):
     from os.path import join as j
-    cand = j(sys.pypy_prefix, 'include')
+    cand = j(sys.prefix, 'include')
     if os.path.exists(cand):
         return cand
     if plat_specific:
@@ -47,8 +47,11 @@
             "calls to get_python_lib(standard_lib=1) cannot succeed")
     if prefix is None:
         prefix = PREFIX
-    pypylib = 'pypy%d.%d' % sys.pypy_version_info[:2]
-    return os.path.join(prefix, 'lib', pypylib, 'site-packages')
+    pypylib = os.path.join(prefix, 'lib', 'pypy%d.%d' % sys.pypy_version_info[:2])
+    if os.path.exists(pypylib):
+        return os.path.join(pypylib, 'site-packages')
+    else:
+        return os.path.join(prefix, 'site-packages')
 
 
 _config_vars = None

Modified: pypy/trunk/lib-python/modified-2.5.2/site.py
==============================================================================
--- pypy/trunk/lib-python/modified-2.5.2/site.py	(original)
+++ pypy/trunk/lib-python/modified-2.5.2/site.py	Fri Jun 25 15:08:45 2010
@@ -176,8 +176,8 @@
 def addsitepackages(known_paths):
     """Add site-packages to sys.path, in a PyPy-specific way."""
     if hasattr(sys, 'pypy_version_info'):
-        pypylib = 'pypy%d.%d' % sys.pypy_version_info[:2]
-        sitedir = os.path.join(sys.prefix, 'lib', pypylib, 'site-packages')
+        from distutils.sysconfig import get_python_lib
+        sitedir = get_python_lib(standard_lib=False)
         if os.path.isdir(sitedir):
             addsitedir(sitedir, known_paths)
     return None



More information about the Pypy-commit mailing list