Changeset 1459

Show
Ignore:
Timestamp:
06/24/08 00:18:34 (3 months ago)
Author:
thijs
Message:

Updating ez_setup for jython compatibility

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • pyamf/trunk/ez_setup.py

    r1052 r1459  
    1515""" 
    1616import sys 
    17 DEFAULT_VERSION = "0.6c7" 
     17DEFAULT_VERSION = "0.6c8" 
    1818DEFAULT_URL     = "http://pypi.python.org/packages/%s/s/setuptools/" % sys.version[:3] 
    1919 
     
    4646    'setuptools-0.6c7-py2.4.egg': '5a8f954807d46a0fb67cf1f26c55a82e', 
    4747    'setuptools-0.6c7-py2.5.egg': '45d2ad28f9750e7434111fde831e8372', 
     48    'setuptools-0.6c8-py2.3.egg': '50759d29b349db8cfd807ba8303f1902', 
     49    'setuptools-0.6c8-py2.4.egg': 'cba38d74f7d483c06e9daa6070cce6de', 
     50    'setuptools-0.6c8-py2.5.egg': '1721747ee329dc150590a58b3e1ac95b', 
    4851} 
    4952 
     
    7881    an attempt to abort the calling script. 
    7982    """ 
    80     try: 
    81         import setuptools 
    82         if setuptools.__version__ == '0.0.1': 
    83             print >>sys.stderr, ( 
    84             "You have an obsolete version of setuptools installed.  Please\n" 
    85             "remove it from your system entirely before rerunning this script." 
    86             ) 
    87             sys.exit(2) 
    88     except ImportError: 
     83    was_imported = 'pkg_resources' in sys.modules or 'setuptools' in sys.modules 
     84    def do_download(): 
    8985        egg = download_setuptools(version, download_base, to_dir, download_delay) 
    9086        sys.path.insert(0, egg) 
    9187        import setuptools; setuptools.bootstrap_install_from = egg 
    92  
    93     import pkg_resources 
    94     try: 
    95         pkg_resources.require("setuptools>="+version) 
    96  
     88    try: 
     89        import pkg_resources 
     90    except ImportError: 
     91        return do_download()        
     92    try: 
     93        pkg_resources.require("setuptools>="+version); return 
    9794    except pkg_resources.VersionConflict, e: 
    98         # XXX could we install in a subprocess here? 
    99         print >>sys.stderr, ( 
     95        if was_imported: 
     96            print >>sys.stderr, ( 
    10097            "The required version of setuptools (>=%s) is not available, and\n" 
    10198            "can't be installed while this script is running. Please install\n" 
    102             " a more recent version first.\n\n(Currently using %r)" 
    103         ) % (version, e.args[0]) 
    104         sys.exit(2) 
     99            " a more recent version first, using 'easy_install -U setuptools'." 
     100            "\n\n(Currently using %r)" 
     101            ) % (version, e.args[0]) 
     102            sys.exit(2) 
     103        else: 
     104            del pkg_resources, sys.modules['pkg_resources']    # reload ok 
     105            return do_download() 
     106    except pkg_resources.DistributionNotFound: 
     107        return do_download() 
    105108 
    106109def download_setuptools( 
     
    151154    return os.path.realpath(saveto) 
    152155 
     156 
     157 
     158 
     159 
     160 
     161 
     162 
     163 
     164 
     165 
     166 
     167 
     168 
     169 
     170 
     171 
     172 
     173 
     174 
     175 
     176 
     177 
     178 
     179 
     180 
     181 
     182 
     183 
     184 
     185 
     186 
     187 
     188 
     189 
     190 
    153191def main(argv, version=DEFAULT_VERSION): 
    154192    """Install or upgrade setuptools and EasyInstall""" 
    155  
    156193    try: 
    157194        import setuptools 
     
    168205    else: 
    169206        if setuptools.__version__ == '0.0.1': 
    170             # tell the user to uninstall obsolete version 
    171             use_setuptools(version) 
     207            print >>sys.stderr, ( 
     208            "You have an obsolete version of setuptools installed.  Please\n" 
     209            "remove it from your system entirely before rerunning this script." 
     210            ) 
     211            sys.exit(2) 
    172212 
    173213    req = "setuptools>="+version 
     
    190230            print '(Run "ez_setup.py -U setuptools" to reinstall or upgrade.)' 
    191231 
    192  
    193  
    194232def update_md5(filenames): 
    195233    """Update our built-in md5 registry"""