diff options
author | Jason R. Coombs <jaraco@jaraco.com> | 2016-02-27 09:11:47 -0500 |
---|---|---|
committer | Jason R. Coombs <jaraco@jaraco.com> | 2016-02-27 09:11:47 -0500 |
commit | 1edd380c867c08eedf5e396654b4ec3bed23e25d (patch) | |
tree | 9d566dc72381d6c77e1398c3f8098a6c482bb298 /pavement.py | |
parent | 52cd445ed59b3ca3a31cb2426cbf90db04fbf41d (diff) | |
download | external_python_setuptools-1edd380c867c08eedf5e396654b4ec3bed23e25d.tar.gz external_python_setuptools-1edd380c867c08eedf5e396654b4ec3bed23e25d.tar.bz2 external_python_setuptools-1edd380c867c08eedf5e396654b4ec3bed23e25d.zip |
Replace makefile with pavement file, granting portability on OS X and Windows. Fixes #505.
Diffstat (limited to 'pavement.py')
-rw-r--r-- | pavement.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/pavement.py b/pavement.py new file mode 100644 index 00000000..8d7574e2 --- /dev/null +++ b/pavement.py @@ -0,0 +1,28 @@ +import re + +from paver.easy import task, path as Path +import pip + +def remove_all(paths): + for path in paths: + path.rmtree() if path.isdir() else path.remove() + +@task +def update_vendored(): + vendor = Path('pkg_resources/_vendor') + remove_all(vendor.glob('packaging*')) + remove_all(vendor.glob('six*')) + remove_all(vendor.glob('pyparsing*')) + install_args = [ + 'install', + '-r', str(vendor/'vendored.txt'), + '-t', str(vendor), + ] + pip.main(install_args) + packaging = vendor / 'packaging' + for file in packaging.glob('*.py'): + text = file.text() + text = re.sub(r' (pyparsing|six)', r' pkg_resources.extern.\1', text) + file.write_text(text) + remove_all(vendor.glob('*.dist-info')) + remove_all(vendor.glob('*.egg-info')) |