openmedialibrary_platform_d.../lib/python3.5/site-packages/sitecustomize.py

34 lines
2 KiB
Python
Raw Normal View History

2016-02-06 09:36:57 +00:00
# This file is created by Homebrew and is executed on each python startup.
# Don't print from here, or else python command line scripts may fail!
# <https://github.com/Homebrew/homebrew/blob/master/share/doc/homebrew/Homebrew-and-Python.md>
import re
import os
import sys
if sys.version_info[0] != 3:
# This can only happen if the user has set the PYTHONPATH for 3.x and run Python 2.x or vice versa.
# Every Python looks at the PYTHONPATH variable and we can't fix it here in sitecustomize.py,
# because the PYTHONPATH is evaluated after the sitecustomize.py. Many modules (e.g. PyQt4) are
# built only for a specific version of Python and will fail with cryptic error messages.
# In the end this means: Don't set the PYTHONPATH permanently if you use different Python versions.
exit('Your PYTHONPATH points to a site-packages dir for Python 3.x but you are running Python ' +
str(sys.version_info[0]) + '.x!\n PYTHONPATH is currently: "' + str(os.environ['PYTHONPATH']) + '"\n' +
' You should `unset PYTHONPATH` to fix this.')
# Only do this for a brewed python:
if os.path.realpath(sys.executable).startswith('/Users/build/.local/Cellar/python3'):
# Shuffle /Library site-packages to the end of sys.path
library_site = '/Library/Python/3.5/site-packages'
library_packages = [p for p in sys.path if p.startswith(library_site)]
sys.path = [p for p in sys.path if not p.startswith(library_site)]
# .pth files have already been processed so don't use addsitedir
sys.path.extend(library_packages)
# the Cellar site-packages is a symlink to the HOMEBREW_PREFIX
# site_packages; prefer the shorter paths
long_prefix = re.compile(r'/Users/build/.local/Cellar/python3/[0-9._abrc]+/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages')
sys.path = [long_prefix.sub('/Users/build/.local/lib/python3.5/site-packages', p) for p in sys.path]
# Set the sys.executable to use the opt_prefix
sys.executable = '/Users/build/.local/opt/python3/bin/python3.5'