diff --git a/Tools/msi/make_zip.py b/Tools/msi/make_zip.py index 8dbe83e4f44..710e4a5c23e 100644 --- a/Tools/msi/make_zip.py +++ b/Tools/msi/make_zip.py @@ -29,12 +29,15 @@ DEBUG_FILES = { EXCLUDE_FROM_LIBRARY = { '__pycache__', - 'ensurepip', 'idlelib', 'pydoc_data', 'site-packages', 'tkinter', 'turtledemo', +} + +EXCLUDE_FROM_EMBEDDABLE_LIBRARY = { + 'ensurepip', 'venv', } @@ -82,6 +85,12 @@ def include_in_lib(p): suffix = p.suffix.lower() return suffix not in {'.pyc', '.pyo', '.exe'} +def include_in_embeddable_lib(p): + if p.is_dir() and p.name.lower() in EXCLUDE_FROM_EMBEDDABLE_LIBRARY: + return False + + return include_in_lib(p) + def include_in_libs(p): if not is_not_debug(p): return False @@ -114,7 +123,7 @@ EMBED_LAYOUT = [ ('/', 'PCBuild/$arch', 'python*.exe', is_not_debug), ('/', 'PCBuild/$arch', '*.pyd', is_not_debug), ('/', 'PCBuild/$arch', '*.dll', is_not_debug), - ('{}.zip'.format(BASE_NAME), 'Lib', '**/*', include_in_lib), + ('{}.zip'.format(BASE_NAME), 'Lib', '**/*', include_in_embeddable_lib), ] if os.getenv('DOC_FILENAME'):