cpython/Tools/msi/lib/lib_files.wxs

130 lines
5.7 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?define exts=pyexpat;select;unicodedata;winsound;_bz2;_elementtree;_socket;_ssl;_msi;_ctypes;_hashlib;_multiprocessing;_lzma;_decimal;_overlapped;_sqlite3;_asyncio;_queue ?>
<Fragment>
<DirectoryRef Id="Lib_venv_scripts_nt" />
<ComponentGroup Id="lib_extensions">
<?foreach ext in $(var.exts)?>
<Component Id="$(var.ext).pyd" Directory="DLLs" Guid="*">
<File Name="$(var.ext).pyd" KeyPath="yes" />
</Component>
<?endforeach ?>
<Component Id="sqlite3.dll" Directory="DLLs" Guid="*">
<File Name="sqlite3.dll" KeyPath="yes" />
</Component>
<Component Id="libcrypto.dll" Directory="DLLs" Guid="*">
<File Name="libcrypto$(var.ssltag).dll" KeyPath="yes" />
</Component>
<Component Id="libssl.dll" Directory="DLLs" Guid="*">
<File Name="libssl$(var.ssltag).dll" KeyPath="yes" />
</Component>
<Component Id="venvlauncher.exe" Directory="Lib_venv_scripts_nt" Guid="*">
<File Name="python.exe" Source="venvlauncher.exe" KeyPath="yes" />
</Component>
<Component Id="venvwlauncher.exe" Directory="Lib_venv_scripts_nt" Guid="*">
<File Name="pythonw.exe" Source="venvwlauncher.exe" KeyPath="yes" />
</Component>
</ComponentGroup>
</Fragment>
<Fragment>
<!-- The auto-generated directory is not available when building symbols -->
<DirectoryRef Id="Lib">
<Directory Id="Lib_venv__pdbs" Name="venv">
<Directory Id="Lib_venv_scripts__pdbs" Name="scripts">
<Directory Id="Lib_venv_scripts_nt__pdbs" Name="nt" />
</Directory>
</Directory>
</DirectoryRef>
<ComponentGroup Id="lib_extensions_symbols">
<?foreach ext in $(var.exts)?>
<Component Id="$(var.ext).pdb" Directory="DLLs" Guid="*">
<File Name="$(var.ext).pdb" />
</Component>
<?endforeach ?>
<Component Id="sqlite3.pdb" Directory="DLLs" Guid="*">
<File Name="sqlite3.pdb" />
</Component>
<Component Id="libcrypto.pdb" Directory="DLLs" Guid="*">
<File Name="libcrypto$(var.ssltag).pdb" KeyPath="yes" />
</Component>
<Component Id="libssl.pdb" Directory="DLLs" Guid="*">
<File Name="libssl$(var.ssltag).pdb" KeyPath="yes" />
</Component>
<Component Id="venvlauncher.pdb" Directory="Lib_venv_scripts_nt__pdbs" Guid="*">
<File Name="python.pdb" Source="venvlauncher.pdb" KeyPath="yes" />
</Component>
<Component Id="venvwlauncher.pdb" Directory="Lib_venv_scripts_nt__pdbs" Guid="*">
<File Name="pythonw.pdb" Source="venvwlauncher.pdb" KeyPath="yes" />
</Component>
</ComponentGroup>
</Fragment>
<Fragment>
<!-- The auto-generated directory is not available when building debug binaries -->
<DirectoryRef Id="Lib">
<Directory Id="Lib_venv__d" Name="venv">
<Directory Id="Lib_venv_scripts__d" Name="scripts">
<Directory Id="Lib_venv_scripts_nt__d" Name="nt" />
</Directory>
</Directory>
</DirectoryRef>
<ComponentGroup Id="lib_extensions_d">
<?foreach ext in $(var.exts)?>
<Component Id="$(var.ext)_d.pyd" Directory="DLLs" Guid="*">
<File Name="$(var.ext)_d.pyd" />
</Component>
<Component Id="$(var.ext)_d.pdb" Directory="DLLs" Guid="*">
<File Name="$(var.ext)_d.pdb" />
</Component>
<?endforeach ?>
<Component Id="sqlite3_d.dll" Directory="DLLs" Guid="*">
<File Name="sqlite3_d.dll" KeyPath="yes" />
</Component>
<Component Id="sqlite3_d.pdb" Directory="DLLs" Guid="*">
<File Name="sqlite3_d.pdb" KeyPath="yes" />
</Component>
<Component Id="venvlauncher_d.exe" Directory="Lib_venv_scripts_nt__d" Guid="*">
<File Name="python_d.exe" Source="venvlauncher_d.exe" KeyPath="yes" />
</Component>
<Component Id="venvwlauncher_d.exe" Directory="Lib_venv_scripts_nt__d" Guid="*">
<File Name="pythonw_d.exe" Source="venvwlauncher_d.exe" KeyPath="yes" />
</Component>
</ComponentGroup>
</Fragment>
<Fragment>
<PropertyRef Id="REGISTRYKEY" />
<ComponentGroup Id="lib_files">
<Component Id="PythonPathRegistry" Directory="Lib" Guid="*">
<RegistryKey Root="HKMU" Key="[REGISTRYKEY]">
<RegistryValue Key="PythonPath" Type="string" Value="[Lib];[DLLs]" />
</RegistryKey>
</Component>
<Component Id="Lib2to3_pickle_remove" Directory="Lib_lib2to3" Guid="$(var.RemoveLib2to3PickleComponentGuid)">
<RemoveFile Id="Lib2to3_pickle_remove_files" Name="*.pickle" On="uninstall" />
<RemoveFolder Id="Lib2to3_pickle_remove_folder" On="uninstall" />
</Component>
</ComponentGroup>
</Fragment>
<Fragment>
<ComponentGroup Id="lib_cat">
<Component Id="lib_cat" Directory="Catalogs" Guid="*">
<File Name="python_lib.cat" KeyPath="yes" />
</Component>
</ComponentGroup>
</Fragment>
</Wix>