[ci, cmake] openssl updates, fix drpc and ci scripts (#283)

- Add bundled OpenSSL libs for Solaris, FreeBSD, Linux
- Fix CPMUtil default on msvc
- Update CI scripts (thanks dravee)
- PLATFORM_<OS> helpers for non-ANDROID UNIX

Co-authored-by: Caio Oliveira <caiooliveirafarias0@gmail.com>
Signed-off-by: crueter <crueter@eden-emu.dev>

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/283
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
Co-authored-by: crueter <crueter@crueter.xyz>
Co-committed-by: crueter <crueter@crueter.xyz>
This commit is contained in:
crueter 2025-08-19 21:29:36 +02:00 committed by crueter
parent 1307f3510d
commit 5180031313
No known key found for this signature in database
GPG key ID: 425ACD2D4830EBC6
10 changed files with 218 additions and 49 deletions

View file

@ -1246,10 +1246,12 @@ if (ARCHITECTURE_x86_64 OR ARCHITECTURE_arm64)
endif()
if(ENABLE_OPENSSL)
find_package(OpenSSL REQUIRED)
target_sources(core PRIVATE
hle/service/ssl/ssl_backend_openssl.cpp)
if (ANDROID OR MSVC)
find_package(OpenSSL REQUIRED)
if (OpenSSL_ADDED)
link_openssl(core)
else()
target_link_libraries(core PRIVATE OpenSSL::SSL)

View file

@ -105,7 +105,7 @@ inline size_t RegNumber(ExtReg reg) {
return static_cast<size_t>(reg) - static_cast<size_t>(ExtReg::Q0);
}
ASSERT_FALSE("Invalid extended register");
ASSERT_MSG(false, "Invalid extended register");
}
inline Reg operator+(Reg reg, size_t number) {

View file

@ -26,7 +26,7 @@ if (ENABLE_WEB_SERVICE)
endif()
# Solaris uses /lib/amd64/libsocket.so and /lib/amd64/libnsl.so
if (${CMAKE_SYSTEM_NAME} STREQUAL "SunOS")
if (PLATFORM_SUN)
target_link_libraries(network PRIVATE socket nsl)
endif()

View file

@ -14,15 +14,14 @@ add_library(web_service STATIC
web_result.h
)
find_package(OpenSSL REQUIRED)
create_target_directory_groups(web_service)
target_include_directories(web_service PUBLIC ${cpp-jwt_SOURCE_DIR}/include)
target_link_libraries(web_service PRIVATE common network nlohmann_json::nlohmann_json httplib::httplib cpp-jwt::cpp-jwt)
if (ANDROID OR MSVC)
if (OpenSSL_ADDED)
link_openssl(web_service)
else()
find_package(OpenSSL REQUIRED)
target_link_libraries(web_service PRIVATE OpenSSL::SSL)
endif()

View file

@ -8,7 +8,7 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON)
# Set the RPATH for Qt Libraries
# This must be done before the `yuzu` target is created
if (YUZU_USE_BUNDLED_QT AND (${CMAKE_SYSTEM_NAME} STREQUAL "Linux"))
if (YUZU_USE_BUNDLED_QT AND (PLATFORM_LINUX))
set(CMAKE_BUILD_RPATH "${CMAKE_BINARY_DIR}/bin/lib/")
endif()
@ -498,7 +498,7 @@ if (YUZU_ROOM)
endif()
# Explicit linking required
if (${CMAKE_SYSTEM_NAME} STREQUAL "SunOS")
if (PLATFORM_SUN)
target_link_libraries(yuzu PRIVATE X11)
endif()

View file

@ -41,7 +41,7 @@ target_include_directories(yuzu-cmd PRIVATE ${RESOURCES_DIR})
target_link_libraries(yuzu-cmd PRIVATE SDL2::SDL2 Vulkan::Headers)
# In Solaris needs explicit linking for ffmpeg which links to /lib/amd64/libX11.so
if (${CMAKE_SYSTEM_NAME} STREQUAL "SunOS")
if (PLATFORM_SUN)
target_link_libraries(yuzu-cmd PRIVATE X11)
endif()