Created
December 5, 2021 18:47
-
-
Save gus33000/c6c9fdaf50cb31b00433e8f9d715f0c9 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
From 76e3d4ef69998dafa3733429aab9d0fc9a85bf2b Mon Sep 17 00:00:00 2001 | |
From: Gustave Monce <gustave.monce@outlook.com> | |
Date: Sun, 5 Dec 2021 19:45:28 +0100 | |
Subject: [PATCH] Allow builds of Unigram.Native.Calls for ARM64 | |
--- | |
.../Unigram.Native.Calls.vcxproj | 26 +++++++------------ | |
Unigram/Unigram.Native.Calls/packages.config | 2 +- | |
2 files changed, 10 insertions(+), 18 deletions(-) | |
diff --git a/Unigram/Unigram.Native.Calls/Unigram.Native.Calls.vcxproj b/Unigram/Unigram.Native.Calls/Unigram.Native.Calls.vcxproj | |
index 5dbf64727..a791ec98b 100644 | |
--- a/Unigram/Unigram.Native.Calls/Unigram.Native.Calls.vcxproj | |
+++ b/Unigram/Unigram.Native.Calls/Unigram.Native.Calls.vcxproj | |
@@ -1,6 +1,6 @@ | |
<?xml version="1.0" encoding="utf-8"?> | |
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | |
- <Import Project="..\packages\Unigram.WebRTC.x64.91.0.0\build\native\Unigram.WebRTC.x64.props" Condition="Exists('..\packages\Unigram.WebRTC.x64.91.0.0\build\native\Unigram.WebRTC.x64.props')" /> | |
+ <Import Project="..\packages\Microsoft.WinRTC.libwebrtc.uwp.91.0.0-pre\build\native\Microsoft.WinRTC.libwebrtc.uwp.props" Condition="Exists('..\packages\Microsoft.WinRTC.libwebrtc.uwp.91.0.0-pre\build\native\Microsoft.WinRTC.libwebrtc.uwp.props')" /> | |
<Import Project="..\packages\Microsoft.Windows.CppWinRT.2.0.211028.7\build\native\Microsoft.Windows.CppWinRT.props" Condition="Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.211028.7\build\native\Microsoft.Windows.CppWinRT.props')" /> | |
<PropertyGroup Label="Globals"> | |
<CppWinRTOptimized>true</CppWinRTOptimized> | |
@@ -26,6 +26,8 @@ | |
</CppWinRTLibs> | |
<CppWinRTModernIDL>true</CppWinRTModernIDL> | |
<CppWinRTUsePrefixes>true</CppWinRTUsePrefixes> | |
+ <WebRTC_Root>C:\webrtc\src</WebRTC_Root> | |
+ <WebRTC_Output>C:\winrtc\output\msvc\uwp</WebRTC_Output> | |
</PropertyGroup> | |
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> | |
<ItemGroup Label="ProjectConfigurations"> | |
@@ -64,7 +66,7 @@ | |
</ItemGroup> | |
<PropertyGroup Label="Configuration"> | |
<ConfigurationType>DynamicLibrary</ConfigurationType> | |
- <PlatformToolset>v143</PlatformToolset> | |
+ <PlatformToolset>v142</PlatformToolset> | |
<PlatformToolset Condition="'$(VisualStudioVersion)' == '15.0'">v141</PlatformToolset> | |
<PlatformToolset Condition="'$(VisualStudioVersion)' == '16.0'">v142</PlatformToolset> | |
<CharacterSet>Unicode</CharacterSet> | |
@@ -129,8 +131,10 @@ | |
<AdditionalUsingDirectories>$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)</AdditionalUsingDirectories> | |
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\rnnoise\include;C:\tgcalls\tgcalls;C:\tgcalls;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\rnnoise\include;C:\tgcalls\tgcalls;C:\tgcalls;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
+ <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">.\rnnoise\include;C:\tgcalls\tgcalls;C:\tgcalls;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</CompileAsWinRT> | |
<CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</CompileAsWinRT> | |
+ <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">false</CompileAsWinRT> | |
<!--<LanguageStandard>stdcpplatest</LanguageStandard>--> | |
</ClCompile> | |
<Link> | |
@@ -140,28 +144,16 @@ | |
<AdditionalDependencies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">ole32.lib;oleaut32.lib;Kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies> | |
<AdditionalDependencies Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">ole32.lib;oleaut32.lib;Kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies> | |
<AdditionalDependencies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">ole32.lib;oleaut32.lib;Kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies> | |
- </Link> | |
- </ItemDefinitionGroup> | |
- <ItemDefinitionGroup Condition="'$(Configuration)'=='Debug'"> | |
- <ClCompile> | |
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">_DEBUG;USE_AURA=1;_HAS_EXCEPTIONS=0;__STD_C;_CRT_RAND_S;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_DEPRECATE;_ATL_NO_OPENGL;_WINDOWS;CERT_CHAIN_PARA_HAS_EXTRA_FIELDS;PSAPI_VERSION=2;WIN32;_SECURE_ATL;_USING_V110_SDK71_;WINUWP;__WRL_NO_DEFAULT_LIB__;WINAPI_FAMILY=WINAPI_FAMILY_PC_APP;WIN10=_WIN32_WINNT_WIN10;WIN32_LEAN_AND_MEAN;NOMINMAX;_UNICODE;UNICODE;NTDDI_VERSION=NTDDI_WIN10_RS2;_WIN32_WINNT=0x0A00;WINVER=0x0A00;_DEBUG;DYNAMIC_ANNOTATIONS_ENABLED=1;_HAS_ITERATOR_DEBUGGING=0;WEBRTC_ENABLE_PROTOBUF=1;WEBRTC_INCLUDE_INTERNAL_AUDIO_DEVICE;RTC_ENABLE_VP9;HAVE_SCTP;WEBRTC_ARCH_ARM64;WEBRTC_HAS_NEON;WEBRTC_LIBRARY_IMPL;WEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS=0;WEBRTC_WIN;ABSL_ALLOCATOR_NOTHROW=1;HAVE_SCTP;GOOGLE_PROTOBUF_NO_RTTI;GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">$(WebRTC_Root);$(WebRTC_Output)\$(Platform)\$(Configuration)\gen;$(WebRTC_Root)\third_party\abseil-cpp;$(WebRTC_Root)\third_party\libyuv\include;$(WebRTC_Root)\third_party\protobuf\src;$(WebRTC_Output)\$(Platform)\$(Configuration)\gen\protoc_out;$(WebRTC_Root)\third_party\protobuf\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
- </ClCompile> | |
- <Link> | |
<AdditionalDependencies Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">ole32.lib;oleaut32.lib;Kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies> | |
- <AdditionalLibraryDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">$(WebRTC_Output)\$(Platform)\$(Configuration)\obj;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | |
</Link> | |
</ItemDefinitionGroup> | |
<ItemDefinitionGroup Condition="'$(Configuration)'=='Release'"> | |
- <ClCompile> | |
- <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">NDEBUG;USE_AURA=1;_HAS_EXCEPTIONS=0;__STD_C;_CRT_RAND_S;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_DEPRECATE;_ATL_NO_OPENGL;_WINDOWS;CERT_CHAIN_PARA_HAS_EXTRA_FIELDS;PSAPI_VERSION=2;WIN32;_SECURE_ATL;_USING_V110_SDK71_;WINUWP;__WRL_NO_DEFAULT_LIB__;WINAPI_FAMILY=WINAPI_FAMILY_PC_APP;WIN10=_WIN32_WINNT_WIN10;WIN32_LEAN_AND_MEAN;NOMINMAX;_UNICODE;UNICODE;NTDDI_VERSION=NTDDI_WIN10_RS2;_WIN32_WINNT=0x0A00;WINVER=0x0A00;NDEBUG;NVALGRIND;DYNAMIC_ANNOTATIONS_ENABLED=0;WEBRTC_ENABLE_PROTOBUF=1;WEBRTC_INCLUDE_INTERNAL_AUDIO_DEVICE;RTC_ENABLE_VP9;HAVE_SCTP;WEBRTC_ARCH_ARM64;WEBRTC_HAS_NEON;WEBRTC_LIBRARY_IMPL;WEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS=0;WEBRTC_WIN;ABSL_ALLOCATOR_NOTHROW=1;HAVE_SCTP;GOOGLE_PROTOBUF_NO_RTTI;GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
- <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">$(WebRTC_Root);$(WebRTC_Output)\$(Platform)\$(Configuration)\gen;$(WebRTC_Root)\third_party\abseil-cpp;$(WebRTC_Root)\third_party\libyuv\include;$(WebRTC_Root)\third_party\protobuf\src;$(WebRTC_Output)\$(Platform)\$(Configuration)\gen\protoc_out;$(WebRTC_Root)\third_party\protobuf\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
- </ClCompile> | |
<Link> | |
<EnableCOMDATFolding>true</EnableCOMDATFolding> | |
<OptimizeReferences>true</OptimizeReferences> | |
<AdditionalDependencies Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">ole32.lib;oleaut32.lib;Kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies> | |
- <AdditionalLibraryDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">$(WebRTC_Output)\$(Platform)\$(Configuration)\obj;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | |
+ <AdditionalLibraryDirectories Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | |
+ <IgnoreSpecificDefaultLibraries Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">libcmt</IgnoreSpecificDefaultLibraries> | |
<AdditionalDependencies Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">ole32.lib;oleaut32.lib;Kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies> | |
<AdditionalDependencies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">ole32.lib;oleaut32.lib;Kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies> | |
<AdditionalDependencies Condition="'$(Configuration)|$(Platform)'=='Release|x64'">ole32.lib;oleaut32.lib;Kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies> | |
@@ -486,7 +478,7 @@ | |
<Error Condition="!Exists('..\packages\Win2D.uwp.1.26.0\build\native\Win2D.uwp.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Win2D.uwp.1.26.0\build\native\Win2D.uwp.targets'))" /> | |
<Error Condition="!Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.211028.7\build\native\Microsoft.Windows.CppWinRT.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Windows.CppWinRT.2.0.211028.7\build\native\Microsoft.Windows.CppWinRT.props'))" /> | |
<Error Condition="!Exists('..\packages\Microsoft.Windows.CppWinRT.2.0.211028.7\build\native\Microsoft.Windows.CppWinRT.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.Windows.CppWinRT.2.0.211028.7\build\native\Microsoft.Windows.CppWinRT.targets'))" /> | |
- <Error Condition="!Exists('..\packages\Unigram.WebRTC.x64.91.0.0\build\native\Unigram.WebRTC.x64.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Unigram.WebRTC.x64.91.0.0\build\native\Unigram.WebRTC.x64.props'))" /> | |
+ <Error Condition="!Exists('..\packages\Microsoft.WinRTC.libwebrtc.uwp.91.0.0-pre\build\native\Microsoft.WinRTC.libwebrtc.uwp.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Microsoft.WinRTC.libwebrtc.uwp.91.0.0-pre\build\native\Microsoft.WinRTC.libwebrtc.uwp.props'))" /> | |
<Error Condition="!Exists('..\packages\Unigram.FFmpeg.4.1.6\build\native\Unigram.FFmpeg.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Unigram.FFmpeg.4.1.6\build\native\Unigram.FFmpeg.targets'))" /> | |
</Target> | |
</Project> | |
\ No newline at end of file | |
diff --git a/Unigram/Unigram.Native.Calls/packages.config b/Unigram/Unigram.Native.Calls/packages.config | |
index 88e890aaf..431c94d38 100644 | |
--- a/Unigram/Unigram.Native.Calls/packages.config | |
+++ b/Unigram/Unigram.Native.Calls/packages.config | |
@@ -2,6 +2,6 @@ | |
<packages> | |
<package id="Microsoft.Windows.CppWinRT" version="2.0.211028.7" targetFramework="native" /> | |
<package id="Unigram.FFmpeg" version="4.1.6" targetFramework="native" /> | |
- <package id="Unigram.WebRTC.x64" version="91.0.0" targetFramework="native" /> | |
+ <package id="Microsoft.WinRTC.libwebrtc.uwp" version="91.0.0-pre" targetFramework="native" /> | |
<package id="Win2D.uwp" version="1.26.0" targetFramework="native" /> | |
</packages> | |
\ No newline at end of file | |
-- | |
2.34.1.windows.1 | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment