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
+}

Reply via email to