17db96d56Sopenharmony_ci<?xml version="1.0" encoding="utf-8"?>
27db96d56Sopenharmony_ci<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
37db96d56Sopenharmony_ci  <ItemGroup Label="ProjectConfigurations">
47db96d56Sopenharmony_ci    <ProjectConfiguration Include="Release|Win32">
57db96d56Sopenharmony_ci      <Configuration>Release</Configuration>
67db96d56Sopenharmony_ci      <Platform>Win32</Platform>
77db96d56Sopenharmony_ci    </ProjectConfiguration>
87db96d56Sopenharmony_ci    <ProjectConfiguration Include="Release|x64">
97db96d56Sopenharmony_ci      <Configuration>Release</Configuration>
107db96d56Sopenharmony_ci      <Platform>x64</Platform>
117db96d56Sopenharmony_ci    </ProjectConfiguration>
127db96d56Sopenharmony_ci    <ProjectConfiguration Include="Release|ARM">
137db96d56Sopenharmony_ci      <Configuration>Release</Configuration>
147db96d56Sopenharmony_ci      <Platform>ARM</Platform>
157db96d56Sopenharmony_ci    </ProjectConfiguration>
167db96d56Sopenharmony_ci    <ProjectConfiguration Include="Release|ARM64">
177db96d56Sopenharmony_ci      <Configuration>Release</Configuration>
187db96d56Sopenharmony_ci      <Platform>ARM64</Platform>
197db96d56Sopenharmony_ci    </ProjectConfiguration>
207db96d56Sopenharmony_ci  </ItemGroup>
217db96d56Sopenharmony_ci  <PropertyGroup Label="Globals">
227db96d56Sopenharmony_ci    <ProjectGuid>{B5FD6F1D-129E-4BFF-9340-03606FAC7283}</ProjectGuid>
237db96d56Sopenharmony_ci  </PropertyGroup>
247db96d56Sopenharmony_ci
257db96d56Sopenharmony_ci  <Import Project="python.props" />
267db96d56Sopenharmony_ci  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
277db96d56Sopenharmony_ci
287db96d56Sopenharmony_ci  <PropertyGroup Label="Configuration" Condition="$(Platform) == 'Win32'">
297db96d56Sopenharmony_ci    <ConfigurationType>Makefile</ConfigurationType>
307db96d56Sopenharmony_ci    <Bitness>32</Bitness>
317db96d56Sopenharmony_ci    <ArchName>x86</ArchName>
327db96d56Sopenharmony_ci    <OpenSSLPlatform>VC-WIN32</OpenSSLPlatform>
337db96d56Sopenharmony_ci    <SupportSigning>true</SupportSigning>
347db96d56Sopenharmony_ci  </PropertyGroup>
357db96d56Sopenharmony_ci
367db96d56Sopenharmony_ci  <PropertyGroup Label="Configuration" Condition="$(Platform) == 'x64'">
377db96d56Sopenharmony_ci    <ConfigurationType>Makefile</ConfigurationType>
387db96d56Sopenharmony_ci    <Bitness>64</Bitness>
397db96d56Sopenharmony_ci    <ArchName>amd64</ArchName>
407db96d56Sopenharmony_ci    <OpenSSLPlatform>VC-WIN64A-masm</OpenSSLPlatform>
417db96d56Sopenharmony_ci    <SupportSigning>true</SupportSigning>
427db96d56Sopenharmony_ci  </PropertyGroup>
437db96d56Sopenharmony_ci
447db96d56Sopenharmony_ci  <PropertyGroup Label="Configuration" Condition="$(Platform) == 'ARM'">
457db96d56Sopenharmony_ci    <ConfigurationType>Makefile</ConfigurationType>
467db96d56Sopenharmony_ci    <Bitness>ARM</Bitness>
477db96d56Sopenharmony_ci    <ArchName>ARM</ArchName>
487db96d56Sopenharmony_ci    <OpenSSLPlatform>VC-WIN32-ARM</OpenSSLPlatform>
497db96d56Sopenharmony_ci    <SupportSigning>true</SupportSigning>
507db96d56Sopenharmony_ci  </PropertyGroup>
517db96d56Sopenharmony_ci
527db96d56Sopenharmony_ci  <PropertyGroup Label="Configuration" Condition="$(Platform) == 'ARM64'">
537db96d56Sopenharmony_ci    <ConfigurationType>Makefile</ConfigurationType>
547db96d56Sopenharmony_ci    <Bitness>ARM64</Bitness>
557db96d56Sopenharmony_ci    <ArchName>ARM64</ArchName>
567db96d56Sopenharmony_ci    <OpenSSLPlatform>VC-WIN64-ARM</OpenSSLPlatform>
577db96d56Sopenharmony_ci    <SupportSigning>true</SupportSigning>
587db96d56Sopenharmony_ci  </PropertyGroup>
597db96d56Sopenharmony_ci
607db96d56Sopenharmony_ci  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
617db96d56Sopenharmony_ci  <Import Project="pyproject.props" />
627db96d56Sopenharmony_ci
637db96d56Sopenharmony_ci  <PropertyGroup>
647db96d56Sopenharmony_ci    <IntDir>$(opensslDir)\tmp$(Bitness)dll</IntDir>
657db96d56Sopenharmony_ci    <OutDir>$(opensslOutDir)</OutDir>
667db96d56Sopenharmony_ci    <NMakeBuildCommandLine>setlocal
677db96d56Sopenharmony_ciset VCINSTALLDIR=$(VCInstallDir)
687db96d56Sopenharmony_ciif not exist "$(IntDir.TrimEnd('\'))" mkdir "$(IntDir.TrimEnd('\'))"
697db96d56Sopenharmony_cicd /D "$(IntDir.TrimEnd('\'))"
707db96d56Sopenharmony_ci$(Perl) "$(opensslDir)\configure" $(OpenSSLPlatform) no-asm
717db96d56Sopenharmony_cinmake
727db96d56Sopenharmony_ci</NMakeBuildCommandLine>
737db96d56Sopenharmony_ci  </PropertyGroup>
747db96d56Sopenharmony_ci
757db96d56Sopenharmony_ci  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
767db96d56Sopenharmony_ci
777db96d56Sopenharmony_ci  <Target Name="_PatchUplink" BeforeTargets="Build">
787db96d56Sopenharmony_ci    <PropertyGroup>
797db96d56Sopenharmony_ci      <Uplink>$(opensslDir)\ms\uplink.c</Uplink>
807db96d56Sopenharmony_ci      <BeforePatch>((h = GetModuleHandle(NULL)) == NULL)</BeforePatch>
817db96d56Sopenharmony_ci      <AfterPatch>((h = GetModuleHandleA("_ssl.pyd")) == NULL) if ((h = GetModuleHandleA("_ssl_d.pyd")) == NULL) if ((h = GetModuleHandle(NULL)) == NULL /*patched*/)</AfterPatch>
827db96d56Sopenharmony_ci    </PropertyGroup>
837db96d56Sopenharmony_ci    <Error Text="Cannot find $(Uplink)" Condition="!Exists($(Uplink))" />
847db96d56Sopenharmony_ci    <PropertyGroup>
857db96d56Sopenharmony_ci      <_Original>$([System.IO.File]::ReadAllText($(Uplink)))</_Original>
867db96d56Sopenharmony_ci      <_Patched>$(_Original.Replace($(BeforePatch), $(AfterPatch)))</_Patched>
877db96d56Sopenharmony_ci      <IsPatched>false</IsPatched>
887db96d56Sopenharmony_ci      <IsPatched Condition="$(_Patched) == $(_Original)">true</IsPatched>
897db96d56Sopenharmony_ci    </PropertyGroup>
907db96d56Sopenharmony_ci    <Message Text="$(Uplink) is already patched" Importance="normal" Condition="$(IsPatched)" />
917db96d56Sopenharmony_ci    <Message Text="Patching $(Uplink)" Importance="high" Condition="!$(IsPatched)" />
927db96d56Sopenharmony_ci    <WriteLinesToFile File="$(Uplink)"
937db96d56Sopenharmony_ci                      Lines="$(_Patched)"
947db96d56Sopenharmony_ci                      Overwrite="true"
957db96d56Sopenharmony_ci                      Encoding="ASCII"
967db96d56Sopenharmony_ci                      Condition="!$(IsPatched)" />
977db96d56Sopenharmony_ci  </Target>
987db96d56Sopenharmony_ci
997db96d56Sopenharmony_ci  <Target Name="_CopyToOutput" AfterTargets="Build">
1007db96d56Sopenharmony_ci    <ItemGroup>
1017db96d56Sopenharmony_ci      <_Built Include="$(opensslDir)\LICENSE" />
1027db96d56Sopenharmony_ci      <_Built Include="$(IntDir)\libcrypto.lib;$(IntDir)\libcrypto-*.dll;$(IntDir)\libcrypto-*.pdb" />
1037db96d56Sopenharmony_ci      <_Built Include="$(IntDir)\libssl.lib;$(IntDir)\libssl-*.dll;$(IntDir)\libssl-*.pdb" />
1047db96d56Sopenharmony_ci      <_AppLink Include="$(opensslDir)\ms\applink.c" />
1057db96d56Sopenharmony_ci      <_Include Include="$(opensslDir)\Include\openssl\*.h" />
1067db96d56Sopenharmony_ci      <_Include Include="$(IntDir)\include\openssl\*.h" />
1077db96d56Sopenharmony_ci    </ItemGroup>
1087db96d56Sopenharmony_ci    <MakeDir Directories="$(opensslOutDir)\include\openssl" />
1097db96d56Sopenharmony_ci    <Copy SourceFiles="@(_Built)" DestinationFolder="$(opensslOutDir)" />
1107db96d56Sopenharmony_ci    <Copy SourceFiles="@(_AppLink)" DestinationFolder="$(opensslOutDir)\include" />
1117db96d56Sopenharmony_ci    <Copy SourceFiles="@(_Include)" DestinationFolder="$(opensslOutDir)\include\openssl" />
1127db96d56Sopenharmony_ci  </Target>
1137db96d56Sopenharmony_ci
1147db96d56Sopenharmony_ci  <Target Name="SignFiles" AfterTargets="Build" Condition="$(_SignCommand) != ''">
1157db96d56Sopenharmony_ci    <ItemGroup>
1167db96d56Sopenharmony_ci      <FilesToSign Include="$(opensslOutDir)\lib*.dll" />
1177db96d56Sopenharmony_ci    </ItemGroup>
1187db96d56Sopenharmony_ci    <Exec Command="$(_SignCommand) %(FilesToSign.FullPath)" ContinueOnError="true" />
1197db96d56Sopenharmony_ci  </Target>
1207db96d56Sopenharmony_ci
1217db96d56Sopenharmony_ci  <Target Name="Clean" />
1227db96d56Sopenharmony_ci  <Target Name="CleanAll">
1237db96d56Sopenharmony_ci    <Delete Files="$(TargetPath);$(BuildPath)$(tclDLLName)" />
1247db96d56Sopenharmony_ci    <RemoveDir Directories="$(IntDir)" />
1257db96d56Sopenharmony_ci  </Target>
1267db96d56Sopenharmony_ci  
1277db96d56Sopenharmony_ci  <Target Name="LocateNMake">
1287db96d56Sopenharmony_ci    <PropertyGroup>
1297db96d56Sopenharmony_ci      <OutputFilename Condition="$(OutputFilename) == ''">$(Temp)\nmake.loc</OutputFilename>
1307db96d56Sopenharmony_ci    </PropertyGroup>
1317db96d56Sopenharmony_ci    <ItemGroup>
1327db96d56Sopenharmony_ci      <_NMakeExe Include="$(VC_ExecutablePath_x86_x86)\nmake.exe" Condition="$(VC_ExecutablePath_x86_x86) != ''" />
1337db96d56Sopenharmony_ci    </ItemGroup>
1347db96d56Sopenharmony_ci    <MakeDir Directories="$([System.IO.Path]::GetDirectoryName($(OutputFilename)))" />
1357db96d56Sopenharmony_ci    <WriteLinesToFile File="$(OutputFilename)" Lines="@(_NMakeExe)" />
1367db96d56Sopenharmony_ci  </Target>
1377db96d56Sopenharmony_ci  
1387db96d56Sopenharmony_ci  <Target Name="ResolveAssemblyReferences" />
1397db96d56Sopenharmony_ci</Project>