games-emulation/eden: add 0.0.3, drop 0.0.3_rc3

Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
This commit is contained in:
Pavel Sobolev
2025-09-06 17:13:38 +03:00
parent b0dcbb2af5
commit 593f3d986f
17 changed files with 86 additions and 185 deletions

View File

@@ -1,2 +1,2 @@
DIST eden-0.0.3_rc3.tar.gz 16353045 BLAKE2B 4f6f3e41a6fbb9023d52160c82f6466556ade6f3fb98a443dbbe7649b4bca0f1cb82844db972f989d4344a94bb414822ef46c1d1c5ae41dc6b02ef58465d139d SHA512 2890c9a032c3e24dae23cdc5d19252d2be42d7f6613fe04c82c7df8790ae306483313e2bb3cd85669343a8e3178757e73a7e8e080d27daf3916f55c270eb1808
DIST eden-0.0.3.tar.gz 16409877 BLAKE2B dee3028aa88c00a07e030bad635ef8e2bb9bc4575d9e4b0285c7217a0fe0547c85e1532bbc2ba9c0b7c48525fd3b8050b3999899a4afd0ecf2b5b1a4ffeb6491 SHA512 59acce43e99d92fe668ccf035a5bc9963594764088312b1b1a79223a2a85a48097cff8a2f3ccb2f693e86d377260840b81cef39724f70c3d960932b54b4e1184
DIST nx-tzdb-250725.zip 286133 BLAKE2B e8791883b589c58927f24293263f56d85f68a7e52f12d4e022c23bdba47f5e5f12cd1d8dfb186194b455fbd53f48951c8eb1e157d4de5e80db4f09b63d7a25f7 SHA512 8f60b4b29f285e39c0443f3d5572a73780f3dbfcfd5b35004451fadad77f3a215b2e2aa8d0fffe7e348e2a7b0660882b35228b6178dda8804a14ce44509fd2ca

View File

@@ -9,7 +9,7 @@ DESCRIPTION="Nintendo Switch Emulator"
HOMEPAGE="https://eden-emu.dev"
SRC_URI="
https://git.eden-emu.dev/eden-emu/eden/archive/v${PV/_/-}.tar.gz -> ${P}.tar.gz
https://github.com/crueter/tzdb_to_nx/releases/download/250725/250725.zip -> nx-tzdb-250725.zip
https://github.com/crueter-archive/tzdb_to_nx/releases/download/250725/250725.zip -> nx-tzdb-250725.zip
"
S="${WORKDIR}/${PN}"
@@ -68,6 +68,7 @@ DEPEND="
dev-cpp/simpleini
dev-libs/boost:=[context]
dev-libs/unordered_dense
dev-util/spirv-headers
dev-util/vulkan-headers
dev-util/vulkan-utility-libraries
games-util/gamemode
@@ -81,6 +82,7 @@ DEPEND="
"
BDEPEND="
app-arch/unzip
dev-util/glslang
virtual/pkgconfig
test? (
@@ -90,17 +92,13 @@ BDEPEND="
"
PATCHES=(
"${FILESDIR}/${PN}-0.0.3_rc3-allow-overriding-NX_TZDB_ROMFS_DIR.patch"
"${FILESDIR}/${PN}-0.0.3_rc3-fix-compilation-errors.patch"
"${FILESDIR}/${PN}-0.0.3_rc3-make-the-dependency-on-mcl-global.patch"
"${FILESDIR}/${PN}-0.0.3_rc3-make-the-dependency-on-SDL2-optional.patch"
"${FILESDIR}/${PN}-0.0.3_rc3-use-the-bundled-dynarmic-library.patch"
"${FILESDIR}/${PN}-0.0.3_rc3-use-the-system-Boost-library.patch"
"${FILESDIR}/${PN}-0.0.3_rc3-use-the-system-discord-rpc-library.patch"
"${FILESDIR}/${PN}-0.0.3_rc3-use-the-system-mbedtls-library.patch"
"${FILESDIR}/${PN}-0.0.3_rc3-use-the-system-sirit-library.patch"
"${FILESDIR}/${PN}-0.0.3_rc3-use-the-system-xbyak-library.patch"
"${FILESDIR}/${PN}-0.0.3_rc3-use-the-system-zycore-c-library.patch"
"${FILESDIR}/${PN}-0.0.3-fix-compilation-errors.patch"
"${FILESDIR}/${PN}-0.0.3-make-the-dependency-on-mcl-global.patch"
"${FILESDIR}/${PN}-0.0.3-make-the-dependency-on-xbyak-global.patch"
"${FILESDIR}/${PN}-0.0.3-use-the-bundled-dynarmic-library.patch"
"${FILESDIR}/${PN}-0.0.3-use-the-system-discord-rpc-library.patch"
"${FILESDIR}/${PN}-0.0.3-use-the-system-mbedtls-library.patch"
"${FILESDIR}/${PN}-0.0.3-use-the-system-sirit-library.patch"
)
# [directory]=license
@@ -136,6 +134,9 @@ src_prepare() {
einfo "removing sources: ${remove[*]}"
rm -r "${remove[@]}" || die
mkdir -p "${S}/.cache/cpm/nx_tzdb" || die
mv "${WORKDIR}/zoneinfo" "$_/250725" || die
cmake_src_prepare
}
@@ -145,7 +146,6 @@ src_configure() {
-DYUZU_CHECK_SUBMODULES=no
-DYUZU_ENABLE_PORTABLE=no
-DYUZU_USE_BUNDLED_FFMPEG=no
-DYUZU_USE_BUNDLED_SDL2=no
-DYUZU_USE_CPM=no
-DYUZU_USE_EXTERNAL_SDL2=no
-DYUZU_USE_EXTERNAL_VULKAN_HEADERS=no
@@ -169,8 +169,8 @@ src_configure() {
-DYUZU_USE_QT_MULTIMEDIA=$(usex camera)
-DYUZU_USE_QT_WEB_ENGINE=$(usex web-applet)
# Contains time zone data in the Nintendo Switch's format
-DNX_TZDB_ROMFS_DIR="${WORKDIR}"
-DCPMUTIL_FORCE_SYSTEM=yes
-Dnx_tzdb_FORCE_BUNDLED=yes
-Wno-dev
)

View File

@@ -11,14 +11,12 @@ Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
static_assert(sizeof(u128) == 16, "u128 must be 128 bits wide");
+
+using size_t = std::size_t;
\ No newline at end of file
--- a/src/dynarmic/src/dynarmic/common/memory_pool.h
+++ b/src/dynarmic/src/dynarmic/common/memory_pool.h
@@ -5,7 +5,7 @@
@@ -6,6 +6,7 @@
#pragma once
-#include <cstddef>
#include <cstddef>
+#include <cstdlib>
#include <vector>

View File

@@ -0,0 +1,15 @@
From: Pavel Sobolev <contact@paveloom.dev>
Subject: [PATCH] Make the dependency on `mcl` global.
Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
--- a/src/dynarmic/externals/cpmfile.json
+++ b/src/dynarmic/externals/cpmfile.json
@@ -10,6 +10,7 @@
"repo": "azahar-emu/mcl",
"sha": "7b08d83418",
"hash": "f943bac39c1879986decad7a442ff4288eaeca4a2907684c7914e115a55ecc43c2782ded85c0835763fe04e40d5c82220ce864423e489e648e408a84f54dc4f3",
+ "find_args": "GLOBAL",
"options": [
"MCL_INSTALL OFF"
]

View File

@@ -0,0 +1,15 @@
From: Pavel Sobolev <contact@paveloom.dev>
Subject: [PATCH] Make the dependency on `xbyak` global.
Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
--- a/externals/cpmfile.json
+++ b/externals/cpmfile.json
@@ -84,6 +84,7 @@
"repo": "herumi/xbyak",
"sha": "4e44f4614d",
"hash": "5824e92159e07fa36a774aedd3b3ef3541d0241371d522cffa4ab3e1f215fa5097b1b77865b47b2481376c704fa079875557ea463ca63d0a7fd6a8a20a589e70",
+ "find_args": "GLOBAL",
"bundled": true
},
"oaknut": {

View File

@@ -0,0 +1,19 @@
From: Pavel Sobolev <contact@paveloom.dev>
Subject: [PATCH] Use the system `discord-rpc` library.
Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -499,10 +499,7 @@ endif()
# DiscordRPC
if (USE_DISCORD_PRESENCE)
- AddJsonPackage(discord-rpc)
-
- target_include_directories(discord-rpc INTERFACE ${discord-rpc_SOURCE_DIR}/include)
- add_library(DiscordRPC::discord-rpc ALIAS discord-rpc)
+ find_package(DiscordRPC REQUIRED)
endif()
# SimpleIni

View File

@@ -5,25 +5,18 @@ Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
--- a/externals/CMakeLists.txt
+++ b/externals/CMakeLists.txt
@@ -69,14 +69,7 @@ endif()
@@ -54,7 +54,7 @@ endif()
add_subdirectory(glad)
# mbedtls
-AddPackage(
- NAME mbedtls
- REPO "Mbed-TLS/mbedtls"
- SHA "8c88150ca1"
- HASH 769ad1e94c570671071e1f2a5c0f1027e0bf6bcdd1a80ea8ac970f2c86bc45ce4e31aa88d6d8110fc1bed1de81c48bc624df1b38a26f8b340a44e109d784a966
- PATCHES
- ${CMAKE_SOURCE_DIR}/.patch/mbedtls/0001-cmake-version.patch
-)
-AddJsonPackage(mbedtls)
+add_library(mbedtls SHARED IMPORTED)
if (mbedtls_ADDED)
target_include_directories(mbedtls PUBLIC ${mbedtls_SOURCE_DIR}/include)
--- a/src/core/CMakeLists.txt
+++ b/src/core/CMakeLists.txt
@@ -1193,7 +1193,7 @@ else()
@@ -1196,7 +1196,7 @@ else()
target_link_libraries(core PUBLIC Boost::headers)
endif()

View File

@@ -0,0 +1,16 @@
From: Pavel Sobolev <contact@paveloom.dev>
Subject: [PATCH] Use the system `sirit` library.
Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
--- a/externals/CMakeLists.txt
+++ b/externals/CMakeLists.txt
@@ -76,7 +76,7 @@ endif()
set(SPIRV_WERROR OFF)
AddJsonPackage(spirv-headers)
-AddJsonPackage(sirit)
+add_library(sirit SHARED IMPORTED)
if(MSVC AND USE_CCACHE AND sirit_ADDED)
get_target_property(_opts sirit COMPILE_OPTIONS)

View File

@@ -1,16 +0,0 @@
From: Pavel Sobolev <contact@paveloom.dev>
Subject: [PATCH] Allow overriding `NX_TZDB_ROMFS_DIR`.
Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
--- a/externals/nx_tzdb/CMakeLists.txt
+++ b/externals/nx_tzdb/CMakeLists.txt
@@ -30,7 +30,7 @@ endif()
set(NX_TZDB_VERSION "250725")
set(NX_TZDB_ARCHIVE "${CPM_SOURCE_CACHE}/nx_tzdb/${NX_TZDB_VERSION}.zip")
-set(NX_TZDB_ROMFS_DIR "${CPM_SOURCE_CACHE}/nx_tzdb/tz")
+set(NX_TZDB_ROMFS_DIR CACHE PATH "${CPM_SOURCE_CACHE}/nx_tzdb/tz")
if ((NOT CAN_BUILD_NX_TZDB OR YUZU_DOWNLOAD_TIME_ZONE_DATA) AND NOT EXISTS ${NX_TZDB_ROMFS_DIR})
set(NX_TZDB_DOWNLOAD_URL "https://github.com/crueter/tzdb_to_nx/releases/download/${NX_TZDB_VERSION}/${NX_TZDB_VERSION}.zip")

View File

@@ -1,27 +0,0 @@
From: Pavel Sobolev <contact@paveloom.dev>
Subject: [PATCH] Make the dependency on `SDL2` optional.
Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -904,7 +904,7 @@ if (ENABLE_WEB_SERVICE OR ENABLE_QT_UPDATE_CHECKER)
find_package(cpp-jwt)
endif()
-if (NOT YUZU_USE_BUNDLED_SDL2)
+if (ENABLE_SDL2 AND NOT YUZU_USE_BUNDLED_SDL2)
find_package(SDL2)
endif()
--- a/externals/CMakeLists.txt
+++ b/externals/CMakeLists.txt
@@ -87,7 +87,7 @@ if (ENABLE_LIBUSB AND NOT TARGET libusb::usb)
endif()
# SDL2
-if (NOT YUZU_USE_BUNDLED_SDL2)
+if (ENABLE_SDL2 AND NOT YUZU_USE_BUNDLED_SDL2)
if (NOT WIN32)
# Yuzu itself needs: Atomic Audio Events Joystick Haptic Sensor Threads Timers
# Since 2.0.18 Atomic+Threads required for HIDAPI/libusb (see https://github.com/libsdl-org/SDL/issues/5095)

View File

@@ -1,15 +0,0 @@
From: Pavel Sobolev <contact@paveloom.dev>
Subject: [PATCH] Make the dependency on `mcl` global.
Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
--- a/src/dynarmic/externals/CMakeLists.txt
+++ b/src/dynarmic/externals/CMakeLists.txt
@@ -56,6 +56,7 @@ AddPackage(
REPO "azahar-emu/mcl"
SHA 7b08d83418
HASH f943bac39c1879986decad7a442ff4288eaeca4a2907684c7914e115a55ecc43c2782ded85c0835763fe04e40d5c82220ce864423e489e648e408a84f54dc4f3
+ FIND_PACKAGE_ARGUMENTS "GLOBAL"
OPTIONS
"MCL_INSTALL OFF"
)

View File

@@ -1,15 +0,0 @@
From: Pavel Sobolev <contact@paveloom.dev>
Subject: [PATCH] Use the system `Boost` library.
Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -779,6 +779,7 @@ else()
endif()
endif()
+find_package(Boost COMPONENTS context REQUIRED)
if(NOT TARGET Boost::headers)
AddPackage(
NAME boost_headers

View File

@@ -1,29 +0,0 @@
From: Pavel Sobolev <contact@paveloom.dev>
Subject: [PATCH] Use the system `discord-rpc` library.
Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -800,22 +800,7 @@ endif()
# DiscordRPC
if (USE_DISCORD_PRESENCE)
- AddPackage(
- NAME discord-rpc
- REPO "discord/discord-rpc"
- SHA 963aa9f3e5
- HASH 386e1344e9a666d730f2d335ee3aef1fd05b1039febefd51aa751b705009cc764411397f3ca08dffd46205c72f75b235c870c737b2091a4ed0c3b061f5919bde
- OPTIONS
- "BUILD_EXAMPLES OFF"
- PATCHES
- ${CMAKE_SOURCE_DIR}/.patch/discord-rpc/0001-cmake-version.patch
- ${CMAKE_SOURCE_DIR}/.patch/discord-rpc/0002-no-clang-format.patch
- ${CMAKE_SOURCE_DIR}/.patch/discord-rpc/0003-fix-cpp17.patch
- EXCLUDE_FROM_ALL ON
- )
-
- target_include_directories(discord-rpc INTERFACE ${discord-rpc_SOURCE_DIR}/include)
- add_library(DiscordRPC::discord-rpc ALIAS discord-rpc)
+ find_package(DiscordRPC REQUIRED)
endif()

View File

@@ -1,23 +0,0 @@
From: Pavel Sobolev <contact@paveloom.dev>
Subject: [PATCH] Use the system `sirit` library.
Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
--- a/externals/CMakeLists.txt
+++ b/externals/CMakeLists.txt
@@ -139,14 +139,7 @@ AddPackage(
HASH f48bbe18341ed55ea0fe280dbbbc0a44bf222278de6e716e143ca1e95ca320b06d4d23d6583fbf8d03e1428f3dac8fa00e5b82ddcd6b425e6236d85af09550a4
)
-AddPackage(
- NAME sirit
- REPO "eden-emulator/sirit"
- SHA db1f1e8ab5
- HASH 73eb3a042848c63a10656545797e85f40d142009dfb7827384548a385e1e28e1ac72f42b25924ce530d58275f8638554281e884d72f9c7aaf4ed08690a414b05
- OPTIONS
- "SIRIT_USE_SYSTEM_SPIRV_HEADERS ON"
-)
+add_library(sirit SHARED IMPORTED)
if(MSVC AND USE_CCACHE AND TARGET sirit)
get_target_property(_opts sirit COMPILE_OPTIONS)

View File

@@ -1,15 +0,0 @@
From: Pavel Sobolev <contact@paveloom.dev>
Subject: [PATCH] Use the system `xbyak` library.
Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
--- a/externals/CMakeLists.txt
+++ b/externals/CMakeLists.txt
@@ -46,7 +46,7 @@ if (ARCHITECTURE_x86 OR ARCHITECTURE_x86_64)
REPO "Lizzie841/xbyak"
SHA ${XBYAK_HASH}
HASH ${XBYAK_SHA512SUM}
- BUNDLED_PACKAGE ON
+ FIND_PACKAGE_ARGUMENTS "GLOBAL"
)
endif()

View File

@@ -1,15 +0,0 @@
From: Pavel Sobolev <contact@paveloom.dev>
Subject: [PATCH] Use the system `zycore-c` library.
Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
--- a/src/dynarmic/externals/CMakeLists.txt
+++ b/src/dynarmic/externals/CMakeLists.txt
@@ -104,7 +104,6 @@ if ("x86_64" IN_LIST ARCHITECTURE)
OPTIONS
"CMAKE_DISABLE_FIND_PACKAGE_Doxygen ON"
EXCLUDE_FROM_ALL ON
- SYSTEM_PACKAGE OFF
)
AddPackage(