mirror of
https://github.com/python/cpython.git
synced 2025-09-26 10:19:53 +00:00
Issue #28783: Embedded and nuget packages incorrect reference missing bdist_wininst command.
This commit is contained in:
parent
dab0584738
commit
f0888cd734
2 changed files with 47 additions and 3 deletions
|
@ -7,6 +7,7 @@ import stat
|
|||
import os
|
||||
import tempfile
|
||||
|
||||
from itertools import chain
|
||||
from pathlib import Path
|
||||
from zipfile import ZipFile, ZIP_DEFLATED
|
||||
import subprocess
|
||||
|
@ -74,6 +75,10 @@ def include_in_lib(p):
|
|||
if name in EXCLUDE_FILE_FROM_LIBRARY:
|
||||
return False
|
||||
|
||||
# Special code is included below to patch this file back in
|
||||
if [d.lower() for d in p.parts[-3:]] == ['distutils', 'command', '__init__.py']:
|
||||
return False
|
||||
|
||||
suffix = p.suffix.lower()
|
||||
return suffix not in {'.pyc', '.pyo', '.exe'}
|
||||
|
||||
|
@ -203,10 +208,17 @@ def main():
|
|||
try:
|
||||
for t, s, p, c in layout:
|
||||
if s == '$build':
|
||||
s = build
|
||||
fs = build
|
||||
else:
|
||||
s = source / s
|
||||
copied = copy_to_layout(temp / t.rstrip('/'), rglob(s, p, c))
|
||||
fs = source / s
|
||||
files = rglob(fs, p, c)
|
||||
extra_files = []
|
||||
if s == 'Lib' and p == '**/*':
|
||||
extra_files.append((
|
||||
source / 'tools' / 'msi' / 'distutils.command.__init__.py',
|
||||
Path('distutils') / 'command' / '__init__.py'
|
||||
))
|
||||
copied = copy_to_layout(temp / t.rstrip('/'), chain(files, extra_files))
|
||||
print('Copied {} files'.format(copied))
|
||||
|
||||
with open(str(temp / 'pyvenv.cfg'), 'w') as f:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue