mirror of
https://github.com/saymrwulf/onnxruntime.git
synced 2026-05-14 20:48:00 +00:00
### Description <!-- Describe your changes. --> Update various test projects to .net8 from EOL frameworks. Replace the Xamarin based Android and iOS test projects with a MAUI based project that uses .net 8. Add new CoreML flags to C# bindings ### Motivation and Context <!-- - Why is this change required? What problem does it solve? - If it fixes an open issue, please link to the issue here. --> Remove usage of EOL frameworks.
135 lines
6.8 KiB
XML
135 lines
6.8 KiB
XML
<Project Sdk="Microsoft.NET.Sdk">
|
|
|
|
<PropertyGroup>
|
|
<TargetFramework>net8.0</TargetFramework>
|
|
<IsPackable>false</IsPackable>
|
|
<OnnxRuntimeCsharpRoot>$(ProjectDir)..\..</OnnxRuntimeCsharpRoot>
|
|
<Platforms>AnyCPU;x86</Platforms>
|
|
<OutputPath>bin\$(Configuration)\</OutputPath>
|
|
<IsLinuxBuild Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Linux)))' == 'true'">true</IsLinuxBuild>
|
|
<IsWindowsBuild Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::Windows)))' == 'true'">true</IsWindowsBuild>
|
|
<IsMacOSBuild Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::IsOSPlatform($([System.Runtime.InteropServices.OSPlatform]::OSX)))' == 'true'">true</IsMacOSBuild>
|
|
<ProtoSrc>$(OnnxSourceDirectory)\onnx</ProtoSrc>
|
|
<!-- following attributes were necessary for the migrated Tensor tests -->
|
|
<LangVersion>default</LangVersion>
|
|
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
|
|
<SignAssembly>true</SignAssembly> <!-- need signing for friend access to the internals of the Tensors assembly -->
|
|
<AssemblyOriginatorKeyFile>..\..\OnnxRuntime.snk</AssemblyOriginatorKeyFile>
|
|
<Configurations>Debug;Release;RelWithDebInfo</Configurations>
|
|
<!-- end -->
|
|
|
|
<!-- Training build property.
|
|
Should be set to true when training is enabled in onnxruntime native binary
|
|
Note: This property should be set when building the csharp solution independently.
|
|
When building using the build.py script, setting the necessary properties is handled by the script. -->
|
|
<TrainingEnabledNativeBuild Condition="'$(TrainingEnabledNativeBuild)' == ''">false</TrainingEnabledNativeBuild>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup Condition="'$(TrainingEnabledNativeBuild)'=='true'">
|
|
<ExtraDefineConstants>$(ExtraDefineConstants);__TRAINING_ENABLED_NATIVE_BUILD__</ExtraDefineConstants>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup>
|
|
<DefineConstants>__NET_CORE_APP__;$(DefineConstants);$(ExtraDefineConstants)</DefineConstants>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup Condition="'$(IsLinuxBuild)'=='true'">
|
|
<!--internal build related properties for Linux -->
|
|
<OnnxRuntimeBuildDirectory Condition="'$(OnnxRuntimeBuildDirectory)'==''">$(OnnxRuntimeCsharpRoot)\..\build\Linux</OnnxRuntimeBuildDirectory>
|
|
<NativeBuildOutputDir>$(OnnxRuntimeBuildDirectory)\$(Configuration)</NativeBuildOutputDir>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup Condition="'$(IsWindowsBuild)'=='true'">
|
|
<!--internal build related properties for Windows -->
|
|
<OnnxRuntimeBuildDirectory Condition="'$(OnnxRuntimeBuildDirectory)'==''">$(OnnxRuntimeCsharpRoot)\..\build\Windows</OnnxRuntimeBuildDirectory>
|
|
<NativeBuildOutputDir>$(OnnxRuntimeBuildDirectory)\$(Configuration)\$(Configuration)</NativeBuildOutputDir>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup Condition="'$(IsMacOSBuild)'=='true'">
|
|
<!--internal build related properties for OSX -->
|
|
<OnnxRuntimeBuildDirectory Condition="'$(OnnxRuntimeBuildDirectory)'==''">$(OnnxRuntimeCsharpRoot)\..\build\MacOS</OnnxRuntimeBuildDirectory>
|
|
<NativeBuildOutputDir>$(OnnxRuntimeBuildDirectory)\$(Configuration)</NativeBuildOutputDir>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.11.0" />
|
|
<PackageReference Include="xunit" Version="2.9.0" />
|
|
<PackageReference Include="xunit.runner.visualstudio" Version="2.8.2" />
|
|
</ItemGroup>
|
|
|
|
<!--
|
|
Copy the required libraries for testing to the output directory.
|
|
NOTE: We use a wildcard for custom_op_library even though that isn't necessary, so it doesn't fail
|
|
if the custom op library isn't present, which it may not be depending on the ORT build settings.
|
|
-->
|
|
<ItemGroup>
|
|
<None Condition="'$(IsWindowsBuild)'=='true'"
|
|
Include="$(NativeBuildOutputDir)\onnxruntime.dll;
|
|
$(NativeBuildOutputDir)\onnxruntime.pdb;
|
|
$(NativeBuildOutputDir)\onnxruntime_providers_*.dll;
|
|
$(NativeBuildOutputDir)\onnxruntime_providers_*.pdb;
|
|
$(NativeBuildOutputDir)\custom_op_library*.dll">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
<Visible>false</Visible>
|
|
</None>
|
|
|
|
<None Condition="'$(IsLinuxBuild)'=='true'"
|
|
Include="$(NativeBuildOutputDir)\libonnxruntime.so;
|
|
$(NativeBuildOutputDir)\libonnxruntime_providers_*.so;
|
|
$(NativeBuildOutputDir)\libcustom_op_library*.so">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
<Visible>false</Visible>
|
|
</None>
|
|
|
|
<None Condition="'$(IsMacOSBuild)'=='true'"
|
|
Include="$(NativeBuildOutputDir)\libonnxruntime.dylib;
|
|
$(NativeBuildOutputDir)\libonnxruntime_providers_*.dylib;
|
|
$(NativeBuildOutputDir)\libcustom_op_library*.dylib">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
<Visible>false</Visible>
|
|
</None>
|
|
|
|
<None Include="$(OnnxRuntimeCSharpRoot)\testdata\*">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
<Visible>false</Visible>
|
|
</None>
|
|
<None Include="$(OnnxRuntimeCSharpRoot)\..\onnxruntime\test\testdata\overridable_initializer.onnx">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
<Visible>false</Visible>
|
|
</None>
|
|
<None Include="$(OnnxRuntimeCSharpRoot)\..\onnxruntime\test\testdata\capi_symbolic_dims.onnx">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
<Visible>false</Visible>
|
|
</None>
|
|
<None Include="$(OnnxRuntimeCSharpRoot)\..\onnxruntime\test\testdata\custom_op_library\custom_op_test.onnx">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
<Visible>false</Visible>
|
|
</None>
|
|
<BuildEnvVars Include="OnnxRuntimeBuildDirectory=$(OnnxRuntimeBuildDirectory)" />
|
|
</ItemGroup>
|
|
|
|
<Target Name="DefineBuildEnvironmentVariables" BeforeTargets="Build">
|
|
<WriteLinesToFile File="$(OutputPath)\Properties.txt" Lines="@(BuildEnvVars)" Overwrite="true" />
|
|
</Target>
|
|
|
|
<ItemGroup>
|
|
<Service Include="{508349b6-6b84-4df5-91f0-309beebad82d}" />
|
|
</ItemGroup>
|
|
|
|
<!-- NOTE: The xUnit framework doesn't pickup the tests defined within the referenced Microsoft.ML.OnnxRuntime.Tests.Common project -->
|
|
<ItemGroup>
|
|
<Compile Include="..\Microsoft.ML.OnnxRuntime.Tests.Common\**\*Test.cs" />
|
|
<Compile Include="..\Microsoft.ML.OnnxRuntime.Tests.Common\**\*Tests.cs" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<None Include="$(OnnxRuntimeCSharpRoot)\..\onnxruntime\test\testdata\training_api\**\*.*">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
<Visible>false</Visible>
|
|
</None>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<ProjectReference Include="..\Microsoft.ML.OnnxRuntime.Tests.Common\Microsoft.ML.OnnxRuntime.Tests.Common.csproj" />
|
|
</ItemGroup>
|
|
</Project>
|