@@ -914,6 +914,8 @@ pub fn extended(build: &Build, stage: u32, target: &str) {
914914 t ! ( fs:: create_dir_all( pkg. join( "cargo" ) ) ) ;
915915 t ! ( fs:: create_dir_all( pkg. join( "rust-docs" ) ) ) ;
916916 t ! ( fs:: create_dir_all( pkg. join( "rust-std" ) ) ) ;
917+ t ! ( fs:: create_dir_all( pkg. join( "rls" ) ) ) ;
918+ t ! ( fs:: create_dir_all( pkg. join( "rust-analysis" ) ) ) ;
917919
918920 cp_r ( & work. join ( & format ! ( "{}-{}" , pkgname( build, "rustc" ) , target) ) ,
919921 & pkg. join ( "rustc" ) ) ;
@@ -923,11 +925,17 @@ pub fn extended(build: &Build, stage: u32, target: &str) {
923925 & pkg. join ( "rust-docs" ) ) ;
924926 cp_r ( & work. join ( & format ! ( "{}-{}" , pkgname( build, "rust-std" ) , target) ) ,
925927 & pkg. join ( "rust-std" ) ) ;
928+ cp_r ( & work. join ( & format ! ( "{}-{}" , pkgname( build, "rls" ) , target) ) ,
929+ & pkg. join ( "rls" ) ) ;
930+ cp_r ( & work. join ( & format ! ( "{}-{}" , pkgname( build, "rust-analysis" ) , target) ) ,
931+ & pkg. join ( "rust-analysis" ) ) ;
926932
927933 install ( & etc. join ( "pkg/postinstall" ) , & pkg. join ( "rustc" ) , 0o755 ) ;
928934 install ( & etc. join ( "pkg/postinstall" ) , & pkg. join ( "cargo" ) , 0o755 ) ;
929935 install ( & etc. join ( "pkg/postinstall" ) , & pkg. join ( "rust-docs" ) , 0o755 ) ;
930936 install ( & etc. join ( "pkg/postinstall" ) , & pkg. join ( "rust-std" ) , 0o755 ) ;
937+ install ( & etc. join ( "pkg/postinstall" ) , & pkg. join ( "rls" ) , 0o755 ) ;
938+ install ( & etc. join ( "pkg/postinstall" ) , & pkg. join ( "rust-analysis" ) , 0o755 ) ;
931939
932940 let pkgbuild = |component : & str | {
933941 let mut cmd = Command :: new ( "pkgbuild" ) ;
@@ -941,6 +949,8 @@ pub fn extended(build: &Build, stage: u32, target: &str) {
941949 pkgbuild ( "cargo" ) ;
942950 pkgbuild ( "rust-docs" ) ;
943951 pkgbuild ( "rust-std" ) ;
952+ pkgbuild ( "rls" ) ;
953+ pkgbuild ( "rust-analysis" ) ;
944954
945955 // create an 'uninstall' package
946956 install ( & etc. join ( "pkg/postinstall" ) , & pkg. join ( "uninstall" ) , 0o755 ) ;
@@ -964,6 +974,8 @@ pub fn extended(build: &Build, stage: u32, target: &str) {
964974 let _ = fs:: remove_dir_all ( & exe) ;
965975 t ! ( fs:: create_dir_all( exe. join( "rustc" ) ) ) ;
966976 t ! ( fs:: create_dir_all( exe. join( "cargo" ) ) ) ;
977+ t ! ( fs:: create_dir_all( exe. join( "rls" ) ) ) ;
978+ t ! ( fs:: create_dir_all( exe. join( "rust-analysis" ) ) ) ;
967979 t ! ( fs:: create_dir_all( exe. join( "rust-docs" ) ) ) ;
968980 t ! ( fs:: create_dir_all( exe. join( "rust-std" ) ) ) ;
969981 cp_r ( & work. join ( & format ! ( "{}-{}" , pkgname( build, "rustc" ) , target) )
@@ -978,11 +990,19 @@ pub fn extended(build: &Build, stage: u32, target: &str) {
978990 cp_r ( & work. join ( & format ! ( "{}-{}" , pkgname( build, "rust-std" ) , target) )
979991 . join ( format ! ( "rust-std-{}" , target) ) ,
980992 & exe. join ( "rust-std" ) ) ;
993+ cp_r ( & work. join ( & format ! ( "{}-{}" , pkgname( build, "rls" ) , target) )
994+ . join ( "rls" ) ,
995+ & exe. join ( "rls" ) ) ;
996+ cp_r ( & work. join ( & format ! ( "{}-{}" , pkgname( build, "rust-analysis" ) , target) )
997+ . join ( format ! ( "rust-analysis-{}" , target) ) ,
998+ & exe. join ( "rust-analysis" ) ) ;
981999
9821000 t ! ( fs:: remove_file( exe. join( "rustc/manifest.in" ) ) ) ;
9831001 t ! ( fs:: remove_file( exe. join( "cargo/manifest.in" ) ) ) ;
9841002 t ! ( fs:: remove_file( exe. join( "rust-docs/manifest.in" ) ) ) ;
9851003 t ! ( fs:: remove_file( exe. join( "rust-std/manifest.in" ) ) ) ;
1004+ t ! ( fs:: remove_file( exe. join( "rls/manifest.in" ) ) ) ;
1005+ t ! ( fs:: remove_file( exe. join( "rust-analysis/manifest.in" ) ) ) ;
9861006
9871007 if target. contains ( "windows-gnu" ) {
9881008 t ! ( fs:: create_dir_all( exe. join( "rust-mingw" ) ) ) ;
@@ -1056,6 +1076,26 @@ pub fn extended(build: &Build, stage: u32, target: &str) {
10561076 . arg ( "-dr" ) . arg ( "Std" )
10571077 . arg ( "-var" ) . arg ( "var.StdDir" )
10581078 . arg ( "-out" ) . arg ( exe. join ( "StdGroup.wxs" ) ) ) ;
1079+ build. run ( Command :: new ( & heat)
1080+ . current_dir ( & exe)
1081+ . arg ( "dir" )
1082+ . arg ( "rls" )
1083+ . args ( & heat_flags)
1084+ . arg ( "-cg" ) . arg ( "RlsGroup" )
1085+ . arg ( "-dr" ) . arg ( "Rls" )
1086+ . arg ( "-var" ) . arg ( "var.RlsDir" )
1087+ . arg ( "-out" ) . arg ( exe. join ( "RlsGroup.wxs" ) )
1088+ . arg ( "-t" ) . arg ( etc. join ( "msi/remove-duplicates.xsl" ) ) ) ;
1089+ build. run ( Command :: new ( & heat)
1090+ . current_dir ( & exe)
1091+ . arg ( "dir" )
1092+ . arg ( "rust-analysis" )
1093+ . args ( & heat_flags)
1094+ . arg ( "-cg" ) . arg ( "AnalysisGroup" )
1095+ . arg ( "-dr" ) . arg ( "Analysis" )
1096+ . arg ( "-var" ) . arg ( "var.AnalysisDir" )
1097+ . arg ( "-out" ) . arg ( exe. join ( "AnalysisGroup.wxs" ) )
1098+ . arg ( "-t" ) . arg ( etc. join ( "msi/remove-duplicates.xsl" ) ) ) ;
10591099 if target. contains ( "windows-gnu" ) {
10601100 build. run ( Command :: new ( & heat)
10611101 . current_dir ( & exe)
@@ -1079,6 +1119,8 @@ pub fn extended(build: &Build, stage: u32, target: &str) {
10791119 . arg ( "-dDocsDir=rust-docs" )
10801120 . arg ( "-dCargoDir=cargo" )
10811121 . arg ( "-dStdDir=rust-std" )
1122+ . arg ( "-dRlsDir=rls" )
1123+ . arg ( "-dAnalysisDir=rust-analysis" )
10821124 . arg ( "-arch" ) . arg ( & arch)
10831125 . arg ( "-out" ) . arg ( & output)
10841126 . arg ( & input) ;
@@ -1096,6 +1138,8 @@ pub fn extended(build: &Build, stage: u32, target: &str) {
10961138 candle ( "DocsGroup.wxs" . as_ref ( ) ) ;
10971139 candle ( "CargoGroup.wxs" . as_ref ( ) ) ;
10981140 candle ( "StdGroup.wxs" . as_ref ( ) ) ;
1141+ candle ( "RlsGroup.wxs" . as_ref ( ) ) ;
1142+ candle ( "AnalysisGroup.wxs" . as_ref ( ) ) ;
10991143
11001144 if target. contains ( "windows-gnu" ) {
11011145 candle ( "GccGroup.wxs" . as_ref ( ) ) ;
@@ -1118,6 +1162,8 @@ pub fn extended(build: &Build, stage: u32, target: &str) {
11181162 . arg ( "DocsGroup.wixobj" )
11191163 . arg ( "CargoGroup.wixobj" )
11201164 . arg ( "StdGroup.wixobj" )
1165+ . arg ( "RlsGroup.wixobj" )
1166+ . arg ( "AnalysisGroup.wixobj" )
11211167 . current_dir ( & exe) ;
11221168
11231169 if target. contains ( "windows-gnu" ) {
0 commit comments