environment/lib/python2.7/site-packages/distribute-0.6.31-py2.7.egg/setuptools/sandbox.py
def run_setup(setup_script, args):
    """Run a distutils setup script, sandboxed in its directory"""
    old_dir = os.getcwd()
    save_argv = sys.argv[:]
    save_path = sys.path[:]
    setup_dir = os.path.abspath(os.path.dirname(setup_script))
    temp_dir = os.path.join(setup_dir,'temp')
    if not os.path.isdir(temp_dir): os.makedirs(temp_dir)
    save_tmp = tempfile.tempdir
    save_modules = sys.modules.copy()
    pr_state = pkg_resources.__getstate__()
    try:
        tempfile.tempdir = temp_dir
        os.chdir(setup_dir)
        try:
            sys.argv[:] = [setup_script]+list(args)
            sys.path.insert(0, setup_dir)
            DirectorySandbox(setup_dir).run(
                lambda: execfile(
                    "setup.py",
                    {'__file__':setup_script, '__name__':'__main__'}
                )
            )
        except SystemExit, v:
            if v.args and v.args[0]:
                raise
            # Normal exit, just return
    finally:
        pkg_resources.__setstate__(pr_state)
        sys.modules.update(save_modules)
        # remove any modules imported within the sandbox
        del_modules = [
            mod_name for mod_name in sys.modules
            if mod_name not in save_modules
            # exclude any encodings modules. See #285
            and not mod_name.startswith('encodings.')
        ]
        map(sys.modules.__delitem__, del_modules)
        os.chdir(old_dir)
        sys.path[:] = save_path
        sys.argv[:] = save_argv
        tempfile.tempdir = save_tmp
def run_setup(setup_script, args):
    """Run a distutils setup script, sandboxed in its directory"""
    old_dir = os.getcwd()
    save_argv = sys.argv[:]
    save_path = sys.path[:]
    setup_dir = os.path.abspath(os.path.dirname(setup_script))
    temp_dir = os.path.join(setup_dir,'temp')
    if not os.path.isdir(temp_dir): os.makedirs(temp_dir)
    save_tmp = tempfile.tempdir
    save_modules = sys.modules.copy()
    pr_state = pkg_resources.__getstate__()
    try:
        tempfile.tempdir = temp_dir
        os.chdir(setup_dir)
        try:
            sys.argv[:] = [setup_script]+list(args)
            sys.path.insert(0, setup_dir)
            DirectorySandbox(setup_dir).run(
                lambda: execfile(
                    "setup.py",
                    {'__file__':setup_script, '__name__':'__main__'}
                )
            )
        except SystemExit, v:
            if v.args and v.args[0]:
                raise
            # Normal exit, just return
    finally:
        pkg_resources.__setstate__(pr_state)
        sys.modules.update(save_modules)
        # remove any modules imported within the sandbox
        del_modules = [
            mod_name for mod_name in sys.modules
            if mod_name not in save_modules
            # exclude any encodings modules. See #285
            and not mod_name.startswith('encodings.')
        ]
        map(sys.modules.__delitem__, del_modules)
        os.chdir(old_dir)
        sys.path[:] = save_path
        sys.argv[:] = save_argv
        tempfile.tempdir = save_tmp
def run_setup ( setup_script , args ) : old_dir = os . getcwd ( ) save_argv = sys . argv [ : ] save_path = sys . path [ : ] setup_dir = os . path . abspath ( os . path . dirname ( setup_script ) ) temp_dir = os . path . join ( setup_dir , 'temp' ) if not os . path . isdir ( temp_dir ) : os . makedirs ( temp_dir ) save_tmp = tempfile . tempdir save_modules = sys . modules . copy ( ) pr_state = pkg_resources . __getstate__ ( ) try : tempfile . tempdir = temp_dir os . chdir ( setup_dir ) try : sys . argv [ : ] = [ setup_script ] + list ( args ) sys . path . insert ( 0 , setup_dir ) DirectorySandbox ( setup_dir ) . run ( lambda : execfile ( "setup.py" , { '__file__' : setup_script , '__name__' : '__main__' } ) ) except SystemExit , v : if v . args and v . args [ 0 ] : raise # Normal exit, just return finally : pkg_resources . __setstate__ ( pr_state ) sys . modules . update ( save_modules ) # remove any modules imported within the sandbox del_modules = [ mod_name for mod_name in sys . modules if mod_name not in save_modules # exclude any encodings modules. See #285 and not mod_name . startswith ( 'encodings.' ) ] map ( sys . modules . __delitem__ , del_modules ) os . chdir ( old_dir ) sys . path [ : ] = save_path sys . argv [ : ] = save_argv tempfile . tempdir = save_tmp
Run a distutils setup script, sandboxed in its directory
Run a distutils setup script sandboxed in its directory