From 72901be9afd89e719888429269334524d7e32b1f Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Wed, 9 Aug 2023 18:55:48 -0400 Subject: [PATCH 01/25] Rename Runtime to Rtl and hierarchicalize. --- platforms/Windows/Directory.Build.targets | 2 +- .../{runtimelib/runtimelib.wixproj => rtl/lib/rtllib.wixproj} | 1 + .../Windows/{runtimelib/runtimelib.wxs => rtl/lib/rtllib.wxs} | 0 .../{runtimemsi/runtimemsi.wixproj => rtl/msi/rtlmsi.wixproj} | 4 ++-- .../Windows/{runtimemsi/runtimemsi.wxs => rtl/msi/rtlmsi.wxs} | 2 +- .../{runtimemsm/runtimemsm.wixproj => rtl/msm/rtlmsm.wixproj} | 4 ++-- .../Windows/{runtimemsm/runtimemsm.wxs => rtl/msm/rtlmsm.wxs} | 0 platforms/Windows/samples/HelloMergeModule/hellomm.wixproj | 2 +- platforms/Windows/samples/HelloMergeModule/hellomm.wxs | 2 +- 9 files changed, 9 insertions(+), 8 deletions(-) rename platforms/Windows/{runtimelib/runtimelib.wixproj => rtl/lib/rtllib.wixproj} (88%) rename platforms/Windows/{runtimelib/runtimelib.wxs => rtl/lib/rtllib.wxs} (100%) rename platforms/Windows/{runtimemsi/runtimemsi.wixproj => rtl/msi/rtlmsi.wixproj} (52%) rename platforms/Windows/{runtimemsi/runtimemsi.wxs => rtl/msi/rtlmsi.wxs} (96%) rename platforms/Windows/{runtimemsm/runtimemsm.wixproj => rtl/msm/rtlmsm.wixproj} (54%) rename platforms/Windows/{runtimemsm/runtimemsm.wxs => rtl/msm/rtlmsm.wxs} (100%) diff --git a/platforms/Windows/Directory.Build.targets b/platforms/Windows/Directory.Build.targets index c9777857..6d71ebbe 100644 --- a/platforms/Windows/Directory.Build.targets +++ b/platforms/Windows/Directory.Build.targets @@ -1,6 +1,6 @@ - + diff --git a/platforms/Windows/runtimelib/runtimelib.wixproj b/platforms/Windows/rtl/lib/rtllib.wixproj similarity index 88% rename from platforms/Windows/runtimelib/runtimelib.wixproj rename to platforms/Windows/rtl/lib/rtllib.wixproj index 38562480..cec3bdfa 100644 --- a/platforms/Windows/runtimelib/runtimelib.wixproj +++ b/platforms/Windows/rtl/lib/rtllib.wixproj @@ -1,5 +1,6 @@ + rtl Library true diff --git a/platforms/Windows/runtimelib/runtimelib.wxs b/platforms/Windows/rtl/lib/rtllib.wxs similarity index 100% rename from platforms/Windows/runtimelib/runtimelib.wxs rename to platforms/Windows/rtl/lib/rtllib.wxs diff --git a/platforms/Windows/runtimemsi/runtimemsi.wixproj b/platforms/Windows/rtl/msi/rtlmsi.wixproj similarity index 52% rename from platforms/Windows/runtimemsi/runtimemsi.wixproj rename to platforms/Windows/rtl/msi/rtlmsi.wixproj index 543c02cf..08abc37f 100644 --- a/platforms/Windows/runtimemsi/runtimemsi.wixproj +++ b/platforms/Windows/rtl/msi/rtlmsi.wixproj @@ -1,9 +1,9 @@ - runtime + rtl - + diff --git a/platforms/Windows/runtimemsi/runtimemsi.wxs b/platforms/Windows/rtl/msi/rtlmsi.wxs similarity index 96% rename from platforms/Windows/runtimemsi/runtimemsi.wxs rename to platforms/Windows/rtl/msi/rtlmsi.wxs index e24038a1..273725ba 100644 --- a/platforms/Windows/runtimemsi/runtimemsi.wxs +++ b/platforms/Windows/rtl/msi/rtlmsi.wxs @@ -1,4 +1,4 @@ - + Module - runtime.$(ProductArchitecture) + rtl.$(ProductArchitecture) - + diff --git a/platforms/Windows/runtimemsm/runtimemsm.wxs b/platforms/Windows/rtl/msm/rtlmsm.wxs similarity index 100% rename from platforms/Windows/runtimemsm/runtimemsm.wxs rename to platforms/Windows/rtl/msm/rtlmsm.wxs diff --git a/platforms/Windows/samples/HelloMergeModule/hellomm.wixproj b/platforms/Windows/samples/HelloMergeModule/hellomm.wixproj index 57b4ddca..9b518d66 100644 --- a/platforms/Windows/samples/HelloMergeModule/hellomm.wixproj +++ b/platforms/Windows/samples/HelloMergeModule/hellomm.wixproj @@ -6,6 +6,6 @@ - + diff --git a/platforms/Windows/samples/HelloMergeModule/hellomm.wxs b/platforms/Windows/samples/HelloMergeModule/hellomm.wxs index e9d8ffb2..309fd297 100644 --- a/platforms/Windows/samples/HelloMergeModule/hellomm.wxs +++ b/platforms/Windows/samples/HelloMergeModule/hellomm.wxs @@ -11,7 +11,7 @@ - + From b77fbcd99a53bc46e3a43dcdffcf7647e4cb33c3 Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Wed, 9 Aug 2023 21:45:50 -0400 Subject: [PATCH 02/25] Per-user packages - Remove per-machine resources, use per-user directories, and set packages to per-user. --- platforms/Windows/Directory.Build.props | 2 +- platforms/Windows/bld/bld.wxs | 7 ++----- platforms/Windows/rtl/msi/rtlmsi.wxs | 7 ++----- platforms/Windows/shared/shared.wxs | 10 +++++++--- 4 files changed, 12 insertions(+), 14 deletions(-) diff --git a/platforms/Windows/Directory.Build.props b/platforms/Windows/Directory.Build.props index d2d21b39..0ed7a44d 100644 --- a/platforms/Windows/Directory.Build.props +++ b/platforms/Windows/Directory.Build.props @@ -31,7 +31,7 @@ - perMachine + perUser true diff --git a/platforms/Windows/bld/bld.wxs b/platforms/Windows/bld/bld.wxs index 5676c194..d1b4b08b 100644 --- a/platforms/Windows/bld/bld.wxs +++ b/platforms/Windows/bld/bld.wxs @@ -324,11 +324,8 @@ - - - - - + + diff --git a/platforms/Windows/rtl/msi/rtlmsi.wxs b/platforms/Windows/rtl/msi/rtlmsi.wxs index 273725ba..4aea91f8 100644 --- a/platforms/Windows/rtl/msi/rtlmsi.wxs +++ b/platforms/Windows/rtl/msi/rtlmsi.wxs @@ -23,11 +23,8 @@ - - - - - + + diff --git a/platforms/Windows/shared/shared.wxs b/platforms/Windows/shared/shared.wxs index 02ae9fd5..597dc098 100644 --- a/platforms/Windows/shared/shared.wxs +++ b/platforms/Windows/shared/shared.wxs @@ -1,7 +1,11 @@  - - + + + + + + @@ -36,7 +40,7 @@ - + From 39fa868896ca3e78ace5a757d011e6e4b3532c28 Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Wed, 9 Aug 2023 21:52:45 -0400 Subject: [PATCH 03/25] Implement new per-user bundle: - Web bundle that downloads on demand - Offline bundle with everything embedded - Custom UI with feature selection - Side-by-side upgrade strategy --- platforms/Windows/Directory.Build.props | 45 ++++-- .../Windows/SideBySideUpgradeStrategy.props | 83 ++++++++++ platforms/Windows/bld/bld.wxs | 8 +- platforms/Windows/bundle/installer.wixproj | 11 +- platforms/Windows/bundle/installer.wxs | 102 ++++++++++-- platforms/Windows/bundle/swift.png | Bin 3400 -> 0 bytes platforms/Windows/bundle/swift_side.png | Bin 0 -> 6458 bytes platforms/Windows/bundle/theme.wxl | 81 ++++++++++ platforms/Windows/bundle/theme.xml | 150 ++++++++++++++++++ platforms/Windows/cli/cli.wxs | 8 +- platforms/Windows/dbg/dbg.wxs | 8 +- platforms/Windows/ide/ide.wxs | 8 +- platforms/Windows/rtl/msi/rtlmsi.wxs | 10 +- platforms/Windows/sdk/sdk.wixproj | 6 +- platforms/Windows/sdk/sdk.wxs | 85 ++++++---- platforms/Windows/shared/shared.wxs | 29 ++++ 16 files changed, 554 insertions(+), 80 deletions(-) create mode 100644 platforms/Windows/SideBySideUpgradeStrategy.props delete mode 100644 platforms/Windows/bundle/swift.png create mode 100644 platforms/Windows/bundle/swift_side.png create mode 100644 platforms/Windows/bundle/theme.wxl create mode 100644 platforms/Windows/bundle/theme.xml diff --git a/platforms/Windows/Directory.Build.props b/platforms/Windows/Directory.Build.props index 0ed7a44d..a599f092 100644 --- a/platforms/Windows/Directory.Build.props +++ b/platforms/Windows/Directory.Build.props @@ -2,12 +2,17 @@ amd64 - $(ProductArchitecture) - 0.0.0 - $(ProductVersion) + + $([System.Text.RegularExpressions.Regex]::Replace($(ProductVersion), `[-+].*`, ``)) + $([System.Text.RegularExpressions.Regex]::Match($(NonSemVerProductVersion), `\d+\.\d+`)) + $(NonSemVerProductVersion) + + + + x64 @@ -24,34 +29,56 @@ $([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)build\)) $(RootBuildFolder) + $(BaseOutputPath)\ $(BaseOutputPath)obj\$(MSBuildProjectName)\ $(BaseOutputPath)$(Configuration)\$(ProductArchitecture)\ - high + web + + ICE38;ICE61;ICE64;ICE91 perUser + + + + + high + false + true + high + + + + high + false + + false + high + $(PackageCompressionLevel) + $(DefineConstants); ProductArchitecture=$(ProductArchitecture); ProductVersion=$(ProductVersion); PackageScope=$(PackageScope); IsBundleCompressed=$(IsBundleCompressed); + ArePackageCabsEmbedded=$(ArePackageCabsEmbedded); - - perMachine - true - - true true diff --git a/platforms/Windows/SideBySideUpgradeStrategy.props b/platforms/Windows/SideBySideUpgradeStrategy.props new file mode 100644 index 00000000..8f140840 --- /dev/null +++ b/platforms/Windows/SideBySideUpgradeStrategy.props @@ -0,0 +1,83 @@ + + + + + + {963BE094-A046-47B3-83B2-BEBE92859D39} + {E507284D-138A-41F8-A5F9-99AB5B93E51B} + {37FD1273-011B-4F5E-9706-2EF10732EF24} + {35083EE2-B323-4FFF-925E-20C32F7CE115} + {0CBEC757-9656-4466-A0FF-09E36C11E6BC} + {A47763FE-798F-4CAF-A40F-1E7DD4B8A567} + {7EDBB57B-A263-447C-BE1E-BF302C215F46} + + + + {710F1827-DA4A-4BF4-BDCE-D5F2D7C0DEF2} + {7E95DC06-7F84-4E8E-A038-8304AF0468FB} + {87019842-3F3E-4227-B5C5-23A8EF72AD89} + {91D382AF-1E92-44DC-A4AD-AEE91C1B5160} + {8DD91C86-D13D-490B-B06B-9522A9CF504C} + {BEA8C6DC-F73E-445B-9486-2333D1CF2886} + {4C37A396-D9E2-490A-89B7-0A3D271D847F} + + + + {F3764C05-9568-4DE9-98FE-AF64C0B30706} + {B6D3F8BA-852E-4154-9695-D96CC1AB9106} + {30676806-5205-4AD2-84BC-2E4D43FF3EC0} + {431EE599-67E3-4D29-92C2-780731113746} + {AD7ABDB5-6D22-481A-B1AC-EE77D632A537} + {BC0FC4E7-CF16-4489-A0AC-7562C350AB66} + {5C928C3E-8253-42A8-8B84-FE1F1F70C68A} + + + + {239DD2D6-3F1B-42AE-8412-4640BD48284D} + {C8054F49-C202-4E8A-8FD9-B2966BFDD600} + {47480BD8-1F5E-4146-9AA5-E0A622633B3C} + {544672E2-A047-493C-8DF9-4E9028B53C1C} + {D83C2080-23C2-4E30-82C0-C27C67684905} + {CCC16743-9AAF-4FF9-9D16-81AC3FB036D6} + {1412CA1E-F6FC-4B51-9B61-2BB421F95CC9} + + + + {71CCD6EF-F3CF-492D-A1DA-D76E50A26EBF} + {54E8F1D1-A399-4858-B9E7-7AFDB9C7EEF3} + {A4D13EFF-C677-43DB-83F2-879F0BDD6954} + {8471EA4D-A1B5-4C9A-B357-133E1E93FA35} + {6E7B620B-C4EB-441D-AC03-E9EA75890CD1} + {E281039A-4FAD-4108-B05A-716ACA3FBC25} + {E0DAA36B-2778-44D6-BADD-B80F6AFAE05E} + + + + {44D57C54-D8F2-4374-8C52-8856EE663D32} + {F0503D28-C1A1-41ED-A9E8-F9B4A97A1DB7} + {19C9DA70-48D5-4EFB-B490-88AABBA22791} + {38B13ECD-B15E-4A4D-B054-19BA8F8CCB26} + {21754BFE-97FE-493C-9FD6-82ED20085858} + {6AFB90F0-6E02-4A09-9E09-B78CA3E7D95C} + {6AFB90F0-6E02-4A09-9E09-B78CA3E7D95C} + + + + + $(DefineConstants); + MajorMinorProductVersion=$(MajorMinorProductVersion); + BundleUpgradeCode=$(BundleUpgradeCode); + BldUpgradeCode=$(BldUpgradeCode); + CliUpgradeCode=$(CliUpgradeCode); + DbgUpgradeCode=$(DbgUpgradeCode); + IdeUpgradeCode=$(IdeUpgradeCode); + RtlUpgradeCode=$(RtlUpgradeCode); + SdkUpgradeCode=$(SdkUpgradeCode); + + + diff --git a/platforms/Windows/bld/bld.wxs b/platforms/Windows/bld/bld.wxs index d1b4b08b..4065fc60 100644 --- a/platforms/Windows/bld/bld.wxs +++ b/platforms/Windows/bld/bld.wxs @@ -3,12 +3,14 @@ Language="1033" Manufacturer="swift.org" Name="!(loc.Bld_ProductName)" - UpgradeCode="7e95dc06-7f84-4e8e-a038-8304af0468fb" + UpgradeCode="$(BldUpgradeCode)" Version="$(ProductVersion)" Scope="$(PackageScope)"> - - + + + + diff --git a/platforms/Windows/bundle/installer.wixproj b/platforms/Windows/bundle/installer.wixproj index 59a909bf..9bbd510d 100644 --- a/platforms/Windows/bundle/installer.wixproj +++ b/platforms/Windows/bundle/installer.wixproj @@ -1,10 +1,19 @@  Bundle - $(DefineConstants);MSI_LOCATION=$(MSI_LOCATION); + $(BundleCompressionLevel) + + + + + + + + + diff --git a/platforms/Windows/bundle/installer.wxs b/platforms/Windows/bundle/installer.wxs index 38230b3a..7f8c8f3b 100644 --- a/platforms/Windows/bundle/installer.wxs +++ b/platforms/Windows/bundle/installer.wxs @@ -1,31 +1,101 @@  - - - - + UpgradeCode="$(BundleUpgradeCode)"> + Theme="hyperlinkSidebarLicense" + LocalizationFile="theme.wxl" + ThemeFile="theme.xml" /> + + + + + + + + + + + + + + + - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/platforms/Windows/bundle/swift.png b/platforms/Windows/bundle/swift.png deleted file mode 100644 index cb5e79a1c3e26c7e94fc333e9e95f7ab62a28897..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3400 zcmV-O4Y%@%P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!~g&e!~vBn4jTXf00v@9M??Vs0RI60 zpuMM)000cjNkl3aH?2NvM=0aoiDz8brhh zO2io4cZIl7l!_u6jTmtwR6-f|1(%3RMBGLg1r-Dr6jA8up6UJP-24B)^e{cWOyi8? zR5e4t_m_9?yYJp}?|W_71aiP`Y(VO>I;2)CM{3QdNU#4E>Ci?X9F|_^q7DP!?=6E7 ztb}LRJz#d*3s(QZFuV7Lx#Q06HQCXo0#aYEMReY5B;Wrp>`gxc$s}NT0guT$`7sUm z$_|D|V5d3Ylru)dfKgcuYtT^mPn`%)uYS&Ttstuc8t2@M*i-ZQzy#p)Q&mLz_@P^>n1aTm|?mel|0n3o0V5!KkW6;QHCH_TI0g2jov`G~Zo&Pr=5$|}1$JJ%F zka2#3;0=F;_n=`KzBG)L8badu?9``qQ~({H9b-d7=ouAEnt=WK5>RHl{zrzv2zhd@tWJcNnPChSPn{to*HY^3*I?|l3(C*Fh!5S=ZpWoo zK&8eWp5wM~h+Vs(@(w0vvK&g_6GUP=m8JsHOd&TD!#2Q|dJj05d3G-nhsMoHP=`_x zK$L^Eh8zz6*vYUP7{c1?y&0>MD?VaMzQ%2!)$Z976&Fn7SjZLH`+QL{|9CDNI^bHF zwKk)G2+2>Xt`>o-Z)4PGMCzmWNSn)@*^++d;>nkvVhFoOiALhBSJXO+jV>}cDa4pN z>;h}x0Zt>~>9IHcj)~+Oi_}VVY{i22=BEHcg{0$1ELn`eRky?7tf!W~&Nj=rmmjSh ztz3?Z^R9$vuRe&s{4{SgoqG!%sC$nTVth5D+(rl9fkTn}xEASe)@tZ1_}R@+(DWGM zguefl$;1?tpFSDolP`C?ztCtI17{>oo*i2_4`oM;K=9gGOf*vLPh>jJd?B%V`FrYj zTB72@>3lYQlT?D*fdcK*aZbr)?;&!_W$+z;8iKPIX!>k7G&ol{_snpf`NHrr$}IoD{gw&e31eaP>dUA=3o8|9T)sk-~0j1q@2@7P$F66j-6 zt5&#QGGTCu_{W^3R#2#7n^2Sj1dj7D5x#f=(xH&Hm7n!z1ZO-z`T1B5C|UOb8fILf zeZn?_)91iHkz8TJ`c~I9hs^$Z>SWG|VDPYle#Ru14V2hhXluJL=CFh2-j$ZV#2zvk$5s zd>+=pM*@;VWHVur$?tb8Aq&hMNtXHzboMX`MEeyW5KEvEVoyGXC?i92cn2Sds)rZB zd(aVxh`%6@XpZ3Zvr&HjH7clNds|zBO)H}Ua==Tgk|kBB6_iE+gs?$jhmChkLvraG zZmR?F)?)I$(c=;RBeO=gy$QZ!#-NgZLuvtbq&}19lSmmm?dpEX4r`wwFns>p%c%uQ zrT~EyRSgOezVaL--+j|<-2(r~<579v6Nt{aNd;{V4?TI81&bYrCQ6XvD1{LgX$?Bi zy(&9Q5+jqo$4Tz;M@bbRFc`PRA%(A{)p$W%mp|emJULOJ%--N11Uv^t^L(T_u8U+Y+D~g`Ie#$9Z zdH-z!D!s#^K&z1OD2%VM5ur&ZZF?mYQQXa{01YPvYO_@+Tjb1;&W0u&i$v{Gw__VX z60rhLt+c8D5neLBlI_vCmLTgha>-dpy!)2hQCg&b_?{9KX4I`;Od>k42jPkgWhz7tME@Rs|XQkd@3wOesk-K)nZXkQy=oVuNKvs1LnXxx*L_N8?S=j{@Q?5c472!Mi40f7oZko^2 zPZY|(wU8;<9|s$MejyTXzU1~44^Q{rN~7(1r#O=@jL@W!wroD=th9g%774>TWSC}c z%@Ke7MZ}+7i1ZhqBK6f5j%f=66e`>_3-YH)H}Wi|t6D+kHD<5AC_7|0{A15`FDMN{ zXV&PRpGKZM(53*tp5AKv;U#+?AhI+%q2!*$!myQa~@MnALk*rKgg*7fny2v@E-Xa1g@Ovwzdu3 z3y4PavGs4rRBElt++VGv**?HjUvu|ESQX@2Zl$~0$$_Zly zLf07mft11ISh{kAZH#od9*Nf%AyvBsX%Zg^sY2V!YDUBCvZH$yqrqFRXlc%@>f*Mv z0*>DZT{PZK)qUvj^kTq=ND)(Nd}fy&;QQU#q|m=FN}+8*j`KCnorT1!Ty}i6CRdX9 z$oqBoISv2G<4`{7Qs?@W%MhA)Qif78AouZ)5uSE|E!rxDx7O^D96?m9G6Grr@1$M)2*T9s*V;c`I2C5A4#F8(><6M|A6~xnhZy42G z_|AY5B{^B5+2;CnNUdG1;}GU3yUv?WpyUZj)MS4`s>EqNPpj0eK#mBP{dOdb#3!|O zcGi9I(`n&bIlB!J~s_l1;{?VfAoaX9d+%j5ZNTPA2tHseTQgM#*d~# ze>e_lIX%ueUW&EY*&r1xN$9HQzv{NQ7SIIQl=SS?ciaA2qXQtasPNj*Lw zAiP6!C#0Y^e!Sj z2p9+`pn)iXKnUgKdw=h(b>F?~w|;-jI_J#Ud(WQPWj?be?!GCQ@$!w!004jyVxVhI z8Os0wDkZuLlv&GAX(?r(@-+u*1M0qTZ&MZ*-L*`#0Dy+q3@0v^C~NxX1`mA!0HE+c z2NlFz=nnwEF$vMtvJ7(EDVTV@tRE6XaKAJ(;yRj!&G^9_tY4D)NTCFu3KLhoY1GIj z?tyzODT&LVe!UJzcI}Cb%wVRvFcLc28|ynWC|ZaZ`F;iWU6;7Or8-vsX#{#O4)ss% z7fEn{uSN2MoPZv`T-d7PJ&BlQjX!P1d}`rm`AFJ}WF`h84-lt%8y#r#0sp}nTt)eCd#||C8@&+`+{u*%KBzWT&8DVSU8dn#QwV0@{z^)} zY)k*Y@kR2g+xqo{*N7Zv*7zVTh%=7s*NpoYSc8IrqjRVPYuJa9N4w;vnMDizdbu(A71?w6md*M7oV2mblj=B5XYa=)J>2o@fydhn)tmKVz z^n?Ybsy=M5TjO<&mi?Zaf5PhD`gZkChtX>JvcX~ehqIvjpmP1>FfP=~myj1~56t?O zBXL;fvtt^c>6Z$7z)P)T2BqE-_*zL}@GXO4Yxws37lTeB}qsjSHa zFY>%%128x`8EHq0h&~%iDh1Ngk0pHb3JX(X`XLzODHn_$=vd?0fP;Z?mL+N#10}Co zn2Pq--U(ASRM)w-vfOjx-*OJRsmB>ubVUrI9lD&0hUsk74(n89~ z_OvRF>pEkfmHEWN%_sS@55;cK+op*+gtQ@}gLdAZdS&=1%T0H|1MQt=(nSM5tKhjl zHY;xXz)D>)jtW{Igzf z{t14`VK;m;omrYYj~mm|kf+BG&>rca5G$doWL#rpIozb+&Yq7?>6DBD&@n6XJEH!AnO+8?8!sv2W_igCq)Z0jqjbEG~IHsGcJeU zZ)dZ;W~{0{3NuC*TyG2(nFn#i>^&1P@B5hp!}NfDlm<=6uTctpVQ)vsy!B@e0@K6$ zqttnV^#y!2&d0p!C;cGku|qp^U@!F^<2S1>1U&G0d%9xz{y?-{vE-50Y3u3;E$`5q z3l18XPX9}k(tNZLeSh7+?tK0%l=s{AB=7lt3Ata#wK({Px?10SGJN(<$ZSP8scZ%R zt%xIY^MS{`jjh_R--1k%^0;|9xp*_{rDn4c9Qo1n2x_aT?Cj!D_*4irK_N^%Ba9KS z5}GhC`-1y-5zl5bGyIF!3`mA4Hy6KVmIyvPQ&m1eUo+jB-z=6S)95v=iE5mpd+IYZ z0V)|o{Y zI|nK>4&CrmZz1ckIw7LXqhTLo6t}=LG1}_~Hv|4EU%2{ewITy0B$GUg?MncoB1Ho$ zhYM^yv0)^dNHKVIT<9iObI^EW!|Vgr!zoaYP%VjU%~<_VsZxti=&Tcl z&vtodPwz`|`GZe>^++R`J8vT&3v3*hMl5%0f_k z3wlJ=ZB2B?)VrdDw`lI-z85k&vKD6s2_HEjY%IV1D)7Hi(FYEF>Z-7{T*hRXi4QQYabtDNO7&a(10E`NXs>d8e*WKKmTI$c~ z2-C&-rPc;>S36H(y@GF~P7Y6OkVQ0aUWbm&p8N5Xh+fK-R`1;1zTaHm+N-K#q5EyCuJkLEL< zzf1fXkYcRghw1_}h6=lPM$Nr!99wK-FKS2&@xAD9VRVd%OuVq*rFL(W9oPt$=F50+ zIW2>SxO1s=+EA;pu^-hHVQDLF@E`!)#-3s*ap_+Q=1ju;PsFpJF5B%Ci zy4p55ic;bqMr=BHl*<00T|6mO5A=90BNFE3-VEyH1qkdzzHupmLcE zyxO8aBE|C($q;KR2+K?)p>yYU% zGCU{_)`$N8(&&G%=2|-59Aso}Ad<-Q8gckt!^A!rM%eRC8_kaW>GTU;qtO|Bs?5L6T7vDcll0w&mXn^))t@>k#*@5_fbd zyknNF3CfDw+B*LnUkJ6}bS3r|X5gr8+we@xq{&e5F>Rf^)e zpDQ;+$$Fn@*$n{bldY;F@tJ*&u0zvQ00ckX7#{~b9N2tB3EhjWS&u_^M*}DmUSTK} zGg44s*qB=o|D{ul8URi1%pc4TNus$Dn@JRr#ex$uA(6r%4eJcPN3IZn=G=-#_Q^(E zE&7+cnSK0SLX=U%&J_~yQdhtOudN(i5rm)B(7>fT0;%CL@doM(amlBKusehcBx=7| z-e`@tp60rujv2C3qo**7p~bee?6NMu^jB*B#p`4PGyme5X!*0%>m++{0kFYr1K_RL z!5+Hi_6Z`Wx?a112!F2S^?~%th?9V7Uo(VRvlJi`5OvYD0@aJ+<{>%Gt50%f}Rb}HM$j)rorA?INino#xS4@=GrhQ6luk|2XA>PmQ6zw4=zXcTl zeERdTiOOUkBgfV5yA{w~-tTcCvd=B;AlU`+rnm|!XA)bBh#*in8DB!RIuO>SpCZW! z7_s*dmKsb39;Vb@vrLE=zpV(X7I@Z#&Sg>U1Ce5LoGA^E4#QCb85p$tJqfBWu*&n> z|6bDeNwd{(_J*ov1-OH66uW!-=Mn0A$9R{7s2Dr5n`}(^glsiK6|er=JdpIE#_6-0 zr_VpGP8rka4yQ5PdVY&|;^&98x&e3|2XUo2Z5MyFzd2t2HG)d#l$2Jf0XD8Yv*&et zZ{_rHL1TdhL`@_6u`ktx^J%A|MlG`h-C01!nnL0}rk&mi7emx$=>FdAnt% z&$I00XxMZECXZH&Yn&>euGvo>PFs(kWghsp;KC8Si*Mcyc@PhL??g3dBTJr)F>?5A z6|$yrWRcK)Qs#0zCyW9=zbe!QGWu61QBt5>-1Td6+#^cF*3(w}H|VCy&`RgIKUs>Wra5wmC7E4DE;fN%q2cF1ayP*LIIORfV@xJ1%r?NGEmy`Qb zO)fvqlvPruq(o~N>SK)Ov=+~pjH(W5syw~>Vmt5mMftn+v2p&bieb;k5Vi# zCPd&&d@X|zd|&N+t#wa?{;GZc0$8DITy*OW-O1TqWt;R^=w^cDJ2Y)z?1hwDV++K- zaRt_h{wFOCHtAmMaLr*4v7F@y`~8F$$yH9{$E2SVMx#L!DzR4nF{!r}OYi$Hga*dh zd$Z9Q?TOzEt(N71QM&UmUETiZ6Bp@#kY7q{9YGs;a{+&CZgb5%oS*dm<>`CM9rG^d z=}7jcpRUBQLGjzn;FE2bRDC{Qo?jXwtiw>@x2~w(>Aa1nxui<5)fK4y)6h-=-Wlmy z9>GDp`+^eq4PPGOvk2rkB^!EC=^VsbXUr0D=MSS5`7p8o!3@>6wEu*QZ)6FN|J?TE zox)ml0z~}*#&n%vK8W(qnN94gY|ViGJ`NVf@H!;T`M!z?Oyg#IYIY$!pnLVT8S|Ss zD@+um%0@F&cBIPrlk_gIG=Y99huU%t(10sccaLpkD*!gGjd6T#ihBe(pAVJOzuvLh zE^p>}aQQ+EbQsQ#kkF~$iMkVzB1tu2$~N@a=s4g7e(R4B{dRvP{ZXEGqRSrP*fWsv zM*29d(%==E!Q)XXM=jHn3VQnmok-XcjPn@fqIV@837H_S_FPA4CBhne1Sa5lLC`KV! zoN61S7sdDi&e@NWM+aV$r$@OZ&IKa89dCXiCbJhJ?cxjS#8hhwUk?TzH#a>yE2v8X zXJ&mX#XznaUDT^aDRs=eyf7ZvVU?OM(wIrxJI%!*W61Pwr48|rCTmA1zfek*#q8RwP-h(i+`qd z^hN5^x4?d^MLid0gDHf4I&jOm$J{T~!ny$K(e%-#ios<{&$Pn^8xCQL$DIXEjsGwc zIuMpIR8eq$2=sH@o@?=G)Ii| zIvz&9g`4RZj33!|{rRf$HG^Ra+d2BoTxi{Q0Uwhq9Jw)BUyl|XC7Bj}@XmSNE38~) zie1{169Qwl2VUW-OWwLST5-nD~6jL9NU03y`fl(xG-s9~{5}Qh|uOUuLh4wAF~QZ0ry~r7T-CSQ`3xMPdX0 z#zM#2TMpPxD4~n-6>A+V%WYbWFPJa2XaMsg+~M3Gi@G9ij+x-SV#ATTPSAd*m#jHa z8iKVfoHHFtm>Eo~jOL2u)z83AG5*>+5$V+7T%#9t-M?GP3VgN^;x?*g$%3*2A#e!O zAkdvK?RWzKJcP;K0WQV=F;Rz#a8MYwukDyP8(j}-RBZ$wV#DV|2BS5?QjsjaXtR}pUu&RN|l$F9;H%se^GXLo4a$*VZ zMAe(NV-oz2*5*czQK2Vh0utoo_Hpv=48M?6Kg>cuhk{PW-;c4b?Y&s8k?dsk?nj(g zsFk_%Hb`w!X~-rxwcIOY`lSE=W~!C$f@Oxq<4w$V;cri57r(1#H+$Zf;oH?HK5^ln zu7i`e^rG3fB8u6o09NhL>HMWzW(-rAFnszEpP-ZeYG_05MT2H2MgvEbZ-Z42G@yN@t7`tit&`9OV-^aAzrfeH_xuoY zI7njJ-Ey!6W?A*MH0cz)?U&955;uKj1zk0Pb27VG?cbfQgcCSj$WXQ06p&--9w%`;(cEbuSExbF96^vrA}x(-8Iw|NNl za2aVkTjf0yB6Q#m+M3zbw7_A#*Ta?RQ?}}(STv5@bE6V4Cl-@F6spyD3%jsIh#%tE z>#r`KDb{Wnj0%_{#8(+muv0H;#C))hdMytzU@Y@*zjr1JHO|Am>NAuskbD&=|2qH> MJyYE}ZRe=}18_CvfdBvi literal 0 HcmV?d00001 diff --git a/platforms/Windows/bundle/theme.wxl b/platforms/Windows/bundle/theme.wxl new file mode 100644 index 00000000..6d633756 --- /dev/null +++ b/platforms/Windows/bundle/theme.wxl @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/platforms/Windows/bundle/theme.xml b/platforms/Windows/bundle/theme.xml new file mode 100644 index 00000000..501a9e1f --- /dev/null +++ b/platforms/Windows/bundle/theme.xml @@ -0,0 +1,150 @@ + + + + Segoe UI + Segoe UI + Segoe UI + Segoe UI + + + + + + + + + + + + + + + + + + + + #(loc.InstallLicenseLinkText) + + #(loc.InstallAcceptCheckbox) + + + + + + + + + + + + + + + #(loc.OptionsInstallBld) + #(loc.OptionsInstallCli) + #(loc.OptionsInstallDbg) + #(loc.OptionsInstallIde) + #(loc.OptionsInstallRuntime) + #(loc.OptionsInstallSdk) + #(loc.OptionsInstallRedistX86) + #(loc.OptionsInstallRedistAMD64) + #(loc.OptionsInstallRedistArm64) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #(loc.FailureHyperlinkLogText) + + + + + + + diff --git a/platforms/Windows/cli/cli.wxs b/platforms/Windows/cli/cli.wxs index 05e6a7f7..b6251872 100644 --- a/platforms/Windows/cli/cli.wxs +++ b/platforms/Windows/cli/cli.wxs @@ -3,12 +3,14 @@ Language="1033" Manufacturer="swift.org" Name="!(loc.Cli_ProductName)" - UpgradeCode="87019842-3f3e-4227-b5c5-23a8ef72ad89" + UpgradeCode="$(CliUpgradeCode)" Version="$(ProductVersion)" Scope="$(PackageScope)"> - - + + + + diff --git a/platforms/Windows/dbg/dbg.wxs b/platforms/Windows/dbg/dbg.wxs index 1c72beba..ccc157e2 100644 --- a/platforms/Windows/dbg/dbg.wxs +++ b/platforms/Windows/dbg/dbg.wxs @@ -3,12 +3,14 @@ Language="1033" Manufacturer="swift.org" Name="!(loc.Dbg_ProductName)" - UpgradeCode="91d382af-1e92-44dc-a4ad-aee91c1b5160" + UpgradeCode="$(DbgUpgradeCode)" Version="$(ProductVersion)" Scope="$(PackageScope)"> - - + + + + diff --git a/platforms/Windows/ide/ide.wxs b/platforms/Windows/ide/ide.wxs index a4f53e2d..61104ed6 100644 --- a/platforms/Windows/ide/ide.wxs +++ b/platforms/Windows/ide/ide.wxs @@ -3,12 +3,14 @@ Language="1033" Manufacturer="swift.org" Name="!(loc.Ide_ProductName)" - UpgradeCode="8dd91c86-d13d-490b-b06b-9522a9cf504c" + UpgradeCode="$(IdeUpgradeCode)" Version="$(ProductVersion)" Scope="$(PackageScope)"> - - + + + + diff --git a/platforms/Windows/rtl/msi/rtlmsi.wxs b/platforms/Windows/rtl/msi/rtlmsi.wxs index 4aea91f8..6c671b0e 100644 --- a/platforms/Windows/rtl/msi/rtlmsi.wxs +++ b/platforms/Windows/rtl/msi/rtlmsi.wxs @@ -1,14 +1,16 @@ - + - - + + + + diff --git a/platforms/Windows/sdk/sdk.wixproj b/platforms/Windows/sdk/sdk.wixproj index 4cc5cfa1..17a68128 100644 --- a/platforms/Windows/sdk/sdk.wixproj +++ b/platforms/Windows/sdk/sdk.wixproj @@ -13,9 +13,9 @@ - - - + + + diff --git a/platforms/Windows/sdk/sdk.wxs b/platforms/Windows/sdk/sdk.wxs index 63f7f2b6..858515a1 100644 --- a/platforms/Windows/sdk/sdk.wxs +++ b/platforms/Windows/sdk/sdk.wxs @@ -23,25 +23,26 @@ Language="1033" Manufacturer="swift.org" Name="!(loc.Sdk_ProductName_$(sys.BUILDARCH))" - UpgradeCode="4c37a396-d9e2-490a-89b7-0a3d271d847f" + UpgradeCode="$(SdkUpgradeCode)" Version="$(ProductVersion)" Scope="$(PackageScope)"> - - + + + + @@ -105,7 +106,9 @@ - + + + @@ -436,7 +439,7 @@ - + @@ -475,26 +478,21 @@ - - - - - - - - - - - + + + + + + + + + + + - - - - - - - + + @@ -523,8 +521,25 @@ - + + + + + + + + + + + + + + + + diff --git a/platforms/Windows/shared/shared.wxs b/platforms/Windows/shared/shared.wxs index 597dc098..fda70ca4 100644 --- a/platforms/Windows/shared/shared.wxs +++ b/platforms/Windows/shared/shared.wxs @@ -43,4 +43,33 @@ + + + + + + + + + + + + + + + + + + + + + + + From 098685034b65338894a8e03bff5b493eb011594c Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Fri, 11 Aug 2023 00:24:30 -0400 Subject: [PATCH 04/25] Fix references and arch-specific ids... ...to resolve multiproc build failure. --- platforms/Windows/Directory.Build.targets | 2 +- platforms/Windows/rtl/lib/rtllib.wxs | 32 ++++++++++++++--------- platforms/Windows/rtl/msi/rtlmsi.wixproj | 4 ++- platforms/Windows/rtl/msi/rtlmsi.wxs | 6 ++--- platforms/Windows/rtl/msm/rtlmsm.wixproj | 4 ++- platforms/Windows/rtl/msm/rtlmsm.wxs | 2 +- 6 files changed, 31 insertions(+), 19 deletions(-) diff --git a/platforms/Windows/Directory.Build.targets b/platforms/Windows/Directory.Build.targets index 6d71ebbe..cc2be53b 100644 --- a/platforms/Windows/Directory.Build.targets +++ b/platforms/Windows/Directory.Build.targets @@ -1,6 +1,6 @@ - + diff --git a/platforms/Windows/rtl/lib/rtllib.wxs b/platforms/Windows/rtl/lib/rtllib.wxs index c4813601..a8621629 100644 --- a/platforms/Windows/rtl/lib/rtllib.wxs +++ b/platforms/Windows/rtl/lib/rtllib.wxs @@ -1,8 +1,16 @@  - + + + + + + + - + + + @@ -44,13 +52,13 @@ - + - + @@ -59,7 +67,7 @@ - + @@ -71,18 +79,18 @@ - + - - - - - - + + + + + + diff --git a/platforms/Windows/rtl/msi/rtlmsi.wixproj b/platforms/Windows/rtl/msi/rtlmsi.wixproj index 08abc37f..cb964020 100644 --- a/platforms/Windows/rtl/msi/rtlmsi.wixproj +++ b/platforms/Windows/rtl/msi/rtlmsi.wixproj @@ -4,6 +4,8 @@ - + + + diff --git a/platforms/Windows/rtl/msi/rtlmsi.wxs b/platforms/Windows/rtl/msi/rtlmsi.wxs index 6c671b0e..610e4e62 100644 --- a/platforms/Windows/rtl/msi/rtlmsi.wxs +++ b/platforms/Windows/rtl/msi/rtlmsi.wxs @@ -22,16 +22,16 @@ - + - + - + diff --git a/platforms/Windows/rtl/msm/rtlmsm.wixproj b/platforms/Windows/rtl/msm/rtlmsm.wixproj index 927f4fae..25583061 100644 --- a/platforms/Windows/rtl/msm/rtlmsm.wixproj +++ b/platforms/Windows/rtl/msm/rtlmsm.wixproj @@ -5,6 +5,8 @@ - + + + diff --git a/platforms/Windows/rtl/msm/rtlmsm.wxs b/platforms/Windows/rtl/msm/rtlmsm.wxs index 4f1c13fa..c0dfa79c 100644 --- a/platforms/Windows/rtl/msm/rtlmsm.wxs +++ b/platforms/Windows/rtl/msm/rtlmsm.wxs @@ -14,6 +14,6 @@ Language="0" Version="$(ProductVersion)"> - + From c8b4684f58fe4b1c0856a6e16ba219beb6f92a8f Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Mon, 14 Aug 2023 17:14:48 -0400 Subject: [PATCH 05/25] Simplify side-by-side support authoring. --- platforms/Windows/Directory.Build.props | 2 + .../Windows/SideBySideUpgradeStrategy.props | 59 +++++++------------ platforms/Windows/shared/shared.wxs | 10 ++-- 3 files changed, 26 insertions(+), 45 deletions(-) diff --git a/platforms/Windows/Directory.Build.props b/platforms/Windows/Directory.Build.props index a599f092..ba1ec3e7 100644 --- a/platforms/Windows/Directory.Build.props +++ b/platforms/Windows/Directory.Build.props @@ -73,9 +73,11 @@ $(DefineConstants); ProductArchitecture=$(ProductArchitecture); ProductVersion=$(ProductVersion); + MajorMinorProductVersion=$(MajorMinorProductVersion); PackageScope=$(PackageScope); IsBundleCompressed=$(IsBundleCompressed); ArePackageCabsEmbedded=$(ArePackageCabsEmbedded); + BaseReleaseDownloadUrl=$(BaseReleaseDownloadUrl); diff --git a/platforms/Windows/SideBySideUpgradeStrategy.props b/platforms/Windows/SideBySideUpgradeStrategy.props index 8f140840..3d423f43 100644 --- a/platforms/Windows/SideBySideUpgradeStrategy.props +++ b/platforms/Windows/SideBySideUpgradeStrategy.props @@ -1,24 +1,22 @@ - - {963BE094-A046-47B3-83B2-BEBE92859D39} - {E507284D-138A-41F8-A5F9-99AB5B93E51B} - {37FD1273-011B-4F5E-9706-2EF10732EF24} - {35083EE2-B323-4FFF-925E-20C32F7CE115} - {0CBEC757-9656-4466-A0FF-09E36C11E6BC} - {A47763FE-798F-4CAF-A40F-1E7DD4B8A567} - {7EDBB57B-A263-447C-BE1E-BF302C215F46} - + Packages keep the same upgrade codes "forever" because MSI lets you specify + version ranges for upgrades, which you can find in shared/shared.wxs. - - {710F1827-DA4A-4BF4-BDCE-D5F2D7C0DEF2} + Bundles don't support upgrade version ranges, so the bundle upgrade code + must change for every minor version _and_ stay the same for the entire + lifetime of that minor version (e.g., v5.10.0 thropugh v5.10.9999). + --> + + {7E95DC06-7F84-4E8E-A038-8304AF0468FB} {87019842-3F3E-4227-B5C5-23A8EF72AD89} {91D382AF-1E92-44DC-A4AD-AEE91C1B5160} @@ -27,50 +25,33 @@ {4C37A396-D9E2-490A-89B7-0A3D271D847F} + + {963BE094-A046-47B3-83B2-BEBE92859D39} + + + + {710F1827-DA4A-4BF4-BDCE-D5F2D7C0DEF2} + + {F3764C05-9568-4DE9-98FE-AF64C0B30706} - {B6D3F8BA-852E-4154-9695-D96CC1AB9106} - {30676806-5205-4AD2-84BC-2E4D43FF3EC0} - {431EE599-67E3-4D29-92C2-780731113746} - {AD7ABDB5-6D22-481A-B1AC-EE77D632A537} - {BC0FC4E7-CF16-4489-A0AC-7562C350AB66} - {5C928C3E-8253-42A8-8B84-FE1F1F70C68A} {239DD2D6-3F1B-42AE-8412-4640BD48284D} - {C8054F49-C202-4E8A-8FD9-B2966BFDD600} - {47480BD8-1F5E-4146-9AA5-E0A622633B3C} - {544672E2-A047-493C-8DF9-4E9028B53C1C} - {D83C2080-23C2-4E30-82C0-C27C67684905} - {CCC16743-9AAF-4FF9-9D16-81AC3FB036D6} - {1412CA1E-F6FC-4B51-9B61-2BB421F95CC9} {71CCD6EF-F3CF-492D-A1DA-D76E50A26EBF} - {54E8F1D1-A399-4858-B9E7-7AFDB9C7EEF3} - {A4D13EFF-C677-43DB-83F2-879F0BDD6954} - {8471EA4D-A1B5-4C9A-B357-133E1E93FA35} - {6E7B620B-C4EB-441D-AC03-E9EA75890CD1} - {E281039A-4FAD-4108-B05A-716ACA3FBC25} - {E0DAA36B-2778-44D6-BADD-B80F6AFAE05E} {44D57C54-D8F2-4374-8C52-8856EE663D32} - {F0503D28-C1A1-41ED-A9E8-F9B4A97A1DB7} - {19C9DA70-48D5-4EFB-B490-88AABBA22791} - {38B13ECD-B15E-4A4D-B054-19BA8F8CCB26} - {21754BFE-97FE-493C-9FD6-82ED20085858} - {6AFB90F0-6E02-4A09-9E09-B78CA3E7D95C} - {6AFB90F0-6E02-4A09-9E09-B78CA3E7D95C} $(DefineConstants); - MajorMinorProductVersion=$(MajorMinorProductVersion); BundleUpgradeCode=$(BundleUpgradeCode); BldUpgradeCode=$(BldUpgradeCode); CliUpgradeCode=$(CliUpgradeCode); diff --git a/platforms/Windows/shared/shared.wxs b/platforms/Windows/shared/shared.wxs index fda70ca4..ece90c40 100644 --- a/platforms/Windows/shared/shared.wxs +++ b/platforms/Windows/shared/shared.wxs @@ -45,11 +45,10 @@ @@ -59,7 +58,6 @@ - From a025a71f65fed9bde98bc2eec2611281552a647c Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Mon, 14 Aug 2023 21:22:47 -0400 Subject: [PATCH 06/25] Move merge modules and remove test authoring. --- .../Windows/SideBySideUpgradeStrategy.props | 16 ---------------- platforms/Windows/bundle/installer.wxs | 16 ++++++++-------- platforms/Windows/sdk/sdk.wxs | 16 +++++++--------- platforms/Windows/shared/shared.wxs | 6 +++++- 4 files changed, 20 insertions(+), 34 deletions(-) diff --git a/platforms/Windows/SideBySideUpgradeStrategy.props b/platforms/Windows/SideBySideUpgradeStrategy.props index 3d423f43..1f884cdf 100644 --- a/platforms/Windows/SideBySideUpgradeStrategy.props +++ b/platforms/Windows/SideBySideUpgradeStrategy.props @@ -33,22 +33,6 @@ {710F1827-DA4A-4BF4-BDCE-D5F2D7C0DEF2} - - {F3764C05-9568-4DE9-98FE-AF64C0B30706} - - - - {239DD2D6-3F1B-42AE-8412-4640BD48284D} - - - - {71CCD6EF-F3CF-492D-A1DA-D76E50A26EBF} - - - - {44D57C54-D8F2-4374-8C52-8856EE663D32} - - $(DefineConstants); diff --git a/platforms/Windows/bundle/installer.wxs b/platforms/Windows/bundle/installer.wxs index 7f8c8f3b..1980009c 100644 --- a/platforms/Windows/bundle/installer.wxs +++ b/platforms/Windows/bundle/installer.wxs @@ -16,12 +16,12 @@ + Value="[LocalAppDataFolder]Programs\Swift" /> @@ -56,42 +56,42 @@ SourceFile="!(bindpath.rt)\rtl.msi" InstallCondition="OptionsInstallRuntime" DownloadUrl="$(BaseReleaseDownloadUrl)/{2}"> - + - + - + - + - + - + diff --git a/platforms/Windows/sdk/sdk.wxs b/platforms/Windows/sdk/sdk.wxs index 858515a1..5bd3c21a 100644 --- a/platforms/Windows/sdk/sdk.wxs +++ b/platforms/Windows/sdk/sdk.wxs @@ -106,9 +106,7 @@ - - - + @@ -478,15 +476,15 @@ - + - + - + @@ -528,17 +526,17 @@ --> - + - + - + diff --git a/platforms/Windows/shared/shared.wxs b/platforms/Windows/shared/shared.wxs index ece90c40..1e8c0ee4 100644 --- a/platforms/Windows/shared/shared.wxs +++ b/platforms/Windows/shared/shared.wxs @@ -2,8 +2,12 @@ - + + + + + From 5742969629cad7938c8699512d5633692e078ac0 Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Tue, 15 Aug 2023 18:27:56 -0400 Subject: [PATCH 07/25] More cleanup and test scripts. - Use `rtl` consistently. - Use `InstallRoot`/`INSTALLROOT` consistently. - Make `HelloMergeModule` build outside the source tree. - Add Windows Sandbox test scripts. --- platforms/Windows/bundle/installer.wixproj | 2 +- platforms/Windows/bundle/installer.wxs | 48 +++++++++---------- platforms/Windows/bundle/theme.wxl | 2 +- platforms/Windows/bundle/theme.xml | 6 +-- .../samples/HelloMergeModule/hellomm.wixproj | 5 +- .../samples/HelloMergeModule/hellomm.wxs | 10 +++- .../Windows/samples/tests/SxS/BuildTests.cmd | 13 +++++ .../Windows/samples/tests/SxS/RunTests.cmd | 31 ++++++++++++ .../Windows/samples/tests/SxS/SxSTesting.wsb | 14 ++++++ 9 files changed, 97 insertions(+), 34 deletions(-) create mode 100644 platforms/Windows/samples/tests/SxS/BuildTests.cmd create mode 100644 platforms/Windows/samples/tests/SxS/RunTests.cmd create mode 100644 platforms/Windows/samples/tests/SxS/SxSTesting.wsb diff --git a/platforms/Windows/bundle/installer.wixproj b/platforms/Windows/bundle/installer.wixproj index 9bbd510d..22a805ec 100644 --- a/platforms/Windows/bundle/installer.wixproj +++ b/platforms/Windows/bundle/installer.wixproj @@ -13,7 +13,7 @@ - + diff --git a/platforms/Windows/bundle/installer.wxs b/platforms/Windows/bundle/installer.wxs index 1980009c..6a7ff083 100644 --- a/platforms/Windows/bundle/installer.wxs +++ b/platforms/Windows/bundle/installer.wxs @@ -16,82 +16,82 @@ - - + - + Schema doc is at https://wixtoolset.org/docs/schema/wxs/msipackage/. + --> - + - + - + - + - + - + diff --git a/platforms/Windows/bundle/theme.wxl b/platforms/Windows/bundle/theme.wxl index 6d633756..032939db 100644 --- a/platforms/Windows/bundle/theme.wxl +++ b/platforms/Windows/bundle/theme.wxl @@ -28,7 +28,7 @@ - + diff --git a/platforms/Windows/bundle/theme.xml b/platforms/Windows/bundle/theme.xml index 501a9e1f..8961bd7f 100644 --- a/platforms/Windows/bundle/theme.xml +++ b/platforms/Windows/bundle/theme.xml @@ -50,10 +50,10 @@ - + @@ -61,7 +61,7 @@ #(loc.OptionsInstallCli) #(loc.OptionsInstallDbg) #(loc.OptionsInstallIde) - #(loc.OptionsInstallRuntime) + #(loc.OptionsInstallRtl) #(loc.OptionsInstallSdk) #(loc.OptionsInstallRedistX86) #(loc.OptionsInstallRedistAMD64) diff --git a/platforms/Windows/samples/HelloMergeModule/hellomm.wixproj b/platforms/Windows/samples/HelloMergeModule/hellomm.wixproj index 9b518d66..52adc4ce 100644 --- a/platforms/Windows/samples/HelloMergeModule/hellomm.wixproj +++ b/platforms/Windows/samples/HelloMergeModule/hellomm.wixproj @@ -2,10 +2,7 @@ $(DefineConstants); + RedistributablesDirectory=$(RedistributablesDirectory); - - - - diff --git a/platforms/Windows/samples/HelloMergeModule/hellomm.wxs b/platforms/Windows/samples/HelloMergeModule/hellomm.wxs index 309fd297..06d2d8ee 100644 --- a/platforms/Windows/samples/HelloMergeModule/hellomm.wxs +++ b/platforms/Windows/samples/HelloMergeModule/hellomm.wxs @@ -1,4 +1,11 @@  + + + + + + + + - + diff --git a/platforms/Windows/samples/tests/SxS/BuildTests.cmd b/platforms/Windows/samples/tests/SxS/BuildTests.cmd new file mode 100644 index 00000000..f418883e --- /dev/null +++ b/platforms/Windows/samples/tests/SxS/BuildTests.cmd @@ -0,0 +1,13 @@ +rd /s/q X:\sandbox\Swift\builds + +msbuild -Restore -m -p:ProductVersion=5.9.0 -p:BundleUpgradeCode={710F1827-DA4A-4BF4-BDCE-D5F2D7C0DEF2} -p:BaseOutputPath=X:\sandbox\Swift\builds\5.9.0\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=5.9.1 -p:BundleUpgradeCode={710F1827-DA4A-4BF4-BDCE-D5F2D7C0DEF2} -p:BaseOutputPath=X:\sandbox\Swift\builds\5.9.1\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=5.9.2 -p:BundleUpgradeCode={710F1827-DA4A-4BF4-BDCE-D5F2D7C0DEF2} -p:BaseOutputPath=X:\sandbox\Swift\builds\5.9.2\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=5.10.0 -p:BundleUpgradeCode={F3764C05-9568-4DE9-98FE-AF64C0B30706} -p:BaseOutputPath=X:\sandbox\Swift\builds\5.10.0\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=5.10.1 -p:BundleUpgradeCode={F3764C05-9568-4DE9-98FE-AF64C0B30706} -p:BaseOutputPath=X:\sandbox\Swift\builds\5.10.1\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=5.10.5 -p:BundleUpgradeCode={F3764C05-9568-4DE9-98FE-AF64C0B30706} -p:BaseOutputPath=X:\sandbox\Swift\builds\5.10.5\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=5.11.2 -p:BundleUpgradeCode={239DD2D6-3F1B-42AE-8412-4640BD48284D} -p:BaseOutputPath=X:\sandbox\Swift\builds\5.11.2\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=6.0.0 -p:BundleUpgradeCode={71CCD6EF-F3CF-492D-A1DA-D76E50A26EBF} -p:BaseOutputPath=X:\sandbox\Swift\builds\6.0.0\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=6.0.1 -p:BundleUpgradeCode={71CCD6EF-F3CF-492D-A1DA-D76E50A26EBF} -p:BaseOutputPath=X:\sandbox\Swift\builds\6.0.1\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=6.5.1 -p:BundleUpgradeCode={44D57C54-D8F2-4374-8C52-8856EE663D32} -p:BaseOutputPath=X:\sandbox\Swift\builds\6.5.1\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=6.5.7 -p:BundleUpgradeCode={44D57C54-D8F2-4374-8C52-8856EE663D32} -p:BaseOutputPath=X:\sandbox\Swift\builds\6.5.7\ bundle\installer.wixproj diff --git a/platforms/Windows/samples/tests/SxS/RunTests.cmd b/platforms/Windows/samples/tests/SxS/RunTests.cmd new file mode 100644 index 00000000..0d3f1c76 --- /dev/null +++ b/platforms/Windows/samples/tests/SxS/RunTests.cmd @@ -0,0 +1,31 @@ +start /min %TMP% +start /min %LOCALAPPDATA% + +pushd %~dp0% + +md dumps + +start /wait builds\5.9.0\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.5.9.0.txt +start /wait builds\5.9.1\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.5.9.1.txt +start /wait builds\5.9.2\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.5.9.2.txt +start /wait builds\5.10.0\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.5.10.0.txt +start /wait builds\5.10.1\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.5.10.1.txt +start /wait builds\5.10.5\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.5.10.5.txt +start /wait builds\5.11.2\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.5.11.2.txt +start /wait builds\6.0.0\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.6.0.0.txt +start /wait builds\6.0.1\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.6.0.1.txt +start /wait builds\6.5.1\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.6.5.1.txt +start /wait builds\6.5.7\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.6.5.7.txt + +robocopy %TMP% logs Swift*.log /MIR /NP /NDL /XJ /DCOPY:T /FFT \ No newline at end of file diff --git a/platforms/Windows/samples/tests/SxS/SxSTesting.wsb b/platforms/Windows/samples/tests/SxS/SxSTesting.wsb new file mode 100644 index 00000000..6ad8c7a5 --- /dev/null +++ b/platforms/Windows/samples/tests/SxS/SxSTesting.wsb @@ -0,0 +1,14 @@ + + + + + X:\sandbox\Swift + C:\sandbox + false + + + 8192 + + C:\sandbox\RunTests.cmd + + \ No newline at end of file From 63272813b6ebbf607cd4a34a3917d2264d35dd10 Mon Sep 17 00:00:00 2001 From: Saleem Abdulrasool Date: Thu, 17 Aug 2023 06:58:52 -0700 Subject: [PATCH 08/25] WiX: adjust some product description strings (NFC) This renames the bundle to the "Swift Tool Kit" (Software Development Kit is the expansion of SDK and results in the Swift SDK SDK). Additionally, rename the extra utilities (`plutil`) which is optional. --- platforms/Windows/shared/swift.en-us.wxl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/platforms/Windows/shared/swift.en-us.wxl b/platforms/Windows/shared/swift.en-us.wxl index 588f2686..c995a3fd 100644 --- a/platforms/Windows/shared/swift.en-us.wxl +++ b/platforms/Windows/shared/swift.en-us.wxl @@ -4,11 +4,11 @@ - - - + + + - + From f6e716fa44d8f5ec07925f95f9b602d4ef2aff8d Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Wed, 9 Aug 2023 18:55:48 -0400 Subject: [PATCH 09/25] Rename Runtime to Rtl and hierarchicalize. --- platforms/Windows/Directory.Build.targets | 2 +- .../{runtimelib/runtimelib.wixproj => rtl/lib/rtllib.wixproj} | 1 + .../Windows/{runtimelib/runtimelib.wxs => rtl/lib/rtllib.wxs} | 0 .../{runtimemsi/runtimemsi.wixproj => rtl/msi/rtlmsi.wixproj} | 4 ++-- .../Windows/{runtimemsi/runtimemsi.wxs => rtl/msi/rtlmsi.wxs} | 2 +- .../{runtimemsm/runtimemsm.wixproj => rtl/msm/rtlmsm.wixproj} | 4 ++-- .../Windows/{runtimemsm/runtimemsm.wxs => rtl/msm/rtlmsm.wxs} | 0 platforms/Windows/samples/HelloMergeModule/hellomm.wixproj | 2 +- platforms/Windows/samples/HelloMergeModule/hellomm.wxs | 2 +- 9 files changed, 9 insertions(+), 8 deletions(-) rename platforms/Windows/{runtimelib/runtimelib.wixproj => rtl/lib/rtllib.wixproj} (88%) rename platforms/Windows/{runtimelib/runtimelib.wxs => rtl/lib/rtllib.wxs} (100%) rename platforms/Windows/{runtimemsi/runtimemsi.wixproj => rtl/msi/rtlmsi.wixproj} (52%) rename platforms/Windows/{runtimemsi/runtimemsi.wxs => rtl/msi/rtlmsi.wxs} (96%) rename platforms/Windows/{runtimemsm/runtimemsm.wixproj => rtl/msm/rtlmsm.wixproj} (54%) rename platforms/Windows/{runtimemsm/runtimemsm.wxs => rtl/msm/rtlmsm.wxs} (100%) diff --git a/platforms/Windows/Directory.Build.targets b/platforms/Windows/Directory.Build.targets index c9777857..6d71ebbe 100644 --- a/platforms/Windows/Directory.Build.targets +++ b/platforms/Windows/Directory.Build.targets @@ -1,6 +1,6 @@ - + diff --git a/platforms/Windows/runtimelib/runtimelib.wixproj b/platforms/Windows/rtl/lib/rtllib.wixproj similarity index 88% rename from platforms/Windows/runtimelib/runtimelib.wixproj rename to platforms/Windows/rtl/lib/rtllib.wixproj index 38562480..cec3bdfa 100644 --- a/platforms/Windows/runtimelib/runtimelib.wixproj +++ b/platforms/Windows/rtl/lib/rtllib.wixproj @@ -1,5 +1,6 @@ + rtl Library true diff --git a/platforms/Windows/runtimelib/runtimelib.wxs b/platforms/Windows/rtl/lib/rtllib.wxs similarity index 100% rename from platforms/Windows/runtimelib/runtimelib.wxs rename to platforms/Windows/rtl/lib/rtllib.wxs diff --git a/platforms/Windows/runtimemsi/runtimemsi.wixproj b/platforms/Windows/rtl/msi/rtlmsi.wixproj similarity index 52% rename from platforms/Windows/runtimemsi/runtimemsi.wixproj rename to platforms/Windows/rtl/msi/rtlmsi.wixproj index 543c02cf..08abc37f 100644 --- a/platforms/Windows/runtimemsi/runtimemsi.wixproj +++ b/platforms/Windows/rtl/msi/rtlmsi.wixproj @@ -1,9 +1,9 @@ - runtime + rtl - + diff --git a/platforms/Windows/runtimemsi/runtimemsi.wxs b/platforms/Windows/rtl/msi/rtlmsi.wxs similarity index 96% rename from platforms/Windows/runtimemsi/runtimemsi.wxs rename to platforms/Windows/rtl/msi/rtlmsi.wxs index e24038a1..273725ba 100644 --- a/platforms/Windows/runtimemsi/runtimemsi.wxs +++ b/platforms/Windows/rtl/msi/rtlmsi.wxs @@ -1,4 +1,4 @@ - + Module - runtime.$(ProductArchitecture) + rtl.$(ProductArchitecture) - + diff --git a/platforms/Windows/runtimemsm/runtimemsm.wxs b/platforms/Windows/rtl/msm/rtlmsm.wxs similarity index 100% rename from platforms/Windows/runtimemsm/runtimemsm.wxs rename to platforms/Windows/rtl/msm/rtlmsm.wxs diff --git a/platforms/Windows/samples/HelloMergeModule/hellomm.wixproj b/platforms/Windows/samples/HelloMergeModule/hellomm.wixproj index 57b4ddca..9b518d66 100644 --- a/platforms/Windows/samples/HelloMergeModule/hellomm.wixproj +++ b/platforms/Windows/samples/HelloMergeModule/hellomm.wixproj @@ -6,6 +6,6 @@ - + diff --git a/platforms/Windows/samples/HelloMergeModule/hellomm.wxs b/platforms/Windows/samples/HelloMergeModule/hellomm.wxs index e9d8ffb2..309fd297 100644 --- a/platforms/Windows/samples/HelloMergeModule/hellomm.wxs +++ b/platforms/Windows/samples/HelloMergeModule/hellomm.wxs @@ -11,7 +11,7 @@ - + From 0c5cf6636df601db2bc2687ead29191881a8eecb Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Wed, 9 Aug 2023 21:45:50 -0400 Subject: [PATCH 10/25] Per-user packages - Remove per-machine resources, use per-user directories, and set packages to per-user. --- platforms/Windows/Directory.Build.props | 2 +- platforms/Windows/bld/bld.wxs | 7 ++----- platforms/Windows/rtl/msi/rtlmsi.wxs | 7 ++----- platforms/Windows/shared/shared.wxs | 10 +++++++--- 4 files changed, 12 insertions(+), 14 deletions(-) diff --git a/platforms/Windows/Directory.Build.props b/platforms/Windows/Directory.Build.props index d2d21b39..0ed7a44d 100644 --- a/platforms/Windows/Directory.Build.props +++ b/platforms/Windows/Directory.Build.props @@ -31,7 +31,7 @@ - perMachine + perUser true diff --git a/platforms/Windows/bld/bld.wxs b/platforms/Windows/bld/bld.wxs index 5676c194..d1b4b08b 100644 --- a/platforms/Windows/bld/bld.wxs +++ b/platforms/Windows/bld/bld.wxs @@ -324,11 +324,8 @@ - - - - - + + diff --git a/platforms/Windows/rtl/msi/rtlmsi.wxs b/platforms/Windows/rtl/msi/rtlmsi.wxs index 273725ba..4aea91f8 100644 --- a/platforms/Windows/rtl/msi/rtlmsi.wxs +++ b/platforms/Windows/rtl/msi/rtlmsi.wxs @@ -23,11 +23,8 @@ - - - - - + + diff --git a/platforms/Windows/shared/shared.wxs b/platforms/Windows/shared/shared.wxs index 02ae9fd5..597dc098 100644 --- a/platforms/Windows/shared/shared.wxs +++ b/platforms/Windows/shared/shared.wxs @@ -1,7 +1,11 @@  - - + + + + + + @@ -36,7 +40,7 @@ - + From 088abcef7b52e83197614e93ce6dc401db87ebea Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Wed, 9 Aug 2023 21:52:45 -0400 Subject: [PATCH 11/25] Implement new per-user bundle: - Web bundle that downloads on demand - Offline bundle with everything embedded - Custom UI with feature selection - Side-by-side upgrade strategy --- platforms/Windows/Directory.Build.props | 45 ++++-- .../Windows/SideBySideUpgradeStrategy.props | 83 ++++++++++ platforms/Windows/bld/bld.wxs | 8 +- platforms/Windows/bundle/installer.wixproj | 11 +- platforms/Windows/bundle/installer.wxs | 102 ++++++++++-- platforms/Windows/bundle/swift.png | Bin 3400 -> 0 bytes platforms/Windows/bundle/swift_side.png | Bin 0 -> 6458 bytes platforms/Windows/bundle/theme.wxl | 81 ++++++++++ platforms/Windows/bundle/theme.xml | 150 ++++++++++++++++++ platforms/Windows/cli/cli.wxs | 8 +- platforms/Windows/dbg/dbg.wxs | 8 +- platforms/Windows/ide/ide.wxs | 8 +- platforms/Windows/rtl/msi/rtlmsi.wxs | 10 +- platforms/Windows/sdk/sdk.wixproj | 6 +- platforms/Windows/sdk/sdk.wxs | 85 ++++++---- platforms/Windows/shared/shared.wxs | 29 ++++ 16 files changed, 554 insertions(+), 80 deletions(-) create mode 100644 platforms/Windows/SideBySideUpgradeStrategy.props delete mode 100644 platforms/Windows/bundle/swift.png create mode 100644 platforms/Windows/bundle/swift_side.png create mode 100644 platforms/Windows/bundle/theme.wxl create mode 100644 platforms/Windows/bundle/theme.xml diff --git a/platforms/Windows/Directory.Build.props b/platforms/Windows/Directory.Build.props index 0ed7a44d..a599f092 100644 --- a/platforms/Windows/Directory.Build.props +++ b/platforms/Windows/Directory.Build.props @@ -2,12 +2,17 @@ amd64 - $(ProductArchitecture) - 0.0.0 - $(ProductVersion) + + $([System.Text.RegularExpressions.Regex]::Replace($(ProductVersion), `[-+].*`, ``)) + $([System.Text.RegularExpressions.Regex]::Match($(NonSemVerProductVersion), `\d+\.\d+`)) + $(NonSemVerProductVersion) + + + + x64 @@ -24,34 +29,56 @@ $([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)build\)) $(RootBuildFolder) + $(BaseOutputPath)\ $(BaseOutputPath)obj\$(MSBuildProjectName)\ $(BaseOutputPath)$(Configuration)\$(ProductArchitecture)\ - high + web + + ICE38;ICE61;ICE64;ICE91 perUser + + + + + high + false + true + high + + + + high + false + + false + high + $(PackageCompressionLevel) + $(DefineConstants); ProductArchitecture=$(ProductArchitecture); ProductVersion=$(ProductVersion); PackageScope=$(PackageScope); IsBundleCompressed=$(IsBundleCompressed); + ArePackageCabsEmbedded=$(ArePackageCabsEmbedded); - - perMachine - true - - true true diff --git a/platforms/Windows/SideBySideUpgradeStrategy.props b/platforms/Windows/SideBySideUpgradeStrategy.props new file mode 100644 index 00000000..8f140840 --- /dev/null +++ b/platforms/Windows/SideBySideUpgradeStrategy.props @@ -0,0 +1,83 @@ + + + + + + {963BE094-A046-47B3-83B2-BEBE92859D39} + {E507284D-138A-41F8-A5F9-99AB5B93E51B} + {37FD1273-011B-4F5E-9706-2EF10732EF24} + {35083EE2-B323-4FFF-925E-20C32F7CE115} + {0CBEC757-9656-4466-A0FF-09E36C11E6BC} + {A47763FE-798F-4CAF-A40F-1E7DD4B8A567} + {7EDBB57B-A263-447C-BE1E-BF302C215F46} + + + + {710F1827-DA4A-4BF4-BDCE-D5F2D7C0DEF2} + {7E95DC06-7F84-4E8E-A038-8304AF0468FB} + {87019842-3F3E-4227-B5C5-23A8EF72AD89} + {91D382AF-1E92-44DC-A4AD-AEE91C1B5160} + {8DD91C86-D13D-490B-B06B-9522A9CF504C} + {BEA8C6DC-F73E-445B-9486-2333D1CF2886} + {4C37A396-D9E2-490A-89B7-0A3D271D847F} + + + + {F3764C05-9568-4DE9-98FE-AF64C0B30706} + {B6D3F8BA-852E-4154-9695-D96CC1AB9106} + {30676806-5205-4AD2-84BC-2E4D43FF3EC0} + {431EE599-67E3-4D29-92C2-780731113746} + {AD7ABDB5-6D22-481A-B1AC-EE77D632A537} + {BC0FC4E7-CF16-4489-A0AC-7562C350AB66} + {5C928C3E-8253-42A8-8B84-FE1F1F70C68A} + + + + {239DD2D6-3F1B-42AE-8412-4640BD48284D} + {C8054F49-C202-4E8A-8FD9-B2966BFDD600} + {47480BD8-1F5E-4146-9AA5-E0A622633B3C} + {544672E2-A047-493C-8DF9-4E9028B53C1C} + {D83C2080-23C2-4E30-82C0-C27C67684905} + {CCC16743-9AAF-4FF9-9D16-81AC3FB036D6} + {1412CA1E-F6FC-4B51-9B61-2BB421F95CC9} + + + + {71CCD6EF-F3CF-492D-A1DA-D76E50A26EBF} + {54E8F1D1-A399-4858-B9E7-7AFDB9C7EEF3} + {A4D13EFF-C677-43DB-83F2-879F0BDD6954} + {8471EA4D-A1B5-4C9A-B357-133E1E93FA35} + {6E7B620B-C4EB-441D-AC03-E9EA75890CD1} + {E281039A-4FAD-4108-B05A-716ACA3FBC25} + {E0DAA36B-2778-44D6-BADD-B80F6AFAE05E} + + + + {44D57C54-D8F2-4374-8C52-8856EE663D32} + {F0503D28-C1A1-41ED-A9E8-F9B4A97A1DB7} + {19C9DA70-48D5-4EFB-B490-88AABBA22791} + {38B13ECD-B15E-4A4D-B054-19BA8F8CCB26} + {21754BFE-97FE-493C-9FD6-82ED20085858} + {6AFB90F0-6E02-4A09-9E09-B78CA3E7D95C} + {6AFB90F0-6E02-4A09-9E09-B78CA3E7D95C} + + + + + $(DefineConstants); + MajorMinorProductVersion=$(MajorMinorProductVersion); + BundleUpgradeCode=$(BundleUpgradeCode); + BldUpgradeCode=$(BldUpgradeCode); + CliUpgradeCode=$(CliUpgradeCode); + DbgUpgradeCode=$(DbgUpgradeCode); + IdeUpgradeCode=$(IdeUpgradeCode); + RtlUpgradeCode=$(RtlUpgradeCode); + SdkUpgradeCode=$(SdkUpgradeCode); + + + diff --git a/platforms/Windows/bld/bld.wxs b/platforms/Windows/bld/bld.wxs index d1b4b08b..4065fc60 100644 --- a/platforms/Windows/bld/bld.wxs +++ b/platforms/Windows/bld/bld.wxs @@ -3,12 +3,14 @@ Language="1033" Manufacturer="swift.org" Name="!(loc.Bld_ProductName)" - UpgradeCode="7e95dc06-7f84-4e8e-a038-8304af0468fb" + UpgradeCode="$(BldUpgradeCode)" Version="$(ProductVersion)" Scope="$(PackageScope)"> - - + + + + diff --git a/platforms/Windows/bundle/installer.wixproj b/platforms/Windows/bundle/installer.wixproj index 59a909bf..9bbd510d 100644 --- a/platforms/Windows/bundle/installer.wixproj +++ b/platforms/Windows/bundle/installer.wixproj @@ -1,10 +1,19 @@  Bundle - $(DefineConstants);MSI_LOCATION=$(MSI_LOCATION); + $(BundleCompressionLevel) + + + + + + + + + diff --git a/platforms/Windows/bundle/installer.wxs b/platforms/Windows/bundle/installer.wxs index 38230b3a..7f8c8f3b 100644 --- a/platforms/Windows/bundle/installer.wxs +++ b/platforms/Windows/bundle/installer.wxs @@ -1,31 +1,101 @@  - - - - + UpgradeCode="$(BundleUpgradeCode)"> + Theme="hyperlinkSidebarLicense" + LocalizationFile="theme.wxl" + ThemeFile="theme.xml" /> + + + + + + + + + + + + + + + - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/platforms/Windows/bundle/swift.png b/platforms/Windows/bundle/swift.png deleted file mode 100644 index cb5e79a1c3e26c7e94fc333e9e95f7ab62a28897..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3400 zcmV-O4Y%@%P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!~g&e!~vBn4jTXf00v@9M??Vs0RI60 zpuMM)000cjNkl3aH?2NvM=0aoiDz8brhh zO2io4cZIl7l!_u6jTmtwR6-f|1(%3RMBGLg1r-Dr6jA8up6UJP-24B)^e{cWOyi8? zR5e4t_m_9?yYJp}?|W_71aiP`Y(VO>I;2)CM{3QdNU#4E>Ci?X9F|_^q7DP!?=6E7 ztb}LRJz#d*3s(QZFuV7Lx#Q06HQCXo0#aYEMReY5B;Wrp>`gxc$s}NT0guT$`7sUm z$_|D|V5d3Ylru)dfKgcuYtT^mPn`%)uYS&Ttstuc8t2@M*i-ZQzy#p)Q&mLz_@P^>n1aTm|?mel|0n3o0V5!KkW6;QHCH_TI0g2jov`G~Zo&Pr=5$|}1$JJ%F zka2#3;0=F;_n=`KzBG)L8badu?9``qQ~({H9b-d7=ouAEnt=WK5>RHl{zrzv2zhd@tWJcNnPChSPn{to*HY^3*I?|l3(C*Fh!5S=ZpWoo zK&8eWp5wM~h+Vs(@(w0vvK&g_6GUP=m8JsHOd&TD!#2Q|dJj05d3G-nhsMoHP=`_x zK$L^Eh8zz6*vYUP7{c1?y&0>MD?VaMzQ%2!)$Z976&Fn7SjZLH`+QL{|9CDNI^bHF zwKk)G2+2>Xt`>o-Z)4PGMCzmWNSn)@*^++d;>nkvVhFoOiALhBSJXO+jV>}cDa4pN z>;h}x0Zt>~>9IHcj)~+Oi_}VVY{i22=BEHcg{0$1ELn`eRky?7tf!W~&Nj=rmmjSh ztz3?Z^R9$vuRe&s{4{SgoqG!%sC$nTVth5D+(rl9fkTn}xEASe)@tZ1_}R@+(DWGM zguefl$;1?tpFSDolP`C?ztCtI17{>oo*i2_4`oM;K=9gGOf*vLPh>jJd?B%V`FrYj zTB72@>3lYQlT?D*fdcK*aZbr)?;&!_W$+z;8iKPIX!>k7G&ol{_snpf`NHrr$}IoD{gw&e31eaP>dUA=3o8|9T)sk-~0j1q@2@7P$F66j-6 zt5&#QGGTCu_{W^3R#2#7n^2Sj1dj7D5x#f=(xH&Hm7n!z1ZO-z`T1B5C|UOb8fILf zeZn?_)91iHkz8TJ`c~I9hs^$Z>SWG|VDPYle#Ru14V2hhXluJL=CFh2-j$ZV#2zvk$5s zd>+=pM*@;VWHVur$?tb8Aq&hMNtXHzboMX`MEeyW5KEvEVoyGXC?i92cn2Sds)rZB zd(aVxh`%6@XpZ3Zvr&HjH7clNds|zBO)H}Ua==Tgk|kBB6_iE+gs?$jhmChkLvraG zZmR?F)?)I$(c=;RBeO=gy$QZ!#-NgZLuvtbq&}19lSmmm?dpEX4r`wwFns>p%c%uQ zrT~EyRSgOezVaL--+j|<-2(r~<579v6Nt{aNd;{V4?TI81&bYrCQ6XvD1{LgX$?Bi zy(&9Q5+jqo$4Tz;M@bbRFc`PRA%(A{)p$W%mp|emJULOJ%--N11Uv^t^L(T_u8U+Y+D~g`Ie#$9Z zdH-z!D!s#^K&z1OD2%VM5ur&ZZF?mYQQXa{01YPvYO_@+Tjb1;&W0u&i$v{Gw__VX z60rhLt+c8D5neLBlI_vCmLTgha>-dpy!)2hQCg&b_?{9KX4I`;Od>k42jPkgWhz7tME@Rs|XQkd@3wOesk-K)nZXkQy=oVuNKvs1LnXxx*L_N8?S=j{@Q?5c472!Mi40f7oZko^2 zPZY|(wU8;<9|s$MejyTXzU1~44^Q{rN~7(1r#O=@jL@W!wroD=th9g%774>TWSC}c z%@Ke7MZ}+7i1ZhqBK6f5j%f=66e`>_3-YH)H}Wi|t6D+kHD<5AC_7|0{A15`FDMN{ zXV&PRpGKZM(53*tp5AKv;U#+?AhI+%q2!*$!myQa~@MnALk*rKgg*7fny2v@E-Xa1g@Ovwzdu3 z3y4PavGs4rRBElt++VGv**?HjUvu|ESQX@2Zl$~0$$_Zly zLf07mft11ISh{kAZH#od9*Nf%AyvBsX%Zg^sY2V!YDUBCvZH$yqrqFRXlc%@>f*Mv z0*>DZT{PZK)qUvj^kTq=ND)(Nd}fy&;QQU#q|m=FN}+8*j`KCnorT1!Ty}i6CRdX9 z$oqBoISv2G<4`{7Qs?@W%MhA)Qif78AouZ)5uSE|E!rxDx7O^D96?m9G6Grr@1$M)2*T9s*V;c`I2C5A4#F8(><6M|A6~xnhZy42G z_|AY5B{^B5+2;CnNUdG1;}GU3yUv?WpyUZj)MS4`s>EqNPpj0eK#mBP{dOdb#3!|O zcGi9I(`n&bIlB!J~s_l1;{?VfAoaX9d+%j5ZNTPA2tHseTQgM#*d~# ze>e_lIX%ueUW&EY*&r1xN$9HQzv{NQ7SIIQl=SS?ciaA2qXQtasPNj*Lw zAiP6!C#0Y^e!Sj z2p9+`pn)iXKnUgKdw=h(b>F?~w|;-jI_J#Ud(WQPWj?be?!GCQ@$!w!004jyVxVhI z8Os0wDkZuLlv&GAX(?r(@-+u*1M0qTZ&MZ*-L*`#0Dy+q3@0v^C~NxX1`mA!0HE+c z2NlFz=nnwEF$vMtvJ7(EDVTV@tRE6XaKAJ(;yRj!&G^9_tY4D)NTCFu3KLhoY1GIj z?tyzODT&LVe!UJzcI}Cb%wVRvFcLc28|ynWC|ZaZ`F;iWU6;7Or8-vsX#{#O4)ss% z7fEn{uSN2MoPZv`T-d7PJ&BlQjX!P1d}`rm`AFJ}WF`h84-lt%8y#r#0sp}nTt)eCd#||C8@&+`+{u*%KBzWT&8DVSU8dn#QwV0@{z^)} zY)k*Y@kR2g+xqo{*N7Zv*7zVTh%=7s*NpoYSc8IrqjRVPYuJa9N4w;vnMDizdbu(A71?w6md*M7oV2mblj=B5XYa=)J>2o@fydhn)tmKVz z^n?Ybsy=M5TjO<&mi?Zaf5PhD`gZkChtX>JvcX~ehqIvjpmP1>FfP=~myj1~56t?O zBXL;fvtt^c>6Z$7z)P)T2BqE-_*zL}@GXO4Yxws37lTeB}qsjSHa zFY>%%128x`8EHq0h&~%iDh1Ngk0pHb3JX(X`XLzODHn_$=vd?0fP;Z?mL+N#10}Co zn2Pq--U(ASRM)w-vfOjx-*OJRsmB>ubVUrI9lD&0hUsk74(n89~ z_OvRF>pEkfmHEWN%_sS@55;cK+op*+gtQ@}gLdAZdS&=1%T0H|1MQt=(nSM5tKhjl zHY;xXz)D>)jtW{Igzf z{t14`VK;m;omrYYj~mm|kf+BG&>rca5G$doWL#rpIozb+&Yq7?>6DBD&@n6XJEH!AnO+8?8!sv2W_igCq)Z0jqjbEG~IHsGcJeU zZ)dZ;W~{0{3NuC*TyG2(nFn#i>^&1P@B5hp!}NfDlm<=6uTctpVQ)vsy!B@e0@K6$ zqttnV^#y!2&d0p!C;cGku|qp^U@!F^<2S1>1U&G0d%9xz{y?-{vE-50Y3u3;E$`5q z3l18XPX9}k(tNZLeSh7+?tK0%l=s{AB=7lt3Ata#wK({Px?10SGJN(<$ZSP8scZ%R zt%xIY^MS{`jjh_R--1k%^0;|9xp*_{rDn4c9Qo1n2x_aT?Cj!D_*4irK_N^%Ba9KS z5}GhC`-1y-5zl5bGyIF!3`mA4Hy6KVmIyvPQ&m1eUo+jB-z=6S)95v=iE5mpd+IYZ z0V)|o{Y zI|nK>4&CrmZz1ckIw7LXqhTLo6t}=LG1}_~Hv|4EU%2{ewITy0B$GUg?MncoB1Ho$ zhYM^yv0)^dNHKVIT<9iObI^EW!|Vgr!zoaYP%VjU%~<_VsZxti=&Tcl z&vtodPwz`|`GZe>^++R`J8vT&3v3*hMl5%0f_k z3wlJ=ZB2B?)VrdDw`lI-z85k&vKD6s2_HEjY%IV1D)7Hi(FYEF>Z-7{T*hRXi4QQYabtDNO7&a(10E`NXs>d8e*WKKmTI$c~ z2-C&-rPc;>S36H(y@GF~P7Y6OkVQ0aUWbm&p8N5Xh+fK-R`1;1zTaHm+N-K#q5EyCuJkLEL< zzf1fXkYcRghw1_}h6=lPM$Nr!99wK-FKS2&@xAD9VRVd%OuVq*rFL(W9oPt$=F50+ zIW2>SxO1s=+EA;pu^-hHVQDLF@E`!)#-3s*ap_+Q=1ju;PsFpJF5B%Ci zy4p55ic;bqMr=BHl*<00T|6mO5A=90BNFE3-VEyH1qkdzzHupmLcE zyxO8aBE|C($q;KR2+K?)p>yYU% zGCU{_)`$N8(&&G%=2|-59Aso}Ad<-Q8gckt!^A!rM%eRC8_kaW>GTU;qtO|Bs?5L6T7vDcll0w&mXn^))t@>k#*@5_fbd zyknNF3CfDw+B*LnUkJ6}bS3r|X5gr8+we@xq{&e5F>Rf^)e zpDQ;+$$Fn@*$n{bldY;F@tJ*&u0zvQ00ckX7#{~b9N2tB3EhjWS&u_^M*}DmUSTK} zGg44s*qB=o|D{ul8URi1%pc4TNus$Dn@JRr#ex$uA(6r%4eJcPN3IZn=G=-#_Q^(E zE&7+cnSK0SLX=U%&J_~yQdhtOudN(i5rm)B(7>fT0;%CL@doM(amlBKusehcBx=7| z-e`@tp60rujv2C3qo**7p~bee?6NMu^jB*B#p`4PGyme5X!*0%>m++{0kFYr1K_RL z!5+Hi_6Z`Wx?a112!F2S^?~%th?9V7Uo(VRvlJi`5OvYD0@aJ+<{>%Gt50%f}Rb}HM$j)rorA?INino#xS4@=GrhQ6luk|2XA>PmQ6zw4=zXcTl zeERdTiOOUkBgfV5yA{w~-tTcCvd=B;AlU`+rnm|!XA)bBh#*in8DB!RIuO>SpCZW! z7_s*dmKsb39;Vb@vrLE=zpV(X7I@Z#&Sg>U1Ce5LoGA^E4#QCb85p$tJqfBWu*&n> z|6bDeNwd{(_J*ov1-OH66uW!-=Mn0A$9R{7s2Dr5n`}(^glsiK6|er=JdpIE#_6-0 zr_VpGP8rka4yQ5PdVY&|;^&98x&e3|2XUo2Z5MyFzd2t2HG)d#l$2Jf0XD8Yv*&et zZ{_rHL1TdhL`@_6u`ktx^J%A|MlG`h-C01!nnL0}rk&mi7emx$=>FdAnt% z&$I00XxMZECXZH&Yn&>euGvo>PFs(kWghsp;KC8Si*Mcyc@PhL??g3dBTJr)F>?5A z6|$yrWRcK)Qs#0zCyW9=zbe!QGWu61QBt5>-1Td6+#^cF*3(w}H|VCy&`RgIKUs>Wra5wmC7E4DE;fN%q2cF1ayP*LIIORfV@xJ1%r?NGEmy`Qb zO)fvqlvPruq(o~N>SK)Ov=+~pjH(W5syw~>Vmt5mMftn+v2p&bieb;k5Vi# zCPd&&d@X|zd|&N+t#wa?{;GZc0$8DITy*OW-O1TqWt;R^=w^cDJ2Y)z?1hwDV++K- zaRt_h{wFOCHtAmMaLr*4v7F@y`~8F$$yH9{$E2SVMx#L!DzR4nF{!r}OYi$Hga*dh zd$Z9Q?TOzEt(N71QM&UmUETiZ6Bp@#kY7q{9YGs;a{+&CZgb5%oS*dm<>`CM9rG^d z=}7jcpRUBQLGjzn;FE2bRDC{Qo?jXwtiw>@x2~w(>Aa1nxui<5)fK4y)6h-=-Wlmy z9>GDp`+^eq4PPGOvk2rkB^!EC=^VsbXUr0D=MSS5`7p8o!3@>6wEu*QZ)6FN|J?TE zox)ml0z~}*#&n%vK8W(qnN94gY|ViGJ`NVf@H!;T`M!z?Oyg#IYIY$!pnLVT8S|Ss zD@+um%0@F&cBIPrlk_gIG=Y99huU%t(10sccaLpkD*!gGjd6T#ihBe(pAVJOzuvLh zE^p>}aQQ+EbQsQ#kkF~$iMkVzB1tu2$~N@a=s4g7e(R4B{dRvP{ZXEGqRSrP*fWsv zM*29d(%==E!Q)XXM=jHn3VQnmok-XcjPn@fqIV@837H_S_FPA4CBhne1Sa5lLC`KV! zoN61S7sdDi&e@NWM+aV$r$@OZ&IKa89dCXiCbJhJ?cxjS#8hhwUk?TzH#a>yE2v8X zXJ&mX#XznaUDT^aDRs=eyf7ZvVU?OM(wIrxJI%!*W61Pwr48|rCTmA1zfek*#q8RwP-h(i+`qd z^hN5^x4?d^MLid0gDHf4I&jOm$J{T~!ny$K(e%-#ios<{&$Pn^8xCQL$DIXEjsGwc zIuMpIR8eq$2=sH@o@?=G)Ii| zIvz&9g`4RZj33!|{rRf$HG^Ra+d2BoTxi{Q0Uwhq9Jw)BUyl|XC7Bj}@XmSNE38~) zie1{169Qwl2VUW-OWwLST5-nD~6jL9NU03y`fl(xG-s9~{5}Qh|uOUuLh4wAF~QZ0ry~r7T-CSQ`3xMPdX0 z#zM#2TMpPxD4~n-6>A+V%WYbWFPJa2XaMsg+~M3Gi@G9ij+x-SV#ATTPSAd*m#jHa z8iKVfoHHFtm>Eo~jOL2u)z83AG5*>+5$V+7T%#9t-M?GP3VgN^;x?*g$%3*2A#e!O zAkdvK?RWzKJcP;K0WQV=F;Rz#a8MYwukDyP8(j}-RBZ$wV#DV|2BS5?QjsjaXtR}pUu&RN|l$F9;H%se^GXLo4a$*VZ zMAe(NV-oz2*5*czQK2Vh0utoo_Hpv=48M?6Kg>cuhk{PW-;c4b?Y&s8k?dsk?nj(g zsFk_%Hb`w!X~-rxwcIOY`lSE=W~!C$f@Oxq<4w$V;cri57r(1#H+$Zf;oH?HK5^ln zu7i`e^rG3fB8u6o09NhL>HMWzW(-rAFnszEpP-ZeYG_05MT2H2MgvEbZ-Z42G@yN@t7`tit&`9OV-^aAzrfeH_xuoY zI7njJ-Ey!6W?A*MH0cz)?U&955;uKj1zk0Pb27VG?cbfQgcCSj$WXQ06p&--9w%`;(cEbuSExbF96^vrA}x(-8Iw|NNl za2aVkTjf0yB6Q#m+M3zbw7_A#*Ta?RQ?}}(STv5@bE6V4Cl-@F6spyD3%jsIh#%tE z>#r`KDb{Wnj0%_{#8(+muv0H;#C))hdMytzU@Y@*zjr1JHO|Am>NAuskbD&=|2qH> MJyYE}ZRe=}18_CvfdBvi literal 0 HcmV?d00001 diff --git a/platforms/Windows/bundle/theme.wxl b/platforms/Windows/bundle/theme.wxl new file mode 100644 index 00000000..6d633756 --- /dev/null +++ b/platforms/Windows/bundle/theme.wxl @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/platforms/Windows/bundle/theme.xml b/platforms/Windows/bundle/theme.xml new file mode 100644 index 00000000..501a9e1f --- /dev/null +++ b/platforms/Windows/bundle/theme.xml @@ -0,0 +1,150 @@ + + + + Segoe UI + Segoe UI + Segoe UI + Segoe UI + + + + + + + + + + + + + + + + + + + + #(loc.InstallLicenseLinkText) + + #(loc.InstallAcceptCheckbox) + + + + + + + + + + + + + + + #(loc.OptionsInstallBld) + #(loc.OptionsInstallCli) + #(loc.OptionsInstallDbg) + #(loc.OptionsInstallIde) + #(loc.OptionsInstallRuntime) + #(loc.OptionsInstallSdk) + #(loc.OptionsInstallRedistX86) + #(loc.OptionsInstallRedistAMD64) + #(loc.OptionsInstallRedistArm64) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + #(loc.FailureHyperlinkLogText) + + + + + + + diff --git a/platforms/Windows/cli/cli.wxs b/platforms/Windows/cli/cli.wxs index 05e6a7f7..b6251872 100644 --- a/platforms/Windows/cli/cli.wxs +++ b/platforms/Windows/cli/cli.wxs @@ -3,12 +3,14 @@ Language="1033" Manufacturer="swift.org" Name="!(loc.Cli_ProductName)" - UpgradeCode="87019842-3f3e-4227-b5c5-23a8ef72ad89" + UpgradeCode="$(CliUpgradeCode)" Version="$(ProductVersion)" Scope="$(PackageScope)"> - - + + + + diff --git a/platforms/Windows/dbg/dbg.wxs b/platforms/Windows/dbg/dbg.wxs index 1c72beba..ccc157e2 100644 --- a/platforms/Windows/dbg/dbg.wxs +++ b/platforms/Windows/dbg/dbg.wxs @@ -3,12 +3,14 @@ Language="1033" Manufacturer="swift.org" Name="!(loc.Dbg_ProductName)" - UpgradeCode="91d382af-1e92-44dc-a4ad-aee91c1b5160" + UpgradeCode="$(DbgUpgradeCode)" Version="$(ProductVersion)" Scope="$(PackageScope)"> - - + + + + diff --git a/platforms/Windows/ide/ide.wxs b/platforms/Windows/ide/ide.wxs index a4f53e2d..61104ed6 100644 --- a/platforms/Windows/ide/ide.wxs +++ b/platforms/Windows/ide/ide.wxs @@ -3,12 +3,14 @@ Language="1033" Manufacturer="swift.org" Name="!(loc.Ide_ProductName)" - UpgradeCode="8dd91c86-d13d-490b-b06b-9522a9cf504c" + UpgradeCode="$(IdeUpgradeCode)" Version="$(ProductVersion)" Scope="$(PackageScope)"> - - + + + + diff --git a/platforms/Windows/rtl/msi/rtlmsi.wxs b/platforms/Windows/rtl/msi/rtlmsi.wxs index 4aea91f8..6c671b0e 100644 --- a/platforms/Windows/rtl/msi/rtlmsi.wxs +++ b/platforms/Windows/rtl/msi/rtlmsi.wxs @@ -1,14 +1,16 @@ - + - - + + + + diff --git a/platforms/Windows/sdk/sdk.wixproj b/platforms/Windows/sdk/sdk.wixproj index 4cc5cfa1..17a68128 100644 --- a/platforms/Windows/sdk/sdk.wixproj +++ b/platforms/Windows/sdk/sdk.wixproj @@ -13,9 +13,9 @@ - - - + + + diff --git a/platforms/Windows/sdk/sdk.wxs b/platforms/Windows/sdk/sdk.wxs index 63f7f2b6..858515a1 100644 --- a/platforms/Windows/sdk/sdk.wxs +++ b/platforms/Windows/sdk/sdk.wxs @@ -23,25 +23,26 @@ Language="1033" Manufacturer="swift.org" Name="!(loc.Sdk_ProductName_$(sys.BUILDARCH))" - UpgradeCode="4c37a396-d9e2-490a-89b7-0a3d271d847f" + UpgradeCode="$(SdkUpgradeCode)" Version="$(ProductVersion)" Scope="$(PackageScope)"> - - + + + + @@ -105,7 +106,9 @@ - + + + @@ -436,7 +439,7 @@ - + @@ -475,26 +478,21 @@ - - - - - - - - - - - + + + + + + + + + + + - - - - - - - + + @@ -523,8 +521,25 @@ - + + + + + + + + + + + + + + + + diff --git a/platforms/Windows/shared/shared.wxs b/platforms/Windows/shared/shared.wxs index 597dc098..fda70ca4 100644 --- a/platforms/Windows/shared/shared.wxs +++ b/platforms/Windows/shared/shared.wxs @@ -43,4 +43,33 @@ + + + + + + + + + + + + + + + + + + + + + + + From fa7d18b4c58cea8672d0e96902f6838aa43ed121 Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Fri, 11 Aug 2023 00:24:30 -0400 Subject: [PATCH 12/25] Fix references and arch-specific ids... ...to resolve multiproc build failure. --- platforms/Windows/Directory.Build.targets | 2 +- platforms/Windows/rtl/lib/rtllib.wxs | 32 ++++++++++++++--------- platforms/Windows/rtl/msi/rtlmsi.wixproj | 4 ++- platforms/Windows/rtl/msi/rtlmsi.wxs | 6 ++--- platforms/Windows/rtl/msm/rtlmsm.wixproj | 4 ++- platforms/Windows/rtl/msm/rtlmsm.wxs | 2 +- 6 files changed, 31 insertions(+), 19 deletions(-) diff --git a/platforms/Windows/Directory.Build.targets b/platforms/Windows/Directory.Build.targets index 6d71ebbe..cc2be53b 100644 --- a/platforms/Windows/Directory.Build.targets +++ b/platforms/Windows/Directory.Build.targets @@ -1,6 +1,6 @@ - + diff --git a/platforms/Windows/rtl/lib/rtllib.wxs b/platforms/Windows/rtl/lib/rtllib.wxs index c4813601..a8621629 100644 --- a/platforms/Windows/rtl/lib/rtllib.wxs +++ b/platforms/Windows/rtl/lib/rtllib.wxs @@ -1,8 +1,16 @@  - + + + + + + + - + + + @@ -44,13 +52,13 @@ - + - + @@ -59,7 +67,7 @@ - + @@ -71,18 +79,18 @@ - + - - - - - - + + + + + + diff --git a/platforms/Windows/rtl/msi/rtlmsi.wixproj b/platforms/Windows/rtl/msi/rtlmsi.wixproj index 08abc37f..cb964020 100644 --- a/platforms/Windows/rtl/msi/rtlmsi.wixproj +++ b/platforms/Windows/rtl/msi/rtlmsi.wixproj @@ -4,6 +4,8 @@ - + + + diff --git a/platforms/Windows/rtl/msi/rtlmsi.wxs b/platforms/Windows/rtl/msi/rtlmsi.wxs index 6c671b0e..610e4e62 100644 --- a/platforms/Windows/rtl/msi/rtlmsi.wxs +++ b/platforms/Windows/rtl/msi/rtlmsi.wxs @@ -22,16 +22,16 @@ - + - + - + diff --git a/platforms/Windows/rtl/msm/rtlmsm.wixproj b/platforms/Windows/rtl/msm/rtlmsm.wixproj index 927f4fae..25583061 100644 --- a/platforms/Windows/rtl/msm/rtlmsm.wixproj +++ b/platforms/Windows/rtl/msm/rtlmsm.wixproj @@ -5,6 +5,8 @@ - + + + diff --git a/platforms/Windows/rtl/msm/rtlmsm.wxs b/platforms/Windows/rtl/msm/rtlmsm.wxs index 4f1c13fa..c0dfa79c 100644 --- a/platforms/Windows/rtl/msm/rtlmsm.wxs +++ b/platforms/Windows/rtl/msm/rtlmsm.wxs @@ -14,6 +14,6 @@ Language="0" Version="$(ProductVersion)"> - + From e21f4fde90e27fa1a57534f0a85b19b27dfda9f2 Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Mon, 14 Aug 2023 17:14:48 -0400 Subject: [PATCH 13/25] Simplify side-by-side support authoring. --- platforms/Windows/Directory.Build.props | 2 + .../Windows/SideBySideUpgradeStrategy.props | 59 +++++++------------ platforms/Windows/shared/shared.wxs | 10 ++-- 3 files changed, 26 insertions(+), 45 deletions(-) diff --git a/platforms/Windows/Directory.Build.props b/platforms/Windows/Directory.Build.props index a599f092..ba1ec3e7 100644 --- a/platforms/Windows/Directory.Build.props +++ b/platforms/Windows/Directory.Build.props @@ -73,9 +73,11 @@ $(DefineConstants); ProductArchitecture=$(ProductArchitecture); ProductVersion=$(ProductVersion); + MajorMinorProductVersion=$(MajorMinorProductVersion); PackageScope=$(PackageScope); IsBundleCompressed=$(IsBundleCompressed); ArePackageCabsEmbedded=$(ArePackageCabsEmbedded); + BaseReleaseDownloadUrl=$(BaseReleaseDownloadUrl); diff --git a/platforms/Windows/SideBySideUpgradeStrategy.props b/platforms/Windows/SideBySideUpgradeStrategy.props index 8f140840..3d423f43 100644 --- a/platforms/Windows/SideBySideUpgradeStrategy.props +++ b/platforms/Windows/SideBySideUpgradeStrategy.props @@ -1,24 +1,22 @@ - - {963BE094-A046-47B3-83B2-BEBE92859D39} - {E507284D-138A-41F8-A5F9-99AB5B93E51B} - {37FD1273-011B-4F5E-9706-2EF10732EF24} - {35083EE2-B323-4FFF-925E-20C32F7CE115} - {0CBEC757-9656-4466-A0FF-09E36C11E6BC} - {A47763FE-798F-4CAF-A40F-1E7DD4B8A567} - {7EDBB57B-A263-447C-BE1E-BF302C215F46} - + Packages keep the same upgrade codes "forever" because MSI lets you specify + version ranges for upgrades, which you can find in shared/shared.wxs. - - {710F1827-DA4A-4BF4-BDCE-D5F2D7C0DEF2} + Bundles don't support upgrade version ranges, so the bundle upgrade code + must change for every minor version _and_ stay the same for the entire + lifetime of that minor version (e.g., v5.10.0 thropugh v5.10.9999). + --> + + {7E95DC06-7F84-4E8E-A038-8304AF0468FB} {87019842-3F3E-4227-B5C5-23A8EF72AD89} {91D382AF-1E92-44DC-A4AD-AEE91C1B5160} @@ -27,50 +25,33 @@ {4C37A396-D9E2-490A-89B7-0A3D271D847F} + + {963BE094-A046-47B3-83B2-BEBE92859D39} + + + + {710F1827-DA4A-4BF4-BDCE-D5F2D7C0DEF2} + + {F3764C05-9568-4DE9-98FE-AF64C0B30706} - {B6D3F8BA-852E-4154-9695-D96CC1AB9106} - {30676806-5205-4AD2-84BC-2E4D43FF3EC0} - {431EE599-67E3-4D29-92C2-780731113746} - {AD7ABDB5-6D22-481A-B1AC-EE77D632A537} - {BC0FC4E7-CF16-4489-A0AC-7562C350AB66} - {5C928C3E-8253-42A8-8B84-FE1F1F70C68A} {239DD2D6-3F1B-42AE-8412-4640BD48284D} - {C8054F49-C202-4E8A-8FD9-B2966BFDD600} - {47480BD8-1F5E-4146-9AA5-E0A622633B3C} - {544672E2-A047-493C-8DF9-4E9028B53C1C} - {D83C2080-23C2-4E30-82C0-C27C67684905} - {CCC16743-9AAF-4FF9-9D16-81AC3FB036D6} - {1412CA1E-F6FC-4B51-9B61-2BB421F95CC9} {71CCD6EF-F3CF-492D-A1DA-D76E50A26EBF} - {54E8F1D1-A399-4858-B9E7-7AFDB9C7EEF3} - {A4D13EFF-C677-43DB-83F2-879F0BDD6954} - {8471EA4D-A1B5-4C9A-B357-133E1E93FA35} - {6E7B620B-C4EB-441D-AC03-E9EA75890CD1} - {E281039A-4FAD-4108-B05A-716ACA3FBC25} - {E0DAA36B-2778-44D6-BADD-B80F6AFAE05E} {44D57C54-D8F2-4374-8C52-8856EE663D32} - {F0503D28-C1A1-41ED-A9E8-F9B4A97A1DB7} - {19C9DA70-48D5-4EFB-B490-88AABBA22791} - {38B13ECD-B15E-4A4D-B054-19BA8F8CCB26} - {21754BFE-97FE-493C-9FD6-82ED20085858} - {6AFB90F0-6E02-4A09-9E09-B78CA3E7D95C} - {6AFB90F0-6E02-4A09-9E09-B78CA3E7D95C} $(DefineConstants); - MajorMinorProductVersion=$(MajorMinorProductVersion); BundleUpgradeCode=$(BundleUpgradeCode); BldUpgradeCode=$(BldUpgradeCode); CliUpgradeCode=$(CliUpgradeCode); diff --git a/platforms/Windows/shared/shared.wxs b/platforms/Windows/shared/shared.wxs index fda70ca4..ece90c40 100644 --- a/platforms/Windows/shared/shared.wxs +++ b/platforms/Windows/shared/shared.wxs @@ -45,11 +45,10 @@ @@ -59,7 +58,6 @@ - From 886a459ccffcd7f7a1619974e7d5f0a1b7f62319 Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Mon, 14 Aug 2023 21:22:47 -0400 Subject: [PATCH 14/25] Move merge modules and remove test authoring. --- .../Windows/SideBySideUpgradeStrategy.props | 16 ---------------- platforms/Windows/bundle/installer.wxs | 16 ++++++++-------- platforms/Windows/sdk/sdk.wxs | 16 +++++++--------- platforms/Windows/shared/shared.wxs | 6 +++++- 4 files changed, 20 insertions(+), 34 deletions(-) diff --git a/platforms/Windows/SideBySideUpgradeStrategy.props b/platforms/Windows/SideBySideUpgradeStrategy.props index 3d423f43..1f884cdf 100644 --- a/platforms/Windows/SideBySideUpgradeStrategy.props +++ b/platforms/Windows/SideBySideUpgradeStrategy.props @@ -33,22 +33,6 @@ {710F1827-DA4A-4BF4-BDCE-D5F2D7C0DEF2} - - {F3764C05-9568-4DE9-98FE-AF64C0B30706} - - - - {239DD2D6-3F1B-42AE-8412-4640BD48284D} - - - - {71CCD6EF-F3CF-492D-A1DA-D76E50A26EBF} - - - - {44D57C54-D8F2-4374-8C52-8856EE663D32} - - $(DefineConstants); diff --git a/platforms/Windows/bundle/installer.wxs b/platforms/Windows/bundle/installer.wxs index 7f8c8f3b..1980009c 100644 --- a/platforms/Windows/bundle/installer.wxs +++ b/platforms/Windows/bundle/installer.wxs @@ -16,12 +16,12 @@ + Value="[LocalAppDataFolder]Programs\Swift" /> @@ -56,42 +56,42 @@ SourceFile="!(bindpath.rt)\rtl.msi" InstallCondition="OptionsInstallRuntime" DownloadUrl="$(BaseReleaseDownloadUrl)/{2}"> - + - + - + - + - + - + diff --git a/platforms/Windows/sdk/sdk.wxs b/platforms/Windows/sdk/sdk.wxs index 858515a1..5bd3c21a 100644 --- a/platforms/Windows/sdk/sdk.wxs +++ b/platforms/Windows/sdk/sdk.wxs @@ -106,9 +106,7 @@ - - - + @@ -478,15 +476,15 @@ - + - + - + @@ -528,17 +526,17 @@ --> - + - + - + diff --git a/platforms/Windows/shared/shared.wxs b/platforms/Windows/shared/shared.wxs index ece90c40..1e8c0ee4 100644 --- a/platforms/Windows/shared/shared.wxs +++ b/platforms/Windows/shared/shared.wxs @@ -2,8 +2,12 @@ - + + + + + From 9cefd5eb001b90b52256f545af63e5ae517eef57 Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Tue, 15 Aug 2023 18:27:56 -0400 Subject: [PATCH 15/25] More cleanup and test scripts. - Use `rtl` consistently. - Use `InstallRoot`/`INSTALLROOT` consistently. - Make `HelloMergeModule` build outside the source tree. - Add Windows Sandbox test scripts. --- platforms/Windows/bundle/installer.wixproj | 2 +- platforms/Windows/bundle/installer.wxs | 48 +++++++++---------- platforms/Windows/bundle/theme.wxl | 2 +- platforms/Windows/bundle/theme.xml | 6 +-- .../samples/HelloMergeModule/hellomm.wixproj | 5 +- .../samples/HelloMergeModule/hellomm.wxs | 10 +++- .../Windows/samples/tests/SxS/BuildTests.cmd | 13 +++++ .../Windows/samples/tests/SxS/RunTests.cmd | 31 ++++++++++++ .../Windows/samples/tests/SxS/SxSTesting.wsb | 14 ++++++ 9 files changed, 97 insertions(+), 34 deletions(-) create mode 100644 platforms/Windows/samples/tests/SxS/BuildTests.cmd create mode 100644 platforms/Windows/samples/tests/SxS/RunTests.cmd create mode 100644 platforms/Windows/samples/tests/SxS/SxSTesting.wsb diff --git a/platforms/Windows/bundle/installer.wixproj b/platforms/Windows/bundle/installer.wixproj index 9bbd510d..22a805ec 100644 --- a/platforms/Windows/bundle/installer.wixproj +++ b/platforms/Windows/bundle/installer.wixproj @@ -13,7 +13,7 @@ - + diff --git a/platforms/Windows/bundle/installer.wxs b/platforms/Windows/bundle/installer.wxs index 1980009c..6a7ff083 100644 --- a/platforms/Windows/bundle/installer.wxs +++ b/platforms/Windows/bundle/installer.wxs @@ -16,82 +16,82 @@ - - + - + Schema doc is at https://wixtoolset.org/docs/schema/wxs/msipackage/. + --> - + - + - + - + - + - + diff --git a/platforms/Windows/bundle/theme.wxl b/platforms/Windows/bundle/theme.wxl index 6d633756..032939db 100644 --- a/platforms/Windows/bundle/theme.wxl +++ b/platforms/Windows/bundle/theme.wxl @@ -28,7 +28,7 @@ - + diff --git a/platforms/Windows/bundle/theme.xml b/platforms/Windows/bundle/theme.xml index 501a9e1f..8961bd7f 100644 --- a/platforms/Windows/bundle/theme.xml +++ b/platforms/Windows/bundle/theme.xml @@ -50,10 +50,10 @@ - + @@ -61,7 +61,7 @@ #(loc.OptionsInstallCli) #(loc.OptionsInstallDbg) #(loc.OptionsInstallIde) - #(loc.OptionsInstallRuntime) + #(loc.OptionsInstallRtl) #(loc.OptionsInstallSdk) #(loc.OptionsInstallRedistX86) #(loc.OptionsInstallRedistAMD64) diff --git a/platforms/Windows/samples/HelloMergeModule/hellomm.wixproj b/platforms/Windows/samples/HelloMergeModule/hellomm.wixproj index 9b518d66..52adc4ce 100644 --- a/platforms/Windows/samples/HelloMergeModule/hellomm.wixproj +++ b/platforms/Windows/samples/HelloMergeModule/hellomm.wixproj @@ -2,10 +2,7 @@ $(DefineConstants); + RedistributablesDirectory=$(RedistributablesDirectory); - - - - diff --git a/platforms/Windows/samples/HelloMergeModule/hellomm.wxs b/platforms/Windows/samples/HelloMergeModule/hellomm.wxs index 309fd297..06d2d8ee 100644 --- a/platforms/Windows/samples/HelloMergeModule/hellomm.wxs +++ b/platforms/Windows/samples/HelloMergeModule/hellomm.wxs @@ -1,4 +1,11 @@  + + + + + + + + - + diff --git a/platforms/Windows/samples/tests/SxS/BuildTests.cmd b/platforms/Windows/samples/tests/SxS/BuildTests.cmd new file mode 100644 index 00000000..f418883e --- /dev/null +++ b/platforms/Windows/samples/tests/SxS/BuildTests.cmd @@ -0,0 +1,13 @@ +rd /s/q X:\sandbox\Swift\builds + +msbuild -Restore -m -p:ProductVersion=5.9.0 -p:BundleUpgradeCode={710F1827-DA4A-4BF4-BDCE-D5F2D7C0DEF2} -p:BaseOutputPath=X:\sandbox\Swift\builds\5.9.0\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=5.9.1 -p:BundleUpgradeCode={710F1827-DA4A-4BF4-BDCE-D5F2D7C0DEF2} -p:BaseOutputPath=X:\sandbox\Swift\builds\5.9.1\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=5.9.2 -p:BundleUpgradeCode={710F1827-DA4A-4BF4-BDCE-D5F2D7C0DEF2} -p:BaseOutputPath=X:\sandbox\Swift\builds\5.9.2\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=5.10.0 -p:BundleUpgradeCode={F3764C05-9568-4DE9-98FE-AF64C0B30706} -p:BaseOutputPath=X:\sandbox\Swift\builds\5.10.0\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=5.10.1 -p:BundleUpgradeCode={F3764C05-9568-4DE9-98FE-AF64C0B30706} -p:BaseOutputPath=X:\sandbox\Swift\builds\5.10.1\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=5.10.5 -p:BundleUpgradeCode={F3764C05-9568-4DE9-98FE-AF64C0B30706} -p:BaseOutputPath=X:\sandbox\Swift\builds\5.10.5\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=5.11.2 -p:BundleUpgradeCode={239DD2D6-3F1B-42AE-8412-4640BD48284D} -p:BaseOutputPath=X:\sandbox\Swift\builds\5.11.2\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=6.0.0 -p:BundleUpgradeCode={71CCD6EF-F3CF-492D-A1DA-D76E50A26EBF} -p:BaseOutputPath=X:\sandbox\Swift\builds\6.0.0\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=6.0.1 -p:BundleUpgradeCode={71CCD6EF-F3CF-492D-A1DA-D76E50A26EBF} -p:BaseOutputPath=X:\sandbox\Swift\builds\6.0.1\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=6.5.1 -p:BundleUpgradeCode={44D57C54-D8F2-4374-8C52-8856EE663D32} -p:BaseOutputPath=X:\sandbox\Swift\builds\6.5.1\ bundle\installer.wixproj +msbuild -Restore -m -p:ProductVersion=6.5.7 -p:BundleUpgradeCode={44D57C54-D8F2-4374-8C52-8856EE663D32} -p:BaseOutputPath=X:\sandbox\Swift\builds\6.5.7\ bundle\installer.wixproj diff --git a/platforms/Windows/samples/tests/SxS/RunTests.cmd b/platforms/Windows/samples/tests/SxS/RunTests.cmd new file mode 100644 index 00000000..0d3f1c76 --- /dev/null +++ b/platforms/Windows/samples/tests/SxS/RunTests.cmd @@ -0,0 +1,31 @@ +start /min %TMP% +start /min %LOCALAPPDATA% + +pushd %~dp0% + +md dumps + +start /wait builds\5.9.0\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.5.9.0.txt +start /wait builds\5.9.1\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.5.9.1.txt +start /wait builds\5.9.2\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.5.9.2.txt +start /wait builds\5.10.0\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.5.10.0.txt +start /wait builds\5.10.1\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.5.10.1.txt +start /wait builds\5.10.5\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.5.10.5.txt +start /wait builds\5.11.2\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.5.11.2.txt +start /wait builds\6.0.0\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.6.0.0.txt +start /wait builds\6.0.1\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.6.0.1.txt +start /wait builds\6.5.1\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.6.5.1.txt +start /wait builds\6.5.7\amd64\installer.exe /passive +dir /s %LOCALAPPDATA%\Programs > dumps\post.install.6.5.7.txt + +robocopy %TMP% logs Swift*.log /MIR /NP /NDL /XJ /DCOPY:T /FFT \ No newline at end of file diff --git a/platforms/Windows/samples/tests/SxS/SxSTesting.wsb b/platforms/Windows/samples/tests/SxS/SxSTesting.wsb new file mode 100644 index 00000000..6ad8c7a5 --- /dev/null +++ b/platforms/Windows/samples/tests/SxS/SxSTesting.wsb @@ -0,0 +1,14 @@ + + + + + X:\sandbox\Swift + C:\sandbox + false + + + 8192 + + C:\sandbox\RunTests.cmd + + \ No newline at end of file From 540d909952af83de81bcd6cb8d7050ef4b5144fa Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Fri, 18 Aug 2023 16:58:31 -0400 Subject: [PATCH 16/25] Requested changes: - Consolidate .wxl files to avoid duplication. - Use `online` bundle flavoring -v- `web`. --- platforms/Windows/Directory.Build.props | 4 +- platforms/Windows/bundle/installer.wxs | 2 +- platforms/Windows/bundle/theme.wxl | 81 ------------------------ platforms/Windows/bundle/theme.xml | 12 ++-- platforms/Windows/rtl/msi/rtlmsi.wxs | 4 +- platforms/Windows/shared/swift.en-us.wxl | 80 ++++++++++++++++++++++- 6 files changed, 88 insertions(+), 95 deletions(-) delete mode 100644 platforms/Windows/bundle/theme.wxl diff --git a/platforms/Windows/Directory.Build.props b/platforms/Windows/Directory.Build.props index ba1ec3e7..9313f66b 100644 --- a/platforms/Windows/Directory.Build.props +++ b/platforms/Windows/Directory.Build.props @@ -33,7 +33,7 @@ $(BaseOutputPath)obj\$(MSBuildProjectName)\ $(BaseOutputPath)$(Configuration)\$(ProductArchitecture)\ - web + online @@ -56,7 +56,7 @@ high - + high false diff --git a/platforms/Windows/bundle/installer.wxs b/platforms/Windows/bundle/installer.wxs index 6a7ff083..a86e1f2e 100644 --- a/platforms/Windows/bundle/installer.wxs +++ b/platforms/Windows/bundle/installer.wxs @@ -10,7 +10,7 @@ diff --git a/platforms/Windows/bundle/theme.wxl b/platforms/Windows/bundle/theme.wxl deleted file mode 100644 index 032939db..00000000 --- a/platforms/Windows/bundle/theme.wxl +++ /dev/null @@ -1,81 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/platforms/Windows/bundle/theme.xml b/platforms/Windows/bundle/theme.xml index 8961bd7f..03fced0b 100644 --- a/platforms/Windows/bundle/theme.xml +++ b/platforms/Windows/bundle/theme.xml @@ -57,12 +57,12 @@ - #(loc.OptionsInstallBld) - #(loc.OptionsInstallCli) - #(loc.OptionsInstallDbg) - #(loc.OptionsInstallIde) - #(loc.OptionsInstallRtl) - #(loc.OptionsInstallSdk) + #(loc.Bld_ProductName) + #(loc.Cli_ProductName) + #(loc.Dbg_ProductName) + #(loc.Ide_ProductName) + #(loc.Rtl_ProductName) + #(loc.Sdk_ProductName) #(loc.OptionsInstallRedistX86) #(loc.OptionsInstallRedistAMD64) #(loc.OptionsInstallRedistArm64) diff --git a/platforms/Windows/rtl/msi/rtlmsi.wxs b/platforms/Windows/rtl/msi/rtlmsi.wxs index 610e4e62..5b4ca3de 100644 --- a/platforms/Windows/rtl/msi/rtlmsi.wxs +++ b/platforms/Windows/rtl/msi/rtlmsi.wxs @@ -2,7 +2,7 @@ @@ -30,7 +30,7 @@ - + diff --git a/platforms/Windows/shared/swift.en-us.wxl b/platforms/Windows/shared/swift.en-us.wxl index c995a3fd..f7b4ac65 100644 --- a/platforms/Windows/shared/swift.en-us.wxl +++ b/platforms/Windows/shared/swift.en-us.wxl @@ -1,14 +1,88 @@ + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 1bcde72da327a0c6b4a7cfac1cd3e09061d1b9fe Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Sat, 19 Aug 2023 15:51:06 -0400 Subject: [PATCH 17/25] Build three host-architecture SDK packages. --- platforms/Windows/Directory.Build.props | 18 ++++++++ .../Windows/SideBySideUpgradeStrategy.props | 4 +- platforms/Windows/bundle/installer.wixproj | 4 +- platforms/Windows/bundle/installer.wxs | 28 ++++++++---- platforms/Windows/bundle/theme.xml | 7 ++- platforms/Windows/rtl/lib/rtllib.wixproj | 5 --- platforms/Windows/rtl/msi/rtlmsi.wixproj | 14 ++++-- platforms/Windows/rtl/msm/rtlmsm.wixproj | 14 ++++-- .../Windows/samples/tests/SxS/BuildTests.cmd | 2 + platforms/Windows/sdk/sdk.wixproj | 25 +++++++---- platforms/Windows/sdk/sdk.wxs | 45 ++++--------------- platforms/Windows/shared/swift.en-us.wxl | 4 -- 12 files changed, 94 insertions(+), 76 deletions(-) diff --git a/platforms/Windows/Directory.Build.props b/platforms/Windows/Directory.Build.props index 9313f66b..a5c0ebe2 100644 --- a/platforms/Windows/Directory.Build.props +++ b/platforms/Windows/Directory.Build.props @@ -31,6 +31,7 @@ $(RootBuildFolder) $(BaseOutputPath)\ $(BaseOutputPath)obj\$(MSBuildProjectName)\ + $(BaseIntermediateOutputPath)$(ProductArchitecture)\$(Configuration)\ $(BaseOutputPath)$(Configuration)\$(ProductArchitecture)\ online @@ -66,6 +67,21 @@ + + $(PLATFORM_ROOT_X86) + $(SDK_ROOT_X86) + + + + $(PLATFORM_ROOT_AMD64) + $(SDK_ROOT_AMD64) + + + + $(PLATFORM_ROOT_ARM64) + $(SDK_ROOT_ARM64) + + $(PackageCompressionLevel) @@ -78,6 +94,8 @@ IsBundleCompressed=$(IsBundleCompressed); ArePackageCabsEmbedded=$(ArePackageCabsEmbedded); BaseReleaseDownloadUrl=$(BaseReleaseDownloadUrl); + SDK_ROOT=$(SDK_ROOT); + PLATFORM_ROOT=$(PLATFORM_ROOT); diff --git a/platforms/Windows/SideBySideUpgradeStrategy.props b/platforms/Windows/SideBySideUpgradeStrategy.props index 1f884cdf..d027e378 100644 --- a/platforms/Windows/SideBySideUpgradeStrategy.props +++ b/platforms/Windows/SideBySideUpgradeStrategy.props @@ -22,7 +22,9 @@ {91D382AF-1E92-44DC-A4AD-AEE91C1B5160} {8DD91C86-D13D-490B-B06B-9522A9CF504C} {BEA8C6DC-F73E-445B-9486-2333D1CF2886} - {4C37A396-D9E2-490A-89B7-0A3D271D847F} + {443F4D7F-38F3-47C8-9BEE-37FEB01D13C8} + {762D10FE-EBE5-4554-BB78-FB13A4A487E3} + {9749D9E6-E860-4FF6-9E8A-525270F471A3} diff --git a/platforms/Windows/bundle/installer.wixproj b/platforms/Windows/bundle/installer.wixproj index 22a805ec..1c6bb371 100644 --- a/platforms/Windows/bundle/installer.wixproj +++ b/platforms/Windows/bundle/installer.wixproj @@ -14,6 +14,8 @@ - + + + diff --git a/platforms/Windows/bundle/installer.wxs b/platforms/Windows/bundle/installer.wxs index a86e1f2e..0a91d810 100644 --- a/platforms/Windows/bundle/installer.wxs +++ b/platforms/Windows/bundle/installer.wxs @@ -27,10 +27,9 @@ - - - - + + + - - - - - - - - - - - - - - + + + diff --git a/platforms/Windows/shared/swift.en-us.wxl b/platforms/Windows/shared/swift.en-us.wxl index f7b4ac65..8c3c7d8f 100644 --- a/platforms/Windows/shared/swift.en-us.wxl +++ b/platforms/Windows/shared/swift.en-us.wxl @@ -10,16 +10,12 @@ - - - - From d00ef2b5a55d1b9e96b51c571ed7bee2c55a6521 Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Mon, 21 Aug 2023 15:04:37 -0400 Subject: [PATCH 18/25] For consistency, use loc string for Manufacturer. --- platforms/Windows/bld/bld.wxs | 2 +- platforms/Windows/bundle/installer.wxs | 2 +- platforms/Windows/cli/cli.wxs | 2 +- platforms/Windows/dbg/dbg.wxs | 2 +- platforms/Windows/ide/ide.wxs | 2 +- platforms/Windows/rtl/msi/rtlmsi.wxs | 2 +- platforms/Windows/sdk/sdk.wxs | 2 +- platforms/Windows/shared/swift.en-us.wxl | 1 + 8 files changed, 8 insertions(+), 7 deletions(-) diff --git a/platforms/Windows/bld/bld.wxs b/platforms/Windows/bld/bld.wxs index 4065fc60..860ccf3b 100644 --- a/platforms/Windows/bld/bld.wxs +++ b/platforms/Windows/bld/bld.wxs @@ -1,7 +1,7 @@  diff --git a/platforms/Windows/cli/cli.wxs b/platforms/Windows/cli/cli.wxs index b6251872..5d909bc5 100644 --- a/platforms/Windows/cli/cli.wxs +++ b/platforms/Windows/cli/cli.wxs @@ -1,7 +1,7 @@  + From e4008ae845730577cbed93578dfe8c02c5b14b3d Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Mon, 21 Aug 2023 15:20:00 -0400 Subject: [PATCH 19/25] Use ProductArchitecture to get product names. --- platforms/Windows/bundle/theme.xml | 2 +- platforms/Windows/rtl/msi/rtlmsi.wxs | 4 ++-- platforms/Windows/sdk/sdk.wxs | 4 ++-- platforms/Windows/shared/swift.en-us.wxl | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/platforms/Windows/bundle/theme.xml b/platforms/Windows/bundle/theme.xml index 8d85c39f..5e09fbf7 100644 --- a/platforms/Windows/bundle/theme.xml +++ b/platforms/Windows/bundle/theme.xml @@ -63,7 +63,7 @@ #(loc.Ide_ProductName) #(loc.Rtl_ProductName) #(loc.Sdk_ProductName_x86) - #(loc.Sdk_ProductName_x64) + #(loc.Sdk_ProductName_amd64) #(loc.Sdk_ProductName_arm64)