aboutsummaryrefslogtreecommitdiff
path: root/ports/openssl/uwp
diff options
context:
space:
mode:
authorPablo Busse <Pablo.Busse@microsoft.com>2021-09-03 08:01:15 +0100
committerGitHub <noreply@github.com>2021-09-03 00:01:15 -0700
commit887cc9c15a7f2bfc642fa4d6978a80974a3df771 (patch)
tree9bcd96209846a14b41f73f86558b8f1b8d557f8b /ports/openssl/uwp
parent39d0da3a71ccc7a8cd042dae7a2073e48fa07413 (diff)
downloadvcpkg-887cc9c15a7f2bfc642fa4d6978a80974a3df771.tar.gz
vcpkg-887cc9c15a7f2bfc642fa4d6978a80974a3df771.zip
[openssl] Support static builds on UWP (#19636)
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
Diffstat (limited to 'ports/openssl/uwp')
-rw-r--r--ports/openssl/uwp/portfile.cmake15
1 files changed, 12 insertions, 3 deletions
diff --git a/ports/openssl/uwp/portfile.cmake b/ports/openssl/uwp/portfile.cmake
index 08a523cda..d474abe03 100644
--- a/ports/openssl/uwp/portfile.cmake
+++ b/ports/openssl/uwp/portfile.cmake
@@ -1,11 +1,14 @@
vcpkg_fail_port_install(MESSAGE "${PORT} is only for Windows Universal Platform" ON_TARGET "Linux" "OSX")
-vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY)
-
vcpkg_find_acquire_program(JOM)
get_filename_component(JOM_EXE_PATH ${JOM} DIRECTORY)
vcpkg_add_to_path("${PERL_EXE_PATH}")
+set(OPENSSL_SHARED no-shared)
+if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
+ set(OPENSSL_SHARED shared)
+endif()
+
vcpkg_extract_source_archive_ex(
OUT_SOURCE_PATH SOURCE_PATH
ARCHIVE ${ARCHIVE}
@@ -26,7 +29,7 @@ set(CONFIGURE_COMMAND ${PERL} Configure
no-uplink
no-tests
-utf-8
- shared
+ ${OPENSSL_SHARED}
)
if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86")
@@ -143,6 +146,12 @@ file(REMOVE
"${CURRENT_PACKAGES_DIR}/debug/openssl.cnf.dist"
)
+if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
+ # They should be empty, only the exes deleted above were in these directories
+ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/bin/")
+ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin/")
+endif()
+
file(READ "${CURRENT_PACKAGES_DIR}/include/openssl/dtls1.h" _contents)
string(REPLACE "<winsock.h>" "<winsock2.h>" _contents "${_contents}")
file(WRITE "${CURRENT_PACKAGES_DIR}/include/openssl/dtls1.h" "${_contents}")