ok
Direktori : /lib64/python3.6/venv/__pycache__/ |
Current File : //lib64/python3.6/venv/__pycache__/__init__.cpython-36.pyc |
3 \�H � @ s� d Z ddlZddlZddlZddlZddlZddlZeje�Z G dd� d�Z ddd�Zddd �Zed kr�dZ ye� dZ W n4 ek r� Z zede ejd � W Y ddZ[X nX eje � dS )z� Virtual environment (venv) package for Python. Based on PEP 405. Copyright (C) 2011-2014 Vinay Sajip. Licensed to the PSF under a contributor agreement. � Nc @ s� e Zd ZdZddd�Zdd� Zdd � Zd d� Zdd � Ze j dkrHdd� Zd dd�Zdd� Z dd� Zdd� Zdd� Zdd� Zdd� ZdS )!� EnvBuildera� This class exists to allow virtual environment creation to be customized. The constructor parameters determine the builder's behaviour when called upon to create a virtual environment. By default, the builder makes the system (global) site-packages dir *un*available to the created environment. If invoked using the Python -m option, the default is to use copying on Windows platforms but symlinks elsewhere. If instantiated some other way, the default is to *not* use symlinks. :param system_site_packages: If True, the system (global) site-packages dir is available to created environments. :param clear: If True, delete the contents of the environment directory if it already exists, before environment creation. :param symlinks: If True, attempt to symlink rather than copy files into virtual environment. :param upgrade: If True, upgrade an existing virtual environment. :param with_pip: If True, ensure pip is installed in the virtual environment :param prompt: Alternative terminal prefix for the environment. FNc C s( || _ || _|| _|| _|| _|| _d S )N)�system_site_packages�clear�symlinks�upgrade�with_pip�prompt)�selfr r r r r r � r �%/usr/lib64/python3.6/venv/__init__.py�__init__* s zEnvBuilder.__init__c C sx t jj|�}| j|�}| j}d| _| j|� | j|� | jrF| j|� | j s`| j |� | j|� |rtd| _| j|� dS )z� Create a virtual environment in a directory. :param env_dir: The target directory to create an environment in. FTN)�os�path�abspath�ensure_directoriesr �create_configuration�setup_pythonr � _setup_pipr � setup_scripts� post_setup)r �env_dir�contextZtrue_system_site_packagesr r r �create3 s zEnvBuilder.createc C s` xZt j|�D ]L}t jj||�}t jj|�s6t jj|�rBt j|� qt jj|�rtj |� qW d S )N) r �listdirr �join�islink�isfile�remove�isdir�shutilZrmtree)r r �fnr r r �clear_directoryM s zEnvBuilder.clear_directoryc C s� dd� }t jj|�r$| jr$| j|� tj� }||_t jj|�d |_ | j dk rT| j n|j }d| |_ ||� t j}tj dkr�d|kr�t jd }ntj}t jjt jj|��\}}||_||_||_tj dkr�d } d } t jj|dd�}n(d } d} t jj|ddtjdd� d�}t jj|| � |_}||� ||� tjdk�r|t jdk�r|tj dk�r|t jj|d�} t jj| ��s|t jd| � t jj|| � |_}| |_t jj||�|_||� |S )z� Create the directories for the environment. Returns a context object which holds paths in the environment, for use by subsequent logic. c S s@ t jj| �st j| � n$t jj| �s0t jj| �r<td| ��d S )NzUnable to create directory %r)r r �exists�makedirsr r � ValueError)�dr r r �create_if_needed] s z7EnvBuilder.ensure_directories.<locals>.create_if_needed� Nz(%s) �darwin�__PYVENV_LAUNCHER__Zwin32ZScriptsZInclude�Libz site-packages�bin�include�libzpython%d.%d� � �posix�lib64l )r r r"