1
Fork 0

Make rust-docs optional for the Windows MSI installer.

This commit is contained in:
Eric Huss 2023-04-04 13:42:38 -07:00
parent 7b9aa5fa2c
commit 6b57a344cb
2 changed files with 35 additions and 22 deletions

View file

@ -1585,11 +1585,10 @@ impl Step for Extended {
prepare("rustc"); prepare("rustc");
prepare("cargo"); prepare("cargo");
prepare("rust-analysis"); prepare("rust-analysis");
prepare("rust-docs");
prepare("rust-std"); prepare("rust-std");
prepare("clippy"); prepare("clippy");
prepare("rust-analyzer"); prepare("rust-analyzer");
for tool in &["rust-demangler", "miri"] { for tool in &["rust-docs", "rust-demangler", "miri"] {
if built_tools.contains(tool) { if built_tools.contains(tool) {
prepare(tool); prepare(tool);
} }
@ -1624,6 +1623,7 @@ impl Step for Extended {
.arg("-out") .arg("-out")
.arg(exe.join("RustcGroup.wxs")), .arg(exe.join("RustcGroup.wxs")),
); );
if built_tools.contains("rust-docs") {
builder.run( builder.run(
Command::new(&heat) Command::new(&heat)
.current_dir(&exe) .current_dir(&exe)
@ -1641,6 +1641,7 @@ impl Step for Extended {
.arg("-t") .arg("-t")
.arg(etc.join("msi/squash-components.xsl")), .arg(etc.join("msi/squash-components.xsl")),
); );
}
builder.run( builder.run(
Command::new(&heat) Command::new(&heat)
.current_dir(&exe) .current_dir(&exe)
@ -1787,7 +1788,6 @@ impl Step for Extended {
cmd.current_dir(&exe) cmd.current_dir(&exe)
.arg("-nologo") .arg("-nologo")
.arg("-dRustcDir=rustc") .arg("-dRustcDir=rustc")
.arg("-dDocsDir=rust-docs")
.arg("-dCargoDir=cargo") .arg("-dCargoDir=cargo")
.arg("-dStdDir=rust-std") .arg("-dStdDir=rust-std")
.arg("-dAnalysisDir=rust-analysis") .arg("-dAnalysisDir=rust-analysis")
@ -1799,6 +1799,9 @@ impl Step for Extended {
.arg(&input); .arg(&input);
add_env(builder, &mut cmd, target); add_env(builder, &mut cmd, target);
if built_tools.contains("rust-docs") {
cmd.arg("-dDocsDir=rust-docs");
}
if built_tools.contains("rust-demangler") { if built_tools.contains("rust-demangler") {
cmd.arg("-dRustDemanglerDir=rust-demangler"); cmd.arg("-dRustDemanglerDir=rust-demangler");
} }
@ -1817,7 +1820,9 @@ impl Step for Extended {
candle(&etc.join("msi/ui.wxs")); candle(&etc.join("msi/ui.wxs"));
candle(&etc.join("msi/rustwelcomedlg.wxs")); candle(&etc.join("msi/rustwelcomedlg.wxs"));
candle("RustcGroup.wxs".as_ref()); candle("RustcGroup.wxs".as_ref());
if built_tools.contains("rust-docs") {
candle("DocsGroup.wxs".as_ref()); candle("DocsGroup.wxs".as_ref());
}
candle("CargoGroup.wxs".as_ref()); candle("CargoGroup.wxs".as_ref());
candle("StdGroup.wxs".as_ref()); candle("StdGroup.wxs".as_ref());
candle("ClippyGroup.wxs".as_ref()); candle("ClippyGroup.wxs".as_ref());
@ -1854,7 +1859,6 @@ impl Step for Extended {
.arg("ui.wixobj") .arg("ui.wixobj")
.arg("rustwelcomedlg.wixobj") .arg("rustwelcomedlg.wixobj")
.arg("RustcGroup.wixobj") .arg("RustcGroup.wixobj")
.arg("DocsGroup.wixobj")
.arg("CargoGroup.wixobj") .arg("CargoGroup.wixobj")
.arg("StdGroup.wixobj") .arg("StdGroup.wixobj")
.arg("AnalysisGroup.wixobj") .arg("AnalysisGroup.wixobj")
@ -1870,6 +1874,9 @@ impl Step for Extended {
if built_tools.contains("rust-demangler") { if built_tools.contains("rust-demangler") {
cmd.arg("RustDemanglerGroup.wixobj"); cmd.arg("RustDemanglerGroup.wixobj");
} }
if built_tools.contains("rust-docs") {
cmd.arg("DocsGroup.wixobj");
}
if target.ends_with("windows-gnu") { if target.ends_with("windows-gnu") {
cmd.arg("GccGroup.wixobj"); cmd.arg("GccGroup.wixobj");

View file

@ -167,7 +167,9 @@
<?if $(env.CFG_MINGW)="1" ?> <?if $(env.CFG_MINGW)="1" ?>
<Directory Id="Gcc" Name="." /> <Directory Id="Gcc" Name="." />
<?endif?> <?endif?>
<!-- tool-rust-docs-start -->
<Directory Id="Docs" Name="." /> <Directory Id="Docs" Name="." />
<!-- tool-rust-docs-end -->
<Directory Id="Cargo" Name="." /> <Directory Id="Cargo" Name="." />
<Directory Id="Std" Name="." /> <Directory Id="Std" Name="." />
</Directory> </Directory>
@ -209,6 +211,7 @@
<RegistryValue Root="HKMU" Key="$(var.BaseRegKey)" Name="RustShell" Type="integer" Value="1" KeyPath="yes" /> <RegistryValue Root="HKMU" Key="$(var.BaseRegKey)" Name="RustShell" Type="integer" Value="1" KeyPath="yes" />
<RemoveFolder Id="ApplicationProgramsFolder1" On="uninstall" /> <RemoveFolder Id="ApplicationProgramsFolder1" On="uninstall" />
</Component> </Component>
<!-- tool-rust-docs-start -->
<Component Id="DocIndexShortcut" Guid="*"> <Component Id="DocIndexShortcut" Guid="*">
<Shortcut Id="RustDocs" <Shortcut Id="RustDocs"
Name="$(var.ProductName) Documentation" Name="$(var.ProductName) Documentation"
@ -217,6 +220,7 @@
<RegistryValue Root="HKMU" Key="$(var.BaseRegKey)" Name="RustDocs" Type="integer" Value="1" KeyPath="yes" /> <RegistryValue Root="HKMU" Key="$(var.BaseRegKey)" Name="RustDocs" Type="integer" Value="1" KeyPath="yes" />
<RemoveFolder Id="ApplicationProgramsFolder2" On="uninstall" /> <RemoveFolder Id="ApplicationProgramsFolder2" On="uninstall" />
</Component> </Component>
<!-- tool-rust-docs-end -->
</Directory> </Directory>
</Directory> </Directory>
@ -256,6 +260,7 @@
<ComponentGroupRef Id="GccGroup" /> <ComponentGroupRef Id="GccGroup" />
</Feature> </Feature>
<?endif?> <?endif?>
<!-- tool-rust-docs-start -->
<Feature Id="Docs" <Feature Id="Docs"
Title="HTML documentation" Title="HTML documentation"
Display="5" Display="5"
@ -264,6 +269,7 @@
<ComponentGroupRef Id="DocsGroup" /> <ComponentGroupRef Id="DocsGroup" />
<ComponentRef Id="DocIndexShortcut" /> <ComponentRef Id="DocIndexShortcut" />
</Feature> </Feature>
<!-- tool-rust-docs-end -->
<Feature Id="Path" <Feature Id="Path"
Title="Add to PATH" Title="Add to PATH"
Description="Add Rust to PATH environment variable" Description="Add Rust to PATH environment variable"