mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-26 06:47:50 +08:00
c0f23c6c31
* [openssl-unix] Add mingw with dynamic libs support * Use new Port-Version Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com> * Fix indenting Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
66 lines
2.3 KiB
CMake
66 lines
2.3 KiB
CMake
if (NOT VCPKG_TARGET_IS_MINGW)
|
|
vcpkg_fail_port_install(MESSAGE "${PORT} is only for openssl on Unix-like systems" ON_TARGET "UWP" "Windows")
|
|
endif()
|
|
|
|
if(EXISTS "${CURRENT_INSTALLED_DIR}/include/openssl/ssl.h")
|
|
message(WARNING "Can't build openssl if libressl is installed. Please remove libressl, and try install openssl again if you need it. Build will continue but there might be problems since libressl is only a subset of openssl")
|
|
set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
|
|
return()
|
|
endif()
|
|
|
|
|
|
vcpkg_find_acquire_program(PERL)
|
|
|
|
set(OPENSSL_VERSION 1.1.1g)
|
|
|
|
vcpkg_download_distfile(OPENSSL_SOURCE_ARCHIVE
|
|
URLS "https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz" "https://www.openssl.org/source/old/1.1.1/openssl-${OPENSSL_VERSION}.tar.gz"
|
|
FILENAME "openssl-${OPENSSL_VERSION}.tar.gz"
|
|
SHA512 01e3d0b1bceeed8fb066f542ef5480862001556e0f612e017442330bbd7e5faee228b2de3513d7fc347446b7f217e27de1003dc9d7214d5833b97593f3ec25ab
|
|
)
|
|
|
|
vcpkg_extract_source_archive_ex(
|
|
OUT_SOURCE_PATH MASTER_COPY_SOURCE_PATH
|
|
ARCHIVE ${OPENSSL_SOURCE_ARCHIVE}
|
|
REF ${OPENSSL_VERSION}
|
|
)
|
|
|
|
if(CMAKE_HOST_WIN32)
|
|
vcpkg_acquire_msys(MSYS_ROOT PACKAGES make perl)
|
|
set(BASH ${MSYS_ROOT}/usr/bin/bash.exe)
|
|
set(MAKE ${MSYS_ROOT}/usr/bin/make.exe)
|
|
set(PERL ${MSYS_ROOT}/usr/bin/perl.exe)
|
|
else()
|
|
find_program(MAKE make)
|
|
if(NOT MAKE)
|
|
message(FATAL_ERROR "Could not find make. Please install it through your package manager.")
|
|
endif()
|
|
endif()
|
|
|
|
vcpkg_configure_cmake(
|
|
SOURCE_PATH ${CMAKE_CURRENT_LIST_DIR}
|
|
PREFER_NINJA
|
|
OPTIONS
|
|
-DSOURCE_PATH=${MASTER_COPY_SOURCE_PATH}
|
|
-DPERL=${PERL}
|
|
-DMAKE=${MAKE}
|
|
OPTIONS_RELEASE
|
|
-DINSTALL_HEADERS=ON
|
|
)
|
|
|
|
vcpkg_install_cmake()
|
|
|
|
file(GLOB HEADERS ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/*/include/openssl/*.h)
|
|
set(RESOLVED_HEADERS)
|
|
foreach(HEADER ${HEADERS})
|
|
get_filename_component(X "${HEADER}" REALPATH)
|
|
list(APPEND RESOLVED_HEADERS "${X}")
|
|
endforeach()
|
|
|
|
file(INSTALL ${RESOLVED_HEADERS} DESTINATION ${CURRENT_PACKAGES_DIR}/include/openssl)
|
|
file(INSTALL ${MASTER_COPY_SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
|
|
|
|
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
|
|
file(COPY ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/openssl)
|
|
endif()
|