Merge pull request #9851 from abouvier/openssl-vcpkg
externals: use openssl from vcpkg
This commit is contained in:
		
							
								
								
									
										3
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
								
							@@ -13,9 +13,6 @@
 | 
			
		||||
[submodule "dynarmic"]
 | 
			
		||||
    path = externals/dynarmic
 | 
			
		||||
    url = https://github.com/MerryMage/dynarmic.git
 | 
			
		||||
[submodule "libressl"]
 | 
			
		||||
    path = externals/libressl
 | 
			
		||||
    url = https://github.com/citra-emu/ext-libressl-portable.git
 | 
			
		||||
[submodule "libusb"]
 | 
			
		||||
	path = externals/libusb/libusb
 | 
			
		||||
	url = https://github.com/libusb/libusb.git
 | 
			
		||||
 
 | 
			
		||||
@@ -67,6 +67,9 @@ if (YUZU_USE_BUNDLED_VCPKG)
 | 
			
		||||
    if (YUZU_CRASH_DUMPS)
 | 
			
		||||
        list(APPEND VCPKG_MANIFEST_FEATURES "dbghelp")
 | 
			
		||||
    endif()
 | 
			
		||||
    if (ENABLE_WEB_SERVICE)
 | 
			
		||||
        list(APPEND VCPKG_MANIFEST_FEATURES "web-service")
 | 
			
		||||
    endif()
 | 
			
		||||
 | 
			
		||||
    include(${CMAKE_SOURCE_DIR}/externals/vcpkg/scripts/buildsystems/vcpkg.cmake)
 | 
			
		||||
elseif(NOT "$ENV{VCPKG_TOOLCHAIN_FILE}" STREQUAL "")
 | 
			
		||||
@@ -244,9 +247,6 @@ endif()
 | 
			
		||||
if (ENABLE_WEB_SERVICE)
 | 
			
		||||
    find_package(cpp-jwt 1.4 CONFIG)
 | 
			
		||||
    find_package(httplib 0.12 MODULE)
 | 
			
		||||
    if (NOT cpp-jwt_FOUND OR NOT httplib_FOUND)
 | 
			
		||||
        find_package(OpenSSL 1.1 MODULE COMPONENTS Crypto SSL)
 | 
			
		||||
    endif()
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
if (YUZU_TESTS)
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										35
									
								
								externals/CMakeLists.txt
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										35
									
								
								externals/CMakeLists.txt
									
									
									
									
										vendored
									
									
								
							@@ -100,41 +100,18 @@ endif()
 | 
			
		||||
# Sirit
 | 
			
		||||
add_subdirectory(sirit EXCLUDE_FROM_ALL)
 | 
			
		||||
 | 
			
		||||
# LibreSSL
 | 
			
		||||
if (ENABLE_WEB_SERVICE AND DEFINED OPENSSL_FOUND)
 | 
			
		||||
    if (WIN32 OR NOT OPENSSL_FOUND)
 | 
			
		||||
        set(LIBRESSL_SKIP_INSTALL ON)
 | 
			
		||||
        set(OPENSSLDIR "/etc/ssl/")
 | 
			
		||||
        add_subdirectory(libressl EXCLUDE_FROM_ALL)
 | 
			
		||||
        target_include_directories(ssl INTERFACE ./libressl/include)
 | 
			
		||||
        target_compile_definitions(ssl PRIVATE -DHAVE_INET_NTOP)
 | 
			
		||||
        get_directory_property(OPENSSL_LIBRARIES
 | 
			
		||||
            DIRECTORY libressl
 | 
			
		||||
            DEFINITION OPENSSL_LIBS)
 | 
			
		||||
    else()
 | 
			
		||||
        set(OPENSSL_LIBRARIES OpenSSL::SSL OpenSSL::Crypto)
 | 
			
		||||
    endif()
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
# httplib
 | 
			
		||||
if (ENABLE_WEB_SERVICE AND NOT TARGET httplib::httplib)
 | 
			
		||||
    add_library(httplib INTERFACE)
 | 
			
		||||
    target_include_directories(httplib INTERFACE ./cpp-httplib)
 | 
			
		||||
    target_compile_definitions(httplib INTERFACE -DCPPHTTPLIB_OPENSSL_SUPPORT)
 | 
			
		||||
    target_link_libraries(httplib INTERFACE ${OPENSSL_LIBRARIES})
 | 
			
		||||
    if (WIN32)
 | 
			
		||||
        target_link_libraries(httplib INTERFACE crypt32 cryptui ws2_32)
 | 
			
		||||
    endif()
 | 
			
		||||
    add_library(httplib::httplib ALIAS httplib)
 | 
			
		||||
    set(HTTPLIB_REQUIRE_OPENSSL ON)
 | 
			
		||||
    add_subdirectory(cpp-httplib EXCLUDE_FROM_ALL)
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
# cpp-jwt
 | 
			
		||||
if (ENABLE_WEB_SERVICE AND NOT TARGET cpp-jwt::cpp-jwt)
 | 
			
		||||
    add_library(cpp-jwt INTERFACE)
 | 
			
		||||
    target_include_directories(cpp-jwt INTERFACE ./cpp-jwt/include)
 | 
			
		||||
    target_compile_definitions(cpp-jwt INTERFACE CPP_JWT_USE_VENDORED_NLOHMANN_JSON)
 | 
			
		||||
    target_link_libraries(cpp-jwt INTERFACE ${OPENSSL_LIBRARIES})
 | 
			
		||||
    add_library(cpp-jwt::cpp-jwt ALIAS cpp-jwt)
 | 
			
		||||
    set(CPP_JWT_BUILD_EXAMPLES OFF)
 | 
			
		||||
    set(CPP_JWT_BUILD_TESTS OFF)
 | 
			
		||||
    set(CPP_JWT_USE_VENDORED_NLOHMANN_JSON OFF)
 | 
			
		||||
    add_subdirectory(cpp-jwt EXCLUDE_FROM_ALL)
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
# Opus
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										1
									
								
								externals/libressl
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										1
									
								
								externals/libressl
									
									
									
									
										vendored
									
									
								
							 Submodule externals/libressl deleted from 8929f818fd
									
								
							
							
								
								
									
										11
									
								
								vcpkg.json
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								vcpkg.json
									
									
									
									
									
								
							@@ -1,5 +1,5 @@
 | 
			
		||||
{
 | 
			
		||||
    "$schema": "https://raw.githubusercontent.com/microsoft/vcpkg/master/scripts/vcpkg.schema.json",
 | 
			
		||||
    "$schema": "https://raw.githubusercontent.com/microsoft/vcpkg-tool/main/docs/vcpkg.schema.json",
 | 
			
		||||
    "name": "yuzu",
 | 
			
		||||
    "builtin-baseline": "9b22b40c6c61bf0da2d46346dd44a11e90972cc9",
 | 
			
		||||
    "version": "1.0",
 | 
			
		||||
@@ -35,6 +35,15 @@
 | 
			
		||||
        "dbghelp": {
 | 
			
		||||
            "description": "Compile Windows crash dump (Minidump) support",
 | 
			
		||||
            "dependencies": [ "dbghelp" ]
 | 
			
		||||
        },
 | 
			
		||||
        "web-service": {
 | 
			
		||||
            "description": "Enable web services (telemetry, etc.)",
 | 
			
		||||
            "dependencies": [
 | 
			
		||||
                {
 | 
			
		||||
                    "name": "openssl",
 | 
			
		||||
                    "platform": "windows"
 | 
			
		||||
                }
 | 
			
		||||
            ]
 | 
			
		||||
        }
 | 
			
		||||
    },
 | 
			
		||||
    "overrides": [
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user