mirror of
https://github.com/nsacyber/HIRS.git
synced 2024-12-30 01:39:05 +00:00
103 lines
6.9 KiB
XML
103 lines
6.9 KiB
XML
|
<Project Sdk="Microsoft.NET.Sdk">
|
|||
|
|
|||
|
<PropertyGroup>
|
|||
|
<OutputType>Exe</OutputType>
|
|||
|
<TargetFramework>net6.0</TargetFramework>
|
|||
|
<RuntimeIdentifiers>linux-x64;win-x64</RuntimeIdentifiers>
|
|||
|
<StartupObject>hirs.Program</StartupObject>
|
|||
|
<PublishSingleFile>true</PublishSingleFile>
|
|||
|
<ImplicitUsings>enable</ImplicitUsings>
|
|||
|
<Nullable>enable</Nullable>
|
|||
|
<PackageVersion>2.2.0</PackageVersion>
|
|||
|
<Release></Release>
|
|||
|
</PropertyGroup>
|
|||
|
|
|||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
|||
|
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
|||
|
<WarningLevel>0</WarningLevel>
|
|||
|
</PropertyGroup>
|
|||
|
|
|||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
|
|||
|
<DefineConstants>TRACE</DefineConstants>
|
|||
|
<WarningLevel>0</WarningLevel>
|
|||
|
</PropertyGroup>
|
|||
|
|
|||
|
<ItemGroup>
|
|||
|
<PackageReference Include="CommandLineParser" Version="2.9.1" />
|
|||
|
<PackageReference Include="Google.Protobuf" Version="3.20.1" />
|
|||
|
<PackageReference Include="Google.Protobuf.Tools" Version="3.20.1">
|
|||
|
<PrivateAssets>all</PrivateAssets> <!-- These assets will be consumed but won't flow to the parent project -->
|
|||
|
</PackageReference>
|
|||
|
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="6.0.0" />
|
|||
|
<PackageReference Include="Microsoft.TSS" Version="2.1.1" />
|
|||
|
<PackageReference Include="Mono.Posix.NETStandard" Version="1.0.0" />
|
|||
|
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
|
|||
|
<PackageReference Include="paccor.HardwareManifestPlugin" Version="1.0.0" />
|
|||
|
<PackageReference Include="paccor.HardwareManifestPluginManager" Version="1.0.0" />
|
|||
|
<PackageReference Include="paccor.paccor_scripts" Version="1.0.1" />
|
|||
|
<PackageReference Include="Packaging.Targets" Version="0.1.220">
|
|||
|
<PrivateAssets>all</PrivateAssets> <!-- These assets will be consumed but won't flow to the parent project -->
|
|||
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
|||
|
</PackageReference>
|
|||
|
<PackageReference Include="Serilog" Version="2.11.0" />
|
|||
|
<PackageReference Include="Serilog.Settings.Configuration" Version="3.3.0" />
|
|||
|
<PackageReference Include="Serilog.Sinks.Console" Version="4.0.1" />
|
|||
|
<PackageReference Include="Serilog.Sinks.File" Version="5.0.0" />
|
|||
|
<PackageReference Include="System.Management" Version="6.0.0" />
|
|||
|
<PackageReference Include="System.Security.Principal.Windows" Version="5.0.0" />
|
|||
|
<PackageReference Include="WiX" Version="3.11.2">
|
|||
|
<PrivateAssets>all</PrivateAssets> <!-- These assets will be consumed but won't flow to the parent project -->
|
|||
|
</PackageReference>
|
|||
|
</ItemGroup>
|
|||
|
|
|||
|
<ItemGroup>
|
|||
|
<Protobuf Include="**/*.proto" />
|
|||
|
</ItemGroup>
|
|||
|
|
|||
|
<ItemGroup>
|
|||
|
<None Update="appsettings.json">
|
|||
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|||
|
<ExcludeFromSingleFile>true</ExcludeFromSingleFile>
|
|||
|
</None>
|
|||
|
</ItemGroup>
|
|||
|
|
|||
|
<Target Name="BuildProto" BeforeTargets="PreBuildEvent">
|
|||
|
<PropertyGroup>
|
|||
|
<FOLDER_PROTO>$(ProjectDir)Resources</FOLDER_PROTO>
|
|||
|
<FOLDER_OUT>$(ProjectDir)generated</FOLDER_OUT>
|
|||
|
</PropertyGroup>
|
|||
|
<PropertyGroup>
|
|||
|
<protoc Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Linux)))' And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)'=='X64'">$(protoc_linux64)</protoc>
|
|||
|
<protoc Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Linux)))' And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)'=='X86'">$(protoc_linux86)</protoc>
|
|||
|
<protoc Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::OSX)))' And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)'=='X64'">$(protoc_macosx64)</protoc>
|
|||
|
<protoc Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::OSX)))' And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)'=='X86'">$(protoc_macosx86)</protoc>
|
|||
|
<protoc Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Windows)))' And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)'=='X64'">$(protoc_windows64)</protoc>
|
|||
|
<protoc Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Windows)))' And '$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)'=='X86'">$(protoc_windows86)</protoc>
|
|||
|
</PropertyGroup>
|
|||
|
<ItemGroup>
|
|||
|
<Compile Condition="!Exists('$(FOLDER_OUT)')" Include="generated/ProvisionerTpm2.cs" /> <!-- Necessary to include the proto file(s) compiled during this prebuild phase, if they didn't exist before. CANNOT use wildcards! -->
|
|||
|
</ItemGroup>
|
|||
|
<Exec Condition="!Exists('$(FOLDER_OUT)')" Command="mkdir $(FOLDER_OUT)" />
|
|||
|
<Exec Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Windows)))'" Command="for /f %%i in ('dir /s /b $(FOLDER_PROTO)\*.proto') do ( $(protoc) -I=$(FOLDER_PROTO) --csharp_out=$(FOLDER_OUT) %%i )" />
|
|||
|
<Exec Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Linux)))'" Command="for file in `ls -1R $(FOLDER_PROTO)/*.proto` ; do $(protoc) -I=$(FOLDER_PROTO) --csharp_out=$(FOLDER_OUT) $file; done " />
|
|||
|
</Target>
|
|||
|
<Import Project="$(NuGetPackageRoot)paccor.paccor_scripts/1.0.1/contentFiles/any/net6.0/resources/paccor.paccor_scripts.targets" Condition="Exists('$(NuGetPackageRoot)paccor.paccor_scripts/1.0.1/contentFiles/any/net6.0/resources/paccor.paccor_scripts.targets')" />
|
|||
|
<Target Name="ImportPaccorScripts" BeforeTargets="PreBuildEvent">
|
|||
|
<ItemGroup>
|
|||
|
<PaccorScriptsLinux Include="$(dotnet_paccor_scripts_directory)/*" />
|
|||
|
<PaccorScriptsWindows Include="$(dotnet_paccor_scripts_windows_directory)/*" />
|
|||
|
</ItemGroup>
|
|||
|
<Message Text="Adding files to plugins/scripts: @(PaccorScriptsLinux)" Importance="high" />
|
|||
|
<Message Text="Adding files to plugins/scripts/windows: @(PaccorScriptsWindows)" Importance="high" />
|
|||
|
<Copy SourceFiles="@(PaccorScriptsLinux)" DestinationFolder="$(ProjectDir)/plugins/scripts/" />
|
|||
|
<Copy SourceFiles="@(PaccorScriptsWindows)" DestinationFolder="$(ProjectDir)/plugins/scripts/windows/" />
|
|||
|
<ItemGroup>
|
|||
|
<Content Include="plugins\**\*.*">
|
|||
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
|||
|
<CopyToPublishDirectory>Always</CopyToPublishDirectory>
|
|||
|
<ExcludeFromSingleFile>true</ExcludeFromSingleFile>
|
|||
|
</Content>
|
|||
|
</ItemGroup>
|
|||
|
</Target>
|
|||
|
</Project>
|