mirror of
https://github.com/python/cpython.git
synced 2025-07-24 03:35:53 +00:00
Fix distutils tests on Windows (#12678).
- First, support.fixup_build_ext (already used to set proper library_dirs value under Unix shared builds) gains the ability to correctly set the debug attribute under Windows debug builds. - Second, the filename for the extension module gets a _d suffix under debug builds. - Third, the test code properly puts our customized build_ext object into an internal dictionary to make sure that the install command will later use our object instead of re-creating one. That’s the downside of using low-level APIs in our test code: we have to manually push knobs and turn handles that would otherwise be handled behind the scenes. Thanks to Nadeem for the testing.
This commit is contained in:
parent
7a084105a0
commit
175eb995d3
3 changed files with 30 additions and 23 deletions
|
@ -47,10 +47,6 @@ class BuildExtTestCase(TempdirManager,
|
|||
dist.package_dir = self.tmp_dir
|
||||
cmd = build_ext(dist)
|
||||
fixup_build_ext(cmd)
|
||||
if os.name == "nt":
|
||||
# On Windows, we must build a debug version iff running
|
||||
# a debug build of Python
|
||||
cmd.debug = sys.executable.endswith("_d.exe")
|
||||
cmd.build_lib = self.tmp_dir
|
||||
cmd.build_temp = self.tmp_dir
|
||||
|
||||
|
@ -305,9 +301,6 @@ class BuildExtTestCase(TempdirManager,
|
|||
cmd.ensure_finalized()
|
||||
self.assertEqual(len(cmd.get_outputs()), 1)
|
||||
|
||||
if os.name == "nt":
|
||||
cmd.debug = sys.executable.endswith("_d.exe")
|
||||
|
||||
cmd.build_lib = os.path.join(self.tmp_dir, 'build')
|
||||
cmd.build_temp = os.path.join(self.tmp_dir, 'tempt')
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue