diff options
| author | orbea <orbea@riseup.net> | 2025-09-15 09:13:32 -0700 |
|---|---|---|
| committer | Sam James <sam@gentoo.org> | 2025-10-04 01:54:35 +0100 |
| commit | 97b49a4b69d8b0e680669cda48c700d0be383196 (patch) | |
| tree | 9268c6f78a3ea233ddadd44337f708422d089c6f /games-emulation | |
| parent | faef4c4fc403cd0073604844d078b8266c91d217 (diff) | |
| download | gentoo-97b49a4b69d8b0e680669cda48c700d0be383196.tar.gz gentoo-97b49a4b69d8b0e680669cda48c700d0be383196.tar.bz2 gentoo-97b49a4b69d8b0e680669cda48c700d0be383196.zip | |
games-emulation/rmg: add 0.8.3
Signed-off-by: orbea <orbea@riseup.net>
Part-of: https://github.com/gentoo/gentoo/pull/43795
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'games-emulation')
| -rw-r--r-- | games-emulation/rmg/Manifest | 1 | ||||
| -rw-r--r-- | games-emulation/rmg/rmg-0.8.3.ebuild | 145 |
2 files changed, 146 insertions, 0 deletions
diff --git a/games-emulation/rmg/Manifest b/games-emulation/rmg/Manifest index 939de2d1f719..026fcd84dff4 100644 --- a/games-emulation/rmg/Manifest +++ b/games-emulation/rmg/Manifest @@ -9,6 +9,7 @@ DIST proc-macro2-1.0.78.crate 47158 BLAKE2B c56a24fce3faca9e04db7965cab552d2a976 DIST quote-1.0.35.crate 28136 BLAKE2B 81424245e1e2b94459df68bb3a9a866c6a364102b5e1d010ede9c5f8278f8406d7b651957d091c5914e936b494b0f6e9a6a1dd8b7d35cd7d7100f86dee4ec12e SHA512 f5314fb6af17cf36c228e1970c569c29ec248954a450a5f90ba9e2896d04f74904c9cec5a1f74325f2489295a94491eee4ce8fb461e22cd4b34e53f1f881efd2 DIST rmg-0.7.8.tar.gz 71689736 BLAKE2B cfec255783de19ee261f61d04a2fdd8a748b4e10e8d7b080d77b7551875c42d56cec066bcb58b30c847e0dfa756983fda87ffc995eb3f16698d230815880e779 SHA512 df6321d29674ca38e46869398ab3c42b27095f01dfb12c462f8bc46d5458da41ee7c92f2e79398db0871bd84e0bde279a898ef37c771b7be3c53b8db781ef9cf DIST rmg-0.7.9.tar.gz 71692903 BLAKE2B e8f1d46f844fe60860b80b645f9888dcdcd00eefb631e6fd66a68395ec44fdad5daa0ade5d17a931c8f1d9ab93febd357d87d430f71a685a6166f2b5dfa94558 SHA512 b89744dbe1bc9a35213078b2b8d0501c996d79b41927b990e43fd06b67ed213bb352a13a4a414abf0229aa63a989c47985ed6e2aeb9f28ffdc70fd04c0c9ad5d +DIST rmg-0.8.3.tar.gz 71818429 BLAKE2B 0b3bce05770b74b686964d1091cac9dbe7f3d27533773ad990a04d977a859ed73290f50798a8b3f12b941c6453b48377e76993baaa326aa7703b07c76c4dedb6 SHA512 a42db0047e00db46847fb53cb5429e4ba3db0d6f071edb9fb0b08986bc4104dcf7f2f071cdd2527e3ae8195e4ddd9aaf0c79c4a15451d6b97ceb4876cee3130b DIST rusb-0.9.3.crate 43389 BLAKE2B f9359bddad8963fe86f50aecdd2ca95666de49799fa79b656e5f406f0c8262d8478470b44bcd79247a80674f78a7d19f1bb6770ea247c7d28980efe6b369dfef SHA512 fb2125e0a8bbab9b1324b3b5aaa0ccdc3254ffb5adfee1629ae3958d76d50b79a47a02f9ade77e986d9478e66c53bb956b2b08c3fc0efd5c5b488bcb8ecfaa42 DIST serde-1.0.195.crate 76856 BLAKE2B 6a80b59335f222ae48d5e377c30611f30fe6416e6853ca47a39016e21f649cb9dfbe4964ce19e5da977fb9a963228a6a81c1e85af99ae12d7a0a5722901aa2f5 SHA512 0002ecb933d08fbdc8585ee74efb4048d385459f629261f5a4a8401b794f1c02b8296db79f479013a0b2a47ba99bee6c02d60d0fc2454e32f1b038b4071e8727 DIST serde_derive-1.0.195.crate 55687 BLAKE2B 4da7916e36f71dfe82defa6c45b3075395cae54631cdff08a4607e962290020e7214288258fd316439c02536073325f5902e7b00144f97269a207fc453496599 SHA512 8a82ae4e7cfe0c3ac27688cc95d74bf4c2e10c1fe845ab28fb57579b2f47f36d13218c2ae603f93f00114065d47c3e46166dea39b205be673f443c34305dacce diff --git a/games-emulation/rmg/rmg-0.8.3.ebuild b/games-emulation/rmg/rmg-0.8.3.ebuild new file mode 100644 index 000000000000..d631d747096b --- /dev/null +++ b/games-emulation/rmg/rmg-0.8.3.ebuild @@ -0,0 +1,145 @@ +# Copyright 2024-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CARGO_OPTIONAL=1 + +CRATES=" + cc@1.0.83 + cfg-if@1.0.0 + libc@0.2.152 + libloading@0.7.4 + libusb1-sys@0.6.4 + once_cell@1.19.0 + pkg-config@0.3.29 + proc-macro2@1.0.78 + quote@1.0.35 + rusb@0.9.3 + serde@1.0.195 + serde_derive@1.0.195 + syn@2.0.48 + toml@0.5.11 + unicode-ident@1.0.12 + vcpkg@0.2.15 + winapi-i686-pc-windows-gnu@0.4.0 + winapi-x86_64-pc-windows-gnu@0.4.0 + winapi@0.3.9 +" + +inherit cargo cmake toolchain-funcs xdg + +MY_PN="${PN^^}" +MY_P="${MY_PN}-${PV}" +DESCRIPTION="Rosalie's Mupen GUI" +HOMEPAGE="https://github.com/Rosalie241/RMG" +if [[ "${PV}" == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/Rosalie241/${MY_PN}.git" +else + SRC_URI=" + https://github.com//Rosalie241/${MY_PN}/archive/v${PV}/${MY_P}.tar.gz \ + -> ${P}.tar.gz + rust-plugin? ( ${CARGO_CRATE_URIS} ) + " + S="${WORKDIR}/${MY_P}" + KEYWORDS="~amd64" +fi + +LICENSE=" + BSD-2 CC0-1.0 GPL-2 GPL-3 MIT ZLIB public-domain + angrylion-plugin? ( XMAME ) + rust-plugin? ( ISC Unicode-DFS-2016 ) +" +SLOT="0" +IUSE="angrylion-plugin discord dynarec netplay rust-plugin" + +DEPEND=" + dev-libs/hidapi + dev-qt/qtbase:6[gui,opengl,vulkan,widgets] + dev-qt/qtsvg:6 + media-libs/freetype + media-libs/libpng:= + media-libs/libsamplerate + media-libs/libsdl3[opengl,vulkan] + media-libs/speexdsp + sys-libs/zlib[minizip(+)] + virtual/opengl + netplay? ( dev-qt/qtwebsockets:6 ) + rust-plugin? ( dev-libs/libusb:1 ) +" +RDEPEND="${DEPEND}" +BDEPEND=" + virtual/pkgconfig + dynarec? ( dev-lang/nasm ) + rust-plugin? ( ${RUST_DEPEND} ) +" + +PATCHES=( + # https://github.com/Rosalie241/RMG/issues/436 + "${FILESDIR}"/${PN}-0.8.3-rust.patch +) + +pkg_setup() { + QA_FLAGS_IGNORED="/usr/$(get_libdir)/RMG/Plugin/Input/libmupen64plus_input_gca.so" + use rust-plugin && rust_pkg_setup +} + +src_unpack() { + if [[ "${PV}" == *9999 ]] ; then + git-r3_src_unpack + if use rust-plugin; then + S="${S}"/Source/3rdParty/mupen64plus-input-gca \ + cargo_live_src_unpack + fi + else + if use rust-plugin; then + cargo_src_unpack + else + default + fi + fi +} + +src_prepare() { + # Remove unused 3rdParty code - https://bugs.gentoo.org/959468 + rm -r "${S}"/Source/3rdParty/discord-rpc/thirdparty/rapidjson/example || die + rm -r "${S}"/Source/3rdParty/fmt || die + rm -r "${S}"/Source/3rdParty/imgui/examples || die + rm -r "${S}"/Source/3rdParty/mupen64plus-rsp-parallel/win32 || die + + # Don't install XMAME licensed code + if ! use angrylion-plugin; then + rm -r "${S}"/Source/3rdParty/mupen64plus-video-angrylion-plus || die + fi + + # Don't install pre-compiled binaries + rm -r "${S}"/Source/3rdParty/vosk-api || die + + # Enable verbose make(1) output + sed -e 's/CC=/V=1 CC=/' -i "${S}"/Source/3rdParty/CMakeLists.txt || die + + cmake_src_prepare +} + +src_configure() { + export PKG_CONFIG="$(tc-getPKG_CONFIG)" + export PKG_CONFIG_ALLOW_CROSS=1 + + local mycmakeargs=( + -DAPPIMAGE_UPDATER=OFF + -DDISCORD_RPC=$(usex discord) + -DNETPLAY=$(usex netplay) + -DNO_ASM=$(usex dynarec OFF ON) + -DNO_RUST=$(usex rust-plugin OFF ON) + -DPORTABLE_INSTALL=OFF + -DUPDATER=OFF + -DUSE_ANGRYLION=$(usex angrylion-plugin) + -DUSE_CCACHE=OFF + -DUSE_LIBFMT=OFF # Use std::format + -DUSE_LTO=OFF + -DVRU=OFF # Precompiled binaries + ) + + cmake_src_configure +} |
