mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-11-27 15:39:07 +08:00
726c111481
vcpkg will now fail on failure to apply patches except when using `--head`.
93 lines
3.0 KiB
CMake
93 lines
3.0 KiB
CMake
include(vcpkg_common_functions)
|
|
|
|
if (NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
|
|
message(FATAL_ERROR "This portfile only supports UWP")
|
|
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_check_linkage(ONLY_DYNAMIC_LIBRARY)
|
|
|
|
if (VCPKG_TARGET_ARCHITECTURE STREQUAL "arm")
|
|
set(UWP_PLATFORM "arm")
|
|
elseif (VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64")
|
|
set(UWP_PLATFORM "arm64")
|
|
elseif (VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
|
|
set(UWP_PLATFORM "x64")
|
|
elseif (VCPKG_TARGET_ARCHITECTURE STREQUAL "x86")
|
|
set(UWP_PLATFORM "Win32")
|
|
else ()
|
|
message(FATAL_ERROR "Unsupported architecture")
|
|
endif()
|
|
|
|
vcpkg_find_acquire_program(PERL)
|
|
vcpkg_find_acquire_program(JOM)
|
|
get_filename_component(JOM_EXE_PATH ${JOM} DIRECTORY)
|
|
get_filename_component(PERL_EXE_PATH ${PERL} DIRECTORY)
|
|
set(ENV{PATH} "$ENV{PATH};${PERL_EXE_PATH};${JOM_EXE_PATH}")
|
|
|
|
vcpkg_from_github(
|
|
OUT_SOURCE_PATH SOURCE_PATH
|
|
REPO Microsoft/openssl
|
|
REF OpenSSL_1_0_2r_WinRT
|
|
SHA512 3045693fca4b042b69675f6164d8cc82106582cf31081d65a0adbd528f04e77fa48b3761f3be7bdf8ab962a093b28fec0ae6d7da02058f2b049f79b784c39c2e
|
|
HEAD_REF master
|
|
PATCHES
|
|
fix-uwp-configure-unicode.patch
|
|
)
|
|
|
|
file(REMOVE_RECURSE ${SOURCE_PATH}/tmp32dll)
|
|
file(REMOVE_RECURSE ${SOURCE_PATH}/out32dll)
|
|
file(REMOVE_RECURSE ${SOURCE_PATH}/inc32dll)
|
|
|
|
file(
|
|
COPY ${CMAKE_CURRENT_LIST_DIR}/make-openssl.bat
|
|
DESTINATION ${SOURCE_PATH}
|
|
)
|
|
|
|
message(STATUS "Build ${TARGET_TRIPLET}")
|
|
vcpkg_execute_required_process(
|
|
COMMAND ${SOURCE_PATH}/make-openssl.bat ${UWP_PLATFORM}
|
|
WORKING_DIRECTORY ${SOURCE_PATH}
|
|
LOGNAME make-openssl-${TARGET_TRIPLET}
|
|
)
|
|
message(STATUS "Build ${TARGET_TRIPLET} done")
|
|
|
|
file(
|
|
COPY ${SOURCE_PATH}/inc32/openssl
|
|
DESTINATION ${CURRENT_PACKAGES_DIR}/include
|
|
)
|
|
|
|
file(INSTALL
|
|
${SOURCE_PATH}/out32dll/libeay32.dll
|
|
${SOURCE_PATH}/out32dll/libeay32.pdb
|
|
${SOURCE_PATH}/out32dll/ssleay32.dll
|
|
${SOURCE_PATH}/out32dll/ssleay32.pdb
|
|
DESTINATION ${CURRENT_PACKAGES_DIR}/bin)
|
|
|
|
file(INSTALL
|
|
${SOURCE_PATH}/out32dll/libeay32.lib
|
|
${SOURCE_PATH}/out32dll/ssleay32.lib
|
|
DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
|
|
|
|
file(INSTALL
|
|
${SOURCE_PATH}/out32dll/libeay32.dll
|
|
${SOURCE_PATH}/out32dll/libeay32.pdb
|
|
${SOURCE_PATH}/out32dll/ssleay32.dll
|
|
${SOURCE_PATH}/out32dll/ssleay32.pdb
|
|
DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin)
|
|
|
|
file(INSTALL
|
|
${SOURCE_PATH}/out32dll/libeay32.lib
|
|
${SOURCE_PATH}/out32dll/ssleay32.lib
|
|
DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
|
|
|
|
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
|
|
file(COPY ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})
|
|
|
|
vcpkg_test_cmake(PACKAGE_NAME OpenSSL MODULE)
|