aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBob Arnson <bob@firegiant.com>2021-07-11 17:16:48 -0400
committerBob Arnson <bob@firegiant.com>2021-07-17 20:39:11 -0400
commit5b2b06c9bffb4e6f17409cec41bc0b4b8dab4c90 (patch)
tree32c2d63cfb0a6c94307d58d93efc2d61e9a0dc30
parentb452e816019d35aba71693bfc8826a8a52df457c (diff)
downloadwix-5b2b06c9bffb4e6f17409cec41bc0b4b8dab4c90.tar.gz
wix-5b2b06c9bffb4e6f17409cec41bc0b4b8dab4c90.tar.bz2
wix-5b2b06c9bffb4e6f17409cec41bc0b4b8dab4c90.zip
Build api segment via traversal projects.
79s -> 21s on my octocore machine.
-rw-r--r--src/api/api.cmd31
-rw-r--r--src/api/api.proj9
-rw-r--r--src/api/burn/balutil/balutil.nuspec4
-rw-r--r--src/api/burn/burn.proj40
-rw-r--r--src/api/wix/wix.proj11
5 files changed, 67 insertions, 28 deletions
diff --git a/src/api/api.cmd b/src/api/api.cmd
index db8d5183..75303ea2 100644
--- a/src/api/api.cmd
+++ b/src/api/api.cmd
@@ -8,36 +8,15 @@
8 8
9@echo Building api %_C% 9@echo Building api %_C%
10 10
11:: burn 11:: restore
12 12:: build
13nuget restore burn\api_burn.sln || exit /b 13:: pack
14 14msbuild -m -p:Configuration=%_C% api.proj || exit /b
15msbuild -p:Configuration=%_C%;Platform=x86;PlatformToolset=v142 burn\api_burn.sln || exit /b
16msbuild -p:Configuration=%_C%;Platform=x64;PlatformToolset=v142 burn\api_burn.sln || exit /b
17msbuild -p:Configuration=%_C%;Platform=ARM64;PlatformToolset=v142 burn\api_burn.sln || exit /b
18
19msbuild -p:Configuration=%_C%;Platform=x86;PlatformToolset=v141 burn\api_burn.sln || exit /b
20msbuild -p:Configuration=%_C%;Platform=x64;PlatformToolset=v141 burn\api_burn.sln || exit /b
21msbuild -p:Configuration=%_C%;Platform=ARM64;PlatformToolset=v141 burn\api_burn.sln || exit /b
22
23msbuild -p:Configuration=%_C%;Platform=x86;PlatformToolset=v140 burn\api_burn.sln || exit /b
24msbuild -p:Configuration=%_C%;Platform=x64;PlatformToolset=v140 burn\api_burn.sln || exit /b
25 15
16:: test
26dotnet test -c %_C% --no-build burn\test\WixToolsetTest.Mba.Core\WixToolsetTest.Mba.Core.csproj || exit /b 17dotnet test -c %_C% --no-build burn\test\WixToolsetTest.Mba.Core\WixToolsetTest.Mba.Core.csproj || exit /b
27
28msbuild -t:PackNative -p:Configuration=%_C% burn\balutil\balutil.vcxproj || exit /b
29msbuild -t:PackNative -p:Configuration=%_C% burn\bextutil\bextutil.vcxproj || exit /b
30msbuild -t:PackNative -Restore -p:Configuration=%_C% burn\WixToolset.BootstrapperCore.Native\WixToolset.BootstrapperCore.Native.proj || exit /b
31msbuild -t:Pack -p:Configuration=%_C% -p:NoBuild=true burn\WixToolset.Mba.Core\WixToolset.Mba.Core.csproj || exit /b
32
33
34:: wix
35
36msbuild -Restore -p:Configuration=%_C% wix\api_wix.sln || exit /b
37
38dotnet test -c %_C% --no-build wix\api_wix.sln || exit /b 18dotnet test -c %_C% --no-build wix\api_wix.sln || exit /b
39 19
40msbuild -t:Pack -p:Configuration=%_C% -p:NoBuild=true wix\api_wix.sln || exit /b
41 20
42@popd 21@popd
43@endlocal 22@endlocal
diff --git a/src/api/api.proj b/src/api/api.proj
new file mode 100644
index 00000000..6d7a4188
--- /dev/null
+++ b/src/api/api.proj
@@ -0,0 +1,9 @@
1<Project Sdk="Microsoft.Build.Traversal/3.0.23">
2 <ItemGroup>
3 <ProjectReference Include="burn\burn.proj" Targets="Restore" BuildInParallel="false" />
4 <ProjectReference Include="wix\wix.proj" Targets="Restore" BuildInParallel="false" />
5
6 <ProjectReference Include="burn\burn.proj" />
7 <ProjectReference Include="wix\wix.proj" />
8 </ItemGroup>
9</Project>
diff --git a/src/api/burn/balutil/balutil.nuspec b/src/api/burn/balutil/balutil.nuspec
index 82509140..2474b2ea 100644
--- a/src/api/burn/balutil/balutil.nuspec
+++ b/src/api/burn/balutil/balutil.nuspec
@@ -20,11 +20,11 @@
20 <files> 20 <files>
21 <file src="$projectFolder$\build\$id$.props" target="build\" /> 21 <file src="$projectFolder$\build\$id$.props" target="build\" />
22 <file src="$projectFolder$\inc\*" target="build\native\include" /> 22 <file src="$projectFolder$\inc\*" target="build\native\include" />
23 <!-- <file src="..\..\v140\x86\balutil.lib" target="build\native\v140\x86" /> 23 <file src="..\..\v140\x86\balutil.lib" target="build\native\v140\x86" />
24 <file src="..\..\v140\x64\balutil.lib" target="build\native\v140\x64" /> 24 <file src="..\..\v140\x64\balutil.lib" target="build\native\v140\x64" />
25 <file src="..\..\v141\x86\balutil.lib" target="build\native\v141\x86" /> 25 <file src="..\..\v141\x86\balutil.lib" target="build\native\v141\x86" />
26 <file src="..\..\v141\x64\balutil.lib" target="build\native\v141\x64" /> 26 <file src="..\..\v141\x64\balutil.lib" target="build\native\v141\x64" />
27 <file src="..\..\v141\ARM64\balutil.lib" target="build\native\v141\ARM64" /> --> 27 <file src="..\..\v141\ARM64\balutil.lib" target="build\native\v141\ARM64" />
28 <file src="..\..\v142\x86\balutil.lib" target="build\native\v142\x86" /> 28 <file src="..\..\v142\x86\balutil.lib" target="build\native\v142\x86" />
29 <file src="..\..\v142\x64\balutil.lib" target="build\native\v142\x64" /> 29 <file src="..\..\v142\x64\balutil.lib" target="build\native\v142\x64" />
30 <file src="..\..\v142\ARM64\balutil.lib" target="build\native\v142\ARM64" /> 30 <file src="..\..\v142\ARM64\balutil.lib" target="build\native\v142\ARM64" />
diff --git a/src/api/burn/burn.proj b/src/api/burn/burn.proj
new file mode 100644
index 00000000..6020efa2
--- /dev/null
+++ b/src/api/burn/burn.proj
@@ -0,0 +1,40 @@
1<Project Sdk="Microsoft.Build.Traversal/3.0.23">
2 <ItemGroup>
3 <!-- Restore: Explicitly restore the test projects, which need some hand-holding. -->
4 <ProjectReference Include="test\BalUtilUnitTest\BalUtilUnitTest.vcxproj" Targets="Restore" BuildInParallel="false" />
5 <ProjectReference Include="test\BextUtilUnitTest\BextUtilUnitTest.vcxproj" Targets="Restore" BuildInParallel="false" />
6
7 <!-- Build -->
8
9 <!-- Let bextutil build balutil. -->
10 <ProjectReference Include="bextutil\bextutil.vcxproj" Properties="Platform=x86;PlatformToolset=v140" />
11 <ProjectReference Include="bextutil\bextutil.vcxproj" Properties="Platform=x64;PlatformToolset=v140" />
12 <ProjectReference Include="bextutil\bextutil.vcxproj" Properties="Platform=x86;PlatformToolset=v141" />
13 <ProjectReference Include="bextutil\bextutil.vcxproj" Properties="Platform=x64;PlatformToolset=v141" />
14 <ProjectReference Include="bextutil\bextutil.vcxproj" Properties="Platform=ARM64;PlatformToolset=v141" />
15 <ProjectReference Include="bextutil\bextutil.vcxproj" Properties="Platform=x86" />
16 <ProjectReference Include="bextutil\bextutil.vcxproj" Properties="Platform=x64" />
17 <ProjectReference Include="bextutil\bextutil.vcxproj" Properties="Platform=ARM64" />
18
19 <ProjectReference Include="mbanative\mbanative.vcxproj" Properties="Platform=x86;PlatformToolset=v140" />
20 <ProjectReference Include="mbanative\mbanative.vcxproj" Properties="Platform=x64;PlatformToolset=v140" />
21 <ProjectReference Include="mbanative\mbanative.vcxproj" Properties="Platform=x86;PlatformToolset=v141" />
22 <ProjectReference Include="mbanative\mbanative.vcxproj" Properties="Platform=x64;PlatformToolset=v141" />
23 <ProjectReference Include="mbanative\mbanative.vcxproj" Properties="Platform=ARM64;PlatformToolset=v141" />
24 <ProjectReference Include="mbanative\mbanative.vcxproj" Properties="Platform=x86" />
25 <ProjectReference Include="mbanative\mbanative.vcxproj" Properties="Platform=x64" />
26 <ProjectReference Include="mbanative\mbanative.vcxproj" Properties="Platform=ARM64" />
27
28 <ProjectReference Include="WixToolset.Mba.Core\WixToolset.Mba.Core.csproj" Properties="Platform=AnyCPU" />
29
30 <!-- Test -->
31 <ProjectReference Include="test\BalUtilUnitTest\BalUtilUnitTest.vcxproj" Targets="Test" />
32 <ProjectReference Include="test\BextUtilUnitTest\BextUtilUnitTest.vcxproj" Targets="Test" />
33
34 <!-- Pack -->
35 <ProjectReference Include="balutil\balutil.vcxproj" Targets="PackNative" />
36 <ProjectReference Include="bextutil\bextutil.vcxproj" Targets="PackNative" />
37 <ProjectReference Include="WixToolset.BootstrapperCore.Native\WixToolset.BootstrapperCore.Native.proj" Targets="Restore;PackNative" />
38 <ProjectReference Include="WixToolset.Mba.Core\WixToolset.Mba.Core.csproj" Properties="NoBuild=true" Targets="Pack" />
39 </ItemGroup>
40</Project>
diff --git a/src/api/wix/wix.proj b/src/api/wix/wix.proj
new file mode 100644
index 00000000..3db83283
--- /dev/null
+++ b/src/api/wix/wix.proj
@@ -0,0 +1,11 @@
1<Project Sdk="Microsoft.Build.Traversal/3.0.23">
2 <ItemGroup>
3 <!-- Build -->
4 <ProjectReference Include="WixToolset.Data\WixToolset.Data.csproj" />
5 <ProjectReference Include="WixToolset.Extensibility\WixToolset.Extensibility.csproj" />
6
7 <!-- Pack -->
8 <ProjectReference Include="WixToolset.Data\WixToolset.Data.csproj" Targets="Pack" />
9 <ProjectReference Include="WixToolset.Extensibility\WixToolset.Extensibility.csproj" Targets="Pack" />
10 </ItemGroup>
11</Project>