Speed up build of sample folder (#1724)
* Speedup build of sample folder Signed-off-by: Alan Jowett <alanjo@microsoft.com>
This commit is contained in:
Родитель
46cbad6c44
Коммит
3212758312
|
@ -95,6 +95,8 @@
|
|||
popd
|
||||
</Command>
|
||||
<Outputs>$(OutputPath)%(Filename).o;$(OutputPath)%(Filename)_um.dll;$(OutputPath)%(Filename).sys</Outputs>
|
||||
<!-- Don't run bpf2c in parallel when built with fuzzing flags as this triggers failures. -->
|
||||
<BuildInParallel Condition="'$(Fuzzer)'!='True' And '$(AddressSanitizer)'!='True'">true</BuildInParallel>
|
||||
</CustomBuild>
|
||||
</ItemGroup>
|
||||
<!-- For BPF programs that fail verification, build native images without verification only for Debug build. -->
|
||||
|
@ -110,6 +112,8 @@
|
|||
popd
|
||||
</Command>
|
||||
<Outputs>$(OutputPath)%(Filename).o</Outputs>
|
||||
<!-- Don't run bpf2c in parallel when built with fuzzing flags as this triggers failures. -->
|
||||
<BuildInParallel Condition="'$(Fuzzer)'!='True' And '$(AddressSanitizer)'!='True'">true</BuildInParallel>
|
||||
</CustomBuild>
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="'$(Configuration)'=='Release'">
|
||||
|
@ -120,6 +124,7 @@
|
|||
clang $(ClangFlags) -I../xdp -I../socket -I./ext/inc -c unsafe\%(Filename).c -o $(OutputPath)%(Filename).o
|
||||
</Command>
|
||||
<Outputs>$(OutputPath)%(Filename).o</Outputs>
|
||||
<BuildInParallel>true</BuildInParallel>
|
||||
</CustomBuild>
|
||||
</ItemGroup>
|
||||
<!-- Build BPF programs that pass verification and build native images for them but require custom program type. -->
|
||||
|
@ -133,6 +138,8 @@
|
|||
popd
|
||||
</Command>
|
||||
<Outputs>$(OutputPath)%(Filename).o;$(OutputPath)%(Filename)_um.dll;$(OutputPath)%(Filename).sys</Outputs>
|
||||
<!-- Don't run bpf2c in parallel when built with fuzzing flags as this triggers failures. -->
|
||||
<BuildInParallel Condition="'$(Fuzzer)'!='True' And '$(AddressSanitizer)'!='True'">true</BuildInParallel>
|
||||
</CustomBuild>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
|
|
|
@ -36,6 +36,18 @@ if (!$fileExists) {
|
|||
throw $errorString
|
||||
}
|
||||
|
||||
$TempDir = "$OutDir\$ProgramName"
|
||||
|
||||
if ($KernelMode) {
|
||||
$TempDir += "_km"
|
||||
}
|
||||
else {
|
||||
$TempDir += "_um"
|
||||
}
|
||||
|
||||
mkdir -Force $TempDir
|
||||
Copy-Item -Path "$ProgramName.o" -Destination "$TempDir\"
|
||||
cd $TempDir
|
||||
|
||||
if ($KernelMode) {
|
||||
$ProjectFile = "$ProgramName.vcxproj"
|
||||
|
@ -52,7 +64,7 @@ if ($PSBoundParameters.ContainsKey("Type")) {
|
|||
$AdditionalOptions += " --type $Type"
|
||||
}
|
||||
|
||||
msbuild /p:BinDir="$BinDir\" /p:OutDir="$PWD\" /p:IncludeDir="$IncludeDir" /p:Configuration="$Configuration" /p:Platform="$Platform" /p:ProgramName="$ProgramName" /p:AdditionalOptions="$AdditionalOptions" $ProjectFile
|
||||
msbuild /p:BinDir="$BinDir\" /p:OutDir="$OutDir\" /p:IncludeDir="$IncludeDir" /p:Configuration="$Configuration" /p:Platform="$Platform" /p:ProgramName="$ProgramName" /p:AdditionalOptions="$AdditionalOptions" $ProjectFile
|
||||
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
throw "Build failed for $ProgramName.o"
|
||||
|
|
Загрузка…
Ссылка в новой задаче