aboutsummaryrefslogtreecommitdiff
path: root/PCbuild
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
parent49f6449ef4b81537c19b82329caaf60596c516c2 (diff)
downloadcpython3-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')
-rw-r--r--PCbuild/_hashlib.vcxproj14
-rw-r--r--PCbuild/_ssl.vcxproj19
-rw-r--r--PCbuild/_ssl.vcxproj.filters6
-rw-r--r--PCbuild/_tkinter.vcxproj16
-rw-r--r--PCbuild/build.bat2
-rw-r--r--PCbuild/find_msbuild.bat15
-rw-r--r--PCbuild/find_python.bat57
-rw-r--r--PCbuild/get_externals.bat55
-rw-r--r--PCbuild/libeay.vcxproj907
-rw-r--r--PCbuild/openssl.props87
-rw-r--r--PCbuild/openssl.vcxproj118
-rw-r--r--PCbuild/pcbuild.proj2
-rw-r--r--PCbuild/pcbuild.sln95
-rw-r--r--PCbuild/prepare_ssl.bat63
-rw-r--r--PCbuild/prepare_ssl.py71
-rw-r--r--PCbuild/prepare_tcltk.bat55
-rw-r--r--PCbuild/pyproject.props2
-rw-r--r--PCbuild/python.props6
-rw-r--r--PCbuild/ssleay.vcxproj119
-rw-r--r--PCbuild/tcl.vcxproj25
-rw-r--r--PCbuild/tcltk.props5
-rw-r--r--PCbuild/tix.vcxproj18
-rw-r--r--PCbuild/tk.vcxproj21
23 files changed, 416 insertions, 1362 deletions
diff --git a/PCbuild/_hashlib.vcxproj b/PCbuild/_hashlib.vcxproj
index b1300cb8c9..d6d88029d7 100644
--- a/PCbuild/_hashlib.vcxproj
+++ b/PCbuild/_hashlib.vcxproj
@@ -54,17 +54,15 @@
<ImportGroup Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="pyproject.props" />
+ <Import Project="openssl.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
</PropertyGroup>
<ItemDefinitionGroup>
- <ClCompile>
- <AdditionalIncludeDirectories>$(opensslIncludeDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ClCompile>
<Link>
- <AdditionalDependencies>ws2_32.lib;$(OutDir)libeay$(PyDebugExt).lib;$(OutDir)ssleay$(PyDebugExt).lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
@@ -78,14 +76,6 @@
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
- <ProjectReference Include="ssleay.vcxproj">
- <Project>{10615b24-73bf-4efa-93aa-236916321317}</Project>
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
- </ProjectReference>
- <ProjectReference Include="libeay.vcxproj">
- <Project>{e5b04cc0-eb4c-42ab-b4dc-18ef95f864b0}</Project>
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
- </ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
diff --git a/PCbuild/_ssl.vcxproj b/PCbuild/_ssl.vcxproj
index d75ebd656a..aaf95a361c 100644
--- a/PCbuild/_ssl.vcxproj
+++ b/PCbuild/_ssl.vcxproj
@@ -54,21 +54,22 @@
<ImportGroup Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="pyproject.props" />
+ <Import Project="openssl.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
</PropertyGroup>
<ItemDefinitionGroup>
- <ClCompile>
- <AdditionalIncludeDirectories>$(opensslIncludeDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ClCompile>
<Link>
- <AdditionalDependencies>ws2_32.lib;crypt32.lib;$(OutDir)libeay$(PyDebugExt).lib;$(OutDir)ssleay$(PyDebugExt).lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>ws2_32.lib;crypt32.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\Modules\_ssl.c" />
+ <ClCompile Include="$(opensslIncludeDir)\applink.c">
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;$(PreprocessorDefinitions)</PreprocessorDefinitions>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\PC\python_nt.rc" />
@@ -78,14 +79,6 @@
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
- <ProjectReference Include="libeay.vcxproj">
- <Project>{e5b04cc0-eb4c-42ab-b4dc-18ef95f864b0}</Project>
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
- </ProjectReference>
- <ProjectReference Include="ssleay.vcxproj">
- <Project>{10615b24-73bf-4efa-93aa-236916321317}</Project>
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
- </ProjectReference>
<ProjectReference Include="_socket.vcxproj">
<Project>{86937f53-c189-40ef-8ce8-8759d8e7d480}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
@@ -94,4 +87,4 @@
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
-</Project>
+</Project> \ No newline at end of file
diff --git a/PCbuild/_ssl.vcxproj.filters b/PCbuild/_ssl.vcxproj.filters
index 78b1459923..bd46b60984 100644
--- a/PCbuild/_ssl.vcxproj.filters
+++ b/PCbuild/_ssl.vcxproj.filters
@@ -9,5 +9,11 @@
<ClCompile Include="..\Modules\_ssl.c">
<Filter>Source Files</Filter>
</ClCompile>
+ <ClCompile Include="$(opensslIncludeDir)\applink.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
</Project> \ No newline at end of file
diff --git a/PCbuild/_tkinter.vcxproj b/PCbuild/_tkinter.vcxproj
index 67931067d3..95e3cd50ec 100644
--- a/PCbuild/_tkinter.vcxproj
+++ b/PCbuild/_tkinter.vcxproj
@@ -77,18 +77,22 @@
<ResourceCompile Include="..\PC\python_nt.rc" />
</ItemGroup>
<ItemGroup>
+ <_TclTkDLL Include="$(tcltkdir)\bin\$(tclDllName)" />
+ <_TclTkDLL Include="$(tcltkdir)\bin\$(tkDllName)" />
+ </ItemGroup>
+ <ItemGroup>
<ProjectReference Include="pythoncore.vcxproj">
<Project>{cf7ac3d1-e2df-41d2-bea6-1e2556cdea26}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
- <ProjectReference Include="tcl.vcxproj">
- <Project>{b5fd6f1d-129e-4bff-9340-03606fac7283}</Project>
- </ProjectReference>
- <ProjectReference Include="tk.vcxproj">
- <Project>{7e85eccf-a72c-4da4-9e52-884508e80ba1}</Project>
- </ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
+ <Target Name="_CopyTclTkDLL" Inputs="@(_TclTkDLL)" Outputs="@(_TclTkDLL->'$(OutDir)%(Filename)%(Extension)')" AfterTargets="Build">
+ <Copy SourceFiles="@(_TclTkDLL)" DestinationFolder="$(OutDir)" />
+ </Target>
+ <Target Name="_CleanTclTkDLL" BeforeTargets="Clean">
+ <Delete Files="@(_TclTkDLL->'$(OutDir)%(Filename)%(Extension)')" />
+ </Target>
</Project> \ No newline at end of file
diff --git a/PCbuild/build.bat b/PCbuild/build.bat
index 713810e5b4..3826c664ad 100644
--- a/PCbuild/build.bat
+++ b/PCbuild/build.bat
@@ -5,8 +5,6 @@ echo.%~nx0 [flags and arguments] [quoted MSBuild options]
echo.
echo.Build CPython from the command line. Requires the appropriate
echo.version(s) of Microsoft Visual Studio to be installed (see readme.txt).
-echo.Also requires Subversion (svn.exe) to be on PATH if the '-e' flag is
-echo.given.
echo.
echo.After the flags recognized by this script, up to 9 arguments to be passed
echo.directly to MSBuild may be passed. If the argument contains an '=', the
diff --git a/PCbuild/find_msbuild.bat b/PCbuild/find_msbuild.bat
index 1877906e00..2b7413fbcd 100644
--- a/PCbuild/find_msbuild.bat
+++ b/PCbuild/find_msbuild.bat
@@ -29,20 +29,21 @@
@where msbuild > "%TEMP%\msbuild.loc" 2> nul && set /P MSBUILD= < "%TEMP%\msbuild.loc" & del "%TEMP%\msbuild.loc"
@if exist "%MSBUILD%" set MSBUILD="%MSBUILD%" & (set _Py_MSBuild_Source=PATH) & goto :found
-@rem VS 2017 sets exactly one install as the "main" install, so we may find MSBuild in there.
-@reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\SxS\VS7" /v 15.0 /reg:32 >nul 2>nul
-@if NOT ERRORLEVEL 1 @for /F "tokens=1,2*" %%i in ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\SxS\VS7" /v 15.0 /reg:32') DO @(
- @if "%%i"=="15.0" @if exist "%%k\MSBuild\15.0\Bin\msbuild.exe" @(set MSBUILD="%%k\MSBuild\15.0\Bin\msbuild.exe")
-)
-@if exist %MSBUILD% (set _Py_MSBuild_Source=Visual Studio 2017 registry) & goto :found
-
@rem VS 2015 and earlier register MSBuild separately, so we can find it.
+@rem Prefer MSBuild 14.0 over MSBuild 15.0, since the latter may not be able to find a VC14 install.
@reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\14.0" /v MSBuildToolsPath /reg:32 >nul 2>nul
@if NOT ERRORLEVEL 1 @for /F "tokens=1,2*" %%i in ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\14.0" /v MSBuildToolsPath /reg:32') DO @(
@if "%%i"=="MSBuildToolsPath" @if exist "%%k\msbuild.exe" @(set MSBUILD="%%k\msbuild.exe")
)
@if exist %MSBUILD% (set _Py_MSBuild_Source=registry) & goto :found
+@rem VS 2017 sets exactly one install as the "main" install, so we may find MSBuild in there.
+@reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\SxS\VS7" /v 15.0 /reg:32 >nul 2>nul
+@if NOT ERRORLEVEL 1 @for /F "tokens=1,2*" %%i in ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\SxS\VS7" /v 15.0 /reg:32') DO @(
+ @if "%%i"=="15.0" @if exist "%%k\MSBuild\15.0\Bin\msbuild.exe" @(set MSBUILD="%%k\MSBuild\15.0\Bin\msbuild.exe")
+)
+@if exist %MSBUILD% (set _Py_MSBuild_Source=Visual Studio 2017 registry) & goto :found
+
@exit /b 1
diff --git a/PCbuild/find_python.bat b/PCbuild/find_python.bat
new file mode 100644
index 0000000000..4629c61038
--- /dev/null
+++ b/PCbuild/find_python.bat
@@ -0,0 +1,57 @@
+@rem
+@rem Searches for python.exe and may download a private copy from nuget.
+@rem
+@rem This file is supposed to modify the state of the caller (specifically
+@rem the MSBUILD variable), so we do not use setlocal or echo, and avoid
+@rem changing any other persistent state.
+@rem
+
+@rem No arguments provided means do full search
+@if '%1' EQU '' goto :begin_search
+
+@rem One argument may be the full path. Use a goto so we don't try to
+@rem parse the next if statement - incorrect quoting in the multi-arg
+@rem case can cause us to break immediately.
+@if '%2' EQU '' goto :one_arg
+
+@rem Entire command line may represent the full path if quoting failed.
+@if exist "%*" (set PYTHON="%*") & (set _Py_Python_Source=from environment) & goto :found
+@goto :begin_search
+
+:one_arg
+@if exist "%~1" (set PYTHON="%~1") & (set _Py_Python_Source=from environment) & goto :found
+
+:begin_search
+@set PYTHON=
+
+@set _Py_EXTERNALS_DIR=%EXTERNAL_DIR%
+@if "%_Py_EXTERNALS_DIR%"=="" (set _Py_EXTERNALS_DIR=%~dp0\..\externals)
+
+@rem If we have Python in externals, use that one
+@if exist "%_Py_EXTERNALS_DIR%\pythonx86\tools\python.exe" (set PYTHON="%_Py_EXTERNALS_DIR%\pythonx86\tools\python.exe") & (set _Py_Python_Source=found in externals directory) & goto :found
+
+@rem If py.exe finds a recent enough version, use that one
+@py -3.6 -V >nul 2>&1 && (set PYTHON=py -3.6) && (set _Py_Python_Source=found with py.exe) && goto :found
+
+@if NOT exist "%_Py_EXTERNALS_DIR%" mkdir "%_Py_EXTERNALS_DIR%"
+@set _Py_NUGET=%NUGET%
+@set _Py_NUGET_URL=%NUGET_URL%
+@if "%_Py_NUGET%"=="" (set _Py_NUGET=%EXTERNALS_DIR%\nuget.exe)
+@if "%_Py_NUGET_URL%"=="" (set _Py_NUGET_URL=https://aka.ms/nugetclidl)
+@if NOT exist "%_Py_NUGET%" (
+ @echo Downloading nuget...
+ @rem NB: Must use single quotes around NUGET here, NOT double!
+ @rem Otherwise, a space in the path would break things
+ @powershell.exe -Command Invoke-WebRequest %_Py_NUGET_URL% -OutFile '%_Py_NUGET%'
+)
+@echo Installing Python via nuget...
+@"%_Py_NUGET%" install pythonx86 -ExcludeVersion -OutputDirectory "%_Py_EXTERNALS_DIR%"
+@rem Quote it here; it's not quoted later because "py -3.6" wouldn't work
+@if not errorlevel 1 (set PYTHON="%_Py_EXTERNALS_DIR%\pythonx86\tools\python.exe") & (set _Py_Python_Source=found on nuget.org) & goto :found
+
+
+@exit /b 1
+
+:found
+@echo Using %PYTHON% (%_Py_Python_Source%)
+@set _Py_Python_Source=
diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat
index 6e466a3448..01eeb84ac0 100644
--- a/PCbuild/get_externals.bat
+++ b/PCbuild/get_externals.bat
@@ -4,20 +4,27 @@ rem Simple script to fetch source for external libraries
if "%PCBUILD%"=="" (set PCBUILD=%~dp0)
if "%EXTERNALS_DIR%"=="" (set EXTERNALS_DIR=%PCBUILD%\..\externals)
-if "%NUGET%"=="" (set NUGET=%EXTERNALS_DIR%\nuget.exe)
-if "%NUGET_URL%"=="" (set NUGET_URL=https://aka.ms/nugetclidl)
set DO_FETCH=true
set DO_CLEAN=false
+set IncludeTkinterSrc=false
+set IncludeSSLSrc=false
:CheckOpts
if "%~1"=="--no-tkinter" (set IncludeTkinter=false) & shift & goto CheckOpts
if "%~1"=="--no-openssl" (set IncludeSSL=false) & shift & goto CheckOpts
-if "%~1"=="--python" (set PYTHON_FOR_BUILD=%2) & shift & shift & goto CheckOpts
+if "%~1"=="--tkinter-src" (set IncludeTkinterSrc=true) & shift & goto CheckOpts
+if "%~1"=="--openssl-src" (set IncludeSSLSrc=true) & shift & goto CheckOpts
+if "%~1"=="--python" (set PYTHON=%2) & shift & shift & goto CheckOpts
if "%~1"=="--organization" (set ORG=%2) & shift & shift & goto CheckOpts
if "%~1"=="-c" (set DO_CLEAN=true) & shift & goto CheckOpts
if "%~1"=="--clean" (set DO_CLEAN=true) & shift & goto CheckOpts
if "%~1"=="--clean-only" (set DO_FETCH=false) & goto clean
+
+rem Include old options for compatibility
+if "%~1"=="--no-tkinter" shift & goto CheckOpts
+if "%~1"=="--no-openssl" shift & goto CheckOpts
+
if "x%~1" NEQ "x" goto usage
if "%DO_CLEAN%"=="false" goto fetch
@@ -32,57 +39,41 @@ if "%DO_FETCH%"=="false" goto end
:fetch
if "%ORG%"=="" (set ORG=python)
-
-if "%PYTHON_FOR_BUILD%"=="" (
- echo Checking for installed python...
- py -3.6 -V >nul 2>&1 && (set PYTHON_FOR_BUILD=py -3.6)
-)
-if "%PYTHON_FOR_BUILD%"=="" (
- if NOT exist "%EXTERNALS_DIR%" mkdir "%EXTERNALS_DIR%"
- if NOT exist "%NUGET%" (
- echo Downloading nuget...
- rem NB: Must use single quotes around NUGET here, NOT double!
- rem Otherwise, a space in the path would break things
- powershell.exe -Command Invoke-WebRequest %NUGET_URL% -OutFile '%NUGET%'
- )
- echo Installing Python via nuget...
- "%NUGET%" install pythonx86 -ExcludeVersion -OutputDirectory "%EXTERNALS_DIR%"
- rem Quote it here; it's not quoted later because "py -3.6" wouldn't work
- set PYTHON_FOR_BUILD="%EXTERNALS_DIR%\pythonx86\tools\python.exe"
-)
+call "%PCBUILD%find_python.bat" "%PYTHON%"
echo.Fetching external libraries...
set libraries=
-set libraries=%libraries% bzip2-1.0.6
-if NOT "%IncludeSSL%"=="false" set libraries=%libraries% openssl-1.0.2k
-set libraries=%libraries% sqlite-3.14.2.0
-if NOT "%IncludeTkinter%"=="false" set libraries=%libraries% tcl-core-8.6.6.0
-if NOT "%IncludeTkinter%"=="false" set libraries=%libraries% tk-8.6.6.0
-if NOT "%IncludeTkinter%"=="false" set libraries=%libraries% tix-8.4.3.6
-set libraries=%libraries% xz-5.2.2
+set libraries=%libraries% bzip2-1.0.6
+if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-1.0.2k
+set libraries=%libraries% sqlite-3.14.2.0
+if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tcl-core-8.6.6.0
+if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tk-8.6.6.0
+if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tix-8.4.3.6
+set libraries=%libraries% xz-5.2.2
for %%e in (%libraries%) do (
if exist "%EXTERNALS_DIR%\%%e" (
echo.%%e already exists, skipping.
) else (
echo.Fetching %%e...
- %PYTHON_FOR_BUILD% "%PCBUILD%get_external.py" -O %ORG% %%e
+ %PYTHON% "%PCBUILD%get_external.py" -O %ORG% %%e
)
)
echo.Fetching external binaries...
set binaries=
-set binaries=%binaries%
-if NOT "%IncludeSSL%"=="false" set binaries=%binaries% nasm-2.11.06
+if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-1.0.2k
+if NOT "%IncludeTkinter%"=="false" set binaries=%binaries% tcltk-8.6.6.0
+if NOT "%IncludeSSLSrc%"=="false" set binaries=%binaries% nasm-2.11.06
for %%b in (%binaries%) do (
if exist "%EXTERNALS_DIR%\%%b" (
echo.%%b already exists, skipping.
) else (
echo.Fetching %%b...
- %PYTHON_FOR_BUILD% "%PCBUILD%get_external.py" -b -O %ORG% %%b
+ %PYTHON% "%PCBUILD%get_external.py" -b -O %ORG% %%b
)
)
diff --git a/PCbuild/libeay.vcxproj b/PCbuild/libeay.vcxproj
deleted file mode 100644
index 9662cd4b71..0000000000
--- a/PCbuild/libeay.vcxproj
+++ /dev/null
@@ -1,907 +0,0 @@
-<?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>{E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}</ProjectGuid>
- <RootNamespace>libeay</RootNamespace>
- </PropertyGroup>
-
- <Import Project="python.props" />
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
-
- <PropertyGroup Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- </PropertyGroup>
-
- <Import Project="openssl.props" />
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
-
- <Target Name="CreateBuildinfH" Inputs="$(MSBuildProjectFullPath)" Outputs="$(IntDir)\buildinf.h" AfterTargets="PrepareForBuild">
- <PropertyGroup>
- <_DATEValue>#define DATE "$([System.DateTime]::Now.ToString(`ddd MMM dd HH':'mm':'ss yyyy`))"</_DATEValue>
- <_CFLAGSValue>#define CFLAGS "cl /MD /Ox -W3 -Gs0 -Gy -nologo @(PreprocessorDefinitions->'-D%(Identity)',' ')"</_CFLAGSValue>
- <_PLATFORMValue Condition="$(Platform)=='Win32'">#define PLATFORM "VC-WIN32"</_PLATFORMValue>
- <_PLATFORMValue Condition="$(Platform)=='x64'">#define PLATFORM "VC-WIN64A"</_PLATFORMValue>
- </PropertyGroup>
- <WriteLinesToFile File="$(IntDir)\buildinf.h"
- Lines="$(_DATEValue);$(_CFLAGSValue);$(_PLATFORMValue)"
- Overwrite="true" />
- <Message Text="Updating buildinf.h:
- $(_DATEValue)
- $(_CFLAGSValue)
- $(_PLATFORMValue)" Importance="normal" />
- </Target>
-
- <Target Name="SuppressOriginalBuildinfH" Condition="Exists('$(opensslDir)crypto\buildinf.h')" BeforeTargets="PrepareForBuild">
- <Move SourceFiles="$(opensslDir)crypto\buildinf.h" DestinationFiles="$(opensslDir)crypto\buildinf.h.orig" />
- </Target>
-
- <ItemGroup>
- <ClCompile Include="$(opensslDir)crypto\cversion.c">
- <AdditionalIncludeDirectories>$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ClCompile>
- </ItemGroup>
-
- <ItemGroup>
- <!--
- <ClCompile Include="$(opensslDir)apps\errstr.c" />
- <ClCompile Include="$(opensslDir)crypto\aes\aes_cfb.c" />
- <ClCompile Include="$(opensslDir)crypto\aes\aes_ctr.c" />
- <ClCompile Include="$(opensslDir)crypto\aes\aes_ecb.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\aes\aes_ige.c" />
- <ClCompile Include="$(opensslDir)crypto\aes\aes_misc.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\aes\aes_ofb.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\aes\aes_wrap.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_bitstr.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_bool.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_bytes.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_d2i_fp.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_digest.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_dup.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_enum.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_gentm.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_i2d_fp.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_int.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_mbstr.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_object.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_octet.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_print.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_set.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_sign.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_strex.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_strnid.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_time.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_type.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_utctm.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_utf8.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\a_verify.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\ameth_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\asn_mime.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\asn_moid.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\asn_pack.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\asn1_err.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\asn1_gen.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\asn1_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\asn1_par.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\bio_asn1.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\bio_ndef.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\d2i_pr.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\asn1\d2i_pu.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\asn1\evp_asn1.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\asn1\f_enum.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\asn1\f_int.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\f_string.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\i2d_pr.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\asn1\i2d_pu.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\asn1\n_pkey.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\nsseq.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\p5_pbe.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\p5_pbev2.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\p8_pkey.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\asn1\t_bitst.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\t_crl.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\asn1\t_pkey.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\asn1\t_req.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\t_spki.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\asn1\t_x509.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\t_x509a.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\tasn_dec.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\tasn_enc.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\tasn_fre.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\tasn_new.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\tasn_prn.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\tasn_typ.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\tasn_utl.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\x_algor.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\x_attrib.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\x_bignum.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\x_crl.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\x_exten.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\x_info.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\x_long.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\x_name.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\x_nx509.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\x_pkey.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\x_pubkey.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\x_req.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\x_sig.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\x_spki.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\x_val.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\x_x509.c" />
- <ClCompile Include="$(opensslDir)crypto\asn1\x_x509a.c" />
- <ClCompile Include="$(opensslDir)crypto\bf\bf_cfb64.c" />
- <ClCompile Include="$(opensslDir)crypto\bf\bf_ecb.c" />
- <ClCompile Include="$(opensslDir)crypto\bf\bf_ofb64.c" />
- <ClCompile Include="$(opensslDir)crypto\bf\bf_skey.c" />
- <ClCompile Include="$(opensslDir)crypto\bio\b_dump.c" />
- <ClCompile Include="$(opensslDir)crypto\bio\b_print.c" />
- <ClCompile Include="$(opensslDir)crypto\bio\b_sock.c" />
- <ClCompile Include="$(opensslDir)crypto\bio\bf_buff.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\bio\bf_nbio.c" />
- <ClCompile Include="$(opensslDir)crypto\bio\bf_null.c" />
- <ClCompile Include="$(opensslDir)crypto\bio\bio_cb.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\bio\bio_err.c" />
- <ClCompile Include="$(opensslDir)crypto\bio\bio_lib.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\bio\bss_acpt.c" />
- <ClCompile Include="$(opensslDir)crypto\bio\bss_bio.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\bio\bss_conn.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\bio\bss_dgram.c" />
- <ClCompile Include="$(opensslDir)crypto\bio\bss_fd.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\bio\bss_file.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\bio\bss_log.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\bio\bss_mem.c" />
- <ClCompile Include="$(opensslDir)crypto\bio\bss_null.c" />
- <ClCompile Include="$(opensslDir)crypto\bio\bss_sock.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_add.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_blind.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\bn\bn_const.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\bn\bn_ctx.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\bn\bn_depr.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\bn\bn_div.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_err.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_exp.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_exp2.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_gcd.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_gf2m.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_kron.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_mod.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_mont.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\bn\bn_mpi.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\bn\bn_mul.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_nist.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_prime.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_print.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_rand.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_recp.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_shift.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_sqr.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_sqrt.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_word.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\bn\bn_x931p.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\buffer\buf_err.c" />
- <ClCompile Include="$(opensslDir)crypto\buffer\buf_str.c" />
- <ClCompile Include="$(opensslDir)crypto\buffer\buffer.c" />
- <ClCompile Include="$(opensslDir)crypto\camellia\cmll_cfb.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\camellia\cmll_ctr.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\camellia\cmll_ecb.c" />
- <ClCompile Include="$(opensslDir)crypto\camellia\cmll_ofb.c" />
- <ClCompile Include="$(opensslDir)crypto\camellia\cmll_utl.c" />
- <ClCompile Include="$(opensslDir)crypto\cast\c_cfb64.c" />
- <ClCompile Include="$(opensslDir)crypto\cast\c_ecb.c" />
- <ClCompile Include="$(opensslDir)crypto\cast\c_ofb64.c" />
- <ClCompile Include="$(opensslDir)crypto\cast\c_skey.c" />
- <ClCompile Include="$(opensslDir)crypto\cmac\cm_ameth.c" />
- <ClCompile Include="$(opensslDir)crypto\cmac\cm_pmeth.c" />
- <ClCompile Include="$(opensslDir)crypto\cmac\cmac.c" />
- <ClCompile Include="$(opensslDir)crypto\cms\cms_asn1.c" />
- <ClCompile Include="$(opensslDir)crypto\cms\cms_att.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\cms\cms_cd.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\cms\cms_dd.c" />
- <ClCompile Include="$(opensslDir)crypto\cms\cms_enc.c" />
- <ClCompile Include="$(opensslDir)crypto\cms\cms_env.c" />
- <ClCompile Include="$(opensslDir)crypto\cms\cms_err.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\cms\cms_ess.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\cms\cms_io.c" />
- <ClCompile Include="$(opensslDir)crypto\cms\cms_kari.c" />
- <ClCompile Include="$(opensslDir)crypto\cms\cms_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\cms\cms_pwri.c" />
- <ClCompile Include="$(opensslDir)crypto\cms\cms_sd.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\cms\cms_smime.c" />
- <ClCompile Include="$(opensslDir)crypto\comp\c_rle.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\comp\c_zlib.c" />
- <ClCompile Include="$(opensslDir)crypto\comp\comp_err.c" />
- <ClCompile Include="$(opensslDir)crypto\comp\comp_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\conf\conf_api.c" />
- <ClCompile Include="$(opensslDir)crypto\conf\conf_def.c" />
- <ClCompile Include="$(opensslDir)crypto\conf\conf_err.c" />
- <ClCompile Include="$(opensslDir)crypto\conf\conf_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\conf\conf_mall.c" />
- <ClCompile Include="$(opensslDir)crypto\conf\conf_mod.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\conf\conf_sap.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\cpt_err.c" />
- <ClCompile Include="$(opensslDir)crypto\cryptlib.c" />
- <ClCompile Include="$(opensslDir)crypto\des\cbc_cksm.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\des\cbc_enc.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\des\cfb_enc.c" />
- <ClCompile Include="$(opensslDir)crypto\des\cfb64ede.c" />
- <ClCompile Include="$(opensslDir)crypto\des\cfb64enc.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\des\des_old.c" />
- <ClCompile Include="$(opensslDir)crypto\des\des_old2.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\des\ecb_enc.c" />
- <ClCompile Include="$(opensslDir)crypto\des\ecb3_enc.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\des\ede_cbcm_enc.c" />
- <ClCompile Include="$(opensslDir)crypto\des\enc_read.c" />
- <ClCompile Include="$(opensslDir)crypto\des\enc_writ.c" />
- <ClCompile Include="$(opensslDir)crypto\des\fcrypt.c" />
- <ClCompile Include="$(opensslDir)crypto\des\ofb_enc.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\des\ofb64ede.c" />
- <ClCompile Include="$(opensslDir)crypto\des\ofb64enc.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\des\pcbc_enc.c" />
- <ClCompile Include="$(opensslDir)crypto\des\qud_cksm.c" />
- <ClCompile Include="$(opensslDir)crypto\des\rand_key.c" />
- <ClCompile Include="$(opensslDir)crypto\des\read2pwd.c" />
- <ClCompile Include="$(opensslDir)crypto\des\rpc_enc.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\des\set_key.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\des\str2key.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\des\xcbc_enc.c" />
- <ClCompile Include="$(opensslDir)crypto\dh\dh_ameth.c" />
- <ClCompile Include="$(opensslDir)crypto\dh\dh_asn1.c" />
- <ClCompile Include="$(opensslDir)crypto\dh\dh_check.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\dh\dh_depr.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\dh\dh_err.c" />
- <ClCompile Include="$(opensslDir)crypto\dh\dh_gen.c" />
- <ClCompile Include="$(opensslDir)crypto\dh\dh_kdf.c" />
- <ClCompile Include="$(opensslDir)crypto\dh\dh_key.c" />
- <ClCompile Include="$(opensslDir)crypto\dh\dh_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\dh\dh_pmeth.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\dh\dh_prn.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\dh\dh_rfc5114.c" />
- <ClCompile Include="$(opensslDir)crypto\dsa\dsa_ameth.c" />
- <ClCompile Include="$(opensslDir)crypto\dsa\dsa_asn1.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\dsa\dsa_depr.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\dsa\dsa_err.c" />
- <ClCompile Include="$(opensslDir)crypto\dsa\dsa_gen.c" />
- <ClCompile Include="$(opensslDir)crypto\dsa\dsa_key.c" />
- <ClCompile Include="$(opensslDir)crypto\dsa\dsa_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\dsa\dsa_ossl.c" />
- <ClCompile Include="$(opensslDir)crypto\dsa\dsa_pmeth.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\dsa\dsa_prn.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\dsa\dsa_sign.c" />
- <ClCompile Include="$(opensslDir)crypto\dsa\dsa_vrf.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\dso\dso_beos.c" />
- <ClCompile Include="$(opensslDir)crypto\dso\dso_dl.c" />
- <ClCompile Include="$(opensslDir)crypto\dso\dso_dlfcn.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\dso\dso_err.c" />
- <ClCompile Include="$(opensslDir)crypto\dso\dso_lib.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\dso\dso_null.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\dso\dso_openssl.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\dso\dso_vms.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\dso\dso_win32.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\ebcdic.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\ec\ec_ameth.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ec_asn1.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\ec\ec_check.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\ec\ec_curve.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ec_cvt.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ec_err.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ec_key.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ec_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ec_mult.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ec_oct.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ec_pmeth.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ec_print.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ec2_mult.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ec2_oct.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ec2_smpl.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\eck_prn.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ecp_mont.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ecp_nist.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\ec\ecp_nistp224.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ecp_nistp256.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ecp_nistp521.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ecp_nistputil.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\ec\ecp_oct.c" />
- <ClCompile Include="$(opensslDir)crypto\ec\ecp_smpl.c" />
- <ClCompile Include="$(opensslDir)crypto\ecdh\ech_err.c" />
- <ClCompile Include="$(opensslDir)crypto\ecdh\ech_kdf.c" />
- <ClCompile Include="$(opensslDir)crypto\ecdh\ech_key.c" />
- <ClCompile Include="$(opensslDir)crypto\ecdh\ech_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\ecdh\ech_ossl.c" />
- <ClCompile Include="$(opensslDir)crypto\ecdsa\ecs_asn1.c" />
- <ClCompile Include="$(opensslDir)crypto\ecdsa\ecs_err.c" />
- <ClCompile Include="$(opensslDir)crypto\ecdsa\ecs_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\ecdsa\ecs_ossl.c" />
- <ClCompile Include="$(opensslDir)crypto\ecdsa\ecs_sign.c" />
- <ClCompile Include="$(opensslDir)crypto\ecdsa\ecs_vrf.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\eng_all.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\eng_cnf.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\engine\eng_cryptodev.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\engine\eng_ctrl.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\eng_dyn.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\eng_err.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\eng_fat.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\eng_init.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\eng_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\eng_list.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\engine\eng_openssl.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\engine\eng_pkey.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\engine\eng_rdrand.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\eng_rsax.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\engine\eng_table.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\tb_asnmth.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\tb_cipher.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\tb_dh.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\tb_digest.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\tb_dsa.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\tb_ecdh.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\tb_ecdsa.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\tb_pkmeth.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\tb_rand.c" />
- <ClCompile Include="$(opensslDir)crypto\engine\tb_rsa.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\engine\tb_store.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\err\err.c" />
- <ClCompile Include="$(opensslDir)crypto\err\err_all.c" />
- <ClCompile Include="$(opensslDir)crypto\err\err_prn.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\bio_b64.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\bio_enc.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\bio_md.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\evp\bio_ok.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\evp\c_all.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\c_allc.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\c_alld.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\digest.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\e_aes.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\e_aes_cbc_hmac_sha1.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\e_aes_cbc_hmac_sha256.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\e_bf.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\e_camellia.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\e_cast.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\e_des.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\e_des3.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\evp\e_idea.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\evp\e_null.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\evp\e_old.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\evp\e_rc2.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\e_rc4.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\e_rc4_hmac_md5.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\evp\e_rc5.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\evp\e_seed.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\e_xcbc_d.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\encode.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\evp\evp_acnf.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\evp\evp_cnf.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\evp_enc.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\evp_err.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\evp\evp_fips.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\evp\evp_key.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\evp_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\evp_pbe.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\evp_pkey.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\m_dss.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\m_dss1.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\m_ecdsa.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\m_md4.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\m_md5.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\evp\m_null.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\evp\m_ripemd.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\m_sha.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\m_sha1.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\m_sigver.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\m_wp.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\names.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\evp\p_dec.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\evp\p_lib.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\evp\p_open.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\p_seal.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\evp\p_sign.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\p_verify.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\p5_crpt.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\p5_crpt2.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\pmeth_fn.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\pmeth_gn.c" />
- <ClCompile Include="$(opensslDir)crypto\evp\pmeth_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\ex_data.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\fips_ers.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\hmac\hm_ameth.c" />
- <ClCompile Include="$(opensslDir)crypto\hmac\hm_pmeth.c" />
- <ClCompile Include="$(opensslDir)crypto\hmac\hmac.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\krb5\krb5_asn.c" />
- <ClCompile Include="$(opensslDir)crypto\lhash\lh_stats.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\lhash\lhash.c" />
- <ClCompile Include="$(opensslDir)crypto\md4\md4_dgst.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\md4\md4_one.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\md5\md5_dgst.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\md5\md5_one.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\mem.c" />
- <ClCompile Include="$(opensslDir)crypto\mem_dbg.c" />
- <ClCompile Include="$(opensslDir)crypto\modes\cbc128.c" />
- <ClCompile Include="$(opensslDir)crypto\modes\ccm128.c" />
- <ClCompile Include="$(opensslDir)crypto\modes\cfb128.c" />
- <ClCompile Include="$(opensslDir)crypto\modes\ctr128.c" />
- <ClCompile Include="$(opensslDir)crypto\modes\cts128.c" />
- <ClCompile Include="$(opensslDir)crypto\modes\gcm128.c" />
- <ClCompile Include="$(opensslDir)crypto\modes\ofb128.c" />
- <ClCompile Include="$(opensslDir)crypto\modes\wrap128.c" />
- <ClCompile Include="$(opensslDir)crypto\modes\xts128.c" />
- <ClCompile Include="$(opensslDir)crypto\o_dir.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\o_fips.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\o_init.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\o_str.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\o_time.c" />
- <ClCompile Include="$(opensslDir)crypto\objects\o_names.c" />
- <ClCompile Include="$(opensslDir)crypto\objects\obj_dat.c" />
- <ClCompile Include="$(opensslDir)crypto\objects\obj_err.c" />
- <ClCompile Include="$(opensslDir)crypto\objects\obj_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\objects\obj_xref.c" />
- <ClCompile Include="$(opensslDir)crypto\ocsp\ocsp_asn.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\ocsp\ocsp_cl.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\ocsp\ocsp_err.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\ocsp\ocsp_ext.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\ocsp\ocsp_ht.c" />
- <ClCompile Include="$(opensslDir)crypto\ocsp\ocsp_lib.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\ocsp\ocsp_prn.c" />
- <ClCompile Include="$(opensslDir)crypto\ocsp\ocsp_srv.c" />
- <ClCompile Include="$(opensslDir)crypto\ocsp\ocsp_vfy.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\pem\pem_all.c" />
- <ClCompile Include="$(opensslDir)crypto\pem\pem_err.c" />
- <ClCompile Include="$(opensslDir)crypto\pem\pem_info.c" />
- <ClCompile Include="$(opensslDir)crypto\pem\pem_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\pem\pem_oth.c" />
- <ClCompile Include="$(opensslDir)crypto\pem\pem_pk8.c" />
- <ClCompile Include="$(opensslDir)crypto\pem\pem_pkey.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\pem\pem_seal.c" />
- <ClCompile Include="$(opensslDir)crypto\pem\pem_sign.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\pem\pem_x509.c" />
- <ClCompile Include="$(opensslDir)crypto\pem\pem_xaux.c" />
- <ClCompile Include="$(opensslDir)crypto\pem\pvkfmt.c" />
- <ClCompile Include="$(opensslDir)crypto\pkcs12\p12_add.c" />
- <ClCompile Include="$(opensslDir)crypto\pkcs12\p12_asn.c" />
- <ClCompile Include="$(opensslDir)crypto\pkcs12\p12_attr.c" />
- <ClCompile Include="$(opensslDir)crypto\pkcs12\p12_crpt.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\pkcs12\p12_crt.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\pkcs12\p12_decr.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\pkcs12\p12_init.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\pkcs12\p12_key.c" />
- <ClCompile Include="$(opensslDir)crypto\pkcs12\p12_kiss.c" />
- <ClCompile Include="$(opensslDir)crypto\pkcs12\p12_mutl.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\pkcs12\p12_npas.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\pkcs12\p12_p8d.c" />
- <ClCompile Include="$(opensslDir)crypto\pkcs12\p12_p8e.c" />
- <ClCompile Include="$(opensslDir)crypto\pkcs12\p12_utl.c" />
- <ClCompile Include="$(opensslDir)crypto\pkcs12\pk12err.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\pkcs7\bio_pk7.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\pkcs7\pk7_asn1.c" />
- <ClCompile Include="$(opensslDir)crypto\pkcs7\pk7_attr.c" />
- <ClCompile Include="$(opensslDir)crypto\pkcs7\pk7_doit.c" />
- <ClCompile Include="$(opensslDir)crypto\pkcs7\pk7_lib.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\pkcs7\pk7_mime.c" />
- <ClCompile Include="$(opensslDir)crypto\pkcs7\pk7_smime.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\pkcs7\pkcs7err.c" />
- <ClCompile Include="$(opensslDir)crypto\pqueue\pqueue.c" />
- <ClCompile Include="$(opensslDir)crypto\rand\md_rand.c" />
- <ClCompile Include="$(opensslDir)crypto\rand\rand_egd.c" />
- <ClCompile Include="$(opensslDir)crypto\rand\rand_err.c" />
- <ClCompile Include="$(opensslDir)crypto\rand\rand_lib.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\rand\rand_nw.c" />
- <ClCompile Include="$(opensslDir)crypto\rand\rand_os2.c" />
- <ClCompile Include="$(opensslDir)crypto\rand\rand_unix.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\rand\rand_win.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\rand\randfile.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\rc2\rc2_cbc.c" />
- <ClCompile Include="$(opensslDir)crypto\rc2\rc2_ecb.c" />
- <ClCompile Include="$(opensslDir)crypto\rc2\rc2_skey.c" />
- <ClCompile Include="$(opensslDir)crypto\rc2\rc2cfb64.c" />
- <ClCompile Include="$(opensslDir)crypto\rc2\rc2ofb64.c" />
- <ClCompile Include="$(opensslDir)crypto\rc4\rc4_utl.c" />
- <ClCompile Include="$(opensslDir)crypto\ripemd\rmd_dgst.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\ripemd\rmd_one.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_ameth.c" />
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_asn1.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_chk.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_crpt.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_depr.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_eay.c" />
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_err.c" />
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_gen.c" />
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_none.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_null.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_oaep.c" />
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_pk1.c" />
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_pmeth.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_prn.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_pss.c" />
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_saos.c" />
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_sign.c" />
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_ssl.c" />
- <ClCompile Include="$(opensslDir)crypto\rsa\rsa_x931.c" />
- <ClCompile Include="$(opensslDir)crypto\seed\seed.c" />
- <ClCompile Include="$(opensslDir)crypto\seed\seed_cbc.c" />
- <ClCompile Include="$(opensslDir)crypto\seed\seed_cfb.c" />
- <ClCompile Include="$(opensslDir)crypto\seed\seed_ecb.c" />
- <ClCompile Include="$(opensslDir)crypto\seed\seed_ofb.c" />
- <ClCompile Include="$(opensslDir)crypto\sha\sha_dgst.c" />
- <ClCompile Include="$(opensslDir)crypto\sha\sha_one.c" />
- <ClCompile Include="$(opensslDir)crypto\sha\sha1_one.c" />
- <ClCompile Include="$(opensslDir)crypto\sha\sha1dgst.c" />
- <ClCompile Include="$(opensslDir)crypto\sha\sha256.c" />
- <ClCompile Include="$(opensslDir)crypto\sha\sha512.c" />
- <ClCompile Include="$(opensslDir)crypto\srp\srp_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\srp\srp_vfy.c" />
- <ClCompile Include="$(opensslDir)crypto\stack\stack.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\ts\ts_asn1.c" />
- <ClCompile Include="$(opensslDir)crypto\ts\ts_conf.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\ts\ts_err.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\ts\ts_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\ts\ts_req_print.c" />
- <ClCompile Include="$(opensslDir)crypto\ts\ts_req_utils.c" />
- <ClCompile Include="$(opensslDir)crypto\ts\ts_rsp_print.c" />
- <ClCompile Include="$(opensslDir)crypto\ts\ts_rsp_sign.c" />
- <ClCompile Include="$(opensslDir)crypto\ts\ts_rsp_utils.c" />
- <ClCompile Include="$(opensslDir)crypto\ts\ts_rsp_verify.c" />
- <ClCompile Include="$(opensslDir)crypto\ts\ts_verify_ctx.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\txt_db\txt_db.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\ui\ui_compat.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\ui\ui_err.c" />
- <ClCompile Include="$(opensslDir)crypto\ui\ui_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\ui\ui_openssl.c" />
- <ClCompile Include="$(opensslDir)crypto\ui\ui_util.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\uid.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\whrlpool\wp_dgst.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\by_dir.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\by_file.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\x_all.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\x509_att.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\x509_cmp.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\x509_d2.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\x509_def.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\x509_err.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\x509_ext.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\x509_lu.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\x509_obj.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\x509\x509_r2x.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\x509\x509_req.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\x509\x509_set.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\x509\x509_trs.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\x509_txt.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\x509_v3.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\x509_vfy.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\x509_vpm.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\x509cset.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\x509name.c" />
- <ClCompile Include="$(opensslDir)crypto\x509\x509rset.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\x509\x509spki.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\x509\x509type.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\pcy_cache.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\pcy_data.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\pcy_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\pcy_map.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\pcy_node.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\pcy_tree.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_addr.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_akey.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_akeya.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_alt.c" />
- <!--
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_asid.c" />
- -->
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_bcons.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_bitst.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_conf.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_cpols.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_crld.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_enum.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_extku.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_genn.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_ia5.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_info.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_int.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_lib.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_ncons.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_ocsp.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_pci.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_pcia.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_pcons.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_pku.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_pmaps.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_prn.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_purp.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_scts.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_skey.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_sxnet.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3_utl.c" />
- <ClCompile Include="$(opensslDir)crypto\x509v3\v3err.c" />
- <ClCompile Include="$(opensslDir)engines\ccgost\e_gost_err.c" />
- <ClCompile Include="$(opensslDir)engines\ccgost\gost_ameth.c" />
- <ClCompile Include="$(opensslDir)engines\ccgost\gost_asn1.c" />
- <ClCompile Include="$(opensslDir)engines\ccgost\gost_crypt.c" />
- <ClCompile Include="$(opensslDir)engines\ccgost\gost_ctl.c" />
- <ClCompile Include="$(opensslDir)engines\ccgost\gost_eng.c" />
- <ClCompile Include="$(opensslDir)engines\ccgost\gost_keywrap.c" />
- <ClCompile Include="$(opensslDir)engines\ccgost\gost_md.c" />
- <ClCompile Include="$(opensslDir)engines\ccgost\gost_params.c" />
- <ClCompile Include="$(opensslDir)engines\ccgost\gost_pmeth.c" />
- <ClCompile Include="$(opensslDir)engines\ccgost\gost_sign.c" />
- <ClCompile Include="$(opensslDir)engines\ccgost\gost2001.c" />
- <ClCompile Include="$(opensslDir)engines\ccgost\gost2001_keyx.c" />
- <ClCompile Include="$(opensslDir)engines\ccgost\gost89.c" />
- <ClCompile Include="$(opensslDir)engines\ccgost\gost94_keyx.c" />
- <ClCompile Include="$(opensslDir)engines\ccgost\gosthash.c" />
- <ClCompile Include="$(opensslDir)engines\e_4758cca.c" />
- <ClCompile Include="$(opensslDir)engines\e_aep.c" />
- <ClCompile Include="$(opensslDir)engines\e_atalla.c" />
- <ClCompile Include="$(opensslDir)engines\e_capi.c" />
- <ClCompile Include="$(opensslDir)engines\e_chil.c" />
- <ClCompile Include="$(opensslDir)engines\e_cswift.c" />
- <ClCompile Include="$(opensslDir)engines\e_gmp.c" />
- <ClCompile Include="$(opensslDir)engines\e_nuron.c" />
- <ClCompile Include="$(opensslDir)engines\e_padlock.c" />
- <ClCompile Include="$(opensslDir)engines\e_sureware.c" />
- <ClCompile Include="$(opensslDir)engines\e_ubsec.c" />
- <ClCompile Include="$(opensslDir)ssl\d1_clnt.c" />
- <ClCompile Include="$(opensslDir)ssl\d1_meth.c" />
- <ClCompile Include="$(opensslDir)ssl\d1_lib.c" />
- <ClCompile Include="$(opensslDir)ssl\d1_srvr.c" />
- <ClCompile Include="$(opensslDir)ssl\s2_srvr.c" />
- <ClCompile Include="$(opensslDir)ssl\t1_clnt.c" />
- <ClCompile Include="$(opensslDir)ssl\t1_ext.c" />
- <ClCompile Include="$(opensslDir)ssl\t1_srvr.c" />
- </ItemGroup>
- <ItemGroup Condition="$(Platform) == 'Win32'">
- <ClCompile Include="$(opensslDir)crypto\whrlpool\wp_block.c" />
- </ItemGroup>
- <ItemGroup Condition="$(Platform) == 'x64'">
- <ClCompile Include="$(opensslDir)crypto\bf\bf_enc.c" />
- <ClCompile Include="$(opensslDir)crypto\bn\bn_asm.c" />
- <ClCompile Include="$(opensslDir)crypto\camellia\cmll_misc.c" />
- <ClCompile Include="$(opensslDir)crypto\cast\c_enc.c" />
- <ClCompile Include="$(opensslDir)crypto\des\des_enc.c" />
- <ClCompile Include="$(opensslDir)crypto\des\fcrypt_b.c" />
- </ItemGroup>
-
- <ItemGroup Condition="$(Platform) == 'Win32'">
- <NasmCompile Include="$(opensslDir)tmp32\aes-586.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\aesni-x86.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\bf-586.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\bn-586.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\cast-586.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\cmll-x86.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\co-586.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\crypt586.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\des-586.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\ghash-x86.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\md5-586.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\rc4-586.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\rmd-586.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\sha1-586.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\sha256-586.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\sha512-586.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\vpaes-x86.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\wp-mmx.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\x86cpuid.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\x86-gf2m.asm" />
- <NasmCompile Include="$(opensslDir)tmp32\x86-mont.asm" />
- </ItemGroup>
- <ItemGroup Condition="$(Platform) == 'x64'">
- <NasmCompile Include="$(opensslDir)tmp64\aesni-sha1-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\aesni-sha1-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\aesni-gcm-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\aesni-mb-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\aesni-sha256-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\aesni-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\aes-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\bsaes-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\cmll-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\ghash-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\md5-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\rc4-md5-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\rc4-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\sha1-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\sha1-mb-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\sha256-mb-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\sha256-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\sha512-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\vpaes-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\wp-x86_64.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\x86_64cpuid.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\x86_64-gf2m.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\x86_64-mont.asm" />
- <NasmCompile Include="$(opensslDir)tmp64\x86_64-mont5.asm" />
- </ItemGroup>
-
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <Target Name="Clean" />
- <Target Name="CleanAll">
- <Delete Files="$(TargetPath)" />
- <RemoveDir Directories="$(IntDir)" />
- </Target>
-</Project> \ No newline at end of file
diff --git a/PCbuild/openssl.props b/PCbuild/openssl.props
index 0fc8adc970..9ebe8a645f 100644
--- a/PCbuild/openssl.props
+++ b/PCbuild/openssl.props
@@ -1,77 +1,24 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?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="_WINSOCK_DEPRECATED_NO_WARNINGS" />
- <PreprocessorDefinitions Include="OPENSSL_THREADS" />
- <!-- <PreprocessorDefinitions Include="OPENSSL_SYSNAME_WIN32" /> -->
- <PreprocessorDefinitions Include="OPENSSL_IA32_SSE2" />
- <PreprocessorDefinitions Include="OPENSSL_BN_ASM_GF2m" />
- <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_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>
+ <AdditionalIncludeDirectories>$(opensslIncludeDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
+ <Link>
+ <AdditionalLibraryDirectories>$(opensslOutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <AdditionalDependencies>ws2_32.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ </Link>
</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>
+ <ItemGroup>
+ <_SSLDLL Include="$(opensslOutDir)\libeay32.dll" />
+ <_SSLDLL Include="$(opensslOutDir)\libeay32.pdb" />
+ <_SSLDLL Include="$(opensslOutDir)\ssleay32.dll" />
+ <_SSLDLL Include="$(opensslOutDir)\ssleay32.pdb" />
+ </ItemGroup>
+ <Target Name="_CopySSLDLL" Inputs="@(_SSLDLL)" Outputs="@(_SSLDLL->'$(OutDir)%(Filename)%(Extension)')" AfterTargets="Build">
+ <Copy SourceFiles="@(_SSLDLL)" DestinationFolder="$(OutDir)" />
</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 Name="_CleanSSLDLL" BeforeTargets="Clean">
+ <Delete Files="@(_SSLDLL->'$(OutDir)%(Filename)%(Extension)')" />
</Target>
-</Project>
+</Project> \ No newline at end of file
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
diff --git a/PCbuild/pcbuild.proj b/PCbuild/pcbuild.proj
index c6b8487c0a..8d30e0895c 100644
--- a/PCbuild/pcbuild.proj
+++ b/PCbuild/pcbuild.proj
@@ -55,7 +55,7 @@
<!-- _ssl will build _socket as well, which may cause conflicts in parallel builds -->
<ExtensionModules Include="_socket" Condition="!$(IncludeSSL) or !$(IncludeExternals)" />
<ExternalModules Include="_ssl;_hashlib" Condition="$(IncludeSSL)" />
- <ExternalModules Include="_tkinter;tix" Condition="$(IncludeTkinter)" />
+ <ExternalModules Include="_tkinter" Condition="$(IncludeTkinter)" />
<ExtensionModules Include="@(ExternalModules->'%(Identity)')" Condition="$(IncludeExternals)" />
<Projects Include="@(ExtensionModules->'%(Identity).vcxproj')" Condition="$(IncludeExtensions)" />
<!-- Test modules -->
diff --git a/PCbuild/pcbuild.sln b/PCbuild/pcbuild.sln
index 280c486703..82cfaf249d 100644
--- a/PCbuild/pcbuild.sln
+++ b/PCbuild/pcbuild.sln
@@ -1,6 +1,6 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
-VisualStudioVersion = 15.0.26430.6
+VisualStudioVersion = 15.0.26621.2
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{553EC33E-9816-4996-A660-5D6186A0B0B3}"
ProjectSection(SolutionItems) = preProject
@@ -83,16 +83,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testembed", "_testembed.vc
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testmultiphase", "_testmultiphase.vcxproj", "{16BFE6F0-22EF-40B5-B831-7E937119EF10}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tcl", "tcl.vcxproj", "{B5FD6F1D-129E-4BFF-9340-03606FAC7283}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tix", "tix.vcxproj", "{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tk", "tk.vcxproj", "{7E85ECCF-A72C-4DA4-9E52-884508E80BA1}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libeay", "libeay.vcxproj", "{E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssleay", "ssleay.vcxproj", "{10615B24-73BF-4EFA-93AA-236916321317}"
-EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pyshellext", "pyshellext.vcxproj", "{0F6EE4A4-C75F-4578-B4B3-2D64F4B9B782}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "_testconsole", "_testconsole.vcxproj", "{B244E787-C445-441C-BDF4-5A4F1A3A1E51}"
@@ -621,86 +611,6 @@ Global
{16BFE6F0-22EF-40B5-B831-7E937119EF10}.Release|Win32.Build.0 = Release|Win32
{16BFE6F0-22EF-40B5-B831-7E937119EF10}.Release|x64.ActiveCfg = Release|x64
{16BFE6F0-22EF-40B5-B831-7E937119EF10}.Release|x64.Build.0 = Release|x64
- {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Debug|Win32.ActiveCfg = Debug|Win32
- {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Debug|Win32.Build.0 = Debug|Win32
- {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Debug|x64.ActiveCfg = Debug|x64
- {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Debug|x64.Build.0 = Debug|x64
- {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|Win32.ActiveCfg = Release|Win32
- {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|Win32.Build.0 = Release|Win32
- {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|x64.ActiveCfg = Release|x64
- {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGInstrument|x64.Build.0 = Release|x64
- {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|Win32.ActiveCfg = Release|Win32
- {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|Win32.Build.0 = Release|Win32
- {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|x64.ActiveCfg = Release|x64
- {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.PGUpdate|x64.Build.0 = Release|x64
- {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|Win32.ActiveCfg = Release|Win32
- {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|Win32.Build.0 = Release|Win32
- {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|x64.ActiveCfg = Release|x64
- {B5FD6F1D-129E-4BFF-9340-03606FAC7283}.Release|x64.Build.0 = Release|x64
- {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|Win32.ActiveCfg = Debug|Win32
- {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|Win32.Build.0 = Debug|Win32
- {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|x64.ActiveCfg = Debug|x64
- {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Debug|x64.Build.0 = Debug|x64
- {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|Win32.ActiveCfg = Release|Win32
- {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|Win32.Build.0 = Release|Win32
- {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|x64.ActiveCfg = Release|x64
- {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGInstrument|x64.Build.0 = Release|x64
- {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|Win32.ActiveCfg = Release|Win32
- {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|Win32.Build.0 = Release|Win32
- {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|x64.ActiveCfg = Release|x64
- {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.PGUpdate|x64.Build.0 = Release|x64
- {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|Win32.ActiveCfg = Release|Win32
- {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|Win32.Build.0 = Release|Win32
- {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|x64.ActiveCfg = Release|x64
- {C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}.Release|x64.Build.0 = Release|x64
- {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|Win32.ActiveCfg = Debug|Win32
- {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|Win32.Build.0 = Debug|Win32
- {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|x64.ActiveCfg = Debug|x64
- {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Debug|x64.Build.0 = Debug|x64
- {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|Win32.ActiveCfg = Release|Win32
- {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|Win32.Build.0 = Release|Win32
- {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|x64.ActiveCfg = Release|x64
- {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGInstrument|x64.Build.0 = Release|x64
- {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|Win32.ActiveCfg = Release|Win32
- {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|Win32.Build.0 = Release|Win32
- {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|x64.ActiveCfg = Release|x64
- {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.PGUpdate|x64.Build.0 = Release|x64
- {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|Win32.ActiveCfg = Release|Win32
- {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|Win32.Build.0 = Release|Win32
- {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|x64.ActiveCfg = Release|x64
- {7E85ECCF-A72C-4DA4-9E52-884508E80BA1}.Release|x64.Build.0 = Release|x64
- {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Debug|Win32.ActiveCfg = Debug|Win32
- {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Debug|Win32.Build.0 = Debug|Win32
- {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Debug|x64.ActiveCfg = Debug|x64
- {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Debug|x64.Build.0 = Debug|x64
- {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGInstrument|Win32.ActiveCfg = Release|Win32
- {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGInstrument|Win32.Build.0 = Release|Win32
- {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGInstrument|x64.ActiveCfg = Release|x64
- {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGInstrument|x64.Build.0 = Release|x64
- {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGUpdate|Win32.ActiveCfg = Release|Win32
- {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGUpdate|Win32.Build.0 = Release|Win32
- {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGUpdate|x64.ActiveCfg = Release|x64
- {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.PGUpdate|x64.Build.0 = Release|x64
- {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Release|Win32.ActiveCfg = Release|Win32
- {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Release|Win32.Build.0 = Release|Win32
- {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Release|x64.ActiveCfg = Release|x64
- {E5B04CC0-EB4C-42AB-B4DC-18EF95F864B0}.Release|x64.Build.0 = Release|x64
- {10615B24-73BF-4EFA-93AA-236916321317}.Debug|Win32.ActiveCfg = Debug|Win32
- {10615B24-73BF-4EFA-93AA-236916321317}.Debug|Win32.Build.0 = Debug|Win32
- {10615B24-73BF-4EFA-93AA-236916321317}.Debug|x64.ActiveCfg = Debug|x64
- {10615B24-73BF-4EFA-93AA-236916321317}.Debug|x64.Build.0 = Debug|x64
- {10615B24-73BF-4EFA-93AA-236916321317}.PGInstrument|Win32.ActiveCfg = Release|Win32
- {10615B24-73BF-4EFA-93AA-236916321317}.PGInstrument|Win32.Build.0 = Release|Win32
- {10615B24-73BF-4EFA-93AA-236916321317}.PGInstrument|x64.ActiveCfg = Release|x64
- {10615B24-73BF-4EFA-93AA-236916321317}.PGInstrument|x64.Build.0 = Release|x64
- {10615B24-73BF-4EFA-93AA-236916321317}.PGUpdate|Win32.ActiveCfg = Release|Win32
- {10615B24-73BF-4EFA-93AA-236916321317}.PGUpdate|Win32.Build.0 = Release|Win32
- {10615B24-73BF-4EFA-93AA-236916321317}.PGUpdate|x64.ActiveCfg = Release|x64
- {10615B24-73BF-4EFA-93AA-236916321317}.PGUpdate|x64.Build.0 = Release|x64
- {10615B24-73BF-4EFA-93AA-236916321317}.Release|Win32.ActiveCfg = Release|Win32
- {10615B24-73BF-4EFA-93AA-236916321317}.Release|Win32.Build.0 = Release|Win32
- {10615B24-73BF-4EFA-93AA-236916321317}.Release|x64.ActiveCfg = Release|x64
- {10615B24-73BF-4EFA-93AA-236916321317}.Release|x64.Build.0 = Release|x64
{0F6EE4A4-C75F-4578-B4B3-2D64F4B9B782}.Debug|Win32.ActiveCfg = Debug|Win32
{0F6EE4A4-C75F-4578-B4B3-2D64F4B9B782}.Debug|Win32.Build.0 = Debug|Win32
{0F6EE4A4-C75F-4578-B4B3-2D64F4B9B782}.Debug|x64.ActiveCfg = Debug|x64
@@ -769,4 +679,7 @@ Global
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {5C33FFD3-C8DC-4A54-B842-8BA9846BDFFE}
+ EndGlobalSection
EndGlobal
diff --git a/PCbuild/prepare_ssl.bat b/PCbuild/prepare_ssl.bat
index ef8f7ad884..1df5b8d9f5 100644
--- a/PCbuild/prepare_ssl.bat
+++ b/PCbuild/prepare_ssl.bat
@@ -1,12 +1,53 @@
@echo off
-if not defined HOST_PYTHON (
- if "%1" EQU "Debug" (
- shift
- set HOST_PYTHON=python_d.exe
- if not exist python37_d.dll exit 1
- ) ELSE (
- set HOST_PYTHON=python.exe
- if not exist python37.dll exit 1
- )
-)
-%HOST_PYTHON% "%~dp0prepare_ssl.py" %1
+rem Downloads and build sources for libraries we depend upon
+
+goto Run
+:Usage
+echo.%~nx0 [flags and arguments]
+echo.
+echo.Download and build OpenSSL. This should only be performed in order to
+echo.update the binaries kept online - in most cases, the files downloaded
+echo.by the get_externals.bat script are sufficient for building CPython.
+echo.
+echo.Available flags:
+echo. -h Display this help message
+echo.
+echo.Available arguments:
+echo. --certificate (-c) The signing certificate to use for binaries.
+echo. --organization The github organization to obtain sources from.
+echo.
+exit /b 127
+
+:Run
+setlocal
+if "%PCBUILD%"=="" (set PCBUILD=%~dp0)
+if "%EXTERNALS_DIR%"=="" (set EXTERNALS_DIR=%PCBUILD%\..\externals)
+
+set ORG_SETTING=
+
+:CheckOpts
+if "%~1"=="-h" shift & goto Usage
+if "%~1"=="--certificate" (set SigningCertificate=%~2) && shift && shift & goto CheckOpts
+if "%~1"=="-c" (set SigningCertificate=%~2) && shift && shift & goto CheckOpts
+if "%~1"=="--organization" (set ORG_SETTING=--organization "%~2") && shift && shift && goto CheckOpts
+
+if "%~1"=="" goto Build
+echo Unrecognized option: %1
+goto Usage
+
+:Build
+call "%PCBUILD%find_msbuild.bat" %MSBUILD%
+if ERRORLEVEL 1 (echo Cannot locate MSBuild.exe on PATH or as MSBUILD variable & exit /b 2)
+
+call "%PCBUILD%find_python.bat" "%PYTHON%"
+if ERRORLEVEL 1 (echo Cannot locate python.exe on PATH or as PYTHON variable & exit /b 3)
+
+call "%PCBUILD%get_externals.bat" --openssl-src %ORG_SETTING%
+
+if "%PERL%" == "" where perl > "%TEMP%\perl.loc" 2> nul && set /P PERL= <"%TEMP%\perl.loc" & del "%TEMP%\perl.loc"
+if "%PERL%" == "" (echo Cannot locate perl.exe on PATH or as PERL variable & exit /b 4)
+
+%MSBUILD% "%PCBUILD%openssl.vcxproj" /p:Configuration=Release /p:Platform=Win32
+if errorlevel 1 exit /b
+%MSBUILD% "%PCBUILD%openssl.vcxproj" /p:Configuration=Release /p:Platform=x64
+if errorlevel 1 exit /b
diff --git a/PCbuild/prepare_ssl.py b/PCbuild/prepare_ssl.py
index 3429254519..0f3c63ee24 100644
--- a/PCbuild/prepare_ssl.py
+++ b/PCbuild/prepare_ssl.py
@@ -21,6 +21,7 @@
from __future__ import print_function
import os
+import re
import sys
import subprocess
from shutil import copy
@@ -64,32 +65,8 @@ def find_working_perl(perls):
print(" Please install ActivePerl and ensure it appears on your path")
-def create_asms(makefile, tmp_d):
- #create a custom makefile out of the provided one
- asm_makefile = os.path.splitext(makefile)[0] + '.asm.mak'
- with open(makefile) as fin, open(asm_makefile, 'w') as fout:
- for line in fin:
- # Keep everything up to the install target (it's convenient)
- if line.startswith('install: all'):
- break
- fout.write(line)
- asms = []
- for line in fin:
- if '.asm' in line and line.strip().endswith('.pl'):
- asms.append(line.split(':')[0])
- while line.strip():
- fout.write(line)
- line = next(fin)
- fout.write('\n')
-
- fout.write('asms: $(TMP_D) ')
- fout.write(' '.join(asms))
- fout.write('\n')
- os.system('nmake /f {} PERL=perl TMP_D={} asms'.format(asm_makefile, tmp_d))
-
-
def copy_includes(makefile, suffix):
- dir = 'include'+suffix+'\\openssl'
+ dir = 'inc'+suffix+'\\openssl'
try:
os.makedirs(dir)
except OSError:
@@ -114,9 +91,29 @@ def run_configure(configure, do_script):
print(do_script)
os.system(do_script)
+def fix_uplink():
+ # uplink.c tries to find the OPENSSL_Applink function exported from the current
+ # executable. However, we export it from _ssl[_d].pyd instead. So we update the
+ # module name here before building.
+ with open('ms\\uplink.c', 'r', encoding='utf-8') as f1:
+ code = list(f1)
+ os.replace('ms\\uplink.c', 'ms\\uplink.c.orig')
+ already_patched = False
+ with open('ms\\uplink.c', 'w', encoding='utf-8') as f2:
+ for line in code:
+ if not already_patched:
+ if re.search('MODIFIED FOR CPYTHON _ssl MODULE', line):
+ already_patched = True
+ elif re.match(r'^\s+if\s*\(\(h\s*=\s*GetModuleHandle[AW]?\(NULL\)\)\s*==\s*NULL\)', line):
+ f2.write("/* MODIFIED FOR CPYTHON _ssl MODULE */\n")
+ f2.write('if ((h = GetModuleHandleW(L"_ssl.pyd")) == NULL) if ((h = GetModuleHandleW(L"_ssl_d.pyd")) == NULL)\n')
+ already_patched = True
+ f2.write(line)
+ if not already_patched:
+ print("WARN: failed to patch ms\\uplink.c")
def prep(arch):
- makefile_template = "ms\\nt{}.mak"
+ makefile_template = "ms\\ntdll{}.mak"
generated_makefile = makefile_template.format('')
if arch == "x86":
configure = "VC-WIN32"
@@ -126,13 +123,12 @@ def prep(arch):
configure = "VC-WIN64A"
do_script = "ms\\do_win64a"
suffix = "64"
- #os.environ["VSEXTCOMP_USECL"] = "MS_OPTERON"
else:
raise ValueError('Unrecognized platform: %s' % arch)
print("Creating the makefiles...")
sys.stdout.flush()
- # run configure, copy includes, create asms
+ # run configure, copy includes, patch files
run_configure(configure, do_script)
makefile = makefile_template.format(suffix)
try:
@@ -142,9 +138,8 @@ def prep(arch):
os.rename(generated_makefile, makefile)
copy_includes(makefile, suffix)
- print('creating asms...')
- create_asms(makefile, 'tmp'+suffix)
-
+ print('patching ms\\uplink.c...')
+ fix_uplink()
def main():
if len(sys.argv) == 1:
@@ -152,12 +147,17 @@ def main():
"sources must be supplied")
sys.exit(1)
- if len(sys.argv) > 2:
+ if len(sys.argv) == 3 and sys.argv[2] not in ('x86', 'amd64'):
+ print("Second argument must be x86 or amd64")
+ sys.exit(1)
+
+ if len(sys.argv) > 3:
print("Too many arguments supplied, all we need is the directory",
- "containing OpenSSL sources")
+ "containing OpenSSL sources and optionally the architecture")
sys.exit(1)
ssl_dir = sys.argv[1]
+ arch = sys.argv[2] if len(sys.argv) >= 3 else None
if not os.path.isdir(ssl_dir):
print(ssl_dir, "is not an existing directory!")
@@ -191,8 +191,11 @@ def main():
old_cwd = os.getcwd()
try:
os.chdir(ssl_dir)
- for arch in ['amd64', 'x86']:
+ if arch:
prep(arch)
+ else:
+ for arch in ['amd64', 'x86']:
+ prep(arch)
finally:
os.chdir(old_cwd)
diff --git a/PCbuild/prepare_tcltk.bat b/PCbuild/prepare_tcltk.bat
new file mode 100644
index 0000000000..7e6d43e994
--- /dev/null
+++ b/PCbuild/prepare_tcltk.bat
@@ -0,0 +1,55 @@
+@echo off
+rem Downloads and build sources for libraries we depend upon
+
+goto Run
+:Usage
+echo.%~nx0 [flags and arguments]
+echo.
+echo.Download and build Tcl/Tk. This should only be performed in order to
+echo.update the binaries kept online - in most cases, the files downloaded
+echo.by the get_externals.bat script are sufficient for building CPython.
+echo.
+echo.Available flags:
+echo. -h Display this help message
+echo.
+echo.Available arguments:
+echo. --certificate (-c) The signing certificate to use for binaries.
+echo. --organization The github organization to obtain sources from.
+echo.
+exit /b 127
+
+:Run
+setlocal
+
+if "%PCBUILD%"=="" (set PCBUILD=%~dp0)
+if "%EXTERNALS_DIR%"=="" (set EXTERNALS_DIR=%PCBUILD%\..\externals)
+
+set CERT_SETTING=
+set ORG_SETTING=
+
+:CheckOpts
+if "%~1"=="-h" shift & goto Usage
+if "%~1"=="--certificate" (set SigningCertificate=%~2) && shift && shift & goto CheckOpts
+if "%~1"=="-c" (set SigningCertificate=%~2) && shift && shift & goto CheckOpts
+if "%~1"=="--organization" (set ORG_SETTING=--organization "%~2") && shift && shift && goto CheckOpts
+
+if "%~1"=="" goto Build
+echo Unrecognized option: %1
+goto Usage
+
+:Build
+call "%PCBUILD%find_msbuild.bat" %MSBUILD%
+if ERRORLEVEL 1 (echo Cannot locate MSBuild.exe on PATH or as MSBUILD variable & exit /b 2)
+
+rem call "%PCBUILD%find_python.bat" "%PYTHON%"
+rem if ERRORLEVEL 1 (echo Cannot locate python.exe on PATH or as PYTHON variable & exit /b 3)
+
+call "%PCBUILD%get_externals.bat" --tkinter-src %ORG_SETTING%
+
+%MSBUILD% "%PCBUILD%tcl.vcxproj" /p:Configuration=Release /p:Platform=Win32
+%MSBUILD% "%PCBUILD%tk.vcxproj" /p:Configuration=Release /p:Platform=Win32
+%MSBUILD% "%PCBUILD%tix.vcxproj" /p:Configuration=Release /p:Platform=Win32
+
+%MSBUILD% "%PCBUILD%tcl.vcxproj" /p:Configuration=Release /p:Platform=x64
+%MSBUILD% "%PCBUILD%tk.vcxproj" /p:Configuration=Release /p:Platform=x64
+%MSBUILD% "%PCBUILD%tix.vcxproj" /p:Configuration=Release /p:Platform=x64
diff --git a/PCbuild/pyproject.props b/PCbuild/pyproject.props
index 7012170e0c..6ab9b6533f 100644
--- a/PCbuild/pyproject.props
+++ b/PCbuild/pyproject.props
@@ -152,7 +152,7 @@ foreach (System.Diagnostics.Process p in System.Diagnostics.Process.GetProcesses
<SdkBinPath Condition="!Exists($(SdkBinPath))">$(registry:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Kits\Installed Roots@KitsRoot81)\bin\x86</SdkBinPath>
<SdkBinPath Condition="!Exists($(SdkBinPath))">$(registry:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows Kits\Installed Roots@KitsRoot)\bin\x86</SdkBinPath>
<SdkBinPath Condition="!Exists($(SdkBinPath))">$(registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.1A@InstallationFolder)\Bin\</SdkBinPath>
- <_SignCommand Condition="Exists($(SdkBinPath)) and '$(SigningCertificate)' != '' and $(SupportSigning)">"$(SdkBinPath)\signtool.exe" sign /q /n "$(SigningCertificate)" /fd sha256 /t http://timestamp.verisign.com/scripts/timestamp.dll /d "Python $(PythonVersion)"</_SignCommand>
+ <_SignCommand Condition="Exists($(SdkBinPath)) and '$(SigningCertificate)' != '' and $(SupportSigning)">"$(SdkBinPath)\signtool.exe" sign /q /a /n "$(SigningCertificate)" /fd sha256 /t http://timestamp.verisign.com/scripts/timestamp.dll /d "Python $(PythonVersion)"</_SignCommand>
<_MakeCatCommand Condition="Exists($(SdkBinPath))">"$(SdkBinPath)\makecat.exe"</_MakeCatCommand>
</PropertyGroup>
diff --git a/PCbuild/python.props b/PCbuild/python.props
index 563487e0c3..c81cd94fe4 100644
--- a/PCbuild/python.props
+++ b/PCbuild/python.props
@@ -46,8 +46,8 @@
<bz2Dir>$(ExternalsDir)bzip2-1.0.6\</bz2Dir>
<lzmaDir>$(ExternalsDir)xz-5.2.2\</lzmaDir>
<opensslDir>$(ExternalsDir)openssl-1.0.2k\</opensslDir>
- <opensslIncludeDir>$(opensslDir)include32</opensslIncludeDir>
- <opensslIncludeDir Condition="'$(ArchName)' == 'amd64'">$(opensslDir)include64</opensslIncludeDir>
+ <opensslOutDir>$(ExternalsDir)openssl-bin-1.0.2k\$(ArchName)\</opensslOutDir>
+ <opensslIncludeDir>$(opensslOutDir)include</opensslIncludeDir>
<nasmDir>$(ExternalsDir)\nasm-2.11.06\</nasmDir>
<!-- Suffix for all binaries when building for debug -->
@@ -72,6 +72,8 @@
-->
<DefaultWindowsSDKVersion Condition="$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v10.0@ProductVersion) == '10.0.15063'">10.0.15063.0</DefaultWindowsSDKVersion>
<DefaultWindowsSDKVersion Condition="$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Microsoft SDKs\Windows\v10.0@ProductVersion) == '10.0.15063'">10.0.15063.0</DefaultWindowsSDKVersion>
+ <DefaultWindowsSDKVersion Condition="$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v10.0@ProductVersion) == '10.0.14393'">10.0.14393.0</DefaultWindowsSDKVersion>
+ <DefaultWindowsSDKVersion Condition="$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Microsoft SDKs\Windows\v10.0@ProductVersion) == '10.0.14393'">10.0.14393.0</DefaultWindowsSDKVersion>
<DefaultWindowsSDKVersion Condition="$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v10.0@ProductVersion) == '10.0.10586'">10.0.10586.0</DefaultWindowsSDKVersion>
<DefaultWindowsSDKVersion Condition="$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Microsoft SDKs\Windows\v10.0@ProductVersion) == '10.0.10586'">10.0.10586.0</DefaultWindowsSDKVersion>
<DefaultWindowsSDKVersion Condition="$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v10.0@ProductVersion) == '10.0.10240'">10.0.10240.0</DefaultWindowsSDKVersion>
diff --git a/PCbuild/ssleay.vcxproj b/PCbuild/ssleay.vcxproj
deleted file mode 100644
index 439e3ac674..0000000000
--- a/PCbuild/ssleay.vcxproj
+++ /dev/null
@@ -1,119 +0,0 @@
-<?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>{10615B24-73BF-4EFA-93AA-236916321317}</ProjectGuid>
- <RootNamespace>ssleay</RootNamespace>
- </PropertyGroup>
-
- <Import Project="python.props" />
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
-
- <PropertyGroup Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- </PropertyGroup>
-
- <Import Project="openssl.props" />
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
-
- <ItemGroup>
- <!--
- <ClCompile Include="$(opensslDir)ssl\bio_ssl.c" />
- -->
- <ClCompile Include="$(opensslDir)ssl\d1_both.c" />
- <!--
- <ClCompile Include="$(opensslDir)ssl\d1_clnt.c" />
- <ClCompile Include="$(opensslDir)ssl\d1_enc.c" />
- -->
- <ClCompile Include="$(opensslDir)ssl\d1_lib.c" />
- <!--
- <ClCompile Include="$(opensslDir)ssl\d1_meth.c" />
- -->
- <ClCompile Include="$(opensslDir)ssl\d1_pkt.c" />
- <ClCompile Include="$(opensslDir)ssl\d1_srtp.c" />
- <!--
- <ClCompile Include="$(opensslDir)ssl\d1_srvr.c" />
- <ClCompile Include="$(opensslDir)ssl\kssl.c" />
- -->
- <ClCompile Include="$(opensslDir)ssl\s2_clnt.c" />
- <ClCompile Include="$(opensslDir)ssl\s2_enc.c" />
- <ClCompile Include="$(opensslDir)ssl\s2_lib.c" />
- <ClCompile Include="$(opensslDir)ssl\s2_meth.c" />
- <ClCompile Include="$(opensslDir)ssl\s2_pkt.c" />
- <ClCompile Include="$(opensslDir)ssl\s2_srvr.c" />
- <ClCompile Include="$(opensslDir)ssl\s23_clnt.c" />
- <ClCompile Include="$(opensslDir)ssl\s23_lib.c" />
- <ClCompile Include="$(opensslDir)ssl\s23_meth.c" />
- <ClCompile Include="$(opensslDir)ssl\s23_pkt.c" />
- <ClCompile Include="$(opensslDir)ssl\s23_srvr.c" />
- <ClCompile Include="$(opensslDir)ssl\s3_both.c" />
- <ClCompile Include="$(opensslDir)ssl\s3_cbc.c" />
- <ClCompile Include="$(opensslDir)ssl\s3_clnt.c" />
- <ClCompile Include="$(opensslDir)ssl\s3_enc.c" />
- <ClCompile Include="$(opensslDir)ssl\s3_lib.c" />
- <ClCompile Include="$(opensslDir)ssl\s3_meth.c" />
- <ClCompile Include="$(opensslDir)ssl\s3_pkt.c" />
- <ClCompile Include="$(opensslDir)ssl\s3_srvr.c" />
- <ClCompile Include="$(opensslDir)ssl\ssl_algs.c" />
- <ClCompile Include="$(opensslDir)ssl\ssl_asn1.c" />
- <ClCompile Include="$(opensslDir)ssl\ssl_cert.c" />
- <ClCompile Include="$(opensslDir)ssl\ssl_ciph.c" />
- <ClCompile Include="$(opensslDir)ssl\ssl_err.c" />
- <ClCompile Include="$(opensslDir)ssl\ssl_err2.c" />
- <ClCompile Include="$(opensslDir)ssl\ssl_lib.c" />
- <ClCompile Include="$(opensslDir)ssl\ssl_rsa.c" />
- <ClCompile Include="$(opensslDir)ssl\ssl_sess.c" />
- <!--
- <ClCompile Include="$(opensslDir)ssl\ssl_stat.c" />
- <ClCompile Include="$(opensslDir)ssl\ssl_txt.c" />
- <ClCompile Include="$(opensslDir)ssl\ssl_utst.c" />
- -->
- <ClCompile Include="$(opensslDir)ssl\t1_clnt.c" />
- <ClCompile Include="$(opensslDir)ssl\t1_enc.c" />
- <ClCompile Include="$(opensslDir)ssl\t1_lib.c" />
- <ClCompile Include="$(opensslDir)ssl\t1_meth.c" />
- <ClCompile Include="$(opensslDir)ssl\t1_reneg.c" />
- <ClCompile Include="$(opensslDir)ssl\t1_srvr.c" />
- <ClCompile Include="$(opensslDir)ssl\tls_srp.c" />
- </ItemGroup>
-
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <Target Name="Clean" />
- <Target Name="CleanAll">
- <Delete Files="$(TargetPath)" />
- <RemoveDir Directories="$(IntDir)" />
- </Target>
-</Project> \ No newline at end of file
diff --git a/PCbuild/tcl.vcxproj b/PCbuild/tcl.vcxproj
index 3dfd155810..28a0ee9099 100644
--- a/PCbuild/tcl.vcxproj
+++ b/PCbuild/tcl.vcxproj
@@ -48,16 +48,6 @@
<TargetPath>$(OutDir)bin\$(tclDLLName)</TargetPath>
</PropertyGroup>
- <ItemGroup>
- <ExpectedOutputs Include="
- $(OutDir)\bin\$(tclDLLName);
- $(OutDir)\bin\$(tclShExeName);
- $(OutDir)\include\tcl.h;
- $(OutDir)\lib\tcl$(TclMajorVersion);
- $(OutDir)\lib\tcl$(TclMajorVersion).$(TclMinorVersion);
- $(OutDir)\lib\$(tclLibName)" />
- </ItemGroup>
-
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<PropertyGroup>
@@ -66,28 +56,17 @@
<TclDirs>INSTALLDIR="$(OutDir.TrimEnd(`\`))" INSTALL_DIR="$(OutDir.TrimEnd(`\`))"</TclDirs>
<DebugFlags Condition="'$(Configuration)' == 'Debug'">DEBUGFLAGS="-wd4456 -wd4457 -wd4458 -wd4459 -wd4996"</DebugFlags>
<NMakeBuildCommandLine>setlocal
-@(ExpectedOutputs->'if not exist "%(FullPath)" goto build','
-')
-goto :eof
-:build
set VCINSTALLDIR=$(VCInstallDir)
cd /D "$(tclDir)win"
nmake -f makefile.vc MACHINE=$(TclMachine) OPTS=$(TclOpts) $(TclDirs) $(DebugFlags) core shell dlls
nmake -f makefile.vc MACHINE=$(TclMachine) OPTS=$(TclOpts) $(TclDirs) $(DebugFlags) install-binaries install-libraries
+copy /Y ..\license.terms "$(OutDir)\tcllicense.terms"
</NMakeBuildCommandLine>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
-
- <Target Name="CopyDll" Inputs="$(OutDir)\bin\$(tclDLLName)" Outputs="$(BuildPath)$(tclDLLName)" AfterTargets="Build">
- <Copy SourceFiles="$(OutDir)\bin\$(tclDLLName)" DestinationFiles="$(BuildPath)$(tclDLLName)" />
- </Target>
-
+
<Target Name="Clean" />
- <Target Name="CleanAll">
- <Delete Files="$(TargetPath);$(BuildPath)$(tclDLLName)" />
- <RemoveDir Directories="$(IntDir)" />
- </Target>
<Target Name="ResolveAssemblyReferences" />
</Project> \ No newline at end of file
diff --git a/PCbuild/tcltk.props b/PCbuild/tcltk.props
index 57bb98aeeb..b913d34b0b 100644
--- a/PCbuild/tcltk.props
+++ b/PCbuild/tcltk.props
@@ -17,9 +17,8 @@
<tclDir>$(ExternalsDir)tcl-core-$(TclMajorVersion).$(TclMinorVersion).$(TclPatchLevel).$(TclRevision)\</tclDir>
<tkDir>$(ExternalsDir)tk-$(TkMajorVersion).$(TkMinorVersion).$(TkPatchLevel).$(TkRevision)\</tkDir>
<tixDir>$(ExternalsDir)tix-$(TixMajorVersion).$(TixMinorVersion).$(TixPatchLevel).$(TixRevision)\</tixDir>
- <tcltkDir>$(ExternalsDir)tcltk\</tcltkDir>
- <tcltkDir Condition="'$(Platform)' == 'x64'">$(ExternalsDir)tcltk64\</tcltkDir>
- <TclDebugExt Condition="'$(Configuration)' == 'Debug'">g</TclDebugExt>
+ <tcltkDir>$(ExternalsDir)tcltk-$(TclMajorVersion).$(TclMinorVersion).$(TclPatchLevel).$(TclRevision)\$(ArchName)\</tcltkDir>
+ <!--<TclDebugExt Condition="'$(Configuration)' == 'Debug'">g</TclDebugExt>-->
<tclDLLName>tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).dll</tclDLLName>
<tclLibName>tcl$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).lib</tclLibName>
<tclShExeName>tclsh$(TclMajorVersion)$(TclMinorVersion)t$(TclDebugExt).exe</tclShExeName>
diff --git a/PCbuild/tix.vcxproj b/PCbuild/tix.vcxproj
index 7d6d8ca8a6..525758c1c6 100644
--- a/PCbuild/tix.vcxproj
+++ b/PCbuild/tix.vcxproj
@@ -37,6 +37,7 @@
<PropertyGroup Label="Globals">
<ProjectGuid>{C5A3E7FB-9695-4B2E-960B-1D9F43F1E555}</ProjectGuid>
<RootNamespace>tix</RootNamespace>
+ <SupportSigning>true</SupportSigning>
</PropertyGroup>
<Import Project="python.props" />
@@ -49,10 +50,6 @@
<TargetPath>$(tixDLLPath)</TargetPath>
</PropertyGroup>
- <ItemGroup>
- <ExpectedOutputs Include="$(TargetPath)" />
- </ItemGroup>
-
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<PropertyGroup>
@@ -61,17 +58,22 @@
<DebugFlags Condition="'$(Configuration)' != 'Debug'">DEBUG=0 NODEBUG=1</DebugFlags>
<CFlags>-c -W3 -nologo -MD -wd4028 -wd4090</CFlags>
<NMakeBuildCommandLine>setlocal
-@(ExpectedOutputs->'if not exist "%(FullPath)" goto build','
-')
-goto :eof
-:build
set VCINSTALLDIR=$(VCInstallDir)
cd /D "$(tixDir)win"
nmake /nologo -f makefile.vc MACHINE=$(TclMachine) cflags="$(CFlags)" $(DebugFlags) $(TclShortVersions) $(TixDirs) all install
+copy /Y ..\license.terms "$(OutDir)\tixlicense.terms"
</NMakeBuildCommandLine>
<NMakeCleanCommandLine>rmdir /q/s "$(OutDir.TrimEnd(`\`))"</NMakeCleanCommandLine>
</PropertyGroup>
+ <Target Name="SignFiles" AfterTargets="Build" Condition="$(_SignCommand) != ''">
+ <ItemGroup>
+ <FilesToSign Include="$(OutDir)\bin\*.exe" />
+ <FilesToSign Include="$(OutDir)\bin\*.dll" />
+ </ItemGroup>
+ <Exec Command="$(_SignCommand) &quot;%(FilesToSign.FullPath)&quot;" ContinueOnError="true" />
+ </Target>
+
<ItemGroup>
<ProjectReference Include="tcl.vcxproj">
<Project>{b5fd6f1d-129e-4bff-9340-03606fac7283}</Project>
diff --git a/PCbuild/tk.vcxproj b/PCbuild/tk.vcxproj
index a26318bbe7..f90e482130 100644
--- a/PCbuild/tk.vcxproj
+++ b/PCbuild/tk.vcxproj
@@ -49,14 +49,6 @@
<TargetPath>$(OutDir)bin\$(tkDLLName)</TargetPath>
</PropertyGroup>
- <ItemGroup>
- <ExpectedOutputs Include="
- $(OutDir)bin\$(tkDLLName);
- $(OutDir)include\tk.h;
- $(OutDir)lib\$(tkLibName);
- $(OutDir)lib\tk$(TkMajorVersion).$(TkMinorVersion)" />
- </ItemGroup>
-
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<PropertyGroup>
@@ -65,14 +57,11 @@
<TkDirs>TCLDIR="$(tclDir.TrimEnd(`\`))" INSTALLDIR="$(OutDir.TrimEnd(`\`))"</TkDirs>
<DebugFlags Condition="'$(Configuration)' == 'Debug'">DEBUGFLAGS="-wd4456 -wd4457 -wd4458 -wd4459 -wd4996"</DebugFlags>
<NMakeBuildCommandLine>setlocal
-@(ExpectedOutputs->'if not exist "%(FullPath)" goto build','
-')
-goto :eof
-:build
set VCINSTALLDIR=$(VCInstallDir)
cd /D "$(tkDir)win"
nmake /nologo -f makefile.vc RC=rc MACHINE=$(TclMachine) OPTS=$(TkOpts) $(TkDirs) $(DebugFlags) all
nmake /nologo -f makefile.vc RC=rc MACHINE=$(TclMachine) OPTS=$(TkOpts) $(TkDirs) $(DebugFlags) install-binaries install-libraries
+copy /Y ..\license.terms "$(OutDir)\tklicense.terms"
</NMakeBuildCommandLine>
</PropertyGroup>
<ItemGroup>
@@ -83,15 +72,7 @@ nmake /nologo -f makefile.vc RC=rc MACHINE=$(TclMachine) OPTS=$(TkOpts) $(TkDirs
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <Target Name="CopyDll" Inputs="$(OutDir)\bin\$(tkDLLName)" Outputs="$(BuildPath)$(tkDLLName)" AfterTargets="Build">
- <Copy SourceFiles="$(OutDir)\bin\$(tkDLLName)" DestinationFiles="$(BuildPath)$(tkDLLName)" />
- </Target>
-
<Target Name="Clean" />
- <Target Name="CleanAll">
- <Delete Files="$(TargetPath);$(BuildPath)$(tkDLLName)" />
- <RemoveDir Directories="$(IntDir)" />
- </Target>
<Target Name="ResolveAssemblyReferences" />
</Project> \ No newline at end of file