[Python-checkins] r80967 - in python/trunk: Lib/site.py Lib/sysconfig.py Misc/NEWS (original) (raw)
ronald.oussoren python-checkins at python.org
Sat May 8 12:29:06 CEST 2010
- Previous message: [Python-checkins] r80966 - in python/trunk: configure configure.in
- Next message: [Python-checkins] r80968 - in python/branches/py3k: Lib/site.py Lib/sysconfig.py Misc/NEWS
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Author: ronald.oussoren Date: Sat May 8 12:29:06 2010 New Revision: 80967
Log: Issue #8084: ensure that the --user directory conforms to platforms standars on OSX when using a python framework.
Modified: python/trunk/Lib/site.py python/trunk/Lib/sysconfig.py python/trunk/Misc/NEWS
Modified: python/trunk/Lib/site.py
--- python/trunk/Lib/site.py (original) +++ python/trunk/Lib/site.py Sat May 8 12:29:06 2010 @@ -243,6 +243,13 @@
from sysconfig import get_path
import os
- if sys.platform == 'darwin':
from sysconfig import get_config_var
if get_config_var('PYTHONFRAMEWORK'):
USER_SITE = get_path('purelib', 'osx_framework_user')
return USER_SITE
USER_SITE = get_path('purelib', '%s_user' % os.name) return USER_SITE
@@ -289,13 +296,11 @@ if sys.platform == "darwin": # for framework builds only we add the standard Apple # locations.
if 'Python.framework' in prefix:
sitepackages.append(
os.path.expanduser(
os.path.join("~", "Library", "Python",
sys.version[:3], "site-packages")))
from sysconfig import get_config_var
framework = get_config_var("PYTHONFRAMEWORK")
if framework and "/%s.framework/"%(framework,) in prefix: sitepackages.append(
os.path.join("/Library", "Python",
return sitepackagesos.path.join("/Library", framework, sys.version[:3], "site-packages"))
Modified: python/trunk/Lib/sysconfig.py
--- python/trunk/Lib/sysconfig.py (original) +++ python/trunk/Lib/sysconfig.py Sat May 8 12:29:06 2010 @@ -73,6 +73,15 @@ 'scripts': '{userbase}/bin', 'data' : '{userbase}', },
- 'osx_framework_user': {
'stdlib': '{userbase}/lib/python',
'platstdlib': '{userbase}/lib/python',
'purelib': '{userbase}/lib/python/site-packages',
'platlib': '{userbase}/lib/python/site-packages',
'include': '{userbase}/include',
'scripts': '{userbase}/bin',
'data' : '{userbase}',
}},
_SCHEME_KEYS = ('stdlib', 'platstdlib', 'purelib', 'platlib', 'include', @@ -157,6 +166,12 @@ base = os.environ.get("APPDATA") or "~" return env_base if env_base else joinuser(base, "Python")
- if sys.platform == "darwin":
framework = get_config_var("PYTHONFRAMEWORK")
if framework:
return joinuser("~", "Library", framework, "%d.%d"%(
sys.version_info[:2]))
return env_base if env_base else joinuser("~", ".local")
@@ -398,7 +413,6 @@ _CONFIG_VARS['py_version_nodot'] = _PY_VERSION[0] + _PY_VERSION[2] _CONFIG_VARS['base'] = _PREFIX _CONFIG_VARS['platbase'] = _EXEC_PREFIX
_CONFIG_VARS['userbase'] = _getuserbase() _CONFIG_VARS['projectbase'] = _PROJECT_BASE if os.name in ('nt', 'os2'):
@@ -406,6 +420,11 @@ if os.name == 'posix': _init_posix(_CONFIG_VARS)
# Setting 'userbase' is done below the call to the
# init function to enable using 'get_config_var' in
# the init-function.
_CONFIG_VARS['userbase'] = _getuserbase()
if 'srcdir' not in _CONFIG_VARS: _CONFIG_VARS['srcdir'] = _PROJECT_BASE
Modified: python/trunk/Misc/NEWS
--- python/trunk/Misc/NEWS (original)
+++ python/trunk/Misc/NEWS Sat May 8 12:29:06 2010
@@ -38,6 +38,12 @@
- Issue #8404: Fixed set operations on dictionary views.
+- Issue #8084: PEP 370 now conforms to system conventions for framework
+ builds on MacOS X. That is, "python setup.py install --user" will install
+ into "/Library/Python/2.7" instead of "/.local".
+
+
+
Library
- Previous message: [Python-checkins] r80966 - in python/trunk: configure configure.in
- Next message: [Python-checkins] r80968 - in python/branches/py3k: Lib/site.py Lib/sysconfig.py Misc/NEWS
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]