mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-08 06:32:59 -04:00
games-emulation/eden: add 0.2.1
Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
DIST eden-0.2.0-fix-httplib-version.patch 901 BLAKE2B 5eccfe3398a5ec7bc746b4570b0902f145d3618be2a0bd446d6a3ea61763e6fad471ad1b45d242925c78b04cb33bd7152c86741334ba922ab1a2cfbb32629f3c SHA512 f68a62674828205bc48482ab1e3774f73ecd94c1f6df9c1000d5123b170d1d476a01aa5453d6abb8ff2012e86e7a810d0ecbf3fc985f293725e4ccaf9c598f75
|
||||
DIST eden-0.2.0.tar.gz 11360348 BLAKE2B 13b35c5a60df6a8413483c1b9752ec86fdff02afda0e4635a3e2b00019479b3717fd372051650538a3b231979f95c53c5eaeef4fe9b9667364c75fe7c284b84c SHA512 bbfc790ea293ee478a0447a9702029f4bdfd536d9c06996bcf1c069f8a508c88d164de0483f40e9a5340af773c39f20cd9b63b01e489415170d9c9b0728a0c7f
|
||||
DIST eden-0.2.1.tar.gz 11484603 BLAKE2B 465cbc7737ebd2b49209b2e48f5626538d92e2fdb267173c8f864c457e9fb6f942d1dd28b21a7c41ed17b42d6c93740c9debf46c68b01bcfd07ef553e6ea1116 SHA512 7c7f0fc296442b62909ecdf5341ece88fc5e7c1bec7ebc2f9c6808e5672e4147f52f99f92c8866285af57a5d0b97ecacd9ab31c461064f35581e7734f14b7d7e
|
||||
DIST nx-tzdb-121125.tar.gz 102895 BLAKE2B 6619b7ad2200be8efb495773d017a07985adb7b05ba97285427aa86103ae9a8c9befc698709539a0292c413c2c8082c39fd699e181140e6879844084e5c19382 SHA512 dc37a189a44ce8b5c988ca550582431a6c7eadfd3c6e709bee6277116ee803e714333e85c9e6cbb5c69346a14d6f2cc7ed96e8aa09cc5fb8a89f945059651db6
|
||||
|
||||
214
games-emulation/eden/eden-0.2.1.ebuild
Normal file
214
games-emulation/eden/eden-0.2.1.ebuild
Normal file
@@ -0,0 +1,214 @@
|
||||
# Copyright 1999-2026 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake xdg toolchain-funcs optfeature
|
||||
|
||||
DESCRIPTION="Nintendo Switch Emulator"
|
||||
HOMEPAGE="https://eden-emu.dev"
|
||||
|
||||
if [[ "${PV}" == 9999 ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://git.eden-emu.dev/eden-emu/eden.git"
|
||||
EGIT_CLONE_TYPE="shallow"
|
||||
EGIT_CHECKOUT_DIR="${WORKDIR}/${PN}"
|
||||
else
|
||||
KEYWORDS="~amd64 ~arm64"
|
||||
SRC_URI="https://git.eden-emu.dev/eden-emu/eden/archive/v${PV/_/-}.tar.gz -> ${P}.tar.gz"
|
||||
fi
|
||||
|
||||
_TZDB_VER=121125
|
||||
SRC_URI+="
|
||||
https://git.eden-emu.dev/eden-emu/tzdb_to_nx/releases/download/${_TZDB_VER}/${_TZDB_VER}.tar.gz ->
|
||||
nx-tzdb-${_TZDB_VER}.tar.gz
|
||||
"
|
||||
|
||||
S="${WORKDIR}/${PN}"
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
IUSE="camera +cubeb discord llvm lto +opengl +qt6 room sdl test +usb web-applet web-service wifi"
|
||||
REQUIRED_USE="
|
||||
!qt6? ( !camera !discord !web-applet )
|
||||
web-service? ( || ( qt6 room ) )
|
||||
"
|
||||
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
app-arch/lz4
|
||||
app-arch/zstd
|
||||
dev-cpp/cpp-httplib:=[ssl]
|
||||
dev-libs/libfmt:=
|
||||
dev-libs/mcl
|
||||
dev-libs/openssl:=
|
||||
>=dev-libs/sirit-1.0.1
|
||||
dev-util/spirv-tools
|
||||
games-util/gamemode
|
||||
media-gfx/renderdoc
|
||||
media-libs/libsdl2[haptic,joystick,sound,video]
|
||||
media-libs/libva
|
||||
media-libs/opus
|
||||
media-video/ffmpeg
|
||||
net-libs/enet
|
||||
net-libs/mbedtls:3
|
||||
virtual/zlib:=
|
||||
|
||||
camera? ( dev-qt/qtmultimedia:6 )
|
||||
cubeb? ( media-libs/cubeb )
|
||||
discord? (
|
||||
dev-libs/discord-rpc
|
||||
)
|
||||
qt6? (
|
||||
dev-libs/quazip[qt6(+)]
|
||||
dev-qt/qtbase:6[concurrent,dbus,gui,widgets]
|
||||
dev-qt/qtcharts:6
|
||||
)
|
||||
usb? ( dev-libs/libusb )
|
||||
web-applet? ( dev-qt/qtwebengine:6[widgets] )
|
||||
web-service? ( dev-cpp/cpp-httplib:=[ssl] )
|
||||
wifi? ( net-wireless/wireless-tools )
|
||||
llvm? ( llvm-core/llvm )
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
dev-cpp/nlohmann_json
|
||||
dev-cpp/simpleini
|
||||
dev-libs/boost:=[context]
|
||||
dev-libs/frozen
|
||||
dev-libs/unordered_dense
|
||||
dev-util/spirv-headers
|
||||
dev-util/vulkan-headers
|
||||
dev-util/vulkan-utility-libraries
|
||||
media-libs/VulkanMemoryAllocator
|
||||
|
||||
amd64? ( dev-libs/xbyak )
|
||||
arm64? ( dev-libs/oaknut )
|
||||
x86? ( dev-libs/xbyak )
|
||||
|
||||
web-service? ( dev-cpp/cpp-jwt )
|
||||
|
||||
test? ( dev-libs/oaknut )
|
||||
"
|
||||
BDEPEND="
|
||||
app-arch/unzip
|
||||
dev-util/glslang
|
||||
virtual/pkgconfig
|
||||
|
||||
test? ( dev-cpp/catch )
|
||||
"
|
||||
|
||||
# [directory]=license
|
||||
declare -A KEEP_BUNDLED=(
|
||||
# Generated or copied files for internal usage
|
||||
[bc_decoder]=MPL-2.0
|
||||
[cmake-modules]=LGPL-3+
|
||||
[demangle]=Apache-2.0-with-LLVM-exceptions
|
||||
[FidelityFX-FSR]=MIT
|
||||
[glad]=GPL-2+
|
||||
[nx_tzdb]="GPL-2+"
|
||||
[stb]="MIT public-domain"
|
||||
[tz]=BSD-2
|
||||
|
||||
# Configuration for the system library
|
||||
[libusb]=GPL-3+
|
||||
)
|
||||
|
||||
add_bundled_licenses() {
|
||||
for license in "${KEEP_BUNDLED[@]}"; do
|
||||
if [[ -n "$license" ]]; then
|
||||
LICENSE+=" ${license}"
|
||||
fi
|
||||
done
|
||||
}
|
||||
add_bundled_licenses
|
||||
|
||||
src_prepare() {
|
||||
local s remove=()
|
||||
for s in externals/*; do
|
||||
[[ -f ${s} ]] && continue
|
||||
if ! has "${s#externals/}" "${!KEEP_BUNDLED[@]}"; then
|
||||
remove+=( "${s}" )
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ -n "${remove}" ]]; then
|
||||
einfo "removing sources: ${remove[*]}"
|
||||
rm -r "${remove[@]}" || die
|
||||
fi
|
||||
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
if [[ "${PV}" == 9999 ]]; then
|
||||
eden_ver="$(git rev-parse --short=10 HEAD)-9999"
|
||||
else
|
||||
eden_ver="v${PV/_/-}"
|
||||
fi
|
||||
|
||||
if tc-is-gcc; then
|
||||
eden_comp_id="GCC $(gcc-fullversion)"
|
||||
elif tc-is-clang; then
|
||||
eden_comp_id="Clang $(clang-fullversion)"
|
||||
else
|
||||
eden_comp_id="$(tc-getcc)"
|
||||
fi
|
||||
|
||||
local mycmakeargs=(
|
||||
-DCPMUTIL_FORCE_SYSTEM=yes
|
||||
-DTITLE_BAR_FORMAT_IDLE="Eden | ${eden_ver} | ${eden_comp_id}"
|
||||
-DYUZU_TZDB_PATH="${WORKDIR}/nx-tzdb-${_TZDB_VER}"
|
||||
-DUSE_FASTER_LINKER=no
|
||||
|
||||
-DENABLE_LTO=$(usex lto)
|
||||
|
||||
-DDYNARMIC_USE_LLVM=$(usex llvm)
|
||||
-DYUZU_DISABLE_LLVM=$(usex !llvm)
|
||||
|
||||
-DBUILD_TESTING=$(usex test)
|
||||
-DENABLE_CUBEB=$(usex cubeb)
|
||||
-DENABLE_LIBUSB=$(usex usb)
|
||||
-DENABLE_OPENGL=$(usex opengl)
|
||||
-DENABLE_QT=$(usex qt6)
|
||||
-DENABLE_WEB_SERVICE=$(usex web-service)
|
||||
-DENABLE_WIFI_SCAN=$(usex wifi)
|
||||
-DUSE_DISCORD_PRESENCE=$(usex discord)
|
||||
-DYUZU_USE_QT_MULTIMEDIA=$(usex camera)
|
||||
-DYUZU_USE_QT_WEB_ENGINE=$(usex web-applet)
|
||||
|
||||
-DYUZU_CMD=$(usex sdl)
|
||||
-DYUZU_ROOM=$(usex room)
|
||||
|
||||
-Wno-dev
|
||||
)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_test() {
|
||||
cd "${BUILD_DIR}" || die
|
||||
|
||||
# See https://git.eden-emu.dev/eden-emu/eden/issues/126
|
||||
local CATCH_SKIP_TESTS=(
|
||||
"CoreTiming\[BasicOrder\]"
|
||||
"MemoryTracker: Cached write downloads"
|
||||
"MemoryTracker: FlushCachedWrites batching"
|
||||
"MemoryTracker: Out of bound ranges 1"
|
||||
"MemoryTracker: Out of bound ranges 2"
|
||||
"MemoryTracker: Out of bound ranges 3"
|
||||
"MemoryTracker: Rasterizer counting"
|
||||
"MemoryTracker: Small region"
|
||||
"MemoryTracker: Sparse regions 2"
|
||||
"RingBuffer: Threaded Test"
|
||||
)
|
||||
./bin/tests "${CATCH_SKIP_TESTS[@]/#/\~}" || die
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_pkg_postinst
|
||||
|
||||
optfeature_header "SDL requires HIDRAW access for many controller gyroscopes to work."
|
||||
optfeature "HIDRAW support" games-util/game-device-udev-rules
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Copyright 1999-2026 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
Reference in New Issue
Block a user