Commit 279def6a authored by Domen Kožar's avatar Domen Kožar

merge

parents a1b779e1 d1d05306
...@@ -8,6 +8,12 @@ Change History ...@@ -8,6 +8,12 @@ Change History
in current directory during installation in current directory during installation
[Domen Kožar] [Domen Kožar]
- Windows fix: use cli-64.exe/cli.exe depending on 64/32 bit
and try cli.exe if cli-64.exe is not found,
fixing 9c6be7ac6d218f09e33725e07dccc4af74d8cf97
- Windows fix: `buildout init` was broken, re.sub does not like a single backslash
- fixed all builds on travis-ci - fixed all builds on travis-ci
[Domen Kožar] [Domen Kožar]
......
...@@ -30,6 +30,7 @@ import setuptools.archive_util ...@@ -30,6 +30,7 @@ import setuptools.archive_util
import setuptools.command.setopt import setuptools.command.setopt
import setuptools.package_index import setuptools.package_index
import shutil import shutil
import struct
import subprocess import subprocess
import sys import sys
import tempfile import tempfile
...@@ -51,6 +52,7 @@ logger = logging.getLogger('zc.buildout.easy_install') ...@@ -51,6 +52,7 @@ logger = logging.getLogger('zc.buildout.easy_install')
url_match = re.compile('[a-z0-9+.-]+://').match url_match = re.compile('[a-z0-9+.-]+://').match
is_win32 = sys.platform == 'win32' is_win32 = sys.platform == 'win32'
is_64 = struct.calcsize("P") == 8
is_jython = sys.platform.startswith('java') is_jython = sys.platform.startswith('java')
is_distribute = ( is_distribute = (
pkg_resources.Requirement.parse('setuptools').key=='distribute') pkg_resources.Requirement.parse('setuptools').key=='distribute')
...@@ -1460,6 +1462,14 @@ def _write_script(full_name, contents, logged_type): ...@@ -1460,6 +1462,14 @@ def _write_script(full_name, contents, logged_type):
script_name += '-script.py' script_name += '-script.py'
# Generate exe file and give the script a magic name. # Generate exe file and give the script a magic name.
exe = full_name + '.exe' exe = full_name + '.exe'
if is_64:
resource = 'cli-64.exe'
else:
resource = 'cli.exe'
try:
new_data = pkg_resources.resource_string('setuptools', resource)
except IOError:
# setuptools has just cli.exe, no matter if 64/32 bit
new_data = pkg_resources.resource_string('setuptools', 'cli.exe') new_data = pkg_resources.resource_string('setuptools', 'cli.exe')
if not os.path.exists(exe) or (open(exe, 'rb').read() != new_data): if not os.path.exists(exe) or (open(exe, 'rb').read() != new_data):
# Only write it if it's different. # Only write it if it's different.
......
...@@ -267,10 +267,10 @@ caught (displaying a warning) and the rest of the buildout update process ...@@ -267,10 +267,10 @@ caught (displaying a warning) and the rest of the buildout update process
should continue. should continue.
>>> version = sys.version_info[0:2] >>> version = sys.version_info[0:2]
>>> egg = new_releases + '/zc.buildout-99.99-py%s.%s.egg ' % version >>> egg = new_releases + '/zc.buildout-99.99-py%s.%s.egg' % version
>>> copy_egg = new_releases + '/zc.buildout-1000-py%s.%s.egg ' % version >>> copy_egg = new_releases + '/zc.buildout-1000-py%s.%s.egg' % version
>>> system('cp ' + egg + copy_egg) >>> import shutil
'' >>> shutil.copy(egg, copy_egg)
Create a broken egg Create a broken egg
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment