commit: 264b759cba0d5547885a7d112470d854d0310869 Author: Takuya Wakazono <pastalian46 <AT> gmail <DOT> com> AuthorDate: Tue Jan 6 03:32:32 2026 +0000 Commit: Takuya Wakazono <pastalian46 <AT> gmail <DOT> com> CommitDate: Tue Jan 6 03:32:32 2026 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=264b759c
games-emulation/RetroArch: add 1.22.2 Closes: https://bugs.gentoo.org/967331 Signed-off-by: Takuya Wakazono <pastalian46 <AT> gmail.com> games-emulation/RetroArch/Manifest | 1 + games-emulation/RetroArch/RetroArch-1.22.2.ebuild | 194 ++++++++++++++++++++++ 2 files changed, 195 insertions(+) diff --git a/games-emulation/RetroArch/Manifest b/games-emulation/RetroArch/Manifest index 25fae63968..0376ae924f 100644 --- a/games-emulation/RetroArch/Manifest +++ b/games-emulation/RetroArch/Manifest @@ -1,3 +1,4 @@ DIST RetroArch-1.19.1.tar.gz 63298569 BLAKE2B 66acbd32117704f543d3dfe94906d89b4500d51b56f57d1d236ce65e4e78c0c17a830b7c1dd4683f940423cfa88c65956a57bd5fa47591713a5c4d987c928161 SHA512 35e44ffc776cbc7f58fa76c686d3c3693d125fccf482c8f3b66378058b8400ada37ebf2549e9bd362e46c3bfb586971a217cc3142dcf7a7468c95ec78638ee23 DIST RetroArch-1.20.0.tar.gz 65438985 BLAKE2B 15dddec3057db2c710e08d4892ea8088f1ee53fe17b2125f6c9528dd80d6a852a140e06eeb3b6f1ddd4ef86da84798235394fcfc5157e998185b584ffb77f603 SHA512 9d286ab6c4bfa479aa792f3c970c5c0ea598a78f027ad78c4272524dd4217322f78454e40ec326a857339a2fe1152c8fa9713a1a936818c0915c6dcb3b2f0a25 DIST RetroArch-1.21.0.tar.gz 70961877 BLAKE2B 14354bf20bbe453d195443320921718403123f68548d1d7242145d955627960958dcdad92b6484a06b888832a5cb4bfdf463ff21460aa209089d849a6d45d4f3 SHA512 8f6b2cf61687ec534b06aa8c9188df60e56eeeff9fe67e0b266df8e2fe4c1fbdb4cd64a0795202d7c6b20573e49aa4cc60fec7f34209ae4736cc2347df488255 +DIST RetroArch-1.22.2.tar.gz 71629881 BLAKE2B b0349a7d65fd6e42a154098ccb7635eb47618cb4fe2e36807170663ec03466ad733a0b1117e8a008a8f6462412544f2059209ae95208ec4d365cd6c013bd0645 SHA512 59057d3fff3bec3bcb01143a270c3b9e74d148a2f1caa413d52f3533af94564576d2fce6f6273b5c79d11904ef670a6bf7c2c328fe3534a05d160e8a49b9daa1 diff --git a/games-emulation/RetroArch/RetroArch-1.22.2.ebuild b/games-emulation/RetroArch/RetroArch-1.22.2.ebuild new file mode 100644 index 0000000000..c6c428763c --- /dev/null +++ b/games-emulation/RetroArch/RetroArch-1.22.2.ebuild @@ -0,0 +1,194 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit edo flag-o-matic toolchain-funcs xdg + +DESCRIPTION="RetroArch is a frontend for emulators, game engines and media players" +HOMEPAGE="https://www.retroarch.com" + +SRC_URI="https://github.com/libretro/RetroArch/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64" + +IUSE="7zip alsa cg cpu_flags_arm_neon cpu_flags_arm_vfp cpu_flags_x86_sse2 cheevos debug dispmanx +egl filters ffmpeg gles2 gles3 hid jack kms libass libusb materialui network openal +opengl oss +ozone pipewire pulseaudio +rgui sdl +truetype +threads udev v4l2 videocore vulkan wayland X xinerama xmb xv zlib" + +REQUIRED_USE=" + || ( opengl sdl vulkan dispmanx ) + || ( materialui ozone rgui xmb ) + alsa? ( threads ) + arm? ( gles2? ( egl ) ) + !arm? ( + egl? ( opengl ) + gles2? ( opengl ) + ) + cg? ( opengl ) + dispmanx? ( videocore arm ) + gles2? ( !cg ) + gles3? ( gles2 ) + kms? ( egl ) + libass? ( ffmpeg ) + libusb? ( hid ) + videocore? ( arm ) + vulkan? ( amd64 ) + wayland? ( egl ) + xinerama? ( X ) + xv? ( X ) +" +RDEPEND=" + app-arch/xz-utils + x11-libs/libxkbcommon + x11-libs/libXScrnSaver + alsa? ( media-libs/alsa-lib ) + cg? ( media-gfx/nvidia-cg-toolkit:0= ) + arm? ( dispmanx? ( || ( media-libs/raspberrypi-userland:0 media-libs/raspberrypi-userland-bin:0 ) ) ) + ffmpeg? ( >=media-video/ffmpeg-2.1.3:0= ) + jack? ( virtual/jack:= ) + libass? ( media-libs/libass:0= ) + libusb? ( virtual/libusb:1= ) + openal? ( media-libs/openal ) + opengl? ( media-libs/libglvnd ) + pulseaudio? ( media-libs/libpulse ) + pipewire? ( media-video/pipewire:= ) + sdl? ( media-libs/libsdl2[joystick] ) + truetype? ( + media-libs/fontconfig + media-libs/freetype:2 + ) + udev? ( virtual/udev + X? ( x11-drivers/xf86-input-evdev:0= ) + ) + v4l2? ( media-libs/libv4l:0= ) + wayland? ( + dev-libs/wayland + dev-libs/wayland-protocols + ) + X? ( + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXxf86vm + x11-libs/libxcb:= + ) + xinerama? ( x11-libs/libXinerama:0= ) + xv? ( x11-libs/libXv ) + zlib? ( virtual/zlib:= ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig + wayland? ( dev-util/wayland-scanner ) +" + +src_configure() { + if use cg; then + append-ldflags -L"${EPREFIX}/"opt/nvidia-cg-toolkit/$(get_libdir) + append-cflags -I"${EPREFIX}/"opt/nvidia-cg-toolkit/include + fi + + # Absolute path of the directory containing Retroarch shared libraries. + export RETROARCH_LIB_DIR="${EPREFIX}/usr/$(get_libdir)/retroarch" + + if use filters; then + # Replace stock defaults with Gentoo-specific defaults. + sed -i retroarch.cfg \ + -e 's:# \(video_filter_dir =\):\1 "/'${RETROARCH_LIB_DIR}'/filters/video/":' \ + -e 's:# \(audio_filter_dir =\):\1 "/'${RETROARCH_LIB_DIR}'/filters/audio/":' \ + || die '"sed" failed.' + fi + + tc-export CC CXX + + # Note that OpenVG support is hard-disabled. (See ${RDEPEND} above.) + local myconf=( + --prefix="${EPREFIX}/usr" + --docdir="${EPREFIX}/usr/share/doc/${PF}" + --enable-dynamic + --disable-builtinzlib + --disable-qt + --disable-sdl + --disable-vg + --disable-osmesa + $(use_enable 7zip) + $(use_enable alsa) + $(use_enable cheevos) + $(use_enable cg) + $(use_enable cpu_flags_arm_neon neon) + $(use_enable cpu_flags_arm_vfp floathard) + $(use_enable cpu_flags_x86_sse2 sse) + $(use_enable dispmanx) + $(use_enable egl) + $(use_enable ffmpeg) + $(use_enable gles2 opengles) + $(use_enable gles3 opengles3) + $(use_enable hid) + $(use_enable jack) + $(use_enable kms) + $(use_enable libass ssa) + $(use_enable libusb) + $(use_enable materialui) + $(use_enable network networking) + $(use_enable openal al) + $(use_enable opengl) + $(use_enable oss) + $(use_enable ozone) + $(use_enable pulseaudio pulse) + $(use_enable pipewire) + $(use_enable rgui) + $(use_enable sdl sdl2) + $(use_enable threads) + $(use_enable truetype freetype) + $(use_enable udev) + $(use_enable v4l2) + $(use_enable videocore) + $(use_enable vulkan) + $(use_enable wayland) + $(use_enable X x11) + $(use_enable xinerama) + $(use_enable xmb) + $(use_enable xv xvideo) + $(use_enable zlib) + ) + + edo ./configure "${myconf[@]}" +} + +src_compile() { + emake V=1 $(usex debug "DEBUG=1" "") + if use filters; then + emake $(usex debug "build=debug" "build=release") -C gfx/video_filters/ + emake $(usex debug "build=debug" "build=release") -C libretro-common/audio/dsp_filters/ + fi +} + +src_install() { + # Install core files and directories. + emake DESTDIR="${D}" install + + # Install documentation. + dodoc README.md + + if use filters; then + # Install video filters. + insinto ${RETROARCH_LIB_DIR}/filters/video/ + doins "${S}"/gfx/video_filters/*.so + doins "${S}"/gfx/video_filters/*.filt + + # Install audio filters. + insinto ${RETROARCH_LIB_DIR}/filters/audio/ + doins "${S}"/libretro-common/audio/dsp_filters/*.dsp + fi +} + +pkg_postinst() { + if use oss; then + ewarn "" + ewarn "OSS support is enabled, however it is not installed as a dependency." + ewarn "Make sure you have OSS installed in your system." + ewarn "" + fi +}
