aboutsummaryrefslogtreecommitdiff
path: root/ports/openssl-windows
diff options
context:
space:
mode:
authorRyan Saunders <saunders@aggienetwork.com>2019-04-10 23:07:17 -0700
committerRyan Saunders <saunders@aggienetwork.com>2019-04-10 23:07:17 -0700
commita492caf9d5a069987b6309c6cbf8e5cc8c3ec6a8 (patch)
tree11f6f1c5e3f4caa03f297162ffab9f79941f676c /ports/openssl-windows
parent80965287d1483f98f49ba83e026f022369798990 (diff)
parentb625cbf82f792409fa59262546cb5ed1ef7944e3 (diff)
downloadvcpkg-a492caf9d5a069987b6309c6cbf8e5cc8c3ec6a8.tar.gz
vcpkg-a492caf9d5a069987b6309c6cbf8e5cc8c3ec6a8.zip
Merge branch 'master' into query_deps
Diffstat (limited to 'ports/openssl-windows')
-rw-r--r--ports/openssl-windows/CONTROL2
-rw-r--r--ports/openssl-windows/EnableWinARM64.patch16
-rw-r--r--ports/openssl-windows/portfile.cmake19
3 files changed, 31 insertions, 6 deletions
diff --git a/ports/openssl-windows/CONTROL b/ports/openssl-windows/CONTROL
index a62c2fbdc..bdbf764ab 100644
--- a/ports/openssl-windows/CONTROL
+++ b/ports/openssl-windows/CONTROL
@@ -1,3 +1,3 @@
Source: openssl-windows
-Version: 1.0.2q
+Version: 1.0.2q-2
Description: OpenSSL is an open source project that provides a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It is also a general-purpose cryptography library.
diff --git a/ports/openssl-windows/EnableWinARM64.patch b/ports/openssl-windows/EnableWinARM64.patch
new file mode 100644
index 000000000..9ec813a4e
--- /dev/null
+++ b/ports/openssl-windows/EnableWinARM64.patch
@@ -0,0 +1,16 @@
+diff --git a/Configure b/Configure
+index 36a7a66..b31543d 100644
+--- a/Configure
++++ b/Configure
+@@ -592,9 +592,9 @@ my %table=(
+ "debug-VC-WIN64A","cl:-W3 -Gs0 -Gy -Zi -nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -DUNICODE -D_UNICODE -D_CRT_SECURE_NO_DEPRECATE:::WIN64A::SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN:".eval{my $asm=$x86_64_asm;$asm=~s/x86_64-gcc\.o/bn_asm.o/;$asm}.":auto:win32",
+ # x86 Win32 target defaults to ANSI API, if you want UNICODE, complement
+ # 'perl Configure VC-WIN32' with '-DUNICODE -D_UNICODE'
+-"VC-WIN32","cl:-W3 -WX -Gs0 -GF -Gy -nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -D_CRT_SECURE_NO_DEPRECATE -D_WINSOCK_DEPRECATED_NO_WARNINGS:::WIN32::BN_LLONG RC4_INDEX EXPORT_VAR_AS_FN ${x86_gcc_opts}:${x86_asm}:win32n:win32",
++"VC-WIN32","cl:-W3 -Gs0 -GF -Gy -nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -D_CRT_SECURE_NO_DEPRECATE -D_WINSOCK_DEPRECATED_NO_WARNINGS:::WIN32::BN_LLONG RC4_INDEX EXPORT_VAR_AS_FN ${x86_gcc_opts}:${x86_asm}:win32n:win32",
+ # Unified CE target
+-"debug-VC-WIN32","cl:-W3 -WX -Gs0 -GF -Gy -Zi -nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -D_CRT_SECURE_NO_DEPRECATE -D_WINSOCK_DEPRECATED_NO_WARNINGS:::WIN32::BN_LLONG RC4_INDEX EXPORT_VAR_AS_FN ${x86_gcc_opts}:${x86_asm}:win32n:win32",
++"debug-VC-WIN32","cl:-W3 -Gs0 -GF -Gy -Zi -nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -D_CRT_SECURE_NO_DEPRECATE -D_WINSOCK_DEPRECATED_NO_WARNINGS:::WIN32::BN_LLONG RC4_INDEX EXPORT_VAR_AS_FN ${x86_gcc_opts}:${x86_asm}:win32n:win32",
+ "VC-CE","cl::::WINCE::BN_LLONG RC4_INDEX EXPORT_VAR_AS_FN ${x86_gcc_opts}:${no_asm}:win32",
+
+ # Borland C++ 4.5
diff --git a/ports/openssl-windows/portfile.cmake b/ports/openssl-windows/portfile.cmake
index 8a95bd6c1..4331c2eab 100644
--- a/ports/openssl-windows/portfile.cmake
+++ b/ports/openssl-windows/portfile.cmake
@@ -6,7 +6,7 @@ include(vcpkg_common_functions)
set(OPENSSL_VERSION 1.0.2q)
set(MASTER_COPY_SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/openssl-${OPENSSL_VERSION})
-vcpkg_find_acquire_program(PERL)
+vcpkg_find_acquire_program(PERL)
get_filename_component(PERL_EXE_PATH ${PERL} DIRECTORY)
set(ENV{PATH} "$ENV{PATH};${PERL_EXE_PATH}")
@@ -20,10 +20,12 @@ vcpkg_download_distfile(OPENSSL_SOURCE_ARCHIVE
vcpkg_extract_source_archive(${OPENSSL_SOURCE_ARCHIVE})
vcpkg_apply_patches(
SOURCE_PATH ${MASTER_COPY_SOURCE_PATH}
- PATCHES ${CMAKE_CURRENT_LIST_DIR}/ConfigureIncludeQuotesFix.patch
- ${CMAKE_CURRENT_LIST_DIR}/STRINGIFYPatch.patch
- ${CMAKE_CURRENT_LIST_DIR}/EnableWinARM32.patch
- ${CMAKE_CURRENT_LIST_DIR}/EmbedSymbolsInStaticLibsZ7.patch
+ PATCHES
+ ConfigureIncludeQuotesFix.patch
+ STRINGIFYPatch.patch
+ EnableWinARM32.patch
+ EmbedSymbolsInStaticLibsZ7.patch
+ EnableWinARM64.patch
)
vcpkg_find_acquire_program(NASM)
@@ -52,6 +54,13 @@ elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm")
no-asm
-D_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE
)
+elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64")
+ set(OPENSSL_ARCH VC-WIN32)
+ set(OPENSSL_DO "ms\\do_ms.bat")
+ set(CONFIGURE_COMMAND ${CONFIGURE_COMMAND}
+ no-asm
+ -D_ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE
+ )
else()
message(FATAL_ERROR "Unsupported target architecture: ${VCPKG_TARGET_ARCHITECTURE}")
endif()