Merged revisions 69598 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/trunk

........
  r69598 | tarek.ziade | 2009-02-14 00:00:43 +0100 (Sat, 14 Feb 2009) | 1 line

  Fixed #4524: distutils build_script command failed with --with-suffix=3
........
This commit is contained in:
Tarek Ziadé 2009-02-13 23:02:44 +00:00
parent b71b711b31
commit 19fe0c8cec
3 changed files with 33 additions and 2 deletions

View File

@ -104,8 +104,8 @@ class build_scripts (Command):
outf.write("#!%s%s\n" %
(os.path.join(
sysconfig.get_config_var("BINDIR"),
"python" + sysconfig.get_config_var("VERSION")
+ sysconfig.get_config_var("EXE")),
"python%s%s" % (sysconfig.get_config_var("VERSION"),
sysconfig.get_config_var("EXE"))),
post_interp))
outf.writelines(f.readlines())
outf.close()

View File

@ -5,6 +5,7 @@ import unittest
from distutils.command.build_scripts import build_scripts
from distutils.core import Distribution
from distutils import sysconfig
from distutils.tests import support
@ -73,6 +74,33 @@ class BuildScriptsTestCase(support.TempdirManager,
f.write(text)
f.close()
def test_version_int(self):
source = self.mkdtemp()
target = self.mkdtemp()
expected = self.write_sample_scripts(source)
cmd = self.get_build_scripts_cmd(target,
[os.path.join(source, fn)
for fn in expected])
cmd.finalize_options()
# http://bugs.python.org/issue4524
#
# On linux-g++-32 with command line `./configure --enable-ipv6
# --with-suffix=3`, python is compiled okay but the build scripts
# failed when writing the name of the executable
old = sysconfig._config_vars.get('VERSION')
sysconfig._config_vars['VERSION'] = 4
try:
cmd.run()
finally:
if old is not None:
sysconfig._config_vars['VERSION'] = old
built = os.listdir(target)
for name in expected:
self.assert_(name in built)
def test_suite():
return unittest.makeSuite(BuildScriptsTestCase)

View File

@ -80,6 +80,9 @@ Core and Builtins
Library
-------
- Issue #4524: distutils build_script command failed with --with-suffix=3.
Initial patch by Amaury Forgeot d'Arc.
- Issue #4998: The memory saving effect of __slots__ had been lost on Fractions
which inherited from numbers.py which did not have __slots__ defined. The
numbers hierarchy now has its own __slots__ declarations.