python/virtualenv/virtualenv_embedded/activate_this.py

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 """By using execfile(this_file, dict(__file__=this_file)) you will
     2 activate this virtualenv environment.
     4 This can be used when you must use an existing Python interpreter, not
     5 the virtualenv bin/python
     6 """
     8 try:
     9     __file__
    10 except NameError:
    11     raise AssertionError(
    12         "You must run this like execfile('path/to/activate_this.py', dict(__file__='path/to/activate_this.py'))")
    13 import sys
    14 import os
    16 old_os_path = os.environ['PATH']
    17 os.environ['PATH'] = os.path.dirname(os.path.abspath(__file__)) + os.pathsep + old_os_path
    18 base = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
    19 if sys.platform == 'win32':
    20     site_packages = os.path.join(base, 'Lib', 'site-packages')
    21 else:
    22     site_packages = os.path.join(base, 'lib', 'python%s' % sys.version[:3], 'site-packages')
    23 prev_sys_path = list(sys.path)
    24 import site
    25 site.addsitedir(site_packages)
    26 sys.real_prefix = sys.prefix
    27 sys.prefix = base
    28 # Move the added items to the front of the path:
    29 new_sys_path = []
    30 for item in list(sys.path):
    31     if item not in prev_sys_path:
    32         new_sys_path.append(item)
    33         sys.path.remove(item)
    34 sys.path[:0] = new_sys_path

mercurial