summaryrefslogtreecommitdiff
path: root/PCbuild/openssl.vcxproj
diff options
context:
space:
mode:
authorSteve Dower <steve.dower@microsoft.com>2017-07-17 11:15:48 +0200
committerGitHub <noreply@github.com>2017-07-17 11:15:48 +0200
commit68d663cf85d1ac5eaf83482eed39c0a6f8093601 (patch)
treefe26ff995655c31aca2d5c0f7bc4f8048cca5cc4 /PCbuild/openssl.vcxproj
parent49f6449ef4b81537c19b82329caaf60596c516c2 (diff)
downloadcpython-git-68d663cf85d1ac5eaf83482eed39c0a6f8093601.tar.gz
[bpo-30916] Pre-build OpenSSL and Tcl/Tk for Windows (#2688)
Updates ssl and tkinter projects to use pre-built externals
Diffstat (limited to 'PCbuild/openssl.vcxproj')
-rw-r--r--PCbuild/openssl.vcxproj118
1 files changed, 118 insertions, 0 deletions
diff --git a/PCbuild/openssl.vcxproj b/PCbuild/openssl.vcxproj
new file mode 100644
index 0000000000..2d42b12681
--- /dev/null
+++ b/PCbuild/openssl.vcxproj
@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="PGInstrument|Win32">
+ <Configuration>PGInstrument</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="PGInstrument|x64">
+ <Configuration>PGInstrument</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="PGUpdate|Win32">
+ <Configuration>PGUpdate</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="PGUpdate|x64">
+ <Configuration>PGUpdate</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Debug|x64">
+ <Configuration>Debug</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|x64">
+ <Configuration>Release</Configuration>
+ <Platform>x64</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{B5FD6F1D-129E-4BFF-9340-03606FAC7283}</ProjectGuid>
+ </PropertyGroup>
+
+ <Import Project="python.props" />
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+
+ <PropertyGroup Label="Configuration">
+ <ConfigurationType>Makefile</ConfigurationType>
+ <Bitness>32</Bitness>
+ <Bitness Condition="$(Platform) == 'x64'">64</Bitness>
+ <ArchName>x86</ArchName>
+ <ArchName Condition="$(Platform) == 'x64'">amd64</ArchName>
+ <SupportSigning>true</SupportSigning>
+ </PropertyGroup>
+
+ <ItemGroup>
+ <PrepareSSL Include="prepare_ssl.py" />
+ <Perl Include="$(Perl)" />
+ </ItemGroup>
+
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <Import Project="pyproject.props" />
+
+ <PropertyGroup>
+ <IntDir>$(opensslDir)\tmp$(Bitness)dll</IntDir>
+ <OutDir>$(opensslDir)\out$(Bitness)dll</OutDir>
+ <MakeFile>ms\ntdll$(Bitness).mak</MakeFile>
+ <NMakeOptions>LIB_D="$(opensslOutDir.TrimEnd(`\`))" OUT_D=out$(Bitness)dll TMP_D=tmp$(Bitness)dll INC_D=inc$(Bitness) INCO_D=inc$(Bitness)\openssl</NMakeOptions>
+ <NMakeBuildCommandLine>setlocal
+set PATH=%PATH%;$(nasmDir);@(Perl->'%(RootDir)%(Directory)',';')
+set VCINSTALLDIR=$(VCInstallDir)
+cd /D "$(opensslDir.TrimEnd(`\`))"
+if not exist "$(IntDir.TrimEnd('\'))" mkdir "$(IntDir.TrimEnd('\'))"
+if not exist "$(OutDir.TrimEnd('\'))" mkdir "$(OutDir.TrimEnd('\'))"
+if not exist "$(opensslOutDir.TrimEnd(`\`))" mkdir "$(opensslOutDir.TrimEnd(`\`))"
+$(PYTHON) "@(PrepareSSL->'%(FullPath)')" "$(opensslDir.TrimEnd(`\`))" $(ArchName)
+nmake -f $(MakeFile) $(NMakeOptions) headers lib
+copy /y LICENSE "$(opensslOutDir)\LICENSE"
+</NMakeBuildCommandLine>
+ </PropertyGroup>
+
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+
+ <Target Name="SuppressOriginalBuildinfH" Condition="Exists('$(opensslDir)crypto\buildinf.h')" BeforeTargets="CreateBuildinfH">
+ <Move SourceFiles="$(opensslDir)crypto\buildinf.h" DestinationFiles="$(opensslDir)crypto\buildinf.h.orig" />
+ </Target>
+
+ <Target Name="_CopyIncludes" AfterTargets="Build">
+ <ItemGroup>
+ <Sources Include="$(opensslDir)inc$(Bitness)\**\*.h" />
+ <Sources Include="$(opensslDir)ms\applink.c" />
+ </ItemGroup>
+ <Copy SourceFiles="%(Sources.FullPath)" DestinationFiles="$(opensslOutDir)\include\%(Sources.RecursiveDir)\%(Sources.Filename)%(Sources.Extension)" />
+ </Target>
+
+ <Target Name="SignFiles" AfterTargets="Build" Condition="$(_SignCommand) != ''">
+ <ItemGroup>
+ <FilesToSign Include="$(opensslOutDir)\libeay32.dll;$(opensslOutDir)\ssleay32.dll" />
+ </ItemGroup>
+ <Exec Command="$(_SignCommand) %(FilesToSign.FullPath)" ContinueOnError="true" />
+ </Target>
+
+ <Target Name="Clean" />
+ <Target Name="CleanAll">
+ <Delete Files="$(TargetPath);$(BuildPath)$(tclDLLName)" />
+ <RemoveDir Directories="$(IntDir)" />
+ </Target>
+
+ <Target Name="LocateNMake">
+ <PropertyGroup>
+ <OutputFilename Condition="$(OutputFilename) == ''">$(Temp)\nmake.loc</OutputFilename>
+ </PropertyGroup>
+ <ItemGroup>
+ <_NMakeExe Include="$(VC_ExecutablePath_x86_x86)\nmake.exe" Condition="$(VC_ExecutablePath_x86_x86) != ''" />
+ </ItemGroup>
+ <MakeDir Directories="$([System.IO.Path]::GetDirectoryName($(OutputFilename)))" />
+ <WriteLinesToFile File="$(OutputFilename)" Lines="@(_NMakeExe)" />
+ </Target>
+
+ <Target Name="ResolveAssemblyReferences" />
+</Project> \ No newline at end of file