From bbfa1d5698a5e144b353f71f8f5aafd8aa0f58fd Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Thu, 22 Oct 2015 15:50:08 -0700 Subject: add files to build openssl coapp package --- vsprojects/coapp/openssl/.gitignore | 10 + vsprojects/coapp/openssl/README.md | 37 + vsprojects/coapp/openssl/buildall-nmake.bat | 64 ++ vsprojects/coapp/openssl/buildall.bat | 59 ++ .../openssl/grpc.dependencies.openssl.autopkg | 101 +++ vsprojects/coapp/openssl/libeay32.vcxproj | 825 +++++++++++++++++++++ .../grpc.dependencies.openssl.redist.props | 12 + .../grpc.dependencies.openssl.redist.targets | 17 + vsprojects/coapp/openssl/openssl.sln | 39 + vsprojects/coapp/openssl/packages.config | 5 + vsprojects/coapp/openssl/ssleay32.vcxproj | 237 ++++++ vsprojects/coapp/openssl/version.inc | 1 + 12 files changed, 1407 insertions(+) create mode 100644 vsprojects/coapp/openssl/.gitignore create mode 100644 vsprojects/coapp/openssl/README.md create mode 100644 vsprojects/coapp/openssl/buildall-nmake.bat create mode 100644 vsprojects/coapp/openssl/buildall.bat create mode 100644 vsprojects/coapp/openssl/grpc.dependencies.openssl.autopkg create mode 100644 vsprojects/coapp/openssl/libeay32.vcxproj create mode 100644 vsprojects/coapp/openssl/managed_targets/grpc.dependencies.openssl.redist.props create mode 100644 vsprojects/coapp/openssl/managed_targets/grpc.dependencies.openssl.redist.targets create mode 100644 vsprojects/coapp/openssl/openssl.sln create mode 100644 vsprojects/coapp/openssl/packages.config create mode 100644 vsprojects/coapp/openssl/ssleay32.vcxproj create mode 100644 vsprojects/coapp/openssl/version.inc diff --git a/vsprojects/coapp/openssl/.gitignore b/vsprojects/coapp/openssl/.gitignore new file mode 100644 index 0000000000..1482603721 --- /dev/null +++ b/vsprojects/coapp/openssl/.gitignore @@ -0,0 +1,10 @@ +*.nupkg +*.def +/nuget.exe +/packages +/Debug +/Release +/output +/x64 +/dest + diff --git a/vsprojects/coapp/openssl/README.md b/vsprojects/coapp/openssl/README.md new file mode 100644 index 0000000000..e15831c67f --- /dev/null +++ b/vsprojects/coapp/openssl/README.md @@ -0,0 +1,37 @@ +OpenSSL Native Nuget package +------------------------- + +Uses [CoApp](http://coapp.org/) project to build the zlib package. + +Prerequisites +------------- +Multiple versions of VS installed to be able to build all the targets: +* Visual Studio 2013 +* Visual Studio 2010 (you might need SP1 to prevent LNK1123 error) + +ActivePerl + +CoApp toolkit: http://downloads.coapp.org/files/CoApp.Tools.Powershell.msi + +More details on installation: http://coapp.org/tutorials/installation.html + +Building +-------- + +Build all flavors of openssl library using the provided batch file. +``` +buildall.bat +``` + +Then, create NuGet package using powershell (you'll need the CoApp toolkit installed): +``` +[THIS_DIRECTORY]> Write-NuGetPackage grpc.dependencies.openssl.autopkg +``` + +This will create three NuGet packages: +* the main dev package +* the redistributable package that contains just the binaries and no headers +* the symbols package (debug symbols) + +Later, you can push the package to NuGet.org repo. +Attention: before pusing the resulting nuget package to public nuget repo, you have to be 100% sure it works correctly - there’s no way how to delete or update an already existing package. \ No newline at end of file diff --git a/vsprojects/coapp/openssl/buildall-nmake.bat b/vsprojects/coapp/openssl/buildall-nmake.bat new file mode 100644 index 0000000000..d866cea46a --- /dev/null +++ b/vsprojects/coapp/openssl/buildall-nmake.bat @@ -0,0 +1,64 @@ +rem setlocal +rem call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" amd64 +rem call :build x64 Release v120 || goto :eof +rem call :build x64 Debug v120 || goto :eof +rem endlocal + +setlocal +call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86 +call :build v120 Win32 Release || goto :eof +call :build v120 Win32 Debug || goto :eof +endlocal + +rem setlocal +rem call "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcvarsall.bat" amd64 +rem call :build x64 Release v110 || goto :eof +rem call :build x64 Debug v110 || goto :eof +rem endlocal + +rem setlocal +rem call "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcvarsall.bat" x86 +rem call :build Win32 Release v110 || goto :eof +rem call :build Win32 Debug v110 || goto :eof +rem endlocal + +rem setlocal +rem call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" amd64 +rem call :build x64 Release v100 || goto :eof +rem call :build x64 Debug v100 || goto :eof +rem endlocal + +setlocal +call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86 +call :build v100 Win32 Release || goto :eof +call :build v100 Win32 Debug || goto :eof +endlocal + +goto :eof + +:build +rem %1=[v100,v120] %2=[Win32] %3=[Release,Debug] +setlocal +@rem TODO(jtattermusch): Debug configuration produces the same results as release config currently. +set CONF_PATH=%1\%2\%3 +set ZLIB_INCLUDE="--with-zlib-include=.\COPKG\packages\zlib.1.2.8.7\build\native\include" +set ZLIB_LIB="--with-zlib-lib=.\COPKG\packages\zlib.1.2.8.7\build\native\lib\%CONF_PATH%\dynamic\cdecl\zlib.lib" + +set TEMP_DIR=.\COPKG\dest\tmp\%CONF_PATH% +set OUT_DIR=.\COPKG\dest\out\%CONF_PATH% +set INSTALL_DIR=.\COPKG\dest\install\%CONF_PATH% + +perl Configure no-asm zlib-dynamic %ZLIB_INCLUDE% %ZLIB_LIB% VC-WIN32 || goto :error +call ".\ms\do_ms.bat" || goto :error + +rem Building the static library +nmake -f ms\nt.mak "INSTALLTOP=%INSTALL_DIR%\static" "OPENSSLDIR=%INSTALL_DIR%\static" "TMP_D=%TEMP_DIR%\static" "OUT_D=%OUT_DIR%\static" install || goto :error +rem Building the dynamic library +nmake -f ms\ntdll.mak "INSTALLTOP=%INSTALL_DIR%\dynamic" "OPENSSLDIR=%INSTALL_DIR%\dynamic" "TMP_D=%TEMP_DIR%\dynamic" "OUT_D=%OUT_DIR%\dynamic" install || goto :error +endlocal + +goto :eof + +:error +echo Failed with error #%errorlevel%. +exit /b %errorlevel% \ No newline at end of file diff --git a/vsprojects/coapp/openssl/buildall.bat b/vsprojects/coapp/openssl/buildall.bat new file mode 100644 index 0000000000..2685a4acdd --- /dev/null +++ b/vsprojects/coapp/openssl/buildall.bat @@ -0,0 +1,59 @@ + +rem Restore using NuGet dependencies (Download NuGet from nuget.org and put it in this directory first) +nuget restore || goto eof: + + +setlocal +rem First do a bit of hacking to make sure we have headers ready in ..\inc32 +cd .. +call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86 +perl Configure no-asm VC-WIN32 || goto :eof +perl util\mkfiles.pl >MINFO || goto :eof +perl util\mk1mf.pl no-asm VC-WIN32 >ms\nt.mak || goto :eof +mkdir inc32\openssl +mkdir tmp32 +nmake -f ms\nt.mak headers || goto :eof +endlocal + +setlocal +call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" amd64 +call :build x64 Release v120 || goto :eof +call :build x64 Debug v120 || goto :eof +endlocal + +setlocal +call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86 +call :build Win32 Release v120 || goto :eof +call :build Win32 Debug v120 || goto :eof +endlocal + +rem setlocal +rem call "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcvarsall.bat" amd64 +rem call :build x64 Release v110 || goto :eof +rem call :build x64 Debug v110 || goto :eof +rem endlocal + +rem setlocal +rem call "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcvarsall.bat" x86 +rem call :build Win32 Release v110 || goto :eof +rem call :build Win32 Debug v110 || goto :eof +rem endlocal + +rem setlocal +rem call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" amd64 +rem call :build x64 Release v100 || goto :eof +rem call :build x64 Debug v100 || goto :eof +rem endlocal + +setlocal +call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86 +call :build Win32 Release v100 || goto :eof +call :build Win32 Debug v100 || goto :eof +endlocal + +:build +msbuild /P:Platform=%1 /P:Configuration=%2 /P:PlatformToolset=%3 /P:UsesConfigurationType=dynamic /P:ConfigurationType=DynamicLibrary .\openssl.sln || goto :eof +msbuild /P:Platform=%1 /P:Configuration=%2 /P:PlatformToolset=%3 /P:UsesConfigurationType=static /P:ConfigurationType=StaticLibrary .\openssl.sln || goto :eof +goto :eof + + diff --git a/vsprojects/coapp/openssl/grpc.dependencies.openssl.autopkg b/vsprojects/coapp/openssl/grpc.dependencies.openssl.autopkg new file mode 100644 index 0000000000..482d927775 --- /dev/null +++ b/vsprojects/coapp/openssl/grpc.dependencies.openssl.autopkg @@ -0,0 +1,101 @@ +@import @"version.inc"; + +#define { + package-id = "grpc.dependencies.openssl"; +} + +nuget { + // the nuspec file metadata. Gets created/updated on build + nuspec { + id = ${package-id}; + version : ${package-version}; + title: gRPC Native Dependency: OpenSSL; + authors: {Mark J. Cox, Ralf S. Engelschall, Dr. Stephen Henson, Ben Laurie, Garrett Serack, Tim Rogers}; + owners: {Jan Tattermusch}; + licenseUrl: "http://www.openssl.org/source/license.html"; + projectUrl: "http://github.com/jtattermusch/openssl"; + iconUrl: "http://openssl.com/images/openssl-logo.png"; + requireLicenseAcceptance:false; + summary: "An OpenSSL library"; + description: @"Native OpenSSL library. + OpenSSL homepage: http://www.openssl.org"; + releaseNotes: "Release of OpenSSL 1.0.2a libraries."; + copyright: Copyright 2015; + tags: { openssl, native, CoApp }; + + }; + + dependencies { + packages : { + grpc.dependencies.zlib/1.2.8.9 + }; + } + + // the files that go into the content folders + // (inserted into the nuspec file) + files { + + // .targets file that are applied when redist package is installed from a managed project. + managed_build: { + #output { + package = redist; + }; + #destination = \build\portable-net45; + "managed_targets\${package-id}.redist.targets"; + "managed_targets\${package-id}.redist.props"; + }; + + nestedInclude: { + #destination = "${d_include}\openssl"; + #excludes : { ..\inc32\openssl\opensslconf.h }; + "..\inc32\openssl\*"; + }; + + // TODO(jtattermusch): Visual Studio 2010 and 2012 Express (v100 and v110 toolsets) don't support x64, + // so while generating the package, you will get a warning that corresponding files are missing + // (and the resulting package will be somewhat incomplete). + ("v100,v120", "Win32,x64", "release,debug", "Dynamic,Static") => { + [${0},${1},${2},${3}] { + lib: { .\output\${0}\${1}\${2}\${3}\libeay32.lib; + .\output\${0}\${1}\${2}\${3}\ssleay32.lib }; + + source: { + #destination = ${d_src}\openssl; + .\output\${0}\${1}\${2}\${3}\include\openssl\opensslconf.h + }; + }; + }; + ("v100,v120", "Win32,x64", "release,debug", "Dynamic") => { + [${0},${1},${2},${3}] { + bin: { .\output\${0}\${1}\${2}\${3}\libeay32.dll; + .\output\${0}\${1}\${2}\${3}\ssleay32.dll }; + symbols: { .\output\${0}\${1}\${2}\${3}\libeay32.pdb; + .\output\${0}\${1}\${2}\${3}\ssleay32.pdb }; + }; + }; + + }; + + // the VC++ .props file that gets generated and inserted into the ${d_content} folder + props { + PropertyGroup { + CallingConvention-zlib = cdecl; + } + + }; + + // the VC++ .targets file that gets generated and inserted into the ${d_content} folder + targets { + // every configuration needs to reference the include directories. + Includes += ${pkg_root}${d_include}; + // Defines += HAS_ZLIB; + + ("v100,v110,v120", "Win32,x64", "release,debug", "Dynamic,Static") => { + [${0},${1},${2},${3}] { + Includes += ${pkg_root}${d_include}; + }; + }; + + }; +} + diff --git a/vsprojects/coapp/openssl/libeay32.vcxproj b/vsprojects/coapp/openssl/libeay32.vcxproj new file mode 100644 index 0000000000..0a83b894b8 --- /dev/null +++ b/vsprojects/coapp/openssl/libeay32.vcxproj @@ -0,0 +1,825 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + {BE42CA67-7C48-4882-BE59-111CB41142BE} + Win32Proj + $(LibName) + true + + + + DynamicLibrary + v110 + Cdecl + true + output\$(PlatformToolset)\$(Platform)\$(Configuration)\$(UsesConfigurationType)\ + $(OutputPath) + + + + + + + + + + + + false + true + $(CallingConvention) + $(UsesConfigurationType) + + + + ..;..\inc32;..\crypto;..\crypto\asn1;..\crypto\evp;..\crypto\md2;..\crypto\modes;..\crypto\store;..\include;$(OutDir);$(IntDir);%(AdditionalIncludeDirectories) + true + ProgramDatabase + _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;L_ENDIAN;MK1MF_BUILD;WIN32_LEAN_AND_MEAN;OPENSSL_THREADS;ZLIB;OPENSSL_SYSNAME_WIN32;%(PreprocessorDefinitions) + OPENSSL_BUILD_SHLIBCRYPTO;OPENSSL_NO_IDEA;OPENSSL_NO_RC5;OPENSSL_NO_MD2;OPENSSL_NO_KRB5;OPENSSL_NO_JPAKE;%(PreprocessorDefinitions) + DSO_WIN32;UNICODE;_UNICODE;%(PreprocessorDefinitions) + _WINDLL;_REENTRANT;OPENSSL_NO_STATIC_ENGINE;%(PreprocessorDefinitions) + OPENSSL_NO_DYNAMIC_ENGINE;%(PreprocessorDefinitions) + ZLIB_SHARED;%(PreprocessorDefinitions) + OPENSSL_NO_ASM;%(PreprocessorDefinitions) + %(CallingConvention) + true + true + false + Level3 + + + true + true + zlib$(OutNameSuffix).lib;%(IgnoreSpecificDefaultLibraries) + + + true + true + true + true + true + ws2_32.lib;crypt32.lib;%(AdditionalDependencies) + .\libeay32.def + + + ..;..\inc32;..\crypto;..\crypto\asn1;..\crypto\evp;..\crypto\md2;..\crypto\modes;..\crypto\store;..\include;$(OutDir);$(IntDir);%(AdditionalIncludeDirectories) + _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;L_ENDIAN;MK1MF_BUILD;WIN32_LEAN_AND_MEAN;OPENSSL_THREADS;ZLIB;OPENSSL_SYSNAME_WIN32;%(PreprocessorDefinitions) + OPENSSL_BUILD_SHLIBCRYPTO;OPENSSL_NO_IDEA;OPENSSL_NO_RC5;OPENSSL_NO_MD2;OPENSSL_NO_KRB5;OPENSSL_NO_JPAKE;%(PreprocessorDefinitions) + DSO_WIN32;UNICODE;_UNICODE;%(PreprocessorDefinitions) + _WINDLL;_REENTRANT;OPENSSL_NO_STATIC_ENGINE;%(PreprocessorDefinitions) + OPENSSL_NO_DYNAMIC_ENGINE;%(PreprocessorDefinitions) + ZLIB_SHARED;%(PreprocessorDefinitions) + OPENSSL_NO_ASM;%(PreprocessorDefinitions) + CRYPTO;%(PreprocessorDefinitions) + + + + + /Gs0 %(AdditionalOptions) + EnableFastChecks + Sync + false + false + Disabled + DEBUG;_DEBUG;%(PreprocessorDefinitions) + + + DEBUG;_DEBUG;%(PreprocessorDefinitions) + + + + + /MP %(AdditionalOptions) + false + Speed + true + AnySuitable + true + true + Full + false + true + + + true + true + + + + + + + WIN32;%(PreprocessorDefinitions) + MultiThreadedDebug + MultiThreaded + + + WIN32;%(PreprocessorDefinitions) + + + + + WIN64;%(PreprocessorDefinitions) + MultiThreadedDebug + MultiThreaded + + + WIN64;%(PreprocessorDefinitions) + + + + + + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + true + + + true + + + true + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + true + + + true + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + zlib-dynamic + zlib + no-asm + + VC-WIN32 + VC-WIN64A + shared + no-shared + + + + + + + true + true + true + true + true + + + + + + + + + + + + + Info2;PerlDefs;$(BuildDependsOn) + + \ No newline at end of file diff --git a/vsprojects/coapp/openssl/managed_targets/grpc.dependencies.openssl.redist.props b/vsprojects/coapp/openssl/managed_targets/grpc.dependencies.openssl.redist.props new file mode 100644 index 0000000000..63d23be3da --- /dev/null +++ b/vsprojects/coapp/openssl/managed_targets/grpc.dependencies.openssl.redist.props @@ -0,0 +1,12 @@ + + + + + true + + + v120 + Win32 + Debug + + \ No newline at end of file diff --git a/vsprojects/coapp/openssl/managed_targets/grpc.dependencies.openssl.redist.targets b/vsprojects/coapp/openssl/managed_targets/grpc.dependencies.openssl.redist.targets new file mode 100644 index 0000000000..1eb63f3fc4 --- /dev/null +++ b/vsprojects/coapp/openssl/managed_targets/grpc.dependencies.openssl.redist.targets @@ -0,0 +1,17 @@ + + + + + + + + PreserveNewest + + + PreserveNewest + + + + + + \ No newline at end of file diff --git a/vsprojects/coapp/openssl/openssl.sln b/vsprojects/coapp/openssl/openssl.sln new file mode 100644 index 0000000000..7825f18b8e --- /dev/null +++ b/vsprojects/coapp/openssl/openssl.sln @@ -0,0 +1,39 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2012 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libeay32", "libeay32.vcxproj", "{BE42CA67-7C48-4882-BE59-111CB41142BE}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssleay32", "ssleay32.vcxproj", "{7E05608D-A775-418F-946A-E9A0B84C6DFF}" + ProjectSection(ProjectDependencies) = postProject + {BE42CA67-7C48-4882-BE59-111CB41142BE} = {BE42CA67-7C48-4882-BE59-111CB41142BE} + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Debug|x64 = Debug|x64 + Release|Win32 = Release|Win32 + Release|x64 = Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {BE42CA67-7C48-4882-BE59-111CB41142BE}.Debug|Win32.ActiveCfg = Debug|Win32 + {BE42CA67-7C48-4882-BE59-111CB41142BE}.Debug|Win32.Build.0 = Debug|Win32 + {BE42CA67-7C48-4882-BE59-111CB41142BE}.Debug|x64.ActiveCfg = Debug|x64 + {BE42CA67-7C48-4882-BE59-111CB41142BE}.Debug|x64.Build.0 = Debug|x64 + {BE42CA67-7C48-4882-BE59-111CB41142BE}.Release|Win32.ActiveCfg = Release|Win32 + {BE42CA67-7C48-4882-BE59-111CB41142BE}.Release|Win32.Build.0 = Release|Win32 + {BE42CA67-7C48-4882-BE59-111CB41142BE}.Release|x64.ActiveCfg = Release|x64 + {BE42CA67-7C48-4882-BE59-111CB41142BE}.Release|x64.Build.0 = Release|x64 + {7E05608D-A775-418F-946A-E9A0B84C6DFF}.Debug|Win32.ActiveCfg = Debug|Win32 + {7E05608D-A775-418F-946A-E9A0B84C6DFF}.Debug|Win32.Build.0 = Debug|Win32 + {7E05608D-A775-418F-946A-E9A0B84C6DFF}.Debug|x64.ActiveCfg = Debug|x64 + {7E05608D-A775-418F-946A-E9A0B84C6DFF}.Debug|x64.Build.0 = Debug|x64 + {7E05608D-A775-418F-946A-E9A0B84C6DFF}.Release|Win32.ActiveCfg = Release|Win32 + {7E05608D-A775-418F-946A-E9A0B84C6DFF}.Release|Win32.Build.0 = Release|Win32 + {7E05608D-A775-418F-946A-E9A0B84C6DFF}.Release|x64.ActiveCfg = Release|x64 + {7E05608D-A775-418F-946A-E9A0B84C6DFF}.Release|x64.Build.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/vsprojects/coapp/openssl/packages.config b/vsprojects/coapp/openssl/packages.config new file mode 100644 index 0000000000..e1f8f360da --- /dev/null +++ b/vsprojects/coapp/openssl/packages.config @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/vsprojects/coapp/openssl/ssleay32.vcxproj b/vsprojects/coapp/openssl/ssleay32.vcxproj new file mode 100644 index 0000000000..8cf361d1a6 --- /dev/null +++ b/vsprojects/coapp/openssl/ssleay32.vcxproj @@ -0,0 +1,237 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + {7E05608D-A775-418F-946A-E9A0B84C6DFF} + Win32Proj + $(LibName) + + + + DynamicLibrary + v110 + Cdecl + output\$(PlatformToolset)\$(Platform)\$(Configuration)\$(UsesConfigurationType)\ + $(OutputPath) + + + + + + + + + + + + false + true + $(CallingConvention) + $(UsesConfigurationType) + + + + ..;..\inc32;..\crypto;..\include;$(OutDir);$(IntDir);%(AdditionalIncludeDirectories) + true + ProgramDatabase + + + + _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;L_ENDIAN;MK1MF_BUILD;WIN32_LEAN_AND_MEAN;OPENSSL_THREADS;ZLIB;OPENSSL_SYSNAME_WIN32;%(PreprocessorDefinitions) + OPENSSL_BUILD_SHLIBSSL;OPENSSL_NO_IDEA;OPENSSL_NO_RC5;OPENSSL_NO_MD2;OPENSSL_NO_KRB5;OPENSSL_NO_JPAKE;%(PreprocessorDefinitions) + DSO_WIN32;UNICODE;_UNICODE;%(PreprocessorDefinitions) + _WINDLL;_REENTRANT;OPENSSL_NO_STATIC_ENGINE;%(PreprocessorDefinitions) + OPENSSL_NO_DYNAMIC_ENGINE;%(PreprocessorDefinitions) + ZLIB_SHARED;%(PreprocessorDefinitions) + OPENSSL_NO_ASM;%(PreprocessorDefinitions) + %(CallingConvention) + true + true + false + Level3 + + + true + true + + + + true + true + true + true + true + ws2_32.lib;crypt32.lib;libeay32$(OutNameSuffix).lib;%(AdditionalDependencies) + $(OutDir) + .\ssleay32.def + + + ..;..\inc32;..\crypto;..\include;$(OutDir);$(IntDir);%(AdditionalIncludeDirectories) + _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;L_ENDIAN;MK1MF_BUILD;WIN32_LEAN_AND_MEAN;OPENSSL_THREADS;ZLIB;OPENSSL_SYSNAME_WIN32;%(PreprocessorDefinitions) + OPENSSL_BUILD_SHLIBSSL;OPENSSL_NO_IDEA;OPENSSL_NO_RC5;OPENSSL_NO_MD2;OPENSSL_NO_KRB5;OPENSSL_NO_JPAKE;%(PreprocessorDefinitions) + DSO_WIN32;UNICODE;_UNICODE;%(PreprocessorDefinitions) + _WINDLL;_REENTRANT;OPENSSL_NO_STATIC_ENGINE;%(PreprocessorDefinitions) + OPENSSL_NO_DYNAMIC_ENGINE;%(PreprocessorDefinitions) + ZLIB_SHARED;%(PreprocessorDefinitions) + OPENSSL_NO_ASM;%(PreprocessorDefinitions) + SSL;%(PreprocessorDefinitions) + + + + + EnableFastChecks + Sync + false + false + Disabled + DEBUG;_DEBUG;%(PreprocessorDefinitions) + + + DEBUG;_DEBUG;%(PreprocessorDefinitions) + + + + + /MP %(AdditionalOptions) + false + Speed + true + AnySuitable + true + true + Full + false + true + + + true + UseLinkTimeCodeGeneration + true + + + + + + + WIN32;%(PreprocessorDefinitions) + MultiThreadedDebug + MultiThreaded + + + WIN32;%(PreprocessorDefinitions) + + + + + WIN64;%(PreprocessorDefinitions) + MultiThreadedDebug + MultiThreaded + + + WIN64;%(PreprocessorDefinitions) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + zlib-dynamic + zlib + no-asm + + VC-WIN32 + VC-WIN64A + shared + no-shared + + + + + + PerlDefs;$(BuildDependsOn) + + \ No newline at end of file diff --git a/vsprojects/coapp/openssl/version.inc b/vsprojects/coapp/openssl/version.inc new file mode 100644 index 0000000000..f27552bba3 --- /dev/null +++ b/vsprojects/coapp/openssl/version.inc @@ -0,0 +1 @@ +#define { package-version: 1.0.2.2; } -- cgit v1.2.3 From a7fab60e1e133c36258f60d7c4b1007bb0718313 Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Thu, 22 Oct 2015 16:10:40 -0700 Subject: use openssl sources from third_party/openssl --- vsprojects/coapp/openssl/buildall-nmake.bat | 64 -- vsprojects/coapp/openssl/buildall.bat | 4 +- .../openssl/grpc.dependencies.openssl.autopkg | 4 +- vsprojects/coapp/openssl/libeay32.vcxproj | 1205 ++++++++++---------- vsprojects/coapp/openssl/ssleay32.vcxproj | 113 +- 5 files changed, 666 insertions(+), 724 deletions(-) delete mode 100644 vsprojects/coapp/openssl/buildall-nmake.bat diff --git a/vsprojects/coapp/openssl/buildall-nmake.bat b/vsprojects/coapp/openssl/buildall-nmake.bat deleted file mode 100644 index d866cea46a..0000000000 --- a/vsprojects/coapp/openssl/buildall-nmake.bat +++ /dev/null @@ -1,64 +0,0 @@ -rem setlocal -rem call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" amd64 -rem call :build x64 Release v120 || goto :eof -rem call :build x64 Debug v120 || goto :eof -rem endlocal - -setlocal -call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86 -call :build v120 Win32 Release || goto :eof -call :build v120 Win32 Debug || goto :eof -endlocal - -rem setlocal -rem call "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcvarsall.bat" amd64 -rem call :build x64 Release v110 || goto :eof -rem call :build x64 Debug v110 || goto :eof -rem endlocal - -rem setlocal -rem call "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcvarsall.bat" x86 -rem call :build Win32 Release v110 || goto :eof -rem call :build Win32 Debug v110 || goto :eof -rem endlocal - -rem setlocal -rem call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" amd64 -rem call :build x64 Release v100 || goto :eof -rem call :build x64 Debug v100 || goto :eof -rem endlocal - -setlocal -call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86 -call :build v100 Win32 Release || goto :eof -call :build v100 Win32 Debug || goto :eof -endlocal - -goto :eof - -:build -rem %1=[v100,v120] %2=[Win32] %3=[Release,Debug] -setlocal -@rem TODO(jtattermusch): Debug configuration produces the same results as release config currently. -set CONF_PATH=%1\%2\%3 -set ZLIB_INCLUDE="--with-zlib-include=.\COPKG\packages\zlib.1.2.8.7\build\native\include" -set ZLIB_LIB="--with-zlib-lib=.\COPKG\packages\zlib.1.2.8.7\build\native\lib\%CONF_PATH%\dynamic\cdecl\zlib.lib" - -set TEMP_DIR=.\COPKG\dest\tmp\%CONF_PATH% -set OUT_DIR=.\COPKG\dest\out\%CONF_PATH% -set INSTALL_DIR=.\COPKG\dest\install\%CONF_PATH% - -perl Configure no-asm zlib-dynamic %ZLIB_INCLUDE% %ZLIB_LIB% VC-WIN32 || goto :error -call ".\ms\do_ms.bat" || goto :error - -rem Building the static library -nmake -f ms\nt.mak "INSTALLTOP=%INSTALL_DIR%\static" "OPENSSLDIR=%INSTALL_DIR%\static" "TMP_D=%TEMP_DIR%\static" "OUT_D=%OUT_DIR%\static" install || goto :error -rem Building the dynamic library -nmake -f ms\ntdll.mak "INSTALLTOP=%INSTALL_DIR%\dynamic" "OPENSSLDIR=%INSTALL_DIR%\dynamic" "TMP_D=%TEMP_DIR%\dynamic" "OUT_D=%OUT_DIR%\dynamic" install || goto :error -endlocal - -goto :eof - -:error -echo Failed with error #%errorlevel%. -exit /b %errorlevel% \ No newline at end of file diff --git a/vsprojects/coapp/openssl/buildall.bat b/vsprojects/coapp/openssl/buildall.bat index 2685a4acdd..70a7d1602d 100644 --- a/vsprojects/coapp/openssl/buildall.bat +++ b/vsprojects/coapp/openssl/buildall.bat @@ -4,8 +4,8 @@ nuget restore || goto eof: setlocal -rem First do a bit of hacking to make sure we have headers ready in ..\inc32 -cd .. +rem First do a bit of hacking to make sure we have headers ready in openssl's inc32 directory +cd ..\..\..\third_party\openssl call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86 perl Configure no-asm VC-WIN32 || goto :eof perl util\mkfiles.pl >MINFO || goto :eof diff --git a/vsprojects/coapp/openssl/grpc.dependencies.openssl.autopkg b/vsprojects/coapp/openssl/grpc.dependencies.openssl.autopkg index 482d927775..65ef34a699 100644 --- a/vsprojects/coapp/openssl/grpc.dependencies.openssl.autopkg +++ b/vsprojects/coapp/openssl/grpc.dependencies.openssl.autopkg @@ -47,8 +47,8 @@ nuget { nestedInclude: { #destination = "${d_include}\openssl"; - #excludes : { ..\inc32\openssl\opensslconf.h }; - "..\inc32\openssl\*"; + #excludes : { ..\..\..\third_party\openssl\inc32\openssl\opensslconf.h }; + "..\..\..\third_party\openssl\inc32\openssl\*"; }; // TODO(jtattermusch): Visual Studio 2010 and 2012 Express (v100 and v110 toolsets) don't support x64, diff --git a/vsprojects/coapp/openssl/libeay32.vcxproj b/vsprojects/coapp/openssl/libeay32.vcxproj index 0a83b894b8..0ee97262d5 100644 --- a/vsprojects/coapp/openssl/libeay32.vcxproj +++ b/vsprojects/coapp/openssl/libeay32.vcxproj @@ -18,6 +18,9 @@ x64 + + ..\..\..\third_party\openssl + {BE42CA67-7C48-4882-BE59-111CB41142BE} Win32Proj @@ -50,7 +53,7 @@ - ..;..\inc32;..\crypto;..\crypto\asn1;..\crypto\evp;..\crypto\md2;..\crypto\modes;..\crypto\store;..\include;$(OutDir);$(IntDir);%(AdditionalIncludeDirectories) + $(OpenSslPath);$(OpenSslPath)\inc32;$(OpenSslPath)\crypto;$(OpenSslPath)\crypto\asn1;$(OpenSslPath)\crypto\evp;$(OpenSslPath)\crypto\md2;$(OpenSslPath)\crypto\modes;$(OpenSslPath)\crypto\store;$(OpenSslPath)\include;$(OutDir);$(IntDir);%(AdditionalIncludeDirectories) true ProgramDatabase _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;L_ENDIAN;MK1MF_BUILD;WIN32_LEAN_AND_MEAN;OPENSSL_THREADS;ZLIB;OPENSSL_SYSNAME_WIN32;%(PreprocessorDefinitions) @@ -81,7 +84,7 @@ .\libeay32.def - ..;..\inc32;..\crypto;..\crypto\asn1;..\crypto\evp;..\crypto\md2;..\crypto\modes;..\crypto\store;..\include;$(OutDir);$(IntDir);%(AdditionalIncludeDirectories) + $(OpenSslPath);$(OpenSslPath)\inc32;$(OpenSslPath)\crypto;$(OpenSslPath)\crypto\asn1;$(OpenSslPath)\crypto\evp;$(OpenSslPath)\crypto\md2;$(OpenSslPath)\crypto\modes;$(OpenSslPath)\crypto\store;$(OpenSslPath)\include;$(OutDir);$(IntDir);%(AdditionalIncludeDirectories) _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;L_ENDIAN;MK1MF_BUILD;WIN32_LEAN_AND_MEAN;OPENSSL_THREADS;ZLIB;OPENSSL_SYSNAME_WIN32;%(PreprocessorDefinitions) OPENSSL_BUILD_SHLIBCRYPTO;OPENSSL_NO_IDEA;OPENSSL_NO_RC5;OPENSSL_NO_MD2;OPENSSL_NO_KRB5;OPENSSL_NO_JPAKE;%(PreprocessorDefinitions) DSO_WIN32;UNICODE;_UNICODE;%(PreprocessorDefinitions) @@ -150,628 +153,628 @@ - + true - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true - + true - + true - + true - + true - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true - + true - + true - + true - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true - + true - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + @@ -795,11 +798,11 @@ Command=" perl Configure no-rc5 no-idea enable-mdc2 threads $(Build-Perl-zlib) $(Build-Perl-dll) $(Build-Perl-asm) $(Build-Perl-platform) perl util\mkfiles.pl >MINFO - perl .\util\mkdef.pl 32 libeay >.\copkg\libeay32.def + perl .\util\mkdef.pl 32 libeay >..\..\vsprojects\coapp\openssl\libeay32.def " - WorkingDirectory="$(MSBuildThisFileDirectory)..\" /> + WorkingDirectory="$(MSBuildThisFileDirectory)$(OpenSslPath)\" /> diff --git a/vsprojects/coapp/openssl/ssleay32.vcxproj b/vsprojects/coapp/openssl/ssleay32.vcxproj index 8cf361d1a6..4cc2436b44 100644 --- a/vsprojects/coapp/openssl/ssleay32.vcxproj +++ b/vsprojects/coapp/openssl/ssleay32.vcxproj @@ -18,6 +18,9 @@ x64 + + ..\..\..\third_party\openssl + {7E05608D-A775-418F-946A-E9A0B84C6DFF} Win32Proj @@ -48,7 +51,7 @@ - ..;..\inc32;..\crypto;..\include;$(OutDir);$(IntDir);%(AdditionalIncludeDirectories) + $(OpenSslPath);$(OpenSslPath)\inc32;$(OpenSslPath)\crypto;$(OpenSslPath)\include;$(OutDir);$(IntDir);%(AdditionalIncludeDirectories) true ProgramDatabase @@ -85,7 +88,7 @@ .\ssleay32.def - ..;..\inc32;..\crypto;..\include;$(OutDir);$(IntDir);%(AdditionalIncludeDirectories) + $(OpenSslPath);$(OpenSslPath)\inc32;$(OpenSslPath)\crypto;$(OpenSslPath)\include;$(OutDir);$(IntDir);%(AdditionalIncludeDirectories) _CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;L_ENDIAN;MK1MF_BUILD;WIN32_LEAN_AND_MEAN;OPENSSL_THREADS;ZLIB;OPENSSL_SYSNAME_WIN32;%(PreprocessorDefinitions) OPENSSL_BUILD_SHLIBSSL;OPENSSL_NO_IDEA;OPENSSL_NO_RC5;OPENSSL_NO_MD2;OPENSSL_NO_KRB5;OPENSSL_NO_JPAKE;%(PreprocessorDefinitions) DSO_WIN32;UNICODE;_UNICODE;%(PreprocessorDefinitions) @@ -154,59 +157,59 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + @@ -227,9 +230,9 @@ Command=" perl Configure no-rc5 no-idea enable-mdc2 threads $(Build-Perl-zlib) $(Build-Perl-dll) $(Build-Perl-asm) $(Build-Perl-platform) perl util\mkfiles.pl >MINFO - perl .\util\mkdef.pl 32 ssleay >.\COPKG\ssleay32.def + perl .\util\mkdef.pl 32 ssleay >..\..\vsprojects\coapp\openssl\ssleay32.def " - WorkingDirectory="$(MSBuildThisFileDirectory)..\" /> + WorkingDirectory="$(MSBuildThisFileDirectory)$(OpenSslPath)\" /> PerlDefs;$(BuildDependsOn) -- cgit v1.2.3 From 43859b3fe18b5695c7fd03ac28463ead7cf92e2f Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Thu, 22 Oct 2015 17:24:21 -0700 Subject: update project site info for coapp packages --- vsprojects/coapp/openssl/grpc.dependencies.openssl.autopkg | 2 +- vsprojects/coapp/zlib/grpc.dependencies.zlib.autopkg | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/vsprojects/coapp/openssl/grpc.dependencies.openssl.autopkg b/vsprojects/coapp/openssl/grpc.dependencies.openssl.autopkg index 65ef34a699..00ee825f3c 100644 --- a/vsprojects/coapp/openssl/grpc.dependencies.openssl.autopkg +++ b/vsprojects/coapp/openssl/grpc.dependencies.openssl.autopkg @@ -13,7 +13,7 @@ nuget { authors: {Mark J. Cox, Ralf S. Engelschall, Dr. Stephen Henson, Ben Laurie, Garrett Serack, Tim Rogers}; owners: {Jan Tattermusch}; licenseUrl: "http://www.openssl.org/source/license.html"; - projectUrl: "http://github.com/jtattermusch/openssl"; + projectUrl: "http://github.com/grpc/grpc"; iconUrl: "http://openssl.com/images/openssl-logo.png"; requireLicenseAcceptance:false; summary: "An OpenSSL library"; diff --git a/vsprojects/coapp/zlib/grpc.dependencies.zlib.autopkg b/vsprojects/coapp/zlib/grpc.dependencies.zlib.autopkg index 01390b9434..da0455d4c7 100644 --- a/vsprojects/coapp/zlib/grpc.dependencies.zlib.autopkg +++ b/vsprojects/coapp/zlib/grpc.dependencies.zlib.autopkg @@ -16,7 +16,7 @@ nuget { authors: {Jean-loup Gailly, Mark Adler, Garrett Serack, Tim Rogers}; owners: {Jan Tattermusch}; licenseUrl: "http://zlib.net/zlib-license.html"; - projectUrl: "http://github.com/jtattermusch/zlib"; + projectUrl: "http://github.com/grpc/grpc"; iconUrl: "http://zlib.net/images/zlib3d-b1.png"; requireLicenseAcceptance:false; summary:A zlib library; -- cgit v1.2.3