|
5 | 5 | <SentryNativeLibraryName>sentry-native</SentryNativeLibraryName>
|
6 | 6 | <SentryNativeBuildScript>../../scripts/build-sentry-native.ps1</SentryNativeBuildScript>
|
7 | 7 | <SentryNativeBuildInputs>../../.git/modules/modules/sentry-native/HEAD;$(MSBuildThisFileDirectory)Sentry.Native.targets;$(SentryNativeBuildScript)</SentryNativeBuildInputs>
|
8 |
| - <SentryNativeOutputDirectory>$(MSBuildThisFileDirectory)sentry-native\</SentryNativeOutputDirectory> |
| 8 | + <SentryNativeStaticDirectory>$(MSBuildThisFileDirectory)sentry-native\</SentryNativeStaticDirectory> |
| 9 | + <SentryNativeSharedDirectory>$(MSBuildThisFileDirectory)runtimes\</SentryNativeSharedDirectory> |
9 | 10 | <!-- List of runtime identifiers: https://github.com/dotnet/runtime/blob/main/src/libraries/Microsoft.NETCore.Platforms/src/runtime.json -->
|
10 |
| - <NativeLibRelativePath-win-x64>win-x64</NativeLibRelativePath-win-x64> |
11 |
| - <SentryNativeOutputDirectory-win-x64>$(SentryNativeOutputDirectory)$(NativeLibRelativePath-win-x64)\</SentryNativeOutputDirectory-win-x64> |
12 |
| - <NativeLibRelativePath-win-arm64>win-arm64</NativeLibRelativePath-win-arm64> |
13 |
| - <SentryNativeOutputDirectory-win-arm64>$(SentryNativeOutputDirectory)$(NativeLibRelativePath-win-arm64)\</SentryNativeOutputDirectory-win-arm64> |
14 |
| - <NativeLibRelativePath-linux-x64>linux-x64</NativeLibRelativePath-linux-x64> |
15 |
| - <SentryNativeOutputDirectory-linux-x64>$(SentryNativeOutputDirectory)$(NativeLibRelativePath-linux-x64)\</SentryNativeOutputDirectory-linux-x64> |
16 |
| - <NativeLibRelativePath-linux-musl-x64>linux-musl-x64</NativeLibRelativePath-linux-musl-x64> |
17 |
| - <SentryNativeOutputDirectory-linux-musl-x64>$(SentryNativeOutputDirectory)$(NativeLibRelativePath-linux-musl-x64)\</SentryNativeOutputDirectory-linux-musl-x64> |
18 |
| - <NativeLibRelativePath-linux-arm64>linux-arm64</NativeLibRelativePath-linux-arm64> |
19 |
| - <SentryNativeOutputDirectory-linux-arm64>$(SentryNativeOutputDirectory)$(NativeLibRelativePath-linux-arm64)\</SentryNativeOutputDirectory-linux-arm64> |
20 |
| - <NativeLibRelativePath-osx>osx</NativeLibRelativePath-osx> |
21 |
| - <SentryNativeOutputDirectory-osx>$(SentryNativeOutputDirectory)$(NativeLibRelativePath-osx)\</SentryNativeOutputDirectory-osx> |
22 |
| - <SentryNativeBuildOutputs Condition="'$(RuntimeIdentifier)' == 'win-x64'">$(SentryNativeOutputDirectory-win-x64)lib$(SentryNativeLibraryName).lib</SentryNativeBuildOutputs> |
23 |
| - <SentryNativeBuildOutputs Condition="'$(RuntimeIdentifier)' == 'win-arm64'">$(SentryNativeOutputDirectory-win-arm64)lib$(SentryNativeLibraryName).lib</SentryNativeBuildOutputs> |
24 |
| - <SentryNativeBuildOutputs Condition="'$(RuntimeIdentifier)' == 'linux-x64'">$(SentryNativeOutputDirectory-linux-x64)lib$(SentryNativeLibraryName).a</SentryNativeBuildOutputs> |
25 |
| - <SentryNativeBuildOutputs Condition="'$(RuntimeIdentifier)' == 'linux-musl-x64'">$(SentryNativeOutputDirectory-linux-musl-x64)lib$(SentryNativeLibraryName).a</SentryNativeBuildOutputs> |
26 |
| - <SentryNativeBuildOutputs Condition="'$(RuntimeIdentifier)' == 'linux-arm64'">$(SentryNativeOutputDirectory-linux-arm64)lib$(SentryNativeLibraryName).a</SentryNativeBuildOutputs> |
27 |
| - <SentryNativeBuildOutputs Condition="$([MSBuild]::IsOsPlatform('OSX'))">$(SentryNativeOutputDirectory-osx)lib$(SentryNativeLibraryName).a</SentryNativeBuildOutputs> |
| 11 | + <SentryNativeBuildOutputs Condition="'$(RuntimeIdentifier)' != '' and $(RuntimeIdentifier.StartsWith('win-'))"> |
| 12 | + $(SentryNativeStaticDirectory)$(RuntimeIdentifier)\$(SentryNativeLibraryName).lib |
| 13 | + $(SentryNativeSharedDirectory)$(RuntimeIdentifier)\native\$(SentryNativeLibraryName).dll; |
| 14 | + </SentryNativeBuildOutputs> |
| 15 | + <SentryNativeBuildOutputs Condition="'$(RuntimeIdentifier)' != '' and $(RuntimeIdentifier.StartsWith('linux-'))"> |
| 16 | + $(SentryNativeStaticDirectory)$(RuntimeIdentifier)\lib$(SentryNativeLibraryName).a |
| 17 | + </SentryNativeBuildOutputs> |
| 18 | + <SentryNativeBuildOutputs Condition="$([MSBuild]::IsOsPlatform('OSX'))"> |
| 19 | + $(SentryNativeStaticDirectory)osx\lib$(SentryNativeLibraryName).a |
| 20 | + </SentryNativeBuildOutputs> |
| 21 | + <HostRuntimeIdentifier>$([System.Runtime.InteropServices.RuntimeInformation]::RuntimeIdentifier)</HostRuntimeIdentifier> |
28 | 22 | </PropertyGroup>
|
29 | 23 |
|
30 | 24 | <!-- Packaging -->
|
|
34 | 28 | </ItemGroup>
|
35 | 29 |
|
36 | 30 | <!-- Packaging the native library (NOTE: $(RuntimeIdentifier) is not set) -->
|
37 |
| - <ItemGroup Condition="'$(CI_PUBLISHING_BUILD)' == 'true' or '$([System.Runtime.InteropServices.RuntimeInformation]::RuntimeIdentifier)' == 'win-x64'"> |
38 |
| - <None Include="$(SentryNativeOutputDirectory-win-x64)$(SentryNativeLibraryName).lib"> |
| 31 | + <ItemGroup Condition="'$(CI_PUBLISHING_BUILD)' == 'true' or '$(HostRuntimeIdentifier)' == 'win-x64'"> |
| 32 | + <None Include="$(SentryNativeStaticDirectory)win-x64\$(SentryNativeLibraryName).lib"> |
39 | 33 | <Pack>true</Pack>
|
40 |
| - <PackagePath>\sentry-native\$(NativeLibRelativePath-win-x64)</PackagePath> |
| 34 | + <PackagePath>\sentry-native\win-x64</PackagePath> |
| 35 | + </None> |
| 36 | + <None Include="$(SentryNativeSharedDirectory)win-x64\native\$(SentryNativeLibraryName).dll" |
| 37 | + Condition="'$(HostRuntimeIdentifier)' == 'win-x64' and ('$(TargetPlatformIdentifier)' == '' or '$(TargetPlatformIdentifier)' == 'windows')"> |
| 38 | + <Pack>true</Pack> |
| 39 | + <PackagePath>\runtimes\win-x64\native</PackagePath> |
| 40 | + <Link>%(Filename)%(Extension)</Link> |
| 41 | + <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> |
41 | 42 | </None>
|
42 | 43 | </ItemGroup>
|
43 | 44 |
|
44 |
| - <ItemGroup Condition="'$(CI_PUBLISHING_BUILD)' == 'true' or '$([System.Runtime.InteropServices.RuntimeInformation]::RuntimeIdentifier)' == 'win-arm64'"> |
45 |
| - <None Include="$(SentryNativeOutputDirectory-win-arm64)$(SentryNativeLibraryName).lib"> |
| 45 | + <ItemGroup Condition="'$(CI_PUBLISHING_BUILD)' == 'true' or '$(HostRuntimeIdentifier)' == 'win-arm64'"> |
| 46 | + <None Include="$(SentryNativeStaticDirectory)win-arm64\$(SentryNativeLibraryName).lib"> |
| 47 | + <Pack>true</Pack> |
| 48 | + <PackagePath>\sentry-native\win-arm64</PackagePath> |
| 49 | + </None> |
| 50 | + <None Include="$(SentryNativeSharedDirectory)win-arm64\native\$(SentryNativeLibraryName).dll" |
| 51 | + Condition="'$(HostRuntimeIdentifier)' == 'win-arm64' and ('$(TargetPlatformIdentifier)' == '' or '$(TargetPlatformIdentifier)' == 'windows')"> |
46 | 52 | <Pack>true</Pack>
|
47 |
| - <PackagePath>\sentry-native\$(NativeLibRelativePath-win-arm64)</PackagePath> |
| 53 | + <PackagePath>\runtimes\win-arm64\native</PackagePath> |
| 54 | + <Link>%(Filename)%(Extension)</Link> |
| 55 | + <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> |
48 | 56 | </None>
|
49 | 57 | </ItemGroup>
|
50 | 58 |
|
51 |
| - <ItemGroup Condition="'$(CI_PUBLISHING_BUILD)' == 'true' or '$([System.Runtime.InteropServices.RuntimeInformation]::RuntimeIdentifier)' == 'linux-x64'"> |
52 |
| - <None Include="$(SentryNativeOutputDirectory-linux-x64)lib$(SentryNativeLibraryName).a"> |
| 59 | + <ItemGroup Condition="'$(CI_PUBLISHING_BUILD)' == 'true' or '$(HostRuntimeIdentifier)' == 'linux-x64'"> |
| 60 | + <None Include="$(SentryNativeStaticDirectory)linux-x64\lib$(SentryNativeLibraryName).a"> |
53 | 61 | <Pack>true</Pack>
|
54 |
| - <PackagePath>\sentry-native\$(NativeLibRelativePath-linux-x64)</PackagePath> |
| 62 | + <PackagePath>\sentry-native\linux-x64</PackagePath> |
55 | 63 | </None>
|
56 | 64 | </ItemGroup>
|
57 | 65 |
|
58 |
| - <ItemGroup Condition="'$(CI_PUBLISHING_BUILD)' == 'true' or '$([System.Runtime.InteropServices.RuntimeInformation]::RuntimeIdentifier)' == 'linux-musl-x64'"> |
59 |
| - <None Include="$(SentryNativeOutputDirectory-linux-musl-x64)lib$(SentryNativeLibraryName).a"> |
| 66 | + <ItemGroup Condition="'$(CI_PUBLISHING_BUILD)' == 'true' or '$(HostRuntimeIdentifier)' == 'linux-musl-x64'"> |
| 67 | + <None Include="$(SentryNativeStaticDirectory)linux-musl-x64\lib$(SentryNativeLibraryName).a"> |
60 | 68 | <Pack>true</Pack>
|
61 |
| - <PackagePath>\sentry-native\$(NativeLibRelativePath-linux-musl-x64)</PackagePath> |
| 69 | + <PackagePath>\sentry-native\linux-musl-x64</PackagePath> |
62 | 70 | </None>
|
63 | 71 | </ItemGroup>
|
64 | 72 |
|
65 |
| - <ItemGroup Condition="'$(CI_PUBLISHING_BUILD)' == 'true' or '$([System.Runtime.InteropServices.RuntimeInformation]::RuntimeIdentifier)' == 'linux-arm64'"> |
66 |
| - <None Include="$(SentryNativeOutputDirectory-linux-arm64)lib$(SentryNativeLibraryName).a"> |
| 73 | + <ItemGroup Condition="'$(CI_PUBLISHING_BUILD)' == 'true' or '$(HostRuntimeIdentifier)' == 'linux-arm64'"> |
| 74 | + <None Include="$(SentryNativeStaticDirectory)linux-arm64\lib$(SentryNativeLibraryName).a"> |
67 | 75 | <Pack>true</Pack>
|
68 |
| - <PackagePath>\sentry-native\$(NativeLibRelativePath-linux-arm64)</PackagePath> |
| 76 | + <PackagePath>\sentry-native\linux-arm64</PackagePath> |
69 | 77 | </None>
|
70 | 78 | </ItemGroup>
|
71 | 79 |
|
72 | 80 | <ItemGroup Condition="'$(CI_PUBLISHING_BUILD)' == 'true' or $([MSBuild]::IsOsPlatform('OSX'))">
|
73 |
| - <None Include="$(SentryNativeOutputDirectory-osx)lib$(SentryNativeLibraryName).a"> |
| 81 | + <None Include="$(SentryNativeStaticDirectory)osx\lib$(SentryNativeLibraryName).a"> |
74 | 82 | <Pack>true</Pack>
|
75 |
| - <PackagePath>\sentry-native\$(NativeLibRelativePath-osx)</PackagePath> |
| 83 | + <PackagePath>\sentry-native\osx</PackagePath> |
76 | 84 | </None>
|
77 | 85 | </ItemGroup>
|
78 | 86 |
|
79 | 87 | <Target Name="CleanNativeSDK" BeforeTargets="CoreClean" Condition="'$(_SentryIsNet8OrGreater)' == 'true'">
|
80 | 88 | <Message Text="Inside Custom Clean" Importance="high"/>
|
81 |
| - <RemoveDir Directories="$(SentryNativeOutputDirectory)" /> |
| 89 | + <RemoveDir Directories="$(SentryNativeStaticDirectory)" /> |
| 90 | + <RemoveDir Directories="$(SentryNativeSharedDirectory)" /> |
82 | 91 | <RemoveDir Directories="$(SentryNativeSourceDirectory)build" />
|
| 92 | + <RemoveDir Directories="$(SentryNativeSourceDirectory)build-static" /> |
83 | 93 | </Target>
|
84 | 94 |
|
85 | 95 | <!-- Build the Sentry Native SDK (this only runs on local machines because in CI we expect the SDK to be
|
|
0 commit comments