mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-31 05:40:04 +00:00 
			
		
		
		
	externals: update httplib and libressl ...
* In older `httplib`, SSL connections were not handled correctly and will have issues with proxy servers. Also, keep alive directives were not available back then, which is probably necessary to implement HTTP_C service correctly. * Another reason being `httplib` now requires OpenSSL 1.1+ API while LibreSSL 2.x provided OpenSSL 1.0 compatible API. * The bundled LibreSSL has been updated to 3.2.2 so it now provides OpenSSL 1.1 compatible API now. * Also the path hint has been added so that it will find the correct path to the CA certs on *nix systems. * An option is provided so that *nix system distributions/providers can use their own SSL implementations when compiling Yuzu/Citra to (hopefully) complies with their maintenance guidelines. * LURLParse is also removed since `httplib` can handle `scheme:host:port` string itself now.
This commit is contained in:
		
							parent
							
								
									45a4a56264
								
							
						
					
					
						commit
						af24f75c18
					
				
					 12 changed files with 4436 additions and 2124 deletions
				
			
		
							
								
								
									
										24
									
								
								externals/CMakeLists.txt
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										24
									
								
								externals/CMakeLists.txt
									
										
									
									
										vendored
									
									
								
							|  | @ -100,19 +100,24 @@ if (USE_DISCORD_PRESENCE) | |||
| endif() | ||||
| 
 | ||||
| if (ENABLE_WEB_SERVICE) | ||||
|     # LibreSSL | ||||
|     set(LIBRESSL_SKIP_INSTALL ON CACHE BOOL "") | ||||
|     add_subdirectory(libressl EXCLUDE_FROM_ALL) | ||||
|     target_include_directories(ssl INTERFACE ./libressl/include) | ||||
|     target_compile_definitions(ssl PRIVATE -DHAVE_INET_NTOP) | ||||
| 
 | ||||
|     find_package(OpenSSL 1.1) | ||||
|     if (OPENSSL_FOUND) | ||||
|         set(OPENSSL_LIBRARIES OpenSSL::SSL OpenSSL::Crypto) | ||||
|     else() | ||||
|         # LibreSSL | ||||
|         set(LIBRESSL_SKIP_INSTALL ON CACHE BOOL "") | ||||
|         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) | ||||
|     endif() | ||||
|     # JSON | ||||
|     add_library(json-headers INTERFACE) | ||||
|     target_include_directories(json-headers INTERFACE ./json) | ||||
| 
 | ||||
|     # lurlparser | ||||
|     add_subdirectory(lurlparser EXCLUDE_FROM_ALL) | ||||
| 
 | ||||
|     if(ANDROID) | ||||
|         add_subdirectory(android-ifaddrs) | ||||
|     endif() | ||||
|  | @ -121,6 +126,7 @@ if (ENABLE_WEB_SERVICE) | |||
|     add_library(httplib INTERFACE) | ||||
|     target_include_directories(httplib INTERFACE ./httplib) | ||||
|     target_compile_options(httplib INTERFACE -DCPPHTTPLIB_OPENSSL_SUPPORT) | ||||
|     target_link_libraries(httplib INTERFACE ${OPENSSL_LIBRARIES}) | ||||
| 
 | ||||
|     # cpp-jwt | ||||
|     add_library(cpp-jwt INTERFACE) | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue