This commit is contained in:
OpenSauce 2026-05-04 16:49:12 +00:00 committed by GitHub
commit be9a1e5c62
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 30 additions and 7 deletions

3
.gitmodules vendored
View file

@ -106,3 +106,6 @@
[submodule "externals/libretro-common"]
path = externals/libretro-common/libretro-common
url = https://github.com/libretro/libretro-common.git
[submodule "dllwalker"]
path = externals/dllwalker
url = https://github.com/azahar-emu/dllwalker

View file

@ -13,6 +13,9 @@ cmake_policy(SET CMP0063 NEW)
cmake_policy(SET CMP0127 NEW)
set(CMAKE_POLICY_DEFAULT_CMP0063 NEW)
# Prefer building bundled dependencies as static instead of shared
set(BUILD_SHARED_LIBS OFF)
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules")
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/externals/cmake-modules")
include(DownloadExternals)

View file

@ -327,12 +327,8 @@ endif()
# OpenSSL
if (USE_SYSTEM_OPENSSL)
find_package(OpenSSL 1.1)
if (OPENSSL_FOUND)
set(OPENSSL_LIBRARIES OpenSSL::SSL OpenSSL::Crypto)
endif()
endif()
if (NOT OPENSSL_FOUND)
set(OPENSSL_LIBRARIES OpenSSL::SSL OpenSSL::Crypto)
else()
# LibreSSL
set(LIBRESSL_SKIP_INSTALL ON CACHE BOOL "")
set(OPENSSLDIR "/etc/ssl/")

1
externals/dllwalker vendored Submodule

@ -0,0 +1 @@
Subproject commit 0c35d5de533eb82480dce2a211112517f69010d4

View file

@ -48,6 +48,26 @@ if (APPLE)
endif()
endif()
if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Linux" AND WIN32 AND MINGW)
# TODO: Do this for all executables, not just citra_meta
# TODO: Don't hardcode MXE directory to root?
set(dllwalker_command "${CMAKE_SOURCE_DIR}/externals/dllwalker/dllwalker.rb"
$<TARGET_FILE:citra_meta>
/mxe/usr/x86_64-w64-mingw32.shared/bin/
/mxe/usr/x86_64-w64-mingw32.shared/qt6/bin/)
set(dll_list_filename "${CMAKE_CURRENT_BINARY_DIR}/required_dlls_list.txt")
add_custom_command(TARGET citra_meta POST_BUILD
COMMAND ${dllwalker_command} > ${dll_list_filename}
)
add_custom_command(TARGET citra_meta POST_BUILD
COMMAND cat ${dll_list_filename} | xargs -I {} ${CMAKE_COMMAND} -E copy {} $<TARGET_FILE_DIR:citra_meta>
COMMAND ${CMAKE_COMMAND} -E make_directory "$<TARGET_FILE_DIR:citra_meta>/plugins/"
COMMAND ${CMAKE_COMMAND} -E copy_directory /mxe/usr/x86_64-w64-mingw32.shared/qt6/plugins/ "$<TARGET_FILE_DIR:citra_meta>/plugins/"
COMMAND_EXPAND_LISTS
DEPENDS ${dll_list_filename}
)
endif()
target_link_libraries(citra_meta PRIVATE citra_common fmt)
if (ENABLE_QT)

View file

@ -36,7 +36,7 @@ if (ENABLE_LIBRETRO)
endif()
add_test(NAME tests COMMAND tests)
if(NOT ANDROID)
if(NOT ANDROID AND (CMAKE_SYSTEM_NAME STREQUAL CMAKE_HOST_SYSTEM_NAME))
catch_discover_tests(tests)
endif()