cpython/PCbuild/openssl.props

77 lines
3.5 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Py_IntDir Condition="'$(Py_IntDir)' == ''">$(opensslDir)tmp\</Py_IntDir>
</PropertyGroup>
<Import Project="pyproject.props" />
<PropertyGroup Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
</PropertyGroup>
<ItemGroup>
<PreprocessorDefinitions Include="DSO_WIN32" />
<PreprocessorDefinitions Include="WIN32_LEAN_AND_MEAN" />
<PreprocessorDefinitions Include="L_ENDIAN" />
<PreprocessorDefinitions Include="_CRT_SECURE_NO_WARNINGS" />
<PreprocessorDefinitions Include="_CRT_SECURE_NO_DEPRECATE" />
<PreprocessorDefinitions Include="OPENSSL_THREADS" />
<!-- <PreprocessorDefinitions Include="OPENSSL_SYSNAME_WIN32" /> -->
<PreprocessorDefinitions Include="OPENSSL_IA32_SSE2" />
<PreprocessorDefinitions Include="SHA1_ASM" />
<PreprocessorDefinitions Include="SHA256_ASM" />
<PreprocessorDefinitions Include="SHA512_ASM" />
<PreprocessorDefinitions Include="MD5_ASM" />
<PreprocessorDefinitions Include="AES_ASM" />
<PreprocessorDefinitions Include="VPAES_ASM" />
<PreprocessorDefinitions Include="WHIRLPOOL_ASM" />
<PreprocessorDefinitions Include="GHASH_ASM" />
<PreprocessorDefinitions Include="OPENSSL_NO_IDEA" />
<PreprocessorDefinitions Include="OPENSSL_NO_RC5" />
<PreprocessorDefinitions Include="OPENSSL_NO_MD2" />
<PreprocessorDefinitions Include="OPENSSL_NO_MDC2" />
<PreprocessorDefinitions Include="OPENSSL_NO_KRB5" />
<PreprocessorDefinitions Include="OPENSSL_NO_JPAKE" />
<PreprocessorDefinitions Include="OPENSSL_NO_RDRAND" />
<PreprocessorDefinitions Include="OPENSSL_NO_RSAX" />
<PreprocessorDefinitions Include="OPENSSL_NO_DYNAMIC_ENGINE" />
</ItemGroup>
<ItemGroup Condition="'$(Platform)'=='Win32'">
<PreprocessorDefinitions Include="OPENSSL_BN_ASM_GF2m" />
<PreprocessorDefinitions Include="OPENSSL_BN_ASM_PART_WORDS" />
<PreprocessorDefinitions Include="OPENSSL_BN_ASM_MONT" />
<PreprocessorDefinitions Include="RMD160_ASM" />
</ItemGroup>
<PropertyGroup>
<_PreprocessorDefinitionList>@(PreprocessorDefinitions)</_PreprocessorDefinitionList>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<!-- Suppress 64-bit truncation warnings - they aren't ours to worry about -->
<DisableSpecificWarnings>4244;4267</DisableSpecificWarnings>
<AdditionalIncludeDirectories>$(opensslDir);$(opensslIncludeDir);$(opensslDir)crypto;$(opensslDir)crypto\asn1;$(opensslDir)crypto\evp;$(opensslDir)crypto\modes</AdditionalIncludeDirectories>
<PreprocessorDefinitions>$(_PreprocessorDefinitionList);%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
<Target Name="FindNasm">
<PropertyGroup>
<nasm Condition="$(Platform) == 'Win32'">nasm.exe -f win32</nasm>
<nasm Condition="$(Platform) == 'x64'">nasm.exe -f win64 -DNEAR -Ox -g</nasm>
</PropertyGroup>
</Target>
<Target Name="BuildNasmFiles" BeforeTargets="PreBuildEvent" DependsOnTargets="PrepareForBuild;FindNasm" Inputs="@(NasmCompile)" Outputs="@(NasmCompile->'$(IntDir)%(Filename).obj')">
<Exec Command='setlocal
set PATH=$(nasmDir);%PATH%
$(nasm) -o "$(IntDir)%(NasmCompile.Filename).obj" "%(NasmCompile.FullPath)"' />
<ItemGroup>
<Link Include="$(IntDir)%(NasmCompile.Filename).obj" />
<Lib Include="$(IntDir)%(NasmCompile.Filename).obj" />
</ItemGroup>
</Target>
</Project>